ich bin gerade zufällig über ein Virtuelles-Modul gestolpert das es ermöglichen soll die Farben des WallPlugs durch ein VD zu ändern.
Das bedeutet man könnte es dazu nutzen sich unterschiedliche Zustände optisch anzeigen zulassen.
in den Einstellungen des VD die Werte des Button “Setting” (deviceID, LoginHC2, MdpHC2) anpassen
speichern
den Button “Settings” drücken um die Werte in die Variablen zu übertragen
fertig
Leider ist es mir nicht gelungen das VD zum laufen zubringen, aber vielleicht bekommen es die Nerds hin!?
Im debug kommt die Info, dass irgendeine Variable nicht bekannt wäre…
Wenn das Ding laufen würde hätte ich schon die eine oder andere Idee.
gibt es hier was neues? Ich würde gerne, nachdem ich das RFID und Alarmscript aus dem FORUM erfolgreich einsetze, mit dem Leuchtring des Fibaro wallplugs den Status der Alarmanlage anzeigen lassen, also Armed=rot und disarmed=grün.
Besten Dank für eventuelle Hinweise oder Ideen wie man dass per LUA realisieren kann.
Hallo boomx, ich nutze das VD um meine Scharfschaltung der Alarmanlage anzuzeigen! jetzt weiß ich nicht ob es an meinem Wall-Plug liegt, aber du hast da:
local selfId = fibaro:getSelfId();
local port = fibaro:get(selfId, 'TCPPort');
HC2 = Net.FHttp("127.0.0.1", 11111)
jtable = '{"properties":{"parameters":[{"id":61,"size":1,"value":1}]}}'
HC2:PUT("/api/devices/" ..port ,jtable)
stehen!
Bei mir musste ich die Parameter ID von 61 auf 42 setzen (Parameter 42LED ring colour when controlled device is OFF) oder (Parameter 41LED ring colour when controlled device is ON)
ja die neuen Wallplugs mit aktueller Firmware müssen die ID41 im Script hinterlegen.
Einfach bei allen Buttons in den Einstellung anpassen, speichern und wieder mit der Farbe spielen.
ich muss das Thema nochmal aus der Versenkung holen. Das ändern der Farbe klappt ja einwandfrei. Nur in der Oberfläche (Web+App) scheint die Farbe nicht immer korrekt aktualisiert zu werden. Besonders wenn man mit kurzen Abständen von einigen Sekunden ändert. Manchmal wird dann beim Ändern erstmal die Farbe vom vorherigen Wechsel eingestellt. Das sorgt für Verwirrung.
Beispiel: Ich lasse mir den Zustand aller Fenster an der Haustür anzeigen. Wird nun ein Fenster kurz geöffnet und wieder geschlossen, wechselt der WP auf rot aber nicht mehr auf grün. Wird das Fenster abermals geöffnet, wechselt die Farbe auf grün. Wie gesagt: In der Oberfläche! Am WP selbst passt alles.
Boomx hat das in dem Artikel auch irgendwie angedeutet. Habt Ihr das irgendwie hinbekommen?
@Ändy,
bei mir ist es ähnlich, in der Weboberfläche ist es nicht immer korrekt, am Wallplug stimmt’s aber immer. Von daher juckt mich das wenig, da ich offene Türen oder Fenster per Push melden lasse. Der Wallplug zeigt mir nur den Status der Alarmanlage und da hab ich 2 im Flur die beim Eintreten sofort erinnern - wenn du jetzt nicht entschärfst, gibt’s Krach.
ich hab noch ein wenig experimentiert. Hatte auch folgendes Script im Einsatz (Leicht abgewandelt von einem Siio-Artikel):
--Funktion: Wallplugfarbe über Parameter ändern
function WallPlugColor(deviceid, Color)
local http = net.HTTPClient()
http:request("http://127.0.0.1:11111/api/devices/"..deviceid, {
options = {
method = 'PUT',
headers = {},
data = '{"properties":{"parameters":[{"id":41,"size":1,"value":'..Color..'}}]}',
timeout = 10000
},
success = function(response)
local result = response.data;
if response.status == 200 or response.status == 201 then
--fibaro:debug('Status: ' ..response.status.. ' - Parameter geändert')
else
--fibaro:debug('Error: ' ..response.status.. ' - Zugriff verweigert')
end
end,
error = function(err)
fibaro:debug('[ERROR] ' .. err)
end
})
end
Hier jedoch gleiches Problem. In der Oberfläche hinkt die Farbe immer hinterher. Hab es auch mal mit Pausen zwischen zwei identischen Aufrufen probiert. Ohne Erfolg:
WallPlugColor(Wallplug_ID,4) --.. dann WP Farbe rot
fibaro:sleep(4000)
WallPlugColor(Wallplug_ID,4) --.. dann WP Farbe rot
Dann nochmal ein Versuch über das VD mit Button drücken per LUA. Hier klappt es, aber nur wenn man eine Pause von min. 4 Sekunden zwischen den Aufrufen einhält, z.B.:
fibaro:call(178, "pressButton", "4") -- Button im VD drücken
fibaro:sleep(4000)
fibaro:call(178, "pressButton", "4") -- Button im VD drücken
Irgendeine saubere ‘refresh’ Aktion wäre hier sinnvoll. Hab da aber keine Vorstellung.
ich hab heute mal das VD installiert und würde es gerne nutzen um den Status der Alarmanlage anzuzeigen.
Wenn scharf geschaltet wird soll der Ring 60 Sekunden rot leuchten, wenn der Alarm deaktiviert wird wird soll der Ring 180 Sekunden grün leuchten.
@gringo1
Würde ich über eine Szene machen. Trigger über deine Bedingung. In der Szene dann Aufruf vd über Button-drück-befehle mit entsprechenden Sleep Zeiten.
ich hatte das heute mal über eine blockszene ausprobiert. An bekomme ich den Ring in der gewünschten Farbe aber nicht wieder aus.
Ich könnte da bitte etwas Hilfe gebrauchen.