NEWS
SetState sendet falschen Wet auf den KNX Bus
-
.toString(16)
Dann landet in der UI wieder die 440000 (wie erwartet) und aber auf dem Bus ein 0x000000. Gleiches Verhalten, wie ohne toString
-
@felixnb sagte:
dann wir kein Wert in der UI angezeigt
Das kann nicht sein.
setState("knx.0.Wohnzimmer.Deckenspots.LED_HSV_Setzen", 4456448);
muss den Wert in den Datenpunkt schreiben (evtl. mit Warnung).
Trigger mal den DP und logge den Wert:setState("knx.0.Wohnzimmer.Deckenspots.LED_HSV_Setzen", 4456448); on({id: "knx.0.Wohnzimmer.Deckenspots.LED_HSV_Setzen"}, function(dp) { log(dp.state.val); });
-
setState("knx.0.Wohnzimmer.Deckenspots.LED_HSV_Setzen", 4456448);
Habe es nochmal ausgeführt. In der UI steht kein Wert, im Log kein Fehler und auf dem KNX Bus ein 0x000000.
Habe auch schon "#440000" und das ganze als binary rein geschrieben, hat aber auch keinen Erfolg gebracht.
Hast du noch eine Idee?
-
Trigger mal den DP und logge den Wert:
Habe 1:1 deinen code ausgeführt. Im Log steht auch kein Wert:
(22206) script.js.common.ColorConversion:
-
@felixnb sagte:
Im Log steht auch kein Wert:
Auch nicht im Tab "Log" ? Dann starte mal ioBroker neu, denn da ist was faul.
-
Ja, auch nicht unter Log. ioBroker neu gestartet, gleiches Problem. Im Log steht immer noch kein Wert. Also wenn ich das wie folgt ausführe:
setState("knx.0.Wohnzimmer.Deckenspots.LED_HSV_Setzen", 4456448);
-
@felixnb sagte:
Im Log steht immer noch kein Wert. Also wenn ich das wie folgt ausführe:
Das Log wird erst durch den Code mit dem Trigger (on) erzeugt.
-
Sorry, meine Antwort war unpräzise. Habe den Event handler mit drinnen gelassen.
Also das hier ausgeführt:
setState("knx.0.Wohnzimmer.Deckenspots.LED_HSV_Setzen", 4456448); on({id: "knx.0.Wohnzimmer.Deckenspots.LED_HSV_Setzen"}, function(dp) { log(dp.state.val); });
-
@felixnb
Erfolgt kein Log oder nur ein Log ohne Wert ? -
Es wird ein Log Eintrag erzeugt, aber ohne Wert. Siehe
@felixnb said in SetState sendet falschen Wet auf den KNX Bus:
Trigger mal den DP und logge den Wert:
Habe 1:1 deinen code ausgeführt. Im Log steht auch kein Wert:
(22206) script.js.common.ColorConversion:
-
@felixnb
Erweitere mal das Log (eigentlich müssten 2 erfolgen: Erst mit ack: false und dann mit ack: true).setState("knx.0.Wohnzimmer.Deckenspots.LED_HSV_Setzen", 4456448); on({id: "knx.0.Wohnzimmer.Deckenspots.LED_HSV_Setzen"}, function(dp) { log('Wert: ' + dp.state.val + ', Ack: ' + dp.stat.ack + ', Ursprung: ' + dp.state.from); });
-
Es wird 1 Log Eintrag erzeugt:
(821) script.js.common.ColorConversion: LED_HSV: , Ack: false, Ursprung: system.adapter.javascript.0
Ein zweiter Log Eintrag wird nicht erzeugt.
Kann es sein, dass der KNX Adapter den Wert nicht "annimmt" und verwirft?
-
@felixnb sagte:
Kann es sein, dass der KNX Adapter den Wert nicht "annimmt" und verwirft?
Dann würde erst mit ack: true der Wert "verworfen". Aber der Wert erscheint gar nicht erst im Datenpunkt. Poste bitte die RAW-Ansicht der Objekteigenschaften des DP in Code tags.
-
@paul53 said in SetState sendet falschen Wet auf den KNX Bus:
Objekteigenschaften
{ "from": "system.adapter.knx.0", "user": "system.user.admin", "ts": 1609163390261, "common": { "name": "LED HSV Setzen", "type": "mixed", "role": "value", "unit": "", "max": "", "min": "", "read": false, "write": true, "update": true }, "native": { "dpt": "DPT232.600", "address": "1/0/0", "addressRefId": "P-056B-0_GA-12", "statusGARefId": "", "actGARefId": "", "objRef": "O-67_R-118", "devName": "M-0083_A-0040-24-52B5", "devInst": "P-056B-0_DI-2", "objectSize": "" }, "acl": { "object": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator", "state": 1636 }, "_id": "knx.0.Wohnzimmer.Deckenspots.LED_HSV_Setzen", "type": "state" }
-
@felixnb
Da haben wir den Salat: Lösche mal die Zeilen "min" und "max" raus.
Der Adapter ist "schlampig" programmiert. -
Da haben wir den Salat: Lösche mal die Zeilen "min" und "max" raus.
--> Vielen Dank dir! Das hat geklappt!
Der Adapter ist "schlampig" programmiert.
--> Habe den code zum Adapter gar nicht gefunden, sodass ich daraus einen PR machen könnte. Sofern ich mich im Code zurecht finden würde
-
Klappt das bei dir so noch alles? Irgendwie habe ich genau das gleiche Problem, wie du, jedoch war bei mir min/max nicht im RAW enthalten.
Es kommt aber genau das nur auf dem KNX Bus an, wie du es im Eingangsbeitrag geschrieben hattest.