NEWS
Test Adapter Somfy Tahoma v0.3.x GitHub
-
Aktuelle Test Version 0.3.0 Veröffentlichungsdatum 21.01.2020 Github Link https://github.com/StrathCole/ioBroker.tahoma Ich habe einen Adapter auf Basis des Skripts aus https://forum.iobroker.net/post/355807 entwickelt und eine erste lauffähige Version online gestellt.
Über Rückmeldungen würde ich mich freuen. Danke an @thoemmes86 und @CodeMasteR für die initiale Entwicklung und Erweiterung des Skripts.Viele Grüße
Marius -
Dann mach ich einfach mal den Anfang hier. Bisher läuft alles super! Aber ich habe auch ein paar Antriebe, bei denen der Datenpunkt nicht core:ClosureState, sondern core:DeploymentState heißt und sich darüber im Adapter nicht steuern lassen (mit dem Skript vorher ging es). Kann man das noch einbauen?
edit: ich bin mir nicht mehr sicher, ob es im Skript wirklich funktioniert hatte, da ich dort nur die commands verwendet habe (ist schon ne Weile her, ich bin vor einiger Zeit auf den ham Adapter umgestiegen und da gibt es den Datenpunkt Target-Position.
-
Bisher läuft auch bei mir der Adapter sehr stabil ohne Fehlermeldungen.
Zwei kleine Dinge habe ich aber gefunden:
- Wenn ich den "commands" einen true / false Wert zuweise, bekomme ich folgende Meldung im LOG:
javascript.0 2020-01-17 09:24:01.123 warn (1917) You are assigning a boolean to the state "tahoma.0.devices.xxxxxxxx.commands.down" which expects a number. Please fix your code to use a number or change the state type to boolean.
Kannst du hier noch einbauen, dass es egal ist ob man 0/false oder 1/true zuweist?
- Bisher war mein Problem immer, dass ich nur Befehle für 9 Rollläden auf einmal senden konnte und danach einen Timeout einbauen musste, um die restlichen zu steuern. Ab dem 10ten Rollladen gab es immer einen Fehler im Log, das ist leider immer noch so, siehe nachfolgende Meldungen. Gibt es hier irgendeine Möglichkeit das zu fixen? Irgendwie alle Rollladen auf muss gehen, der zentrale Funktaster schafft es ja auch
tahoma.0 2020-01-17 09:21:04.722 warn (29047) error during tahomalink request: 400: null, request path: exec/apply with payload:{"label":"command my from ioBroker","actions":[{"deviceURL":"io://xxxx-xxxx-xxxx/xxxxxxxx","commands":[{"name tahoma.0 2020-01-17 09:21:04.721 warn (29047) error during tahomalink request: 400: null, request path: exec/apply with payload:{"label":"command my from ioBroker","actions":[{"deviceURL":"io://xxxx-xxxx-xxxx/xxxxxxxx","commands":[{"name" tahoma.0 2020-01-17 09:21:04.720 warn (29047) error during tahomalink request: 400: null, request path: exec/apply with payload:{"label":"command my from ioBroker","actions":[{"deviceURL":"io://xxxx-xxxx-xxxx/xxxxxxxx","commands":[{"name" tahoma.0 2020-01-17 09:21:04.707 warn (29047) error during tahomalink request: 400: null, request path: exec/apply with payload:{"label":"command my from ioBroker","actions":[{"deviceURL":"io://xxxx-xxxx-xxxx/xxxxxxxx","commands":[{"name
Ansonsten top Arbeit, bin schwer begeistert und sage herzlichst DANKE
-
Noch ein weiterer Punkt:
- Der HAM Adapter liefert einen Position-State, über den man die Richtung des Rollladens auslesen kann
0 = fährt gerade runter
1 = fährt gerade hoch
2 = bewegt sich nicht
Lässt sich das auch noch einbauen?
- Der HAM Adapter liefert einen Position-State, über den man die Richtung des Rollladens auslesen kann
-
@integer63 sagte in Test Adapter Somfy Tahoma v0.1.x GitHub:
Dann mach ich einfach mal den Anfang hier. Bisher läuft alles super! Aber ich habe auch ein paar Antriebe, bei denen der Datenpunkt nicht core:ClosureState, sondern core:DeploymentState heißt und sich darüber im Adapter nicht steuern lassen (mit dem Skript vorher ging es). Kann man das noch einbauen?
edit: ich bin mir nicht mehr sicher, ob es im Skript wirklich funktioniert hatte, da ich dort nur die commands verwendet habe (ist schon ne Weile her, ich bin vor einiger Zeit auf den ham Adapter umgestiegen und da gibt es den Datenpunkt Target-Position.
Gerade geschaut, im Skript gab es den Datenpunkt nicht. Ich schaue mal, dass ich den eingebaut bekomme. Kann ihn aber selbst nicht testen.
-
@blackeagle998 sagte in Test Adapter Somfy Tahoma v0.1.x GitHub:
Wenn ich den "commands" einen true / false Wert zuweise, bekomme ich folgende Meldung im LOG:
Ich werd die Typen auf boolean ändern. 0 und 1 ergibt für mich bei Commands nicht viel Sinn.
@blackeagle998 sagte in Test Adapter Somfy Tahoma v0.1.x GitHub:
Bisher war mein Problem immer, dass ich nur Befehle für 9 Rollläden auf einmal senden konnte und danach einen Timeout einbauen musste, um die restlichen zu steuern.
Ich habe jetzt einen eigenen "retry" eingebaut, wenn der Fehler 400 kommt. Müsste im Git schon online sein, ich mache aber gleich noch weitere Updates, also am besten etwas warten.
-
@blackeagle998 sagte in Test Adapter Somfy Tahoma v0.1.x GitHub:
Der HAM Adapter liefert einen Position-State, über den man die Richtung des Rollladens auslesen kann
0 = fährt gerade runter
1 = fährt gerade hoch
2 = bewegt sich nichtDanke für den Hinweis, schaue ich nach.
-
@StrathCole "Okay, muss ich übersehen haben. Mache ich direkt."
Nein, ich denke du hast da nichts übersehen - es war auch im alten Skript nicht drin. Daher hatte ich mir mit den commands so gut es ging beholfen, aber auch diese Motore über Prozentwerte ansteuern zu können, wäre super
-
So.
Ich habe jetzt den DeploymentState beschreibbar gemacht, sodass er darauf hoffentlich auch reagiert. Kann es aber selbst nicht testen.
Außerdem habe ich eine Bewgungsrichtung hinzugefügt (state.moving). Dabei gibt es:
- 0 = gestoppt
- 1 = aufwärts
- 2 = abwärts
- 3 = unbekannte Richtung (in Bewegung)
Die Commando-States sind nun boolean, also mit true zu beschreiben, um sie auszulösen.
Aktuelle Version ist im Git (0.2.0)
-
@StrathCole DeploymentState funktioniert jetzt auch einwandfrei! Vielen Dank!
-
@StrathCole Eine Kleinigkeit ist mir doch noch aufgefallen, bei Namen, die zwei Leerzeichen enthalten, legt er zuerst einen Datenpunkt mit nur einem Unterstrich an und dann später (wenn es eine Bewegung gab) einen weiteren Datenpunkt, diesmal mit zwei Unterstrichen:
-
@integer63 Danke sehr, bitte noch mal mit latest git testen. Hab es geändert.
-
Übrigens hat Somfy für den 21.1. ein großes Tahoma-Update angekündigt inkl. Updates am Server. Ich hoffe, danach funktioniert alles wie gewohnt, allerdings wird der Adapter wohl in der Zeit von ca. 10 - 12 Uhr keinen Zugriff auf den Server haben. Also nicht wundern, falls nix gehen sollte
-
@StrathCole sagte in Test Adapter Somfy Tahoma v0.1.x GitHub:
@blackeagle998 sagte in Test Adapter Somfy Tahoma v0.1.x GitHub:
Wenn ich den "commands" einen true / false Wert zuweise, bekomme ich folgende Meldung im LOG:
Ich werd die Typen auf boolean ändern. 0 und 1 ergibt für mich bei Commands nicht viel Sinn.
@blackeagle998 sagte in Test Adapter Somfy Tahoma v0.1.x GitHub:
Bisher war mein Problem immer, dass ich nur Befehle für 9 Rollläden auf einmal senden konnte und danach einen Timeout einbauen musste, um die restlichen zu steuern.
Ich habe jetzt einen eigenen "retry" eingebaut, wenn der Fehler 400 kommt. Müsste im Git schon online sein, ich mache aber gleich noch weitere Updates, also am besten etwas warten.
Ich habe gerade auf Version 0.2.0 aktualisiert:
-
die Warnmeldungen bezüglich 0/false und 1/true kommen noch (nur als Hinweis, weiß nicht ob du das schon gefixt hattest)
-
mehr als 9 Rollläden lassen sich nicht gleichzeitig steuern, dann kommt der 400er Fehler mit Payload.
--> Hast du den automatischen Retry jetzt schon eingebaut? Wenn ja mit welchem Zeitintervall?
Das soll nicht ungeduldig klingen, wusste jetzt nur nicht genau, was schon in Version 0.2.0 drin sein sollte.
-
-
@blackeagle998 Kein Problem Klingt nicht ungeduldig.
Also, den Typ auf boolean habe ich geändert. Kann aber sein, dass du die Objekte einmal löschen müsstest, bevor das funktioniert. Ich glaube, da gibt es kein Update, sondern nur beim Anlegen die boolean Types.
Der Retry kommt eigentlich automatisch nach 5 Sekunden. Hat das bei dir nicht geklappt?
-
Oh, ich sehe gerade, die 5 Sekunden scheinen nicht zu reichen. Bei mir hatte ich das Problem auch gerade. Ich überlege mir noch eine Lösung.
-
@StrathCole sagte in Test Adapter Somfy Tahoma v0.1.x GitHub:
Oh, ich sehe gerade, die 5 Sekunden scheinen nicht zu reichen. Bei mir hatte ich das Problem auch gerade. Ich überlege mir noch eine Lösung.
Genau, ich hatte im Skript auf 15 Sekunden gestellt, das ging immer. Wo da genau die Grenze ist, weiß ich auch nicht.
-
@blackeagle998 sagte in Test Adapter Somfy Tahoma v0.1.x GitHub:
@StrathCole sagte in Test Adapter Somfy Tahoma v0.1.x GitHub:
Oh, ich sehe gerade, die 5 Sekunden scheinen nicht zu reichen. Bei mir hatte ich das Problem auch gerade. Ich überlege mir noch eine Lösung.
Genau, ich hatte im Skript auf 15 Sekunden gestellt, das ging immer. Wo da genau die Grenze ist, weiß ich auch nicht.
Ich habe gerade noch ne ganz andere Idee. Muss ich aber erst testen.
-
@StrathCole sagte in Test Adapter Somfy Tahoma v0.1.x GitHub:
@blackeagle998 Kein Problem Klingt nicht ungeduldig.
Also, den Typ auf boolean habe ich geändert. Kann aber sein, dass du die Objekte einmal löschen müsstest, bevor das funktioniert. Ich glaube, da gibt es kein Update, sondern nur beim Anlegen die boolean Types.
Der Retry kommt eigentlich automatisch nach 5 Sekunden. Hat das bei dir nicht geklappt?
Die Typ-Änderung hat funktioniert, nachdem ich die States alle gelöscht hatte und diese neu geschrieben wurden.
Was jetzt irgendwie nicht mehr angelegt wird, ist der "moving" state.
Habe gerade einen Rollladen runter und hoch fahren lassen, aber es ist kein "moving" state da -
@blackeagle998 sagte in Test Adapter Somfy Tahoma v0.1.x GitHub:
Was jetzt irgendwie nicht mehr angelegt wird, ist der "moving" state.
Habe gerade einen Rollladen runter und hoch fahren lassen, aber es ist kein "moving" state daDer State ist nur verfügbar, wenn der Befehl auch via ioBroker gegeben wurde. Wenn man manuell einen Schalter oder so drückt, bekommt Tahoma die Info nicht.