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.
  • MasMatM Offline
    MasMatM Offline
    MasMat
    wrote on last edited by MasMat
    #829

    I need help with my Rpi mqtt-gw.
    I tried to get dev-branch working but changed now to stable. All the install routines run without problems. The service just doesn't seem to work and I can't figure out why.

    1. Rpi W, Raspbian wheezy, nRF24-PA, MQTT-gw, Mosquitto and Openhab2 on same board
      Mosquitto-log:
    1521010232: New connection from 127.0.0.1 on port 1883.
    1521010232: New client connected from 127.0.0.1 as mygateway1 (c1, k15, u'xxxx').
    1521010232: Socket error on client mygateway1, disconnecting.
    

    syslog:

    Mar 14 08:51:02 GwMqOH2 systemd[1]: Starting MySensors Gateway daemon...
    Mar 14 08:51:02 GwMqOH2 systemd[1]: Started MySensors Gateway daemon.
    Mar 14 08:51:03 GwMqOH2 mysgw: Starting gateway...
    Mar 14 08:51:03 GwMqOH2 mysgw: Protocol version - 2.2.0
    Mar 14 08:51:03 GwMqOH2 mysgw: MCO:BGN:INIT GW,CP=RNNGLSQX,VER=2.2.0
    Mar 14 08:51:03 GwMqOH2 mysgw: TSF:LRT:OK
    Mar 14 08:51:03 GwMqOH2 mysgw: TSM:INIT
    Mar 14 08:51:03 GwMqOH2 mysgw: TSF:WUR:MS=0
    Mar 14 08:51:03 GwMqOH2 mysgw: TSM:INIT:TSP OK
    Mar 14 08:51:03 GwMqOH2 mysgw: TSM:INIT:GW MODE
    Mar 14 08:51:03 GwMqOH2 mysgw: TSM:READY:ID=0,PAR=0,DIS=0
    Mar 14 08:51:03 GwMqOH2 mysgw: MCO:REG:NOT NEEDED
    Mar 14 08:51:03 GwMqOH2 mysgw: MCO:BGN:STP
    Mar 14 08:51:03 GwMqOH2 mysgw: MCO:BGN:INIT OK,TSP=1
    Mar 14 08:51:03 GwMqOH2 mysgw: GWT:RMQ:MQTT RECONNECT
    Mar 14 08:51:03 GwMqOH2 mysgw: connected to 127.0.0.1
    Mar 14 08:51:03 GwMqOH2 mysgw: GWT:RMQ:MQTT CONNECTED
    Mar 14 08:51:03 GwMqOH2 mysgw: GWT:TPS:TOPIC=mysensors-out/0/255/0/0/18,MSG SENT
    Mar 14 08:51:03 GwMqOH2 systemd[1]: mysgw.service: main process exited, code=killed, status=11/SEGV
    Mar 14 08:51:03 GwMqOH2 systemd[1]: Unit mysgw.service entered failed state```
    
    
    
    GW configure-line:
    

    ./configure --my-transport=nrf24 --my-gateway=mqtt --my-controller-ip-address=127.0.0.1 --my-mqtt-publish-topic-prefix=mysensors-out --my-mqtt-subscribe-topic-prefix=mysensors-in --my-mqtt-client-id=mygateway1 --my-rf24-irq-pin=15 --my-leds-err-pin=12 --my-leds-rx-pin=16 --my-leds-tx-pin=18 --my-mqtt-user=xxxx --my-mqtt-password=yyyyy --my-signing=password --my-signing-password=zzzzzz```

    I have checked mosquitto has correct user-pw combination, but what should I check next? Help!

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

      @masmat said in 💬 Building a Raspberry Pi Gateway:

      --my-mqtt-client-id=mygateway1

      Do you have another client named mygateway1 connecting to mqtt? Try changing it to a different name just to play safe

      MasMatM 1 Reply Last reply
      0
      • gohanG gohan

        @masmat said in 💬 Building a Raspberry Pi Gateway:

        --my-mqtt-client-id=mygateway1

        Do you have another client named mygateway1 connecting to mqtt? Try changing it to a different name just to play safe

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

        @gohan Can I just edit mysgw.cpp and do "daemon-reload"?
        I have just this one gw. And openHab2 but that has a different id.

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

          No, you need to recompile it again in case you make that change. Have you ever tried dietpi for RPI?

          MasMatM 1 Reply Last reply
          0
          • gohanG gohan

            No, you need to recompile it again in case you make that change. Have you ever tried dietpi for RPI?

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

            @gohan OK. I did that, the same socket error remains in Mosquitto just under new id.
            Is my syntax correct or am I somehow having problems with mosquitto user-pw...?

            Haven't tried DietPi. Would Mys+Mosquitto+Openhab2 have trouble running on it? Or why should I change to it?

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

              have you tried connecting with another mqtt client like mqttfx to see if everything is working?

              1 Reply Last reply
              0
              • MasMatM MasMat

                @gohan OK. I did that, the same socket error remains in Mosquitto just under new id.
                Is my syntax correct or am I somehow having problems with mosquitto user-pw...?

                Haven't tried DietPi. Would Mys+Mosquitto+Openhab2 have trouble running on it? Or why should I change to it?

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

                @masmat What is the mqtt broker / version you are using?

                MasMatM 1 Reply Last reply
                0
                • ? A Former User

                  Can someone tell me how to apply this patch?

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

                  @gieljnssns One way is to replace the changed files, in this case EthernetServer.cpp for the first patch and EthernetClient.cpp for the second patch.

                  You can download from:
                  https://raw.githubusercontent.com/marceloaqno/MySensors/linux-fix-stability/drivers/Linux/EthernetServer.cpp
                  https://raw.githubusercontent.com/marceloaqno/MySensors/linux-fix-stability/drivers/Linux/EthernetClient.cpp

                  Here is a step-by-step:

                  git clone https://github.com/mysensors/MySensors.git
                  cd MySensors
                  curl https://raw.githubusercontent.com/marceloaqno/MySensors/linux-fix-stability/drivers/Linux/EthernetServer.cpp -o drivers/Linux/EthernetServer.cpp
                  curl https://raw.githubusercontent.com/marceloaqno/MySensors/linux-fix-stability/drivers/Linux/EthernetClient.cpp -o drivers/Linux/EthernetClient.cpp
                  

                  from here just run ./configure with your options and then make

                  1 Reply Last reply
                  0
                  • M marceloaqno

                    @masmat What is the mqtt broker / version you are using?

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

                    @marceloaqno Mosquitto v1.4.14.
                    The broker is working, at least sending & receiving command line (_sub & _pub) messages.

                    1 Reply Last reply
                    0
                    • gohanG gohan

                      I'm using dietpi and I am not having big issues even running 2 gateway instances with 2 different radios

                      ? Offline
                      ? Offline
                      A Former User
                      wrote on last edited by
                      #838

                      @gohan

                      Can you provide some installation instructions for dietpi?
                      I will try this...

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

                        just download the image and do the same as a Raspian image. I haven't tried mqtt gateway yet, so I don't know if it may be a gateway bug or else.

                        MasMatM 1 Reply Last reply
                        0
                        • O Offline
                          O Offline
                          otto001
                          wrote on last edited by otto001
                          #840

                          @marceloaqno :
                          Hi, unfortunately the latest patch did not work for me.
                          Still the gw stops receiving, but without high cpu usage :-(
                          Fortunately I can restart the gw now using a button and this udp-scripts :-)

                          Of cource I could give dietpi a try, but I would think, that a general solution would be better (for other users as well)

                          cheers,
                          Otto

                          1 Reply Last reply
                          0
                          • gohanG gohan

                            just download the image and do the same as a Raspian image. I haven't tried mqtt gateway yet, so I don't know if it may be a gateway bug or else.

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

                            @gohan I had another sd card and tried a ready image of DietPi with Mosquitto pre-installed.
                            I tried it without user/password and mosquitto accepting anonymous but:

                            /var/log/mosquitto/mosquitto.log:
                            1521141160: Socket error on client <unknown>, disconnecting.
                            1521141160: New connection from 127.0.0.1 on port 1883.
                            ..keeps repeating...

                            ...and sudo ./bin/mysgw -d:

                            mysgw: Starting gateway...
                            mysgw: Protocol version - 2.2.0
                            mysgw: MCO:BGN:INIT GW,CP=RNNGLSQX,VER=2.2.0
                            mysgw: TSF:LRT:OK
                            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: MCO:BGN:STP
                            mysgw: MCO:BGN:INIT OK,TSP=1
                            mysgw: GWT:RMQ:MQTT RECONNECT
                            mysgw: connected to 127.0.0.1
                            mysgw: GWT:RMQ:MQTT RECONNECT
                            mysgw: connected to 127.0.0.1
                            mysgw: GWT:RMQ:MQTT RECONNECT```
                            gohanG 1 Reply Last reply
                            0
                            • M Offline
                              M Offline
                              mvader
                              wrote on last edited by
                              #842

                              1st patch is still working good for me. have had no issues since applying it.

                              question. is it normal/correct for the gateway to ping or spam? every 10 seconds i see the gateway announce it's version.
                              its not doing the full restart or anything.. just giving the 2.2.0 every 10 seconds.

                              1 Reply Last reply
                              0
                              • MasMatM MasMat

                                @gohan I had another sd card and tried a ready image of DietPi with Mosquitto pre-installed.
                                I tried it without user/password and mosquitto accepting anonymous but:

                                /var/log/mosquitto/mosquitto.log:
                                1521141160: Socket error on client <unknown>, disconnecting.
                                1521141160: New connection from 127.0.0.1 on port 1883.
                                ..keeps repeating...

                                ...and sudo ./bin/mysgw -d:

                                mysgw: Starting gateway...
                                mysgw: Protocol version - 2.2.0
                                mysgw: MCO:BGN:INIT GW,CP=RNNGLSQX,VER=2.2.0
                                mysgw: TSF:LRT:OK
                                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: MCO:BGN:STP
                                mysgw: MCO:BGN:INIT OK,TSP=1
                                mysgw: GWT:RMQ:MQTT RECONNECT
                                mysgw: connected to 127.0.0.1
                                mysgw: GWT:RMQ:MQTT RECONNECT
                                mysgw: connected to 127.0.0.1
                                mysgw: GWT:RMQ:MQTT RECONNECT```
                                gohanG Offline
                                gohanG Offline
                                gohan
                                Mod
                                wrote on last edited by
                                #843

                                @masmat have you tried with ethernet gateway? If I have time I'll try the mqtt this weekend

                                @mvader I never noticed that.... is it the mqtt GW?

                                MasMatM M 2 Replies Last reply
                                0
                                • gohanG gohan

                                  @masmat have you tried with ethernet gateway? If I have time I'll try the mqtt this weekend

                                  @mvader I never noticed that.... is it the mqtt GW?

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

                                  @gohan How would I interface the rest of my HA without MQTT...that's at the center of my plan really :(

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

                                    I think OH should support it, but I was just asking to make a test.

                                    MasMatM 1 Reply Last reply
                                    0
                                    • gohanG gohan

                                      I think OH should support it, but I was just asking to make a test.

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

                                      @gohan I configured:
                                      ./configure --my-transport=nrf24 --my-gateway=ethernet --my-controller-ip-address=127.0.0.1 --my-rf24-irq-pin=15 --my-leds-err-pin=12 --my-leds-rx-pin=16 --my-leds-tx-pin=18 --my-signing=password --my-signing-password=ZZZZZZ

                                      ./bin/mysgw -d:

                                      mysgw: Starting gateway...
                                      mysgw: Protocol version - 2.2.0
                                      mysgw: MCO:BGN:INIT GW,CP=RNNGLSQX,VER=2.2.0
                                      mysgw: TSF:LRT:OK
                                      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: connect: Connection refused
                                      mysgw: failed to connect
                                      mysgw: GWT:TIN:ETH OK
                                      mysgw: connect: Connection refused
                                      mysgw: failed to connect
                                      mysgw: GWT:TPS:ETH OK
                                      mysgw: connect: Connection refused
                                      mysgw: failed to connect
                                      mysgw: GWT:TPS:ETH OK
                                      

                                      The controller doesn't exist on the DietPi card yet but I'm not sure if that's causing the problem.

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

                                        @masmat said in 💬 Building a Raspberry Pi Gateway:

                                        --my-controller-ip-address=127.0.0.1

                                        remove that parameter as it is not needed for ethernet

                                        1 Reply Last reply
                                        0
                                        • MasMatM MasMat

                                          @gohan I configured:
                                          ./configure --my-transport=nrf24 --my-gateway=ethernet --my-controller-ip-address=127.0.0.1 --my-rf24-irq-pin=15 --my-leds-err-pin=12 --my-leds-rx-pin=16 --my-leds-tx-pin=18 --my-signing=password --my-signing-password=ZZZZZZ

                                          ./bin/mysgw -d:

                                          mysgw: Starting gateway...
                                          mysgw: Protocol version - 2.2.0
                                          mysgw: MCO:BGN:INIT GW,CP=RNNGLSQX,VER=2.2.0
                                          mysgw: TSF:LRT:OK
                                          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: connect: Connection refused
                                          mysgw: failed to connect
                                          mysgw: GWT:TIN:ETH OK
                                          mysgw: connect: Connection refused
                                          mysgw: failed to connect
                                          mysgw: GWT:TPS:ETH OK
                                          mysgw: connect: Connection refused
                                          mysgw: failed to connect
                                          mysgw: GWT:TPS:ETH OK
                                          

                                          The controller doesn't exist on the DietPi card yet but I'm not sure if that's causing the problem.

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

                                          @masmat I did a test with the following configuration:

                                          • Raspberry Pi 1 with Raspbian (2017-11-29-raspbian-stretch-lite)

                                            pi@raspberrypi:~/MySensors $ lsb_release -a
                                            No LSB modules are available.
                                            Distributor ID: Raspbian
                                            Description:    Raspbian GNU/Linux 9.1 (stretch)
                                            Release:        9.1
                                            Codename:       stretch
                                            
                                          • MySensors master branch - Protocol version - 2.2.0

                                            ./configure --my-transport=nrf24 --my-gateway=mqtt --my-controller-ip-address=127.0.0.1 --my-mqtt-publish-topic-prefix=mysensors-out --my-mqtt-subscribe-topic-prefix=mysensors-in --my-mqtt-client-id=m ygateway1 --my-mqtt-user=rpi --my-mqtt-password=password
                                            
                                          • Mosquitto version 1.4.10 (build date Fri, 22 Dec 2017 08:19:25 +0000) [installed from apt-get]

                                            pi@raspberrypi:~/MySensors $ cat /etc/mosquitto/mosquitto.conf
                                            # Place your local configuration in /etc/mosquitto/conf.d/
                                            #
                                            # A full description of the configuration file is at
                                            # /usr/share/doc/mosquitto/examples/mosquitto.conf.example
                                            
                                            pid_file /var/run/mosquitto.pid
                                            
                                            persistence true
                                            persistence_location /var/lib/mosquitto/
                                            
                                            log_dest file /var/log/mosquitto/mosquitto.log
                                            
                                            allow_anonymous false
                                            password_file /etc/mosquitto/passwordfile
                                            
                                            include_dir /etc/mosquitto/conf.d
                                            

                                            Added the mosquitto user (user=rpi, password=password) with:

                                            sudo mosquitto_passwd -c /etc/mosquitto/passwordfile rpi
                                            

                                          It didn't show any error to connect to the MQTT broker:

                                          pi@raspberrypi:~/MySensors $ sudo ./bin/mysgw -d
                                          mysgw: Starting gateway...
                                          mysgw: Protocol version - 2.2.0
                                          mysgw: MCO:BGN:INIT GW,CP=RNNGL---,VER=2.2.0
                                          mysgw: TSF:LRT:OK
                                          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: MCO:BGN:STP
                                          mysgw: MCO:BGN:INIT OK,TSP=1
                                          mysgw: GWT:RMQ:MQTT RECONNECT
                                          mysgw: connected to 127.0.0.1
                                          mysgw: GWT:RMQ:MQTT CONNECTED
                                          mysgw: GWT:TPS:TOPIC=mysensors-out/0/255/0/0/18,MSG SENT
                                          mysgw: TSF:MSG:READ,5-5-0,s=255,c=3,t=24,pt=1,l=1,sg=0:1
                                          mysgw: TSF:MSG:PINGED,ID=5,HP=1
                                          mysgw: TSF:MSG:SEND,0-0-5-5,s=255,c=3,t=25,pt=1,l=1,sg=0,ft=0,st=OK:1
                                          mysgw: TSF:MSG:READ,5-5-0,s=255,c=3,t=32,pt=5,l=4,sg=0:500
                                          mysgw: GWT:TPS:TOPIC=mysensors-out/5/255/3/0/32,MSG SENT
                                          mysgw: TSF:MSG:READ,5-5-0,s=255,c=3,t=33,pt=5,l=4,sg=0:4951
                                          mysgw: GWT:TPS:TOPIC=mysensors-out/5/255/3/0/33,MSG SENT
                                          mysgw: TSF:MSG:READ,5-5-0,s=1,c=1,t=37,pt=4,l=4,sg=0:36053
                                          mysgw: GWT:TPS:TOPIC=mysensors-out/5/1/1/0/37,MSG SENT
                                          mysgw: TSF:MSG:READ,5-5-0,s=255,c=3,t=32,pt=5,l=4,sg=0:500
                                          mysgw: GWT:TPS:TOPIC=mysensors-out/5/255/3/0/32,MSG SENT
                                          mysgw: TSF:MSG:READ,5-5-0,s=255,c=3,t=33,pt=5,l=4,sg=0:5000
                                          mysgw: GWT:TPS:TOPIC=mysensors-out/5/255/3/0/33,MSG SENT
                                          mysgw: TSF:MSG:READ,5-5-0,s=1,c=1,t=37,pt=4,l=4,sg=0:36055
                                          mysgw: GWT:TPS:TOPIC=mysensors-out/5/1/1/0/37,MSG SENT
                                          mysgw: TSF:MSG:READ,5-5-0,s=255,c=3,t=32,pt=5,l=4,sg=0:500
                                          mysgw: GWT:TPS:TOPIC=mysensors-out/5/255/3/0/32,MSG SENT
                                          mysgw: TSF:MSG:READ,5-5-0,s=255,c=3,t=33,pt=5,l=4,sg=0:5000
                                          mysgw: GWT:TPS:TOPIC=mysensors-out/5/255/3/0/33,MSG SENT
                                          mysgw: TSF:MSG:READ,5-5-0,s=1,c=1,t=37,pt=4,l=4,sg=0:36055
                                          mysgw: GWT:TPS:TOPIC=mysensors-out/5/1/1/0/37,MSG SENT
                                          
                                          MasMatM 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          16

                                          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