[98_HyperionNG] Hyperion Next Generation Module

Begonnen von WarLLe, 04 Dezember 2020, 01:03:54

Vorheriges Thema - Nächstes Thema

WarLLe

Hi zusammen,

ich suche ein paar Tester für mein Modul.
Es ist aufbauend auf dem Modul 98_Hyperion.pm, allerdings wurde die Verbindung komplett überarbeitet und alles auf die neue Json Server Api angepasst. Das Modul handelt entsprechend des alten Hyperion Modul. Bisher sind alle nötigen Abfragen beim define drin. Das Steuern der Instanz ist implementiert, allerdings fehlt die GET-Funktion derzeit und das setzen von Konfigurationsparameter in Hyperion ist auch noch nicht implementiert. Alles in allem also noch etwas zwischen Alpha und Beta Status. Doku ist auch noch nicht vorhanden.

Wer trotzdem schon mal testen mag, ist gerne Willkommen.
Zur Abfrage wird der Subscribe Mechanismus der Hyperion API benutzt. Somit sollten die Daten "LIVE" aktualisiert werden.

define <name> HyperionNG <IP[:PORT]> [<TOKEN>]

PS: Ist nur ein kleines Hobby Projekt für mich daher keine Ahnung wann Aktualisierungen kommen. Trotzdem ist Feedback gerne erwünscht.

LG

_____________________________________________
EDIT:

Aktuellste Version gibt es im Github unter: https://github.com/boredomwontgetus/fhem-hyperionng

Der_Tom

guten morgen,

da sich die definition immer auf den Modulnamen bezieht gehe ich hier von einem Fehler aus

Zitatdefine <name> Hyperion <IP[:PORT]> [<TOKEN>]

und denke das sollte wie folgt heisssen :

define <name> HyperionNG <IP[:PORT]> [<TOKEN>]

sehe ich das richtig ?

ich habe testweise mal ein Device angelegt , wusste aber auf die schnelle nicht , was genau er bei " Token" habe möchte .
Edit: ok, den Token habe ich gefunden


Das Device hat sich anlegen lassen , ich scheine aber ( auf die schnelle ) keinen Zugriff zu haben .


Internals:
   CFGFN     
   DEF        192.168.178.40 19444 572c99fd-1703-44bc-a753-0c10d0490e73
   DeviceName 192.168.178.40:19444
   FUUID      5fc9c4d2-f33f-1e75-17a2-2e4f2b05cb4ea519
   NAME       Hyperiontest
   NOTIFYDEV  global
   NR         244002
   PARTIAL   
   STATE      ERROR
   TYPE       HyperionNG
   READINGS:
     2020-12-04 06:10:43   active_priority_componentId V4L
     2020-12-04 06:10:43   active_priority_duration_ms -1
     2020-12-04 06:10:43   active_priority_origin System
     2020-12-04 06:10:43   active_priority_owner V4L2:/dev/video0
     2020-12-04 06:10:43   active_priority_priority 250
     2020-12-04 06:10:43   adjustment_Blue 0,0,255
     2020-12-04 06:10:43   adjustment_Cyan 0,255,255
     2020-12-04 06:10:43   adjustment_Green 0,255,0
     2020-12-04 06:10:43   adjustment_Magenta 255,0,255
     2020-12-04 06:10:43   adjustment_Red  255,0,0
     2020-12-04 06:10:43   adjustment_White 255,255,255
     2020-12-04 06:10:43   adjustment_Yellow 255,255,0
     2020-12-04 06:10:43   adjustment_backlightColored 1
     2020-12-04 06:10:43   adjustment_backlightThreshold 0
     2020-12-04 06:10:43   adjustment_brightness 100
     2020-12-04 06:10:43   adjustment_brightnessCompensation 97
     2020-12-04 06:10:43   adjustment_gammaBlue 1.5
     2020-12-04 06:10:43   adjustment_gammaGreen 1.5
     2020-12-04 06:10:43   adjustment_gammaRed 1.5
     2020-12-04 06:10:43   adjustment_id   default
     2020-12-04 06:10:43   debug           serverinfo
     2020-12-04 06:10:43   effect          Atomic_swirl
     2020-12-04 06:10:43   hyperion_build  (HEAD detached at 08909b8a) (Paulchen-Panther-75963ca9/08909b8a-1600115237)
     2020-12-04 06:10:43   hyperion_gitremote https://github.com/hyperion-project/hyperion.ng
     2020-12-04 06:10:43   hyperion_id     dc86256f-9799-5ab2-8dea-4bd0f132a4b1
     2020-12-04 06:10:43   hyperion_time   Sep 14 2020 21:05:54
     2020-12-04 06:10:43   hyperion_version 2.0.0-alpha.8
     2020-12-04 06:18:20   lastError       No Authorization
     2020-12-04 06:18:20   loginState      not authorized
     2020-12-04 06:10:43   priorities_autoselect 1
     2020-12-04 06:18:20   serverResponse  ERROR
     2020-12-04 06:18:20   state           ERROR
     2020-12-04 06:10:43   system_architecture arm
     2020-12-04 06:10:43   system_domainName fritz.box
     2020-12-04 06:10:43   system_hostName HyperBian
     2020-12-04 06:10:43   system_kernelType linux
     2020-12-04 06:10:43   system_kernelVersion 5.4.51-v7+
     2020-12-04 06:10:43   system_prettyName HyperBian GNU/Linux 10 (buster)
     2020-12-04 06:10:43   system_productType HyperBian
     2020-12-04 06:10:43   system_productVersion 10
     2020-12-04 06:10:43   system_wordSize 32
     2020-12-04 06:10:43   transform_blacklevel 2.50,2.50,2.50
     2020-12-04 06:10:43   transform_id    default
     2020-12-04 06:10:43   transform_luminanceGain 1.00
     2020-12-04 06:10:43   transform_luminanceMinimum 0.00
     2020-12-04 06:10:43   transform_saturationGain 1.00
     2020-12-04 06:10:43   transform_saturationLGain 1.00
     2020-12-04 06:10:43   transform_threshold 1.00,1.00,1.00
     2020-12-04 06:10:43   transform_valueGain 1.00
     2020-12-04 06:10:43   videomode       2D
Attributes:
   alias      Ambilight
   cmdIcon    on:general_an off:general_aus dimDown:dimdown dimUp:dimup
   devStateIcon {HyperionNG_devStateIcon($name)}
   homebridgeMapping On=state,subtype=TV.Licht,valueOn=/rgb.*/,cmdOff=off,cmdOn=mode+rgb On=state,subtype=Umgebungslicht,valueOn=clearall,cmdOff=off,cmdOn=clearall On=state,subtype=Effekt,valueOn=/effect.*/,cmdOff=off,cmdOn=mode+effect
   hyperionOriginName FHEM
   icon       light_led_stripe_rgb
   lightSceneParamsToSave state
   room       Hyperion
   token      19444
   userattr   lightSceneParamsToSave
   webCmd     rgb:effect:mode:dimDown:dimUp:on:off
   widgetOverride dimUp:noArg dimDown:noArg


Ich werde mich heute abend damit beschäftigen .

gruss Thomas

WarLLe

#2
Zitat von: Der_Tom am 04 Dezember 2020, 06:23:47
und denke das sollte wie folgt heisssen :

define <name> HyperionNG <IP[:PORT]> [<TOKEN>]

sehe ich das richtig ?

Danke das war ein Tippfehler von mir, es war schon spät gestern.

Zitat von: Der_Tom am 04 Dezember 2020, 06:23:47
ich habe testweise mal ein Device angelegt , wusste aber auf die schnelle nicht , was genau er bei " Token" habe möchte .
Edit: ok, den Token habe ich gefunden


Das Device hat sich anlegen lassen , ich scheine aber ( auf die schnelle ) keinen Zugriff zu haben .

Also da ich die login Funktion noch nicht getestet habe und derzeit noch frei nach gedächtnis drin steht, schonmal so viel dazu:

Der Token muss eigentlich nur gesetzt werden wenn in Hyperion Lokale API-Authentifizierung angehakt wird unter Netzwerk.
Ansonsten ist der Zugriff ohne Token möglich. Ich schaue mir das heute aber noch schnell an wenn dort mit Token gearbeitet werden soll.


     2020-12-04 06:18:20   lastError       No Authorization
     2020-12-04 06:18:20   loginState      not authorized


Hier geht hervor entweder ist meine Login Funktion nicht richtig oder dein Token. Der wird übrigens in den Attributen gesetzt schau mal nach ob er da den richtigen Wert hat und nicht 0 sonst habe ich dort noch einen Fehler im Define.
Ich hatte das derzeit noch nicht ausprobiert, da noch nicht alles komplett implementiert war von Hyperions Seite aus was die Authorizierung betrifft, wenn ich mich recht entsinne.

Zitattoken      19444

Bei dir scheint der token auf den Port gesetzt zu sein. Das schaue ich mir nochmal genau an.

Der_Tom

Bevor du da zu tief gehst.... ich habe mich damit heute morgen auch nur 5 min mit beschäftigen können. insofern kann es durchaus sein das mir was durchgerutscht ist.

dank dir das du das "NG" problem angehst.
ich hatte es auch mal begonnen, dann hat mir aber leider die zeit gefehlt.

gruss Thomas

WarLLe

#4
Ich habe eine neue Version im 1. Post angehangen.
Diese enthält jetzt auch die GET Funktion für sysinfo und serverinfo.

Ich habe mir das mal auf die schnelle nebenbei angeschaut.
Der Token funktioniert sofern man diesen bei der Definition mit angibt. Im Nachgang zu ändern wollte aktuell noch nicht. Schaue ich mir noch an.

Also sieht das define derzeit ungefähr so aus mit Token:
define Ambilight HyperionNG 192.168.2.148:19444 45379a60-aa0e-45f5-95b3-3399c4c642de

Zitat
DEF        192.168.178.40 19444 572c99fd-1703-44bc-a753-0c10d0490e73
Du hast zwischen IP und Port ein Leerzeichen eingefügt das ist so nicht vorgesehen. Dann rutscht der Port als token durch.

Falls kein anderer Port als der Standard benutzt wird reicht auch:
define Ambilight HyperionNG 192.168.2.148 45379a60-aa0e-45f5-95b3-3399c4c642de

Der_Tom

ZitatIch habe mir das mal auf die schnelle nebenbei angeschaut.
Der Token funktioniert sofern man diesen bei der Definition mit angibt. Im Nachgang zu ändern wollte aktuell noch nicht. Schaue ich mir noch an.

genau das habe ich heute morgen gemacht.. somit klar.

ich teste heute abend.

gruss Thomas

WarLLe

#6
Zitat von: Der_Tom am 04 Dezember 2020, 11:54:49
genau das habe ich heute morgen gemacht.. somit klar.

ich teste heute abend.

gruss Thomas

Sollte jetzt auch im Nachgang möglich sein.
Zu beachten ist, wenn man in Hyperion die Lokale API-Authentifizierung aktiviert und danach wieder deaktiviert, dann verlangt er trotzdem einen Token bis Hyperion neu gestartet wird. (2.0.0-alpha.9)

Der_Tom

ich habe gerade die aktuelle version eingespielt , allerdings ohne token definiert .

sieht erstmal alles gut aus , teste später mehr.

gruss Thomas

albundy118

Hallo,
vielen Dank für das Modul!
Ich benutze einige devices mit der alten Hyperion Software und habe mal eins auf die aktuelle Hyperion SW umgestellt.
Die Verbindung über Token hat erstmal ohne Problem funktioniert und ich werde die Tage noch weiter testen.

Sind noch weitere Befehle geplant? Die API gibt ja noch einiges her https://docs.hyperion-project.org/en/json/Control.html#sections. Neben einigen Coloradjustments interessiert mich am meißten die Umschaltung des videomodes. (2D/3DSBS/3DTAB).

Gibt es ein Github projekt zu dem modul bzw. besteht die Möglichkeit sich an der weiterentwicklung zu beteiligen? ( Ich denke über GitHub wäre das am praktikabelsten)

Beste Grüße
AB

WarLLe

#9
Ja, ich habe noch vor die restlichen Befehle zu implementieren.
Da dies allerdings nebenbei läuft wusste ich noch nicht so genau wann es hier weitergeht.
Ich habe dir mal eine neue Version hochgeladen, wo der Videomode geändert werden kann. Ich habe kein Github Projekt hierzu und plane eigentlich auch keins daraus zu machen. Ich denke ich werde im Laufe des Tages noch ein paar Änderungen vornehmen und das Modul hier updaten.

\\EDIT
Adjustments und Videomode sind nun drin. Neue Version hängt am ersten Post.
Da sich einige Readings vom Namen geändert haben legt das Device noch einmal neu an um Müll zu vermeiden.

VG WarLLe

albundy118

#10
Super, vielen Dank. Habe die version gleich mal eingespielt und teste die Tage mal damit rum und gebe Feedback. Muss mich aber auch noch an das neue Hyperion und deren Funktionen gewöhnen.
Was mir noch grundsätzlich in HyperionNG fehlt ist die Saturation, aber ich finde dazu nicht mal eine Einstellung im webui. Ich muss da nochmal nachlesen.
Wünsche erholsame Feiertage.

Beste Grüße
AB

StephanFHEM

#11
Danke erst mal für das neue Modul. Ich hab es installiert und es läuft soweit. Wofür ich es aber am ehesten brauchen würde wäre das umstellen der Quelle.
Ich hab einmal einen USB-Grabber und ich hab als Quelle LibreElec mit Kodi. Leider funktioniert die automatische Erkennung nicht sauber, ließe sich aber perfekt über FHEM erledigen.

Hab ich die Funktion der Quellenwahl im Modul übersehen? und falls nicht: kann sie bitte noch eingebaut werden?

Grüße
Stephan

edit:jetzt hab ich noch das Problem, dass HyperionNG im Sekunden-Takt disappear/reappear ins Log schreibt. Unter Reading "Debug" springt er immer zwischen den Einträgen "sysinfo" und "serverinfo" hin und her....

WarLLe

#12
Ich habe das Modul geupdated und an den ersten Post gehangen.
Autoselect kann nun gesetzt werden (An oder Aus). Unter dem Reading "source" taucht nun immer die Priorität auf die aktuell ausgewählt ist. Mittels "set source [1-250]" kann die Quelle bestimmt werden die aktuell angezeigt werden soll. Standard hier ist 250 für Platform Aufnahme und 240 für USB Grabber.

Zu deinem Problem mit dissappear/reapear hast du dort mehr Infos zu? Logs oder sonstiges? Das Phänomen konnte ich bei mir bisher nicht beobachten.

VG WarLLe

//edit
Das Problem scheint mir alledings aus DevIO zu kommen da vermutlich dort die Verbindung nicht richtig zu stande kommt. Das heißt er probiert immer wieder sysinfo und serverinfo aufzurufen was als Init Funktion nach dem DevIo_OpenDev von mir aufgerufen wird. Hast du davor irgendein Token gesetzt oder verändert? Besteht das Problem auch nach dem neu anlegen des Devices?
Vor allem aber, welchen Port benutzt du? Damit das Modul vernünftigt läuft muss der TCP Socket (default port: 19444) von Hyperion benutzt werden. Bei Websocket (8090) oder HTTP/S Json (8090/8092) steht die Subscribe Möglichkeit nicht zu Verfügung und die Anfragen auf diesen Ports könnte zu diesen Problemen führen. Unterschiede und Hinweise sind hier aufgeführt: https://docs.hyperion-project.org/en/json/#connect
Danke für deine Infos.

StephanFHEM

ich hab das neue Modul geladen und das Device gelöscht und neu angelegt. Jetzt hat er das Appear/Disappear-Problem nicht mehr. Ich hatte am Anfang mal den Web-Port angegeben und als er da nichts gefunden hat im Nachgang die DEF auf den 19444 geändert. Da hatte er es gefunden aber das Problem gehabt. Vielleicht hatte sich da etwas verhakt?

Wie gesagt: jetzt läuft es und er zeigt auch Source an und das wichtigste: Ich kann Source jetzt umsetzen zwischen 240 und 250. Also genau das was ich brauche, vielen Dank!
Folgende Punkte gibt es aber noch:
- Als State hat er "initialized" und wenn ich über das Modul auf "Aus" klicke dann ändert sich nichts. Eine Änderung schaltet also Source nicht um auf manuelle Steuerung. Ist das so gewollt? Besser wäre doch, wenn ich bei manueller Eingabe automatisch auf Source "JsonRpc" gehe. In der WEB-Oberfläche wird mir diese mit Prio 50 angezeigt, ist aber nicht gewählt.
- dazu gibt es noch folgende Perl-Fehler im Log:
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Initialize redefined at ./FHEM/98_HyperionNG.pm line 66.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Define redefined at ./FHEM/98_HyperionNG.pm line 93.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Ready redefined at ./FHEM/98_HyperionNG.pm line 137.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_ReadEffects redefined at ./FHEM/98_HyperionNG.pm line 149.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_ReadTransform redefined at ./FHEM/98_HyperionNG.pm line 166.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_ReadVideomode redefined at ./FHEM/98_HyperionNG.pm line 221.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_ReadActiveEffects redefined at ./FHEM/98_HyperionNG.pm line 234.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_ReadActiveColor redefined at ./FHEM/98_HyperionNG.pm line 268.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_ReadAdjustment redefined at ./FHEM/98_HyperionNG.pm line 302.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_ReadPriorities redefined at ./FHEM/98_HyperionNG.pm line 373.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Read redefined at ./FHEM/98_HyperionNG.pm line 511.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Get redefined at ./FHEM/98_HyperionNG.pm line 549.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_GetServerinfo redefined at ./FHEM/98_HyperionNG.pm line 576.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_GetSysinfo redefined at ./FHEM/98_HyperionNG.pm line 590.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Set redefined at ./FHEM/98_HyperionNG.pm line 607.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_ParseJson redefined at ./FHEM/98_HyperionNG.pm line 872.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Attr redefined at ./FHEM/98_HyperionNG.pm line 987.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Init redefined at ./FHEM/98_HyperionNG.pm line 1046.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Callback redefined at ./FHEM/98_HyperionNG.pm line 1075.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Undef redefined at ./FHEM/98_HyperionNG.pm line 1089.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Call redefined at ./FHEM/98_HyperionNG.pm line 1097.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_list2array redefined at ./FHEM/98_HyperionNG.pm line 1108.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_devStateIcon redefined at ./FHEM/98_HyperionNG.pm line 1120.


Grüße
Stephan

StephanFHEM

und noch ein Wunsch:

das alte Modul konnte man auf Inactive/Active setzen per Set. Da ich das Ambilight bei mir über eine schaltbare Steckdose an/aus schalte konnte ich so verhindern, dass er alle paar Sekunden ein Log-Eintrag generiert weil er den Hyperion-Server nicht finden kann. Hab das Modul dann immer mit auf inactive gesetzt.
Wäre prima, wenn du das auch einbauen könntest.

albundy118

Danke für das Update, wurde gerade eingespielt.
Grundsätzlich läuft das ganz gut, Video-mode wechsel zwischen 2D und 3D geht nun auch und dank KODI und DOIF automatisch.

Leider kriegt ich die Farbkalibrierung mit HyperionNG noch gar nicht hin da die Sättigung viel zu hoch ist. Jetzt gibt es ja scheinbar noch ein reading mit saturation: "transform_saturationGain", aber ich finde in der HyperionNG JSON API keinen Befehl diesen Wert zu setzen.

Hat da jemand noch eine Idee wie man die Sättigung anpassen kann?

Danke + Gruß

WarLLe

Zitat von: StephanFHEM am 28 Dezember 2020, 14:23:46
ich hab das neue Modul geladen und das Device gelöscht und neu angelegt. Jetzt hat er das Appear/Disappear-Problem nicht mehr. Ich hatte am Anfang mal den Web-Port angegeben und als er da nichts gefunden hat im Nachgang die DEF auf den 19444 geändert. Da hatte er es gefunden aber das Problem gehabt. Vielleicht hatte sich da etwas verhakt?

Wie gesagt: jetzt läuft es und er zeigt auch Source an und das wichtigste: Ich kann Source jetzt umsetzen zwischen 240 und 250. Also genau das was ich brauche, vielen Dank!
Folgende Punkte gibt es aber noch:
- Als State hat er "initialized" und wenn ich über das Modul auf "Aus" klicke dann ändert sich nichts. Eine Änderung schaltet also Source nicht um auf manuelle Steuerung. Ist das so gewollt? Besser wäre doch, wenn ich bei manueller Eingabe automatisch auf Source "JsonRpc" gehe. In der WEB-Oberfläche wird mir diese mit Prio 50 angezeigt, ist aber nicht gewählt.
- dazu gibt es noch folgende Perl-Fehler im Log:
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Initialize redefined at ./FHEM/98_HyperionNG.pm line 66.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Define redefined at ./FHEM/98_HyperionNG.pm line 93.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Ready redefined at ./FHEM/98_HyperionNG.pm line 137.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_ReadEffects redefined at ./FHEM/98_HyperionNG.pm line 149.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_ReadTransform redefined at ./FHEM/98_HyperionNG.pm line 166.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_ReadVideomode redefined at ./FHEM/98_HyperionNG.pm line 221.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_ReadActiveEffects redefined at ./FHEM/98_HyperionNG.pm line 234.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_ReadActiveColor redefined at ./FHEM/98_HyperionNG.pm line 268.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_ReadAdjustment redefined at ./FHEM/98_HyperionNG.pm line 302.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_ReadPriorities redefined at ./FHEM/98_HyperionNG.pm line 373.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Read redefined at ./FHEM/98_HyperionNG.pm line 511.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Get redefined at ./FHEM/98_HyperionNG.pm line 549.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_GetServerinfo redefined at ./FHEM/98_HyperionNG.pm line 576.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_GetSysinfo redefined at ./FHEM/98_HyperionNG.pm line 590.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Set redefined at ./FHEM/98_HyperionNG.pm line 607.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_ParseJson redefined at ./FHEM/98_HyperionNG.pm line 872.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Attr redefined at ./FHEM/98_HyperionNG.pm line 987.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Init redefined at ./FHEM/98_HyperionNG.pm line 1046.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Callback redefined at ./FHEM/98_HyperionNG.pm line 1075.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Undef redefined at ./FHEM/98_HyperionNG.pm line 1089.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_Call redefined at ./FHEM/98_HyperionNG.pm line 1097.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_list2array redefined at ./FHEM/98_HyperionNG.pm line 1108.
2020.12.28 14:11:04 1: PERL WARNING: Subroutine HyperionNG_devStateIcon redefined at ./FHEM/98_HyperionNG.pm line 1120.


Grüße
Stephan

Die Fehler kommen davon wenn du reload benutzt das ist normal. Das mit den Prio wenn man aus benutzt werde ich mal angehen aber ich weiß noch nicht wann ich dazu was neues reinbringe.

Zitat von: StephanFHEM am 28 Dezember 2020, 14:28:13
und noch ein Wunsch:

das alte Modul konnte man auf Inactive/Active setzen per Set. Da ich das Ambilight bei mir über eine schaltbare Steckdose an/aus schalte konnte ich so verhindern, dass er alle paar Sekunden ein Log-Eintrag generiert weil er den Hyperion-Server nicht finden kann. Hab das Modul dann immer mit auf inactive gesetzt.
Wäre prima, wenn du das auch einbauen könntest.

Werde ich mit reinbringen.

Zitat von: albundy118 am 29 Dezember 2020, 23:03:11
Danke für das Update, wurde gerade eingespielt.
Grundsätzlich läuft das ganz gut, Video-mode wechsel zwischen 2D und 3D geht nun auch und dank KODI und DOIF automatisch.

Leider kriegt ich die Farbkalibrierung mit HyperionNG noch gar nicht hin da die Sättigung viel zu hoch ist. Jetzt gibt es ja scheinbar noch ein reading mit saturation: "transform_saturationGain", aber ich finde in der HyperionNG JSON API keinen Befehl diesen Wert zu setzen.

Hat da jemand noch eine Idee wie man die Sättigung anpassen kann?

Danke + Gruß
Anscheinend ist die ganze Transform Config noch nicht in der API drin. Da kann ich derzeit nichts machen.
Siehe: https://github.com/hyperion-project/hyperion.ng/issues/822

pflaume88

Hallo

Das Modul läuft bis jetzt sehr gut.
Ich habe etwas Probleme mit dem Homebridge mapping und Alexa.
Ich kann die Farben und Helligkeit einstellen aber nicht an bzw. ausschalten.
Gibt es vielleicht eine Lösung?
Wie könnte ich das mapping ändern damit es funktioniert?

Danke MfG

Sascha_F

Hallo zusammen,

ich kann aktuell nicht viel beitragen - daher beschränke ich mich darauf, Danke für das Modul! zu sagen :)

Habe es jetzt so zwei/drei Wochen für mein TV-Amilight im Einsatz. Läuft alles so, wie es erwartet wird und ich mir erhofft hatte :)   Demnächst kommt es auch im Flur (Wand + Deckenprofile)  in den Einsatz - wenn denn dann mal endlich alles für den Trockenbau angekommen ist ;-)

Viele Grüße
Sascha

link611

#19
Hiho,

habe mir gestern auch endlich mein Hyperion an den TV gebastelt und mein altes Karatelight ersetzt.

Ist es denn möglich den colorpicker (Slider) irgendwie zu hinterlegen?


---- Edit ---

Ist es irgendwie möglich die USB-Aufnahme oder andere server zu starten über FHEM?

Alexa On/Off funktioniert wohl auch nicht richtig, gibt es dafür Abhilfe?

mistake

Auch von mir an dieser Stelle ein herzliches DankeSchön - mir war mit Entsetzen bei der Umstellung von Hyperion auf HyperionNG aufgefallen, dass das originale FHEM-Hyperion nicht mit HyperionNG kompatibel ist.

Von meiner Seite her kann ich sagen, dass alles (bis dato) wie erwartet funktioniert, einzig bei der Beschriftung des homebridgemappings scheint ein Verdreher mit TV.Licht und Umgebungslicht drin gewesen zu sein. Jedenfalls ging bei mir bei der Auswahl von TV.Licht das Umgebungslicht an und umgekehrt.

StephanFHEM

ZitatZitat von: StephanFHEM am 28 Dezember 2020, 14:28:13
Zitatund noch ein Wunsch:

das alte Modul konnte man auf Inactive/Active setzen per Set. Da ich das Ambilight bei mir über eine schaltbare Steckdose an/aus schalte konnte ich so verhindern, dass er alle paar Sekunden ein Log-Eintrag generiert weil er den Hyperion-Server nicht finden kann. Hab das Modul dann immer mit auf inactive gesetzt.
Wäre prima, wenn du das auch einbauen könntest.
Werde ich mit reinbringen.

gibt es dazu schon etwas neues?

StephanFHEM

Hallo,

gibt es schon eine Neuigkeit dazu, dass man das Modul auf active/inactive setzen kann? Aktuell mach ich das immer über das Attribut "Disable" aber da es sich da um eine strukturelle Änderung handelt wird mir immer eine Änderung zum Speichern angezeigt. Das ist teilweise schon störend.

Grüße
Stephan

tamash

Hallo!

Vielen Dank für das tolle Modul! Funktioniert richtig gut bei mir.

Eine Sache die mir nicht ganz einleuchtet: Gibt es eine Möglichkeit eine Hyperion Instanz vollständig abzuschalten (wie es der On Button im Hyperion Webinterfache macht)?

Momentan scheinen die On/Off set-commands nur Schwarz als Source zu setzen.
Für mich stellt sich die Frage da ich Hyperion mit WLED benutze und es mir leider nicht möglich ist die WLED selbstständig zu benutzen solange Hyperion irgendetwas (zb. RGB Black) an WLED schickt.

Danke im Voraus
LG Tom

tamash

Hi!

Ich hab mir die Freiheit genommen und das Modul etwas modifiziert.
https://github.com/boredomwontgetus/fhem-hyperionng

set device on|off schaltet jetzt die erste Instanz vollständig ein oder aus. Das wird auch im state Reading reflektiert.
Das funktioniert momentan nur für eine (Haupt)-Instanz. Entweder das API ist etwas fehlerhaft oder ich. ;)
Damit sollte zumindest einer der Wünsche aus den Posts weiter oben erfüllt sein.


Ich hab das - nicht sehr ausführlich - mit HyperionNG 2.0.0-alpha.10 getestet.

Vielleicht kann es ja jemand gebrauchen.

LG
Tom



StephanFHEM

Danke, hab es mal draufgemacht und schaue ob es mein Disable-DOIF ablösen kann.

StephanFHEM

hab gerade im Log gesehen, dass es mit der Version zu Perl-Fehlern (Warnings) kommt. Vielleicht magst du da noch mal schauen:

2021.10.14 20:30:46 1: PERL WARNING: Use of uninitialized value $componentId in string eq at ./FHEM/98_HyperionNG.pm line 460.
2021.10.14 20:30:46 1: PERL WARNING: Use of uninitialized value $componentId in string eq at ./FHEM/98_HyperionNG.pm line 499.
2021.10.14 20:30:46 1: PERL WARNING: Use of uninitialized value $componentId in string eq at ./FHEM/98_HyperionNG.pm line 518.
2021.10.14 20:30:46 1: PERL WARNING: Use of uninitialized value $componentId in string eq at ./FHEM/98_HyperionNG.pm line 529.

tamash

seh ich mir die nächsten tage mal an. bin momentan leider etwas beschäftigt aber werde es irgendwo zwischendurch reinquetschen.

falls jemand schneller ist...nehme gerne pull requests. ;)

LG

tamash

Im letzten git commit hab ich $componentId jetzt am anfang der subroutine als empty string initialisiert.
Ich habs nicht getestet. Wäre super wenn du es mal testen könntest.

LG
Tom

StephanFHEM

hat etwas gedauert aber es ist jetzt installiert. Bisher noch kein Fehler nach dem Neustart

tamash

Ich habs heute mal selbst getestet. Das war noch nicht das Gelbe vom Ei. Kleine Änderung ins git commited. Sollte jetzt tatsächlich behoben sein.

LG
Thom

StephanFHEM

#31
das funktioniert leider nicht.. -> mein Fehler ...  klappt!

Der_Tom

Hi WarLLe,

wärest du ggf. ambitioniert eine Instanz Verwaltung  ( zumindest on/off ) einzubauen ?

andernfalls würde ich mich mal daran setzen.

gruss Thomas

tamash

hi!

Ich bin mir nicht ganz sicher was du damit meinst.
Aber du kannst das gerne mal versuchen und wenn du lust hast einen PR machen. Dann merge ich das.

LG

Der_Tom

#34
Hi,

Ich habe auf meinen hyyperionserver 2 weitere Instanzen laufen,
Die ich bei Bedarf zuschalten kann. Das geht im Moment mit dem Modul nicht, da es keinerlei Optionen gibt, die weiteren Instanzen anzusprechen.

Ich habe am Wochenende bereits das gröbste in das Modul eingebaut so daß bei mir die weiteren Instanzen bereits schaltbar sind.
Mache das im Laufe der Woche fertig und melde mich bei dir , dann kannst du ja schauen ob du es übernehmen willst.

Gruss Thomas

tamash

Ah, verstehe! Ja, das hab ich überhaupt nicht berücksichtigt weil ich nur eine Instanz benutze.
Gerne kann ich es mergen. Am liebsten wäre mir du schickst mir einen pull request.

Danke für deine Mühe.

LG

Raemsna

#36
Hi zusammen,

ich wollte grade das eben aus dem Github geladene Modul mit meinem FHEM verbinden.
API Token ist eingerichtet.
In FHEM bekomme ich folgende Fehlermeldung auf verbose 5:

2022.01.20 17:02:50 4: Hyperion_Wohnzimmer: HyperionNG_Set cmd: reopen
2022.01.20 17:02:50 5: HttpUtils url=http://192.168.0.109:19444/
2022.01.20 17:02:50 4: IP: 192.168.0.109 -> 192.168.0.109
2022.01.20 17:02:50 5: SW: {"token":"b25fb588-9823-4e9f-8a2d-fa4fccff1520","command":"authorize","tan":1,"subcommand":"login"}
2022.01.20 17:02:50 5: SW: {"command":"sysinfo","tan":3}
2022.01.20 17:02:50 5: SW: {"tan":4,"command":"serverinfo","subscribe":["components-update","priorities-update","effects-update","adjustment-update","videomode-update"]}
2022.01.20 17:02:50 1: 192.168.0.109:19444 reappeared (Hyperion_Wohnzimmer)
2022.01.20 17:02:50 5: HyperionNG (Hyperion_Wohnzimmer) - received {"error":"Error while validating json: {[root].command: Unknown enum value (allowed values are: [\"color\",\"image\",\"effect\",\"serverinfo\",\"clear\",\"clearall\",\"transform\",\"correction\",\"temperature\",\"adjustment\"]) }","success":false}
{"error":"Error while validating json: {[root].command: Unknown enum value (allowed values are: [\"color\",\"image\",\"effect\",\"serverinfo\",\"clear\",\"clearall\",\"transform\",\"correction\",\"temperature\",\"adjustment\"]) }","success":false}
{"error":"Error while validating json: {[root].subscribe: no schema definition [root].tan: no schema definition }","success":false}
(buffer contains: )
2022.01.20 17:02:50 5: HyperionNG (Hyperion_Wohnzimmer) - parse {"error":"Error while validating json: {[root].command: Unknown enum value (allowed values are: [\"color\",\"image\",\"effect\",\"serverinfo\",\"clear\",\"clearall\",\"transform\",\"correction\",\"temperature\",\"adjustment\"]) }","success":false})
2022.01.20 17:02:50 5: HyperionNG (Hyperion_Wohnzimmer) - parse {"error":"Error while validating json: {[root].command: Unknown enum value (allowed values are: [\"color\",\"image\",\"effect\",\"serverinfo\",\"clear\",\"clearall\",\"transform\",\"correction\",\"temperature\",\"adjustment\"]) }","success":false})
2022.01.20 17:02:50 5: HyperionNG (Hyperion_Wohnzimmer) - parse {"error":"Error while validating json: {[root].subscribe: no schema definition [root].tan: no schema definition }","success":false})
2022.01.20 17:02:50 4: Hyperion_Wohnzimmer: HyperionNG_Set cmd: ?
2022.01.20 17:02:50 4: Hyperion_Wohnzimmer: HyperionNG_Set cmd: ?
2022.01.20 17:02:50 4: Hyperion_Wohnzimmer: HyperionNG_Set cmd: ?
2022.01.20 17:02:53 4: Hyperion_Wohnzimmer: HyperionNG_Set cmd: ?
2022.01.20 17:02:53 4: Hyperion_Wohnzimmer: HyperionNG_Set cmd: ?


List des Devices:

Internals:
   DEF        192.168.0.109 b25fb588-9823-4e9f-8a2d-fa4fccff1520
   DeviceName 192.168.0.109:19444
   FD         17
   FUUID      61e984a1-f33f-ac4d-935f-151d1f8df213af4d
   NAME       Hyperion_Wohnzimmer
   NOTIFYDEV  global
   NR         100
   PARTIAL   
   STATE      initialized
   TYPE       HyperionNG
   READINGS:
     2022-01-20 17:02:50   lastError       unknown data received
     2022-01-20 17:02:50   serverResponse  ERROR
     2022-01-20 17:02:50   state           initialized
Attributes:
   alias      Ambilight
   cmdIcon    on:general_an off:general_aus dimDown:dimdown dimUp:dimup
   devStateIcon {HyperionNG_devStateIcon($name)}
   homebridgeMapping On=state,subtype=TV.Licht,valueOn=/rgb.*/,cmdOff=off,cmdOn=mode+rgb On=state,subtype=Umgebungslicht,valueOn=clearall,cmdOff=off,cmdOn=clearall On=state,subtype=Effekt,valueOn=/effect.*/,cmdOff=off,cmdOn=mode+effect
   hyperionOriginName FHEM
   icon       light_led_stripe_rgb
   lightSceneParamsToSave state
   room       Hyperion
   token      b25fb588-9823-4e9f-8a2d-fa4fccff1520
   userattr   homebridgeMapping:textField-long lightSceneParamsToSave
   verbose    5
   webCmd     rgb:effect:mode:dimDown:dimUp:on:off
   widgetOverride dimUp:noArg dimDown:noArg


Kann mir jemand auf die Sprünge helfen?
Benötige ich vielleicht Zusatzpakete, die nicht mit dem Standard-FHEM ausgeliefert werden?

Hyperion Version aktuell: Version   2.0.12

Token ist in Hyperion angelegt sowie folgende Optionen aktiviert:
API-Authentifizierung
Lokale Admin Authentifizierung
Lokale API-Authentifizierung


Vielen Dank und Grüße!
Remsner

tamash

hi!

konntest du dein Problem zwischenzeitlich fixen?

nach einem fehlenden Modul sieht das leider nicht aus.
verwendest du ebenso mehr als eine Instanz am hyperionng?

meine letzten Handgriffe an dem Modul sind leider so lange her, dass ich nicht aus dem Kopf sagen könnte wo es hackt.

LG

dreizehn

Hallo,

vielen Dank für das Modul.

Ich habe aber noch einen kleinen Wunsch: Ist es möglich den enable und disable Befehl von HyperionNG zu unterstützen? Mein Hyperion deaktiviert sporadisch das LEDDevice (z.B. wenn FHEM die HUE Lampen deaktiviert).

Vielen Dank

dancedevil1982

Hi,
super Modul!
Funktioniert soweit fast alles! Ich habe im Hyperion Web Interface eigene Effekte definiert (blaues, rotes, gelbes, grünes Blinken). Weise ich diese über das Hyperion Webinterface zu, funktionierten diese wie gewünscht. Im FHEM Modul werden die Effekte auch aufgelistet, jedoch passiert nichts, wenn ich den selbst definierten Effekt versuche zu starten. Andere Effekte funktionieren, nur die Effekte, die ich selbst angelegt habe, werden nicht aktiviert. Es passiert einfach gar nichts. Gar nichts bedeutet: Hyperion zeigt die gleiche Farbe bzw. den gleichen Effekt der vorher bereits aktiv war
Gibt es dazu eine Lösung?
Gruß
Mathias

dancedevil1982

Achso: neustes HyperionNG Modul (also das aus dem ersten Post) und Hyperion 2.0.0.13

dancedevil1982

022-05-26 21:09:45 HyperionNG PartyBacklight2 effect Blink_blue
2022-05-26 21:09:45 HyperionNG PartyBacklight2 lastError: Effect 'Blink blue' not found

dancedevil1982

Sorry, ist ein Hyperion Bug. Der Underscore stört Hyperion, sogar im Webinterface selbst

patman1607

Zitat von: Der_Tom am 15 Januar 2022, 13:19:34
Hi WarLLe,

wärest du ggf. ambitioniert eine Instanz Verwaltung  ( zumindest on/off ) einzubauen ?

andernfalls würde ich mich mal daran setzen.

gruss Thomas

Gibt es hierzu eigentlich fortschritte?
Ich bin am Wochenende auch auf HYP2 umgestiegen.
Fritte 7950
FHEM on RasPi 3

Der_Tom

Zitat von: patman1607 am 23 Oktober 2022, 14:06:46
Gibt es hierzu eigentlich fortschritte?
Ich bin am Wochenende auch auf HYP2 umgestiegen.

ich habe es entsprechend umgebaut, so dass ich mehrere Instanzen steuern kann.
da aber ein interesse/bedarf nicht erkennbar war habe ich es nicht weiter verfolgt - ausser das es bei mir läuft - und keine doku etc angepasst.
ich kann dir die version schicken , wenn ich zu Hause bin.

gruss Thomas

patman1607

Zitat von: Der_Tom am 23 Oktober 2022, 14:15:04
ich habe es entsprechend umgebaut, so dass ich mehrere Instanzen steuern kann.
da aber ein interesse/bedarf nicht erkennbar war habe ich es nicht weiter verfolgt - ausser das es bei mir läuft - und keine doku etc angepasst.
ich kann dir die version schicken , wenn ich zu Hause bin.

gruss Thomas

gerne doch und Danke schon mal dafür!
Fritte 7950
FHEM on RasPi 3

Ronn

Zitat von: Der_Tom am 23 Oktober 2022, 14:15:04
ich habe es entsprechend umgebaut, so dass ich mehrere Instanzen steuern kann.
da aber ein interesse/bedarf nicht erkennbar war habe ich es nicht weiter verfolgt - ausser das es bei mir läuft - und keine doku etc angepasst.
ich kann dir die version schicken , wenn ich zu Hause bin.

gruss Thomas

Hey, ich hätte auch Interesse, da ich auch zwei Instanzen habe. Könntet du es mir, ebenfalls zukommen lassen?

Besten Dank + Grüße

Der_Tom

Zitat von: Ronn am 05 November 2022, 15:47:22
Hey, ich hätte auch Interesse, da ich auch zwei Instanzen habe. Könntet du es mir, ebenfalls zukommen lassen?

Besten Dank + Grüße

Das Modul ist ja von WarLLe ( zumindest die auf NG angepasste Version ) und er ist ja noch aktiv hier.
GGf. mag er er es ja entsprechend anpassen , wäre möglicherweise die bessere Lösung. Hat denn mal jemand versucht ihn zu kontaktieren ?

gruss Thomas

fire3k

Hi Der_Tom,

häte auch interesse an deinem "fix"

danke

Jack_n

Hallo Zusammen,

da meine alte Hyperion Installation gerade Probleme macht wollte ich mal fragen ob das Modul zu NG verwaist ist, bevor ich wechsle.

Läuft das Modul ? Lohnt sich der Umstieg auf NG überhaupt ?

Vielen Dank

StephanFHEM

das Modul läuft bei mir und ich habe damit keine Probleme. Bin auch vor über einem Jahr gewechselt

Baumschueler

#51
Hallo zusammen,

ich musste nun auch meinen alten Raspi mit Lightberry ersetzen und bin auf HyperBian umgestiegen.
Da hier auch Hyperion 2.0.15 zum Einsatz kommt bin ich auf dieses Modul gestoßen.

Hat sich erledigt, der Download war nicht korrekt funktioniert hervorragend :)


Zu meiner Frage, benötige ich noch irgendwelche PERL Module?
Ich bekomme beim versuch ganze anzulegen die Meldung: Cannot load module HyperionNG bzw.

Can't modify numeric lt (<) in scalar assignment at ./FHEM/98_HyperionNG.pm line 11, near "data"
syntax error at ./FHEM/98_HyperionNG.pm line 11, near "data"
Unknown regexp modifier "/j" at ./FHEM/98_HyperionNG.pm line 40, at end of line
Unknown regexp modifier "/v" at ./FHEM/98_HyperionNG.pm line 40, at end of line
Unknown regexp modifier "/r" at ./FHEM/98_HyperionNG.pm line 40, at end of line
Unknown regexp modifier "/t" at ./FHEM/98_HyperionNG.pm line 40, at end of line
Unknown regexp modifier "/t" at ./FHEM/98_HyperionNG.pm line 40, at end of line
Unknown regexp modifier "/h" at ./FHEM/98_HyperionNG.pm line 40, at end of line
Unknown regexp modifier "/b" at ./FHEM/98_HyperionNG.pm line 40, at end of line
Unknown regexp modifier "/t" at ./FHEM/98_HyperionNG.pm line 41, at end of line
./FHEM/98_HyperionNG.pm has too many errors.

Kann da jemand was mit anfangen? Ich leider nicht  ;D

FHEM_Starter

Hallo Thomas,

kannst Du mir bitte auch Deine angepasste Version (zweite Instanz) zukommen lassen?

Danke im voraus,
Gruß Wolfgang

Der_Tom

Zitat von: FHEM_Starter am 17 Januar 2024, 12:47:59Hallo Thomas,

kannst Du mir bitte auch Deine angepasste Version (zweite Instanz) zukommen lassen?

Danke im voraus,
Gruß Wolfgang



im grunde wolle ich sie nicht weitergeben , solange der Autor des angepassten NG Moduls "WarLLe" noch aktiv ist. habe eben geschaut , er ist nun seit 10 Monaten inaktiv und daher denke ich nicht , das er entsprechende anpassung noch vornimmt . Trotzdem möche ich es nicht offen Verteilen , da es keine Doku oder sonstiges zu dieser Version gibt und ich das mal auf die schnelle "hingedoktort" hab. gerne kannst du mir per PM deine mailadresse schicken, ich schicke dir dann die Version per Mail. Wird aber sicher heute spät abend.

Gruss Thomas