Hallo und guten Abend,
mein Ziel: Ein Tasmota-Device per RETAIN-MQTT-Message aus dem DeepSleep holen bzw genauer: den Zyklus unterbrechen.
Dazu habe ich:
- Im MQTT2_DEVICE einen entsprechenden setList Eintrag DeepSleepOFF gemacht und ausgeführt.
Internals:
CID tasmota029
DEF tasmota029
FUUID 64fa1db9-f33f-2b6d-77b5-990ea7643dca714b
FVERSION 10_MQTT2_DEVICE.pm:0.279350/2023-09-05
IODev MQTT2_FHEM_Server
LASTInputDev MQTT2_FHEM_Server
MQTT2_FHEM_Server_CONN MQTT2_FHEM_Server_192.168.5.211_65173
MQTT2_FHEM_Server_MSGCNT 8
MQTT2_FHEM_Server_TIME 2023-09-10 23:30:53
MSGCNT 8
NAME MQTT2_tasmota029
NR 833
STATE MPC1700 (V_OUT) 3.27 V<br>
HD-38 (V_OUT) 0.74 V<br>
TP4056/18650 (V_OUT) 3.94 V<br>
PV (V_OUT) 0.02 V
TYPE MQTT2_DEVICE
eventCount 8
JSONMAP:
Channel_0 0
Channel_1 0
Channel_2 0
Channel_3 0
Channel_4 0
Channel_5 0
Color 0
Dimmer 0
HSBColor 0
POWER1 0
POWER2 0
POWER3 0
POWER4 0
READINGS:
2023-09-10 23:30:53 A0_V 3.27
2023-09-10 23:30:53 A1_V 0.74
2023-09-10 23:30:53 A2_V 3.94
2023-09-10 23:30:53 A3_V 0.02
2023-09-10 23:30:53 ADS1115_A0 17456
2023-09-10 23:30:53 ADS1115_A1 3952
2023-09-10 23:30:53 ADS1115_A2 16224
2023-09-10 23:30:53 ADS1115_A3 64
2023-09-10 22:56:11 DeepSleepOFF set
2023-09-10 23:30:53 Heap 22
2023-09-10 23:07:10 IODev MQTT2_FHEM_Server
2023-09-10 23:30:53 LWT Offline
2023-09-10 23:30:53 LoadAvg 42
2023-09-10 23:30:53 MqttCount 1
2023-09-10 23:30:53 Sleep 50
2023-09-10 23:30:53 SleepMode Dynamic
2023-09-10 23:30:53 Time 2023-09-10T23:30:53
2023-09-10 23:30:53 Uptime 0T00:00:09
2023-09-10 23:30:53 UptimeSec 9
2023-09-10 23:30:53 Wifi_AP 1
2023-09-10 23:30:53 Wifi_BSSId CC:CE:1E:36:31:6A
2023-09-10 23:30:53 Wifi_Channel 11
2023-09-10 23:30:53 Wifi_Downtime 0T00:00:03
2023-09-10 23:30:53 Wifi_LinkCount 1
2023-09-10 23:30:53 Wifi_Mode 11n
2023-09-10 23:30:53 Wifi_RSSI 76
2023-09-10 23:30:53 Wifi_SSId mitohnekabel2.4
2023-09-10 23:30:53 Wifi_Signal -62
2023-09-10 21:31:31 attrTemplateVersion 20210523
hmccu:
Attributes:
DbLogExclude .*
autocreate 0
comment NOTE: For on-for-timer SetExtensions are used. You may add on-for-timer option running on the device. The following is limited to 1h max duration, but will not affect future simple "on" commands:<br>on-for-timer {my $duration = $EVTPART1*10; 'cmnd/cmnd/tasmota029/Backlog POWER1 1; delay '.$duration.'; POWER1 0'}<br>See the "Praxisbeispiele" in the wiki for "pulseTime1" alternative option and it's restrictions.
event-on-change-reading .*
icon humidity
jsonMap POWER1:0 POWER2:0 POWER3:0 POWER4:0 Dimmer:0 Channel_0:0 Channel_1:0 Channel_2:0 Channel_3:0 Channel_4:0 Channel_5:0 HSBColor:0 Color:0
model tasmota_basic_state_power1
readingList tele/tasmota029/LWT:.* LWT
tele/tasmota029/STATE:.* { json2nameValue($EVENT,'',$JSONMAP) }
tele/tasmota029/SENSOR:.* { json2nameValue($EVENT,'',$JSONMAP) }
tele/tasmota029/INFO.:.* { $EVENT =~ m,^..Info[1-3]..(.+).$, ? json2nameValue($1,'',$JSONMAP) : json2nameValue($EVENT,'',$JSONMAP) }
tele/tasmota029/UPTIME:.* { json2nameValue($EVENT,'',$JSONMAP) }
stat/tasmota029/POWER1:.* state
stat/tasmota029/RESULT:.* { json2nameValue($EVENT,'',$JSONMAP) }
room Garten->Terrasse
setList DeepSleepTime:textField cmnd/tasmota029/DeepSleepTime $EVTPART1
DeepSleepON:noArg cmnd/tasmota029/DeepSleepTime 900
DeepSleepOFF:noArg cmnd/tasmota029/DeepSleepTime:r 0
on:noArg cmnd/tasmota029/POWER1 1
toggle:noArg cmnd/tasmota029/POWER1 2
setOtaUrl:textField cmnd/tasmota029/OtaUrl $EVTPART1
upgrade:noArg cmnd/tasmota029/upgrade 1
setStateList on off toggle
stateFormat MPC1700 (V_OUT) A0_V V<br>
HD-38 (V_OUT) A1_V V<br>
TP4056/18650 (V_OUT) A2_V V<br>
PV (V_OUT) A3_V V
userReadings A0_V {
return (sprintf("%.2f" , ReadingsNum($NAME,'ADS1115_A0',0) / 2**15 * 6.144 / 1 * 1));
},
A1_V {
return (sprintf("%.2f" , ReadingsNum($NAME,'ADS1115_A1',0) / 2**15 * 6.144 / 1 * 1));
},
A2_V {
return (sprintf("%.2f" , ReadingsNum($NAME,'ADS1115_A2',0) / 2**15 * 6.144 / 680 * (680 + 200)));
},
A3_V {
return (sprintf("%.2f" , ReadingsNum($NAME,'ADS1115_A3',0) / 2**15 * 6.144 / 390 * (390 + 200)));
}
- Im MQTT2_SERVER ein set publish -r cmnd/tasmota029/DeepSleepTime 0 ausgeführt.
Internals:
CONNECTS 59
Clients :MQTT2_DEVICE:MQTT_GENERIC_BRIDGE:
ClientsKeepOrder 1
DEF 1883 global
FD 15
FUUID 5e1231ca-f33f-2b6d-731f-efaa1666b9b81cfc
FVERSION 00_MQTT2_SERVER.pm:0.276540/2023-06-04
NAME MQTT2_FHEM_Server
NR 132
PORT 1883
STATE Initialized
TYPE MQTT2_SERVER
eventCount 95
MatchList:
1:MQTT2_DEVICE ^.
2:MQTT_GENERIC_BRIDGE ^.
READINGS:
2023-09-10 23:10:19 lastPublish cmnd/tasmota029/DeepSleepTime:0
2023-09-10 23:15:54 nrclients 24
2023-09-10 23:07:00 state Initialized
clients:
MQTT2_FHEM_Server_192.168.5.212_60197 1
MQTT2_FHEM_Server_192.168.5.213_54490 1
MQTT2_FHEM_Server_192.168.5.214_62199 1
MQTT2_FHEM_Server_192.168.5.215_62160 1
MQTT2_FHEM_Server_192.168.5.216_63032 1
MQTT2_FHEM_Server_192.168.5.217_56960 1
MQTT2_FHEM_Server_192.168.5.218_57329 1
MQTT2_FHEM_Server_192.168.5.220_54962 1
MQTT2_FHEM_Server_192.168.5.221_51374 1
MQTT2_FHEM_Server_192.168.5.222_55529 1
MQTT2_FHEM_Server_192.168.5.223_53599 1
MQTT2_FHEM_Server_192.168.5.228_59915 1
MQTT2_FHEM_Server_192.168.5.229_56807 1
MQTT2_FHEM_Server_192.168.5.230_59820 1
MQTT2_FHEM_Server_192.168.5.232_55012 1
MQTT2_FHEM_Server_192.168.5.233_64781 1
MQTT2_FHEM_Server_192.168.5.234_60796 1
MQTT2_FHEM_Server_192.168.5.235_65287 1
MQTT2_FHEM_Server_192.168.5.240_59121 1
MQTT2_FHEM_Server_192.168.5.241_60412 1
MQTT2_FHEM_Server_192.168.5.242_61072 1
MQTT2_FHEM_Server_192.168.5.244_50204 1
MQTT2_FHEM_Server_192.168.5.245_59053 1
MQTT2_FHEM_Server_192.168.5.246_57008 1
retain:
Attributes:
DbLogExclude .*
autocreate simple
hideRetain 0
room InputOutput->MQTT2
Geklappt hat das leider nicht. Nun war meine erste Idee, mir die Liste aller RETAIN Messages anzuschauen. Und da benötige ich Eure Hilfe. Denn obwohl ich das Attribut hideRetain auf 0 gesetzt habe, sehe ich kein READING. Und auch das Feld im List hinter retain: bleibt leer.
Hat bitte jemand einen Tip, was.ich evt. vergessen habe, um Retains erzeugen zu können? Oder wie ich mir diese - falls doch gelungen - anzeigen lassen kann?
Danke und schlaft gut!
Martin
Attribut respectRetain 1 setzen ?
Danke vielmals!
Habe den ganzen Abend gesucht und hätte noch ewig weiter suchen können.
Attribut angelegt, Reading da, DeepSleep aufgehoben.
DANKE!!!