Hi, i´m on OH 2.4 snapshot #1512 and MQTT2 Binding. I have installed a mosquitto broker on the same machine.
Since a few days, my mqtt stopps working after about 5 minutes, when i make a server reboot. Then i only can get tele-messages. But i can´t send cmnd anymore. so i can´t send commands (power on/off) or send status-commands (status 2 for firmware-version) to get back an answer.
My 4 sonoff devices are flashed with tasmota 6.4.1. I have 2x s20, 1x pow r2 and 1x pow. It worked the first few days, but since i connected the pow, it stops working after about 5 minutes.
I get the following error messages in the log:
2019-03-02 16:06:00.001 [WARN ] [nhab.binding.mqtt.action.MQTTActions] - MQTT publish to cmnd/sonoff-pow2-1/status failed!
2019-03-02 16:06:00.001 [WARN ] [nhab.binding.mqtt.action.MQTTActions] - MQTT publish to cmnd/sonoff-pow-1/status failed!
In the first 5 minutes, i can power on/off all my 4 tasmota-sonoffs, but after 5 minutes, when the warnings beginn, i´m not able to power on/off the devices anymore. But i still get the tele-updates every 5 minutes.
I installed the openhab-MQTT-Broker, but no change. Still warnings after about 5 minutes and now i can´t control the sonoffs anymore. After server reboot, all is ok (for the first 5 minutes).
So the MQTT-Broker is not the problem.
Maybe a problem with the binding? Can i support something to localize the problem?
Did it work before?
If yes, what software did you change? I has Tasmota 6.4 installed, observed connection issues and reverted back to 6.3
I started with MQTT this week and i installed only 6.4.1
As i changed my broker to the openhab integrated one, i now get this warnings:
2019-03-02 21:00:54.083 [WARN ] [moquette.spi.impl.SessionsRepository] - Session does not exist. CId=DVES_A03DCF
2019-03-02 21:00:54.084 [WARN ] [moquette.spi.impl.SessionsRepository] - Session does not exist. CId=DVES_A03DCF
2019-03-02 21:00:54.133 [WARN ] [netty.channel.DefaultChannelPipeline] - An exceptionCaught() event was fired, and it reached at the tail of the pipeline. It usually means the last handler in the pipeline did not handle the exception.
java.lang.IllegalStateException: Target session DVES_A03DCF is connected but doesn't anymore subscribed to [filter:cmnd/sonoff-pow-1/#, cliID: DVES_A03DCF, qos: null, active: true]
at io.moquette.spi.impl.subscriptions.CTrieSubscriptionDirectory.match(CTrieSubscriptionDirectory.java:116) ~[258:org.openhab.io.mqttembeddedbroker:18.104.22.168903012159]
at io.moquette.spi.impl.subscriptions.CTrieSubscriptionDirectory.matches(CTrieSubscriptionDirectory.java:89) ~[258:org.openhab.io.mqttembeddedbroker:22.214.171.124903012159]
many many lines...
Since you started with mosquito, did you stop that broker and did you connect openhab to the embeded one instead of mosquito?
Yes, i edited the things and items file, did openhab reboot. Edited the sonoffs.
I only flasherd my latest added sonoff pow to tasmota 6.3.0 and now it seems to work again.
I also changed back to mosquitto, because with the oh-integrated broker i got many warnings/errors… But i think it worked with the integrated broker also.