Hallo zusammen,
ich habe die Lidl Zigbee Lichterkette via Conbee II und Deconz in Fhem eingebunden.
Sie taucht lediglich als normale RGB Leuchte auf.
Gibts eine Möglichkeit die Effekte zu steuern wie in der App? Oder fällt das unter "eingeschränkte Funktionalität mit anderen Gateways"?
Wenn nur normal RGB geht, ist die doch etwas teuer. Evtl. hab ich ja was übersehen.
Habe die nicht, aber in https://forum.fhem.de/index.php/topic,115998.msg1110416.html#msg1110416 könnte ein Weg beschrieben sein, wie das geht. Evtl. kann man dazu auch eine "configList" bauen...
(Wäre ein Thema für attrTemplate@HUEDevice (https://forum.fhem.de/index.php/topic,101829.0.html), aber das Thema scheint ein wenig verwaist zu sein).
Danke!
Habe auch noch was gefunden:
Attribut widgetOverride mit den Werten: "effect:steady,snow,rainbow,snake,twinkle,fireworks,flag,waves,updown,vintage,fading,collide,strobe,sparkles,carnival,glow"
Damit kann man dann die Effekte direkt ansteuern.
Ich vermute mal die Effekte kann man nicht weiter customizen? Oder wie ist das in dem Link von Beta-User zu verstehen?
Gefunden habe ich das übrigens hier: https://www.youtube.com/watch?v=-UC7rc8GdQQ
Hier gibt es Info wie man die weiter mit Deconz individualisieren kann:
https://github.com/dresden-elektronik/deconz-rest-plugin/issues/3716#issuecomment-735467996
Beispiele dazu sind ja auch unter dem Link von Beta-User.
Mit dem RESTclient in Firefox kann ich das so auch an meinen Raspbee senden. Beim Hue-Modul in FHEM kann man aber wohl bei Lampen keinen JSON String senden, bei den Sensoren geht das ja.
Es müßte auch manches direkt gehen. Zum Testen:
###########################################
# Melinera (Lidl) Smarte Lichterkette
name:Melinera_LED_fairy_lights_ZigBee
filter:TYPE=HUEDevice
desc: Might fit for product distributed by Lidl
order:X_01
par:ICON;ICON as set, defaults to light_fairy_lights;{ AttrVal('DEVICE','icon','light_fairy_lights') }
attr DEVICE icon ICON
attr DEVICE configList /effect (.*)/:{"effect":"$1"}\
/effectSpeed (.*)/:{"effectSpeed":"$1"}\
/sparkles1 (.*)/:{"effect": "sparkles", "on": true,"effectColours": [[0,0,255],[0,255,0],[255,0,0]]}\
/sparkles2 (.*)/:{"effect": "sparkles", "on": true,"effectColours": [[0,255,0],[255,255,255],[255,0,0]]}\
/effectWColors (\w+)\s+(.*)/:{"effect": "$1", "on": true,"effectColours":$2}
attr DEVICE widgetOverride effect:steady,snow,rainbow,snake,twinkle,fireworks,flag,waves,updown,vintage,fading,collide,strobe,sparkles,carnival,glow effectSpeed:selectnumbers,0,1,10,0,lin sparkles1:noArg sparkles2:noArg
attr DEVICE webCmd effect:effectSpeed:sparkles1:sparkles2
setreading DEVICE attrTemplateVersion Melinera_LED_fairy_lights_ZigBee_20211215
parameter, effect, is not modifiable. Device is set to off.
Damit hat das Hue Modul wohl ein Problem. effect gibt es da halt einfach als Befehl, effectSpeed aber nicht.
configList gibt es auch nur bei Sensoren
Hmm, ich habe das Teil nicht, das war aus der Hüfte...
Ihr könnt das gerne in einen funktionsfähigen Stand bringen und im "attrTemplate-Thread" dann posten :) . "bri" fehlt als setter in webCmd wohl auch noch. Falls sich Shojo nicht meldet, werde ich dann vermutlich aktiv, damit alle was davon haben.
...vielleicht noch in Ergänzung zu dem hier: https://forum.fhem.de/index.php/topic,11020.msg1193486.html#msg1193486 (https://forum.fhem.de/index.php/topic,11020.msg1193486.html#msg1193486)
Da ist ein paar Beiträge weiter vorne sowas zu finden:
attr HUE1_Christmas_Living setList start:{"status": 1 }\
stop:{"status": 0 }
Das stammt zwar von einem sensor(?), aber vielleicht hilft das trotzdem irgendwie weiter. Ist leider ein Bereich in HUEDevice, den ich auch bisher nicht selbst genutzt habe, und jedesmal verwundert bin, dass es anscheinend praktisch keine Doku gibt...
die doku ist wie immer in der commandref :).
ansonsten bitte mal diese variante testen: https://forum.fhem.de/index.php/topic,11020.msg1193500.html#msg1193500
::) ... schon...
Das Poblem ist: Man kann das nur verstehen, wenn man eine passende Aufgabenstellung hat, sonst fängt man damit nicht allzuviel an (war nur mein persönlicher Eindruck)...
Hatte auch einen Blick in HUEDevice geworfen, bin aber nicht weit gekommen. Hier aber jedenfalls ein "id"-Vorschlag betr. die commandref und ein paar andere Kleinigkeiten:
(OT: Da werden Funktionen aus HUEBridge aufgerufen, ohne dass abgesichert ist, dass das Modul wirklich geladen ist. Sollte da nicht sicherheitshalber ein "use 30_HUEBridge;" vorne stehen? (oder bei den Aufrufen abgesichert werden, dass die Funktionshashes da sind).
Falls Interesse besteht, nehme ich mir HUEBridge wegen der "id"-Geschichte auch noch vor.EDIT: direkt erledigt... (aber beides noch nicht getestet).
das problem ist auch umgekehrt: ohne konkreten anwendungsfall kann man es schlecht erklären. und man muss sowieso recht tief ins api einsteigen und sein device gut kennen um die json features zu nutzen
HUEDevice wird nicht nur mit dem HUEBridge modul als bridge verwendet. es kann auch mit TRÅDFRI oder lightfy verwendet. ein use scheidet deshalb aus. aber eigentlich sollten die huebridge routinen nur aufgerufen werden wenn die bridge tatsächlich eine hue bridge ist. wenn das nicht so ist fehlt noch etwas. wo genau hast du etwas gesehen ?
danke. die id änderungen baue ich beim nächsten chekin mit ein.
Das mit den "externen calls" ist mir nur beim ersten Drüberfliegen aufgefallen und auch erst später aufgegangen, dass es da unterschiedliche Codes gibt - je nach IO. Wird schon passen, sonst hätte sich vermutlich schon jemand mal beschwert ::) ...
Dass das mit der Doku ein "Henne-Ei"-Problem ist, ist schon klar. Von daher macht es nur Sinn für konkrete Anwendungsfälle, und ich habe das dann (vor längerem) mal versucht nachzuvollziehen, um einen Vorschlag für das attrTemplate-file machen zu können. Mit dem Ergebnis, dass ich recht ratlos geblieben war, wie das denn nun warum anzubringen wäre...
(Das war mit der Grund, warum ich den "Hüftschuss" für das Lidl-Ding abgegeben hatte - es braucht erfahrungsgemäß einfach Beispiele, mit denen man "spielen" kann, dann geht es ggf. auch weiter).
der lidl fall wäre aktuell noch garnicht gegangen da json bisher nur für sensoren erlaubt war. man könnte aber mal das forum hier nach beispielen dafür durchsuchen. es müsste eigentlich 3 oder 4 geben und das ganze ins wiki bringen.
Dass das mit der Lichterkette spezieller ist als gedacht, ist mir dann beim Blick in den Code und dem Hinweis von sinus61 auch aufgegangen ::) .
Beim Suchen nach Beispielen für die attrTemplate-File hatte ich zumindest den Teil zusammengetragen, der für mich nachvollziehbar war. Würde daher vorschlagen, dass wir das ganze eher in Etappen machen:
1. Relaunch der attrTemplate-File (in der Hoffnung, dass da ggf. noch weitere Beispiele dazukommen. Gibt ja uU. auch solche, die wir noch gar nicht kennen?)
2. Dann Überarbeitung vom Wiki (und uU. der commandref) - wobei das vermutlich am Ende nicht viel mehr sein wird wie ein oder zwei kurze Beispiele in Verbindung mit dem Hinweis auf die attrTemplate-File...?
etappenweise ist gut, ich würde aber fast umgekehrt vorschlagen. erst im wiki sammeln was es alles gibt und dann daraus die templates machen die für mehr als einen fall interessant sind (oder auch nicht wenn alles einzelfälle sind). das wiki hilft bei neuen fällen vielleicht auch eher weiter wenn jemand eine neue lösung für sich sucht als sich zuerst durch die templates zu arbeiten? in der commandref habe ich für solche Spezialfeatures auch kein problem direkt aufs wiki zu verweisen.
einen überblick über vorhanden fälle gibt es z.b. wenn man nach configList im forum sucht oder nach setList im zigbee board. nach configsensor, setsensor und updatesensor könnt man da auch mal suchen.
Lustig. Habe das mit der Suche mal auf die Schnelle gemacht, und das greifbare Ergebnis ist ziemlich wenig, aber jetzt hier zu finden: https://wiki.fhem.de/wiki/Hue#Spezielle_Konfigurationsm.C3.B6glichkeiten
ich sage ja es ist recht speziell :). aber insgesamt sollte es bisher schon noch ein oder zwei beispiele mehr gegeben haben. ich suche auch noch mal. aber es ist schon mal ein anfang. danke!
Vielleicht probiert ja der eine oder andere Besitzer der Lichterkette jetzt mal die erweiterten Möglichkeiten aus:
https://forum.fhem.de/index.php/topic,11020.msg1193500.html#msg1193500
Die ganzen Möglichkeiten über FHEMWEB einzustellen erscheint mir aber gerade schwierig, da die einzelnen Effekte ja auch von 0-6 Farben haben können. Da würde mir nur einfallen ein extra Notify dafür zu bauen, aber Weihnachten ist ja schon bald wieder vorbei :)
In der App "HueEssentials" kann man die Effekte auch alle steuern, wenn da was gefällt baue ich mir das dann als JSON String und kann es aus FHEM senden. Leider kann man woanders eingestellte Farben nicht wieder abrufen, effectColours wird nicht von der API zurückgeliefert, da das dort wohl in Tuya Befehle umgesetzt wird.
das kann man mit eventMap umsetzen. man muss nur die perl code version verwenden. also z.b.:
attr HUEDevice1 eventMap {usr=>{'test' => 'on : {"effect": "colorloop"}'}}
und dann mit einem einfachen set HUEDevice1 test aktivieren. oder test im webCmd verwenden.
allgemein: attr <name> eventMap { usr => { 'cmd1' => '<cmd1>'}, 'cmd2' => '<cmd2>', ... } }
wobei <cmdN> dann jeweils jede beliebige kombination aus hue set kommando (inklusive json) wie im anderen thread beschrieben sein kann.
Danke für den Schubs. Damit sollte es machbar sein, ein paar Beispiel-Kommandos in ein attrTemplate zu packen, viel mehr an Hilfestellung geht dann bei der Vielzahl der Möglichkeiten auch nicht.
@sinus61: Magst du meinen Steinbruch aus dem obigen Vorschlag ausschlachten und was getestetes liefern?
@justme1968:
Bzgl. commandref-id enthält deine Modulfassung einen Rückschritt, anbei eine hoffentlich insgesamt konsolidierte Fassung.
ja. die id änderungen hatte ich noch nicht eingebaut weil deine änderungen auf einer älteren version basiert hatten und ich das später machen wollte.
dank deiner neuen version ist das jetzt aber erledigt :)
Zitat von: justme1968 am 16 Dezember 2021, 13:02:05
das kann man mit eventMap umsetzen. man muss nur die perl code version verwenden. also z.b.:
Guter Hinweis, damit kann man sich ein paar Favoriten bauen und die einfacher wieder aufrufen.
Ich hatte ja überlegt sowas wie im Bild zu bauen, ein kleines Notify dazu und man die Effekt auch in FHEM zusammenbauen. Wird aber vielleicht doch eher eine Aufgabe für Weihnachten 2022 ;)
Vielleicht so:
###########################################
# Melinera (Lidl) Smarte Lichterkette
name:Melinera_LED_fairy_lights_ZigBee
filter:TYPE=HUEDevice
desc: Might fit for product distributed by Lidl
order:X_01
par:ICON;ICON as set, defaults to light_fairy_lights;{ AttrVal('DEVICE','icon','light_fairy_lights') }
attr DEVICE icon ICON
attr DEVICE { usr => { 'effectSpeed\s+(.*)' => '{"effectSpeed":"$1"}', 'sparkles1' => '{"effect": "sparkles", "on": true,"effectColours": [[0,0,255],[0,255,0],[255,0,0]]}', 'sparkles2' => '{"effect": "sparkles", "on": true,"effectColours": [[0,255,0],[255,255,255],[255,0,0]]}', 'effectWColors(\w+)\s+(.*)' => '{"effect": "$1", "on": true,"effectColours": "$2" }' } }
attr DEVICE widgetOverride effect:steady,snow,rainbow,snake,twinkle,fireworks,flag,waves,updown,vintage,fading,collide,strobe,sparkles,carnival,glow effectSpeed:selectnumbers,0,1,10,0,lin sparkles1:noArg sparkles2:noArg
attr DEVICE webCmd bri:effect:effectSpeed:sparkles1:sparkles2
setreading DEVICE attrTemplateVersion Melinera_LED_fairy_lights_ZigBee_20211217
Hallo zusammen,
sowohl das neue HueDevice Modul als auch das Template funktionieren bei mir ohne Probleme. Vielen Dank noch mal dafür!
Ich scheitere gerade dabei die Lichterkette auf ein schönes warm weiß zu schalten. Über den Controller bekomme ich das hin, über FHEM leider nicht. da ist das immer eine RGB Mischung.
Auch scheint der Controller an der Lichterkette nicht zu melden, wenn dort jemand via Tasten die Einstellungen verändert.
so wie ich die hardware verstanden habe ist das ding nur rgb und es sind keine weiß leds verbaut. d.h. alle färben inklusive weiß werden gemischt. da hue kein natives rgb hat wird es anhand der veröffentlichten led charakterisitk für die hue lampen angenähert berechnet. wenn in einer lampe andere leds stecken passen dann die farben nicht. das lässt sich prinzipiell nicht ändern.
der ausweg ist normalerweise nicht rgb zu verwenden sondern eines der nativ unterstützen farbmodelle. im einfachsten fall hsv. am einfachsten stellt man direkt an der hardware die gewünschte farbe ein und liest dann den eingestellten hsv wert aus. den kann man dann ohne verlust bzw. änderung immer wieder verwenden.
wenn die lampe tatsächlich nichts zurück meldet ist das natürlich doof.
versuch mal das zweifache pooling intervall zu warten. du kannst auch versuchen ein mal mit off/on aus und wieder einzuschalten. startet die lampe wieder mit den alten werten? werden sie dann immer noch nicht gemeldet? eventuell wieder warten.
got it, probiere ich mal aus.
Ein und Ausschalten behält die "Farbe" bei. Genauso stromlos machen. Auch wenn man nur den Effekt ändert. Z.B. auf Rainbow und zurück auf Steady lässt Steady schön weis leuchten. Änder ich in Rainbow z.b. die Farbe ist danach aus Steady in dieser Farbe.
So, ein set sat auf 0 bringt die Kette in schönem Warmweiß zum Leuchten.
Auf RGB reagiert sie überhaupt nicht nur auf set hue <Farbe>
Auch das Verändern von Effectspeed ändert nichts. Habe jetzt aber nicht alle Effekte durchprobiert.
Bisher hat der Controller nichts zurückgemeldet.
Gefunden hier: https://github.com/dresden-elektronik/deconz-rest-plugin/issues/3716#issuecomment-736789205 (https://github.com/dresden-elektronik/deconz-rest-plugin/issues/3716#issuecomment-736789205)
To control the Xmas light strip:
Set on for on/off. I added support for ontime, but the strip doesn't seem to support it;
Set hue (0 - 65535), sat (0 - 254), and bri (0 - 254) as HSL values for colour mode;
Set sat to 0 and bri (0-254) for white mode;
Set effect and, optionally, effectSpeed and effectColours for effect mode, e.g.
{"effect": "flag", "effectSpeed": 10, "effectColours": [[255,0,0],[0,255,0],[0,0,255]]}
The effects are: "steady", "snow", "rainbow", "snake", "tinkle", "twinkle", "fireworks", "flag", "waves", "updown", "vintage", "fading", "collide", "strobe", "sparkles", "carnival", "glow";
Set "effect": "none" to revert to previous mode (white or colour).
Ich wollte gerade das Template um das Normale weiß erweitern. Ich scheitere an der übergabe des sat Wertes:
'NormalWhite' => '{"effect": "steady", "on": true,"sat": "0"}'
Habe sat auch schon ohne "" und in [] angegeben. wie übergebe ich das richtig?
"Richtiges JSON" ist etwas "empfindlich", was die Formatierung mancher Werte angeht...
Meine Vermutung: Die Quotes an der einen Stelle weglassen, also so:
'NormalWhite' => '{"effect": "steady", "on": true, "sat": 0 }'
PS: Danke für die Rückmeldung zum template usw.. Vermutlich werde ich dann bei Gelegenheit die komplette File einchecken, Shojo hat sich bisher leider nicht gemeldet, und wie es nach dem letzten Hackel rund um Java aussieht, werde ich auch nicht den Schritt Richtung zigbee2mqtt gehen, an dem ich lange rumüberlegt habe...
Ohne "" hab ich auch schon probiert. Geht net.
Muss ich das evtl. noch anders trennen? Wird das evtl. als zu effect gehörig interpretiert?
...kann man nur raten, aber wenn es im selben "blob" steht, wird es vermutlich als "zum Effekt gehörend" angesehen werden...
laut Sinus61 scheint das nicht zu gehen: https://forum.fhem.de/index.php/topic,11020.msg1193861.html#msg1193861 (https://forum.fhem.de/index.php/topic,11020.msg1193861.html#msg1193861)
Schade :-(
Hab eine Lösung gefunden:
'NormalWhite' => '{"sat": 0}'
Das schaltet auf Weiß um. Der effect wechselt zwar auf none, aber läuft.
Könntest du das in dein Template einbauen?
Bei mir hat es übrigens kurz nach Weihnachten die Funkverbindung zur Kette zerrissen, daher konnte ich das Thema nicht weiter verfolgen. Werde jetzt mal sehen ob ich die wieder zum Laufen bekomme, ist ja jetzt wieder ein paar Monate Zeit :)
Kurze Frage in die Runde,
löscht ihr alle Devices, die für die Weihnachtsbeleuchtung genutzt werden oder lasst ihr die in Fhmen / Deconz stehen? Die gehen dann auf unreachable und sonst stören die nicht?
Muss man die noch deaktivieren oder so?
Nicht erreichbare Devices stören nicht. Ich empfehle eventuell vorhandene DOIF- oder at-Zeitsteuerungen zu deaktivieren, sonst gibt es Fehlermeldungen im Log, die man aber auch ignorieren kann.
Viele Grüße