Skip to content
  • 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
  • Getting Started
  • Controller
  • Build
  • Hardware
  • Download/API
  • Forum
  • Store

💬 Building a Raspberry Pi Gateway

Scheduled Pinned Locked Moved Announcements
1.1k Posts 173 Posters 422.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.
  • llegoffL Offline
    llegoffL Offline
    llegoff
    wrote on last edited by
    #642

    hello, is there a inclusion mode planned for the raspberry pi gateway ?

    1 Reply Last reply
    0
    • R Offline
      R Offline
      ricorico94
      wrote on last edited by ricorico94
      #643

      Hi,
      This seems a great job, but despite I had a look at many posts (yes, many out of the dozens of pages.. ;-) ), I still can't figure out some questions..

      • Beyond the obvious advantage of saving an arduino (and power supply, space..), is there an advantage for having the gateway hosted by the raspberry PI hosting my Domoticz ? (like more CPU available for handling communications or for signing ? or on the opposite more risks to overload the PI CPU -despite only a couple persons have complained about high CPU load))
      • the default setup is Ethernet. What are the pros and cons of ethernet vs serial setup ? (speed? reliability ? possibility to move to other gateway?..)
      • Is signing now implemented in this setup ? I didn't see it explicitely described, but some posts seem related to signing.
      • if I want to use an external antenna and the high power NRF24, should I use an aother power source than raspberry PI ? (or maybe sharing the same USB charger, but diverting the power in parallel of the PI ?)
      • is there a tutorial somewhere detailing how to uninstall and migrate to an external gateway ? During such migration, would I need to "touch" again my sensors and would I lose history logs of these sensors in Domoticz ?

      Sorry for all these questions..

      br,
      Ricorico94

      mfalkviddM 1 Reply Last reply
      1
      • R ricorico94

        Hi,
        This seems a great job, but despite I had a look at many posts (yes, many out of the dozens of pages.. ;-) ), I still can't figure out some questions..

        • Beyond the obvious advantage of saving an arduino (and power supply, space..), is there an advantage for having the gateway hosted by the raspberry PI hosting my Domoticz ? (like more CPU available for handling communications or for signing ? or on the opposite more risks to overload the PI CPU -despite only a couple persons have complained about high CPU load))
        • the default setup is Ethernet. What are the pros and cons of ethernet vs serial setup ? (speed? reliability ? possibility to move to other gateway?..)
        • Is signing now implemented in this setup ? I didn't see it explicitely described, but some posts seem related to signing.
        • if I want to use an external antenna and the high power NRF24, should I use an aother power source than raspberry PI ? (or maybe sharing the same USB charger, but diverting the power in parallel of the PI ?)
        • is there a tutorial somewhere detailing how to uninstall and migrate to an external gateway ? During such migration, would I need to "touch" again my sensors and would I lose history logs of these sensors in Domoticz ?

        Sorry for all these questions..

        br,
        Ricorico94

        mfalkviddM Offline
        mfalkviddM Offline
        mfalkvidd
        Mod
        wrote on last edited by mfalkvidd
        #644

        @ricorico94 said in 💬 Building a Raspberry Pi Gateway:

        Hi,
        This seems a great job, but despite I had a look at many posts (yes, many out of the dozens of pages.. ;-) ), I still can't figure out some questions..

        • Beyond the obvious advantage of saving an arduino (and power supply, space..), is there an advantage for having the gateway hosted by the raspberry PI hosting my Domoticz ? (like more CPU available for handling communications or for signing ? or on the opposite more risks to overload the PI CPU -despite only a couple persons have complained about high CPU load))

        Not really. Cpu usage is normally 0-2% so it doesn't affect either way.

        Switching between different gateway types (serial, ethernet, mqtt) can be easier since there is no need to re-wire anything, just reconfigure and recompile. But that could be done with a all-in-one Arduino setup as well.

        Remote debug might be a benefit, since logging in to the raspberry pi to view log files can be done remotely. Remote debug for Arduino is possible, but usually requires additional hardware.

        The raspberry pi has room for more logging, which can help troubleshooting.

        The biggest downside is that a raspberry pi environment is infinitely more complex than an Arduino, which could affect reliability and make troubleshooting harder. On the other hand, there are more debugging tools available which might make troubleshooting easier.

        • the default setup is Ethernet. What are the pros and cons of ethernet vs serial setup ? (speed? reliability ? possibility to move to other gateway?..)

        No difference in speed. No difference in reliability.

        Ethernet can easily be made accessible over the network. Doing that with serial can be done but is a bit tricky.

        Some controllers don't have support for all gateway types. See https://www.mysensors.org/controller for details.

        • Is signing now implemented in this setup ? I didn't see it explicitely described, but some posts seem related to signing.

        Yes. See the help text produced by running ./configure --help

        • if I want to use an external antenna and the high power NRF24, should I use an aother power source than raspberry PI ? (or maybe sharing the same USB charger, but diverting the power in parallel of the PI ?)

        Yes. See the note on https://www.mysensors.org/build/raspberry#wiring

        • is there a tutorial somewhere detailing how to uninstall and migrate to an external gateway ? During such migration, would I need to "touch" again my sensors and would I lose history logs of these sensors in Domoticz ?

        See my answer in the question you posted yesterday.

        Sorry for all these questions..

        No worries. Except for posting one of the questions again (which wastes people's time and confuses people when they read only one of the places), you are very welcome to post as many questions as you like. Asking questions is usually the next best way to learn.

        1 Reply Last reply
        4
        • R Offline
          R Offline
          ricorico94
          wrote on last edited by
          #645

          Thanks a lot for your clear explanations ! Very useful !
          and.. bravo ! for all your work

          1 Reply Last reply
          2
          • R Offline
            R Offline
            ricorico94
            wrote on last edited by ricorico94
            #646

            Hi,
            I'm trying to install the gateway on a Raspberry Pi 2 hosting Domoticz already (I had used the standard Domoticz image).
            I receive an error message on the make step, but maybe I've not properly understood instructions (not very friendly with raspberry and linux environment).
            First, I wired the NRF24 with PA (meaning I used an adapter and the 5V physical PIN#4) and the IRQ (wired on physical pin #15)
            Then I logged into my raspberry and staid in initial directory (pi@raspberrypi )
            I then typed:

            pi@raspberrypi ~ $ git clone https://github.com/mysensors/MySensors.git --branch master
            Cloning into 'MySensors'...
            remote: Counting objects: 14895, done.
            remote: Compressing objects: 100% (8/8), done.
            remote: Total 14895 (delta 0), reused 5 (delta 0), pack-reused 14887
            Receiving objects: 100% (14895/14895), 12.17 MiB | 1.68 MiB/s, done.
            Resolving deltas: 100% (9022/9022), done.
            pi@raspberrypi ~ $ cd MySensors
            pi@raspberrypi ~/MySensors $ ./configure --help
            

            Hopefully I did it in adequate folder ? (now I see a Mysensors folder in my /home/pi folder).
            Then I typed:

            pi@raspberrypi ~/MySensors $ --my-transport=nrf24
            -bash: --my-transport=nrf24 : commande introuvable
            pi@raspberrypi ~/MySensors $ ./configure --my-transport=nrf24
            [SECTION] Detecting target machine.
              [OK] machine detected: SoC=BCM2836, Type=Rpi2, CPU=armv7l.
            [SECTION] Detecting SPI driver.
              [OK] SPI driver detected:BCM.
            [SECTION] Detecting init system.
              [OK] init system detected: sysvinit.
            [SECTION] Saving configuration.
            [SECTION] Cleaning previous builds.
            [OK] Finished.
            
            

            So far, no error.. but should I have typed "./configure --my-transport=nrf24 --my-rf24-irq-pin=15" to implement the IRQ ? If yes, can I retype that command with new settings without issue ?

            Then I understaood I had to run make command:

            pi@raspberrypi ~/MySensors $ make
            gcc -MT build/drivers/Linux/log.o -MMD -MP -march=armv7-a -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -DMY_RADIO_NRF24 -DMY_GATEWAY_LINUX -DMY_DEBUG -DLINUX_SPI_BCM -DLINUX_ARCH_RASPBERRYPI  -Ofast -g -Wall -Wextra  -I. -I./core -I./drivers/Linux -I./drivers/RPi -I./drivers/BCM -c drivers/Linux/log.c -o build/drivers/Linux/log.o
            cc1: error: bad value (cortex-a7) for -mtune switch
            Makefile:118: recipe for target 'build/drivers/Linux/log.o' failed
            make: *** [build/drivers/Linux/log.o] Error 1
            
            

            But errors... :anguished:
            I tried to search on forum, and saw someone else meniotning a smilar error, but people were answering about OrangePI, whereas I use a Rasp PI 2.
            I probably misunderstood some steps.. Could someone help me ?

            Note: in instructions, there's a statement I don't understand for ethernet gateway: "To set the gateway as a client that connects to a controller, use:--my-gateway=ethernet --my-controller-url-address=YOUR-CONTROLLER-ADDRES" . IN which case do we need that ? (as said, I plan to simply use this gateway on My dodmoticz rasp PI).

            br,
            Ricorico94

            1 Reply Last reply
            0
            • gohanG Offline
              gohanG Offline
              gohan
              Mod
              wrote on last edited by
              #647

              @ricorico94 said in 💬 Building a Raspberry Pi Gateway:

              ./configure --my-transport=nrf24 --my-rf24-irq-pin=15

              That is fine, no need to add extra parameters as by defaults it will configure as ethernet gateway. Also try using the development branch as it has lots of bugs fixed.

              1 Reply Last reply
              0
              • A Offline
                A Offline
                arraWX
                wrote on last edited by
                #648

                @ricorico94 Yesterday I managed to make a working rpi gateway. I am on rpi3, use a socket adapter board for the radio and use domoticz. I posted all the details here: https://forum.mysensors.org/topic/7793/nrf24l01-problems-in-2-1-1-and-2-2-0-beta/24

                1 Reply Last reply
                0
                • R Offline
                  R Offline
                  ricorico94
                  wrote on last edited by ricorico94
                  #649

                  Hi,
                  @arraWX : I looked at your post. Unfortunately, the error I face is before the start, as it's during the make, so it appears I follow the first steps you describe (config & make), but I still don't know how to solve the make errors.

                  In case it can help understanding what's going on or what to do, I ran the command:

                  gcc -v 
                  

                  which displayed: gcc version 4.6.3 (Debian 4.6.3-14+rpi1)
                  Could it be an issue this "+rpi1" whreas I've a PI 2 ?

                  1 Reply Last reply
                  0
                  • A Offline
                    A Offline
                    arraWX
                    wrote on last edited by
                    #650

                    Do not know if it is of any help, but mine says: gcc version 4.9.2 (Raspbian 4.9.2-10)

                    1 Reply Last reply
                    0
                    • R Offline
                      R Offline
                      ricorico94
                      wrote on last edited by
                      #651

                      Hi,
                      I tried to update gcc, just in case.. though I'm not sure of what I do.:confused:
                      I ran:

                      pi@raspberrypi ~/MySensors $ sudo apt-get upgrade gcc
                      

                      and after a little while, it ended without obvious mistake.
                      but if I do gcc -v again, I still get
                      gcc version 4.6.3 (Debian 4.6.3-14+rpi1)
                      (even after reboot)
                      Is there another step to be done, or am I using wrong command ?

                      1 Reply Last reply
                      0
                      • gohanG Offline
                        gohanG Offline
                        gohan
                        Mod
                        wrote on last edited by
                        #652

                        try running first sudo apt-get update and then sudo apt-get upgrade , it should update all packages

                        1 Reply Last reply
                        0
                        • R Offline
                          R Offline
                          ricorico94
                          wrote on last edited by
                          #653

                          @gohan : JUst tried it, but same result.. no change on version number.
                          is there something like apt-get install to be done also ?

                          M 1 Reply Last reply
                          0
                          • gohanG Offline
                            gohanG Offline
                            gohan
                            Mod
                            wrote on last edited by
                            #654

                            I don't know really... I am using dietpi on a RPI3 and there is a convenient tool that you can check what to install and installs for you and among the others I have chosen the "Build-Essentials" that contains all the common packages for compile, so I don't know what packages are included.

                            1 Reply Last reply
                            0
                            • R ricorico94

                              @gohan : JUst tried it, but same result.. no change on version number.
                              is there something like apt-get install to be done also ?

                              M Offline
                              M Offline
                              marceloaqno
                              Code Contributor
                              wrote on last edited by
                              #655

                              @ricorico94 Do you see gcc-4.9 in the list returned by the command below?

                              sudo apt-cache search gcc
                              

                              If it's listed, try installing it by specifying the version:

                              sudo apt-get install gcc-4.9
                              
                              1 Reply Last reply
                              1
                              • R Offline
                                R Offline
                                ricmail85
                                wrote on last edited by
                                #656

                                Hi, wouldn't be proper to include in the guide also the command "--my-rfm69-irq-pin=22" during the configure procedure in order to improve the throughput for the rfm69 radios?

                                1 Reply Last reply
                                0
                                • R Offline
                                  R Offline
                                  ricorico94
                                  wrote on last edited by
                                  #657

                                  Hi,
                                  Thanks to @marceloaqno and @Gohan and @arraWX , I could progress somewhow.. but still not working.

                                  When listing the versions as per Marceloagno advice, I could see gcc-4.6 and -4.7 and 4.8 but nothing else (no 4.9).
                                  I then decided to take the risk of installing the 4.8.. The commands from Marcelagno did not work (well, I mean gcc - v was still showing 4.6).
                                  Then I followed this tutorial on upgrade step by step to upgrade to gcc-4.8 and then the make command apparently succeeded (well, plenty messages, some warnings.. but no error apparently, as ar as I could see. I dd not find the folders desribed in website, but the commands were still ok.. weird, but I'm too rookie..)

                                  I then followed again the Mysensors tutorial with
                                  sudo ./bin/mysgw -h
                                  sudo ./bin/mysgw -d (and no error message. great!)
                                  sudo make install
                                  but then I ran
                                  sudo systemctl enable mysgw.service
                                  and I got error message

                                  sudo: systemctl: command not found
                                  

                                  After some search, I saw that it's a Jessie command whereas I discovered that my good old version of Rasp Pi, which was built from the standard Domoticz image in 2015 is still Wheezy

                                  pi@raspberrypi ~/MySensors $ cat /etc/os-release
                                  PRETTY_NAME="Raspbian GNU/Linux 7 (wheezy)"
                                  NAME="Raspbian GNU/Linux"
                                  VERSION_ID="7"
                                  VERSION="7 (wheezy)"
                                  ID=raspbian
                                  ID_LIKE=debian
                                  ANSI_COLOR="1;31"
                                  HOME_URL="http://www.raspbian.org/"
                                  SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
                                  BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"
                                  

                                  Any idea of what I should do now?..
                                  another commande equivalent to the systemctl ?
                                  an upgrade to Jessie (any risk ? and how to do it safely ?)

                                  br,
                                  Ricorico94

                                  1 Reply Last reply
                                  0
                                  • petewillP Offline
                                    petewillP Offline
                                    petewill
                                    Admin
                                    wrote on last edited by
                                    #658

                                    I am new to Linux and hopefully have an easy question...
                                    I have followed the build instructions and everything seems to be working well so far. One issue I'm having is getting node-red to see the usb port (/dev/ttyUSB020). I did some searching online and found that if I run the following command node-red will see the port and things start working.

                                    sudo chmod 666 /dev/ttyUSB020
                                    

                                    The problem is that each time I reboot the Pi the command needs to be run again. Does anyone have any ideas on how I can resolve this so I don't need to run the command each time the system is booted? Thanks in advance.

                                    My "How To" home automation video channel: https://www.youtube.com/channel/UCq_Evyh5PQALx4m4CQuxqkA

                                    mfalkviddM gohanG 2 Replies Last reply
                                    0
                                    • petewillP petewill

                                      I am new to Linux and hopefully have an easy question...
                                      I have followed the build instructions and everything seems to be working well so far. One issue I'm having is getting node-red to see the usb port (/dev/ttyUSB020). I did some searching online and found that if I run the following command node-red will see the port and things start working.

                                      sudo chmod 666 /dev/ttyUSB020
                                      

                                      The problem is that each time I reboot the Pi the command needs to be run again. Does anyone have any ideas on how I can resolve this so I don't need to run the command each time the system is booted? Thanks in advance.

                                      mfalkviddM Offline
                                      mfalkviddM Offline
                                      mfalkvidd
                                      Mod
                                      wrote on last edited by mfalkvidd
                                      #659

                                      @petewill you can put the chmod command in /etc/rc.local
                                      That will execute it on every boot.
                                      https://www.raspberrypi.org/documentation/linux/usage/rc-local.md

                                      1 Reply Last reply
                                      0
                                      • petewillP petewill

                                        I am new to Linux and hopefully have an easy question...
                                        I have followed the build instructions and everything seems to be working well so far. One issue I'm having is getting node-red to see the usb port (/dev/ttyUSB020). I did some searching online and found that if I run the following command node-red will see the port and things start working.

                                        sudo chmod 666 /dev/ttyUSB020
                                        

                                        The problem is that each time I reboot the Pi the command needs to be run again. Does anyone have any ideas on how I can resolve this so I don't need to run the command each time the system is booted? Thanks in advance.

                                        gohanG Offline
                                        gohanG Offline
                                        gohan
                                        Mod
                                        wrote on last edited by
                                        #660

                                        @petewill or you can compile the gateway as ethernet or mqtt that are both supported by node-red, making life a little easier

                                        petewillP 1 Reply Last reply
                                        1
                                        • petewillP Offline
                                          petewillP Offline
                                          petewill
                                          Admin
                                          wrote on last edited by
                                          #661

                                          @mfalkvidd Thanks. I thought about doing something like that but I wasn't sure that was the best process or if something should be modified during the install. I'll give it a shot this way though. Thanks again.

                                          My "How To" home automation video channel: https://www.youtube.com/channel/UCq_Evyh5PQALx4m4CQuxqkA

                                          1 Reply 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.0k

                                          Posts


                                          Copyright 2019 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
                                          • OpenHardware.io
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular