Hallo,
hat vielleicht jemand seinen Stromzaehler mittels Tasmota und einem IR Lesekopf eingebunden?
Soweit bekomme ich die readings angezeigt, also eigentlich funktioniert alles aber es sieht nicht so schön aus. Hatte einfach das Tasmota basic template genommen.
Hier mal ein list vom mqtt2 device:
Internals:
CID DVES_7C6865
DEF DVES_7C6865
FUUID 660d6e91-f33f-6571-83ac-0bf9ec1172c9d893
IODev myBroker2
LASTInputDev myBroker2
MSGCNT 3486
NAME MQTT2_DVES_7C6865
NR 533
STATE 215.02 W
TYPE MQTT2_DEVICE
eventCount 3480
myBroker2_CONN myBroker2_192.168.178.79_57052
myBroker2_MSGCNT 3486
myBroker2_TIME 2024-04-03 17:14:31
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
OLDREADINGS:
READINGS:
2024-04-03 17:11:50 Heap 15
2024-04-03 16:59:12 IODev myBroker2
2024-04-03 17:11:50 LoadAvg 21
2024-04-03 17:11:50 MqttCount 2
2024-04-03 17:14:31 SML_16_7_0 215.02
2024-04-03 17:11:50 SML_1_8_0 13669.07161510
2024-04-03 17:06:50 SML_1_8_1 1366802948.874
2024-04-03 17:06:50 SML_1_8_2 101700.000
2024-04-03 17:11:50 SML_2_8_0 147.59036823
2024-04-03 17:11:50 SML_32_7_0 237.7
2024-04-03 17:14:31 SML_36_7_0 -26.49
2024-04-03 17:11:50 SML_52_7_0 238.8
2024-04-03 17:14:31 SML_56_7_0 48.28
2024-04-03 17:11:50 SML_72_7_0 237.9
2024-04-03 17:14:31 SML_76_7_0 193.23
2024-04-03 17:11:20 SML_CMD restart
2024-04-03 17:01:18 SaveData on
2024-04-03 17:01:18 SetOption26 on
2024-04-03 17:11:50 Sleep 50
2024-04-03 17:11:50 SleepMode Dynamic
2024-04-03 17:01:17 StateText1 off
2024-04-03 17:01:17 StateText2 on
2024-04-03 17:01:17 StateText3 toggle
2024-04-03 17:01:17 StateText4 hold
2024-04-03 17:14:31 Time 2024-04-03T17:14:31
2024-04-03 17:11:50 Uptime 0T00:20:14
2024-04-03 17:11:50 UptimeSec 1214
2024-04-03 17:11:50 Wifi_AP 1
2024-04-03 17:11:50 Wifi_BSSId 2C:91:AB:51:80:AC
2024-04-03 17:11:50 Wifi_Channel 1
2024-04-03 17:11:50 Wifi_Downtime 0T00:00:05
2024-04-03 17:11:50 Wifi_LinkCount 1
2024-04-03 17:11:50 Wifi_Mode 11n
2024-04-03 17:11:50 Wifi_RSSI 70
2024-04-03 17:11:50 Wifi_SSId TheGate
2024-04-03 17:11:50 Wifi_Signal -65
2024-04-03 17:01:17 attrTemplateVersion 20210523
hmccu:
Attributes:
DbLogExclude 1
alias Stromzaehler
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/tasmota_7C6865/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 .*
genericDeviceType ignore
icon hue_filled_outlet
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/tasmota_7C6865/LWT:.* LWT
tele/tasmota_7C6865/STATE:.* { json2nameValue($EVENT,'',$JSONMAP) }
tele/tasmota_7C6865/SENSOR:.* { json2nameValue($EVENT,'',$JSONMAP) }
tele/tasmota_7C6865/INFO.:.* { $EVENT =~ m,^..Info[1-3]..(.+).$, ? json2nameValue($1,'',$JSONMAP) : json2nameValue($EVENT,'',$JSONMAP) }
tele/tasmota_7C6865/UPTIME:.* { json2nameValue($EVENT,'',$JSONMAP) }
stat/tasmota_7C6865/POWER1:.* state
stat/tasmota_7C6865/RESULT:.* { json2nameValue($EVENT,'',$JSONMAP) }
room MQTT2_DEVICE,Photovoltaik
setList off:noArg cmnd/tasmota_7C6865/POWER1 0
on:noArg cmnd/tasmota_7C6865/POWER1 1
toggle:noArg cmnd/tasmota_7C6865/POWER1 2
setOtaUrl:textField cmnd/tasmota_7C6865/OtaUrl $EVTPART1
upgrade:noArg cmnd/tasmota_7C6865/upgrade 1
stateFormat SML_16_7_0 W
Gruß Holger
Zitathat vielleicht jemand seinen Stromzaehler mittels Tasmota und einem IR Lesekopf eingebunden?
Ja, ich. Ohne Template.
Schaut noch haesslicher aus, aber ich schaue die MQTT2_DEVICE Instanz nie an, sondern nur die dazugehoerige SVG.
Per userReading wird das Delta aus dem gemeldeten total berechnet, und angezeigt.
Da es v.a. von der Konfiguration des SML-Scripts abhängt, wann was gesendet wird (es gibt bei ESP-Familie einen thread dazu, auch zur Frage, ob es sinnvoll ist, teleperiode anzupassen...), würde ich ggf. einfach ein jsonMap setzen, um "allgemeinverständliche Readings" zu bekommen. Z.B.:
SML_16_7_0:power
Zitat von: Beta-User am 03 April 2024, 19:55:48einfach ein jsonMap setzen, um "allgemeinverständliche Readings" zu bekommen. Z.B.:
SML_16_7_0:power
Hallo, kannst du das vielleicht genauer erklären? Insbesondere auf die Uhrzeit die auch im Sekundentakt übertragen wird, könnte ich gut verzichten.
teleperiode habe ich mal auf 10 gesetzt, die readings kommen trotzdem jede Sekunde.
Zitat von: The-Holgi am 04 April 2024, 05:36:36Zitat von: Beta-User am 03 April 2024, 19:55:48einfach ein jsonMap setzen, um "allgemeinverständliche Readings" zu bekommen. Z.B.:
SML_16_7_0:power
Hallo, kannst du das vielleicht genauer erklären? Insbesondere auf die Uhrzeit die auch im Sekundentakt übertragen wird, könnte ich gut verzichten.
teleperiode habe ich mal auf 10 gesetzt, die readings kommen trotzdem jede Sekunde.
Also: jsonmap hat mit der teleperiode nichts zu tun, das ändert nur den Namen des Readings, wie du vielleicht beim Testen schon rausgefunden hast. Ansonsten zur Syntax bitte die Doku (commandref oder z.B. "Schritt für Schritt" im Wiki) konsultieren.
Wenn du die teleperiode wirktlich auf 10 gesetzt hast (reboot und gegengecheckt?), sollte nicht jede Sekunde was kommen, es sei denn, dein Script ist so eingestellt (darüber kann man z.B. auch die teleperiode wieder ändern!). Fragen zu "wie publishe ich außerhalb der teleperiode was aus einem SML-Script" beantworte ich gerne in dem anderen thread nach dessen (gründlicher) Lektüre deinerseits. (ich müßte den auch suchen...)