FHEM Forum

FHEM - Anwendungen => Beleuchtung => Thema gestartet von: Felix_86 am 11 Dezember 2018, 10:25:00

Titel: [ERLEDIGT] Philips Hue - Kaminfeuer Effekt
Beitrag von: Felix_86 am 11 Dezember 2018, 10:25:00
Hallo Community,

ich habe mir überlegt, wie ich meine Philips Hue Leuchten im Wohnzimmer besinnlich nutzen kann. Bei meinen Recherchen bin ich dann auf den "Kaminfeuer-Effekt" gestoßen, siehe HIER (https://forum.fhem.de/index.php/topic,11020.msg203045.html#msg203045) (allerdings aus 2014).
Gibt es aktuellere Infos / Umsetzungen? Der Thread hat über 100 Seiten, die ich nun nicht alle lesen wollte :-/

Die beiden Subs habe ich in mein 99_myUtils.pm kopiert und dann versucht mittels {startFireEffect("Hue_WZ_Blume","Hue_WZ_TV")} (in der FHEM GUI Command Line (ganz oben)) zu starten.
Im FHEM Log sehe ich dann noch folgendes, bevor sich FHEM komplett die Karte legt und abstürzt:

2018.12.10 19:10:13 1: PERL WARNING: Argument "gettimeofday" isn't numeric in addition (+) at ./FHEM/99_myUtils.pm line 83.
2018.12.10 19:10:13 3: eval: {startFireEffect("Hue_WZ_Blume","Hue_WZ_TV")}
Undefined subroutine &main::FireEffect called at fhem.pl line 3127.


Wo liegt der Fehler?
Gibt es eine aktuelle Umsetzung dieser Anforderung ggf. als Modul (wurde damals überlegt) ?

Besten Dank vorab und eine schöne Vorweihnachtszeit.
Titel: Antw:Philips Hue - Kaminfeuer Effekt
Beitrag von: Otto123 am 11 Dezember 2018, 11:54:25
Hi,

Naja wo er Recht hat hat er Recht, probier doch selbst {qw(gettimeofday)}in der FHEM Kommandozeile. Da kann man nichts addieren...

Gruß Otto
Titel: Antw:Philips Hue - Kaminfeuer Effekt
Beitrag von: Felix_86 am 11 Dezember 2018, 21:19:44
Hallo,

da kommt der String (?) "gettimeofday" raus und keine Zahl ;)

Was hat sich hier zu 2014 geändert, als diese Sub scheinbar noch funktioniert hat?
Welchen Wert hat "gettimeofday" geliefert? Dann kann man eine aktuelle Funktion nutzen umd die Berechnung durchzuführen.

Danke
Titel: Antw:Philips Hue - Kaminfeuer Effekt
Beitrag von: SouzA am 12 Dezember 2018, 19:24:42
Hi,
Hatte das auch schon probiert und bin gescheitert.
Hänge mich als Interessent hier mal mit an.

Bis denn
SouzA
Titel: Antw:Philips Hue - Kaminfeuer Effekt
Beitrag von: CoolTux am 12 Dezember 2018, 19:49:55
Zitat von: Otto123 am 11 Dezember 2018, 11:54:25
Hi,

Naja wo er Recht hat hat er Recht, probier doch selbst {qw(gettimeofday)}in der FHEM Kommandozeile. Da kann man nichts addieren...

Gruß Otto

Da kommt in der Tat nichts bei raus. Allerdings ist gettimeofday eine Funktion
gettimeofday () Wird als Aufrufparameter für InternelTimer verwendet.
Ohne aber die ganze Funktion startFire gesehen zu haben kann man da nichts sagen.
Titel: Antw:Philips Hue - Kaminfeuer Effekt
Beitrag von: swsmily am 12 Dezember 2018, 21:06:13
Hab mir den alten Threat nicht nochmal angesehen, aber habe bei mir auch den Kaminfeuer-Effekt. Bei mir funkioniert er (gerade noch Update gemacht um wirklich akuell testen zu können)

Dies ist in MyUtils
startFireEffect(@)
{
  my @bulbs=@_;
  foreach (@bulbs) {
    my $bulb=$_;
my $hue = int((rand()*3460)+5460);
    my $sat = int(rand(64)+170);
    my $bri = int(rand(80)+16);
    my $delay = (rand()+0.1);
    my $transitiontime = int($delay * 10);
    fhem("set $bulb hue $hue: sat $sat : bri $bri : transitiontime $transitiontime immediateUpdate:noUpdate");
InternalTimer(gettimeofday()+$delay, 'startFireEffect', $bulb, 0);
  }
}

sub
stopFireEffect(@)
{
  my @bulbs=@_;
  foreach (@bulbs) {
    my $bulb=$_;
    RemoveInternalTimer($bulb);
##    fhem("set $bulb off");
  }
}



Und so rufe ich aus einem DOIF die Funktion auf:
{startFireEffect("HUE_Wohnzimmer_links","HUE_Wohnzimmer_mitte","HUE_Wohnzimmer_rechts","HUE_Wohnzimmer_Pflanze","HUE_Wohnzimmer_Balkon")}

Beenden:
{stopFireEffect("HUE_Wohnzimmer_links","HUE_Wohnzimmer_mitte","HUE_Wohnzimmer_rechts","HUE_Wohnzimmer_Pflanze","HUE_Wohnzimmer_Balkon")}
Titel: Antw:Philips Hue - Kaminfeuer Effekt
Beitrag von: Felix_86 am 12 Dezember 2018, 21:59:01
Danke swsmily, damit läuft's.

Die betroffene Zeile aus 2014:
InternalTimer(qw(gettimeofday)+$delay, 'FireEffect', $bulb, 0);

Die funktionierende Zeile von swsmily:
InternalTimer(gettimeofday()+$delay, 'startFireEffect', $bulb, 0);
Titel: Antw:Philips Hue - Kaminfeuer Effekt
Beitrag von: CoolTux am 12 Dezember 2018, 22:08:10
Zitat von: Felix_K am 12 Dezember 2018, 21:59:01
Danke swsmily, damit läuft's.

Die betroffene Zeile aus 2014:
InternalTimer(qw(gettimeofday)+$delay, 'FireEffect', $bulb, 0);

Die funktionierende Zeile von swsmily:
InternalTimer(gettimeofday()+$delay, 'startFireEffect', $bulb, 0);

Ich bezweifel das die besagte Zeile jemals funktioniert hat. Und kann mir nicht vorstellen das sie jemals so hier im Forum veröffentlicht wurde.
Titel: Antw:[ERLEDIGT] Philips Hue - Kaminfeuer Effekt
Beitrag von: Felix_86 am 12 Dezember 2018, 22:12:20
CoolTux,

schaue dir den oben genannten Link zum Hue Thread aus 2014 an, siehe HIER (https://forum.fhem.de/index.php/topic,11020.msg203045.html#msg203045). Dort wird die Zeile genau so genannt ;)
Titel: Antw:[ERLEDIGT] Philips Hue - Kaminfeuer Effekt
Beitrag von: CoolTux am 12 Dezember 2018, 22:19:37
Sehr komisch. Aber nun gut.
Titel: Antw:[ERLEDIGT] Philips Hue - Kaminfeuer Effekt
Beitrag von: swsmily am 12 Dezember 2018, 22:23:15
Es ist schon ne Weile her, dass ich das bei mir eingetragen habe.
Starterset HUE mit 3 Birnen hab ich erst seit November 2016 - ich denke da habe ich auch diesen Fire-Effekt gefunden und ausprobiert, aber ich habe nicht nur das FHEM Forum zur Hilfe genommen. Google hat mir Anfangs mit FHEM viel geholfen (und mich teilweise nur an die Richtigen stellen im Forum gebracht)

Ich glaube ich habe den funktionierenden Code von hier:
http://www.tatsch.it/kaminfeuereffekt-mit-hue-und-fhem/

Will ja ehrlich sein, hab es ja auch nur zusammen kopiert und für mich angepasst. Aus der Vorlage hab ich mir dann auch noch einen Feuerwerk-Effekt gebaut:
sub
startFireWorkEffect(@)
{
  my @bulbs=@_;
  foreach (@bulbs) {
    my $bulb=$_;
    my $hue = int((rand(65534))+1);
    my $bri = int(rand(224)+30);
    my $transitiontime = int((rand(30))+1);
    my $delay = int(($transitiontime / 10)+1);
fhem("set $bulb hue $hue : bri $bri : transitiontime 1 immediateUpdate:noUpdate");
fhem("set $bulb rgb 000000 : transitiontime $transitiontime");
InternalTimer(gettimeofday()+$delay, 'startFireWorkEffect', $bulb, 0);
  }
}

sub
stopFireWorkEffect(@)
{
  my @bulbs=@_;
  foreach (@bulbs) {
    my $bulb=$_;
    RemoveInternalTimer($bulb);
##    fhem("set $bulb off");
  }
}
Titel: Antw:[ERLEDIGT] Philips Hue - Kaminfeuer Effekt
Beitrag von: masked__rider am 25 Dezember 2018, 19:59:33
Hi!

Würde sich das auch auf Nicht-Hue Geräte übertragen lassen? Ich verwende einen ESPLED-Controller hier aus dem Forum.
Titel: Antw:[ERLEDIGT] Philips Hue - Kaminfeuer Effekt
Beitrag von: Felix_86 am 26 Dezember 2018, 11:19:06
Das ist sicher möglich, wenn du die Parameter in der Routine entsprechend den Parametern des ESPLED-Controller anpasst.
Bietet der ESPLED-Controller denn Paramter zur Übergabe von Farbe und Helligkeit? Außerdem sollten die Lampen einzeln steuerbar sein.
Titel: Antw:[ERLEDIGT] Philips Hue - Kaminfeuer Effekt
Beitrag von: masked__rider am 26 Dezember 2018, 14:23:53
Der Controller ist per HSV ansprechbar. Ich muss nur noch schauen, welche Werte der Controller braucht. Da bin ich mir nicht ganz sicher.
Titel: Antw:[ERLEDIGT] Philips Hue - Kaminfeuer Effekt
Beitrag von: moonsorrox am 19 Dezember 2019, 13:39:46
ist zwar schon etwas länger her, aber hast du es hinbekommen mit dem Forum Controller.
Meine Versuche sind leider gescheitert
Titel: Antw:[ERLEDIGT] Philips Hue - Kaminfeuer Effekt
Beitrag von: Felix_86 am 23 Dezember 2019, 12:01:32
Ah, gute Frage.
Ich habe seit einigen Monaten ja auch einen EspLedController mit angeschlossenem RGB Band hier liegen, aber an dynamische Farbeffekte habe ich noch gar nicht gedacht.

Evtl. komme ich über die Feiertage dazu mal etwas auszuprobieren.
Titel: Antw:[ERLEDIGT] Philips Hue - Kaminfeuer Effekt
Beitrag von: moonsorrox am 24 Dezember 2019, 13:05:15
Ich habe da was im github gefunden, aber es ist eben nur ein leichtes hoch und runter dimmen verbunden mit blinken.
Nix weltbewegendes besonderes.
Ich habe die Controller auch die Tage erst mal in mein Heimnetz integriert und noch keine große Erfahrung damit. War erstmals ein Funktionstest.
Habe mir ein DOIF und ein Dummy erstellt und fahre da bestimmte Zustände mit an, aber so richtig gelingt es mir noch nicht
Titel: Antw:[ERLEDIGT] Philips Hue - Kaminfeuer Effekt
Beitrag von: moonsorrox am 05 Dezember 2020, 00:26:33
Interessant wäre noch ein langsames durchscrollen der verschiedenen Farben, evtl auch noch heller und dunkler.
Hat das schon jemand gemacht hier..?
Titel: Antw:[ERLEDIGT] Philips Hue - Kaminfeuer Effekt
Beitrag von: justme1968 am 26 Januar 2022, 23:18:30
mit der aktuellen version der hue module kann man inzwischen die neuen dynamischen szenen und die noch nicht veröffentlichten feuer und kerzen efffekte direkt starten. siehe hier: https://forum.fhem.de/index.php/topic,122075.msg1166634.html#msg1166634 und hier: https://forum.fhem.de/index.php/topic,122075.msg1203684.html#msg1203684