Can you show us the contents of your mqtt.cfg file and also the items which are not working?
they donât display well, had to replace the brackets with â
âmqttbrokerâ.url=tcp://10.1.0.22:1869â
âmqttbrokerâ.clientId=Openhab2
âmqttbrokerâ.user=xxxxxxxxx
âmqttbrokerâ.pwd=xxxxxxxxxxxx
for mine (delete any commented out lines in txt editor (e.g. notepad or notepad++)
most important line in mqtt.cfg is
OH2MQTT.url=tcp://192.168.1.10:1883
my items look like:
Switch DO_70_4 âEnsuite Fan - manual override [%s]â (Ensuite,Node70,log) {mqtt=">[OH2MQTT:home/rfm_gw/sb/node70/dev19:command:ON:ON],>[OH2MQTT:home/rfm_gw/sb/node70/dev19:command:OFF:OFF]",autoupdate=âtrueâ}
Number Tem_7048 âRoof space 7048 [%.1f °C]â (Roof, HouseData, Node70, All_Temperature,log,temp_chart) {mqtt="<[OH2MQTT:home/rfm_gw/nb/node70/dev48:state:default]"}
Number Tem_7050 âBathroom temperature 7050 [%.1f °C]â (HouseData, Bathroom, Node70, All_Temperature,log,temp_chart) {mqtt="<[OH2MQTT:home/rfm_gw/nb/node70/dev50:state:default]"}
type removing quote marks from broker name - see mine above
ok, give me 5.
Note that changing existing keys in mqtt.cfg will need attention as well under /var/lib/openhab2/config to work around issue.
getting these errors now
17-01-20 18:15:41.872 [ERROR] [t.mqtt.internal.MqttBrokerConnection] - MQTT connection to ââ was lost: Connection lost : ReasonCode 32109 : Cause : null
broker is up and running. just checked
More of the log. the good news this is the most I have ever seen in the log
Connection lost (32109) - java.io.EOFException
at org.eclipse.paho.client.mqttv3.internal.CommsReceiver.run(CommsReceiver.java:146)[186:org.eclipse.paho.client.mqttv3:1.0.2]
at java.lang.Thread.run(Thread.java:745)[:1.8.0_111]
Caused by: java.io.EOFException
at java.io.DataInputStream.readByte(DataInputStream.java:267)[:1.8.0_111]
at org.eclipse.paho.client.mqttv3.internal.wire.MqttInputStream.readMqttWireMessage(MqttInputStream.java:65)[186:org.eclipse.paho.client.mqttv3:1.0.2]
at org.eclipse.paho.client.mqttv3.internal.CommsReceiver.run(CommsReceiver.java:107)[186:org.eclipse.paho.client.mqttv3:1.0.2]
⊠1 more
2017-01-20 18:20:52.438 [ERROR] [t.mqtt.internal.MqttBrokerConnection] - MQTT connection to âmqttbrokerâ was lost: Connection lost : ReasonCode 32109 : Cause : null
2017-01-20 18:20:52.439 [INFO ] [t.mqtt.internal.MqttBrokerConnection] - Starting connection helper to periodically try restore connection to broker 'mqttbrokerâ
2017-01-20 18:21:02.439 [INFO ] [t.mqtt.internal.MqttBrokerConnection] - Starting MQTT broker connection 'mqttbrokerâ
2017-01-20 18:21:02.447 [ERROR] [t.mqtt.internal.MqttBrokerConnection] - MQTT connection to broker was lost
Connection lost (32109) - java.io.EOFException
at org.eclipse.paho.client.mqttv3.internal.CommsReceiver.run(CommsReceiver.java:146)[186:org.eclipse.paho.client.mqttv3:1.0.2]
at java.lang.Thread.run(Thread.java:745)[:1.8.0_111]
Caused by: java.io.EOFException
at java.io.DataInputStream.readByte(DataInputStream.java:267)[:1.8.0_111]
at org.eclipse.paho.client.mqttv3.internal.wire.MqttInputStream.readMqttWireMessage(MqttInputStream.java:65)[186:org.eclipse.paho.client.mqttv3:1.0.2]
at org.eclipse.paho.client.mqttv3.internal.CommsReceiver.run(CommsReceiver.java:107)[186:org.eclipse.paho.client.mqttv3:1.0.2]
⊠1 more
2017-01-20 18:21:02.447 [ERROR] [t.mqtt.internal.MqttBrokerConnection] - MQTT connection to ââ was lost: Connection lost : ReasonCode 32109 : Cause : null
2017-01-20 18:21:02.448 [INFO ] [t.mqtt.internal.MqttBrokerConnection] - Starting connection helper to periodically try restore connection to broker ''
2017-01-20 18:21:02.451 [DEBUG] [t.mqtt.internal.MqttBrokerConnection] - Starting message consumer for broker âmqttbrokerâ on topic 'control/SW010101/SW2/stateâ
2017-01-20 18:21:02.453 [DEBUG] [t.mqtt.internal.MqttBrokerConnection] - Starting message consumer for broker âmqttbrokerâ on topic 'control/SW010101/SW2/stateâ
2017-01-20 18:21:02.454 [DEBUG] [t.mqtt.internal.MqttBrokerConnection] - Starting message consumer for broker âmqttbrokerâ on topic 'control/SW010101/SW3/stateâ
2017-01-20 18:21:02.455 [DEBUG] [t.mqtt.internal.MqttBrokerConnection] - Starting message consumer for broker âmqttbrokerâ on topic âcontrol/SW010101/SW3/stateâ
^C
delete file: /var/lib/openhab2/config/org/openhab/mqtt.config
and let openHAB 2 reload your /etc/openhab2/services/mqtt.cfg
Woooot⊠your the man
up and running. I owe you big time.
Where do you live?
I owe you a coffee
I think that @WayneStronach helped you much more by assisting you in fixing your mqtt.cfg file
I just put the finishing touch with 1 small error
true, so I owe you both LOL
This thread helped me a lot. I was also stuck with two different mqtt config files and finally I solved it.
Thanks a lot guys and keep up the good work.
Folks, I have been struggling with a similar issue. Have not been able to resolve it in the last week of trying.
I have OH2 running on a Raspberry Pi3. All fine. I am now trying to publish my ZWAVE events to IBM Watsonâs IOT (mqtt) broker.
Watson cloud environment has been set up properly.
I can connect to the MQTT broker using a standalone client on my Mac (MQTTBox). Through that, I could verify that the URL / Username / Password are all ok. Connecting to Watson from the RPI3 however keeps failing with the following message:
11:39:54.082 [INFO ] [t.mqtt.internal.MqttBrokerConnection] - Starting MQTT broker connection 'watsoniotâ
11:39:55.439 [ERROR] [penhab.io.transport.mqtt.MqttService] - Error starting broker connection
Not authorized to connect (5)
at org.eclipse.paho.client.mqttv3.internal.ExceptionHelper.createMqttException(ExceptionHelper.java:24)[216:org.openhab.io.transport.mqtt:1.9.0]
at org.eclipse.paho.client.mqttv3.internal.ClientState.notifyReceivedAck(ClientState.java:773)[216:org.openhab.io.transport.mqtt:1.9.0]
at org.eclipse.paho.client.mqttv3.internal.CommsReceiver.run(CommsReceiver.java:110)[216:org.openhab.io.transport.mqtt:1.9.0]
at java.lang.Thread.run(Thread.java:745)[:1.8.0_112]
My /etc/openhab2/services/mqtt.cfg looks as follows:
watsoniot.url=tcp://myorgid.messaging.internetofthings.ibmcloud.com:1883
watsoniot.clientId=g:myorgid:rpi3:Gateway
watsoniot.user=use-token-auth
watsoniot.pwd=######
I already deleted the /var/lib/openhab2/config/org/openhab/mqtt.config as sugested in this thread and it got rebuilt showing the same values as the mqtt.cfg file, yet with double quotes (" ") around them, eg:
watsoniot.url=âtcp://myorgid.messaging.internetofthings.ibmcloud.com:1883â
There are no other brokers listed in this file either.
Again, I am fairly (if not 100%) certain that the credentials are ok, as the stand-alone client successfully connects and Watson also sees it come online. OH2 however will not connect.
What am I missing? How can I further debug this within OH2?
Many thanks for any pointers!
Ronald
I do not believe that OH MQTT supports encrypted TLS connections. If Watsonâs broker is configured to encrypt the message traffic using SSL/TLS, I donât think you can connect to it.
The error is showing that OH can see the broker and it attempts to connect. If you are certain the credentials are correct this is the main thing I can think of that could cause a Not authorized to connect error.
Thanks for responding, Rich. I have not configured Watson to use SSL/TLS, and neither am I specifying it in MQTTBox on my Mac. MQTTBox does connect to Watson, OH2 does notâŠ
I do not know this Watson service but it seems to me that if you are not encrypting the traffic you potentially expose your username / password to everybody on the internet.
In any case I would try to use tcpdump to see what is going on during the communication and compare it with another tcpdump capture from the successful communication using MQTTBox. By compating the authentication requests I am sure you will see differences that can point you to the right direction
This seems very confusing and not user friendly. Is there a MQTT binding for OpenHab2 on the way?
It depends on what you want to achieve: Iâm using MQTT with mosquitto since openHAB1 without any problems and also the 1.x MQTT binding works flawlessly with openHAB2 âŠ
You saved my life. I was going crazy. Thanks a lot Angelos.