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 13.9k 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.
  • N Offline
    N Offline
    Nicklas Starkel
    wrote on last edited by
    #2

    Quick question.
    I have built GatewayW5100MQTTClient according to mysensors.
    It works and relays my nodes.
    However, my old gateway with MqTT delivered the messages with my selected prefix and then node/child number + variable/sensor.
    Ex MyMQTT/1/1/S_TEMP
    Now the new gateway with MqTT delivers node and child and more like this:
    MyMQTT/1/1/x/x/x where X is some number.
    It does not display S_TEMP.
    And what are the extra "numbers"?

    And it also displays when the node starts up some MqTT messages that are empty ex:
    MyMQTT/1/255/3/0/1 with no information.
    I do not know what publishes these..

    For relevance, the sketches I upload are the ones in the new mysensors library, ex Atmospheric Pressure Sensor.

    1 Reply Last reply
    0
    • FotoFieberF Offline
      FotoFieberF Offline
      FotoFieber
      Hardware Contributor
      wrote on last edited by
      #3

      The new MQTT gateway exposes the serial api to MQTT. It has less functionality.

      The old client gateway was a controller and translated the protocol to more readable messages and had a node-id handling.

      I had the same problem and switched to node-red with a serial gateway.

      N 1 Reply Last reply
      0
      • hekH Online
        hekH Online
        hek
        Admin
        wrote on last edited by
        #4

        https://forum.mysensors.org/topic/2352/guide-setting-up-and-testing-mqtt-client-gateway

        1 Reply Last reply
        0
        • FotoFieberF FotoFieber

          The new MQTT gateway exposes the serial api to MQTT. It has less functionality.

          The old client gateway was a controller and translated the protocol to more readable messages and had a node-id handling.

          I had the same problem and switched to node-red with a serial gateway.

          N Offline
          N Offline
          Nicklas Starkel
          wrote on last edited by
          #5

          @FotoFieber

          How do you mean it is a problem? Everything works, just needed to know what the extra was :)
          I too use NODE RED, but just listening on MQTT and then putting the info into mysql databases.

          @hek
          Thank you! I have used search, but it is difficult when you do not know what you are searching for :) And all information about 2.0 is overwhelming at the time being for me.

          1 Reply Last reply
          0
          • hekH Online
            hekH Online
            hek
            Admin
            wrote on last edited by
            #6

            Thanks, good feedback @Nicklas-Starkel .

            I just updated the main MQTT page, moving some of the instructions from the forum.

            1 Reply Last reply
            0
            • Ernst79E Offline
              Ernst79E Offline
              Ernst79
              wrote on last edited by
              #7

              Seems that the W5100 sketch of the MQTT gateway is missing #include <SPI.h>.
              I had to add it before #include <Ethernet.h>.

              1 Reply Last reply
              0
              • siodS Offline
                siodS Offline
                siod
                wrote on last edited by
                #8

                As Ernst79 already mentioned: please add #include <SPI.h> as a switch to your code, thank you!

                still learning...

                1 Reply Last reply
                0
                • hekH Online
                  hekH Online
                  hek
                  Admin
                  wrote on last edited by
                  #9

                  https://github.com/mysensors/MySensors/issues/601

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

                    Is it possible to have the MQTT client also act as a network gateway?

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

                    1 Reply Last reply
                    0
                    • hekH Online
                      hekH Online
                      hek
                      Admin
                      wrote on last edited by
                      #11

                      Nope, sorry. You have to have to introduce a broker or controller acting as MQTT server.

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

                        The old network gateway with mqtt seems to be removed and the client version is the one that id preferred. Is it possible to have both mqtt server and network gateway in that version?

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

                        1 Reply Last reply
                        0
                        • ? 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
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          13

                                          Online

                                          11.7k

                                          Users

                                          11.2k

                                          Topics

                                          113.0k

                                          Posts


                                          Copyright 2019 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • MySensors
                                          • OpenHardware.io
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular