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. Controllers
  3. OpenHAB
  4. openHAB 2.2 binding MQTT support

openHAB 2.2 binding MQTT support

Scheduled Pinned Locked Moved OpenHAB
37 Posts 9 Posters 19.2k Views 12 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.
  • jjkJ Offline
    jjkJ Offline
    jjk
    wrote on last edited by
    #26
    This post is deleted!
    jjkJ 1 Reply Last reply
    0
    • jjkJ jjk

      This post is deleted!

      jjkJ Offline
      jjkJ Offline
      jjk
      wrote on last edited by jjk
      #27

      Hi @TimO ,

      after doing clean install of OH and the ESH mqtt binding per the original post above, the mqqt service ran properly (no errors in the debug log). After installing the mysensors binding, I start seing mysensors topics come in, but then following exception is thrown

      2018-02-06 20:01:10.676 [DEBUG] [o.client.mqttv3.internal.ClientState] - paho167001634703924: received key=1 message=PUBLISH qos:1 msgId:1 retained:true dup:false topic:"mysgw-out/1/0/1/0/97" payload:[hex:33392e38 utf8:"39.8" length:4]
      2018-02-06 20:01:10.676 [DEBUG] [o.client.mqttv3.internal.ClientState] - paho167001634703924: received key=1 token=org.eclipse.paho.client.mqttv3.MqttToken@e71260 message=SUBACK msgId 1 granted Qos 1
      2018-02-06 20:01:10.677 [DEBUG] [client.mqttv3.internal.CommsCallback] - paho167001634703924: new msg avail, notify workAvailable
      2018-02-06 20:01:10.678 [DEBUG] [o.client.mqttv3.internal.ClientState] - paho167001634703924: wait for new work or for space in the inflight window
      2018-02-06 20:01:10.679 [DEBUG] [client.mqttv3.internal.CommsReceiver] - paho167001634703924: network read message
      2018-02-06 20:01:10.679 [DEBUG] [client.mqttv3.internal.CommsCallback] - paho167001634703924: call messageArrived key=1 topic=mysgw-out/1/0/1/0/97
      2018-02-06 20:01:10.680 [DEBUG] [o.client.mqttv3.internal.ClientState] - paho167001634703924: received bytes count=1
      2018-02-06 20:01:10.681 [DEBUG] [o.client.mqttv3.internal.ClientState] - paho167001634703924: received bytes count=28
      2018-02-06 20:01:10.681 [DEBUG] [client.mqttv3.internal.CommsCallback] - paho167001634703924: callback threw exception
              at org.openhab.binding.mysensors.internal.protocol.mqtt.MySensorsMqttConnection$MySensorsMqttSubscriber.processMessage(MySensorsMqttConnection.java:140) [233:org.openhab.binding.mysensors:2.2.0.201712141227]
              at org.eclipse.smarthome.io.transport.mqtt.MqttBrokerConnection$ClientCallbacks.messageArrived(MqttBrokerConnection.java:121) [232:org.eclipse.smarthome.io.transport.mqtt:0.10.0.b1]
              at org.eclipse.paho.client.mqttv3.internal.CommsCallback.handleMessage(CommsCallback.java:354) [231:org.eclipse.paho.client.mqttv3:1.0.2]
              at org.eclipse.paho.client.mqttv3.internal.CommsCallback.run(CommsCallback.java:162) [231:org.eclipse.paho.client.mqttv3:1.0.2]
      2018-02-06 20:01:10.683 [DEBUG] [o.client.mqttv3.internal.ClientComms] - paho167001634703924: state=DISCONNECTING
      

      Any idea what I'm doing wrong?

      UPDATE:
      For what it's worth, I found the trigger for the error. In fact, the mqtt messages the binding received were (for whatever reason) retained messages of the mosquitto broker. After removing the mosquitto presistence file

      sudo service mosquitto stop
      sudo rm /var/lib/mosquitto/mosquitto.db
      sudo service mosquitto start
      

      it now seems to work o.k. - Hope this might help others who come across this thread.

      T 1 Reply Last reply
      1
      • jjkJ jjk

        Hi @TimO ,

        after doing clean install of OH and the ESH mqtt binding per the original post above, the mqqt service ran properly (no errors in the debug log). After installing the mysensors binding, I start seing mysensors topics come in, but then following exception is thrown

        2018-02-06 20:01:10.676 [DEBUG] [o.client.mqttv3.internal.ClientState] - paho167001634703924: received key=1 message=PUBLISH qos:1 msgId:1 retained:true dup:false topic:"mysgw-out/1/0/1/0/97" payload:[hex:33392e38 utf8:"39.8" length:4]
        2018-02-06 20:01:10.676 [DEBUG] [o.client.mqttv3.internal.ClientState] - paho167001634703924: received key=1 token=org.eclipse.paho.client.mqttv3.MqttToken@e71260 message=SUBACK msgId 1 granted Qos 1
        2018-02-06 20:01:10.677 [DEBUG] [client.mqttv3.internal.CommsCallback] - paho167001634703924: new msg avail, notify workAvailable
        2018-02-06 20:01:10.678 [DEBUG] [o.client.mqttv3.internal.ClientState] - paho167001634703924: wait for new work or for space in the inflight window
        2018-02-06 20:01:10.679 [DEBUG] [client.mqttv3.internal.CommsReceiver] - paho167001634703924: network read message
        2018-02-06 20:01:10.679 [DEBUG] [client.mqttv3.internal.CommsCallback] - paho167001634703924: call messageArrived key=1 topic=mysgw-out/1/0/1/0/97
        2018-02-06 20:01:10.680 [DEBUG] [o.client.mqttv3.internal.ClientState] - paho167001634703924: received bytes count=1
        2018-02-06 20:01:10.681 [DEBUG] [o.client.mqttv3.internal.ClientState] - paho167001634703924: received bytes count=28
        2018-02-06 20:01:10.681 [DEBUG] [client.mqttv3.internal.CommsCallback] - paho167001634703924: callback threw exception
                at org.openhab.binding.mysensors.internal.protocol.mqtt.MySensorsMqttConnection$MySensorsMqttSubscriber.processMessage(MySensorsMqttConnection.java:140) [233:org.openhab.binding.mysensors:2.2.0.201712141227]
                at org.eclipse.smarthome.io.transport.mqtt.MqttBrokerConnection$ClientCallbacks.messageArrived(MqttBrokerConnection.java:121) [232:org.eclipse.smarthome.io.transport.mqtt:0.10.0.b1]
                at org.eclipse.paho.client.mqttv3.internal.CommsCallback.handleMessage(CommsCallback.java:354) [231:org.eclipse.paho.client.mqttv3:1.0.2]
                at org.eclipse.paho.client.mqttv3.internal.CommsCallback.run(CommsCallback.java:162) [231:org.eclipse.paho.client.mqttv3:1.0.2]
        2018-02-06 20:01:10.683 [DEBUG] [o.client.mqttv3.internal.ClientComms] - paho167001634703924: state=DISCONNECTING
        

        Any idea what I'm doing wrong?

        UPDATE:
        For what it's worth, I found the trigger for the error. In fact, the mqtt messages the binding received were (for whatever reason) retained messages of the mosquitto broker. After removing the mosquitto presistence file

        sudo service mosquitto stop
        sudo rm /var/lib/mosquitto/mosquitto.db
        sudo service mosquitto start
        

        it now seems to work o.k. - Hope this might help others who come across this thread.

        T Offline
        T Offline
        TimO
        Hero Member
        wrote on last edited by
        #28

        @jjk Thank you for reporting back!

        jjkJ 1 Reply Last reply
        0
        • T TimO

          @jjk Thank you for reporting back!

          jjkJ Offline
          jjkJ Offline
          jjk
          wrote on last edited by
          #29

          @timo, another effect I noticed is that the mysensor binding seems a bit sensitive to updates in the things and item files. I got new errors every time I added a thing to the things file or modified the items file. After rebooting OH those erros were gone and the things properly included. Stopping the mysensors binding (bundle:stop) before adding/changing things or items and restarting it afterwards works without a problem.

          1 Reply Last reply
          0
          • jogantJ Offline
            jogantJ Offline
            jogant
            wrote on last edited by
            #30

            hi,
            first I would say thanks for the binding. Generally I got it working, but I build a special sensor for my district heating counter. It has two sensors in one node, power and watermeter. The power sensor also sends messages for value types VAR1-5. Unfortunately these value seem to have a problem. I see them in the mosquitto broker but in openhab I can't see them. In the logging there are some warnings concerning these values.
            Is it a known problem?

            thanks and best regards
            Joachim

            T 1 Reply Last reply
            0
            • jogantJ jogant

              hi,
              first I would say thanks for the binding. Generally I got it working, but I build a special sensor for my district heating counter. It has two sensors in one node, power and watermeter. The power sensor also sends messages for value types VAR1-5. Unfortunately these value seem to have a problem. I see them in the mosquitto broker but in openhab I can't see them. In the logging there are some warnings concerning these values.
              Is it a known problem?

              thanks and best regards
              Joachim

              T Offline
              T Offline
              TimO
              Hero Member
              wrote on last edited by
              #31

              @jogant please enable debug output with log:set DEBUG org.openhab.binding.mysensors and post the debug output here. I'll look at it.

              jogantJ 1 Reply Last reply
              0
              • T TimO

                @jogant please enable debug output with log:set DEBUG org.openhab.binding.mysensors and post the debug output here. I'll look at it.

                jogantJ Offline
                jogantJ Offline
                jogant
                wrote on last edited by
                #32

                @timo I enabled debugging and could see that all mqtt messages are received correct. I had a problem with caching through jsondb. I deleted some things and links and now everything is fine. So nothing wrong in the binding. Thanks for your helpful hint.

                1 Reply Last reply
                0
                • MasMatM Offline
                  MasMatM Offline
                  MasMat
                  wrote on last edited by MasMat
                  #33

                  Hi everyone. Since my last I reinstalled everything. I went back to Raspbian Jessie to get Mosquitto working properly. Full reinstall of MySensors mqtt gw and Openhab2 and binding.
                  I have one sensor built that will not connect to the gw and I seem to be having problems on the gw as well.

                  Quick specs: Rpi W, jessie, nrf24.
                  I'm pretty new to Rpi as gateway, so I'm having little difficulty with finding debug-logs etc as well.

                  Here's what my configuration was:
                  ./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=123456

                  /var/log/openhab2/openhab.log
                  2018-02-19 16:56:15.280 [INFO ] [.transport.mqtt.MqttBrokerConnection] - Starting MQTT broker connection 'mosquitto' to 'tcp://127.0.0.1:1883' with clientid paho108561372416048 and file store '/var/lib/openhab2/tmp/mosquitto'
                  2018-02-19 16:56:15.406 [INFO ] [.transport.mqtt.MqttBrokerConnection] - Starting MQTT broker connection 'mosquitto' to 'tcp://127.0.0.1:1883' with clientid paho108561583416206 and file store '/var/lib/openhab2/tmp/mosquitto'
                  ......keeps repeating

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

                  systemctl status mysgw.service
                  Feb 18 10:27:44 GwMqOH2 mysgw[359]: connect: Connection refused
                  Feb 18 10:27:44 GwMqOH2 mysgw[359]: failed to connect
                  ...repeating

                  when I run mysgw -d:
                  mysgw: Starting gateway...
                  mysgw: Protocol version - 2.2.1-alpha
                  mysgw: MCO:BGN:INIT GW,CP=RNNGLSQX,VER=2.2.1-alpha
                  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

                  Any ideas? Where should I start?
                  Sorry for flooding, the code-block is not working for some reason....

                  1 Reply Last reply
                  0
                  • jjkJ Offline
                    jjkJ Offline
                    jjk
                    wrote on last edited by
                    #34

                    @TimO after installing a (simple) sketch on a new node with the mysensors 2.2 library, I noticed frequent exceptions in the openhab logfile. It took me a while to figure out why, but it seems the issue is linked to new messages the ne mysensors library is sending in relation to smartsleep (type 32 and 33). I was able to reproduce the exceptions with manually generated mqtt messages. Below is the openhab log filtered for MySensorsMQTT

                    2018-02-21 13:43:23.232 [TRACE] [rotocol.mqtt.MySensorsMqttConnection] - Bridge is connected, connection skipped
                    2018-02-21 13:43:23.478 [DEBUG] [rotocol.mqtt.MySensorsMqttConnection] - MQTT message received. Topic: mysgw-out/151/4/1/0/0, Message: 2.4
                    2018-02-21 13:43:23.480 [DEBUG] [rotocol.mqtt.MySensorsMqttConnection] - Message topic part: 151/4/1/0/0
                    2018-02-21 13:43:23.481 [DEBUG] [rotocol.mqtt.MySensorsMqttConnection] - Converted MQTT message to MySensors Serial format. Sending on to bridge: 151;4;1;0;0;2.4
                    2018-02-21 13:43:23.665 [DEBUG] [rotocol.mqtt.MySensorsMqttConnection] - MQTT message received. Topic: mysgw-out/151/3/1/0/4, Message: 1013
                    2018-02-21 13:43:23.666 [DEBUG] [rotocol.mqtt.MySensorsMqttConnection] - Message topic part: 151/3/1/0/4
                    2018-02-21 13:43:23.668 [DEBUG] [rotocol.mqtt.MySensorsMqttConnection] - Converted MQTT message to MySensors Serial format. Sending on to bridge: 151;3;1;0;4;1013
                    2018-02-21 13:43:28.499 [DEBUG] [rotocol.mqtt.MySensorsMqttConnection] - MQTT message received. Topic: mysgw-out/151/255/3/0/22, Message: 13830390
                    2018-02-21 13:43:28.501 [DEBUG] [rotocol.mqtt.MySensorsMqttConnection] - Message topic part: 151/255/3/0/22
                    2018-02-21 13:43:28.503 [DEBUG] [rotocol.mqtt.MySensorsMqttConnection] - Converted MQTT message to MySensors Serial format. Sending on to bridge: 151;255;3;0;22;13830390
                    2018-02-21 13:43:33.234 [TRACE] [rotocol.mqtt.MySensorsMqttConnection] - Bridge is connected, connection skipped
                    2018-02-21 13:43:43.236 [TRACE] [rotocol.mqtt.MySensorsMqttConnection] - Bridge is connected, connection skipped
                    2018-02-21 13:43:53.238 [TRACE] [rotocol.mqtt.MySensorsMqttConnection] - Bridge is connected, connection skipped
                    2018-02-21 13:44:03.240 [TRACE] [rotocol.mqtt.MySensorsMqttConnection] - Bridge is connected, connection skipped
                    2018-02-21 13:44:13.242 [TRACE] [rotocol.mqtt.MySensorsMqttConnection] - Bridge is connected, connection skipped
                    2018-02-21 13:44:23.244 [TRACE] [rotocol.mqtt.MySensorsMqttConnection] - Bridge is connected, connection skipped
                    2018-02-21 13:44:23.579 [DEBUG] [rotocol.mqtt.MySensorsMqttConnection] - MQTT message received. Topic: mysgw-out/43/255/3/0/33, Message: 300000
                    2018-02-21 13:44:23.581 [DEBUG] [rotocol.mqtt.MySensorsMqttConnection] - Message topic part: 43/255/3/0/33
                    2018-02-21 13:44:23.589 [ERROR] [rotocol.mqtt.MySensorsMqttConnection] - MQTT connection offline - {}
                    	at org.openhab.binding.mysensors.internal.protocol.mqtt.MySensorsMqttConnection$MySensorsMqttSubscriber.processMessage(MySensorsMqttConnection.java:140) ~[?:?]
                    2018-02-21 13:44:33.247 [TRACE] [rotocol.mqtt.MySensorsMqttConnection] - Bridge is connected, connection skipped
                    

                    Currently, the only workaround seems to be to avoid smartsleep or compile the nodes with the 2.1.1 library.

                    1 Reply Last reply
                    0
                    • T TimO

                      Finally I'm able to present a first alpha release of the MQTT support of the OpenHAB2 binding.
                      I've done some first tests with a RGB node and it looks good, but there is still some work to do.
                      So this version is for the category "Don't try this at home!". ;-)

                      Some important notes and things to test:

                      • The binding uses the upcoming MQTT support in smarthome/OpenHAB2, not the old version 1 binding! They may work together, but we need to test that. If you're willing to test that, please let me now.
                      • I've tested with OpenHAB2 snapshot #1099. I don't know how far it is compatible to old versions.
                      • There is a PR in the smarthome repository to add the functionality of a MQTT broker to OpenHAB2, so a separate broker won't be needed in the future. The binding will be compatible with this addition.
                      • I need to adjust logging.

                      Instructions:

                      1. Start OpenHAB2

                      2. In karaf console:
                        feature:install esh-io-transport-mqtt

                      3. Download binding:
                        wget http://www.oberfoell.com/openhab2/org.openhab.binding.mysensors-2.2.0-mqtt.jar

                      4. Place "org.eclipse.smarthome.mqtt.cfg" in the /etc/openhab2/services or conf/services directory. New filename! (Wassn't my idea!) ;-)

                      Example:

                      mosquitto.url=tcp://192.168.2.3:1883
                      mosquitto.user=user
                      mosquitto.pwd=secret
                      mosquitto.retain=false
                      

                      (Use it like the old mqtt.cfg)

                      1. Configure MQTT broker via PaperUI
                        0_1512124003255_Bildschirmfoto vom 2017-12-01 11-25-59.png
                        or

                      via *.things file

                      Bridge mysensors:bridge-mqtt:gateway [  brokerName="mosquitto", 
                                                              topicPublish="mygateway1-in",
                                                              topicSubscribe="mygateway1-out",
                                                              startupCheckEnabled=false ] {
                                                              
                      }
                      
                      1. Configure or discover things.

                      That's it!

                      G Offline
                      G Offline
                      Guillermo Schimmel
                      wrote on last edited by
                      #35

                      @timo Re: openHAB 2.2 binding MQTT support

                      Hi @TimO. I'm lost. Should I install

                      http://www.oberfoell.com/openhab2/org.openhab.binding.mysensors-2.2.0-mqtt.jar

                      or the 2.3.0-SNAPSHOT?

                      I'm using mqtt gateway.

                      It doesn't seem to startup with either one.

                      Thanks!

                      T 1 Reply Last reply
                      0
                      • G Guillermo Schimmel

                        @timo Re: openHAB 2.2 binding MQTT support

                        Hi @TimO. I'm lost. Should I install

                        http://www.oberfoell.com/openhab2/org.openhab.binding.mysensors-2.2.0-mqtt.jar

                        or the 2.3.0-SNAPSHOT?

                        I'm using mqtt gateway.

                        It doesn't seem to startup with either one.

                        Thanks!

                        T Offline
                        T Offline
                        TimO
                        Hero Member
                        wrote on last edited by
                        #36

                        @guillermo-schimmel Don't use the old jar.
                        Use the Eclipse marketplace to install the binding or use the one linked in the wiki. They both point to the same and current jar.

                        Don't forget to fulfill the dependencies either by installing the features in the karaf console or by installing the new mqtt binding and the serial binding.

                        https://github.com/tobof/openhab2-addons/wiki/Installation

                        G 1 Reply Last reply
                        0
                        • T TimO

                          @guillermo-schimmel Don't use the old jar.
                          Use the Eclipse marketplace to install the binding or use the one linked in the wiki. They both point to the same and current jar.

                          Don't forget to fulfill the dependencies either by installing the features in the karaf console or by installing the new mqtt binding and the serial binding.

                          https://github.com/tobof/openhab2-addons/wiki/Installation

                          G Offline
                          G Offline
                          Guillermo Schimmel
                          wrote on last edited by
                          #37

                          @timo Thank you very much. I don't now how to use the marketplace, will research right now.

                          I have followed your instructions, but you link to the 2.3.0-SNAPSHOT. Perhaps you would like to correct that.

                          Thanks again

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


                          14

                          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