Guten Morgen meine lieben.
IODev = MQTT2_Server
Ich habe mit einem Mqqt device beim zusammenspiel vom reading und state ein Problem.
Ich habe ein mqtt device in fhem angelegt .. (normal läuft alles über einen esp32).
Bei einem normalen schalter an/aus werden die Readings nicht aktualisiert wenn ich aus fhem schalte!
Beispiel bzw TEST Konfiguration:
Schalter in Android app MQTT Dash angelegt und auch retained aktiviert!
Topic:
aziiinrw/MQTT_Client01/Test/schalter_2
Wenn ich am device, aus der App MQTT Dash schalte, kommen die Readings super in fhem an, jedoch state ändert sich nicht.
Schalte ich in fhem, ändert es nichts an den Readings obwohl das device in wirklichkeit geschaltet hat (nach Kontrolle in mqqt dash)
Standart Konfiguration wäre so:
List:
Internals:
DEVICETOPIC schalter_3
FUUID 5c8368da-f33f-599c-c0c2-6bda96fec6c00ed2
IODev myBroker
LASTInputDev myBroker
MSGCNT 9
NAME schalter_3
NR 501
STATE off
TYPE MQTT2_DEVICE
myBroker_MSGCNT 9
myBroker_TIME 2019-03-15 22:21:05
READINGS:
2019-03-15 22:21:05 schalter_3 1
2019-03-15 22:27:27 state off
Attributes:
IODev myBroker
readingList aziiinrw/MQTT_Client01/Test/schalter_3:.* schalter_3
room MQTT2_DEVICE
setList on aziiinrw/MQTT_Client01/Test/schalter_3 1
off aziiinrw/MQTT_Client01/Test/schalter_3 0
Wie zu sehen, reading schalter_3 = 1 (on)
...state bleib bei off
Hier wäre eine Beispielkonfiguration wo Fhem auf die Schaltzustände reagiert, aber wenn ich aus fhem schalte sollte nun auch das reading vom device geändert werden - das tut es leider nicht:
Internals:
DEVICETOPIC schalter_2
FUUID 5c8368b7-f33f-599c-2239-cabce5271307e1aa
IODev myBroker
LASTInputDev myBroker
MSGCNT 42
NAME schalter_2
NR 500
STATE on
TYPE MQTT2_DEVICE
myBroker_MSGCNT 42
myBroker_TIME 2019-03-16 08:47:42
READINGS:
2019-03-16 08:47:42 schalter_2 1
2019-03-16 08:51:21 state 0
Attributes:
IODev myBroker
eventMap 1:on 0:off
readingList aziiinrw/MQTT_Client01/Test/schalter_2:.* schalter_2
room MQTT2_DEVICE
setList 1 aziiinrw/MQTT_Client01/Test/schalter_2 1
0 aziiinrw/MQTT_Client01/Test/schalter_2 0
stateFormat schalter_2
Ich hätte gern dass egal von wo geschaltet wird, mir den Schaltzustand anzeigt.
Kann mir jemand sagen was hier falsch läuft??
Ich hoffe dass ich mich verständlich ausgedrückt habe.
Wünsche ein tolles Wochenende
Beim Schalten wird state direkt gesetzt, es sei denn man hat den Befehl in setStateList erwaehnt, dann wird set_<befehl> nach state geschrieben, damit man gesendet vs. bestaetigt unterscheiden kann.
Beim Empfang muss man angeben, was angezeigt wird, dafuer gibt es mehrere Moeglichkeiten:
- stateFormat
- mit userReading namens state
- indem man in readingList state direkt zuweist
Möchte erstmal danke für die Antwort sagen..
Bin noch am ausprobieren, leider bisher ohne Erfolg.