tele/HzBa/LWT = Online (beibehalten) ??? Er soll damit aufhören :)

Die alternative Firmware für ESP8266 based devices

Moderatoren: seppy, udo1toni

Antworten
Skully
Beiträge: 25
Registriert: 26. Jan 2018 21:11

tele/HzBa/LWT = Online (beibehalten) ??? Er soll damit aufhören :)

Beitrag von Skully »

Code: Alles auswählen

14:48:09 MQT: Verbindung fehlgeschlagen aufgrund von 192.168.178.42:1883, rc -2. Wiederversuch in 10 s
14:48:20 MQT: Verbindungsversuch...
14:48:25 MQT: Verbindung fehlgeschlagen aufgrund von 192.168.178.42:1883, rc -2. Wiederversuch in 10 s
14:48:35 MQT: Verbindungsversuch...
14:48:51 MQT: Verbindung fehlgeschlagen aufgrund von 192.168.178.42:1883, rc -4. Wiederversuch in 10 s
14:49:03 MQT: Verbindungsversuch...
14:49:03 MQT: verbunden
14:49:03 MQT: tele/HzBa/LWT = Online (beibehalten)
14:49:03 MQT: cmnd/HzBa/POWER = 
14:49:03 MQT: stat/HzBa/RESULT = {"POWER":"ON"}
14:49:03 MQT: stat/HzBa/POWER = ON
Hallo zusammen,
ich benötige mal wieder euere Hilfe. Das ist ein Fehler, der mich seit gut einem Jahr quält und ich einfach keine Lösung dafür finde. Sobald mein Sonoff im Bad die Verbindung verliehrt schaltet er nach dem neuverbinden das Gerät auf "ON". Ich habe schon einiges darüber gelesen das es sich hier um die Funktion "last will" handelt. Doch ich weiß nicht wie ich das in meinem Tasmota oder über MQTT konfiguriere. Mir ist aktuell auch nicht ganz klar, ob das der MQTT Broker verursacht oder das Sonoff Gerät. Im MQTT Broker kann ich dies Konfigueriern:
mqtt.cfg (Openhab 2)

# Optional. Defines the last will and testament that is sent when this client goes offline
# Format: topic:message:qos:retained <br/>
#<broker>.lwt=<last will definition>

Doch so wie ich das deute ist das der "letzte Wille" des MQTT Brokers. Ich würde aber gerne den letzten Willen des Tasmota Gerätes deaktivieren. Zumindest so das er den letzen Status vor dem verlieren der Verbindung bei behält.

Diesen Lösungsansatzt habe ich auch schon ein paar mal gefunden, doch das Ding macht immer noch das was es will (bzw. was vorkonfiguriert ist.)

SaveData 0
SetOption0 0
WifiConfig 5
SaveData 1

Tasmota ist auf Version 8.3.1

Hat jemand vielleicht das gleiche Problem und eine Lösung?

Benutzeravatar
udo1toni
Beiträge: 13948
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: tele/HzBa/LWT = Online (beibehalten) ??? Er soll damit aufhören :)

Beitrag von udo1toni »

Also, das hat erst mal nichrs mit LWT zu tun.
Es gibt hier zwei verschiedene Dinge zu unterscheiden. Tritt das Problem auf, wenn das Sonoff vom Strom getrennt war? Dann könnte es sein dass Power On nach Stromausfall aktiviert ist.
Tritt der Fehler auch auf wenn lediglich der Kontak zum Broker verloren gegangen war, ist vermutlich irgendwann mal eine Nachricht ON mit dem Flag Retain=true gesendet worden. Abhilfe ist dann, des Topic gezielt im Broker zu löschen.

Am einfachsten geht das indem Du ALLE retained Messages löscht (guggst Du hier: https://community.openhab.org/t/clearin ... ages/58221:) )

Gesendet von meinem SM-G973F mit Tapatalk


openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Skully
Beiträge: 25
Registriert: 26. Jan 2018 21:11

Re: tele/HzBa/LWT = Online (beibehalten) ??? Er soll damit aufhören :)

Beitrag von Skully »

Hallo udo1toni,
ich bin begeistert, vielen Dank für deine Hilfe! Es lag so wie es scheint tatsächlich an den retained Messages :D

Die Lösung war wie unter deinen Link beschrieben :
Clearing ALL retained messages

First we have to stop the mosquitto broker.

Code: Alles auswählen

        sudo systemctl stop mosquitto.service
        or
        sudo service mosquitto stop
Delete the mosquitto.db containing all the stored message data in the persistence. By default, located in /var/lib/mosquitto/mosquitto.db

Code: Alles auswählen

      sudo rm /var/lib/mosquitto/mosquitto.db
Restart the mosquitto service

Code: Alles auswählen

        sudo systemctl start mosquitto.service
        or
        sudo service mosquitto start
Zusätlich habe ich noch "SetOption0 1" damit der letzte gespeicherte Wert bei einem Neustart wieder gesetzt wird.

PS: Eigentlich müsste man ein kleines Programm schreiben, dass wöchentlich die "retained messages" löscht.

Benutzeravatar
udo1toni
Beiträge: 13948
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: tele/HzBa/LWT = Online (beibehalten) ??? Er soll damit aufhören :)

Beitrag von udo1toni »

Nein, ein solches Programm braucht man nicht. Stattdessen sollte man Retained = true nur in den Fällen nutzen, wo es sinnvoll ist. :)
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Antworten