Skip to content
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
  1. Home
  2. Announcements
  3. 💬 Building a Raspberry Pi Gateway

💬 Building a Raspberry Pi Gateway

Scheduled Pinned Locked Moved Announcements
1.1k Posts 173 Posters 423.5k Views 131 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    magjef29
    wrote on last edited by
    #964

    Is the rasberry pi serving as a gateway and a server in this project? Or do you have to have a separate pi to host something like openhab and another pi for your gateway?

    mfalkviddM 1 Reply Last reply
    0
    • M magjef29

      Is the rasberry pi serving as a gateway and a server in this project? Or do you have to have a separate pi to host something like openhab and another pi for your gateway?

      mfalkviddM Online
      mfalkviddM Online
      mfalkvidd
      Mod
      wrote on last edited by mfalkvidd
      #965

      Hi @magjef29, welcome to the MySensors forum!

      You can run your controller(s) on the same Raspberry Pi.

      Depending on what tou mean by ”server”, the gateway can be a server, but the gateway is not a controller.

      If you haven’t already, see the getting started guide for information about the different parts.

      1 Reply Last reply
      0
      • А Offline
        А Offline
        Артем ТИхонович
        wrote on last edited by
        #966

        Hi! Does anybody test Cubieboard as Gateway? I have a cubieboard runing archlinux with spi enabled in kernel. How i define pins for nrf24 gateway connection? Or i need to make big changes in code to star work with different bord than Rpi?
        Best regards

        1 Reply Last reply
        0
        • А Offline
          А Offline
          Артем ТИхонович
          wrote on last edited by
          #967

          This is my old dream to connect directly nrf to Cubieboard GPIOs. Few years ago i try to do this without success using this lib - https://github.com/bearpawmaxim/librf24-sunxi

          mfalkviddM 1 Reply Last reply
          0
          • А Артем ТИхонович

            This is my old dream to connect directly nrf to Cubieboard GPIOs. Few years ago i try to do this without success using this lib - https://github.com/bearpawmaxim/librf24-sunxi

            mfalkviddM Online
            mfalkviddM Online
            mfalkvidd
            Mod
            wrote on last edited by mfalkvidd
            #968

            Hi @артем-тихонович, welcome to the MySensors forum!

            For the NRF24, the same defines as for normal sketches are used. Documentation: https://www.mysensors.org/apidocs/group__RF24SettingGrpPub.html
            The defines can be added to the Raspberry Pi gateway by following the instructions on https://www.mysensors.org/build/raspberry#advanced

            I have not heard about anyone using the Cubieboard but hopefully someone else has. The information provided on https://www.mysensors.org/build/orange might be useful if the Cubieboard is similar to the Orange Pie.

            oh, and in case you haven't already, see the ./configure --help text about the most common NRF24 defines; you might not need the advanced build options.

            1 Reply Last reply
            1
            • А Offline
              А Offline
              Артем ТИхонович
              wrote on last edited by
              #969

              Thank you, @mfalkvidd. Ihave a little troubles with correct defining gpios from Cubie. In fex file the gpios defines is:
              [gpio_para]
              gpio_used = 1
              gpio_num = 2
              gpio_pin_1 = port:PH07<0><default><default><default>
              gpio_pin_2 = port:PH15<6><default><default><default>
              in sys/gpio:
              [root@Archey boot]# ls -ls /sys/class/gpio/
              total 0
              0 --w------- 1 root root 4096 Nov 21 11:58 export
              0 lrwxrwxrwx 1 root root 0 Nov 18 17:01 gpio1_ph7 -> ../../devices/platform/gpio-sunxi/gpio/gpio1_ph7
              0 lrwxrwxrwx 1 root root 0 Nov 21 11:54 gpio2_ph15 -> ../../devices/platform/gpio-sunxi/gpio/gpio2_ph15
              0 lrwxrwxrwx 1 root root 0 Nov 18 10:45 gpiochip1 -> ../../devices/platform/gpio-sunxi/gpio/gpiochip1
              0 --w------- 1 root root 4096 Nov 18 16:52 unexport

              When i define in configure: --my-rf24-ce-pin=1 --my-rf24-cs-pin=2 build is ok, but test failed with error:
              Nov 21 11:58:15 ERROR Could not open /sys/class/gpio/gpio1/direction[root@Archey MySensors]#
              when i define --my-transport=nrf24 --my-rf24-ce-pin=gpio1_ph7 the build failed wirh error:
              ./drivers/RF24/RF24.cpp: In function 'void RF24_ce(bool)':
              <command-line>:0:16: error: 'gpio1_ph7' was not declared in this scope
              ./drivers/RF24/RF24.cpp:52:17: note: in expansion of macro 'MY_RF24_CE_PIN'
              hwDigitalWrite(MY_RF24_CE_PIN, level);

              How can i resolve this problem? Please help.

              1 Reply Last reply
              0
              • А Offline
                А Offline
                Артем ТИхонович
                wrote on last edited by
                #970

                I just see for another app using nrf24 on cubieboard
                and funcrtion to use nrf24 have GPIO defining is RF24 radio(SUNXI_GPB(10), SUNXI_GPB(11), "/dev/spidev0.0");
                GPIO set using this style: SUNXI_GPB(10), this type of gpio defined in #include "gpio_sun4i.h" file. Maybe this specific defining in ARCHLINUX ARM distro.

                mfalkviddM 1 Reply Last reply
                1
                • alowhumA Offline
                  alowhumA Offline
                  alowhum
                  Plugin Developer
                  wrote on last edited by
                  #971

                  I hereby donate these images:

                  4_1542918057729_step1.png 3_1542918057729_step2.png 2_1542918057728_step3.png 1_1542918057727_step4.png 0_1542918057727_step5.png

                  1 Reply Last reply
                  0
                  • А Артем ТИхонович

                    I just see for another app using nrf24 on cubieboard
                    and funcrtion to use nrf24 have GPIO defining is RF24 radio(SUNXI_GPB(10), SUNXI_GPB(11), "/dev/spidev0.0");
                    GPIO set using this style: SUNXI_GPB(10), this type of gpio defined in #include "gpio_sun4i.h" file. Maybe this specific defining in ARCHLINUX ARM distro.

                    mfalkviddM Online
                    mfalkviddM Online
                    mfalkvidd
                    Mod
                    wrote on last edited by
                    #972

                    In case someone can help @артем-тихонович, please post the answer in https://forum.mysensors.org/post/95304 so we don’t unnecessarily discuss the same thing in separate threads.

                    1 Reply Last reply
                    0
                    • MasMatM Offline
                      MasMatM Offline
                      MasMat
                      wrote on last edited by MasMat
                      #973

                      I get weird errors when "make"ing. Branch master.
                      My command:
                      sudo ./configure --my-transport=rf24 --my-rf24-irq-pin=15 --my-signing-debug --my-signing=password --my-security-password=ZZZZZZZZZZ --my-gateway=mqtt --my-controller-ip-address=127.0.0.1 --my-mqtt-user=XXXX --my-mqtt-password=YYYYY --my-mqtt-publish-topic-prefix=mysensors-out --my-mqtt-subscribe-topic-prefix=mysensors-in --my-mqtt-client-id=mygateway1 --my-leds-err-pin=12 --my-leds-rx-pin=16 --my-leds-tx-pin=18 --my-config-file=/etc/mysensors.conf

                      M -c examples_linux/mysgw.cpp -o build/examples_linux/mysgw.o
                      In file included from ./MySensors.h:148:0,
                                       from examples_linux/mysgw.cpp:82:
                      ./core/MySigningAtsha204Soft.cpp: In function ‘bool signerAtsha204SoftGetNonce(MyMessage&)’:
                      ./core/MySigningAtsha204Soft.cpp:173:55: error: no matching function for call to ‘min(unsigned int, int)’
                        msg.set(_signing_verifying_nonce, MIN(MAX_PAYLOAD, 32));
                                                                             ^
                      In file included from /usr/include/c++/6/algorithm:62:0,
                                       from ./drivers/Linux/Arduino.h:32,
                                       from ./MySensors.h:39,
                                       from examples_linux/mysgw.cpp:82:
                      /usr/include/c++/6/bits/stl_algo.h:3453:5: note: candidate: template<class _Tp, class _Compare> constexpr _Tp std::min(std::initializer_list<_Tp>, _Compare)
                           min(initializer_list<_Tp> __l, _Compare __comp)
                           ^~~
                      /usr/include/c++/6/bits/stl_algo.h:3453:5: note:   template argument deduction/substitution failed:
                      In file included from ./MySensors.h:148:0,
                                       from examples_linux/mysgw.cpp:82:
                      ./core/MySigningAtsha204Soft.cpp:173:55: note:   mismatched types ‘std::initializer_list<_Tp>’ and ‘unsigned int’
                        msg.set(_signing_verifying_nonce, MIN(MAX_PAYLOAD, 32));
                                                                             ^
                      In file included from /usr/include/c++/6/algorithm:62:0,
                                       from ./drivers/Linux/Arduino.h:32,
                                       from ./MySensors.h:39,
                                       from examples_linux/mysgw.cpp:82:
                      /usr/include/c++/6/bits/stl_algo.h:3447:5: note: candidate: template<class _Tp> constexpr _Tp std::min(std::initializer_list<_Tp>)
                           min(initializer_list<_Tp> __l)
                           ^~~
                      /usr/include/c++/6/bits/stl_algo.h:3447:5: note:   template argument deduction/substitution failed:
                      In file included from ./MySensors.h:148:0,
                                       from examples_linux/mysgw.cpp:82:
                      ./core/MySigningAtsha204Soft.cpp:173:55: note:   mismatched types ‘std::initializer_list<_Tp>’ and ‘unsigned int’
                        msg.set(_signing_verifying_nonce, MIN(MAX_PAYLOAD, 32));
                                                                             ^
                      In file included from /usr/include/c++/6/bits/char_traits.h:39:0,
                                       from /usr/include/c++/6/ios:40,
                                       from /usr/include/c++/6/ostream:38,
                                       from /usr/include/c++/6/iostream:39,
                                       from examples_linux/mysgw.cpp:20:
                      /usr/include/c++/6/bits/stl_algobase.h:243:5: note: candidate: template<class _Tp, class _Compare> constexpr const _Tp& std::min(const _Tp&, const _Tp&, _Compare)
                           min(const _Tp& __a, const _Tp& __b, _Compare __comp)
                           ^~~
                      /usr/include/c++/6/bits/stl_algobase.h:243:5: note:   template argument deduction/substitution failed:
                      In file included from ./MySensors.h:148:0,
                                       from examples_linux/mysgw.cpp:82:
                      ./core/MySigningAtsha204Soft.cpp:173:55: note:   deduced conflicting types for parameter ‘const _Tp’ (‘unsigned int’ and ‘int’)
                        msg.set(_signing_verifying_nonce, MIN(MAX_PAYLOAD, 32));
                                                                             ^
                      In file included from /usr/include/c++/6/bits/char_traits.h:39:0,
                                       from /usr/include/c++/6/ios:40,
                                       from /usr/include/c++/6/ostream:38,
                                       from /usr/include/c++/6/iostream:39,
                                       from examples_linux/mysgw.cpp:20:
                      /usr/include/c++/6/bits/stl_algobase.h:195:5: note: candidate: template<class _Tp> constexpr const _Tp& std::min(const _Tp&, const _Tp&)
                           min(const _Tp& __a, const _Tp& __b)
                           ^~~
                      /usr/include/c++/6/bits/stl_algobase.h:195:5: note:   template argument deduction/substitution failed:
                      In file included from ./MySensors.h:148:0,
                                       from examples_linux/mysgw.cpp:82:
                      ./core/MySigningAtsha204Soft.cpp:173:55: note:   deduced conflicting types for parameter ‘const _Tp’ (‘unsigned int’ and ‘int’)
                        msg.set(_signing_verifying_nonce, MIN(MAX_PAYLOAD, 32));
                                                                             ^
                      ./core/MySigningAtsha204Soft.cpp: In function ‘void signerAtsha204SoftPutNonce(MyMessage&)’:
                      ./core/MySigningAtsha204Soft.cpp:190:89: error: no matching function for call to ‘min(unsigned int, int)’
                        (void)memcpy((void *)_signing_nonce, (const void *)msg.getCustom(), MIN(MAX_PAYLOAD, 32));
                                                                                                               ^
                      In file included from /usr/include/c++/6/algorithm:62:0,
                                       from ./drivers/Linux/Arduino.h:32,
                                       from ./MySensors.h:39,
                                       from examples_linux/mysgw.cpp:82:
                      /usr/include/c++/6/bits/stl_algo.h:3453:5: note: candidate: template<class _Tp, class _Compare> constexpr _Tp std::min(std::initializer_list<_Tp>, _Compare)
                           min(initializer_list<_Tp> __l, _Compare __comp)
                           ^~~
                      /usr/include/c++/6/bits/stl_algo.h:3453:5: note:   template argument deduction/substitution failed:
                      In file included from ./MySensors.h:148:0,
                                       from examples_linux/mysgw.cpp:82:
                      ./core/MySigningAtsha204Soft.cpp:190:89: note:   mismatched types ‘std::initializer_list<_Tp>’ and ‘unsigned int’
                        (void)memcpy((void *)_signing_nonce, (const void *)msg.getCustom(), MIN(MAX_PAYLOAD, 32));
                                                                                                               ^
                      In file included from /usr/include/c++/6/algorithm:62:0,
                                       from ./drivers/Linux/Arduino.h:32,
                                       from ./MySensors.h:39,
                                       from examples_linux/mysgw.cpp:82:
                      /usr/include/c++/6/bits/stl_algo.h:3447:5: note: candidate: template<class _Tp> constexpr _Tp std::min(std::initializer_list<_Tp>)
                           min(initializer_list<_Tp> __l)
                           ^~~
                      /usr/include/c++/6/bits/stl_algo.h:3447:5: note:   template argument deduction/substitution failed:
                      In file included from ./MySensors.h:148:0,
                                       from examples_linux/mysgw.cpp:82:
                      ./core/MySigningAtsha204Soft.cpp:190:89: note:   mismatched types ‘std::initializer_list<_Tp>’ and ‘unsigned int’
                        (void)memcpy((void *)_signing_nonce, (const void *)msg.getCustom(), MIN(MAX_PAYLOAD, 32));
                                                                                                               ^
                      In file included from /usr/include/c++/6/bits/char_traits.h:39:0,
                                       from /usr/include/c++/6/ios:40,
                                       from /usr/include/c++/6/ostream:38,
                                       from /usr/include/c++/6/iostream:39,
                                       from examples_linux/mysgw.cpp:20:
                      /usr/include/c++/6/bits/stl_algobase.h:243:5: note: candidate: template<class _Tp, class _Compare> constexpr const _Tp& std::min(const _Tp&, const _Tp&, _Compare)
                           min(const _Tp& __a, const _Tp& __b, _Compare __comp)
                           ^~~
                      /usr/include/c++/6/bits/stl_algobase.h:243:5: note:   template argument deduction/substitution failed:
                      In file included from ./MySensors.h:148:0,
                                       from examples_linux/mysgw.cpp:82:
                      ./core/MySigningAtsha204Soft.cpp:190:89: note:   deduced conflicting types for parameter ‘const _Tp’ (‘unsigned int’ and ‘int’)
                        (void)memcpy((void *)_signing_nonce, (const void *)msg.getCustom(), MIN(MAX_PAYLOAD, 32));
                                                                                                               ^
                      In file included from /usr/include/c++/6/bits/char_traits.h:39:0,
                                       from /usr/include/c++/6/ios:40,
                                       from /usr/include/c++/6/ostream:38,
                                       from /usr/include/c++/6/iostream:39,
                                       from examples_linux/mysgw.cpp:20:
                      /usr/include/c++/6/bits/stl_algobase.h:195:5: note: candidate: template<class _Tp> constexpr const _Tp& std::min(const _Tp&, const _Tp&)
                           min(const _Tp& __a, const _Tp& __b)
                           ^~~
                      /usr/include/c++/6/bits/stl_algobase.h:195:5: note:   template argument deduction/substitution failed:
                      In file included from ./MySensors.h:148:0,
                                       from examples_linux/mysgw.cpp:82:
                      ./core/MySigningAtsha204Soft.cpp:190:89: note:   deduced conflicting types for parameter ‘const _Tp’ (‘unsigned int’ and ‘int’)
                        (void)memcpy((void *)_signing_nonce, (const void *)msg.getCustom(), MIN(MAX_PAYLOAD, 32));
                                                                                                               ^
                      ./core/MySigningAtsha204Soft.cpp: In function ‘bool signerAtsha204SoftSignMsg(MyMessage&)’:
                      ./core/MySigningAtsha204Soft.cpp:229:50: error: no matching function for call to ‘min(unsigned int, int)’
                                     MIN(MAX_PAYLOAD-mGetLength(msg), 32));
                                                                        ^
                      In file included from /usr/include/c++/6/algorithm:62:0,
                                       from ./drivers/Linux/Arduino.h:32,
                                       from ./MySensors.h:39,
                                       from examples_linux/mysgw.cpp:82:
                      /usr/include/c++/6/bits/stl_algo.h:3453:5: note: candidate: template<class _Tp, class _Compare> constexpr _Tp std::min(std::initializer_list<_Tp>, _Compare)
                           min(initializer_list<_Tp> __l, _Compare __comp)
                           ^~~
                      /usr/include/c++/6/bits/stl_algo.h:3453:5: note:   template argument deduction/substitution failed:
                      In file included from ./MySensors.h:148:0,
                                       from examples_linux/mysgw.cpp:82:
                      ./core/MySigningAtsha204Soft.cpp:229:50: note:   mismatched types ‘std::initializer_list<_Tp>’ and ‘unsigned int’
                                     MIN(MAX_PAYLOAD-mGetLength(msg), 32));
                                                                        ^
                      In file included from /usr/include/c++/6/algorithm:62:0,
                                       from ./drivers/Linux/Arduino.h:32,
                                       from ./MySensors.h:39,
                                       from examples_linux/mysgw.cpp:82:
                      /usr/include/c++/6/bits/stl_algo.h:3447:5: note: candidate: template<class _Tp> constexpr _Tp std::min(std::initializer_list<_Tp>)
                           min(initializer_list<_Tp> __l)
                           ^~~
                      /usr/include/c++/6/bits/stl_algo.h:3447:5: note:   template argument deduction/substitution failed:
                      In file included from ./MySensors.h:148:0,
                                       from examples_linux/mysgw.cpp:82:
                      ./core/MySigningAtsha204Soft.cpp:229:50: note:   mismatched types ‘std::initializer_list<_Tp>’ and ‘unsigned int’
                                     MIN(MAX_PAYLOAD-mGetLength(msg), 32));
                                                                        ^
                      In file included from /usr/include/c++/6/bits/char_traits.h:39:0,
                                       from /usr/include/c++/6/ios:40,
                                       from /usr/include/c++/6/ostream:38,
                                       from /usr/include/c++/6/iostream:39,
                                       from examples_linux/mysgw.cpp:20:
                      /usr/include/c++/6/bits/stl_algobase.h:243:5: note: candidate: template<class _Tp, class _Compare> constexpr const _Tp& std::min(const _Tp&, const _Tp&, _Compare)
                           min(const _Tp& __a, const _Tp& __b, _Compare __comp)
                           ^~~
                      /usr/include/c++/6/bits/stl_algobase.h:243:5: note:   template argument deduction/substitution failed:
                      In file included from ./MySensors.h:148:0,
                                       from examples_linux/mysgw.cpp:82:
                      ./core/MySigningAtsha204Soft.cpp:229:50: note:   deduced conflicting types for parameter ‘const _Tp’ (‘unsigned int’ and ‘int’)
                                     MIN(MAX_PAYLOAD-mGetLength(msg), 32));
                                                                        ^
                      In file included from /usr/include/c++/6/bits/char_traits.h:39:0,
                                       from /usr/include/c++/6/ios:40,
                                       from /usr/include/c++/6/ostream:38,
                                       from /usr/include/c++/6/iostream:39,
                                       from examples_linux/mysgw.cpp:20:
                      /usr/include/c++/6/bits/stl_algobase.h:195:5: note: candidate: template<class _Tp> constexpr const _Tp& std::min(const _Tp&, const _Tp&)
                           min(const _Tp& __a, const _Tp& __b)
                           ^~~
                      /usr/include/c++/6/bits/stl_algobase.h:195:5: note:   template argument deduction/substitution failed:
                      In file included from ./MySensors.h:148:0,
                                       from examples_linux/mysgw.cpp:82:
                      ./core/MySigningAtsha204Soft.cpp:229:50: note:   deduced conflicting types for parameter ‘const _Tp’ (‘unsigned int’ and ‘int’)
                                     MIN(MAX_PAYLOAD-mGetLength(msg), 32));
                                                                        ^
                      ./core/MySigningAtsha204Soft.cpp: In function ‘bool signerAtsha204SoftVerifyMsg(MyMessage&)’:
                      ./core/MySigningAtsha204Soft.cpp:283:55: error: no matching function for call to ‘min(unsigned int, int)’
                                          MIN(MAX_PAYLOAD-mGetLength(msg), 32))) {
                                                                             ^
                      In file included from /usr/include/c++/6/algorithm:62:0,
                                       from ./drivers/Linux/Arduino.h:32,
                                       from ./MySensors.h:39,
                                       from examples_linux/mysgw.cpp:82:
                      /usr/include/c++/6/bits/stl_algo.h:3453:5: note: candidate: template<class _Tp, class _Compare> constexpr _Tp std::min(std::initializer_list<_Tp>, _Compare)
                           min(initializer_list<_Tp> __l, _Compare __comp)
                           ^~~
                      /usr/include/c++/6/bits/stl_algo.h:3453:5: note:   template argument deduction/substitution failed:
                      In file included from ./MySensors.h:148:0,
                                       from examples_linux/mysgw.cpp:82:
                      ./core/MySigningAtsha204Soft.cpp:283:55: note:   mismatched types ‘std::initializer_list<_Tp>’ and ‘unsigned int’
                                          MIN(MAX_PAYLOAD-mGetLength(msg), 32))) {
                                                                             ^
                      In file included from /usr/include/c++/6/algorithm:62:0,
                                       from ./drivers/Linux/Arduino.h:32,
                                       from ./MySensors.h:39,
                                       from examples_linux/mysgw.cpp:82:
                      /usr/include/c++/6/bits/stl_algo.h:3447:5: note: candidate: template<class _Tp> constexpr _Tp std::min(std::initializer_list<_Tp>)
                           min(initializer_list<_Tp> __l)
                           ^~~
                      /usr/include/c++/6/bits/stl_algo.h:3447:5: note:   template argument deduction/substitution failed:
                      In file included from ./MySensors.h:148:0,
                                       from examples_linux/mysgw.cpp:82:
                      ./core/MySigningAtsha204Soft.cpp:283:55: note:   mismatched types ‘std::initializer_list<_Tp>’ and ‘unsigned int’
                                          MIN(MAX_PAYLOAD-mGetLength(msg), 32))) {
                                                                             ^
                      In file included from /usr/include/c++/6/bits/char_traits.h:39:0,
                                       from /usr/include/c++/6/ios:40,
                                       from /usr/include/c++/6/ostream:38,
                                       from /usr/include/c++/6/iostream:39,
                                       from examples_linux/mysgw.cpp:20:
                      /usr/include/c++/6/bits/stl_algobase.h:243:5: note: candidate: template<class _Tp, class _Compare> constexpr const _Tp& std::min(const _Tp&, const _Tp&, _Compare)
                           min(const _Tp& __a, const _Tp& __b, _Compare __comp)
                           ^~~
                      /usr/include/c++/6/bits/stl_algobase.h:243:5: note:   template argument deduction/substitution failed:
                      In file included from ./MySensors.h:148:0,
                                       from examples_linux/mysgw.cpp:82:
                      ./core/MySigningAtsha204Soft.cpp:283:55: note:   deduced conflicting types for parameter ‘const _Tp’ (‘unsigned int’ and ‘int’)
                                          MIN(MAX_PAYLOAD-mGetLength(msg), 32))) {
                                                                             ^
                      In file included from /usr/include/c++/6/bits/char_traits.h:39:0,
                                       from /usr/include/c++/6/ios:40,
                                       from /usr/include/c++/6/ostream:38,
                                       from /usr/include/c++/6/iostream:39,
                                       from examples_linux/mysgw.cpp:20:
                      /usr/include/c++/6/bits/stl_algobase.h:195:5: note: candidate: template<class _Tp> constexpr const _Tp& std::min(const _Tp&, const _Tp&)
                           min(const _Tp& __a, const _Tp& __b)
                           ^~~
                      /usr/include/c++/6/bits/stl_algobase.h:195:5: note:   template argument deduction/substitution failed:
                      In file included from ./MySensors.h:148:0,
                                       from examples_linux/mysgw.cpp:82:
                      ./core/MySigningAtsha204Soft.cpp:283:55: note:   deduced conflicting types for parameter ‘const _Tp’ (‘unsigned int’ and ‘int’)
                                          MIN(MAX_PAYLOAD-mGetLength(msg), 32))) {
                                                                             ^
                      ./core/MySigningAtsha204Soft.cpp: In function ‘void signerCalculateSignature(MyMessage&, bool)’:
                      ./core/MySigningAtsha204Soft.cpp:307:48: error: no matching function for call to ‘min(uint8_t&, int)’
                         uint8_t bytes_to_include = MIN(bytes_left, 32);
                                                                      ^
                      In file included from /usr/include/c++/6/algorithm:62:0,
                                       from ./drivers/Linux/Arduino.h:32,
                                       from ./MySensors.h:39,
                                       from examples_linux/mysgw.cpp:82:
                      /usr/include/c++/6/bits/stl_algo.h:3453:5: note: candidate: template<class _Tp, class _Compare> constexpr _Tp std::min(std::initializer_list<_Tp>, _Compare)
                           min(initializer_list<_Tp> __l, _Compare __comp)
                           ^~~
                      /usr/include/c++/6/bits/stl_algo.h:3453:5: note:   template argument deduction/substitution failed:
                      In file included from ./MySensors.h:148:0,
                                       from examples_linux/mysgw.cpp:82:
                      ./core/MySigningAtsha204Soft.cpp:307:48: note:   mismatched types ‘std::initializer_list<_Tp>’ and ‘unsigned char’
                         uint8_t bytes_to_include = MIN(bytes_left, 32);
                                                                      ^
                      In file included from /usr/include/c++/6/algorithm:62:0,
                                       from ./drivers/Linux/Arduino.h:32,
                                       from ./MySensors.h:39,
                                       from examples_linux/mysgw.cpp:82:
                      /usr/include/c++/6/bits/stl_algo.h:3447:5: note: candidate: template<class _Tp> constexpr _Tp std::min(std::initializer_list<_Tp>)
                           min(initializer_list<_Tp> __l)
                           ^~~
                      /usr/include/c++/6/bits/stl_algo.h:3447:5: note:   template argument deduction/substitution failed:
                      In file included from ./MySensors.h:148:0,
                                       from examples_linux/mysgw.cpp:82:
                      ./core/MySigningAtsha204Soft.cpp:307:48: note:   mismatched types ‘std::initializer_list<_Tp>’ and ‘unsigned char’
                         uint8_t bytes_to_include = MIN(bytes_left, 32);
                                                                      ^
                      In file included from /usr/include/c++/6/bits/char_traits.h:39:0,
                                       from /usr/include/c++/6/ios:40,
                                       from /usr/include/c++/6/ostream:38,
                                       from /usr/include/c++/6/iostream:39,
                                       from examples_linux/mysgw.cpp:20:
                      /usr/include/c++/6/bits/stl_algobase.h:243:5: note: candidate: template<class _Tp, class _Compare> constexpr const _Tp& std::min(const _Tp&, const _Tp&, _Compare)
                           min(const _Tp& __a, const _Tp& __b, _Compare __comp)
                           ^~~
                      /usr/include/c++/6/bits/stl_algobase.h:243:5: note:   template argument deduction/substitution failed:
                      In file included from ./MySensors.h:148:0,
                                       from examples_linux/mysgw.cpp:82:
                      ./core/MySigningAtsha204Soft.cpp:307:48: note:   deduced conflicting types for parameter ‘const _Tp’ (‘unsigned char’ and ‘int’)
                         uint8_t bytes_to_include = MIN(bytes_left, 32);
                                                                      ^
                      In file included from /usr/include/c++/6/bits/char_traits.h:39:0,
                                       from /usr/include/c++/6/ios:40,
                                       from /usr/include/c++/6/ostream:38,
                                       from /usr/include/c++/6/iostream:39,
                                       from examples_linux/mysgw.cpp:20:
                      /usr/include/c++/6/bits/stl_algobase.h:195:5: note: candidate: template<class _Tp> constexpr const _Tp& std::min(const _Tp&, const _Tp&)
                           min(const _Tp& __a, const _Tp& __b)
                           ^~~
                      /usr/include/c++/6/bits/stl_algobase.h:195:5: note:   template argument deduction/substitution failed:
                      In file included from ./MySensors.h:148:0,
                                       from examples_linux/mysgw.cpp:82:
                      ./core/MySigningAtsha204Soft.cpp:307:48: note:   deduced conflicting types for parameter ‘const _Tp’ (‘unsigned char’ and ‘int’)
                         uint8_t bytes_to_include = MIN(bytes_left, 32);
                                                                      ^
                      ./core/MySigningAtsha204Soft.cpp: In function ‘bool signerAtsha204SoftVerifyMsg(MyMessage&)’:
                      ./core/MySigningAtsha204Soft.cpp:289:1: warning: control reaches end of non-void function [-Wreturn-type]
                       }
                       ^
                      Makefile:98: recipe for target 'build/examples_linux/mysgw.o' failed
                      make: *** [build/examples_linux/mysgw.o] Error 1
                      

                      Can someone better versed help?
                      EDIT: tested branch development, no problems.

                      1 Reply Last reply
                      0
                      • mfalkviddM Online
                        mfalkviddM Online
                        mfalkvidd
                        Mod
                        wrote on last edited by
                        #974

                        Could be same as https://forum.mysensors.org/topic/10036/unable-to-compile-raspberry-pi-gateway-when-signing-enable

                        MasMatM 1 Reply Last reply
                        0
                        • mfalkviddM mfalkvidd

                          Could be same as https://forum.mysensors.org/topic/10036/unable-to-compile-raspberry-pi-gateway-when-signing-enable

                          MasMatM Offline
                          MasMatM Offline
                          MasMat
                          wrote on last edited by MasMat
                          #975

                          @mfalkvidd It sure looks the same. I did a fresh git clone to update my gateway, so shouldn't it be fixed? From what appears on github it looked fixed..
                          EDIT appears fixed in development branch. But not master?

                          mfalkviddM 1 Reply Last reply
                          0
                          • MasMatM MasMat

                            @mfalkvidd It sure looks the same. I did a fresh git clone to update my gateway, so shouldn't it be fixed? From what appears on github it looked fixed..
                            EDIT appears fixed in development branch. But not master?

                            mfalkviddM Online
                            mfalkviddM Online
                            mfalkvidd
                            Mod
                            wrote on last edited by
                            #976

                            @masmat said in 💬 Building a Raspberry Pi Gateway:

                            EDIT appears fixed in development branch. But not master?

                            Yes that is correct

                            1 Reply Last reply
                            0
                            • R Offline
                              R Offline
                              Robert Król
                              wrote on last edited by
                              #977

                              hi,
                              is it possible to conect NRF24 to SPI1 channel on RBpi3?
                              (i mean pins 26, 35, 36,38,40)??

                              mfalkviddM 1 Reply Last reply
                              0
                              • R Robert Król

                                hi,
                                is it possible to conect NRF24 to SPI1 channel on RBpi3?
                                (i mean pins 26, 35, 36,38,40)??

                                mfalkviddM Online
                                mfalkviddM Online
                                mfalkvidd
                                Mod
                                wrote on last edited by mfalkvidd
                                #978

                                Welcome to the forum @robert-król
                                I have not tried it myself, but I beleive https://forum.mysensors.org/post/76079 shows how to do it.

                                1 Reply Last reply
                                0
                                • B Offline
                                  B Offline
                                  barrydou
                                  wrote on last edited by barrydou
                                  #979

                                  Hello

                                  Is it possible to redefine pin used for DI00 with rfm69 (with configure option for example) ?
                                  Indeed, DI00 is on pin 22 on raspberry, and pin 2 on arduino.
                                  But with NRF, pin 2 on arduino is for IRQ, which is connected to pin 15 on raspberry.

                                  So if it was possible to force pin 15 for DI00, we could use adaptator card like this one https://www.mysensors.org/hardware/nrf2rfm69.

                                  gohanG 1 Reply Last reply
                                  0
                                  • R Offline
                                    R Offline
                                    Rolo6442u
                                    wrote on last edited by
                                    #980

                                    Hi, just build an Ethernet gateway on a raspberry pi B+ following the instructions on this site. And it works! I'm running raspbian stretch lite and used the master branch. No issues. I use the RFM69 radio and this gateway has the HW model. I did have to update al my nodes to use the new RFM69 drivers but that was clearly mentioned in the article.
                                    I have two questions:

                                    1. In this section :
                                    log_pipe=0
                                    log_pipe_file=/tmp/mysgw.pipe
                                    

                                    Is this correct, I think there should be a 1 to enable this type of logging.

                                    1. When a new version of mysensors is released, how do I update the gateway version on the raspberry pi?

                                    And here is a picture of my work:
                                    alt text

                                    Thanks for the effort you put into this project!

                                    1 Reply Last reply
                                    1
                                    • K Offline
                                      K Offline
                                      kted
                                      wrote on last edited by
                                      #981

                                      Has the issue with RFM automatic transmission control been addressed?

                                      R 1 Reply Last reply
                                      0
                                      • K kted

                                        Has the issue with RFM automatic transmission control been addressed?

                                        R Offline
                                        R Offline
                                        Rolo6442u
                                        wrote on last edited by Rolo6442u
                                        #982

                                        @kted Can you give me a pointer to the details of this issue? I'm willing to do some tests and report back my findings. Some info about my configuration, I have 5 nodes at this moment, all battery feeded, they are sending only nodes. They all work but they have a interval of several minutes between sending. The gateway is connected to Domoticz running on another Raspberry PI.

                                        K 1 Reply Last reply
                                        1
                                        • R Rolo6442u

                                          @kted Can you give me a pointer to the details of this issue? I'm willing to do some tests and report back my findings. Some info about my configuration, I have 5 nodes at this moment, all battery feeded, they are sending only nodes. They all work but they have a interval of several minutes between sending. The gateway is connected to Domoticz running on another Raspberry PI.

                                          K Offline
                                          K Offline
                                          kted
                                          wrote on last edited by kted
                                          #983

                                          @rolo6442u I built an Raspberry gateway using an RFM69 radio, to replace one built around a NodeMCU.
                                          All nodes are transmit only, and using the latest stable API.
                                          I noticed that all sensors were using max TX power after the first couple of transmissions, although they were respecting the ATC setting before, and were using minimum power most of the time.
                                          Now I am concerned about battery life, so I switched back to the NodeMCU gateway, waiting for a fix.
                                          I'll put together a temporary net, with a RPi0 gateway and a single node later, to show some real data, if you need any more information.

                                          R mfalkviddM 2 Replies Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          17

                                          Online

                                          11.7k

                                          Users

                                          11.2k

                                          Topics

                                          113.1k

                                          Posts


                                          Copyright 2025 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • MySensors
                                          • OpenHardware.io
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular