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 422.9k 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.
  • gohanG Offline
    gohanG Offline
    gohan
    Mod
    wrote on last edited by
    #453

    I suggested ethernet because it's easier to setup and configure, mqtt is the next step.

    1 Reply Last reply
    0
    • P Offline
      P Offline
      pettib
      wrote on last edited by
      #454

      Hi
      I also have problem to get the NRF24L01+ chip to work with the RPi3.

      I find that the masterbranch don't recognize the board as RPi3 and sets SoC and Type as unknown.
      But if i take development branch it´s detecting RPi3 and seems to work correct.

      This is result from development Branch configure:
      [SECTION] Detecting target machine.
      [OK] machine detected: SoC=BCM2837, Type=rpi3, CPU=armv7l.
      [SECTION] Detecting SPI driver.
      [OK] SPI driver detected:BCM.
      [SECTION] Detecting init system.
      [OK] init system detected: systemd.
      [SECTION] Saving configuration.
      [SECTION] Cleaning previous builds.
      [OK] Finished.

      This is result from Master Branch configure:
      [SECTION] Detecting target machine.
      [OK] machine detected: SoC=unknown, Type=unknown, CPU=armv7l.
      [SECTION] Checking GPIO Sysfs.
      [OK] /sys/class/gpio/export found
      [SECTION] Detecting SPI driver.
      [OK] SPI driver detected:SPIDEV.
      [SECTION] Detecting init system.
      [OK] init system detected: systemd.
      [SECTION] Saving configuration.
      [SECTION] Cleaning previous builds.
      [OK] Finished.

      This is the result from cat /proc/cpuinfo:

      Hardware : BCM2835
      Revision : a02082

      //Peter

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

        That's odd, I have the 2.1.1 compiled on mine rpi 3

        M 1 Reply Last reply
        0
        • gohanG gohan

          That's odd, I have the 2.1.1 compiled on mine rpi 3

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

          @pettib @gohan There have been some changes in /proc/cpuinfo in newer versions of kernels which leads to a wrong detection.
          The problem was fix in #827 and will be available in the master branch in the next mysensor release.

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

            I'm using dietpi and I compiled it like 2 weeks ago..

            1 Reply Last reply
            0
            • Richard van der PlasR Richard van der Plas

              How will this work with HASS running on the same pi ?

              Fat FlyF Offline
              Fat FlyF Offline
              Fat Fly
              wrote on last edited by
              #458

              @Richard-van-der-Plas what is this: HASS ?

              1 Reply Last reply
              0
              • Richard van der PlasR Offline
                Richard van der PlasR Offline
                Richard van der Plas
                wrote on last edited by
                #459

                Ok, i am standig on a crossroad it seems, i have to build a new gateway but i am also interested in the MQTT option, this is between mysensors & HomeASSistant i presume? i have some ESP's lying around unused, but i have 0 knowledge of mqtt (i dont think my hass has it running by default)

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

                  Just go with ethernet first that is easier, get used to it then take your time to learn MQTT. Of course MQTT is more advanced has authentication and encryption but it adds complexity to initial setup.

                  1 Reply Last reply
                  0
                  • Richard van der PlasR Offline
                    Richard van der PlasR Offline
                    Richard van der Plas
                    wrote on last edited by
                    #461

                    Damn, just connected as in manual, but gives an error : mysgw: !TSM:INIT:TSP FAIL
                    Double checked the GPIO pins (except 15 cannot find that one) but seems ok

                    1 Reply Last reply
                    0
                    • Richard van der PlasR Offline
                      Richard van der PlasR Offline
                      Richard van der Plas
                      wrote on last edited by
                      #462

                      NM, used GPIO numbers instead of Pin numbers RTFM :)

                      1 Reply Last reply
                      1
                      • ? Offline
                        ? Offline
                        A Former User
                        wrote on last edited by A Former User
                        #463

                        I always have a mysgw: accept: Bad file descriptor error when I launch a new ./bin/mysgw -d Exact problem is the following:

                        mysgw: bind: Address already in use
                        mysgw: Failed to bind!
                        

                        And I always need to kill the process first. Is this normal ? (I'm in LAN GW)

                        Thanks!

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

                          If you already installed mysgw as service to start at boot, it is normal that you can not run another process in debug mode and it conflicts

                          1 Reply Last reply
                          0
                          • ? Offline
                            ? Offline
                            A Former User
                            wrote on last edited by
                            #465

                            @gohan said in 💬 Building a Raspberry Pi Gateway:

                            lready installed mysgw as service to start at boot, it is normal that you can not run another process in debug mode and it conflicts

                            Oh, Ok. Thanks.
                            Another thing is that when i close PuTTY, the gateway doesn't retrieve anymore the data...

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

                              You need to install it as service so it always runs in background

                              1 Reply Last reply
                              0
                              • ? Offline
                                ? Offline
                                A Former User
                                wrote on last edited by
                                #467

                                Is it this process :

                                1421 ?        Rs    40:25 /usr/local/bin/mysgw
                                

                                Seems it runs for 40 minutes, but no the gateway sees no data...

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

                                  what gateway did you compile? What option in ./configure did you use?

                                  1 Reply Last reply
                                  0
                                  • ? Offline
                                    ? Offline
                                    A Former User
                                    wrote on last edited by A Former User
                                    #469

                                    First of all : thanks for helping !

                                    I compiled an Ethernet gateway
                                    The options are the following:

                                    ./configure --my-gateway=ethernet --my-port=5003 --my-rf24-irq-pin=15 --my-transport=nrf24
                                    

                                    The only way I make the GW working is through the debug mode (by switching off the service process)

                                    1 Reply Last reply
                                    0
                                    • ? Offline
                                      ? Offline
                                      A Former User
                                      wrote on last edited by
                                      #470

                                      Hello, it seems I found the problem: Complete newbie thing: :beginner:
                                      sudo ./bin/mysgw -h worked, but /usr/local/bin/mysgw didn't
                                      I just gave the right to the folder, and now it's working.
                                      Thanks for taking time to help beginners !

                                      cadetC 1 Reply Last reply
                                      1
                                      • S Offline
                                        S Offline
                                        sillicius
                                        wrote on last edited by
                                        #471

                                        @Richard van der Plas : i was have the same error with my raspberry zero. I have succed with the devellopement branch version...

                                        1 Reply Last reply
                                        0
                                        • G Offline
                                          G Offline
                                          gdekeijzer
                                          wrote on last edited by
                                          #472

                                          Trying to setup a Rpi1, as i got one lying around here.

                                          All work untill i want to 'make'

                                          Generates an error:

                                          pi@mysgw:~/MySensors $ ./configure --my-gateway=ethernet --my-port=5003 --my-transport=nrf24 --my-rf24-irq-pin=15
                                          [SECTION] Detecting target machine.
                                            [OK] machine detected: SoC=BCM2835, Type=rpi1, CPU=armv6l.
                                          [SECTION] Detecting SPI driver.
                                            [OK] SPI driver detected:BCM.
                                          [SECTION] Detecting init system.
                                            [OK] init system detected: systemd.
                                          [SECTION] Saving configuration.
                                          [SECTION] Cleaning previous builds.
                                          [OK] Finished.
                                          pi@mysgw:~/MySensors $ make
                                          gcc -MT build/drivers/Linux/log.o -MMD -MP -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -DMY_RADIO_NRF24 -DMY_GATEWAY_LINUX -DMY_DEBUG -DLINUX_SPI_BCM -DLINUX_ARCH_RASPBERRYPI -DRPI_TYPE=\"rpi1\" -DMY_RX_MESSAGE_BUFFER_FEATURE -DMY_RF24_IRQ_PIN=15 -DMY_PORT=5003  -Ofast -g -Wall -Wextra  -I. -I./core -I./drivers/Linux -I./drivers/BCM -c drivers/Linux/log.c -o build/drivers/Linux/log.o
                                          g++ -MT build/drivers/Linux/noniso.o -MMD -MP -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -DMY_RADIO_NRF24 -DMY_GATEWAY_LINUX -DMY_DEBUG -DLINUX_SPI_BCM -DLINUX_ARCH_RASPBERRYPI -DRPI_TYPE=\"rpi1\" -DMY_RX_MESSAGE_BUFFER_FEATURE -DMY_RF24_IRQ_PIN=15 -DMY_PORT=5003  -Ofast -g -Wall -Wextra  -I. -I./core -I./drivers/Linux -I./drivers/BCM -c drivers/Linux/noniso.cpp -o build/drivers/Linux/noniso.o
                                          g++ -MT build/drivers/Linux/GPIO.o -MMD -MP -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -DMY_RADIO_NRF24 -DMY_GATEWAY_LINUX -DMY_DEBUG -DLINUX_SPI_BCM -DLINUX_ARCH_RASPBERRYPI -DRPI_TYPE=\"rpi1\" -DMY_RX_MESSAGE_BUFFER_FEATURE -DMY_RF24_IRQ_PIN=15 -DMY_PORT=5003  -Ofast -g -Wall -Wextra  -I. -I./core -I./drivers/Linux -I./drivers/BCM -c drivers/Linux/GPIO.cpp -o build/drivers/Linux/GPIO.o
                                          g++ -MT build/drivers/Linux/SPIDEV.o -MMD -MP -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -DMY_RADIO_NRF24 -DMY_GATEWAY_LINUX -DMY_DEBUG -DLINUX_SPI_BCM -DLINUX_ARCH_RASPBERRYPI -DRPI_TYPE=\"rpi1\" -DMY_RX_MESSAGE_BUFFER_FEATURE -DMY_RF24_IRQ_PIN=15 -DMY_PORT=5003  -Ofast -g -Wall -Wextra  -I. -I./core -I./drivers/Linux -I./drivers/BCM -c drivers/Linux/SPIDEV.cpp -o build/drivers/Linux/SPIDEV.o
                                          g++ -MT build/drivers/Linux/Print.o -MMD -MP -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -DMY_RADIO_NRF24 -DMY_GATEWAY_LINUX -DMY_DEBUG -DLINUX_SPI_BCM -DLINUX_ARCH_RASPBERRYPI -DRPI_TYPE=\"rpi1\" -DMY_RX_MESSAGE_BUFFER_FEATURE -DMY_RF24_IRQ_PIN=15 -DMY_PORT=5003  -Ofast -g -Wall -Wextra  -I. -I./core -I./drivers/Linux -I./drivers/BCM -c drivers/Linux/Print.cpp -o build/drivers/Linux/Print.o
                                          g++ -MT build/drivers/Linux/EthernetClient.o -MMD -MP -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -DMY_RADIO_NRF24 -DMY_GATEWAY_LINUX -DMY_DEBUG -DLINUX_SPI_BCM -DLINUX_ARCH_RASPBERRYPI -DRPI_TYPE=\"rpi1\" -DMY_RX_MESSAGE_BUFFER_FEATURE -DMY_RF24_IRQ_PIN=15 -DMY_PORT=5003  -Ofast -g -Wall -Wextra  -I. -I./core -I./drivers/Linux -I./drivers/BCM -c drivers/Linux/EthernetClient.cpp -o build/drivers/Linux/EthernetClient.o
                                          g++ -MT build/drivers/Linux/compatibility.o -MMD -MP -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -DMY_RADIO_NRF24 -DMY_GATEWAY_LINUX -DMY_DEBUG -DLINUX_SPI_BCM -DLINUX_ARCH_RASPBERRYPI -DRPI_TYPE=\"rpi1\" -DMY_RX_MESSAGE_BUFFER_FEATURE -DMY_RF24_IRQ_PIN=15 -DMY_PORT=5003  -Ofast -g -Wall -Wextra  -I. -I./core -I./drivers/Linux -I./drivers/BCM -c drivers/Linux/compatibility.cpp -o build/drivers/Linux/compatibility.o
                                          g++ -MT build/drivers/Linux/SerialPort.o -MMD -MP -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -DMY_RADIO_NRF24 -DMY_GATEWAY_LINUX -DMY_DEBUG -DLINUX_SPI_BCM -DLINUX_ARCH_RASPBERRYPI -DRPI_TYPE=\"rpi1\" -DMY_RX_MESSAGE_BUFFER_FEATURE -DMY_RF24_IRQ_PIN=15 -DMY_PORT=5003  -Ofast -g -Wall -Wextra  -I. -I./core -I./drivers/Linux -I./drivers/BCM -c drivers/Linux/SerialPort.cpp -o build/drivers/Linux/SerialPort.o
                                          g++ -MT build/drivers/Linux/Stream.o -MMD -MP -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -DMY_RADIO_NRF24 -DMY_GATEWAY_LINUX -DMY_DEBUG -DLINUX_SPI_BCM -DLINUX_ARCH_RASPBERRYPI -DRPI_TYPE=\"rpi1\" -DMY_RX_MESSAGE_BUFFER_FEATURE -DMY_RF24_IRQ_PIN=15 -DMY_PORT=5003  -Ofast -g -Wall -Wextra  -I. -I./core -I./drivers/Linux -I./drivers/BCM -c drivers/Linux/Stream.cpp -o build/drivers/Linux/Stream.o
                                          g++ -MT build/drivers/Linux/IPAddress.o -MMD -MP -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -DMY_RADIO_NRF24 -DMY_GATEWAY_LINUX -DMY_DEBUG -DLINUX_SPI_BCM -DLINUX_ARCH_RASPBERRYPI -DRPI_TYPE=\"rpi1\" -DMY_RX_MESSAGE_BUFFER_FEATURE -DMY_RF24_IRQ_PIN=15 -DMY_PORT=5003  -Ofast -g -Wall -Wextra  -I. -I./core -I./drivers/Linux -I./drivers/BCM -c drivers/Linux/IPAddress.cpp -o build/drivers/Linux/IPAddress.o
                                          g++ -MT build/drivers/Linux/interrupt.o -MMD -MP -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -DMY_RADIO_NRF24 -DMY_GATEWAY_LINUX -DMY_DEBUG -DLINUX_SPI_BCM -DLINUX_ARCH_RASPBERRYPI -DRPI_TYPE=\"rpi1\" -DMY_RX_MESSAGE_BUFFER_FEATURE -DMY_RF24_IRQ_PIN=15 -DMY_PORT=5003  -Ofast -g -Wall -Wextra  -I. -I./core -I./drivers/Linux -I./drivers/BCM -c drivers/Linux/interrupt.cpp -o build/drivers/Linux/interrupt.o
                                          g++ -MT build/drivers/Linux/SerialSimulator.o -MMD -MP -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -DMY_RADIO_NRF24 -DMY_GATEWAY_LINUX -DMY_DEBUG -DLINUX_SPI_BCM -DLINUX_ARCH_RASPBERRYPI -DRPI_TYPE=\"rpi1\" -DMY_RX_MESSAGE_BUFFER_FEATURE -DMY_RF24_IRQ_PIN=15 -DMY_PORT=5003  -Ofast -g -Wall -Wextra  -I. -I./core -I./drivers/Linux -I./drivers/BCM -c drivers/Linux/SerialSimulator.cpp -o build/drivers/Linux/SerialSimulator.o
                                          g++ -MT build/drivers/Linux/SoftEeprom.o -MMD -MP -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -DMY_RADIO_NRF24 -DMY_GATEWAY_LINUX -DMY_DEBUG -DLINUX_SPI_BCM -DLINUX_ARCH_RASPBERRYPI -DRPI_TYPE=\"rpi1\" -DMY_RX_MESSAGE_BUFFER_FEATURE -DMY_RF24_IRQ_PIN=15 -DMY_PORT=5003  -Ofast -g -Wall -Wextra  -I. -I./core -I./drivers/Linux -I./drivers/BCM -c drivers/Linux/SoftEeprom.cpp -o build/drivers/Linux/SoftEeprom.o
                                          g++ -MT build/drivers/Linux/EthernetServer.o -MMD -MP -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -DMY_RADIO_NRF24 -DMY_GATEWAY_LINUX -DMY_DEBUG -DLINUX_SPI_BCM -DLINUX_ARCH_RASPBERRYPI -DRPI_TYPE=\"rpi1\" -DMY_RX_MESSAGE_BUFFER_FEATURE -DMY_RF24_IRQ_PIN=15 -DMY_PORT=5003  -Ofast -g -Wall -Wextra  -I. -I./core -I./drivers/Linux -I./drivers/BCM -c drivers/Linux/EthernetServer.cpp -o build/drivers/Linux/EthernetServer.o
                                          g++ -MT build/examples_linux/mysgw.o -MMD -MP -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -DMY_RADIO_NRF24 -DMY_GATEWAY_LINUX -DMY_DEBUG -DLINUX_SPI_BCM -DLINUX_ARCH_RASPBERRYPI -DRPI_TYPE=\"rpi1\" -DMY_RX_MESSAGE_BUFFER_FEATURE -DMY_RF24_IRQ_PIN=15 -DMY_PORT=5003  -Ofast -g -Wall -Wextra  -I. -I./core -I./drivers/Linux -I./drivers/BCM -c examples_linux/mysgw.cpp -o build/examples_linux/mysgw.o
                                          In file included from ./MySensors.h:109:0,
                                                           from examples_linux/mysgw.cpp:83:
                                          ./hal/architecture/MyHwLinuxGeneric.cpp: In function ‘ssize_t hwGetentropy(void*, size_t)’:
                                          ./hal/architecture/MyHwLinuxGeneric.cpp:79:17: error: ‘SYS_getrandom’ was not declared in this scope
                                            return syscall(SYS_getrandom, __buffer, __length, GRND_NONBLOCK);
                                                           ^
                                          ./hal/architecture/MyHwLinuxGeneric.cpp:79:52: error: ‘GRND_NONBLOCK’ was not declared in this scope
                                            return syscall(SYS_getrandom, __buffer, __length, GRND_NONBLOCK);
                                                                                              ^
                                          ./hal/architecture/MyHwLinuxGeneric.cpp:80: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
                                          pi@mysgw:~/MySensors $
                                          

                                          Has this to do with a limitation of Rpi being v1?

                                          Regards

                                          Gerwin

                                          M 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          8

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