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 MQTT Gateway

💬 Building a MQTT Gateway

Scheduled Pinned Locked Moved Announcements
81 Posts 30 Posters 14.1k Views 28 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.
  • ? Offline
    ? Offline
    A Former User
    wrote on last edited by
    #13

    Sorry for my ignorance but I would like to know how to connect the gateway to the sensor.
    As I understand it, the radio communication is responsible for it, so can I put arduino + NRF24L01 + sensor at the other end?
    Thank you!

    1 Reply Last reply
    0
    • Martin TellblomM Offline
      Martin TellblomM Offline
      Martin Tellblom
      wrote on last edited by Martin Tellblom
      #14

      @DIM said:

      my ignorance but I would like to k

      The gateway is a arduino with NRF24L01+ (or RFM69) and serial/network/RS485 component. The sensor is another arduino with NRF24L01+ (or RFM69) and the sensor that are attached. The gateway is then acting as a translator from the NRF24L01+ (or RFM69) radiosignal to the medium that can talk to your controller

      MySensors MQTT Client Gateway, Openhab, Dashing, Razberry, 1-wire

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

        I thought that the gateway could be done only with the ESP8266 module.
        Thanks!

        1 Reply Last reply
        0
        • CurlyWurlyC Offline
          CurlyWurlyC Offline
          CurlyWurly
          wrote on last edited by
          #16

          If you're using an ESP8266 and you find it "SOFT WDT resetting" whenever a node tries to send a message, try moving the wire from GPIO4 to GPIO5 - There are a few esp12E boards which have been incorrectly screen printed - worked for me with this board!
          https://twitter.com/bdcatalin/status/663434209265078272

          1 Reply Last reply
          0
          • N Offline
            N Offline
            Nicklas Starkel
            wrote on last edited by
            #17

            Regarding ACK flag in MQTT.
            If a sensor sends data to the gateway, and it requests an ACK.
            It is the gateway that responds with an ACK, not the controller.

            How do one utilize the ACK flag in MQTT?
            Or rather, how do one get the ACK to display in a MQTT message?

            void receive(const MyMessage &message) {
            int value = debouncer.read();
            //We only expect one type of message from controller. But we better check anyway.
             if (message.isAck()) {
                Serial.println("This is an ack from gateway");
             }
            }
            

            Should I write a codesnippet like the above but one that sends a message back to the gateway, that the ACK was received?
            And also, if an ACK was not received that the sensor should try to send the message again.

            1 Reply Last reply
            0
            • GrahamG Offline
              GrahamG Offline
              Graham
              wrote on last edited by Graham
              #18

              I have set up an MQTT gateway running on a Wemos D1, and a motion sensor running on an arduino nano.

              It seems to work successfully, but I had to define MY_NODE_ID in the sensor sketch because the negotiation for this is done by the controller. Presumably, I'm going to have to program my controller to respond to the mqtt message being sent to negiotiate the id, but I cannot find any documentation on the correct reply. Does someone have a link?

              The mqtt message being sent to negotiate the node id was

              mygateway1-out/255/255/3/0/3 (null)
              
              1 Reply Last reply
              0
              • proddyP Offline
                proddyP Offline
                proddy
                wrote on last edited by
                #19

                I believe the node id will always be 0 for gateways so the examples are a little misleading. For example the output shows connections with a node id of 2 (e.g. mygateway1-out/2/1/1/0/49 55.722519;13.018121;13)

                1 Reply Last reply
                0
                • mppM Offline
                  mppM Offline
                  mpp
                  wrote on last edited by
                  #20

                  Can this be used with RabbitMQ as broker?

                  MyController with USB powered WeMos D1/mini ESP8266 MQTT Gateways and battery powered Arduino Pro Mini using the RFM69 radio

                  1 Reply Last reply
                  0
                  • S Offline
                    S Offline
                    stephenmhall
                    wrote on last edited by
                    #21

                    Not sure if you want to leave the GPS on there unless that isn't your house with the double hot tub in tha back garden :)

                    1 Reply Last reply
                    0
                    • Mountek AngelM Offline
                      Mountek AngelM Offline
                      Mountek Angel
                      wrote on last edited by
                      #22

                      Hi, is it possible to configure the MQTT gateway to let me in to port 5003 via telnet and read the communication message (not MQTT payloads) there also?

                      M 1 Reply Last reply
                      0
                      • proddyP Offline
                        proddyP Offline
                        proddy
                        wrote on last edited by
                        #23

                        Not sure if this helps but for debugging I use MQTT spy (https://github.com/eclipse/paho.mqtt-spy/wiki) for tracking the comms

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

                          There is also mqtt fx that can be used to see what's going on on the mqtt server

                          Mountek AngelM 1 Reply Last reply
                          0
                          • gohanG gohan

                            There is also mqtt fx that can be used to see what's going on on the mqtt server

                            Mountek AngelM Offline
                            Mountek AngelM Offline
                            Mountek Angel
                            wrote on last edited by
                            #25

                            I know what is going on the MQTT server and I am subscribed to the topics the Mysensors gateway created and publish data to it.

                            But, I want to know what is going on the GATEWAY as well. I'd like to see messages like these when I telnet to the gateway on port 5003 (that's the default as I remember)

                            0;255;3;0;9;Starting gateway (RNNGA-, 2.0.0)
                            0;255;3;0;9;TSM:INIT
                            0;255;3;0;9;TSM:RADIO:OK
                            0;255;3;0;9;TSM:GW MODE
                            0;255;3;0;9;TSM:READY
                            IP: 192.168.0.109
                            0;255;3;0;9;No registration required
                            0;255;3;0;9;Init complete, id=0, parent=0, distance=0, registration=1
                            0;255;3;0;9;TSP:MSG:READ 255-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0:
                            0;255;3;0;9;TSP:MSG:BC
                            0;255;3;0;9;TSP:MSG:FPAR REQ (sender=255)
                            0;255;3;0;9;TSP:CHKUPL:OK (FLDCTRL)
                            0;255;3;0;9;TSP:MSG:GWL OK
                            0;255;3;0;9;TSP:MSG:SEND 0-0-255-255 s=255,c=3,t=8,pt=1,l=1,sg=0,ft=0,st=bc:0
                            0;255;3;0;9;TSP:MSG:READ 255-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0:

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

                              There is the tool MYSController that connects to the gateway and shows all the messages

                              1 Reply Last reply
                              0
                              • S Offline
                                S Offline
                                Samuel235
                                Hardware Contributor
                                wrote on last edited by
                                #27

                                My gateway seems to be constantly repeating the following on the serial monitor:

                                IP: 192.168.0.22
                                0;255;3;0;9;Attempting MQTT connection...
                                0;255;3;0;9;MQTT connected
                                0;255;3;0;9;Sending message on topic: Gateway1-out/0/255/0/0/18
                                0;255;3;0;9;Message arrived on topic: Gateway1-in/4/1/1/0/2
                                0;255;3;0;9;TSF:MSG:SEND,0-0-4-4,s=1,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=OK:0
                                IP: 192.168.0.22
                                0;255;3;0;9;Attempting MQTT connection...
                                0;255;3;0;9;MQTT connected
                                0;255;3;0;9;Sending message on topic: Gateway1-out/0/255/0/0/18
                                0;255;3;0;9;Message arrived on topic: Gateway1-in/4/1/1/0/2
                                0;255;3;0;9;TSF:MSG:SEND,0-0-4-4,s=1,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=OK:0
                                IP: 192.168.0.22
                                0;255;3;0;9;Attempting MQTT connection...
                                0;255;3;0;9;MQTT connected
                                0;255;3;0;9;Sending message on topic: Gateway1-out/0/255/0/0/18
                                0;255;3;0;9;Message arrived on topic: Gateway1-in/4/1/1/0/2
                                0;255;3;0;9;TSF:MSG:SEND,0-0-4-4,s=1,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=OK:0
                                

                                Does this look like its in a reset loop or would you say there is some other issue going on?

                                If needed, my config is a Arduino Mega 2560 witha w5100 shield on top. I have specified the IP address of itself, the subnet, gateway, mqtt client IP (Controller), the mqtt topics, port, changed my LED pins.

                                I have a node with a button next to me, when i press it the message is picked up by the gateway. Below is what happens in the serial monitor when i press the node button.

                                IP: 192.168.0.22
                                0;255;3;0;9;Attempting MQTT connection...
                                0;255;3;0;9;MQTT connected
                                0;255;3;0;9;Sending message on topic: Gateway1-out/0/255/0/0/18
                                0;255;3;0;9;Message arrived on topic: Gateway1-in/4/1/1/0/2
                                0;255;3;0;9;TSF:MSG:SEND,0-0-4-4,s=1,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=OK:0
                                0;255;3;0;9;TSF:MSG:READ,3-3-0,s=3,c=1,t=2,pt=2,l=2,sg=0:1
                                0;255;3;0;9;Sending message on topic: Gateway1-out/3/3/1/0/2
                                

                                I'm a little confused at what point to troubleshoot here because I seem to think that for some reason it keeps refreshing its connection to the MQTT server. Not too sure why it is pushing a message to the topic of "Gateway1-out/0/255/0/0/18" either.

                                MySensors 2.1.1
                                Controller - OpenHAB (Virtual Machine)
                                Gateway - Arduino Mega MQTT Gateway W5100

                                mfalkviddM 2 Replies Last reply
                                0
                                • S Samuel235

                                  My gateway seems to be constantly repeating the following on the serial monitor:

                                  IP: 192.168.0.22
                                  0;255;3;0;9;Attempting MQTT connection...
                                  0;255;3;0;9;MQTT connected
                                  0;255;3;0;9;Sending message on topic: Gateway1-out/0/255/0/0/18
                                  0;255;3;0;9;Message arrived on topic: Gateway1-in/4/1/1/0/2
                                  0;255;3;0;9;TSF:MSG:SEND,0-0-4-4,s=1,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=OK:0
                                  IP: 192.168.0.22
                                  0;255;3;0;9;Attempting MQTT connection...
                                  0;255;3;0;9;MQTT connected
                                  0;255;3;0;9;Sending message on topic: Gateway1-out/0/255/0/0/18
                                  0;255;3;0;9;Message arrived on topic: Gateway1-in/4/1/1/0/2
                                  0;255;3;0;9;TSF:MSG:SEND,0-0-4-4,s=1,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=OK:0
                                  IP: 192.168.0.22
                                  0;255;3;0;9;Attempting MQTT connection...
                                  0;255;3;0;9;MQTT connected
                                  0;255;3;0;9;Sending message on topic: Gateway1-out/0/255/0/0/18
                                  0;255;3;0;9;Message arrived on topic: Gateway1-in/4/1/1/0/2
                                  0;255;3;0;9;TSF:MSG:SEND,0-0-4-4,s=1,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=OK:0
                                  

                                  Does this look like its in a reset loop or would you say there is some other issue going on?

                                  If needed, my config is a Arduino Mega 2560 witha w5100 shield on top. I have specified the IP address of itself, the subnet, gateway, mqtt client IP (Controller), the mqtt topics, port, changed my LED pins.

                                  I have a node with a button next to me, when i press it the message is picked up by the gateway. Below is what happens in the serial monitor when i press the node button.

                                  IP: 192.168.0.22
                                  0;255;3;0;9;Attempting MQTT connection...
                                  0;255;3;0;9;MQTT connected
                                  0;255;3;0;9;Sending message on topic: Gateway1-out/0/255/0/0/18
                                  0;255;3;0;9;Message arrived on topic: Gateway1-in/4/1/1/0/2
                                  0;255;3;0;9;TSF:MSG:SEND,0-0-4-4,s=1,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=OK:0
                                  0;255;3;0;9;TSF:MSG:READ,3-3-0,s=3,c=1,t=2,pt=2,l=2,sg=0:1
                                  0;255;3;0;9;Sending message on topic: Gateway1-out/3/3/1/0/2
                                  

                                  I'm a little confused at what point to troubleshoot here because I seem to think that for some reason it keeps refreshing its connection to the MQTT server. Not too sure why it is pushing a message to the topic of "Gateway1-out/0/255/0/0/18" either.

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

                                  @Samuel235 see if the solution suggested by tekka in https://forum.mysensors.org/post/47225 can help (downgrade board definitions to 1.6.11)

                                  1 Reply Last reply
                                  0
                                  • S Samuel235

                                    My gateway seems to be constantly repeating the following on the serial monitor:

                                    IP: 192.168.0.22
                                    0;255;3;0;9;Attempting MQTT connection...
                                    0;255;3;0;9;MQTT connected
                                    0;255;3;0;9;Sending message on topic: Gateway1-out/0/255/0/0/18
                                    0;255;3;0;9;Message arrived on topic: Gateway1-in/4/1/1/0/2
                                    0;255;3;0;9;TSF:MSG:SEND,0-0-4-4,s=1,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=OK:0
                                    IP: 192.168.0.22
                                    0;255;3;0;9;Attempting MQTT connection...
                                    0;255;3;0;9;MQTT connected
                                    0;255;3;0;9;Sending message on topic: Gateway1-out/0/255/0/0/18
                                    0;255;3;0;9;Message arrived on topic: Gateway1-in/4/1/1/0/2
                                    0;255;3;0;9;TSF:MSG:SEND,0-0-4-4,s=1,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=OK:0
                                    IP: 192.168.0.22
                                    0;255;3;0;9;Attempting MQTT connection...
                                    0;255;3;0;9;MQTT connected
                                    0;255;3;0;9;Sending message on topic: Gateway1-out/0/255/0/0/18
                                    0;255;3;0;9;Message arrived on topic: Gateway1-in/4/1/1/0/2
                                    0;255;3;0;9;TSF:MSG:SEND,0-0-4-4,s=1,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=OK:0
                                    

                                    Does this look like its in a reset loop or would you say there is some other issue going on?

                                    If needed, my config is a Arduino Mega 2560 witha w5100 shield on top. I have specified the IP address of itself, the subnet, gateway, mqtt client IP (Controller), the mqtt topics, port, changed my LED pins.

                                    I have a node with a button next to me, when i press it the message is picked up by the gateway. Below is what happens in the serial monitor when i press the node button.

                                    IP: 192.168.0.22
                                    0;255;3;0;9;Attempting MQTT connection...
                                    0;255;3;0;9;MQTT connected
                                    0;255;3;0;9;Sending message on topic: Gateway1-out/0/255/0/0/18
                                    0;255;3;0;9;Message arrived on topic: Gateway1-in/4/1/1/0/2
                                    0;255;3;0;9;TSF:MSG:SEND,0-0-4-4,s=1,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=OK:0
                                    0;255;3;0;9;TSF:MSG:READ,3-3-0,s=3,c=1,t=2,pt=2,l=2,sg=0:1
                                    0;255;3;0;9;Sending message on topic: Gateway1-out/3/3/1/0/2
                                    

                                    I'm a little confused at what point to troubleshoot here because I seem to think that for some reason it keeps refreshing its connection to the MQTT server. Not too sure why it is pushing a message to the topic of "Gateway1-out/0/255/0/0/18" either.

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

                                    @Samuel235 0_1487281026734_boardmanager.png
                                    In case anyone needs to know where to downgrade: Tools -> Boards ->Boards Manager -> Select version for Arduini AVR Boards.

                                    S 1 Reply Last reply
                                    2
                                    • mfalkviddM mfalkvidd

                                      @Samuel235 0_1487281026734_boardmanager.png
                                      In case anyone needs to know where to downgrade: Tools -> Boards ->Boards Manager -> Select version for Arduini AVR Boards.

                                      S Offline
                                      S Offline
                                      Samuel235
                                      Hardware Contributor
                                      wrote on last edited by
                                      #30

                                      @mfalkvidd - It is still seeming to repeatedly reconnect to the MQTT server. I've issued a ping command to the arduino from the mqtt server and its constantly pinging without an issue, even while the serial monitor shows that its reconnecting. I'de be interested to know if anyone else is running the MQTT client gateway with MySensors V2.1. I used to run it when it was first introduced into the development environment in 1.6 and its been fine for over a year, but i upgraded to V2.1 and now i get this. So, i don't actually know if it is supposed to keep reconnecting to the MQTT server. I have read somewhere here that it sends a wake/refresh packet/message to the mqtt server just to keep it alive, but they said that was every 15 seconds by default. This is happening every 5/6 seconds.

                                      IP: 192.168.0.22
                                      0;255;3;0;9;Attempting MQTT connection...
                                      0;255;3;0;9;MQTT connected
                                      0;255;3;0;9;Sending message on topic: Gateway1-out/0/255/0/0/18
                                      0;255;3;0;9;Message arrived on topic: Gateway1-in/4/1/1/0/2
                                      0;255;3;0;9;TSF:MSG:SEND,0-0-4-4,s=1,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=OK:0
                                      IP: 192.168.0.22
                                      0;255;3;0;9;Attempting MQTT connection...
                                      0;255;3;0;9;MQTT connected
                                      0;255;3;0;9;Sending message on topic: Gateway1-out/0/255/0/0/18
                                      0;255;3;0;9;Message arrived on topic: Gateway1-in/4/1/1/0/2
                                      0;255;3;0;9;TSF:MSG:SEND,0-0-4-4,s=1,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=OK:0
                                      IP: 192.168.0.22
                                      0;255;3;0;9;Attempting MQTT connection...
                                      0;255;3;0;9;MQTT connected
                                      0;255;3;0;9;Sending message on topic: Gateway1-out/0/255/0/0/18
                                      0;255;3;0;9;Message arrived on topic: Gateway1-in/4/1/1/0/2
                                      0;255;3;0;9;TSF:MSG:SEND,0-0-4-4,s=1,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=OK:0
                                      

                                      MySensors 2.1.1
                                      Controller - OpenHAB (Virtual Machine)
                                      Gateway - Arduino Mega MQTT Gateway W5100

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

                                        i think you need to post your code just to make more complete info.

                                        S 1 Reply Last reply
                                        0
                                        • S Offline
                                          S Offline
                                          Samuel235
                                          Hardware Contributor
                                          wrote on last edited by
                                          #32

                                          I would like to know if anyone else's MQTT Gateway does this?

                                          If this is the normal procedure I can carry on with config work for the nodes. Its pretty weird, the serial monitor is showing this but the gateway seems to be functioning. Nodes are talking to it. I'm not sure on that output topic though, why would it be sending something to Gateway1-out/0/255/0/0/18?

                                          MySensors 2.1.1
                                          Controller - OpenHAB (Virtual Machine)
                                          Gateway - Arduino Mega MQTT Gateway W5100

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


                                          21

                                          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