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 1.0m 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
    #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
                                • 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?

                                  M Offline
                                  M Offline
                                  mvader
                                  wrote on last edited by
                                  #849

                                  @gohan said in 💬 Building a Raspberry Pi Gateway:

                                  @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?

                                  I'm not using mqtt.
                                  for debug purposes i use MYSController
                                  every 10 seconds on the dot. it shows me the version of the gateway.

                                  201	3/15/2018 20:47:15	RX	0 - Gateway	INTERNAL	C_INTERNAL	NO	I_VERSION	2.2.0
                                  202	3/15/2018 20:47:25	RX	0 - Gateway	INTERNAL	C_INTERNAL	NO	I_VERSION	2.2.0
                                  203	3/15/2018 20:47:35	RX	0 - Gateway	INTERNAL	C_INTERNAL	NO	I_VERSION	2.2.0
                                  204	3/15/2018 20:47:45	RX	0 - Gateway	INTERNAL	C_INTERNAL	NO	I_VERSION	2.2.0
                                  205	3/15/2018 20:47:55	RX	0 - Gateway	INTERNAL	C_INTERNAL	NO	I_VERSION	2.2.0
                                  206	3/15/2018 20:48:05	RX	0 - Gateway	INTERNAL	C_INTERNAL	NO	I_VERSION	2.2.0
                                  
                                  

                                  @marceloaqno any ideas about that?

                                  gohanG M 2 Replies Last reply
                                  0
                                  • M mvader

                                    @gohan said in 💬 Building a Raspberry Pi Gateway:

                                    @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?

                                    I'm not using mqtt.
                                    for debug purposes i use MYSController
                                    every 10 seconds on the dot. it shows me the version of the gateway.

                                    201	3/15/2018 20:47:15	RX	0 - Gateway	INTERNAL	C_INTERNAL	NO	I_VERSION	2.2.0
                                    202	3/15/2018 20:47:25	RX	0 - Gateway	INTERNAL	C_INTERNAL	NO	I_VERSION	2.2.0
                                    203	3/15/2018 20:47:35	RX	0 - Gateway	INTERNAL	C_INTERNAL	NO	I_VERSION	2.2.0
                                    204	3/15/2018 20:47:45	RX	0 - Gateway	INTERNAL	C_INTERNAL	NO	I_VERSION	2.2.0
                                    205	3/15/2018 20:47:55	RX	0 - Gateway	INTERNAL	C_INTERNAL	NO	I_VERSION	2.2.0
                                    206	3/15/2018 20:48:05	RX	0 - Gateway	INTERNAL	C_INTERNAL	NO	I_VERSION	2.2.0
                                    
                                    

                                    @marceloaqno any ideas about that?

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

                                    @mvader oh, that's normal. I though you meant something else

                                    1 Reply Last reply
                                    1
                                    • O Offline
                                      O Offline
                                      otto001
                                      wrote on last edited by otto001
                                      #851

                                      Yesterday I cloned the latest version on a recent raspbian (9.3) and I applied the first patch of @marceloaqno .
                                      We will see. So long there were no problems. I will send an update in a few days...
                                      As a last help I could switch to mqtt and do a restart after a defined amount of time (if no events are received)....

                                      Cheers,
                                      Otto

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

                                        @marceloaqno I got my gw rfm69 gateway suddenly stopped communicating with nodes. I tried everything to reinstall it but without luck. I was able to have it running on my test rpi with a complete OS reinstall. Is there anything else I need need to clean up from my install to reset every settings? (besides the mysensors folder and mysensors.dat file I already deleted)

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

                                          How can I monitor the traffic data between the raspberry and RF module (NRF24L01) on a Ethernet gateway ??

                                          My gateway is built for Ethernet. I start the gateway with "service mysgw start"
                                          Now, I would like to get the same data output than output debug (./bin/mysgw -d) but without stop mysgw service.
                                          I need to use MYSController as Ethernet client at the same time.

                                          Thanks

                                          mfalkviddM 1 Reply Last reply
                                          0

                                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                          With your input, this post could be even better 💗

                                          Register Login
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          20

                                          Online

                                          12.0k

                                          Users

                                          11.2k

                                          Topics

                                          113.4k

                                          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