NEWS
Ikea Tadfri E1743 on-off-switch: Battery immer "(null)%"
-
@fiddle sagte in Ikea Tadfri E1743 on-off-switch: Battery immer "(null)%":
@asgothian
Deiner, oder?
https://www.iobroker.net/#de/adapters/adapterref/iobroker.zigbee/README.md
Dachte wenn ich v3.0.5 schreibe ist das klarUnd entschuldigt falls ich übersehe was in der Doku mir hier einen Anhaltspunkt geben soll woran es liegen könnte. Ist nicht das erste Zigbee Gerät hier im Schwarm, aber das einzige mit dieser Macke, zu dem mich auch das DrGockel Team nicht aufklären mag.
- Nur an einer Versionsnummer ist das schlecht fest zu machen. Und mehr info ist besser als weniger.
- Hast du diesen Kommentar am Device (Z2M) gelesen ?
Battery Replacement After replacing the battery, reporting of battery % may not work. If you experience this issue, remove the device and join it again.
- Wie viel Zeit ist seit dem neu Anlernen vergangen ? Die Batterie wird oft nur alle 24 oder sogar 48 Stunden aktualisiert ?
- Funktionieren die anderen States des Buttons ?
- hast du ein 'reconfigure' des Buttons probiert ?
(re)configure the device. This button allows to trigger a device configuration, which is used to tell the device what data to report automatically to the coordinator. The configuration items are defined in the converter for this device. Note that the device needs to be active for a configuration attempt to be successful. If the device is not active, the attempt will time out, and the device will be placed in a queue of devices to be configured the next time the device i sends a message.
Unglückicherweise verlinkt die Doku auf iobroker.net (anders als die auf Github) nicht auf die erweiterte Doku mit mehr Informationen. Dem muss ich mal nachgehen.
Unter der Bedingung das die 'normalen' states des buttons funktionieren ist der beste weg zur Konfiguration der folgende:- Konfiguration anstossen
- Warten bis die Timeout-Meldung kommt
- Nach bestätigen der Timeout Meldung den Knopf betätigen.
Wichtig - auch nach erfolgter Konfiguration kann es bis zu 48 h dauern bis die Batterie reported wird.
A.
-
@fiddle jau seh ich auch gerade die 3.0.x wurde nicht nachgezogen..
-
@asgothian Ja, den Hinweis mit Battery hatte ich gelesen und daher ja auch (mehrmals) das Device (forced) aus dem Adapter gelöscht und neu angelernt. Wie im Post erwähnt. Hat alles nichts gebracht.
Danach allerdings keine 24 oder gar 48h gewartet, man will ja vorwärts kommenund das hatte ich nirgends gelesen. Dachte halt das sendet das Teil normalerweise doch in einer jeden Button-X-pressed Nachricht mit (wenn es schon funkt, warum dann nicht auch das mitgeben...naja, die die das gebaut haben denken wohl anders...Muss ja nicht logisch sein für mich).
Also, dann werde ich erstmal schauen was nach 24 oder 48h passiert.
Und dann mal die anderen Sachen nochmal versuchen. Hatte ich zwar auch schon, aber vlt nicht genau so wie du es beschreibst. -
@arteck dann gehe ich mal davon aus, dass eine 3.0.x oder gar 3.x.0 von Kkoenk nicht auf meinen passt...
Antwort auf meine Frage dort gibt es noch keine.
-
@fiddle sagte in Ikea Tadfri E1743 on-off-switch: Battery immer "(null)%":
3.x.0
die passt schon mal nicht.. wenn dann nur die 3.0.x
-
Ja stimmt ich hatte die Tabelle falsch gelesen. Steht ja da, dass es für den Chip nur die 3.0.x gibt. Und da habe ich wirklich "den letzten heißen Sch..." auf dem Stick.
-
Also das "configure" hat irgendwas gebracht. Log wirft haufenweise "elevated" Warnungen. Ist das Ding nicht so richtig "eingerichtet" im Konverter(?) ?
Unser Freund E1743 hat die ID "...7209"
Log ist ungekürzt, also zwischen je 2 Blöcken fehlt hier nichts.Configure im Adapter ausgelöst und auf das Verschwinden des Popup-Fensters gewartet:
2025-10-16 22:15:23.877 - info: zigbee.0 (23489) Configuring 0xccccccfffe2a7209 E1743 2025-10-16 22:15:33.883 - info: zigbee.0 (23489) Timeout trying to configure 0xccccccfffe2a7209 E1743 (starting CoM).
Dann den Knopf "(I)" am Schalter gedrückt um ihn zu wecken.
2025-10-16 22:15:45.590 - warn: zigbee.0 (23489) ELEVATED:I01 (0bb6) Zigbee Event of Type commandOn from device 0xccccccfffe2a7209, incoming event: {"type":"commandOn","data":{},"linkquality":23,"groupID":0,"cluster":"genOnOff","meta":{"zclTransactionSequenceNumber":66,"frameControl":{"frameType":1,"manufacturerSpecific":false,"direction":0,"disableDefaultResponse":false,"reservedBits":0}},"endpoint_id":1}
Prompt beginnt das Configure (zwischendrin immer mal wieder "(I)" gedrückt damit er nicht gleich wieder schlafen geht):
2025-10-16 22:15:45.591 - info: zigbee.0 (23489) checking configure on message : next attempt in -1760645715591 seconds 2025-10-16 22:15:45.591 - info: zigbee.0 (23489) Configure on Message for 0xccccccfffe2a7209 2025-10-16 22:15:45.591 - info: zigbee.0 (23489) Configuring 0xccccccfffe2a7209 E1743 2025-10-16 22:15:45.597 - warn: zigbee.0 (23489) ELEVATED:I01 (0bb6) message received '{"linkquality":23}' from device ccccccfffe2a7209 type 'E1743' 2025-10-16 22:15:45.597 - warn: zigbee.0 (23489) ELEVATED:I02 (0bb6) value generated '23' from device ccccccfffe2a7209 for 'Link quality' 2025-10-16 22:15:45.597 - warn: zigbee.0 (23489) ELEVATED:I01 (0bb6) message received '{"action":"on"}' from device ccccccfffe2a7209 type 'E1743' 2025-10-16 22:15:45.597 - warn: zigbee.0 (23489) ELEVATED:I02 (0bb6) value generated '"on"' from device ccccccfffe2a7209 for 'Triggered action (e.g. a button click)' 2025-10-16 22:15:45.598 - warn: zigbee.0 (23489) ELEVATED:I02 (0bb6) value generated 'true' from device ccccccfffe2a7209 for 'on'
Und siehe da, er kann doch was über Battery sagen... "200"?? Aber ich hab' doch nur eine drin...warum 200(%?)..;-)
2025-10-16 22:15:47.803 - warn: zigbee.0 (23489) ELEVATED:I01 (145b) Zigbee Event of Type attributeReport from device 0xccccccfffe2a7209, incoming event: {"type":"attributeReport","data":{"batteryPercentageRemaining":200},"linkquality":63,"groupID":0,"cluster":"genPowerCfg","meta":{"zclTransactionSequenceNumber":68,"frameControl":{"frameType":0,"manufacturerSpecific":false,"direction":1,"disableDefaultResponse":false,"reservedBits":0}},"endpoint_id":1}
Daraus macht der Adapter (?) dann wohl "100" (macht Sinn, ist ein Akku >3V dran) - vermute mal das Gerät sendet "halbe Prozente", daher 200 oben == 100 die ins Objekt geschrieben werden?
2025-10-16 22:15:47.803 - info: zigbee.0 (23489) checking configure on message : next attempt in 27788 seconds 2025-10-16 22:15:47.807 - warn: zigbee.0 (23489) ELEVATED:I01 (145b) message received '{"linkquality":63}' from device ccccccfffe2a7209 type 'E1743' 2025-10-16 22:15:47.807 - warn: zigbee.0 (23489) ELEVATED:I02 (145b) value generated '63' from device ccccccfffe2a7209 for 'Link quality' 2025-10-16 22:15:47.808 - warn: zigbee.0 (23489) ELEVATED:I01 (145b) message received '{"battery":100}' from device ccccccfffe2a7209 type 'E1743' 2025-10-16 22:15:47.808 - warn: zigbee.0 (23489) ELEVATED:I02 (145b) value generated '100' from device ccccccfffe2a7209 for 'Battery percent'
Dann wieder was vom Button
2025-10-16 22:15:47.876 - warn: zigbee.0 (23489) ELEVATED:I01 (14a4) Zigbee Event of Type commandOn from device 0xccccccfffe2a7209, incoming event: {"type":"commandOn","data":{},"linkquality":63,"groupID":0,"cluster":"genOnOff","meta":{"zclTransactionSequenceNumber":69,"frameControl":{"frameType":1,"manufacturerSpecific":false,"direction":0,"disableDefaultResponse":false,"reservedBits":0}},"endpoint_id":1} 2025-10-16 22:15:47.877 - info: zigbee.0 (23489) checking configure on message : next attempt in 27714 seconds 2025-10-16 22:15:47.879 - warn: zigbee.0 (23489) ELEVATED:I01 (14a4) message received '{"linkquality":63}' from device ccccccfffe2a7209 type 'E1743' 2025-10-16 22:15:47.880 - warn: zigbee.0 (23489) ELEVATED:I02 (14a4) value generated '63' from device ccccccfffe2a7209 for 'Link quality' 2025-10-16 22:15:47.880 - warn: zigbee.0 (23489) ELEVATED:I01 (14a4) message received '{"action":"on"}' from device ccccccfffe2a7209 type 'E1743' 2025-10-16 22:15:47.880 - warn: zigbee.0 (23489) ELEVATED:I02 (14a4) value generated '"on"' from device ccccccfffe2a7209 for 'Triggered action (e.g. a button click)' 2025-10-16 22:15:47.881 - warn: zigbee.0 (23489) ELEVATED:I02 (14a4) value generated 'true' from device ccccccfffe2a7209 for 'on'
Und dann wieder 200 von der Battery - aber ich glaube "willkürlich", nicht weil der Knopf gedrückt wurde oder sich die Akkuladung geändert hat.
2025-10-16 22:15:48.641 - warn: zigbee.0 (23489) ELEVATED:I01 (17a0) Zigbee Event of Type readResponse from device 0xccccccfffe2a7209, incoming event: {"type":"readResponse","data":{"batteryPercentageRemaining":200},"linkquality":63,"groupID":0,"cluster":"genPowerCfg","meta":{"zclTransactionSequenceNumber":172,"frameControl":{"frameType":0,"manufacturerSpecific":false,"direction":1,"disableDefaultResponse":true,"reservedBits":0}},"endpoint_id":1}
Und dann ist configure durch:
2025-10-16 22:15:48.641 - info: zigbee.0 (23489) checking configure on message : next attempt in 26950 seconds 2025-10-16 22:15:48.649 - info: zigbee.0 (23489) DeviceConfigure successful 0xccccccfffe2a7209 E1743
Battery => 100.
2025-10-16 22:15:48.653 - warn: zigbee.0 (23489) ELEVATED:I01 (17a0) message received '{"linkquality":63}' from device ccccccfffe2a7209 type 'E1743' 2025-10-16 22:15:48.654 - warn: zigbee.0 (23489) ELEVATED:I02 (17a0) value generated '63' from device ccccccfffe2a7209 for 'Link quality' 2025-10-16 22:15:48.654 - warn: zigbee.0 (23489) ELEVATED:I01 (17a0) message received '{"battery":100}' from device ccccccfffe2a7209 type 'E1743' 2025-10-16 22:15:48.654 - warn: zigbee.0 (23489) ELEVATED:I02 (17a0) value generated '100' from device ccccccfffe2a7209 for 'Battery percent'
Zur Abwechslung mal den "(0)" Knopf gedrückt:
2025-10-16 22:15:49.723 - warn: zigbee.0 (23489) ELEVATED:I01 (1bdb) Zigbee Event of Type commandOff from device 0xccccccfffe2a7209, incoming event: {"type":"commandOff","data":{},"linkquality":63,"groupID":0,"cluster":"genOnOff","meta":{"zclTransactionSequenceNumber":70,"frameControl":{"frameType":1,"manufacturerSpecific":false,"direction":0,"disableDefaultResponse":false,"reservedBits":0}},"endpoint_id":1} 2025-10-16 22:15:49.733 - warn: zigbee.0 (23489) ELEVATED:I01 (1bdb) message received '{"linkquality":63}' from device ccccccfffe2a7209 type 'E1743' 2025-10-16 22:15:49.734 - warn: zigbee.0 (23489) ELEVATED:I02 (1bdb) value generated '63' from device ccccccfffe2a7209 for 'Link quality' 2025-10-16 22:15:49.734 - warn: zigbee.0 (23489) ELEVATED:I01 (1bdb) message received '{"action":"off"}' from device ccccccfffe2a7209 type 'E1743' 2025-10-16 22:15:49.734 - warn: zigbee.0 (23489) ELEVATED:I02 (1bdb) value generated '"off"' from device ccccccfffe2a7209 for 'Triggered action (e.g. a button click)' 2025-10-16 22:15:49.734 - warn: zigbee.0 (23489) ELEVATED:I02 (1bdb) value generated 'true' from device ccccccfffe2a7209 for 'off' 2025-10-16 22:15:51.335 - info: javascript.0 (4615) script.js.HT-Heatpump.HTcontrol: CreateSetObjects(): Parameter "Stoerung" gefunden - JSON data OK, communication OK!
=> In jeder "Button"-Nachricht schickt er die LQ mit... aber nicht die Bat.
... wäre doch schlau, wenn... naja.
Habe das "Configure" Spiel dann nochmal 2x wiederholt, sieht bis auf die Zeiten und mehr oder weniger button presses genauso aus, also die "200"er Messages und die 100er. Das letzte Mal war ca 22:37...
Tatsächlich kam dann heute im Log um 8:48 (10h11min später!?) ungefragt, also ohne dass ich ihn geweckt hätte per button einmalig eine Battery:
2025-10-17 08:48:05.313 - warn: zigbee.0 (23489) ELEVATED:I01 (f5c1) Zigbee Event of Type attributeReport from device 0xccccccfffe2a7209, incoming event: {"type":"attributeReport","data":{"batteryPercentageRemaining":200},"linkquality":68,"groupID":0,"cluster":"genPowerCfg","meta":{"zclTransactionSequenceNumber":7,"frameControl":{"frameType":0,"manufacturerSpecific":false,"direction":1,"disableDefaultResponse":false,"reservedBits":0}},"endpoint_id":1} 2025-10-17 08:48:05.317 - warn: zigbee.0 (23489) ELEVATED:I01 (f5c1) message received '{"linkquality":68}' from device ccccccfffe2a7209 type 'E1743' 2025-10-17 08:48:05.317 - warn: zigbee.0 (23489) ELEVATED:I02 (f5c1) value generated '68' from device ccccccfffe2a7209 for 'Link quality' 2025-10-17 08:48:05.318 - warn: zigbee.0 (23489) ELEVATED:I01 (f5c1) message received '{"battery":100}' from device ccccccfffe2a7209 type 'E1743' 2025-10-17 08:48:05.318 - warn: zigbee.0 (23489) ELEVATED:I02 (f5c1) value generated '100' from device ccccccfffe2a7209 for 'Battery percent'
Dann aber seither: Schweigen im Walde, weitere ~10h später kam er nicht nochmal. Mal sehen was er die nächsten 24h macht.
-
Sah aus als würde er sich alle 12h melden... Pusteblume. Gestern ziemlich genau nach 12h(:03m) eine zweite Meldung... seither nichts im Log.
Aber bei den Details bei zigbee2mqtt steht, dass man das auch abfragen können soll:
To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"battery": ""}.
Das wär' ja was ich brauche. Wenn er mir nichts sagt, frag ich ihn halt...
Nur: wie mache ich das im Broker mit den Objekten? Vermutlich ist das ganz einfach, aber ich finde die Doku dazu nicht... Was ich fand war das hier: https://forum.iobroker.net/topic/40671/zigbee-kommando-via-javascript-senden - aber das war 2021 und ich bin kein "Blocker" sondern ein "Noder". Wie würde ich das mit NR machen?
Schreibe ich einfach {"battery" :""} in das Objekt "send_payload"? Vermutlich nicht, das gibt im Log:
zigbee.0 2025-10-18 13:20:46.034 warn ELEVATED:I02 (f6cf) value generated 'true' from device ccccccfffe2a7209 for 'off' zigbee.0 2025-10-18 13:20:46.034 warn ELEVATED:I02 (f6cf) value generated '"off"' from device ccccccfffe2a7209 for 'Triggered action (e.g. a button click)' zigbee.0 2025-10-18 13:20:46.034 warn ELEVATED:I01 (f6cf) message received '{"action":"off"}' from device ccccccfffe2a7209 type 'E1743' zigbee.0 2025-10-18 13:20:46.034 warn ELEVATED:I02 (f6cf) value generated '60' from device ccccccfffe2a7209 for 'Link quality' zigbee.0 2025-10-18 13:20:46.033 warn ELEVATED:I01 (f6cf) message received '{"linkquality":60}' from device ccccccfffe2a7209 type 'E1743' zigbee.0 2025-10-18 13:20:46.031 warn ELEVATED:I01 (f6cf) Zigbee Event of Type commandOff from device 0xccccccfffe2a7209, incoming event: {"type":"commandOff","data":{},"linkquality":60,"groupID":0,"cluster":"genOnOff","meta":{"zclTransactionSequenceNumber":37,"frameControl":{"frameType":1,"manufacturerSpecific":false,"direction":0,"disableDefaultResponse":false,"reservedBits":0}},"endpoint_id":1} zigbee.0 2025-10-18 13:20:41.977 warn ELEVATED:I02 (e6f5) value generated 'true' from device ccccccfffe2a7209 for 'on' zigbee.0 2025-10-18 13:20:41.977 warn ELEVATED:I02 (e6f5) value generated '"on"' from device ccccccfffe2a7209 for 'Triggered action (e.g. a button click)' zigbee.0 2025-10-18 13:20:41.977 warn ELEVATED:I01 (e6f5) message received '{"action":"on"}' from device ccccccfffe2a7209 type 'E1743' zigbee.0 2025-10-18 13:20:41.977 warn ELEVATED:I02 (e6f5) value generated '60' from device ccccccfffe2a7209 for 'Link quality' zigbee.0 2025-10-18 13:20:41.976 warn ELEVATED:I01 (e6f5) message received '{"linkquality":60}' from device ccccccfffe2a7209 type 'E1743' zigbee.0 2025-10-18 13:20:41.973 warn ELEVATED:I01 (e6f5) Zigbee Event of Type commandOn from device 0xccccccfffe2a7209, incoming event: {"type":"commandOn","data":{},"linkquality":60,"groupID":0,"cluster":"genOnOff","meta":{"zclTransactionSequenceNumber":36,"frameControl":{"frameType":1,"manufacturerSpecific":false,"direction":0,"disableDefaultResponse":false,"reservedBits":0}},"endpoint_id":1} zigbee.0 2025-10-18 13:20:22.296 warn ELEVATED:NOCONV (9a16) No converter available for 'E1743' with key 'battery' zigbee.0 2025-10-18 13:20:22.294 warn ELEVATED:O03 (9a16) Publishing to 0xccccccfffe2a7209 of model E1743 with battery zigbee.0 2025-10-18 13:20:22.294 warn ELEVATED:O03 (9a14) Publishing to 0xccccccfffe2a7209 of model E1743 with send_payload zigbee.0 2025-10-18 13:20:22.293 warn ELEVATED:O02 (9a14) Change state 'send_payload' at device 0xccccccfffe2a7209 type 'E1743' zigbee.0 2025-10-18 13:20:22.292 warn ELEVATED:O01 (9a14) User state change of state zigbee.0.ccccccfffe2a7209.send_payload with value {"battery": ""} (ack: false) from system.adapter.admin.0
-
Option A:
du triggerst den
device_query
state. Da versucht er jeden State für den Z2M ein 'read' anbietet auszulesen.Option B:
Du schreibst in den sendPayload den folgenden String hinein:"read": { "cluster":"genPowerCfg", "attributes": [ "batteryPercentageRemaining", "batteryVoltage" ] } }
Ab version 3.1.6 gibt es dann (hoffentlich) noch Option(erstmal gestrichen - ich weiss noch nicht ob das irgendwann mal kommt)
in sendPayload den string{"/get":"battery"}
Problem dabei: Timing. Wenn der Button gerade schläft antwortet er nicht. Du musst das also genau dann machen wenn er wach ist.
Problem 2: Lebensdauer Batterie - sie wird deutlich abnehmen wenn du das automatisch immer dann machst wenn der Button gerade seinen Status angepasst hat. Und wenn du es immer machst wenn die LQ angepasst wurde, ist die Batterie nach wenigen Stunden leer - dann legt er sich im Zweifelsfall gar nicht mehr schlafen.
A.
-
@asgothian danke, dann hat man das mal zur Hand. (Falls das mal jemand hier findet: bei deinem Code oben fehlt eine '{' vor dem 'read'). Das geht so.
Trigger: es triggern wenn man drückt. Und damit er dann nicht jedes Mal abfragt, einen Counter in NR bauen, oder einen Timer, der das erst dann wieder ausführt wenn man das X.Mal drückt, oder halt nur wenn min Y Stunden vergangen sind...Optionen.
Ach, und LQ passt er scheinbar auch nicht oft oder gar nicht ungefragt an. Sehe keine Meldungen im Log außer wenn man drückt oder er doch mal eine Battery Meldung selbst sendet. Gibt also nur Trigger wenn man drückt.
-
ich bin immer noch der meinung dass es mit der Firmware vom coordinator zusammen hängt..
ich hab das Teil auch hier und es meldet sich so wie es soll..oich kann mich entsinnen da gabs mal ein Problem mit den Ikea's..
kauf dir den https://www.amazon.de/SONOFF-Gateway-CC2652P-Assistant-Zigbee2MQTT/dp/B09KXTCMSC/ steck den rein fettisch.. alles wird übernommen und du bist auf der sicheren seite.