Modul für Denon (Marantz) AV Receiver

Begonnen von raman, 03 Oktober 2016, 18:08:58

Vorheriges Thema - Nächstes Thema

thorschtn

Zitat von: raman am 12 Oktober 2016, 12:31:25
@thorschtn
Ich habe mal eine Funktion, sprich set-Befehl favoriteList, eingebaut.
Die baut eine Sequenz aus set-Befehlen für die Remotecontrol-Befehle und den nötigen "sleeps" zusammen.

Super, wäre für mich nicht nötig gewesen, die QuickSelects reichen mir erstmal.

Allerdings die Sequenzen funktionieren bei mir genau so eingeschränkt, wie auch die manuell geschalteten Sequenzen. Mal erfolgt ein umschalten, mal nicht. favoriteList 1..3 funktioniert z.B. grundsätzlich nicht, wenn ich mich auf 1 befinde, von 5 aus aber schon...
NUC - FHEM & HA
MapleCUN, Homematic, 433MHz, AB440, 1-Wire Bewässerung & Pool, Jarolift (Signalduino), Signal Messenger, Denon AVR, LG WebOS, AmazonEcho, Jura S90 (ESP8266), Sonoff, Xiaomi Mii Sauger, Worx SO500i

raman

Anscheinend ist dein Reciever etwas "träge". Mit meinen X4100W klappt das ohne Probleme.
Vielleicht spielen da noch andere Faktoren wie das eigene Netzwerk eine Rolle.

Ich hab für mich zum testen das Attribut sleep eingebaut. Damit lässt sich die Pause
setzen, bevor die down-Befehle gesendet werden. Standard sind 5 Sekunden.
Eventuell funktionierts mit einer längeren Pause (z.B attr <DENON_AVR> sleep 10).

Kann auch sein, dass die Pausen zwischen den down-Befehlen für deinen Reciever zu kurz sind.
Die lassen sich aber nicht einstellen.

Sonst funktioniert es anscheinend leider nicht mit allen Recievern!

bart

moin,

ich habe mal die neue Version mit einem DENON AVR4520 getestet. Sie läuft deutlich besser als die aktuelle. Im Logfile kommt bei mir:
2016.10.15 01:55:52 3: WARNING: unsupported character in reading HASH(0x17c7068) (not A-Za-z/\d_\.-), notify the DENON_AVR module maintainer.
2016.10.15 01:55:52 3: WARNING: unsupported character in reading HASH(0x1db0650) (not A-Za-z/\d_\.-), notify the DENON_AVR module maintainer.
2016.10.15 01:55:52 3: WARNING: unsupported character in reading HASH(0x207fa28) (not A-Za-z/\d_\.-), notify the DENON_AVR module maintainer.
2016.10.15 01:55:52 3: WARNING: unsupported character in reading HASH(0x29c1480) (not A-Za-z/\d_\.-), notify the DENON_AVR module maintainer.
2016.10.15 01:55:52 3: WARNING: unsupported character in reading HASH(0x2eb2500) (not A-Za-z/\d_\.-), notify the DENON_AVR module maintainer.
2016.10.15 01:55:52 3: WARNING: unsupported character in reading HASH(0x394a340) (not A-Za-z/\d_\.-), notify the DENON_AVR module maintainer.


Ich vermute mal, dass der 4520 noch andere Readings hat als die anderen Versionen (Ist jetzt geraten). Ich wäre gerne bereit hier mit zu helfen, dass Modul weiter zu entwickeln (rudimentäre perl Kenntnisse habe ich, Linux nutze ich schon seit den  90ern), bin aber ein fhem Neuling. Vielleicht kann mir jemand einen Tip geben wie man so etwas am besten debugt.
CCU2 für die Heizungsteuerung und Fenster/Türkontakte
FHEM auf Debian-Server (x64) für den Rest
HMCCU: Schnittstelle CCU2 - FHEM

raman

@bart

Kann es sein, dass dein Reciever 4 Zonen untestützt?
Bin bis jetzt davon ausgegangen, dass es max. 3 Zonen gibt?
Das könnte die Fehlermeldungen erklären, da die entsprechenden
Nachrichten vom Reciever nicht richtig "abgefangen" und abgearbeitet werden!

Christian Uhlmann

Hi zusammen,

wollte das Modul heute auch mal testen, leider kommt bei einem reload
70_DENON_AVR.pm
folgendes:

Too many arguments for main::DENON_AVR_Command_SetInput at ./FHEM/70_DENON_AVR.pm line 2050, near "])"
Too many arguments for main::DENON_AVR_Command_SetInput at ./FHEM/70_DENON_AVR.pm line 2125, near "$1)"


Jemand eine Idee was das sein könnte?
Habe vorher das alte Modul gelöscht und dann das aus der ZIP Datei aus dem ersten Post genommen.
Ein
reload 71_DENON_AVR_ZONE.pm
hat einwandfrei funktioniert.
Ein
help DENON_AVR
gibt auch etwas aus, daher könnte es ggf. nicht relevant sein.


LG Christian
Host: Debian Buster als VM / XCP-NG
Gateways: DuoFern Stick, CUL433 Revolt, CUL MAX, HMLan, HM-USB 2, LaCrosseGateway
Devices: 12x Rademacher Rollos, 6x TX 29 DT-HT, 10x HM-CC-RT-DN, 14x MAX Fensterkontakte, Diverse HM Aktoren für Licht, Klingel, Gong, Eingangstür, ESPEasy, Sonoff mit Tasmota

Christian Uhlmann

es klappt :)
mit einem Denon AVR-X3100W
Teste jetzt mal
Host: Debian Buster als VM / XCP-NG
Gateways: DuoFern Stick, CUL433 Revolt, CUL MAX, HMLan, HM-USB 2, LaCrosseGateway
Devices: 12x Rademacher Rollos, 6x TX 29 DT-HT, 10x HM-CC-RT-DN, 14x MAX Fensterkontakte, Diverse HM Aktoren für Licht, Klingel, Gong, Eingangstür, ESPEasy, Sonoff mit Tasmota

raman

Die Funktion DENON_AVR_Command_SetInput gibt es auch im Modul 71_DENON_AVR.pm.
Wenn man einfach einen Reload durchführt, ist das Modul noch geladen.

Wenn man 71_DENON_AVR.pm bereits benutzt, diese umbenennen oder löschen und dann
am besten einen Neustart durchführen.

bart

@raman

Zitat von: raman am 15 Oktober 2016, 17:39:45
Kann es sein, dass dein Reciever 4 Zonen untestützt?

ja, der av4520 unterstütz bis zu 4 Zonen.
CCU2 für die Heizungsteuerung und Fenster/Türkontakte
FHEM auf Debian-Server (x64) für den Rest
HMCCU: Schnittstelle CCU2 - FHEM

raman

Habe ine neue Version mit Untestützung für die 4. Zone im 1. Post angehängt.
Einfach mal testen, ob es geht!

Amenophis86

#39
Habe heute das Modul in meine produktiv Umgebung gewechselt, da die Testphase erfolgreich und sehr gut abgeschlossen hat. Daher die Frage, ob du vorhast es offiziell einzuchecken, oder selbst auf github zur Verfügung zu stellen? Macht das Updaten einfacher :)

Vielen Dank an dieser Stelle nochmal fürs Modul. Ich bin wirklich begeistert.

EDIT:
Zack, gerade nach dem einrichten und ersten Mal erscheinen auf dem richtigen System kommt folgender Fehler:
2016.10.16 18:45:11 1: 192.168.2.24:23 reappeared (Denon_AVR)
2016.10.16 18:45:16 1: PERL WARNING: Use of uninitialized value in numeric eq (==) at ./FHEM/70_DENON_AVR.pm line 1040.

Kein Schlimmer, aber ein Fehler :)
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

Jotoc

Hallo,

ich hatte ja schon geschrieben, dass das Modul funktioniert.
Leider habe ich aber wieder Disconnects. Ich kann den Denon auch nicht wieder neu verbinden. Erst nach einem Neustart von Fhem kann ich den Denon wieder schalten.
Mein Gerät ist ein Denon AVR 2113. Der Denon wird durchgehend mit trom versorgt und ist auch über die Denon App bedienbar.

MFG
Jotoc
 

bart

#41
Zitat von: raman am 16 Oktober 2016, 13:15:33
Habe ine neue Version mit Untestützung für die 4. Zone im 1. Post angehängt.
Einfach mal testen, ob es geht!

Ich habe die neue Version getestet. Bevor ich sie gestartet habe, habe ich die alten Hash Werte aus  log/fhem.save gelöscht. Jetzt ist nur noch ein  Hash übrig:
HASH(0x2f5c0d8)

Außerdem habe ich auf deinen Hinweis auch mal die Zonen installiert (über get zone #). Dabei habe ich einen komischen Effekt festgestellt. Die Befehle werden immer an die richtige Zone gesendet von den Knöpfen. Die Rückmeldungen landen aber immer bei unterschiedlichen Zonen, also z.B. durch das Anschalten der Zone 3 wird kurz danache Zone 2 grün und die Zone 3 geht in der Anzeige auf off. Genauso verhält es sich mit der Anzeige der Lautstärke.

Das Log hatte ich mal auf verbose 5 gesetzt und die Rückmeldung sehen richtig aus:
2016.10.17 00:43:15 5: DENON_AVR AVR4520: read.
2016.10.17 00:43:15 4: DENON_AVR AVR4520 dispatch: this is for zones
2016.10.17 00:43:15 5: AVR4520 dispatch Z3ON
2016.10.17 00:43:15 5: DENON_AVR_ZONE AVR4520: <dq(Z3ON)>


Damit sollte eigentlich Z3 auf an (grün) gehen, es ist aber meistens eine andere Zone. Der Master ist davon nie betroffen.

Nachtrag:

Bein starten bekomme ich die folgenden Meldungen. Vielleicht hat die letzte Fehlermeldung mit dem Hash was zu tun:

2016.10.17 19:07:49 1: PERL WARNING: Use of uninitialized value $info2 in hash element at ./FHEM/70_DENON_AVR.pm line 756.
2016.10.17 19:07:49 1: PERL WARNING: Use of uninitialized value $info2 in hash element at ./FHEM/70_DENON_AVR.pm line 759.
2016.10.17 19:07:49 1: PERL WARNING: Use of uninitialized value $info3 in hash element at ./FHEM/70_DENON_AVR.pm line 759.
2016.10.17 19:07:52 1: PERL WARNING: Use of uninitialized value $status in concatenation (.) or string at ./FHEM/70_DENON_AVR.pm line 1324.
2016.10.17 19:07:52 1: PERL WARNING: Argument "AUTO" isn't numeric in division (/) at ./FHEM/70_DENON_AVR.pm line 1348.
CCU2 für die Heizungsteuerung und Fenster/Türkontakte
FHEM auf Debian-Server (x64) für den Rest
HMCCU: Schnittstelle CCU2 - FHEM

raman

@Amenophis86:
Ich habe schon vor es offiziell einzuchecken, will vorher aber noch die Kinderkrankheiten beseitigen.
Dafür bin ich, wie von dir, auf Rückmeldung aus dem Forum angewiesen.

@Jotoc:
Ich werde die Tage eine überarbeitete Version bereitstellen, die Änderungen im Reconnectverhalten hat.
Mal schauen, ob damit evtl. die Probleme beseitigt werden.
Sonst: Wie ist dein Reciever im Netzwerk angebunden (wlan, lan)? Die App ist die ofizielle Denon-App?
           Welche logs gibt es in FHEM?

@bart:
Die ersten 3 Meldungen sind nicht so schlimm, nur nervig!
Anscheinend gibt es noch ein paar mehr Readings bei dir, die im Modul nicht erfasst sind.
Kannst du mal verbose auf 4 setzen und schauen, ob du die entspredchenden Readings identifizieren kannst.
Müsste dann sowas stehen: parsing <reading> to <unknown> oder es steht evtl ein HASH() dirn.

Den Effekt mit den Zonen kenne ich, das muss ich mir noch mal genau anschauen, um den Fehler zu finden.
Bei mir ist es so, dass die Stati der Zonen aber nach einiger Zeit richtig angezeigt werden.

Jotoc

Hallo Raman,

Denon ist mit Lan angeschlossen. Verwende die offizielle Denon App am Handy.

logs
2016.10.18 07:51:16 1: 192.168.99.4:23 reappeared (Denon)
2016.10.18 07:51:24 2: Denon: first attempt to read timed out, trying to close and open the device.
2016.10.18 07:51:24 3: Opening Denon device 192.168.99.4:23
2016.10.18 07:51:24 3: Can't connect to 192.168.99.4:23: Connection refused
2016.10.18 07:51:24 2: Denon: second attempt to read timed out, this is an unrecoverable error.
2016.10.18 07:52:25 1: 192.168.99.4:23 reappeared (Denon)
2016.10.18 07:52:39 3: Opening Denon device 192.168.99.4:23
2016.10.18 07:52:39 1: in MODIFIED
2016.10.18 07:52:39 3: Can't connect to 192.168.99.4:23:
2016.10.18 07:53:39 1: 192.168.99.4:23 reappeared (Denon

MFG
Jotoc

Amenophis86

Gerade gefunden:

2016.10.17 19:27:23 1: 192.168.2.24:23 reappeared (Denon_AVR)
2016.10.17 19:27:29 1: PERL WARNING: Use of uninitialized value in numeric eq (==) at ./FHEM/70_DENON_AVR.pm line 1040.
2016.10.17 19:27:40 1: PERL WARNING: Use of uninitialized value $info2 in hash element at ./FHEM/70_DENON_AVR.pm line 741.
2016.10.17 19:27:40 1: PERL WARNING: Use of uninitialized value $info2 in hash element at ./FHEM/70_DENON_AVR.pm line 744.
2016.10.17 19:27:40 1: PERL WARNING: Use of uninitialized value $info3 in hash element at ./FHEM/70_DENON_AVR.pm line 744.
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...