Twinkly Wall 210 LEDs

Begonnen von Sijanga, 13 November 2018, 19:50:31

Vorheriges Thema - Nächstes Thema

Sijanga

Moin zusammen
Hat jemand schon Mal mit solch einem LED-Vorhang was gemacht? Gibt es da schon ein Modul?
Ist es kompliziert, so etwas zu schreiben?

Würde mich für etwas Feedback sehr freuen

Viele Grüße
Sijanga

VB90

Mahlzeit.
Langsam geht es ja nun wieder auf Weihnachten hin und die smarte Baum-Beleuchtung von https://twinkly.com/ hat vielleicht inzwischen einen größeren Freundeskreis.

Falls dem so ist, ich habe auch so ein nettes Teil und wäre hoch erfreut, das über fhem in Lichtszenen etc einbinden zu können.

vb
Man muss das Rad nicht neu erfinden, nur wissen wie es gedreht wird.

Raymund

Prost.

Wenn Du solch ein tolles Teil ja schon besitzt, dann könntest Du ja mal den WireShark raus lassen und ein bisschen protokollieren. Ggf. kaufe ich mir dann auch so ein Teil und schreibe das Modul ;-)

Geht auch via Fritzbox: http://fritz.box/html/capture.html

Grüße

peterk_de

Hab mir eben so eine Lichterkette bestellt, nachdem ich das hier gefunden hatte:

https://xled-docs.readthedocs.io/en/latest/protocol_details.html

Wie es aussieht, geht da einiges ... allerdings habe ich jetzt die aktuelle Version (2019 Special Edition mit RGBW) bestellt, mal gucken ob das da auch noch alles geht ... insbesondere per Rest-API sollten die Basics aber einfach machbar sei. Auch MQTT unterstützen die Teile wohl (wobei ich MQTT in meiner Installation noch nicht nutze).
FHEM auf Ubuntu-VM / 2xNUC Proxmox Cluster
UI: HomeKit, TabletUI, Grafana
IOdevs: 2xHueBridge, RaspiMatic-CCU, CUL868, 2xHarmonyHub, 6xRaspi-Roomnode mit CO2, VOC und lepresenced
Devices: 107xHomematic(IP), 96xPhilips Hue, 17xTECHEM, 12xBTLE, 8xSONOS, 2xHomeConnect, 1xShelly 3em, 1xNanoleaf ...

willib

Sag bitte Bescheid wie es klappt. Ich freue mich immer wenn ich mein FHEM Universum erweitern kann.
FHEM in Debian 10 LXC unter Proxmox auf NUC, Homematic, Hue, Intertechno, Jeelink, RFXTRX, Harmony Hub, VU+ Uno 4K, Sonos, AMAD

Prof. Dr. Peter Henning

Schönheit liegt im Auge des Betrachters  ::) ::)

LG

pah

heiko-73

Gibt es schon erste Versuche?

peterk_de

Ja, aber mangels Zeit nur umständlich:

Die Authentifizierung der Kette mittels HTTPMOD abzubilden war mir zu ... kompliziert. Geht bestimmt, aber die Syntax ist etwas ... urghs.

Ich habe stattdessen die API hier ausprobiert - https://github.com/scrool/xled - die liefert netterweise ein Commandline-Tool mit, das sich wiederum per FHEM problemlos zum an/ausschalten verwenden lässt. Läuft aber nicht mit den neuen Gen 2 - Ketten, da sich bei der Authentifizierung was geändert hat und die Library (sinnloserweise) prüft, ob da eine echte Twinkly ist.

Also muss man die Library per Git pullen und leicht modifizieren - wenn man diese Prüfung abschaltet (auth.py Zeile 384 auskommentieren), läuft es auch mit den neuen Ketten. Dann sudo python3 setup.py install und man hat das xled-Kommandozeilentool.

Das wiederum scheint buggy zu sein, wenn man mehrere Ketten hat, dann nimmt er trotz angegebener IP (--hostname) immer die gleiche - und per Namen der Kette (--name) tut er gar nix.

Naja also ich kann jetzt per FHEM eine meiner beiden Ketten an- und ausschalten ^^
FHEM auf Ubuntu-VM / 2xNUC Proxmox Cluster
UI: HomeKit, TabletUI, Grafana
IOdevs: 2xHueBridge, RaspiMatic-CCU, CUL868, 2xHarmonyHub, 6xRaspi-Roomnode mit CO2, VOC und lepresenced
Devices: 107xHomematic(IP), 96xPhilips Hue, 17xTECHEM, 12xBTLE, 8xSONOS, 2xHomeConnect, 1xShelly 3em, 1xNanoleaf ...

peterk_de

#8
So, hab es mit HTTPMOD nun ordentlich am Laufen - auch mehrere Ketten sind kein Problem. Getestet mit zwei Generation-2-String-RGBW-Ketten, müsste aber auch mit allen anderen klappen (bitte mal mit Gen-1-Ketten testen!


defmod wz.wbaum HTTPMOD http://192.168.178.77/xled/v1/led/mode 60
attr wz.wbaum userattr get01Name get01Poll:0,1 get01PollDelay get01PollDelay:0,1 get01URL requestHeader01 set01Data set01Hint set01Name set01TextArg:0,1 set01URL setHeader1 setHeader2 sid01Data sid01IdJSON sid01URL sid02Data sid02Header sid02URL sid2Header sidHeader1 sidHeader2
attr wz.wbaum alias Weihnachtsbaum
attr wz.wbaum devStateIcon off:general_aus movie|demo:general_an rt:rc_SETUP
attr wz.wbaum enableControlSet 1
attr wz.wbaum event-on-change-reading .*
attr wz.wbaum eventMap /mode off:aus/mode movie:an/
attr wz.wbaum extractAllJSON 1
attr wz.wbaum get01Name Gestalt
attr wz.wbaum get01Poll 1
attr wz.wbaum get01PollDelay 3600
attr wz.wbaum get01URL http://192.168.178.77/xled/v1/gestalt
attr wz.wbaum group Twinkly_HTTPMOD
attr wz.wbaum icon christmas_tree
attr wz.wbaum reAuthRegex Invalid.Token
attr wz.wbaum requestHeader01 X-Auth-Token: $sid
attr wz.wbaum room Twinkly
attr wz.wbaum set01Data {"mode":"$val"}
attr wz.wbaum set01Hint movie,off,demo,rt
attr wz.wbaum set01Name mode
attr wz.wbaum set01TextArg 1
attr wz.wbaum set01URL http://192.168.178.77/xled/v1/led/mode
attr wz.wbaum setHeader1 Content-Type: application/json
attr wz.wbaum setHeader2 X-Auth-Token: $sid
attr wz.wbaum showBody 1
attr wz.wbaum sid01Data {"challenge": "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8="}
attr wz.wbaum sid01IdJSON authentication_token
attr wz.wbaum sid01URL http://192.168.178.77/xled/v1/login
attr wz.wbaum sid02Header X-Auth-Token: $sid
attr wz.wbaum sid02URL http://192.168.178.77/xled/v1/verify
attr wz.wbaum sidHeader1 Content-Type: application/json
attr wz.wbaum stateFormat mode
attr wz.wbaum webCmd an:aus


Bitte alle IPs entsprechend anpassen.

Als Readings kommen alle Device-Config-Infos stündlich (oder sofort per get devicename Gestalt) --> Bedeutung siehe https://xled-docs.readthedocs.io/en/latest/rest_api.html#device-details

Hinzu alle 60 Sekunden der Status im Reading mode; mögliche Werte:

movie --> Hochgeladener Effekt aus der App
rt --> Livestreaming per UDP aus der App
demo --> Eingebaute Effekte, die Ohne Mapping funktionieren
off --> aus

Die entsprechenden Modi lassen sich mit z.B. set devicename mode movie auch setzen. Das Updateintervall ist das aus der ersten Zeile (defmod)

Ich habe per eventMap "mode movie" bzw. "mode off" auf "an" bzw "aus" gemappt, das heißt mit der Config oben könnt ihr einfach machen:

set wz.wbaum an
set wz.wbaum aus


Das ist erstmal alles, was einfach ging und sinnvoll ist ... für das UDP-Streaming von Animationen auf die Kette müsste man deutlich mehr aufwand betrieben ;-)
FHEM auf Ubuntu-VM / 2xNUC Proxmox Cluster
UI: HomeKit, TabletUI, Grafana
IOdevs: 2xHueBridge, RaspiMatic-CCU, CUL868, 2xHarmonyHub, 6xRaspi-Roomnode mit CO2, VOC und lepresenced
Devices: 107xHomematic(IP), 96xPhilips Hue, 17xTECHEM, 12xBTLE, 8xSONOS, 2xHomeConnect, 1xShelly 3em, 1xNanoleaf ...

VB90

grandios.
Vielen Dank und Frohe Weihnachten!

vb
Man muss das Rad nicht neu erfinden, nur wissen wie es gedreht wird.

heiko-73

Oh peterk DANKE schon mal für Deine Mühen :)
da werd ich die Tage mal testen!
Dann könnte man die Kette endlich problemlos Morgens und Abends für x Stunden einschalten!
Die Einstellmöglichkeit in der App ist ja unterirdisch eingeschränkt.

VB90

#11
Hallo .
nachdem nach den Feiertagen nun etwas Ruhe eingekehrt ist, ist Zeit mal wieder zu spielen.

Ich wollte meine Twinkly, die an sich toll funktioniert, meiner "Alexa" bekannt machen und habe per "attr AlexaName Wand" einen Namen vergeben.
Anschliessend natürlich einen reload im Alexa-Modul.
Jedoch wird das Gerät nicht in der App oder unter alexa.amazon.de als solches eingebunden.

Könntet ihr das mal bitte testen, ob dies bei euch auch der Fall ist?
Welche Erfahrungen macht ihr diesgezüglich?

Andere Geräte funktionieren ausnahmslos ohne Probleme.

Danke,

vb

edit:
da andere - per httpmod eingebundene - "Geräte" in meiner Konfig auch nicht in Alexa eingebunden werden können, suche ich den Fehler bzw die Lösung nun eher dort.
Man muss das Rad nicht neu erfinden, nur wissen wie es gedreht wird.

peterk_de

VBS, könnte es sein, dass Fhem-alexa per default sowas wie set weihnachtsbaum on erwartet? Ich nutze es selbst nicht, aber bei Siri ist es so.

Falls ja, ändere einfach mal das ,,an" und ,,aus" im Attribut eventMap zu ,,on" bzw. ,,off".
FHEM auf Ubuntu-VM / 2xNUC Proxmox Cluster
UI: HomeKit, TabletUI, Grafana
IOdevs: 2xHueBridge, RaspiMatic-CCU, CUL868, 2xHarmonyHub, 6xRaspi-Roomnode mit CO2, VOC und lepresenced
Devices: 107xHomematic(IP), 96xPhilips Hue, 17xTECHEM, 12xBTLE, 8xSONOS, 2xHomeConnect, 1xShelly 3em, 1xNanoleaf ...

VB90

Peter, ja alexa erwartet ein Set on/off.
dein hinweis zur eventmap war der entscheidende Fingerzeig, es entsprechend "greifbar" zu machen.

Nun funktioniert es.

Vielen Dank.

vb
Man muss das Rad nicht neu erfinden, nur wissen wie es gedreht wird.

Borkk

Hallo peterk_de,

das Thema ist zwar schon ein Jahr alt aber Weihnachten ist ja immer nur einmal im Jahr ;). Ich habe mir eine Twinkly Wall (Gen1) an meiner Terrasse gehängt und muss sagen, sieht echt gut aus was das Teil so an Mustern zaubern kann. Ich habe dein HTTPMOD verwendet um Twinkly zu steuern. An/aus schalten ging auf Anhieb und auch der Mode DEMO wechselt ein paar Muster je nach "interval" der Reihe nach durch, ich kann aber nicht entscheiden welche.

....irgendwie stehe ich auf dem Schlauch... was machen die Modes Movie oder rt?

Kann ich gezielt ein Effekt ansteuern?
Kann ich eine Gruppe an Effekten durchlaufen lassen (z.B. die Favoriten). Den Intervall kann man ja bereits setzen.
Was bedeutet "movie --> Hochgeladener Effekt aus der App". Der Effekt der gerade läuft ?



Docker@DS220+ FHEM, ConBeeII, Homebridge, Nginx ReverseProxy, ConfigDB, MQTT, NodeRed, InfluxDB, Grafana,
Raspberrymatic@Raspi3: HmIP Akt- /Sensoren, Shelly´s, Tibber Puls, Alexa, ASC, Gardena, Netatmo, E-Paper, FritzBox; Tado°, HOMEMODE, iBeacon, OLED ; ESP32/8266, SwitchBot ...