JVC_DILA: Modul für JVC D-ILA Heimkino Projektoren

Begonnen von All-Ex, 10 Februar 2020, 19:13:24

Vorheriges Thema - Nächstes Thema

All-Ex

Hallo zusammen,

gibt es hier Heimkino-begeisterte Nutzer? Vielleicht hat ja jemand einen JVC D-ILA Heimkinoprojektor (https://de.jvc.com/projektoren/d-ila-projektor/), den er mit FHEM steuern möchte. Dazu habe ich ein Modul erstellt.

Verbindet den Projektor per Netzwerkkabel mit dem LAN und stellt die IP-Adresse im Menü des Projektors ein. Das angehängte Modul kopiert ihr in das Verzeichnis .../fhem/FHEM/ und erstellt dann ein neues Device.

Hier die Beschreibung:

Define

define <name> JVC_DILA <ip-address-or-hostname[:PORT]>

Dieses Modul steuert JVC D-ILA-Projektoren über das Netzwerk.

Beispiele:
define projector JVC_DILA 192.168.0.10

# Unter Angabe eines bestimmten Ports
define projector JVC_DILA 192.168.0.10:20554

Folgende Projektoren sollten funktionieren (sowie einige weitere Modelle auch):
JVC DLA-X3, X7, X9, X30, X70, X90, X35, X55, X75, X95, X500, X700, X900, X5000, X7000, X9000, X5500, X7500, X9500, X5900, X7900, X9900, N5, N7, NX9

JVC DILA Projektoren benötigen für die Verarbeitung einiger Befehle mehrere Sekunden und können in dieser Zeit keine weiteren Befehle annehmen. Daher werden die set und get Befehle in eine Warteschlange (Queue) eingereiht. Nach Absenden eines get/set-Befehls wird gewartet, bis der Projektor eine Quittierung sendet oder ein Timeout auftritt (vgl. Attribut timeout_command). Erst nach der Quittierung des Befehls durch den Projektor bzw. nach dem Timeout wird der nächste get/set Befehl gesendet (bis die Befehls-Warteschlange leer ist). Neue get/set Befehle können jederzeit hinzugefügt werden und kommen ans Ende der Warteschlange. Die maximale Anzahl von Befehlen in der Warteschlange ist begrenzt (vgl. Attribut max_queue). Mit "set DeleteCommandQueue" kann die komplette Befehls-Warteschlange sofort gelöscht werden (der aktuelle Befehl wird noch zu Ende verarbeitet).

Leider senden JVC Projektoren von sich aus keine Statusmeldungen. D.h. alle Readings müssen explizit mit get-Befehlen angefragt werden.

Die folgenden Befehle sind an die Struktur des Menüs im Projekor angelehnt. Die Beschreibung dazu befindet sich im Handbuch des Projektors und in den Interface Specifications (http://support.jvc.com/consumer/support/support.jsp?pageID=11).

Nicht alle Befehle werden von allen JVC DILA Modellen unterstützt bzw. können in allen Betriebsmodi verwendet werden. Wenn der Projektor im Standby ist funktionieren nur wenige Befehle (Voraussetzung: Eco Mode ist ausgeschaltet). Wenn der Projektor an einer Schaltsteckdose betrieben wird, dauert es nach dem Einschalten der Steckdose bis zu 45 Sekunden, bis die Netzwerkschnittstelle hochgefahren ist.

Set

set <name> <command> [<parameter>]


    Function_DefaultGateway <IP-Address>
    Function_DHCP-ClientSetting <Off_Static|On>
    Function_EcoMode <Off|On>
    Function_IP-Address <IPAddress>
    Function_OffTimer <Off|1_Hour|2_Hours|3_Hours|4_Hours>
    Function_Port <Number>
    Function_SubnetMask <Subnet-Mask>
    Function_Trigger <Off|Power|Anamo|Inst_1|Inst_2|Inst_3|Inst_4|Inst_5|Inst_6|Inst_7|Inst_8|Inst_9|Inst_10>
    Input <HDMI-1|HDMI-2>
    InputSignal_HDMI-2D-3D-Data <2D|Auto|Side_by_Side|Top_and_Bottom>
    InputSignal_HDMI-ColorSpace <Auto|YCbCr_444|YCbCr_422|RGB>
    InputSignal_HDMI-InputLevel <Standard_16-235|Enhanced_0-255|Super_White_16-255|Auto>
    InputSignal_Mask <Custom1|Custom2|Off|Custom3>
    InputSignal_MaskBottomAdjustment <Number>
    InputSignal_MaskLeftAdjustment <Number>
    InputSignal_MaskRightAdjustment <Number>
    InputSignal_MaskTopAdjustment <Number>
    Installation_LensMemory <<Memory1&gt;|<Memory2&gt;|<Memory3&gt;|<Memory4&gt;|<Memory5&gt;|<Memory6&gt;|<Memory7&gt;|<Memory8&gt;|<Memory9&gt;>
    PictureAdjust_AutoToneMapping <Off|On>
    PictureAdjust_Brightness <Number>
    PictureAdjust_ClearMotionDrive <Off|Low|High|Inverse_Telecine>
    PictureAdjust_Color <Number>
    PictureAdjust_ColorManagement <Off|On>
    PictureAdjust_ColorProfile <Off|Film1|Film2|Standard_BT709|Cinema1|Cinema2|Anime1|Anime2|Video|xv_Color|BT2020|3D_Cinema|THX|Custom1|Custom2|Custom3|Custom4|Custom5|Film3|3D_Video|3D_Animation|3D_Film|3D_THX|Reference_DCI>
    PictureAdjust_Contrast <Number>
    PictureAdjust_E-Shift <Off|On>
    PictureAdjust_GraphicMode <2K|4K>
    PictureAdjust_IntelligentLensAperture <Manual|Auto1|Auto2>
    PictureAdjust_LampPower <Normal|High>
    PictureAdjust_LensAperture <Number>
    PictureAdjust_LowLatency <Off|On>
    PictureAdjust_MappingLevel <Number>
    PictureAdjust_MotionEnhance <Off|Low|High>
    PictureAdjust_NR <Number>
    PictureAdjust_OriginalResolution <Auto|1080p|4K>
    PictureAdjust_PictureMode <Film|Cinema|Animation|Natural|HDR10|THX|<User1&gt;|<User2&gt;|<User3&gt;|<User4>|<User5>|User6|HLG>
    PictureAdjust_Tint <Number>
    Power <Standby|Lamp_On>
    RemoteCode <ASCII> Sendet eine Funktion der Infrarot-Fernbedienung über das Netzwerk an den Projektor, z.B. 2E um das Drücken der Menu-Taste auf der Fernbedienung zu senden (vgl. Remote Control Guide (
https://support.jvc.com/consumer/support/documents/DILAremoteControlGuide.pdf), Spalte ASCII). Da durch diesen Befehl keine Readings verändert werden, sollte statt dessen wenn immer möglich der passende set-Befehl gesendet werden.
DeleteCommandQueue - alle Befehle aus der Warteschlange löschen (der aktuelle Befehl wird noch zu Ende verarbeitet)            
[/list]

Get

get <name> <what>


    Function_DefaultGateway
    Function_DHCP-ClientSetting
    Function_EcoMode
    Function_IP-Address
    Function_MAC-Address
    Function_OffTimer
    Function_Port
    Function_SubnetMask
    Function_Trigger
    Information_ColorDepth
    Information_Colorimetry
    Information_ColorSpace
    Information_HDR
    Information_HorizontalFrequency
    Information_HorizontalResolution
    Information_LampTime
    Information_MaxCLL
    Information_MaxFALL
    Information_Model
    Information_SignalInputStatus
    Information_SoftwareVersion
    Information_SourceVideoFormat
    Information_VerticalFrequency
    Information_VerticalResolution
    Input
    InputSignal_HDMI-2D-3D-Data
    InputSignal_HDMI-ColorSpace
    InputSignal_HDMI-InputLevel
    InputSignal_Mask
    InputSignal_MaskBottomAdjustment
    InputSignal_MaskLeftAdjustment
    InputSignal_MaskRightAdjustment
    InputSignal_MaskTopAdjustment
    PictureAdjust_AutoToneMapping
    PictureAdjust_Brightness
    PictureAdjust_ClearMotionDrive
    PictureAdjust_Color
    PictureAdjust_ColorManagement
    PictureAdjust_ColorProfile
    PictureAdjust_Contrast
    PictureAdjust_E-Shift
    PictureAdjust_GraphicMode
    PictureAdjust_IntelligentLensAperture
    PictureAdjust_LampPower
    PictureAdjust_LensAperture
    PictureAdjust_LowLatency
    PictureAdjust_MappingLevel
    PictureAdjust_MotionEnhance
    PictureAdjust_NR
    PictureAdjust_OriginalResolution
    PictureAdjust_PictureMode
    PictureAdjust_Tint
    Power
    Installation_LensMemoryNames - liest die ggf. vorhandenen benutzerdefinierten Namen der Optikeinstellungen auf.Diese Namen können anschließend für den Befehl "set Installation_LensMemory <Name>" anstelle von <Memory1>, <Memory2>, ... verwendet werden. Komma, Doppelpunkt und Leerzeichen in benutzerdefinierten Namen werden durch Unterstriche ersetzt. Die Ausführung des Befehls kann recht lange dauern, wenn keine benutzerdefinierten Namen definiert sind.
    PictureAdjust_PictureModeNames - liest die ggf. vorhandenen benutzerdefinierten Namen der Bild Modi auf.Diese Namen können anschließend für den Befehl "set PictureAdjust_PictureMode <Name>" anstelle von <User1>, <User2>, ... verwendet werden. Komma, Doppelpunkt und Leerzeichen in benutzerdefinierten Namen werden durch Unterstriche ersetzt. Die Ausführung des Befehls kann recht lange dauern, wenn keine benutzerdefinierten Namen definiert sind.
    standbyReadings - liest hintereinander folgende Readings ein, die auch im Standby des Projektors verfügbar sind (gut zum Testen, ohne die Projektor-Lampe einschalten zu müssen): Function_DHCP-ClientSetting, Function_DefaultGateway, Function_IP-Address, Function_MAC-Address,Function_Port, Function_SubnetMask, Information_Model, Power

Readings

Zu den get-Befehlen werden passende Readings angelegt und Events erzeugt. Die Readings werden nicht automatisch aktualisiert, sondern erst wenn der entsprechende get- bzw. set-Befehl ausgeführt wurde.

Zusätzlich gibt es das Reading ConnectionState. Es kann folgende Zustände annehmen (vgl. Attribut connection_state_event):

  • READY - Der Projektor kann neue Befehle annehmen. Sollte sich ein Befehl in der Warteschlange befinden, wird er an den Projektor gesendet und aus der Warteschlange entfernt. Das Reading wechselt auf WAITING.
  • WAITING - Der Projektor ist mit der Abarbeitung eines Befehls beschäftigt. Neue Befehle kommen an das Ende der Befehls-Warteschlange. Erst nach der Quittierung des Befehls oder einem Timeout (vgl. Attribut timeout_command) wechselt das Reading auf READY.
  • DISCONNECTED - Das Modul hat die Verbindung zum Projektor wegen Inaktivität geschlossen (vgl. Attribut timeout_connection). Wenn nun ein set oder get-Befehl ausgeführt wird, kommt der Befehl in die Warteschlange, die Verbindung wird aufgebaut und das Reading wechselt auf READY.
Attribute   

  • connection_state_event - 0: Es werden keine Events erzeugt, wenn sich das Reading ConnectionState ändert, 1: Es werden Events erzeugt (Standardwert: 0)
  • max_queue - Maximale Anzahl von Befehlen, die sich in der Befehls-Warteschlange befinden können. Wenn die Warteschlange voll ist werden neue Befehle verworfen. (Standardwert: 75)
  • timeout_io - Wartezeit in Sekunden für einen erfolgreichen Verbindugsaufbau (Standardwert: 2 Sekunden)
  • timeout_command - Zeit in Sekunden bis zu der nach einem Befehl auf eine Quittierung des Projektors gewartet wird (Standardwert: 30 Sekunden). Einige Befehle werden erst nach etlichen Sekunden vom Projektor quittiert. Bei neueren Projektoren sind 15 Sekunden ausreichend.
  • timeout_connection - Zeit in Sekunden nach der die Verbindung zum Projektor geschlossen wird (Standardwert: 45 Sekunden). Eine dauerhafte Verbindung wird vom Projektor nicht unterstützt.
  • verbose - Bei 4 werden zusätzliche Informationen ins Log geschrieben und bei 5 noch viel mehr. Mit 2 werden keine Logs geschrieben. (Standardwert: 3)

Getestet habe ich mit einem JVC X-7900. Ich freue mich über Feedback :)

Viele Grüße,
Alex


EDIT am 12.02.2020:

Version 2 angehängt.

Änderungen:

       
  • Es gibt nun eine maximale Länge der Warteschlange, damit sie nicht überlaufen kann
  • Neues Reading: max_queue - Maximale Anzahl von Befehlen, die sich in der Befehls-Warteschlange befinden können. Wenn die Warteschlange voll ist werden neue Befehle verworfen. (Standardwert: 75)
  • Dokumentation aktualisiert

EDIT am 24.02.2020:

Version 3 angehängt.

Änderungen:

       
  • Der X500 wird nun korrekt in Information_Model angezeigt (Danke @Frini)
  • Dokumentation aktualisiert

EDIT am 28.06.2020:

Version 4 angehängt.

Änderungen:

       
  • Nach dem Befehl set ... Installation_LensMemory wird nun das Reading Installation_LensMemory korrekt aktualisiert (Danke @Frini)

EDIT am 05.01.2021:

Version 5 angehängt.

Änderungen:

  • Die neuen HDR-Funktionen des "Theater Optimizer" Firmware-Upgrades für DLA-N5/N7 & DLA-NX9 werden unterstützt.
  • Neu hinzugekommen sind diese Befehle:
    InputSignal_HDR10 AutoSelect|HDR10|User1|User2|User3|User4|User5|User6|FrameAdaptHDR|PanaPQ|LastSetting
    InputSignal_HLG AutoSelect|HLG|User1|User2|User3|User4|User5|User6|LastSetting
    InputSignal_AspectSwitch Zoom|Auto|Native
    PictureAdjust_ContentType Auto|SDR|HDR10|HLG
    PictureAdjust_HDRProcessing Static|Frame_by_Frame|Scene_by_Scene
    PictureAdjust_HDRLevel Auto|-2|-1|0|1|2
    PictureAdjust_TheaterOptimizer On|Off
    PictureAdjust_TheaterOptimizerLevel Reserved|Low|Mid|High
    PictureAdjust_TheaterOptimizerProcessing -|Processing_Start
  • Die neuen Picture-Modes Frame_Adapt_HDR und PanaPQ sowie die Color-Profiles BT2020_Wide, BT2020_Normal und Auto ergänzt
  • Dokumentation aktualisiert

EDIT am 14.12.2021:

Version 6 angehängt.

Änderungen:

  • Es lassen sich jetzt auch beliebige Remote-Codes über das Modul an den Projektor senden. Das sind die Codes, die auch per Fernbedienung gesendet werden können. Damit kann z.B. das Bild per Hide schwarz geschaltet werden: set <name> RemoteCode D0 für Bild schwarz und set <name> RemoteCode D1 für Bild aktivieren.
  • Neu hinzugekommen ist dieser Befehl:
    RemoteCode <ASCII> Sendet eine Funktion der Infrarot-Fernbedienung über das Netzwerk an den Projektor, z.B. 2E um das Drücken der Menu-Taste auf der Fernbedienung zu senden (vgl. Remote Control Guide https://support.jvc.com/consumer/support/documents/DILAremoteControlGuide.pdf, Spalte ASCII). Da durch diesen Befehl keine Readings verändert werden, sollte statt dessen wenn immer möglich der passende set-Befehl gesendet werden.
  • Dokumentation aktualisiert

Bartimaus

Hi,

interessant. D.h. FHEM erkennt nun, ob gerade 4K-Content zugespielt wird, und FHEM kann den Beamer (X5000) dann auf ein User-Preset umschalten ? Wär ja extrem cool...
LG
B.


FHEM@Intel-J4105@Debian-LXC, CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

Bartimaus

Hi,

habe meinen X5000 erfolgreich eingebunden. Set/get funktioniert bis jetzt tadellos, allerdings wie angekündigt mit etwas Verzögerung.

Schade , das man kein Problem Attribut ,,Intervall" einstellen kann, mit dem periodisch die Readings abgefragt werden,... so platzt leider mein Traum das man ein HDR-Preset via FHEM einstellen kann, sobald ein 4K-Signal anliegt..... 8)
LG
B.


FHEM@Intel-J4105@Debian-LXC, CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

All-Ex

#3
Schön, dass es bei dir läuft :-)

Ja, für solche Anwendungsfälle ist das Modul gedacht.
Leider meldet der Projektor von sich aus keine Status-Änderungen, so dass man ihn explizit danach fragen muss.

Eine regelmäßige Aktualisierung ausgewählter Readings z.B. im 60-Sekunden-Takt kannst du dir mit DOIF einfach selber bauen:
define jvc_intervall DOIF ([+60]) (get projector PictureAdjust_PictureMode, get projector Information_SourceVideoFormat, get projector Information_HDR)
attr jvc_intervall do always


Aber Vorsicht, aktuell wird die Queue überlaufen, wenn du das Intervall unter 30 Sekunden reduzierst und der Projektor ausgeschaltet ist. Ich werde mal eine neue Version mit einer max. Queue-Länge erstellen. Bis dahin bitte diese Beispiele nur testweise verwenden, wenn der Projektor eingeschaltet und erreichbar ist!

Mit diesem DOIF könnte man den Picture Mode in Abhängigkeit des HDR-Flags setzen:

([+60])
(get projector PictureAdjust_PictureMode, get projector Information_HDR)
DOELSEIF
([projector:Information_HDR] eq "SMPTE_ST_2084")
(IF ([projector:PictureAdjust_PictureMode] ne "HDR") (set projector PictureAdjust_PictureMode HDR))
DOELSEIF
([projector:Information_HDR] eq "None")
(IF ([projector:PictureAdjust_PictureMode] ne "SDR") (set projector PictureAdjust_PictureMode SDR))


Es wäre aber sehr viel besser den Projektor nicht ständig abzufragen, sondern statt [+60] die Readings gezielt nur dann zu aktualisieren, wenn z.B. auf einer Harmony-Fernbedienung Play gedrückt wird (evtl. noch das wait Attribut von DOIF verwenden)...

Bartimaus

Moin,

ja, sowas in der Art schwebte mir vor. Eine Harmony habe ich nicht. Wohl kann ich aber meinen Mediaplayer per httpmod abfragen. So mache ich das z.B. für die Lichtsteueung im Heimkino. Mal sehen, was der Player so ausspuckt.

Denn nachwievor besteht mein Content überwiegend aus 1080p Material, 4K ist gerade erst auf dem Vormarsch, aber die manuelle Umschaltung auf das HDR-Preset (und zurück auf BluRay) und ggfls. manuelles Gamma-Preset nervt a bisserl.

Mal sehen, was man noch alles automatisieren kann..... ;D
LG
B.


FHEM@Intel-J4105@Debian-LXC, CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

All-Ex

Hi,

im 1. Post habe ich eine neue Version angehängt. Neu sind:

       
  • Es gibt nun eine maximale Länge der Warteschlange, damit sie nicht überlaufen kann
  • Neues Reading: max_queue - Maximale Anzahl von Befehlen, die sich in der Befehls-Warteschlange befinden können. Wenn die Warteschlange voll ist werden neue Befehle verworfen. (Standardwert: 75)
  • Dokumentation aktualisiert
Viele Grüße,
Alex

Frini

Hallo,
ich schmeiß am Wochenende mal ein Kabel zu meinem X500. Vielleicht klappt es auch. Die LensMemory-Umschaltung direkt auf einen Platz würde mir echt helfen.

All-Ex

Hallo zusammen,

oben habe ich Version 3 angehängt, Änderungen:

       
  • Der X500 wird nun korrekt in Information_Model angezeigt (Danke @Frini)
  • Dokumentation aktualisiert
VG,
Alex

thorsten.gehrig

Hi
darf ich mal ganz blöd fragen: kann ich das script irgendwie nutzen um von einem Linux den JVC direkt anzusprechen (ich will nur ein & ausschalten). Ich habe KEIN FEHM im Einsatz... daher die Frage.
Gruß
Thorsten Gehrig

All-Ex

Hallo Thorsten,

das Modul kannst du nicht ohne FHEM ausführen. Am besten installierst du FHEM auf deiner Linux-Maschine. Dazu gibt es hier eine Anleitung:
https://wiki.fhem.de/wiki/Quick-Start (Kapitel 1-3 sollten dir erstmal reichen).

Dann bindest du wie im Beispiel oben das JVC-Modul ein. Von der Linux-Shell kannst du die set-Befehle des JVC-Moduls mit
perl fhem.pl 7072 "<Befehl>"
ausführen (ggf. vorher globalpassword setzen, siehe auch hier: https://fhem.de/commandref.html#telnet).

Frage am besten im Anfängerbereich nach, wenn du dazu weitere Hilfe brauchst. Da bekommst du bestimmt schnell Antworten:
https://forum.fhem.de/index.php/board,18.0.html

Viele Grüße,
Alex


All-Ex

Hallo,

im ersten Post habe ich eine neue Version eingefügt. Damit ist der Fehler behoben, dass beim Aufrufen von Lens Memory Positionen das dazugehörige Reading nicht aktualisiert wurde.

Danke @Frini für den Hinweis.

Viele Grüße,
Alex

Bartimaus

Guten Morgen,

ich habe dieses Modul von Begin an erfolgreich genutzt, um meinen Beamer via FHM zu steuern. (Ein/Aus).
Dort seit ca. einer Woche funktioniert dies nicht mehr.


2020.10.30 20:19:26.591 3: JVC_DILA (JVC_X5000) get Function_IP-Address => enqueueing for execution
2020.10.30 20:19:37.640 3: JVC_DILA (JVC_X5000) set Power Lamp_On => enqueueing for execution
2020.10.30 20:20:39.613 3: JVC_DILA (JVC_X5000) get Function_IP-Address => enqueueing for execution
2020.10.30 20:20:39.614 3: Opening JVC_X5000 device 192.168.241.35:20554
2020.10.30 20:20:39.773 1: PERL WARNING: Use of uninitialized value $numericisdecimal in concatenation (.) or string at ./FHEM/70_JVC_DILA.pm line 569.
2020.10.30 20:20:39.773 1: stacktrace:
2020.10.30 20:20:39.773 1:     main::__ANON__                      called by ./FHEM/70_JVC_DILA.pm (569)
2020.10.30 20:20:39.774 1:     main::JVC_DILA_UpdateReading        called by ./FHEM/70_JVC_DILA.pm (706)
2020.10.30 20:20:39.774 1:     main::JVC_DILA_Read                 called by fhem.pl (3817)
2020.10.30 20:20:39.774 1:     main::CallFn                        called by fhem.pl (763)
2020.10.30 20:20:39.774 1: PERL WARNING: Use of uninitialized value $function in pattern match (m//) at ./FHEM/70_JVC_DILA.pm line 581.
2020.10.30 20:20:39.774 1: stacktrace:
2020.10.30 20:20:39.775 1:     main::__ANON__                      called by ./FHEM/70_JVC_DILA.pm (581)
2020.10.30 20:20:39.775 1:     main::JVC_DILA_UpdateReading        called by ./FHEM/70_JVC_DILA.pm (706)
2020.10.30 20:20:39.775 1:     main::JVC_DILA_Read                 called by fhem.pl (3817)
2020.10.30 20:20:39.775 1:     main::CallFn                        called by fhem.pl (763)


So wie ich das verstehe, werden die abgesendeten Befehle in eine Warteschlange geschickt, ohne abgearbeitet zu werden.
Und im Modul scheint was nicht in Ordnung zu sein.

Um den Beamer kürzlich überhaupt erst wieder für FHEM ansprechbar zu machen, musste ich das Gerät stromlos machen. Danach reagiert er wieder auf FHEM.

Hast ne Idee ?
LG
B.


FHEM@Intel-J4105@Debian-LXC, CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

All-Ex

Hi,

am Modul hat sich nichts verändert, deshalb tippe ich mal auf die Konfiguration deines Projektors oder von FHEM.

Kannst du den Projektor per telnet erreichen?

Das sollte so aussehen (trage die IP deines Projektors ein):

$ telnet 192.168.178.27 20554
Trying 192.168.178.27...
Connected to 192.168.178.27.
Escape character is '^]'.
PJ_OK


Wenn sich telnet nicht verbinden kann, liegts am Projektor. Evtl. ist die IP-Adresse falsch oder der ECO-Modus aktiviert, schau mal hier auf Seite 55:
http://www33.jvckenwood.com/pdfs/B5A-1144-19.pdf

Viele Grüße,
Alex

Bartimaus

#13
Danke für die schnelle Rückmeldung. Die IP-Adresse ist korrekt, und ich kann den Beamer erfolgreich über die IP-Adresse anpingen. Diese ist statisch seit Beginn.

Der Beamer ist aktuell im Standby, und auch jetzt funktioniert der Ping, also kein ECO-Modus.

ConnectionState = DISCONNECTED
state = disconnected

Rufe ich via "Get" einen Funktion ab, wechselt der Beamer auf:

ConnectionState = WAITING
state = opened

dennoch wird danach der Befehl zum einschalten nicht ausgeführt, wie bereits vorher beschrieben.

An der Konfig von FHEM als auch vom Beamer wurde nichts geändert. Ausser das ich vor einer Woche FHEM nach langer Zeit mal wieder komplett neu gestartet habe...

Was hat es mit der Perl-Warnung im Modul auf sich ?


LG
B.


FHEM@Intel-J4105@Debian-LXC, CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

All-Ex

Meldet der Projektor per Telnet denn PJ_OK zurück?

Bartimaus

#15
Hi,

via Konsole@RPI:
sudo telnet 192.168.241.35 20554
Trying 192.168.241.35...
Connected to 192.168.241.35.
Escape character is '^]'.
PJ_OK


Wofür wird den Telnet benötigt ?

Aber:

Um mein Heimkino zu starten, rufe ich ein DOIF auf, welches sukzessive diverse Geräte einschaltet.
Über dieses DOIF wird auch ein Befehl abgesetzt, um den Beamer zu reanimieren: get JVC_X5000 Function_IP-Address

nach einem sleep von 2s erfolgt dann der Befehl um die Lampe zu zünden: set JVC_X5000 Power Lamp_On.

Das hat bislang immer tadellos funktioniert.

Was ich jetzt herausgefunden habe ist, wenn man den erstgenannten Befehl über die Kommandozeile von FHEM ausführt, erscheint eine "OK" Box, und nach wegklicken wird der Befehl NICHT ausgeführt.
Führe ich den Befehl jedoch über das Device (JVC_X5000) aus, klappt es. Nachdem ich den Befehl also über das Modul und deren "get" Schaltfläche ausgeführt hatte, zündete die Lampe des Beamers, weil der Befehl "set JVC_X5000 Power Lamp_ON" noch in der Queue war, die dann prompt abgearbeitet wurde.

Es muss also mit dem Update Deines Moduls zu tun haben, welches nach dem Neustart von FHEM (nach über 6 Monaten bei mir) aktiv wurde.

Bitte prüf also mal, ob der Befehl bei Dir via Kommandozeile funktioniert.

Bis dahin werde ich also ne alte Version von Deinem Modul wieder einspielen und testen.

Edith: Mit einer alten Version Deines Moduls wird der Befehl aus der Kommandozeile in FHEM ausgeführt (gleichwohl dann die Popup-Box erscheint). Somit müsste es dann auch via DOIF wieder funktionieren
LG
B.


FHEM@Intel-J4105@Debian-LXC, CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

All-Ex

Zitat von: Bartimaus am 31 Oktober 2020, 22:46:32
Wofür wird den Telnet benötigt ?
Damit testest du, ob der Projektor überhaupt erreichbar ist (unabhängig von FHEM und dem Modul). Sieht bei dir gut aus.

Zitat von: Bartimaus am 31 Oktober 2020, 22:46:32
Um mein Heimkino zu starten, rufe ich ein DOIF auf, welches sukzessive diverse Geräte einschaltet.
Über dieses DOIF wird auch ein Befehl abgesetzt, um den Beamer zu reanimieren: get JVC_X5000 Function_IP-Address

nach einem sleep von 2s erfolgt dann der Befehl um die Lampe zu zünden: set JVC_X5000 Power Lamp_On.
Ein Befehl zum reanimieren brauchst du eigentlich nicht.

Zitat von: Bartimaus am 31 Oktober 2020, 22:46:32
Was ich jetzt herausgefunden habe ist, wenn man den erstgenannten Befehl über die Kommandozeile von FHEM ausführt, erscheint eine "OK" Box, und nach wegklicken wird der Befehl NICHT ausgeführt.
Führe ich den Befehl jedoch über das Device (JVC_X5000) aus, klappt es. Nachdem ich den Befehl also über das Modul und deren "get" Schaltfläche ausgeführt hatte, zündete die Lampe des Beamers, weil der Befehl "set JVC_X5000 Power Lamp_ON" noch in der Queue war, die dann prompt abgearbeitet wurde.

Es muss also mit dem Update Deines Moduls zu tun haben, welches nach dem Neustart von FHEM (nach über 6 Monaten bei mir) aktiv wurde.

Bitte prüf also mal, ob der Befehl bei Dir via Kommandozeile funktioniert.
Ja, das funktioniert. Bei mir kommt über die Kommandozeile auch eine leere OK-Box, aber das Reading wird bei mir aktualisiert, also funktioniert der Befehl. Es sollte auch keinen Unterschied machen, ob du einen Befehl über das Web-Interface des Device, über ein DOIF oder über die Kommandozeile absetzt.

Setze das verbose Attribut im Projektor-Device mal auf 5 und poste hier das Log. Bei mir sieht das so aus:
2020.11.01 12:47:36 5: JVC_DILA (med.kg.ki.jvc) get Function_IP-Address
2020.11.01 12:47:36 5: JVC_DILA (med.kg.ki.jvc) Get() - enqueuing message: ? LSIP - call Worker()
2020.11.01 12:47:36 5: JVC_DILA (med.kg.ki.jvc) Enqueue() - Enqueued message: ?, LSIP, , Function_IP-Address, . Items in queue: 1
2020.11.01 12:47:36 3: JVC_DILA (med.kg.ki.jvc) get Function_IP-Address => enqueueing for execution
2020.11.01 12:47:36 5: JVC_DILA (med.kg.ki.jvc) Connect() - connecting to 192.168.178.27:20554
2020.11.01 12:47:36 5: JVC_DILA (med.kg.ki.jvc) ConnectionState() - ConnectionState: CONNECTING
2020.11.01 12:47:36 3: Opening med.kg.ki.jvc device 192.168.178.27:20554
2020.11.01 12:47:36 5: HttpUtils url=http://192.168.178.27:20554/
2020.11.01 12:47:36 4: IP: 192.168.178.27 -> 192.168.178.27
2020.11.01 12:47:36 5: JVC_DILA (med.kg.ki.jvc) Connected() - connected to 192.168.178.27:20554
2020.11.01 12:47:36 5: JVC_DILA (med.kg.ki.jvc) ConnectionState() - ConnectionState: CONNECTED
2020.11.01 12:47:37 4: med.kg.ki.jvc device opened
2020.11.01 12:47:37 5: JVC_DILA (med.kg.ki.jvc) Read() - message received from projector: PJ_OK 504A5F4F4B (lastdbcommand: ? LSIP )
2020.11.01 12:47:37 5: SW: PJREQ
2020.11.01 12:47:37 5: JVC_DILA (med.kg.ki.jvc) Read() - projector is OK: PJ_OK - send message to projector: PJREQ
2020.11.01 12:47:37 5: JVC_DILA (med.kg.ki.jvc) ConnectionState() - ConnectionState: HANDSHAKE
2020.11.01 12:47:37 5: JVC_DILA (med.kg.ki.jvc) Read() - message received from projector: PJACK 504A41434B (lastdbcommand: ? LSIP )
2020.11.01 12:47:37 5: JVC_DILA (med.kg.ki.jvc) Read() - projector acknowedged message: PJACK
2020.11.01 12:47:37 4: JVC_DILA (med.kg.ki.jvc) ConnectionState() - ConnectionState: READY
2020.11.01 12:47:37 5: JVC_DILA (med.kg.ki.jvc) Worker() - dequeued message: ? LSIP
2020.11.01 12:47:37 4: JVC_DILA (med.kg.ki.jvc) Worker() - send request: ? LSIP - message: 3F89014C5349500A
2020.11.01 12:47:37 4: JVC_DILA (med.kg.ki.jvc) ConnectionState() - ConnectionState: WAITING
2020.11.01 12:47:37 5: SW: ?�LSIP

2020.11.01 12:47:37 5: JVC_DILA (med.kg.ki.jvc) Read() - message received from projector: �LS
0689014C530A (lastdbcommand: ? LSIP )
2020.11.01 12:47:37 4: JVC_DILA (med.kg.ki.jvc) Read() - received acknowledge for request: ? LSIP - message: 0689014C530A
2020.11.01 12:47:37 5: JVC_DILA (med.kg.ki.jvc) Read() - message received from projector: @�LSC0A8B21B
4089014C5343304138423231420A (lastdbcommand: ? LSIP )
2020.11.01 12:47:37 4: JVC_DILA (med.kg.ki.jvc) Read() - received response for request: ? LSIP - payload: C0A8B21B - message: 4089014C5343304138423231420A
2020.11.01 12:47:37 5: JVC_DILA (med.kg.ki.jvc) JVC_DILA_UpdateReading(HASH(0x5608b5b14bf8), LSIP, C0A8B21B, ) called
2020.11.01 12:47:37 5: JVC_DILA (med.kg.ki.jvc) JVC_DILA_UpdateReading() - identified reading: Function_IP-Address
2020.11.01 12:47:37 5: JVC_DILA (med.kg.ki.jvc) JVC_DILA_UpdateReading() - reading: Function_IP-Address - data: 192.168.178.27
2020.11.01 12:47:37 4: JVC_DILA (med.kg.ki.jvc) UpdateReading() - updated reading: Function_IP-Address with value: 192.168.178.27
2020.11.01 12:47:37 3: JVC_DILA (med.kg.ki.jvc) get Function_IP-Address => successful execution, updated reading
2020.11.01 12:47:37 4: JVC_DILA (med.kg.ki.jvc) ConnectionState() - ConnectionState: READY
2020.11.01 12:48:22 5: JVC_DILA (med.kg.ki.jvc) Timeout() - closing connection after 45 second(s) of inactivity.
2020.11.01 12:48:22 4: JVC_DILA (med.kg.ki.jvc) ConnectionState() - ConnectionState: DISCONNECTED


Bartimaus

#17
Ok,

hier mal ein Logauszug:

2020.11.01 12:42:06.304 3: JVC_DILA (JVC_X5000) get Function_IP-Address => queued for execution
2020.11.01 13:01:07.864 5: JVC_DILA (JVC_X5000) get ?
2020.11.01 13:01:25.684 5: JVC_DILA (JVC_X5000) get Function_IP-Address
2020.11.01 13:01:25.685 5: JVC_DILA (JVC_X5000) Get() - enqueued message: ? LSIP - call Worker()
2020.11.01 13:01:25.686 3: JVC_DILA (JVC_X5000) get Function_IP-Address => queued for execution
2020.11.01 13:01:25.686 5: JVC_DILA (JVC_X5000) Connect() - connecting to 192.168.241.35:20554
2020.11.01 13:01:25.687 5: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: CONNECTING
2020.11.01 13:01:25.687 3: Opening JVC_X5000 device 192.168.241.35:20554
2020.11.01 13:01:25.688 5: HttpUtils url=http://192.168.241.35:20554/
2020.11.01 13:01:25.689 4: IP: 192.168.241.35 -> 192.168.241.35
2020.11.01 13:01:25.695 5: JVC_DILA (JVC_X5000) Connected() - connected to 192.168.241.35:20554
2020.11.01 13:01:25.696 5: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: CONNECTED
2020.11.01 13:01:25.697 4: JVC_X5000 device opened
2020.11.01 13:01:25.850 5: JVC_DILA (JVC_X5000) Read() - message received from projector: PJ_OK 504A5F4F4B (lastdbcommand: ? IFLT )
2020.11.01 13:01:25.851 5: SW: PJREQ
2020.11.01 13:01:25.852 5: JVC_DILA (JVC_X5000) Read() - projector is OK: PJ_OK - send message to projector: PJREQ
2020.11.01 13:01:25.852 5: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: HANDSHAKE
2020.11.01 13:01:25.853 5: JVC_DILA (JVC_X5000) Read() - message received from projector: PJACK 504A41434B (lastdbcommand: ? IFLT )
2020.11.01 13:01:25.854 5: JVC_DILA (JVC_X5000) Read() - projector acknowedged message: PJACK
2020.11.01 13:01:25.854 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: READY
2020.11.01 13:01:25.854 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ? LSIP
2020.11.01 13:01:25.854 4: JVC_DILA (JVC_X5000) Worker() - send request: ? LSIP - message: 3F89014C5349500A
2020.11.01 13:01:25.855 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: WAITING
2020.11.01 13:01:25.855 5: SW: ?�LSIP

2020.11.01 13:01:25.857 5: JVC_DILA (JVC_X5000) Read() - message received from projector: �LS
0689014C530A (lastdbcommand: ? LSIP )
2020.11.01 13:01:25.859 4: JVC_DILA (JVC_X5000) Read() - received acknowledge for request: ? LSIP - message: 0689014C530A
2020.11.01 13:01:25.955 5: JVC_DILA (JVC_X5000) Read() - message received from projector: @�LSC0A8F123
4089014C5343304138463132330A (lastdbcommand: ? LSIP )
2020.11.01 13:01:25.957 4: JVC_DILA (JVC_X5000) Read() - received response for request: ? LSIP - payload: C0A8F123 - message: 4089014C5343304138463132330A
2020.11.01 13:01:25.957 1: PERL WARNING: Use of uninitialized value $function in pattern match (m//) at ./FHEM/70_JVC_DILA.pm line 570.
2020.11.01 13:01:25.957 1: stacktrace:
2020.11.01 13:01:25.957 1:     main::__ANON__                      called by ./FHEM/70_JVC_DILA.pm (570)
2020.11.01 13:01:25.957 1:     main::JVC_DILA_UpdateReading        called by ./FHEM/70_JVC_DILA.pm (693)
2020.11.01 13:01:25.957 1:     main::JVC_DILA_Read                 called by fhem.pl (3809)
2020.11.01 13:01:25.958 1:     main::CallFn                        called by fhem.pl (755)
2020.11.01 13:01:25.975 4: JVC_DILA (JVC_X5000) UpdateReading() - updated reading: Function_IP-Address with value: 192.168.241.35
2020.11.01 13:01:25.975 3: JVC_DILA (JVC_X5000) get Function_IP-Address => successful execution, updated reading
2020.11.01 13:01:25.975 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: READY
2020.11.01 13:01:25.976 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ? LSIP
2020.11.01 13:01:25.976 4: JVC_DILA (JVC_X5000) Worker() - send request: ? LSIP - message: 3F89014C5349500A
2020.11.01 13:01:25.976 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: WAITING
2020.11.01 13:01:25.977 5: SW: ?�LSIP

2020.11.01 13:01:25.979 5: JVC_DILA (JVC_X5000) Read() - message received from projector: �LS
0689014C530A (lastdbcommand: ? LSIP )
2020.11.01 13:01:25.980 4: JVC_DILA (JVC_X5000) Read() - received acknowledge for request: ? LSIP - message: 0689014C530A
2020.11.01 13:01:26.078 5: JVC_DILA (JVC_X5000) Read() - message received from projector: @�LSC0A8F123
4089014C5343304138463132330A (lastdbcommand: ? LSIP )
2020.11.01 13:01:26.082 4: JVC_DILA (JVC_X5000) Read() - received response for request: ? LSIP - payload: C0A8F123 - message: 4089014C5343304138463132330A
2020.11.01 13:01:26.083 1: PERL WARNING: Use of uninitialized value $function in pattern match (m//) at ./FHEM/70_JVC_DILA.pm line 570.
2020.11.01 13:01:26.083 1: stacktrace:
2020.11.01 13:01:26.083 1:     main::__ANON__                      called by ./FHEM/70_JVC_DILA.pm (570)
2020.11.01 13:01:26.083 1:     main::JVC_DILA_UpdateReading        called by ./FHEM/70_JVC_DILA.pm (693)
2020.11.01 13:01:26.084 1:     main::JVC_DILA_Read                 called by fhem.pl (3809)
2020.11.01 13:01:26.084 1:     main::CallFn                        called by fhem.pl (755)
2020.11.01 13:01:26.123 4: JVC_DILA (JVC_X5000) UpdateReading() - updated reading: Function_IP-Address with value: 192.168.241.35
2020.11.01 13:01:26.123 3: JVC_DILA (JVC_X5000) get Function_IP-Address => successful execution, updated reading
2020.11.01 13:01:26.124 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: READY
2020.11.01 13:02:11.130 5: JVC_DILA (JVC_X5000) Timeout() - closing connection after 45 second(s) of inactivity.
2020.11.01 13:02:11.132 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: DISCONNECTED


Ohne den Reanimationsbefehl konnte ich den Beamer nicht per Remote einschalten. Vermutlich weil er im State=DISCONNECTED war, deswegen.
LG
B.


FHEM@Intel-J4105@Debian-LXC, CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

All-Ex

#18
Das Log sieht gut aus, kein Fehler drin. Kannst du eins posten, wenn der Fehler auftritt?
Hast du den Eco-Modus im Projektor-Menü richtig eingestellt?

Edit:
Welche Version nimmst du denn (Befehl version)? Bei dir ist weniger Logging enthalten als bei mir. Aktuell ist diese:
70_JVC_DILA.pm           4 2020-06-28 11:48:00Z all-ex

Bartimaus

#19
Diese Version hatte ich ja drauf, mit der es dann nicht funktioniert hat.

Gerade mit der alten Version getestet, da hat wieder alles geklappt.

Diese Version verwende ich (jetzt wieder):

# $Id: 70_JVC_DILA.pm 1 2020-02-10 20:56:54Z all-ex $package main

ECO-Modus habe ich im Projector noch nie verwendet. Ich kann ja nochmal die aktuelle Version aufspielen und dann nochmal schauen.
LG
B.


FHEM@Intel-J4105@Debian-LXC, CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

Bartimaus

Nabend,

das passiert mit der aktuellen Version:

Einschalten (Versuch)

2020.11.02 19:26:52.075 5: JVC_DILA (JVC_X5000) get Function_IP-Address
2020.11.02 19:26:52.076 5: JVC_DILA (JVC_X5000) Get() - enqueued message: ? LSIP - call Worker()
2020.11.02 19:26:52.076 3: JVC_DILA (JVC_X5000) get Function_IP-Address => queued for execution
2020.11.02 19:26:52.076 5: JVC_DILA (JVC_X5000) Connect() - connecting to 192.168.241.35:20554
2020.11.02 19:26:52.076 5: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: CONNECTING
2020.11.02 19:27:03.124 3: JVC_DILA (JVC_X5000) set Power Lamp_On => queued for execution
2020.11.02 19:27:03.124 5: JVC_DILA (JVC_X5000) Set() - enqueued message: ! PW 1 - call Worker()
2020.11.02 19:27:37.082 5: JVC_DILA (JVC_X5000) Timeout() - closing connection after 45 second(s) of inactivity.
2020.11.02 19:27:37.083 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: DISCONNECTED


Ausschalten (Versuch)
2020.11.02 21:24:56.888 5: JVC_DILA (JVC_X5000) get Function_IP-Address
2020.11.02 21:24:56.888 5: JVC_DILA (JVC_X5000) Get() - enqueued message: ? LSIP - call Worker()
2020.11.02 21:24:56.889 3: JVC_DILA (JVC_X5000) get Function_IP-Address => queued for execution
2020.11.02 21:24:56.889 5: JVC_DILA (JVC_X5000) Connect() - connecting to 192.168.241.35:20554
2020.11.02 21:24:56.889 5: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: CONNECTING
2020.11.02 21:24:56.889 3: Opening JVC_X5000 device 192.168.241.35:20554
2020.11.02 21:24:56.889 5: HttpUtils url=http://192.168.241.35:20554/
2020.11.02 21:24:56.890 4: IP: 192.168.241.35 -> 192.168.241.35
2020.11.02 21:24:56.943 5: JVC_DILA (JVC_X5000) Connected() - connected to 192.168.241.35:20554
2020.11.02 21:24:56.944 5: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: CONNECTED
2020.11.02 21:24:56.946 4: JVC_X5000 device opened
2020.11.02 21:24:57.129 5: JVC_DILA (JVC_X5000) Read() - message received from projector: PJ_OK 504A5F4F4B (lastdbcommand: ? IFLT )
2020.11.02 21:24:57.130 5: SW: PJREQ
2020.11.02 21:24:57.131 5: JVC_DILA (JVC_X5000) Read() - projector is OK: PJ_OK - send message to projector: PJREQ
2020.11.02 21:24:57.132 5: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: HANDSHAKE
2020.11.02 21:24:57.137 5: JVC_DILA (JVC_X5000) Read() - message received from projector: PJACK 504A41434B (lastdbcommand: ? IFLT )
2020.11.02 21:24:57.139 5: JVC_DILA (JVC_X5000) Read() - projector acknowedged message: PJACK
2020.11.02 21:24:57.139 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: READY
2020.11.02 21:24:57.140 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ? LSIP
2020.11.02 21:24:57.140 4: JVC_DILA (JVC_X5000) Worker() - send request: ? LSIP - message: 3F89014C5349500A
2020.11.02 21:24:57.140 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: WAITING
2020.11.02 21:24:57.140 5: SW: ?�LSIP

2020.11.02 21:24:57.234 5: JVC_DILA (JVC_X5000) Read() - message received from projector: �LS
0689014C530A (lastdbcommand: ? LSIP )
2020.11.02 21:24:57.235 4: JVC_DILA (JVC_X5000) Read() - received acknowledge for request: ? LSIP - message: 0689014C530A
2020.11.02 21:24:57.417 5: JVC_DILA (JVC_X5000) Read() - message received from projector: @�LSC0A8F123
4089014C5343304138463132330A (lastdbcommand: ? LSIP )
2020.11.02 21:24:57.419 4: JVC_DILA (JVC_X5000) Read() - received response for request: ? LSIP - payload: C0A8F123 - message: 4089014C5343304138463132330A
2020.11.02 21:24:57.419 1: PERL WARNING: Use of uninitialized value $function in pattern match (m//) at ./FHEM/70_JVC_DILA.pm line 570.
2020.11.02 21:24:57.419 1: stacktrace:
2020.11.02 21:24:57.419 1:     main::__ANON__                      called by ./FHEM/70_JVC_DILA.pm (570)
2020.11.02 21:24:57.419 1:     main::JVC_DILA_UpdateReading        called by ./FHEM/70_JVC_DILA.pm (693)
2020.11.02 21:24:57.419 1:     main::JVC_DILA_Read                 called by fhem.pl (3809)
2020.11.02 21:24:57.420 1:     main::CallFn                        called by fhem.pl (755)
2020.11.02 21:24:57.435 4: JVC_DILA (JVC_X5000) UpdateReading() - updated reading: Function_IP-Address with value: 192.168.241.35
2020.11.02 21:24:57.435 3: JVC_DILA (JVC_X5000) get Function_IP-Address => successful execution, updated reading
2020.11.02 21:24:57.436 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: READY
2020.11.02 21:24:57.437 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ! PW 1
2020.11.02 21:24:57.437 5: JVC_DILA (JVC_X5000) EncodeData() - dbcommand: PW data: 1 => return: 1
2020.11.02 21:24:57.437 4: JVC_DILA (JVC_X5000) Worker() - send command: ! PW 1 - payload: 1 - message: 2189015057310A
2020.11.02 21:24:57.437 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: WAITING
2020.11.02 21:24:57.437 5: SW: !�PW1

2020.11.02 21:24:57.893 3: JVC_DILA (JVC_X5000) set Power Standby => queued for execution
2020.11.02 21:24:57.894 5: JVC_DILA (JVC_X5000) Set() - enqueued message: ! PW 0 - call Worker()
2020.11.02 21:25:27.442 3: JVC_DILA (JVC_X5000) set Power Lamp_On => Timeout error, no response after 30 second(s). Projector in standby or command not supported.
2020.11.02 21:25:27.443 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: READY
2020.11.02 21:25:27.444 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ? LSIP
2020.11.02 21:25:27.444 4: JVC_DILA (JVC_X5000) Worker() - send request: ? LSIP - message: 3F89014C5349500A
2020.11.02 21:25:27.445 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: WAITING
2020.11.02 21:25:27.445 5: SW: ?�LSIP

2020.11.02 21:25:27.449 5: JVC_DILA (JVC_X5000) Read() - message received from projector: �LS
0689014C530A (lastdbcommand: ? LSIP )
2020.11.02 21:25:27.452 4: JVC_DILA (JVC_X5000) Read() - received acknowledge for request: ? LSIP - message: 0689014C530A
2020.11.02 21:25:27.546 5: JVC_DILA (JVC_X5000) Read() - message received from projector: @�LSC0A8F123
4089014C5343304138463132330A (lastdbcommand: ? LSIP )
2020.11.02 21:25:27.549 4: JVC_DILA (JVC_X5000) Read() - received response for request: ? LSIP - payload: C0A8F123 - message: 4089014C5343304138463132330A
2020.11.02 21:25:27.550 1: PERL WARNING: Use of uninitialized value $function in pattern match (m//) at ./FHEM/70_JVC_DILA.pm line 570.
2020.11.02 21:25:27.550 1: stacktrace:
2020.11.02 21:25:27.550 1:     main::__ANON__                      called by ./FHEM/70_JVC_DILA.pm (570)
2020.11.02 21:25:27.550 1:     main::JVC_DILA_UpdateReading        called by ./FHEM/70_JVC_DILA.pm (693)
2020.11.02 21:25:27.550 1:     main::JVC_DILA_Read                 called by fhem.pl (3809)
2020.11.02 21:25:27.551 1:     main::CallFn                        called by fhem.pl (755)
2020.11.02 21:25:27.582 4: JVC_DILA (JVC_X5000) UpdateReading() - updated reading: Function_IP-Address with value: 192.168.241.35
2020.11.02 21:25:27.582 3: JVC_DILA (JVC_X5000) get Function_IP-Address => successful execution, updated reading
2020.11.02 21:25:27.583 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: READY
2020.11.02 21:25:27.585 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ! PW 0
2020.11.02 21:25:27.585 5: JVC_DILA (JVC_X5000) EncodeData() - dbcommand: PW data: 0 => return: 0
2020.11.02 21:25:27.585 4: JVC_DILA (JVC_X5000) Worker() - send command: ! PW 0 - payload: 0 - message: 2189015057300A
2020.11.02 21:25:27.586 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: WAITING
2020.11.02 21:25:27.586 5: SW: !�PW0

2020.11.02 21:25:57.593 3: JVC_DILA (JVC_X5000) set Power Standby => Timeout error, no response after 30 second(s). Projector in standby or command not supported.
2020.11.02 21:25:57.594 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: READY
2020.11.02 21:26:27.604 4: 192.168.241.35:20554 disconnected, waiting to reappear (JVC_X5000)

LG
B.


FHEM@Intel-J4105@Debian-LXC, CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

Bartimaus

Nabend, heute hat der PJ mal nicht richtig reagiert.

Hier der Auszug aus dem Log:

2020.11.16 21:24:30.375 5: JVC_DILA (JVC_X5000) get ?
2020.11.16 21:24:42.890 5: JVC_DILA (JVC_X5000) get Function_IP-Address
2020.11.16 21:24:42.890 5: JVC_DILA (JVC_X5000) Get() - enqueued message: ? LSIP - call Worker()
2020.11.16 21:24:42.891 3: JVC_DILA (JVC_X5000) get Function_IP-Address => queued for execution
2020.11.16 21:24:42.891 5: JVC_DILA (JVC_X5000) Connect() - connecting to 192.168.241.35:20554
2020.11.16 21:24:42.892 5: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: CONNECTING
2020.11.16 21:24:42.892 3: Opening JVC_X5000 device 192.168.241.35:20554
2020.11.16 21:24:42.893 5: HttpUtils url=http://192.168.241.35:20554/
2020.11.16 21:24:42.893 4: IP: 192.168.241.35 -> 192.168.241.35
2020.11.16 21:24:43.042 5: JVC_DILA (JVC_X5000) Connected() - connected to 192.168.241.35:20554
2020.11.16 21:24:43.042 5: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: CONNECTED
2020.11.16 21:24:43.043 4: JVC_X5000 device opened
2020.11.16 21:24:43.061 5: JVC_DILA (JVC_X5000) Read() - message received from projector: PJ_OK 504A5F4F4B (lastdbcommand: ! PW 0)
2020.11.16 21:24:43.062 5: SW: PJREQ
2020.11.16 21:24:43.064 5: JVC_DILA (JVC_X5000) Read() - projector is OK: PJ_OK - send message to projector: PJREQ
2020.11.16 21:24:43.064 5: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: HANDSHAKE
2020.11.16 21:24:43.064 5: JVC_DILA (JVC_X5000) Read() - message received from projector: PJACK 504A41434B (lastdbcommand: ! PW 0)
2020.11.16 21:24:43.065 5: JVC_DILA (JVC_X5000) Read() - projector acknowedged message: PJACK
2020.11.16 21:24:43.066 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: READY
2020.11.16 21:24:43.066 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ? LSIP
2020.11.16 21:24:43.066 4: JVC_DILA (JVC_X5000) Worker() - send request: ? LSIP - message: 3F89014C5349500A
2020.11.16 21:24:43.066 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: WAITING
2020.11.16 21:24:43.066 5: SW: ?�LSIP

2020.11.16 21:24:43.069 5: JVC_DILA (JVC_X5000) Read() - message received from projector: �LS
0689014C530A (lastdbcommand: ? LSIP )
2020.11.16 21:24:43.071 4: JVC_DILA (JVC_X5000) Read() - received acknowledge for request: ? LSIP - message: 0689014C530A
2020.11.16 21:24:43.209 5: JVC_DILA (JVC_X5000) Read() - message received from projector: @�LSC0A8F123
4089014C5343304138463132330A (lastdbcommand: ? LSIP )
2020.11.16 21:24:43.211 4: JVC_DILA (JVC_X5000) Read() - received response for request: ? LSIP - payload: C0A8F123 - message: 4089014C5343304138463132330A
2020.11.16 21:24:43.212 1: PERL WARNING: Use of uninitialized value $function in pattern match (m//) at ./FHEM/70_JVC_DILA.pm line 570.
2020.11.16 21:24:43.212 1: stacktrace:
2020.11.16 21:24:43.212 1:     main::__ANON__                      called by ./FHEM/70_JVC_DILA.pm (570)
2020.11.16 21:24:43.212 1:     main::JVC_DILA_UpdateReading        called by ./FHEM/70_JVC_DILA.pm (693)
2020.11.16 21:24:43.212 1:     main::JVC_DILA_Read                 called by fhem.pl (3809)
2020.11.16 21:24:43.212 1:     main::CallFn                        called by fhem.pl (755)
2020.11.16 21:24:43.230 4: JVC_DILA (JVC_X5000) UpdateReading() - updated reading: Function_IP-Address with value: 192.168.241.35
2020.11.16 21:24:43.230 3: JVC_DILA (JVC_X5000) get Function_IP-Address => successful execution, updated reading
2020.11.16 21:24:43.230 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: READY
2020.11.16 21:24:43.231 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ? LSIP
2020.11.16 21:24:43.231 4: JVC_DILA (JVC_X5000) Worker() - send request: ? LSIP - message: 3F89014C5349500A
2020.11.16 21:24:43.232 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: WAITING
2020.11.16 21:24:43.232 5: SW: ?�LSIP

2020.11.16 21:24:43.235 5: JVC_DILA (JVC_X5000) Read() - message received from projector: �LS
0689014C530A (lastdbcommand: ? LSIP )
2020.11.16 21:24:43.236 4: JVC_DILA (JVC_X5000) Read() - received acknowledge for request: ? LSIP - message: 0689014C530A
2020.11.16 21:24:43.375 5: JVC_DILA (JVC_X5000) Read() - message received from projector: @�LSC0A8F123
4089014C5343304138463132330A (lastdbcommand: ? LSIP )
2020.11.16 21:24:43.377 4: JVC_DILA (JVC_X5000) Read() - received response for request: ? LSIP - payload: C0A8F123 - message: 4089014C5343304138463132330A
2020.11.16 21:24:43.377 1: PERL WARNING: Use of uninitialized value $function in pattern match (m//) at ./FHEM/70_JVC_DILA.pm line 570.
2020.11.16 21:24:43.377 1: stacktrace:
2020.11.16 21:24:43.378 1:     main::__ANON__                      called by ./FHEM/70_JVC_DILA.pm (570)
2020.11.16 21:24:43.378 1:     main::JVC_DILA_UpdateReading        called by ./FHEM/70_JVC_DILA.pm (693)
2020.11.16 21:24:43.378 1:     main::JVC_DILA_Read                 called by fhem.pl (3809)
2020.11.16 21:24:43.378 1:     main::CallFn                        called by fhem.pl (755)
2020.11.16 21:24:43.395 4: JVC_DILA (JVC_X5000) UpdateReading() - updated reading: Function_IP-Address with value: 192.168.241.35
2020.11.16 21:24:43.395 3: JVC_DILA (JVC_X5000) get Function_IP-Address => successful execution, updated reading
2020.11.16 21:24:43.396 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: READY
2020.11.16 21:24:43.397 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ! PW 1
2020.11.16 21:24:43.397 5: JVC_DILA (JVC_X5000) EncodeData() - dbcommand: PW data: 1 => return: 1
2020.11.16 21:24:43.397 4: JVC_DILA (JVC_X5000) Worker() - send command: ! PW 1 - payload: 1 - message: 2189015057310A
2020.11.16 21:24:43.397 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: WAITING
2020.11.16 21:24:43.398 5: SW: !�PW1

2020.11.16 21:24:45.718 5: JVC_DILA (JVC_X5000) get Function_IP-Address
2020.11.16 21:24:45.719 5: JVC_DILA (JVC_X5000) Get() - enqueued message: ? LSIP - call Worker()
2020.11.16 21:24:45.720 3: JVC_DILA (JVC_X5000) get Function_IP-Address => queued for execution
2020.11.16 21:25:01.965 5: JVC_DILA (JVC_X5000) get Function_IP-Address
2020.11.16 21:25:01.966 5: JVC_DILA (JVC_X5000) Get() - enqueued message: ? LSIP - call Worker()
2020.11.16 21:25:01.966 3: JVC_DILA (JVC_X5000) get Function_IP-Address => queued for execution
2020.11.16 21:25:02.972 3: JVC_DILA (JVC_X5000) set Power Standby => queued for execution
2020.11.16 21:25:02.972 5: JVC_DILA (JVC_X5000) Set() - enqueued message: ! PW 0 - call Worker()
2020.11.16 21:25:13.418 3: JVC_DILA (JVC_X5000) set Power Lamp_On => Timeout error, no response after 30 second(s). Projector in standby or command not supported.
2020.11.16 21:25:13.419 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: READY
2020.11.16 21:25:13.419 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ! PW 1
2020.11.16 21:25:13.419 5: JVC_DILA (JVC_X5000) EncodeData() - dbcommand: PW data: 1 => return: 1
2020.11.16 21:25:13.419 4: JVC_DILA (JVC_X5000) Worker() - send command: ! PW 1 - payload: 1 - message: 2189015057310A
2020.11.16 21:25:13.419 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: WAITING
2020.11.16 21:25:13.419 5: SW: !�PW1

2020.11.16 21:25:22.365 5: JVC_DILA (JVC_X5000) get ?
2020.11.16 21:25:41.448 3: JVC_DILA (JVC_X5000) set Power Standby => queued for execution
2020.11.16 21:25:41.448 5: JVC_DILA (JVC_X5000) Set() - enqueued message: ! PW 0 - call Worker()
2020.11.16 21:25:42.613 3: JVC_DILA (JVC_X5000) set Power Standby => queued for execution
2020.11.16 21:25:42.613 5: JVC_DILA (JVC_X5000) Set() - enqueued message: ! PW 0 - call Worker()
2020.11.16 21:25:43.424 3: JVC_DILA (JVC_X5000) set Power Lamp_On => Timeout error, no response after 30 second(s). Projector in standby or command not supported.
2020.11.16 21:25:43.424 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: READY
2020.11.16 21:25:43.424 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ? LSIP
2020.11.16 21:25:43.424 4: JVC_DILA (JVC_X5000) Worker() - send request: ? LSIP - message: 3F89014C5349500A
2020.11.16 21:25:43.425 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: WAITING
2020.11.16 21:25:43.425 5: SW: ?�LSIP

2020.11.16 21:25:43.427 5: JVC_DILA (JVC_X5000) Read() - message received from projector: �LS
0689014C530A (lastdbcommand: ? LSIP )
2020.11.16 21:25:43.429 4: JVC_DILA (JVC_X5000) Read() - received acknowledge for request: ? LSIP - message: 0689014C530A
2020.11.16 21:25:43.526 5: JVC_DILA (JVC_X5000) Read() - message received from projector: @�LSC0A8F123
4089014C5343304138463132330A (lastdbcommand: ? LSIP )
2020.11.16 21:25:43.531 4: JVC_DILA (JVC_X5000) Read() - received response for request: ? LSIP - payload: C0A8F123 - message: 4089014C5343304138463132330A
2020.11.16 21:25:43.531 1: PERL WARNING: Use of uninitialized value $function in pattern match (m//) at ./FHEM/70_JVC_DILA.pm line 570.
2020.11.16 21:25:43.531 1: stacktrace:
2020.11.16 21:25:43.531 1:     main::__ANON__                      called by ./FHEM/70_JVC_DILA.pm (570)
2020.11.16 21:25:43.532 1:     main::JVC_DILA_UpdateReading        called by ./FHEM/70_JVC_DILA.pm (693)
2020.11.16 21:25:43.532 1:     main::JVC_DILA_Read                 called by fhem.pl (3809)
2020.11.16 21:25:43.532 1:     main::CallFn                        called by fhem.pl (755)
2020.11.16 21:25:43.568 4: JVC_DILA (JVC_X5000) UpdateReading() - updated reading: Function_IP-Address with value: 192.168.241.35
2020.11.16 21:25:43.568 3: JVC_DILA (JVC_X5000) get Function_IP-Address => successful execution, updated reading
2020.11.16 21:25:43.569 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: READY
2020.11.16 21:25:43.571 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ? LSIP
2020.11.16 21:25:43.571 4: JVC_DILA (JVC_X5000) Worker() - send request: ? LSIP - message: 3F89014C5349500A
2020.11.16 21:25:43.572 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: WAITING
2020.11.16 21:25:43.572 5: SW: ?�LSIP

2020.11.16 21:25:43.576 5: JVC_DILA (JVC_X5000) Read() - message received from projector: �LS
0689014C530A (lastdbcommand: ? LSIP )
2020.11.16 21:25:43.580 4: JVC_DILA (JVC_X5000) Read() - received acknowledge for request: ? LSIP - message: 0689014C530A
2020.11.16 21:25:43.673 5: JVC_DILA (JVC_X5000) Read() - message received from projector: @�LSC0A8F123
4089014C5343304138463132330A (lastdbcommand: ? LSIP )
2020.11.16 21:25:43.676 4: JVC_DILA (JVC_X5000) Read() - received response for request: ? LSIP - payload: C0A8F123 - message: 4089014C5343304138463132330A
2020.11.16 21:25:43.676 1: PERL WARNING: Use of uninitialized value $function in pattern match (m//) at ./FHEM/70_JVC_DILA.pm line 570.
2020.11.16 21:25:43.676 1: stacktrace:
2020.11.16 21:25:43.676 1:     main::__ANON__                      called by ./FHEM/70_JVC_DILA.pm (570)
2020.11.16 21:25:43.677 1:     main::JVC_DILA_UpdateReading        called by ./FHEM/70_JVC_DILA.pm (693)
2020.11.16 21:25:43.677 1:     main::JVC_DILA_Read                 called by fhem.pl (3809)
2020.11.16 21:25:43.677 1:     main::CallFn                        called by fhem.pl (755)
2020.11.16 21:25:43.703 4: JVC_DILA (JVC_X5000) UpdateReading() - updated reading: Function_IP-Address with value: 192.168.241.35
2020.11.16 21:25:43.703 3: JVC_DILA (JVC_X5000) get Function_IP-Address => successful execution, updated reading
2020.11.16 21:25:43.703 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: READY
2020.11.16 21:25:43.705 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ? LSIP
2020.11.16 21:25:43.705 4: JVC_DILA (JVC_X5000) Worker() - send request: ? LSIP - message: 3F89014C5349500A
2020.11.16 21:25:43.705 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: WAITING
2020.11.16 21:25:43.705 5: SW: ?�LSIP

2020.11.16 21:25:43.709 5: JVC_DILA (JVC_X5000) Read() - message received from projector: �LS
0689014C530A (lastdbcommand: ? LSIP )
2020.11.16 21:25:43.712 4: JVC_DILA (JVC_X5000) Read() - received acknowledge for request: ? LSIP - message: 0689014C530A
2020.11.16 21:25:43.807 5: JVC_DILA (JVC_X5000) Read() - message received from projector: @�LSC0A8F123
4089014C5343304138463132330A (lastdbcommand: ? LSIP )
2020.11.16 21:25:43.810 4: JVC_DILA (JVC_X5000) Read() - received response for request: ? LSIP - payload: C0A8F123 - message: 4089014C5343304138463132330A
2020.11.16 21:25:43.811 1: PERL WARNING: Use of uninitialized value $function in pattern match (m//) at ./FHEM/70_JVC_DILA.pm line 570.
2020.11.16 21:25:43.811 1: stacktrace:
2020.11.16 21:25:43.811 1:     main::__ANON__                      called by ./FHEM/70_JVC_DILA.pm (570)
2020.11.16 21:25:43.811 1:     main::JVC_DILA_UpdateReading        called by ./FHEM/70_JVC_DILA.pm (693)
2020.11.16 21:25:43.811 1:     main::JVC_DILA_Read                 called by fhem.pl (3809)
2020.11.16 21:25:43.811 1:     main::CallFn                        called by fhem.pl (755)
2020.11.16 21:25:43.840 4: JVC_DILA (JVC_X5000) UpdateReading() - updated reading: Function_IP-Address with value: 192.168.241.35
2020.11.16 21:25:43.840 3: JVC_DILA (JVC_X5000) get Function_IP-Address => successful execution, updated reading
2020.11.16 21:25:43.840 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: READY
2020.11.16 21:25:43.842 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ! PW 0
2020.11.16 21:25:43.842 5: JVC_DILA (JVC_X5000) EncodeData() - dbcommand: PW data: 0 => return: 0
2020.11.16 21:25:43.842 4: JVC_DILA (JVC_X5000) Worker() - send command: ! PW 0 - payload: 0 - message: 2189015057300A
2020.11.16 21:25:43.843 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: WAITING
2020.11.16 21:25:43.843 5: SW: !�PW0

2020.11.16 21:25:43.847 5: JVC_DILA (JVC_X5000) Read() - message received from projector: �PW
06890150570A (lastdbcommand: ! PW 0)
2020.11.16 21:25:43.851 4: JVC_DILA (JVC_X5000) Read() - received acknowledge for command: ! PW 0 - message: 06890150570A
2020.11.16 21:25:43.851 3: JVC_DILA (JVC_X5000) set Power Standby => successful execution
2020.11.16 21:25:43.877 4: JVC_DILA (JVC_X5000) UpdateReading() - updated reading: Power with value: Standby
2020.11.16 21:25:43.877 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: READY
2020.11.16 21:25:43.879 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ! PW 0
2020.11.16 21:25:43.879 5: JVC_DILA (JVC_X5000) EncodeData() - dbcommand: PW data: 0 => return: 0
2020.11.16 21:25:43.880 4: JVC_DILA (JVC_X5000) Worker() - send command: ! PW 0 - payload: 0 - message: 2189015057300A
2020.11.16 21:25:43.880 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: WAITING
2020.11.16 21:25:43.880 5: SW: !�PW0

2020.11.16 21:26:13.886 3: JVC_DILA (JVC_X5000) set Power Standby => Timeout error, no response after 30 second(s). Projector in standby or command not supported.
2020.11.16 21:26:13.887 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: READY
2020.11.16 21:26:13.888 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ! PW 0
2020.11.16 21:26:13.888 5: JVC_DILA (JVC_X5000) EncodeData() - dbcommand: PW data: 0 => return: 0
2020.11.16 21:26:13.888 4: JVC_DILA (JVC_X5000) Worker() - send command: ! PW 0 - payload: 0 - message: 2189015057300A
2020.11.16 21:26:13.889 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: WAITING
2020.11.16 21:26:13.889 5: SW: !�PW0

2020.11.16 21:26:43.950 3: JVC_DILA (JVC_X5000) set Power Standby => Timeout error, no response after 30 second(s). Projector in standby or command not supported.
2020.11.16 21:26:43.950 4: JVC_DILA (JVC_X5000) ConnectionState() - ConnectionState: READY
2020.11.16 21:27:13.836 4: 192.168.241.35:20554 disconnected, waiting to reappear (JVC_X5000)
LG
B.


FHEM@Intel-J4105@Debian-LXC, CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

Pino72

Hallo Zusammen,

super, dass es für die JVC's jetzt ein Modul gibt!

Habe eben mal das Modul geladen und meinen JVC N5 eingebunden. Soweit schaut alles gut aus.

Allerdings gibt es ja seit kurzer Zeit ein neues Firmware Update mit einigen neuen Funktionen für das HDR Bild etc. Kann man die evtl. noch mit reinnehmen in die set und get Befehle?

Was bei mir generell seltsam ist: Habe mein Netzwerk über Unifi Geräte aufgebaut und der JVC ist im Standby nicht zu sehen innder Liste der verbundenen Geräte, wenn er an ist taucht er etwa 6-8 Minuten auf mit seiner richtigen IP Adresse verschwindet dann aber wieder!?

Einer ne Idee warum das so ist und an was das liegen kann? Kehrt das LAN Modul in nen Standby zurück wenn einigen Minuten nichts gesendet oder empfangen wurde oder woran leigts?

DAnke.

DAs Modul werde ich mal heute Abend testen, würde gerne bei 21:9 Filmen meine Leinwandmaskierung automatisch runterfahren lassen.....

All-Ex

Hi Pino,

habe leider keinen JVC N5, deshalb weiß ich nicht so genau, was dazu gekommen ist. Sind es die rot markierten Features hier ab S. 40 ?
http://pro.jvc.com/pro/attributes/PRESENT/Manual/External%20Command%20Spec%20for%20D-ILA%20projector_V3.0.pdf

Es sollte machbar sein, das Modul entsprechend zu erweitern. Würdest du zum Testen zur Verfügung stehen?

Zu deinem Unifi-Thema: Hast du im Projektor den Eco-Mode ausgeschaltet?

VG,
Alex

Pino72

Habe den ECO Mode aus, ebenso den Off Timer. Leider ging auch bei mir der Beamer nicht gleich an wenn ich den set Power Lamp on Befehl gesendet habe, erst als der Status auf opened ging über einen anderen Befehl ging der Beamer an.

Ja genau alle "neuen" rot markierten Einträge sind dazu gekommen.

Leider kann ich auch erst Befehle senden wenn er auf opened steht, was er aber nach sehr kurzer Zeit wieder auf Disconnected stellt.

D.h. ich müsste um den Beamer aufzuwecken erst get Standbyreadings setzen dann geht er auf opened und dann kann ich ihn einschalten etc?

Seltsamerweise taucht der Beamer bei mir immer noch ohne IP Adresse im Unifi Netzwerk auf obwohl er ja definitiv ne Adresse hat und die auch angesprochen werden kann...aber das ist wohl eher dann ein Thema mit dem NEtzwerk wie es scheint.




Pino72

So, über Nacht hat er den "open" STatus behalten.....seltsam aber damit sollte er dann ja sofort alle Befehle für Lamp on annehmen oder?

Readings
ConnectionState

DISCONNECTED

2021-01-04 21:37:28
Function_DHCP-ClientSetting

On

2021-01-04 21:36:43
Function_DefaultGateway

192.168.178.2

2021-01-04 21:36:43
Function_EcoMode

Off

2021-01-04 21:20:42
Function_IP-Address

192.168.178.133

2021-01-04 21:36:43
Function_MAC-Address

E0-DA-DC-07-22-EA

2021-01-04 21:36:43
Function_Port

20554

2021-01-04 21:36:43
Function_SubnetMask

255.255.255.0

2021-01-04 21:36:43
Information_Model

ILAFPJ_--_B2A3

2021-01-04 21:36:43
Input

HDMI-1

2021-01-04 21:22:46
PictureAdjust_LampPower

High

2021-01-04 21:21:58
Power

Standby

2021-01-04 21:36:43
state

opened

2021-01-04 21:36:13

All-Ex

Hi Pino,

kannst du mal das verbose-Attribut auf 5 setzen und das Log des Device posten? Aus den Einträgen oben werde ich nicht schlau.

VG,
Alex

All-Ex

So, hier gibt es eine neue Version  :D

Jetzt werden auch die neuen HDR-Funktionen des "Theater Optimizer" Firmware-Upgrades für DLA-N5/N7 & DLA-NX9 unterstützt. Neu hinzugekommen sind diese Befehle:

  • InputSignal_HDR10 AutoSelect|HDR10|User1|User2|User3|User4|User5|User6|FrameAdaptHDR|PanaPQ|LastSetting
  • InputSignal_HLG AutoSelect|HLG|User1|User2|User3|User4|User5|User6|LastSetting
  • InputSignal_AspectSwitch Zoom|Auto|Native
  • PictureAdjust_ContentType Auto|SDR|HDR10|HLG
  • PictureAdjust_HDRProcessing Static|Frame_by_Frame|Scene_by_Scene
  • PictureAdjust_HDRLevel Auto|-2|-1|0|1|2
  • PictureAdjust_TheaterOptimizer On|Off
  • PictureAdjust_TheaterOptimizerLevel Reserved|Low|Mid|High
  • PictureAdjust_TheaterOptimizerProcessing -|Processing_Start
Außerdem habe ich die neuen Picture-Modes Frame_Adapt_HDR und PanaPQ sowie die Color-Profiles BT2020_Wide, BT2020_Normal und Auto ergänzt.

Bitte teste mal, ob das so funktioniert.

VG,
Alex

Bartimaus

Zitat von: Pino72 am 04 Januar 2021, 21:38:06
Leider ging auch bei mir der Beamer nicht gleich an wenn ich den set Power Lamp on Befehl gesendet habe, erst als der Status auf opened ging über einen anderen Befehl ging der Beamer an.



Genau das Problem habe ich von Zeit zu Zeit auch....
LG
B.


FHEM@Intel-J4105@Debian-LXC, CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

All-Ex

Im Nachbarforum haben wir über das Problem geschrieben:
https://www.heimkinoverein.de/forum/thread/18246-jvc-projektoren-hausautomation-integration-fhem/?postID=161017#post161017

Dort wurde vermutet, dass es ein Firmwareproblem ist.

Mein JVC hängt an einer schaltbaren Steckdose und ich schalte ihn immer per Infrarot (Harmony Hub) ein. Hier ist das Problem noch nie aufgetreten.

Bitte beschreibt doch mal detailliert, was genau ihr macht, damit es nicht mehr geht und wie ihr es dann zum Laufen bekommt. Ich hab's nämlich noch nicht verstanden.

Alex

Bartimaus

#30
Was ich mache (incl. Logs) habe ich ein paar Zeilen vorher bereits geschrieben......

Mein Beamer hängt dauerhaft am Netz, ohne Funksteckdose. Das wäre mir zu riskant das da irgendwas die Funksteckdose ausschaltet und der Beamer im laufenden Betrieb den Saft abgedreht bekommt. Da wäre die Lampe not amused... wenn plötzlich die Kühlung fehlt.

Lass Deinen Beamer mal dauerhaft am Strom und beobachte....
Soviel zieht der nicht im Standby
LG
B.


FHEM@Intel-J4105@Debian-LXC, CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

Pino72

#31
Hi,

Danke für das update mit den neuen Settings, habe ich hochgeladen.

Also hier mal das Log level 5 wenn der N5 auf "Disconnected" steht und ich ihm zb aufwecken muss mit dem Befehl "get Function_DHCP_Client Setting". Erst dann geht er auf "opened" nur um dann nach kurzer Zeit wieder auf disconnected zu gehen. Normales Verhalten?

2021.01.19 13:56:48 5: JVC_DILA (N5) get ?
2021.01.19 13:58:15 5: JVC_DILA (N5) get Function_DHCP-ClientSetting
2021.01.19 13:58:15 5: JVC_DILA (N5) Get() - enqueuing message: ? LSDS - call Worker()
2021.01.19 13:58:15 5: JVC_DILA (N5) Enqueue() - Enqueued message: ?, LSDS, , Function_DHCP-ClientSetting, . Items in queue: 1
2021.01.19 13:58:15 3: JVC_DILA (N5) get Function_DHCP-ClientSetting => enqueueing for execution
2021.01.19 13:58:15 5: JVC_DILA (N5) Connect() - connecting to 192.168.178.133:20554
2021.01.19 13:58:15 5: JVC_DILA (N5) ConnectionState() - ConnectionState: CONNECTING
2021.01.19 13:58:15 3: Opening N5 device 192.168.178.133:20554
2021.01.19 13:58:15 5: HttpUtils url=http://192.168.178.133:20554/
2021.01.19 13:58:15 4: IP: 192.168.178.133 -> 192.168.178.133
2021.01.19 13:58:15 5: JVC_DILA (N5) Connected() - connected to 192.168.178.133:20554
2021.01.19 13:58:15 5: JVC_DILA (N5) ConnectionState() - ConnectionState: CONNECTED
2021.01.19 13:58:15 4: N5 device opened
2021.01.19 13:58:15 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/70_JVC_DILA.pm line 720.
2021.01.19 13:58:15 5: JVC_DILA (N5) Read() - message received from projector: PJ_OK 504A5F4F4B (lastdbcommand:   )
2021.01.19 13:58:15 5: SW: PJREQ
2021.01.19 13:58:15 5: JVC_DILA (N5) Read() - projector is OK: PJ_OK - send message to projector: PJREQ
2021.01.19 13:58:15 5: JVC_DILA (N5) ConnectionState() - ConnectionState: HANDSHAKE
2021.01.19 13:58:15 5: JVC_DILA (N5) Read() - message received from projector: PJACK 504A41434B (lastdbcommand:   )
2021.01.19 13:58:15 5: JVC_DILA (N5) Read() - projector acknowedged message: PJACK
2021.01.19 13:58:15 4: JVC_DILA (N5) ConnectionState() - ConnectionState: READY
2021.01.19 13:58:15 5: JVC_DILA (N5) Worker() - dequeued message: ? LSDS
2021.01.19 13:58:15 4: JVC_DILA (N5) Worker() - send request: ? LSDS - message: 3F89014C5344530A
2021.01.19 13:58:15 4: JVC_DILA (N5) ConnectionState() - ConnectionState: WAITING
2021.01.19 13:58:15 5: SW: ?�LSDS

2021.01.19 13:58:15 5: JVC_DILA (N5) Read() - message received from projector: �LS
0689014C530A (lastdbcommand: ? LSDS )
2021.01.19 13:58:15 4: JVC_DILA (N5) Read() - received acknowledge for request: ? LSDS - message: 0689014C530A
2021.01.19 13:58:15 5: JVC_DILA (N5) Read() - message received from projector: @�LS1
4089014C53310A (lastdbcommand: ? LSDS )
2021.01.19 13:58:15 4: JVC_DILA (N5) Read() - received response for request: ? LSDS - payload: 1 - message: 4089014C53310A
2021.01.19 13:58:15 1: PERL WARNING: Use of uninitialized value $numericisdecimal in concatenation (.) or string at ./FHEM/70_JVC_DILA.pm line 653.
2021.01.19 13:58:15 5: JVC_DILA (N5) JVC_DILA_UpdateReading(HASH(0x4189288), LSDS, 1, ) called
2021.01.19 13:58:15 5: JVC_DILA (N5) JVC_DILA_UpdateReading() - identified reading: Function_DHCP-ClientSetting
2021.01.19 13:58:15 5: JVC_DILA (N5) JVC_DILA_UpdateReading() - reading: Function_DHCP-ClientSetting - data: On
2021.01.19 13:58:15 4: JVC_DILA (N5) UpdateReading() - updated reading: Function_DHCP-ClientSetting with value: On
2021.01.19 13:58:15 3: JVC_DILA (N5) get Function_DHCP-ClientSetting => successful execution, updated reading
2021.01.19 13:58:15 4: JVC_DILA (N5) ConnectionState() - ConnectionState: READY


Da der N5 ja im Standby ist gehen natürlich viele Befehle nicht....werde dann mal gleich noch testen wenn ein Film läuft ob ich die Infos rausbekomme wie vertical resolution und horizontal resolution um damit meine Maskierung zu schalten.

Werde aus dem Statusangaben noicht ganz schlau....siehe Screenshot:



Lg

All-Ex

Hi Pino,

der Befehl get Function_DHCP-ClientSetting wird laut deinem Log ganz normal verarbeitet. Wo ist da der Fehler?

Schau mal in die Doku:
ZitatZusätzlich gibt es das Reading ConnectionState. Es kann folgende Zustände annehmen (vgl. Attribut connection_state_event):
READY - Der Projektor kann neue Befehle annehmen. Sollte sich ein Befehl in der Warteschlange befinden, wird er an den Projektor gesendet und aus der Warteschlange entfernt. Das Reading wechselt auf WAITING.
WAITING - Der Projektor ist mit der Abarbeitung eines Befehls beschäftigt. Neue Befehle kommen an das Ende der Befehls-Warteschlange. Erst nach der Quittierung des Befehls oder einem Timeout (vgl. Attribut timeout_command) wechselt das Reading auf READY.
DISCONNECTED - Das Modul hat die Verbindung zum Projektor wegen Inaktivität geschlossen (vgl. Attribut timeout_connection). Wenn nun ein set oder get-Befehl ausgeführt wird, kommt der Befehl in die Warteschlange, die Verbindung wird aufgebaut und das Reading wechselt auf READY.

Mit diesem Attribut kannst du darauf auch etwas triggern:
Zitatconnection_state_event - 0: Es werden keine Events erzeugt, wenn sich das Reading ConnectionState ändert, 1: Es werden Events erzeugt (Standardwert: 0)

state wird in FHEM gesetzt vom internen Modul DevIo. Eigentlich ist das so gedacht, dass die Gegenstelle (der JVC) die Verbindung nicht selbstständig abbaut. Aber genau das macht der JVC leider. Deshalb stimmt nicht, was "state" anzeigt. Relevant ist, was im Reading ConnectionState steht. Wenn es hier Entwickler gibt, die das eleganter lösen können, bitte melden :-)
Das JVC-Modul baut die Verbindung zum JVC nach einiger Zeit selber ab. So kommt das Modul dem JVC zuvor und es wird verhindert, dass der JVC die Verbindung unkontrolliert spontan abbaut. Den Zeitraum kannst du mit diesem Attribut einstellen:

Zitattimeout_connection - Zeit in Sekunden nach der die Verbindung zum Projektor geschlossen wird (Standardwert: 45 Sekunden). Eine dauerhafte Verbindung wird vom Projektor nicht unterstützt.

Dann gibt es noch
Zitattimeout_command - Zeit in Sekunden bis zu der nach einem Befehl auf eine Quittierung des Projektors gewartet wird (Standardwert: 30 Sekunden). Einige Befehle werden erst nach etlichen Sekunden vom Projektor quittiert. Bei neueren Projektoren sind 15 Sekunden ausreichend.

So lange wird auf die Quittierung eines Befehls durch den Projektor gewartet, bevor ein neuer Befehl aus der Queue gesendet wird.

Zusammengefasst:

  • Es ist normal, dass das Modul die Verbindung zum JVC nach 45 Sek. (Standardwert) nach der letzten Antwort des JVC trennt. Beim nächsten Befehl wird die Verbindung dann wieder aufgebaut.
  • Ob eine Verbindung besteht, steht in ConnectionState und nicht in state.

All-Ex

Hi Bartimaus,

Zitat von: Bartimaus am 17 Januar 2021, 14:14:17
Was ich mache (incl. Logs) habe ich ein paar Zeilen vorher bereits geschrieben......

Das Log vom 2020.11.16 ist sehr verwirrend. Da hast du mehrere Befehle in der Queue, die noch nicht abgearbeitet sind und führst immer neue Befehle aus.
Innerhalb von nur 90 Sekunden schaltest du den Projektor 2 mal ein, 3 mal aus und fragst 5 mal nach seiner IP-Adresse:

2020.11.16 21:24:43.066 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ? LSIP
2020.11.16 21:24:43.230 3: JVC_DILA (JVC_X5000) get Function_IP-Address => successful execution, updated reading
2020.11.16 21:24:43.231 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ? LSIP
2020.11.16 21:24:43.395 3: JVC_DILA (JVC_X5000) get Function_IP-Address => successful execution, updated reading
2020.11.16 21:24:43.397 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ! PW 1
2020.11.16 21:25:13.418 3: JVC_DILA (JVC_X5000) set Power Lamp_On => Timeout error, no response after 30 second(s). Projector in standby or command not supported.
2020.11.16 21:25:13.419 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ! PW 1
2020.11.16 21:25:43.424 3: JVC_DILA (JVC_X5000) set Power Lamp_On => Timeout error, no response after 30 second(s). Projector in standby or command not supported.
2020.11.16 21:25:43.424 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ? LSIP
2020.11.16 21:25:43.568 3: JVC_DILA (JVC_X5000) get Function_IP-Address => successful execution, updated reading
2020.11.16 21:25:43.571 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ? LSIP
2020.11.16 21:25:43.703 3: JVC_DILA (JVC_X5000) get Function_IP-Address => successful execution, updated reading
2020.11.16 21:25:43.705 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ? LSIP
2020.11.16 21:25:43.840 3: JVC_DILA (JVC_X5000) get Function_IP-Address => successful execution, updated reading
2020.11.16 21:25:43.842 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ! PW 0
2020.11.16 21:25:43.851 3: JVC_DILA (JVC_X5000) set Power Standby => successful execution
2020.11.16 21:25:43.879 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ! PW 0
2020.11.16 21:26:13.886 3: JVC_DILA (JVC_X5000) set Power Standby => Timeout error, no response after 30 second(s). Projector in standby or command not supported.
2020.11.16 21:26:13.888 5: JVC_DILA (JVC_X5000) Worker() - dequeued message: ! PW 0
2020.11.16 21:26:43.950 3: JVC_DILA (JVC_X5000) set Power Standby => Timeout error, no response after 30 second(s). Projector in standby or command not supported.


Die ersten beiden set Power Lamp_On Befehle sind fehlgeschlagen, höchstwahrscheinlich war der Projektor da schon an. Du kannst ihn nicht noch mal einschalten. Es dauert jeweils 30 Sek. bis das Modul das mitbekommt:
Zitattimeout_command - Zeit in Sekunden bis zu der nach einem Befehl auf eine Quittierung des Projektors gewartet wird (Standardwert: 30 Sekunden). Einige Befehle werden erst nach etlichen Sekunden vom Projektor quittiert. Bei neueren Projektoren sind 15 Sekunden ausreichend.

Der 1. von den 3 set Power Standby Befehlen war erfolgreich, der Projektor wurde ausgeschaltet. Die beiden folgenden Power Standby Befehle funktionieren dann natürlich nicht (er fährt ja schon runter).
Alle IP-Address Befehle waren erfolgreich.

Ich kann hier keinen Fehler erkennen.

Am besten ist es, mit set DeleteCommandQueue erstmal alle Befehle aus der Warteschlange zu löschen. Dann 30 Sek. abwarten, bis der aktuelle Befehl fertig ist oder in den Timeout geht.

Erst dann macht es Sinn, nur einen (und nicht mehrere) neuen Befehl zu senden und zu schauen, was im Log steht. Stelle dazu erstmal Verbose 3 ein. Erst wenn der Befehl fertig ist (oder in den Timeout läuft), den nächsten Befehl senden. Sonst überschneidet sich alles und es wird verwirrend.

Wenn dir dann im Log etwas komisch vorkommt, stelle bitte verbose auf 5, reproduziere das Verhalten und poste hier das Log.

Viele Grüße,
Alex

Pino72

Zitat von: All-Ex am 19 Januar 2021, 21:36:03
Hi Pino,

der Befehl get Function_DHCP-ClientSetting wird laut deinem Log ganz normal verarbeitet. Wo ist da der Fehler?

Schau mal in die Doku:
Mit diesem Attribut kannst du darauf auch etwas triggern:
state wird in FHEM gesetzt vom internen Modul DevIo. Eigentlich ist das so gedacht, dass die Gegenstelle (der JVC) die Verbindung nicht selbstständig abbaut. Aber genau das macht der JVC leider. Deshalb stimmt nicht, was "state" anzeigt. Relevant ist, was im Reading ConnectionState steht. Wenn es hier Entwickler gibt, die das eleganter lösen können, bitte melden :-)
Das JVC-Modul baut die Verbindung zum JVC nach einiger Zeit selber ab. So kommt das Modul dem JVC zuvor und es wird verhindert, dass der JVC die Verbindung unkontrolliert spontan abbaut. Den Zeitraum kannst du mit diesem Attribut einstellen:

Dann gibt es noch
So lange wird auf die Quittierung eines Befehls durch den Projektor gewartet, bevor ein neuer Befehl aus der Queue gesendet wird.

Zusammengefasst:

  • Es ist normal, dass das Modul die Verbindung zum JVC nach 45 Sek. (Standardwert) nach der letzten Antwort des JVC trennt. Beim nächsten Befehl wird die Verbindung dann wieder aufgebaut.
  • Ob eine Verbindung besteht, steht in ConnectionState und nicht in state.

Danke,

hab jetzt mal alles im laufenden Beamerbetrieb getestet. Soweit bekomme ich alle readings wenn ich jeweils auf die einzelnen Get Befehle gehe. Was ja leider nicht geht (habe dann doch mal in die Hilfe geschaut :-)) ist eine autmoatische Abfrage aller Readings im Intervall von zb. 30 Sekunden, schade.

Habe jetzt mal wie angegeben das Attribut connection_state_event auf 1 gesetzt aber da geht es ja nur um die Verbindung nicht um die Readings. Hilft somit ja nicht wirklich.

Ehrlich gesagt wollte ich ja meine Maskierung der Leinwand damit automatisieren was aber scheinbar nicht geht weil die Readings vom Beamer egal welche Dimension das 4K Video hat (also 16:9 oder 21:9 etc) er immer bei vertical resolution (korrekterweise) 2160 angibt. Oder habe ich da was übersehen? 21:9 wäre dann ja 1600 aber das wird er nie anzeigen.

Dh. bei Kodi ist es leicht, da kann ich die Videoresolution vertical ganz einfach auslesen (zb FHEM oder iobroker etc) und entsprechend die Maskierung triggern aber blöderweise wird das bei Disney+ und Netflix etc nicht geben. Ich glaube diese Lösung kann es nicht geben die ich suche, richtig? Oder hat das jemand anders gelöst?

Lg

All-Ex

Zitat von: Pino72 am 20 Januar 2021, 15:57:18
Was ja leider nicht geht (habe dann doch mal in die Hilfe geschaut :-)) ist eine autmoatische Abfrage aller Readings im Intervall von zb. 30 Sekunden, schade.

Das kannst du schon machen, z.B. über ein regelmäßiges DOIF oder notify. Aber schaue, dass du die Befehlsqueue nicht überflutest...

Zitat von: Pino72 am 20 Januar 2021, 15:57:18Ehrlich gesagt wollte ich ja meine Maskierung der Leinwand damit automatisieren was aber scheinbar nicht geht weil die Readings vom Beamer egal welche Dimension das 4K Video hat (also 16:9 oder 21:9 etc) er immer bei vertical resolution (korrekterweise) 2160 angibt. Oder habe ich da was übersehen? 21:9 wäre dann ja 1600 aber das wird er nie anzeigen.

Dh. bei Kodi ist es leicht, da kann ich die Videoresolution vertical ganz einfach auslesen (zb FHEM oder iobroker etc) und entsprechend die Maskierung triggern aber blöderweise wird das bei Disney+ und Netflix etc nicht geben. Ich glaube diese Lösung kann es nicht geben die ich suche, richtig? Oder hat das jemand anders gelöst?

Das wird wohl nicht klappen. Wenn die Videoquelle schwarze Balken sendet (was bei Netflix & Co wohl der Fall ist), kann weder der Projektor noch FHEM das erkennen. Kodi zeigt auch nur die Auflösung der Quelle an, d.h. wenn da schwarze Balken eincodiert sind, geht's auch nicht (dafür gibt es aber dies: https://www.heimkinoverein.de/forum/thread/17504-aspect-ratio-detector-seitenverh%C3%A4ltnis-erkennen/).

All-Ex

Hi!

Zitat von: Bartimaus am 17 Januar 2021, 14:14:17
Lass Deinen Beamer mal dauerhaft am Strom und beobachte....
Soviel zieht der nicht im Standby

Habe meinen X7900 jetzt mal 3 Tage am Strom gelassen und nicht angerührt. Heute Abend hat das Modul ihn problemlos eingeschaltet. So sieht das dann aus:


2021.01.23 21:08:27 3: JVC_DILA (med.kg.ki.jvc) set Power Lamp_On => enqueueing for execution
2021.01.23 21:08:27 5: JVC_DILA (med.kg.ki.jvc) Set() - enqueuing message: ! PW 1 - call Worker()
2021.01.23 21:08:27 5: JVC_DILA (med.kg.ki.jvc) Enqueue() - Enqueued message: !, PW, 1, Power, Lamp_On. Items in queue: 1
2021.01.23 21:08:27 5: JVC_DILA (med.kg.ki.jvc) Connect() - connecting to 192.168.178.27:20554
2021.01.23 21:08:27 5: JVC_DILA (med.kg.ki.jvc) ConnectionState() - ConnectionState: CONNECTING
2021.01.23 21:08:27 3: Opening med.kg.ki.jvc device 192.168.178.27:20554
2021.01.23 21:08:27 5: HttpUtils url=http://192.168.178.27:20554/
2021.01.23 21:08:27 4: IP: 192.168.178.27 -> 192.168.178.27
2021.01.23 21:08:27 5: JVC_DILA (med.kg.ki.jvc) Connected() - connected to 192.168.178.27:20554
2021.01.23 21:08:27 5: JVC_DILA (med.kg.ki.jvc) ConnectionState() - ConnectionState: CONNECTED
2021.01.23 21:08:27 4: med.kg.ki.jvc device opened
2021.01.23 21:08:27 5: JVC_DILA (med.kg.ki.jvc) Read() - message received from projector: PJ_OK 504A5F4F4B (lastdbcommand: ? LSPT )
2021.01.23 21:08:27 5: SW: PJREQ
2021.01.23 21:08:27 5: JVC_DILA (med.kg.ki.jvc) Read() - projector is OK: PJ_OK - send message to projector: PJREQ
2021.01.23 21:08:27 5: JVC_DILA (med.kg.ki.jvc) ConnectionState() - ConnectionState: HANDSHAKE
2021.01.23 21:08:27 5: JVC_DILA (med.kg.ki.jvc) Read() - message received from projector: PJACK 504A41434B (lastdbcommand: ? LSPT )
2021.01.23 21:08:27 5: JVC_DILA (med.kg.ki.jvc) Read() - projector acknowedged message: PJACK
2021.01.23 21:08:27 4: JVC_DILA (med.kg.ki.jvc) ConnectionState() - ConnectionState: READY
2021.01.23 21:08:27 5: JVC_DILA (med.kg.ki.jvc) Worker() - dequeued message: ! PW 1
2021.01.23 21:08:27 5: JVC_DILA (med.kg.ki.jvc) EncodeData() - dbcommand: PW data: 1 => return: 1
2021.01.23 21:08:27 4: JVC_DILA (med.kg.ki.jvc) Worker() - send command: ! PW 1 - payload: 1 - message: 2189015057310A
2021.01.23 21:08:27 4: JVC_DILA (med.kg.ki.jvc) ConnectionState() - ConnectionState: WAITING
2021.01.23 21:08:27 5: SW: !�PW1

2021.01.23 21:08:27 5: JVC_DILA (med.kg.ki.jvc) Read() - message received from projector: �PW
06890150570A (lastdbcommand: ! PW 1)
2021.01.23 21:08:27 4: JVC_DILA (med.kg.ki.jvc) Read() - received acknowledge for command: ! PW 1 - message: 06890150570A
2021.01.23 21:08:27 3: JVC_DILA (med.kg.ki.jvc) set Power Lamp_On => successful execution
2021.01.23 21:08:27 5: JVC_DILA (med.kg.ki.jvc) JVC_DILA_UpdateReading(HASH(0x557daa51a0e0), PW, 1, 1) called
2021.01.23 21:08:27 5: JVC_DILA (med.kg.ki.jvc) JVC_DILA_UpdateReading() - identified reading: Power
2021.01.23 21:08:27 5: JVC_DILA (med.kg.ki.jvc) JVC_DILA_UpdateReading() - reading: Power - data: Lamp_On
2021.01.23 21:08:27 4: JVC_DILA (med.kg.ki.jvc) UpdateReading() - updated reading: Power with value: Lamp_On
2021.01.23 21:08:27 4: JVC_DILA (med.kg.ki.jvc) ConnectionState() - ConnectionState: READY
2021.01.23 21:09:12 5: JVC_DILA (med.kg.ki.jvc) Timeout() - closing connection after 45 second(s) of inactivity.
2021.01.23 21:09:12 4: JVC_DILA (med.kg.ki.jvc) ConnectionState() - ConnectionState: DISCONNECTED


Wenn der Fehler bei dir nochmal auftritt, poste hier bitte das Log, so wie ich's hier beschrieben habe:
https://forum.fhem.de/index.php/topic,108314.msg1123491.html#msg1123491

VG,
Alex

JF79

Hallo zusammen,

erstmal vielen Dank für das Programmieren des JVC Moduls! Ich konnte mithilfe des Moduls meinen N5 Projektor super in mein Smart Home einbinden.

Ich habe noch eine Frage zu dem Modul: Gibt es die Möglichkeit den aktuell ausgewählten Lens Memory Mode auszulesen ohne den Lens Memory Mode zu wechseln? Ich habe nur diese Möglichkeit (Wechsel des Lens Memory Mode) gefunden um das Reading "Installation_LensMemory" zu aktualisieren.

Viele Grüße
Josh

All-Ex

Hallo Josh,

es gibt leider keine Möglichkeit auszulesen, welches LensMemory im Projektor gerade aktiv ist. Dafür hat JVC keinen Befehl implementiert.

Wenn du ausschließlich FHEM zum Anfahren der hinterlegten Lens Memories verwendest, ist das Reading immer richtig. Wenn du aber zwischendurch die Fernbedienung dafür nimmst, wird sich das Reading nicht ändern können.

Viele Grüße,
Alex

suchmich1983

#39
Hi,

nutzt du eine bestimmte Schnittstelle zum Steuern der JVC Beamer? Geht das alles über http?
Ich versuche mich an soetwas gerade für meinen SONY Beamer (VPL HW65). Da gibt es (scheinbar) noch gar nichts fertiges in FHEM.

Ich nutze dazu die ADCP Schnittstelle.
Funktionieren tut bereits:


  • Power On
    Power Off
    PowerState
    Input umschalten (HDMI1, HDMI2, etc.)
    Bildmodi umschalten (Kino, User, Reference etc.)
    LuftFilter Status
    Modell Nummer auslesen

Ich versuche das auch gerade in FHEM entsprechend in Readings eines Dummy Devices zu packen.

Wie gesagt stehe ich da aber noch am Anfang. Bei der Suche war mir dieses Modul hier aufgefallen!
Schön ist, dass sie die neueren SONY Beamer Modelle da alle gleichen und man dies auf andere Modelle mit Netzwerkanschluss sehr gut übernehmen könnte!

VG


All-Ex


suchmich1983

Danke, sieht ähnlich zu SONY aus... wieso da wieder jeder sein eigenes Süppchen kochen muss  ::)

All-Ex

Im Eingangspost habe ich die neue Version 6 angehängt.

Änderungen:

  • Es lassen sich jetzt auch beliebige Remote-Codes über das Modul an den Projektor senden. Das sind die Codes, die auch per Fernbedienung gesendet werden können. Damit kann z.B. das Bild per Hide schwarz geschaltet werden:
    set <name> RemoteCode D0 für Bild schwarz
    set <name> RemoteCode D1 für Bild aktivieren
  • Neu hinzugekommen ist dieser Befehl:
    RemoteCode <ASCII> Sendet eine Funktion der Infrarot-Fernbedienung über das Netzwerk an den Projektor, z.B. 2E um das Drücken der Menu-Taste auf der Fernbedienung zu senden (vgl. Remote Control Guide https://support.jvc.com/consumer/support/documents/DILAremoteControlGuide.pdf, Spalte ASCII). Da durch diesen Befehl keine Readings verändert werden, sollte statt dessen wenn immer möglich der passende set-Befehl gesendet werden.
  • Dokumentation aktualisiert

Bartimaus

Nabend,

danke dafür. Die neue Version funktioniert bei mir ganz gut. Damit kann ich jetzt schneller via Handy-Widget meine gespeicherten Bildprofile wechseln.

Du benutzt einen X7900 ? Ich nutze einen X5000. Komischerweise wird der bei mir im Router(Ubiquiti) nicht korrekt angezeigt, obwohl er per DHCP eine IP-Adresse vom Router bezieht.  Ich kann ihn zwar anpingen, aber der Router meint, der Beamer wäre nicht verbunden. Der vorherige Router(Fritz) zeigte den JVC auch falsch an. Hast Du dies bei Deinem Beamer auch ?  Im Inet fand ich diverse Artikel über instabile LAN-Verbindungen zum JVC....
LG
B.


FHEM@Intel-J4105@Debian-LXC, CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

All-Ex

Ja, ich habe den X7900, den ich mit einer statischen IP konfiguriert habe. Er taucht in meiner Fritz-Box auf, sobald ich einmal auf ihn zugegriffen habe. Probleme mit der LAN-Verbindung hatte ich noch nie.

Bartimaus

#45
Danke,

bei mir ist es egal ob ich die IP im Gerät statisch vergebe, oder ob ich die IP vom DHCP-Server automatisch vergebe.

Die IP wird nicht angezeigt. Mein Raspi pingt den alle 30min an, damit er zumindest im Controller sichtbar bleibt. Ich denke da rühren auch teilweise nicht ausgeführte Befehle via FHEM her...

LG
B.


FHEM@Intel-J4105@Debian-LXC, CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

Bartimaus

Moin,

wird dieses Modul noch "gewartet" ?

Wenn ja, wie kann ich per FHEM das Gamma von "Gamma D" (liegt automatisch bei HDR-Flag an) auf "Gamma Custom" umstellen ?

LG
LG
B.


FHEM@Intel-J4105@Debian-LXC, CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

All-Ex

#47
Hi,

das sollte per RemoteCode funktionieren:

set <name> RemoteCode <ASCII>

RemoteCode <ASCII> Sendet eine Funktion der Infrarot-Fernbedienung über das Netzwerk an den Projektor, z.B. 2E um das Drücken der Menu-Taste auf der Fernbedienung zu senden (vgl. Remote Control Guide, Spalte ASCII). Da durch diesen Befehl keine Readings verändert werden, sollte statt dessen wenn immer möglich der passende set-Befehl gesendet werden.

Schau mal auf Seite 9 der verlinkten Datei, da stehen die ASCII-Codes:
Gamma - Custom 1: 3C
Gamma - Custom 2: 3D
Gamma - Custom 3: 3E

Einen dedizierten set-Befehl dafür gibt es nicht.

Bartimaus

Moin,

danke, aber wenn ich das richtig verstehe muss dazu FHEM mittels eines separaten IR-Senders (den ich nicht habe) darüber einen IR-Code senden.
LG
B.


FHEM@Intel-J4105@Debian-LXC, CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

All-Ex

Nein, das Modul sendet den ,,IR"-Befehl über das Netzwerk. Eigentlich ist es ein ganz normales Kommando (wie die anderen auch), das aber die gleiche Syntax wie die IR-Befehle hat.

Zusätzliche Hardware benötigst du nicht.

Bartimaus

Super, danke.
Werde ich heute Abend mal testen.

FYI:
Ich verwende an meinem Beamer eine "eigene" Gammakurve, da HDR via Gamma-D "suboptimal" aussieht.
Mein StandardPlayer verwendet auch ein Custom-EDID welches das HDR-Flag unterdrückt, so das der Beamer nicht automatisch auf "GammaD" umschaltet.
Nur wenn ich via FireTV-Stick schaue, schaltet der Beamer automatisch das Gamma wieder um. Via OEM-Remote umzuschalten, ist mir zu mühselig, das würde ich gerne via FHEM (wie so manch anderes auch) erledigen.



LG
B.


FHEM@Intel-J4105@Debian-LXC, CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

Bartimaus

Moin,

Test leider nicht erfolgreich, mein JVC reagiert nicht auf die Kommandos via "RemoteCode"  :-[
LG
B.


FHEM@Intel-J4105@Debian-LXC, CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly