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 428.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.
  • skywatchS Offline
    skywatchS Offline
    skywatch
    wrote on last edited by
    #682

    I tried for months to get a stable working nrf24 attached to pi to act as a gw and controller.

    In the end I gave up and now have a 3.3V 8MHz pro mini gw attached to the pi. I took 0v and 5v from the pi (via a 3.3v buck converter) and serial tx and rx. Only 4 wires needed and has been as stable as can be for over a week now.

    Maybe help someone with the same unsolveable problems?

    1 Reply Last reply
    0
    • A aglock

      Hello all!

      I'm trying to build a gateway with a Raspberry pi2, ethernet and Domoticz.
      It looks like the gateway is beeing built ok and seems to run fine but nodes can not communicate with it.
      I have read most of the postings here but I can not find any solution.
      Hope you guys can help? Please!

      I run raspbian (Jessie)
      pi@raspberrypi:~/MySensors/bin $ uname -a
      Linux raspberrypi 4.9.35-v7+ #1014 SMP Fri Jun 30 14:47:43 BST 2017 armv7l GNU/Linux
      

      Using master branch

      https://www.mysensors.org/build/raspberry
      git clone https://github.com/mysensors/MySensors.git --branch master
      

      Configuring like this

      pi@raspberrypi:~/MySensors $ ./configure --my-gateway=ethernet --my-port=5003 --my-transport=nrf24 --my-rf24-ce-pin=22 --my-rf24-cs-pin=24
      [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.
      

      Obs! No Raspberry identification, why not? Maybe that is the culprit?
      After make I start the gateway and get this:

      pi@raspberrypi:~/MySensors $ cd bin
      pi@raspberrypi:~/MySensors/bin $ sudo ./mysgw -d
      mysgw: Starting gateway...
      mysgw: Protocol version - 2.1.1
      mysgw: MCO:BGN:INIT GW,CP=RNNG---,VER=2.1.1
      mysgw: TSM:INIT
      mysgw: TSF:WUR:MS=0
      mysgw: TSM:INIT:TSP OK
      mysgw: TSM:INIT:GW MODE
      mysgw: TSM:READY:ID=0,PAR=0,DIS=0
      mysgw: MCO:REG:NOT NEEDED
      mysgw: Listening for connections on 0.0.0.0:5003
      mysgw: MCO:BGN:STP
      mysgw: MCO:BGN:INIT OK,TSP=1
      mysgw: New connection from 127.0.0.1
      mysgw: Client 0 connected
      mysgw: Client 0: 0;0;3;0;2;
      mysgw: Client 0: 0;0;3;0;2;Get Version
      mysgw: Client 0: 0;0;3;0;18;PING
      

      Seems nice and dandy and Domoticz connecting fine.
      Trying with this example node:

      #define MY_RADIO_NRF24
      #define MY_RF24_PA_LEVEL RF24_PA_LOW
      #define MY_DEBUG
      #define MY_NODE_ID 42
      //#define MY_DEBUG_VERBOSE_RF24
      #define MY_BAUD_RATE 9600
      
      #include <MySensors.h>
      #include<Arduino.h>
      
      #define OPEN 1
      #define CLOSE 0
      #define CHILD_ID 1
      
      MyMessage msg(CHILD_ID, V_TRIPPED);
      
      uint8_t value = OPEN;
      
      void setup()
      {
        Serial.print("setup()\n");
      }
      
      void presentation()
      {
        sendSketchInfo("Door", "2.1.1");
        present(CHILD_ID, S_DOOR);
        Serial.print("presentation()\n");
      }
      
      void loop()
      {
        value = value == OPEN ? CLOSE : OPEN;
        send(msg.set(value));
        Serial.print("message sent");
        Serial.print(value + "\n");
        sleep(1000);
      }
      

      And recieve this when running:

      --- Miniterm on /dev/ttyUSB0 9600,8,N,1 ---
      --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
      0 MCO:BGN:INIT NODE,CP=RNNNA--,VER=2.1.1
      40 TSM:INIT
      55 TSF:WUR:MS=0
      77 TSM:INIT:TSP OK
      96 TSM:INIT:STATID=42
      120 TSF:SID:OK,ID=42
      141 TSM:FPAR
      190 TSF:MSG:SEND,42-42-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
      2267 !TSM:FPAR:NO REPLY
      2291 TSM:FPAR
      2340 TSF:MSG:SEND,42-42-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
      
      4417 !TSM:FPAR:NO REPLY
      4442 TSM:FPAR
      4491 TSF:MSG:SEND,42-42-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
      6569 !TSM:FPAR:NO REPLY
      6594 TSM:FPAR
      6643 TSF:MSG:SEND,42-42-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
      8720 !TSM:FPAR:FAIL
      8740 TSM:FAIL:CNT=1
      8761 TSM:FAIL:PDT
      

      And no output in gateway either.
      Both radio modules using capacitors.

      What have I missed?

      Thanks, Andreas!

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

      @aglock I put a note on the raspberry gateway page to use latest development in case of problems with stable. Did you try?

      A 2 Replies Last reply
      0
      • gohanG gohan

        @aglock I put a note on the raspberry gateway page to use latest development in case of problems with stable. Did you try?

        A Offline
        A Offline
        aglock
        wrote on last edited by
        #684

        @gohan yes. Interesting though when I used git to switch between branches it said all files where the same?
        Do you think the fault is in the gateway somehow?

        1 Reply Last reply
        0
        • gohanG gohan

          @aglock I put a note on the raspberry gateway page to use latest development in case of problems with stable. Did you try?

          A Offline
          A Offline
          aglock
          wrote on last edited by
          #685

          @gohan Tried it again
          configure now recognizes the rpi:

          pi@raspberrypi:~/mys_dev $ ./configure --my-gateway=ethernet --my-port=5003 --my-transport=nrf24 --my-rf24-ce-pin=22 --my-rf24-cs-pin=24
          [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: systemd.
          [SECTION] Saving configuration.
          [SECTION] Cleaning previous builds.
          [OK] Finished.
          

          But make fails with the following error:

          -I./core -I./drivers/Linux -I./drivers/BCM -c drivers/BCM/bcm2835.c -o build/drivers/BCM/bcm2835.o
          drivers/BCM/bcm2835.c: In function ‘bcm2835_delayMicroseconds’:
          drivers/BCM/bcm2835.c:441:40: error: expected ‘)’ before ‘PRIu64’
             printf("bcm2835_delayMicroseconds %" PRIu64 "\n", micros);
                                                  ^
          drivers/BCM/bcm2835.c:441:40: warning: spurious trailing ‘%’ in format [-Wformat=]
          Makefile:102: recipe for target 'build/drivers/BCM/bcm2835.o' failed
          make: *** [build/drivers/BCM/bcm2835.o] Error 1
          pi@raspberrypi:~/mys_dev $ 
          

          What to do about it?

          mfalkviddM 1 Reply Last reply
          0
          • A aglock

            @gohan Tried it again
            configure now recognizes the rpi:

            pi@raspberrypi:~/mys_dev $ ./configure --my-gateway=ethernet --my-port=5003 --my-transport=nrf24 --my-rf24-ce-pin=22 --my-rf24-cs-pin=24
            [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: systemd.
            [SECTION] Saving configuration.
            [SECTION] Cleaning previous builds.
            [OK] Finished.
            

            But make fails with the following error:

            -I./core -I./drivers/Linux -I./drivers/BCM -c drivers/BCM/bcm2835.c -o build/drivers/BCM/bcm2835.o
            drivers/BCM/bcm2835.c: In function ‘bcm2835_delayMicroseconds’:
            drivers/BCM/bcm2835.c:441:40: error: expected ‘)’ before ‘PRIu64’
               printf("bcm2835_delayMicroseconds %" PRIu64 "\n", micros);
                                                    ^
            drivers/BCM/bcm2835.c:441:40: warning: spurious trailing ‘%’ in format [-Wformat=]
            Makefile:102: recipe for target 'build/drivers/BCM/bcm2835.o' failed
            make: *** [build/drivers/BCM/bcm2835.o] Error 1
            pi@raspberrypi:~/mys_dev $ 
            

            What to do about it?

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

            @aglock see https://forum.mysensors.org/post/79403

            A 1 Reply Last reply
            0
            • mfalkviddM mfalkvidd

              @aglock see https://forum.mysensors.org/post/79403

              A Offline
              A Offline
              aglock
              wrote on last edited by
              #687

              @mfalkvidd Wow, thanks that works! :D

              1 Reply Last reply
              1
              • WoekaW Offline
                WoekaW Offline
                Woeka
                wrote on last edited by
                #688

                Got mysensors gateway working on gpio of my Pi again using ./configure --my-transport=nrf24 --my-rf24-irq-pin=15 --my-leds-err-pin=12 --my-leds-rx-pin=16 --my-leds-tx-pin=18 --my-gateway=ethernet --my-port=5003

                However on tx or tx always the two leds connected to pin 16 and 18 are lit. More people with the same problem?

                S 1 Reply Last reply
                0
                • WoekaW Woeka

                  Got mysensors gateway working on gpio of my Pi again using ./configure --my-transport=nrf24 --my-rf24-irq-pin=15 --my-leds-err-pin=12 --my-leds-rx-pin=16 --my-leds-tx-pin=18 --my-gateway=ethernet --my-port=5003

                  However on tx or tx always the two leds connected to pin 16 and 18 are lit. More people with the same problem?

                  S Offline
                  S Offline
                  sineverba
                  Hardware Contributor
                  wrote on last edited by
                  #689

                  @Woeka There is (on Arduino Gateway) a function named "DEFINE INVERSE BLINK". Try to search for same for PI....

                  1 Reply Last reply
                  0
                  • R Offline
                    R Offline
                    romeo01
                    wrote on last edited by romeo01
                    #690

                    Can we use the "debug ota log" features with the raspberryPi gateway ??

                    My node is not accessible and runs MYSBootloader.
                    My gateway is raspberryPI.

                    Now, I need to update the firmware on my node. Via MYSController, no problems, upload runs like a charm.

                    But how to do for debugging my sketch ? Some bugs appear...... , I need to take a look on some vars values.
                    Usually, I use the serial port with serial.print(some vars).
                    Which alternative I have to use without serial port, only OTA features ?

                    Thanks for the great work !!

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

                      Unless you are using an esp8266, I don't think you can remote debug a pro mini. @sundberg84 is working on a serial logger to microsd card, maybe it could help you in some way

                      1 Reply Last reply
                      0
                      • R Offline
                        R Offline
                        romeo01
                        wrote on last edited by
                        #692

                        In fact, I do not need to log, but need to look what's happen in my sketch.
                        The new "OTALog" function, MY_OTA_LOG_SENDER_FEATURE or MY_DEBUG_OTA seems to be the good way.
                        From the docs, it allows to send a debug message to another node or gateway via OTA.

                        But how to got the debug message from OTA node, on the gateway side (RaspberryPi) ?

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

                          @romeo01 said in 💬 Building a Raspberry Pi Gateway:

                          MY_DEBUG_OTA

                          I'd start reading from here https://www.mysensors.org/apidocs-beta/group__SerialDebugGrpPub.html#ga6bd5956352d3a184a0cb02783b8d35ff

                          R 1 Reply Last reply
                          0
                          • gohanG gohan

                            @romeo01 said in 💬 Building a Raspberry Pi Gateway:

                            MY_DEBUG_OTA

                            I'd start reading from here https://www.mysensors.org/apidocs-beta/group__SerialDebugGrpPub.html#ga6bd5956352d3a184a0cb02783b8d35ff

                            R Offline
                            R Offline
                            romeo01
                            wrote on last edited by
                            #694

                            @gohan said in 💬 Building a Raspberry Pi Gateway:

                            @romeo01 said in 💬 Building a Raspberry Pi Gateway:

                            MY_DEBUG_OTA

                            I'd start reading from here https://www.mysensors.org/apidocs-beta/group__SerialDebugGrpPub.html#ga6bd5956352d3a184a0cb02783b8d35ff

                            Well, you found the starting point !

                            MY_OTA_LOG_SENDER_FEATURE & MY_DEBUG_OTA are enabled on my OTA node.

                            Again the same question: What I have to do on the gateway side ?
                            Is it possible with the raspberry Gateway ?

                            I'm still looking for debugging my sketch in remote. I need to have a look on the debug messages. I reminder, the node is not accessible and runs MYSbootloader.

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

                              If I understood well, you need to set a target node ID that will receive the debug and then make a node with that ID in order to get the debug messages

                              1 Reply Last reply
                              0
                              • R Offline
                                R Offline
                                romeo01
                                wrote on last edited by
                                #696

                                Exactly, but I would like to use the gateway (raspberry) as target.
                                Is that possible ?
                                If yes, how to display the debug message on the gateway.
                                I have an access to my gateway only via SSH.

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

                                  I have no idea if can do it, but you could just have a node connected to USB port of the rpi and do a "cat" on the USB port and you can read the debug from the node

                                  1 Reply Last reply
                                  0
                                  • signal15S Offline
                                    signal15S Offline
                                    signal15
                                    wrote on last edited by
                                    #698

                                    Is it possible to build a gateway that is MQTT, but also listens on port 5003? I want to send my data up to AWS IoT, but I also need port 5003 for Vera integration.

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

                                      You can use node-red to bridge the ethernet gateway and the aws service. Are you sure vera plug in doesn't support mqtt?

                                      1 Reply Last reply
                                      1
                                      • signal15S Offline
                                        signal15S Offline
                                        signal15
                                        wrote on last edited by
                                        #700

                                        @gohan, there are two MQTT plugins for the Vera with varying capabilities. But, the mysensors plugin for Vera doesn't appear to support MQTT at all. I could probably get one of those MQTT plugins working, but I'm not sure how stable they are. I hate installing unstable plugins and having them crash LUUP. I need to maintain a positive WAF (Wife Acceptance Factor), and broken HA doesn't help with that. :)

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

                                          I guess node-red is the best option for you

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


                                          18

                                          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