NEWS
Schaltzustand Shortcut Button von IKEA
-
Hi,
Ich habe mir einen Shortcut Button von IKEA geholt und wollte fragen ob es aktuell nicht möglich ist den Schaltzustand abzufragen...Vielen Dank!!
-
@fredfesl sagte in Schaltzustand Shortcut Button von IKEA:
ob es aktuell nicht möglich ist den Schaltzustand abzufragen...
Ein Button hat keinen Schaltzustand. Er hat nur das Ereignis "gedrückt". Letztlich entscheidet dann Deine Programmlogik, was aus dem gedrückt-Ereignis wird: Lampe an, Lampe aus, Lampe toggeln, Lampe ein wenig heller oder dunkler, ...
Ich vermute, dass das Drücken des Buttons zu einer Änderung des Datenpunktes lastSeen führt. Teste es mal aus:
- Beim Drücken des Buttons ändert sich irgendwie der Datenpunkt lastSeen.
- Der Datenpunkt lastSeen ändert sich nur beim Drücken des Buttons, sonst nie.
Der eigentliche Wert des Datenpunktes ist dabei ohne Belang. (Vermutlich ist es die Anzahl Millisekunden zwischen dem Drück-Zeitpunkt und einem festen Basis-Zeitpunkt.)
-
@hsteinme
Guten Morgen,
so etwas ähnliches dachte ich auch.
Jetzt habe ich heute früh einmal gedrückt und dann hat sich der Wert des Datenpunktes last seen einmalig geändert. Mit jedem weiteren Drücken ändert sich der wert aber aktuell nicht mehr.
Ich kann den Wert 0 setzen und beim Drücken wird der Wert wieder beschrieben.
Das kann eine mögliche Variante sein um, auf einen Tastendruck ein Ereignis auszulösen...
Wäre trotzdem interessant was der Datenpunkt last seen eigentlich anzeigt...
Von welchem Basis-Zeitpunkt er ausgeht und ob es ms sind...Was sich ändert, aber auch nicht bei jedem Tastendruck ist die Prozentanzeige der Batterie. Die springt zwischen 21,34,47,60 Prozent hin und her, was auch komisch ist...
-
@hsteinme
Ich habe die Knopfzelle vom Button raus und wieder rein und danach ändert sich der Datenpunkt last seen zweimal beim Drücken, danach bleibt der Wert wieder konstant... -
@fredfesl sagte in Schaltzustand Shortcut Button von IKEA:
Mit jedem weiteren Drücken ändert sich der wert aber aktuell nicht mehr.
In solchen Situationen traue ich dem Browser, egal wie er heißt, nicht über den Weg. Am besten das Browserfenster löschen, erneut öffnen und dann testen.
@fredfesl sagte in Schaltzustand Shortcut Button von IKEA:
Wäre trotzdem interessant was der Datenpunkt last seen eigentlich anzeigt...
Von welchem Basis-Zeitpunkt er ausgeht und ob es ms sind...Aktivier doch mal die History für diesen Datenpunkt. Dann werden je Änderung der Zeitpunkt und der Wert protokolliert. Nimm bei zwei Drückereignissen die Differenzen der Zeitpunkte und der Werte. Dann kannst Du vielleicht sehen, ob die Maßeinheit der Werte Millisekunden, Sekunden oder sonstwas sind.
Wenn Du die Maßeinheit kennst, rechne doch den Wert einer Drück-Aktion von dessen Zeitpunkt ab. Dann erhältst Du das Basisdatum.
-
Ich habe es jetzt mal mit der History geloggt. Ich hoffe ich habe es richtig gemacht, da ich vorher noch nie geloggt habe.
Der Wert ändert sich hier aber auch nicht, selbst wenn ich ihn manuell auf 0 schreibe und dann erneut drücke, wird wieder der selbe Wert geschrieben...
Weiß jetzt auch nicht mehr was man noch probieren kann...
Vielen Dank schonmal für deine Hilfe!
-
@fredfesl sagte in Schaltzustand Shortcut Button von IKEA:
Der Wert ändert sich hier aber auch nicht, selbst wenn ich ihn manuell auf 0 schreibe und dann erneut drücke, wird wieder der selbe Wert geschrieben...
D.h. also Du kannst nicht ein Änderungsereignis (change not equal) des Datenpunktes abfragen. Stattdessen musst Du das Ereignis des Überschreibens (egal mit welchemWert) dieses Datenpunktes abfragen (change any).
-
Ehrlich gesagt, weiß ich nicht genau was du meinst.
Hier sind die Einstellungen dazu:
Passt das soweit?
-
@fredfesl
Die History wurde nur benötigt, um das Verhalten des Datenpunktes lastSeen zu verstehen. Sie kann nun wieder deaktiviert werden.Ich gehe davon aus, dass Du ein Skript einsetzen wirst, das das Drück-Ereignis des Buttons abfragt und daraufhin irgendwas mit einer Leuchte unternimmt. In Javscript etwa sähe eine derartige Abfrage wie folgt aus:
on({id: 'tradfri.0.RC-65536.lastSeen', change: 'any'}, function() { // mach was mit dem Licht })
Wichtig ist hier der Teil change: 'any'. Die Abfrage schlägt dann zu, wenn ein Wert in den Datenpunkt geschrieben wird, egal ob es ein gleicher Wert oder ein neuer Wert ist.
Von Blockly habe ich keinen blassen Schimmer. Hier könnten Dir vielleicht andere einen Ratschlag geben.
-
@hsteinme
Ich habe es jetzt mal mit einem Skript umgesetzt und es funktioniert soweit.Schreibe einfach eine Wert auf 1 reagiere auf das Ereignis und setze den Wert dann wieder auf 0 zurück...
Vielen Dank!