Witam.
Dzisiaj przyszedł mój RPi3 i zacząłem pracę z konfiguracją. Wszystko szło gładko aż do ustawiania MQTT w OH.
Nie mogę zmusić żeby OH gadał z brokerem. Broker Mosquitto zainstalowany automatycznie z openHABian'em. Na PC bez problemu odbieram/wysyłam z niego wszystkie dane przez MQTT.fx . Na OH2 0 rezultatów. konfiguracja mqtt.cfg standardowa:
broker.url=tcp://localhost:1883
broker.clientId=openHABtest
broker.user=xxx
broker.pwd=xxx
I utworzone na szybko do testu items'y:
Switch salon_lampa_gora "Oswietlenie Glowne" {mqtt=">[broker:/salon/lampa/gora/switch/cmd:command:ON:on],>[broker:/salon/lampa/gora/switch/cmd:command:OFF:off]"}
Number d1_mini_temp "Temperatura D1 [%.2f °C]" { mqtt="<[broker:/D1_mini/czujnik_DHT11/Temperature:state:default]"}
Number d1_mini_hum "Wilgotnosc D1" { mqtt="<[broker:/D1_mini/czujnik_DHT11/Humidity:state:default]"}
Na Pc jak jak uruchomiłem OH2 dokładnie z tymi item'sami i mqtt.cfg (tyle że z IP zamiast local) przekopiowanymi z RPi3 wszytsko chodzi od strzała.
Edit:
Z logu niby wszystko jest OK:
2017-12-17 00:52:14.388 [INFO ] [penhab.io.transport.mqtt.MqttService] - MQTT Service initialization completed.
2017-12-17 00:52:14.391 [INFO ] [t.mqtt.internal.MqttBrokerConnection] - Starting MQTT broker connection 'broker'
Zdaję się na innych, z resztą lecę do przodu, ale z MQQ nie mogę się dogadać :/
a w D1 Mini zmieniłeś MQTT Broker na tego linuxowego?
Protocal: OpenHAB MQTT
Ale 2 Sonnoffy też nie chcą gadać, jak włączę naraz 2 OH z identycznymi item sami to pod tym na Windowsie wszystko odczytuje bez problemu, a na RPi ani słychu.
Edit:
Przy przeinstalowaniu brokera w logu OH poprawnie się rozłączył najpierw a później połączył.:
2017-12-17 10:29:36.662 [ERROR] [t.mqtt.internal.MqttBrokerConnection] - MQTT connection to broker was lost
at org.eclipse.paho.client.mqttv3.internal.CommsReceiver.run(CommsReceiver.java:146)[183:org.openhab.io.transport.mqtt:1.10.0]
at org.eclipse.paho.client.mqttv3.internal.wire.MqttInputStream.readMqttWireMessage(MqttInputStream.java:65)[183:org.openhab.io.transport.mqtt:1.10.0]
at org.eclipse.paho.client.mqttv3.internal.CommsReceiver.run(CommsReceiver.java:107)[183:org.openhab.io.transport.mqtt:1.10.0]
2017-12-17 10:29:36.681 [ERROR] [t.mqtt.internal.MqttBrokerConnection] - MQTT connection to 'broker' was lost: Connection lost : ReasonCode 32109 : Cause : null
2017-12-17 10:29:36.683 [INFO ] [t.mqtt.internal.MqttBrokerConnection] - Starting connection helper to periodically try restore connection to broker 'broker'
2017-12-17 10:29:46.689 [INFO ] [t.mqtt.internal.MqttBrokerConnection] - Starting MQTT broker connection 'broker'
Edit:
Ktoś coś?
Resetowałem/przeinstalowywałem brokera, nawet reinstalowałem openhabiana i dalej to samo :/
a jak wyślesz z linuxa - linii poleceń wiadomość do MQTT brokera to działa?
Instalacja klienta gdybyś nie miał
sudo apt-get install mosquitto-clients
Włącz:
mosquitto_pub -h localhost -p 1883 -u 'nazwa-usera' -P 'hasło-usera' -t '/salon/lampa/gora/switch/cmd' -m 'on'
Wyłącz
mosquitto_pub -h localhost -p 1883 -u 'nazwa-usera' -P 'hasło-usera' -t '/salon/lampa/gora/switch/cmd' -m 'off'
Da się sterować bez problemu.
Ewidentnie coś z OH, a nie z samym brokerem czy RPi.
Edit:
Pomogło zainstalowanie MQTT Bindinga z pliku addons.cfg, a nie z Paper UI.
Jutro sprawdzę na czystym systemie zainstalować z Paper UI jeszcze raz i zobaczę czy problem się powtórzy.
możesz załączyć
- mqtt.cfg
- openhab.log
Jak tylko wrócę do domu.
- Konfiguracja mqtt.cfg standardowa, taka jak wyżej tylko inny clientId.
- Log jak będę w domu wieczorem.
Jesli nie masz absolutnie nic więcej w pliku mqtt.cfg to co napisałeś to nie podłączaj, jeśli masz np. Pozostawione komentarze to chciałbym zobaczyć plik, żeby pomoc, rozwiązywałem już problem z mqtt tygodniami i okalzalo się ze była jedna linia odkomentowana w mqtt.cfg która wszystko rozwalał
Niestety log przepadł :/
Jedyne co pamiętam to dziwny plik mqtt.cfg w openhab2-userdata\config\org\openhab
broker.clientId=//"openHAB"//
broker.pwd=//"xxxxx"//
broker.url=//"tcp://localhost:1883"//
broker.user=//"openhabian"//
service.pid=//"org.openhab.mqtt"//
Tylko nie pamiętam dokładnie czy były 2 ukośniki czy jeden. W każdym razie nie powinno ich być, w services plik konfiguracyjny był na 100% dobry. Po usunięciu go z userdata, generowany był znowu błędny.
a jak wyślesz z linuxa - linii poleceń wiadomość do MQTT brokera to działa?
Instalacja klienta gdybyś nie miał
sudo apt-get install mosquitto-clients
Włącz:
mosquitto_pub -h localhost -p 1883 -u 'nazwa-usera' -P 'hasło-usera' -t '/salon/lampa/gora/switch/cmd' -m 'on'Wyłącz
mosquitto_pub -h localhost -p 1883 -u 'nazwa-usera' -P 'hasło-usera' -t '/salon/lampa/gora/switch/cmd' -m 'off'
...prawie dwa dni straciłem starając połączyć się przez "mosquitto_pub" wpisując 'on' i 'off' małymi literami. Kiedy zmieniłem je na kapitaliki 'ON' 'OFF' wszystko ruszyło 🙂 Może przyda się komuś ta informacja.
a jak wyślesz z linuxa - linii poleceń wiadomość do MQTT brokera to działa?
Instalacja klienta gdybyś nie miał
sudo apt-get install mosquitto-clients
Włącz:
mosquitto_pub -h localhost -p 1883 -u 'nazwa-usera' -P 'hasło-usera' -t '/salon/lampa/gora/switch/cmd' -m 'on'Wyłącz
mosquitto_pub -h localhost -p 1883 -u 'nazwa-usera' -P 'hasło-usera' -t '/salon/lampa/gora/switch/cmd' -m 'off'...prawie dwa dni straciłem starając połączyć się przez "mosquitto_pub" wpisując 'on' i 'off' małymi literami. Kiedy zmieniłem je na kapitaliki 'ON' 'OFF' wszystko ruszyło 🙂 Może przyda się komuś ta informacja.
O ile się nie mylę to małymi literami komendy są wydawane w nowym oprogramowaniu, na starszym były dużymi.
- tak, zgadza się @radek, trochę zmieniałem w nowym oprogramowaniu, w nowych włączanie / wyłączanie jest: on, off, toggle, w starym było ON, OFF
- wielkość liter mam znaczenie
- tutaj jest aktualny opis MQTT API
- sugeruję używać już jednej z nowych wersji oprogramowania, ale oczywiście stara też działa
wczoraj zainstalowałem OH2.2 i rozsypał mi się OH MQTT Binding.
Problem rozwiązałem odinstalowując mqtt-action używając Paper-UI i odinstalowałem mqtt-binding i zainstalowałem ponownie