<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Error compiling under Trixie for Raspberry PI 3B+]]></title><description><![CDATA[<p dir="auto">Hi,<br />
I'm trying to re-install MySensors on  a fresh installation on Raspberry Pi 3B+ using Trixie.<br />
I faced several errors. I could solve a couple, but I'm still blocked.<br />
What I solved:</p>
<ul>
<li>initial stropts.h error.. so I used development branch (git clone <a href="https://github.com/mysensors/MySensors.git" rel="nofollow ugc">https://github.com/mysensors/MySensors.git</a> --branch development )</li>
<li>then the problem in ATOMIC Block</li>
</ul>
<pre><code>./hal/architecture/Linux/MyHwLinuxGeneric.h:106:50: error: ambiguating new declaration of ‘uint8_t __hwLock()’
  106 | #define ATOMIC_BLOCK for ( ATOMIC_BLOCK_CLEANUP, __hwLock(); \
</code></pre>
<p dir="auto">I think I solved I solved it by replacing a coupe lines in MyHwLinuxGeneric.h file as per advice of some other posts ([<a href="https://github.com/mysensors/MySensors/issues/1557" rel="nofollow ugc">https://github.com/mysensors/MySensors/issues/1557</a> )</p>
<p dir="auto">then compilation was ok, but running I got GPIO error message:</p>
<pre><code>~/MySensors $ sudo ./bin/mysgw
Oct 25 09:51:59 INFO  Starting gateway...
Oct 25 09:51:59 INFO  Protocol version - 2.4.0-rc.1
Oct 25 09:51:59 DEBUG MCO:BGN:INIT GW,CP=RNNGL-Q-,FQ=NA,REL=2,VER=2.4.0-rc.1
Oct 25 09:51:59 DEBUG TSF:LRT:OK
Oct 25 09:51:59 DEBUG TSM:INIT
Oct 25 09:51:59 DEBUG TSF:WUR:MS=0
Oct 25 09:52:10 ERROR Could not open /sys/class/gpio/gpio15/direction
</code></pre>
<p dir="auto">I found this post : <a href="https://forum.mysensors.org/topic/12237/raspberry-pi-5-invalid-gpio-9/4">link text</a> which had similar type of error and pointing to a commit <a href="https://github.com/mysensors/MySensors/pull/1562" rel="nofollow ugc">#1562</a><br />
Unfortunately, I'm not understanding very well how github works. I tried to download the 4 different modified files and replace the original ones, one by one (hopefully I downloaded correct ones, I don't feel very comfortable) .<br />
Then I installed also the new lib ( sudo apt-get install libgpiod-dev ), launched again the config</p>
<pre><code>sudo ./configure --my-transport=rf24 --my-rf24-irq-pin=15

</code></pre>
<p dir="auto">but when I launch sudo make, then I can't compile anymore:</p>
<pre><code>hal/architecture/Linux/drivers/core/interrupt.cpp:108:27: error: ‘gpiod_line_event_wait’ was not declared in this scope; did you mean ‘gpiod_info_event_type’?
  108 |                 int ret = gpiod_line_event_wait(line, NULL);
      |                           ^~~~~~~~~~~~~~~~~~~~~
      |                           gpiod_info_event_type
hal/architecture/Linux/drivers/core/interrupt.cpp:113:41: error: aggregate ‘interruptHandler(void*)::gpiod_line_event event’ has incomplete type and cannot be defined
  113 |                 struct gpiod_line_event event;
      |                                         ^~~~~
hal/architecture/Linux/drivers/core/interrupt.cpp:114:21: error: ‘gpiod_line_event_read’ was not declared in this scope; did you mean ‘gpiod_line_event’?
  114 |                 if (gpiod_line_event_read(line, &amp;event) == 0) {
      |                     ^~~~~~~~~~~~~~~~~~~~~
      |                     gpiod_line_event
hal/architecture/Linux/drivers/core/interrupt.cpp:115:49: error: ‘GPIOD_LINE_EVENT_RISING_EDGE’ was not declared in this scope; did you mean ‘GPIOD_EDGE_EVENT_RISING_EDGE’?
  115 |                         if (event.event_type == GPIOD_LINE_EVENT_RISING_EDGE) {
      |                                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                                 GPIOD_EDGE_EVENT_RISING_EDGE
hal/architecture/Linux/drivers/core/interrupt.cpp:134:9: error: ‘gpiod_line_release’ was not declared in this scope; did you mean ‘gpiod_line_request’?
  134 |         gpiod_line_release(line);
      |         ^~~~~~~~~~~~~~~~~~
      |         gpiod_line_request
hal/architecture/Linux/drivers/core/interrupt.cpp:91:14: warning: unused variable ‘c’ [-Wunused-variable]
   91 |         char c;
      |              ^
hal/architecture/Linux/drivers/core/interrupt.cpp: In function ‘void attachInterrupt(uint8_t, void (*)(), uint8_t)’:
hal/architecture/Linux/drivers/core/interrupt.cpp:157:26: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
  157 |         char *chipname = "gpiochip0";
      |                          ^~~~~~~~~~~
hal/architecture/Linux/drivers/core/interrupt.cpp:159:33: error: aggregate ‘attachInterrupt(uint8_t, void (*)(), uint8_t)::gpiod_line_event event’ has incomplete type and cannot be defined
  159 |         struct gpiod_line_event event;
      |                                 ^~~~~
hal/architecture/Linux/drivers/core/interrupt.cpp:164:16: error: ‘gpiod_chip_open_by_name’ was not declared in this scope; did you mean ‘gpiod_chip_info_get_name’?
  164 |         chip = gpiod_chip_open_by_name(chipname);
      |                ^~~~~~~~~~~~~~~~~~~~~~~
      |                gpiod_chip_info_get_name
hal/architecture/Linux/drivers/core/interrupt.cpp:170:16: error: ‘gpiod_chip_get_line’ was not declared in this scope; did you mean ‘gpiod_chip_get_info’?
  170 |         line = gpiod_chip_get_line(chip, line_num);
      |                ^~~~~~~~~~~~~~~~~~~
      |                gpiod_chip_get_info
hal/architecture/Linux/drivers/core/interrupt.cpp:178:17: error: ‘gpiod_line_request_both_edges_events’ was not declared in this scope; did you mean ‘gpiod_line_request_wait_edge_events’?
  178 |                 gpiod_line_request_both_edges_events(line, "gpiointerrupt");
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                 gpiod_line_request_wait_edge_events
hal/architecture/Linux/drivers/core/interrupt.cpp:181:17: error: ‘gpiod_line_request_falling_edge_events’ was not declared in this scope; did you mean ‘gpiod_line_request_wait_edge_events’?
  181 |                 gpiod_line_request_falling_edge_events(line, "gpiointerrupt");
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                 gpiod_line_request_wait_edge_events
hal/architecture/Linux/drivers/core/interrupt.cpp:184:17: error: ‘gpiod_line_request_rising_edge_events’ was not declared in this scope; did you mean ‘gpiod_line_request_wait_edge_events’?
  184 |                 gpiod_line_request_rising_edge_events(line, "gpiointerrupt");
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                 gpiod_line_request_wait_edge_events
hal/architecture/Linux/drivers/core/interrupt.cpp:194:40: error: ‘gpiod_line_event_get_fd’ was not declared in this scope; did you mean ‘gpiod_line_request_get_fd’?
  194 |                 if ((sysFds[gpioPin] = gpiod_line_event_get_fd(line)) &lt; 0) {
      |                                        ^~~~~~~~~~~~~~~~~~~~~~~
      |                                        gpiod_line_request_get_fd

</code></pre>
<p dir="auto">What do I do wrong ?<br />
Thanks for your help..</p>
]]></description><link>https://forum.mysensors.org/topic/12356/error-compiling-under-trixie-for-raspberry-pi-3b</link><generator>RSS for Node</generator><lastBuildDate>Sun, 25 Oct 2026 14:15:57 GMT</lastBuildDate><atom:link href="https://forum.mysensors.org/topic/12356.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 25 Oct 2026 10:13:48 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Error compiling under Trixie for Raspberry PI 3B+ on Sun, 25 Oct 2026 12:10:22 GMT]]></title><description><![CDATA[<p dir="auto">Hi again.<br />
I found another post (<a href="https://github.com/mysensors/MySensors/pull/1610/commits" rel="nofollow ugc">#1610</a>), which seems referring to the previous one (#1562) and to TRixie.<br />
So I replaced the 6 files by ones found in <a href="https://github.com/mysensors/MySensors/pull/1610/files" rel="nofollow ugc">Files of #1610</a>.<br />
Now I can compile with no error, but when launching mysgw, I get an error :</p>
<pre><code>:~/MySensors $ sudo ./bin/mysgw
Oct 25 12:56:48 INFO  Starting gateway...
Oct 25 12:56:48 INFO  Protocol version - 2.4.0-rc.1
Oct 25 12:56:48 DEBUG MCO:BGN:INIT GW,CP=RNNGL-Q-,FQ=NA,REL=2,VER=2.4.0-rc.1
Oct 25 12:56:48 DEBUG TSF:LRT:OK
Oct 25 12:56:48 DEBUG TSM:INIT
Oct 25 12:56:48 DEBUG TSF:WUR:MS=0
Oct 25 12:56:48 ERROR Failed to request GPIO line
</code></pre>
<p dir="auto">To clarify my setup, I wanted to run the MySensors gateway on my same Raspberry Pi 3B+/Trixie than my Domoticz (same setup than before under Bullseye..)<br />
Any idea ?</p>
]]></description><link>https://forum.mysensors.org/post/114819</link><guid isPermaLink="true">https://forum.mysensors.org/post/114819</guid><dc:creator><![CDATA[ricorico94]]></dc:creator><pubDate>Sun, 25 Oct 2026 12:10:22 GMT</pubDate></item></channel></rss>