Hallo liebes Forum,
ich habe, so glaube ich, ein Konfigurationsproblem.
Zur Ausgangssitutation, ich habe einen Sonoff Basic mit Tasmota geflasht (6.5.0).
An diesem Sonoff Basic hängt ein DHT22 Temperatursensor, der direkt mit den GPIO's verbunden ist.
Innerhalb von Tasmota habe ich folgende Konfiguration vorgenommen:
Configuration -> Configure Module ->Sonoff Basic (1) und unter GPIO14 Sensor habe ich SI7021(3) ausgewählt, siehe Screenshot.
Configuration -> Configure MQTT -> die IP von meinem Host eingetragen und als Topic habe ich "fl_Luefter" gewählt, siehe Screenshot.
Configuration -> Configure Other -> Friendly Name 1 (Sonoff) -> habe ich "fl_Luefter" gewählt, siehe Screenshot.
Das ON / OFF Schalten funktioniert einwandfrei über das Tasmota Frontend, jedoch wird der Status (ON / OFF) nicht an FHEM mitgeteilt.
Das ON / OFF Schalten in FHEM funktioniert einwandfrei! Der Status (ON / OFF) wird im Tasmota Frontend auch korrekt übernommen.
Mein Device in FHEM habe ich wie folgt definiert:
Internals:
FUUID 5d38902e-f33f-5a17-0f5d-2ac3df55a325949f
IODev myBroker
NAME fl_Luefter
NR 970
STATE ON
TYPE MQTT_DEVICE
Helper:
DBLOG:
SI7021_Humidity:
myDbLog:
TIME 1570606269.82745
VALUE 41
SI7021_Temperature:
myDbLog:
TIME 1570606815.5129
VALUE 25.6
humidity:
myDbLog:
TIME 1570606269.82745
VALUE 41
sensor:
myDbLog:
TIME 1570606815.50699
VALUE {"Time":"2019-10-09T08:40:16","SI7021":{"Temperature":25.6,"Humidity":41.0},"TempUnit":"C"}
state:
myDbLog:
TIME 1570606832.40367
VALUE ON
temperature:
myDbLog:
TIME 1570606815.5129
VALUE 25.6
READINGS:
2019-10-09 09:40:15 SI7021_Humidity 41
2019-10-09 09:40:15 SI7021_Temperature 25.6
2019-10-09 09:40:15 TempUnit C
2019-10-09 09:40:15 Time 2019-10-09T08:40:16
2019-10-09 09:31:09 humidity 41
2019-10-09 09:40:15 sensor {"Time":"2019-10-09T08:40:16","SI7021":{"Temperature":25.6,"Humidity":41.0},"TempUnit":"C"}
2019-10-09 09:40:32 state ON
2019-10-09 09:40:15 temperature 25.6
2019-10-09 09:40:32 transmission-state outgoing publish sent
message_ids:
publishSets:
:
topic cmnd/fl_Luefter/POWER
values:
ON
OFF
sets:
OFF
ON
subscribe:
tele/fl_Luefter/SENSOR
subscribeExpr:
^tele\/fl_Luefter\/SENSOR$
subscribeQos:
tele/fl_Luefter/SENSOR 0
subscribeReadings:
tele/fl_Luefter/SENSOR:
cmd
name sensor
Attributes:
DbLogInclude temperature,humidity
IODev myBroker
alias Luefter
devStateIcon ON:Ventilator_wind OFF:Ventilator_fett
event-on-change-reading state,temperature,humidity,SI7021_Humidity,SI7021_Temperature,sensor
genericDeviceType outlet
homebridgeMapping On=state,values=OFF:off;ON:on,cmdOff=OFF,cmdOn=ON
icon hue_filled_outlet
publishSet ON OFF cmnd/fl_Luefter/POWER
room Flur,Homekit,QNAP,Tasmota
subscribeReading_sensor tele/fl_Luefter/SENSOR
userReadings humidity:SI7021_Humidity.* { my $v = ReadingsVal($NAME,'SI7021_Humidity',''); $v; },
temperature:SI7021_Temperature.* { my $v = ReadingsVal($NAME,'SI7021_Temperature',''); $v; }
webCmd ON:OFF
Nun ist die Frage, wo ist mein Fehler?
Warum wird der Status (ON / OFF), wenn ich diesen über das Tasmota Frontend schalte, nicht korrekt in FHEM angezeigt?
Temperatur und Luftfeuchtigkeit werden korrekt angezeigt.
Gruß
Mathze
Moin,
Ich glaube, dir fehlt noch ein Attr.:
attr subscribeReading_Power fl_Luefter stat/fl_Luefter/RESULT
Gruß
Hans
Hallo Hans, danke für den Anstoß.
Habe es nun wie folgt gelöst:
attr fl_Luefter subscribeReading_state stat/fl_Luefter/POWER
Nun klappt es, danke.
Gruß
Mathze