FluxLED Modul zur Steuerung von WLAN LED Controllern

Begonnen von igami, 27 Mai 2017, 20:45:58

Vorheriges Thema - Nächstes Thema

buec65

Hab das jetzt zum Test schnell so umgesetzt

define T7ColorJumping dummy
attr T7ColorJumping room LED-Szenen
attr T7ColorJumping webCmd ON:OFF
define T7cj DOIF ([T7ColorJumping] eq "ON")  ({qx(./FHEM/flux_led/flux_led.py -1p 56 85 192.168.178.67 192.168.178.65)}) DOELSE ({qx(./FHEM/flux_led/flux_led.py -0p 56 85 192.168.178.67 192.168.178.65)})

flux_led.py -l 192.168.178.67 listet die Voreinstellungen auf.
Die vordefinierten Modi sind von 37 bis 56 durchnummeriert.
flux_led.py hab ich im Verzeichnis /opt/fhem/FHEM/flux_led/
Schaltet gleichzeitig 2 LED-Stripes.

Ich bin begeistert [emoji106]

Mumpitz

Zitat von: buec65 am 04 September 2017, 20:17:36
Hab das jetzt zum Test schnell so umgesetzt

define T7ColorJumping dummy
attr T7ColorJumping room LED-Szenen
attr T7ColorJumping webCmd ON:OFF
define T7cj DOIF ([T7ColorJumping] eq "ON")  ({qx(./FHEM/flux_led/flux_led.py -1p 56 85 192.168.178.67 192.168.178.65)}) DOELSE ({qx(./FHEM/flux_led/flux_led.py -0p 56 85 192.168.178.67 192.168.178.65)})

flux_led.py -l 192.168.178.67 listet die Voreinstellungen auf.
Die vordefinierten Modi sind von 37 bis 56 durchnummeriert.
flux_led.py hab ich im Verzeichnis /opt/fhem/FHEM/flux_led/
Schaltet gleichzeitig 2 LED-Stripes.

Ich bin begeistert [emoji106]

Hallo zusammen
ich würde gerne von dieser Möglichkeiten gebrauch machen, um damit mein LED Stripe, welchen ich erfolgreich an Fhem angebunden haben (früher mit MagicHome App), blinken zu lassen.

Ich habe dazu nun zwei Fragen:

Wie kriege ich den Patch in mein System?
Du hast in deinem DOIF Aufruf 2 IP Adressen, gehe ich richtig in der Annahme das einer die IP von fhem und die andere deines LED Controllers ist? Oder wie genau?

danke für die HIlfe

buec65

#17
ich hab von hier https://github.com/beville/flux_led/archive/master.zip  flux_led heruntergeladen und in das Verzeichnis /opt/fhem/FHEM/flux_led/   entpackt da liegt dann die flux_led.py

und mit den folgenden Befehlen werden die angesteuert  bei mir 2 IP-Adressen = 2 LED-Stripes mit dem gleichen Befehl

mit ./flux_led.py -l 192.168.178.65  listet der Controller seine Presets und die hab ich hier als Dropdown und muss dann nur noch SET drücken

So hab ich das jetzt eingebaut


define TLSzene dummy
attr TLSzene room LED-Stripes
attr TLSzene setList 0-Aus 37SiebenFarbCrossFade 38RotGradient 39GruenGradient 40BlauGradient 41GelbGradient 42CyanGradient 43PurpleGradient 44WeissGradient 45RotGruenCrossFade 46RotBlauCrossFade 47GruenBlauCrossFade 48SiebenFarbStroboBlitz 49RotStroboBlitz 50GruenStroboBlitz 51BlauStroboBlitz 52GelbStroboBlitz 53CyanStroboBlitz 54PurpleStroboBlitz 55WeissStroboBlitz 56SiebenFarbSprung
define TSzene00 DOIF ([TLSzene] eq "0-Aus")  ({qx(./FHEM/flux_led/flux_led.py -0 85 192.168.178.67 192.168.178.65)})
define TSzene01 DOIF ([TLSzene] eq "37SiebenFarbCrossFade")  ({qx(./FHEM/flux_led/flux_led.py -1p 37 85 192.168.178.67 192.168.178.65)})
define TSzene02 DOIF ([TLSzene] eq "38RotGradient")  ({qx(./FHEM/flux_led/flux_led.py -1p 38 85 192.168.178.67 192.168.178.65)})
define TSzene03 DOIF ([TLSzene] eq "39GruenGradient")  ({qx(./FHEM/flux_led/flux_led.py -1p 39 85 192.168.178.67 192.168.178.65)})
define TSzene04 DOIF ([TLSzene] eq "40BlauGradient")  ({qx(./FHEM/flux_led/flux_led.py -1p 40 85 192.168.178.67 192.168.178.65)})
define TSzene05 DOIF ([TLSzene] eq "41GelbGradient")  ({qx(./FHEM/flux_led/flux_led.py -1p 41 85 192.168.178.67 192.168.178.65)})
define TSzene06 DOIF ([TLSzene] eq "42CyanGradient")  ({qx(./FHEM/flux_led/flux_led.py -1p 42 85 192.168.178.67 192.168.178.65)})
define TSzene07 DOIF ([TLSzene] eq "43PurpleGradient")  ({qx(./FHEM/flux_led/flux_led.py -1p 43 85 192.168.178.67 192.168.178.65)})
define TSzene08 DOIF ([TLSzene] eq "44WeissGradient")  ({qx(./FHEM/flux_led/flux_led.py -1p 44 85 192.168.178.67 192.168.178.65)})
define TSzene09 DOIF ([TLSzene] eq "45RotGruenCrossFade")  ({qx(./FHEM/flux_led/flux_led.py -1p 45 85 192.168.178.67 192.168.178.65)})
define TSzene10 DOIF ([TLSzene] eq "46RotBlauCrossFade")  ({qx(./FHEM/flux_led/flux_led.py -1p 46 85 192.168.178.67 192.168.178.65)})
define TSzene11 DOIF ([TLSzene] eq "47GruenBlauCrossFade")  ({qx(./FHEM/flux_led/flux_led.py -1p 47 85 192.168.178.67 192.168.178.65)})
define TSzene12 DOIF ([TLSzene] eq "48SiebenFarbStroboBlitz")  ({qx(./FHEM/flux_led/flux_led.py -1p 48 85 192.168.178.67 192.168.178.65)})
define TSzene13 DOIF ([TLSzene] eq "49RotStroboBlitz")  ({qx(./FHEM/flux_led/flux_led.py -1p 49 85 192.168.178.67 192.168.178.65)})
define TSzene14 DOIF ([TLSzene] eq "50GruenStroboBlitz")  ({qx(./FHEM/flux_led/flux_led.py -1p 50 85 192.168.178.67 192.168.178.65)})
define TSzene15 DOIF ([TLSzene] eq "51BlauStroboBlitz")  ({qx(./FHEM/flux_led/flux_led.py -1p 51 85 192.168.178.67 192.168.178.65)})
define TSzene16 DOIF ([TLSzene] eq "52GelbStroboBlitz")  ({qx(./FHEM/flux_led/flux_led.py -1p 52 85 192.168.178.67 192.168.178.65)})
define TSzene17 DOIF ([TLSzene] eq "53CyanStroboBlitz")  ({qx(./FHEM/flux_led/flux_led.py -1p 53 85 192.168.178.67 192.168.178.65)})
define TSzene18 DOIF ([TLSzene] eq "54PurpleStroboBlitz")  ({qx(./FHEM/flux_led/flux_led.py -1p 54 85 192.168.178.67 192.168.178.65)})
define TSzene19 DOIF ([TLSzene] eq "55WeissStroboBlitz")  ({qx(./FHEM/flux_led/flux_led.py -1p 55 85 192.168.178.67 192.168.178.65)})
define TSzene20 DOIF ([TLSzene] eq "56SiebenFarbSprung")  ({qx(./FHEM/flux_led/flux_led.py -1p 56 85 192.168.178.67 192.168.178.65)})

igami

Könnte noch jemand testen über flux_led einen color Befehl abzusetzen?

Wenn ich den Befehl

./flux_led2.py 192.168.178.33 -c "255,255,255"

absetze bekomme ich zwar die Antwort

Setting color RGB:(255, 255, 255) [(255, 255, 255)]

aber die Farbe wird nicht geändert. Da ich nur einen controller habe kann ich nicht nachstellen ob es ein Fehler im python script ist oder eine unverträglichkeit mit meinem LD382A Controller.
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

buec65

#19
Eingabe bei mir ./flux_led.py -c 255,255,255 ip-controller1 ip-controller2 funktioniert.
Wenn der Controller vorher aus ist ./flux_led.py -1c (sende ich immer).
Sind 2 LD382A


./flux_led.py 192.168.10.65 -c (255,255,255)
-bash: Syntaxfehler beim unerwarteten Wort `('

./flux_led.py -c 255,255,255 192.168.10.65 192.168.10.67
Setting color RGB:(255, 255, 255) [color=white]
Setting color RGB:(255, 255, 255) [color=white]
root@opti:/opt/fhem/FHEM/flux_led#


./flux_led.py -c white 192.168.10.65 192.168.10.67
Setting color RGB:(255, 255, 255) [color=white]
Setting color RGB:(255, 255, 255) [color=white]
root@opti:/opt/fhem/FHEM/flux_led#

igami

Merkwürdig, habe es nun noch mehrmals mit unterschiedlicher Syntax versucht und bekomme auch immer die Bestätigung, dass der Befehl abgesetzt wird, nur passieren tut nichts. Aber prinzipiell scheint es ja zu funktionieren :)

Bin gerade dabei ein kleines Modul zu schreiben.
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

buec65

bei mir hat der Controller auch mal den Dienst verweigert, hab dann einmal mit der MagicHome App eingeschaltet und Farbe geändert...   dann ging es wieder.

Wenn jemand zum Test gebraucht wird kann ich gerne machen.

Wäre schön, wenn 2-3 LED-Streifen gleichzeitig gesteuert werden könnten.

igami

Das mit den mehreren Controllern habe ich noch gar nicht bedacht, kann ich aber gerne berücksichtigen.

Ich muss schauen wann ich Zeit finde, aber Tester sind immer gerne gesehen :)
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

Mumpitz

Zitat von: igami am 10 September 2017, 14:57:12
Das mit den mehreren Controllern habe ich noch gar nicht bedacht, kann ich aber gerne berücksichtigen.

Ich muss schauen wann ich Zeit finde, aber Tester sind immer gerne gesehen :)
Würde mich auch zum testen anbieten. Hab aber leider bis jetzt erst ein UFO im Einsatz. Einfach bei Bedarf melden!

igami

Im Anhang eine erste Version mit deutscher Commandref.
Im FHEM Verzeichnis speichern.

reload 32_FluxLED
help FluxLED


ToDo:
- Befehle nicht blockierend Ausführen
- Log Einträge
- Englische Commandref
- Übergänge wie im WifiLight Modul
- Werte als HSV
- Einstellen von Timern

Ich habe nur einen LD382A Controller zum Testen und bei mir funktioniert das Schalten der Farben nicht.

Ich freue mich über eure Rückmeldungen.

Grüße
igami
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

buec65

Bei mir auch so
Direkt sieht der Befehl so aus und funktioniert.
flux_led.py -1c limegreen 192....
Preset
flux_led.py -1p 37 75 192....

Hinter SET speed ist bei mir ein grünes Rechteck mit einer 0

Grüße
Buec65

buec65

hab mir mal den Code angeschaut (keine Ahnung) aber mir sind da verschiedene Pfade aufgefallen


ab Zeile 33
# variables #################################################
my $FluxLED_path = "/opt/flux_led/flux_led.py";

ab Zeile 267
my $CONTROLLERS = $hash->{CONTROLLERS};
  my $ret;

  if($argument eq "clock"){
    $ret = `./FHEM/lib/flux_led.py $CONTROLLERS --getclock`;
    my @ret =  split(/[\s]+/, $ret);
    $ret = @ret == 5 ? "$ret[3] $ret[4]" : undef;
  }
  elsif($argument eq "controllers"){
    $ret = `./FHEM/lib/flux_led.py --scan`;
  }


in /opt/fhem/FHEM/lib   liegt bei mir glaube ich keine flux_led.py

igami

Zitat von: buec65 am 27 September 2017, 07:15:08
hab mir mal den Code angeschaut (keine Ahnung) aber mir sind da verschiedene Pfade aufgefallen
Hatte ich am Anfang mal fest programmiert. Da sie bei mir an der Stelle liegt hat es auch funktioniert.
Im Anhang eine aktualisierte Version zum testen.
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

buec65

Keine Änderung, was muss ich anpassen um die Geschwindigkeit bei einem Preset einzustellen?
Da steht bei mir immer eine 0 drin, würde aber sagen es läuft mit 100 Prozent.

igami

Habe noch einige Fehler gefunden ::)
Neue Version im Anhang.
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED