Modul für Denon (Marantz) AV Receiver

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

Vorheriges Thema - Nächstes Thema

justme1968

#450
zur dokumentation noch mal das verhalten meines x4500h:

- die firmware ist aktuell
- ich kann die goform/Deviceinfo.xml seite nicht aufrufen, es kommt eine Access Forbidden meldung
- ich kann die drei settings/index.html, settings/upgrade.html und settings/about.html seiten abrufen
- die drei settings seiten scheint es nur zu geben wenn es die goform/Deviceinfo.xml nicht gibt
- wenn ich per http direkt auf die ip gehe werde ich auf eine https seite auf port 10443 weitergeleitet
- da der receiver scheinbar ein selbst signiertes zertifikat verwendet muss ich dies im browser ein mal erlauben
- danach kann ich über diese seiten alles mögliche steuern und einstellen

- die drei settings seiten und die https seiten werden alle per ajax und javascript gefüllt.
  d.h. ein wget direkt auf diese seiten alleine reicht nicht.
- die js quelltexte sind recht übersichtlich und gut strukturiert
- alle werte werden durch am anfang deklarierte konstanten referenziert. die könnte man
  bei bedarf auch automatisch auslesen ohne das es einen js interpreter braucht.
- der quelltext für die settings seiten hat ein copyright kommentar von 2011
- der quelltext für die https seiten funktioniert im prinzip ähnlich wie der der settings seiten,
  es ist aber eigener code der etwas moderner ausschaut.
- nur bei den settings seiten wird das model angezeigt und man kann über
  http://<ip>/ajax/get_config?type=25 das modell abfragen. andere abfragen siehe oben
- bei den https seiten schaut die url etwas anders aus (https://<ip>/ajax/globals/get_config)
- es gibt aber auf den seiten scheinbar keine stelle auf der das modell angezeigt
  wird und deshalb wie es ausschaut auch keine abfrage dafür.
- es gibt zwar eine model type abfrage (https://<ip>/ajax/globals/get_config/get_config?type=5)
  das scheint aber nur die hardware revision zu sein. beim mir kommt hier 1 zurück.

- das setzen von werten passiert ebenfalls über ajax. zum teil per get, zum teil per post.
- die ajax endpoints zum setzen von werten sind jeweils .../set_config
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Shadow3561

#451
Habe etwas neues.

Das Telnet Command SYMO gibt folgenden Wert aus

Connecting to 192.168.1.65 port 23, please wait...
SYMO->
SYMOAVR-X4500HEUR

Ebenso funktioniert ein VIALL?

Ausgabe siehe Screenshot
Jetzt muss es nur noch jemand mit einem AVR von vor 2016 probieren.

MfG

tomcat.x

- Mein X4400H liefert über http://<ip>/ajax/get_config?type=25:
<productTypeName>Denon AVR-X4400H</productTypeName>

- SYMO per Telnet funktioniert ebenfalls:
SYMOAVR-X4400HEUR


Nur die IP liefert per http einen Fehler 403, keine Weiterleitung. Per https reagiert er weder auf Port 443 (war oben falsch) noch auf 10443.

Auf http://<ip>/settings/about.html steht ein Copyright Vermerk von 2017.
FHEM: 6.1 auf Raspi 3, Raspbian (Buster), Perl v5.28.1
Sender/Empfänger: 2 x CULv3, Duofern Stick, HM-MOD-RPI-PCB
Gateways: FRITZ!Box 6591 (OS: 7.57), Trädfri, ConBee 2,  piVCCU, OpenMQTTGateway
Sensoren/Aktoren: FRITZ!DECT, FS20, FHT, HMS, HomeMatic, Trädfri, DuoFern, NetAtmo

ToKa

Zitat von: delMar am 02 März 2020, 09:11:05
Warum das Deviceinfo.xml jetzt beim X6200 nicht mehr funktioniert, weiß ich auch nicht (siehe https://forum.fhem.de/index.php/topic,58452.msg1026875.html#msg1026875).

Hallo Martin,

das wahr vielleicht von mir etwas missverständlich ausgedrückt. Der Aufruf geht auch beim X6200W und liefert das Modell als Internal zurück. Ab und an scheint es nur ein timing Problem zu geben, wenn der Receiver nicht "schnell" genug erreichbar ist (beim Einschalten). Und ich musste einmal die device Definition per modify neu abspeichern.

Beste Grüße
Torsten
RaspberryPi3 mit RaZberry2 und Conbee II
Fibaro: FGWPE/F-101 Switch & FIBARO System FGWPE/F Wall Plug Gen5, FGSD002 Smoke Sensor
EUROtronic: SPIRIT Wall Radiator Thermostat Valve Control
Shelly2.5 Rollladenaktoren
Zipato Bulb 2, Osram und InnrLight

ToKa

#454
Zitat von: Shadow3561 am 02 März 2020, 12:43:13
Habe etwas neues.

Das Telnet Command SYMO gibt folgenden Wert aus

Beim X6200W ergibt:
SYMO
SYMOAVR-X6200WEUR

VIALL liefert kein Ergebnis.

Danke für die Trennung von surroundMode und sound_out. Muss jetzt nur mal bei Gelegenheit die sound_out Werte durchgehen, was da funktioniert bzw. sind die Bezeichnungen für mich teilweise irritierend. Im Reading habe ich z.B. aktuell den Wert "Dolby Surround", den ich aber bei set sound_out nicht finde.

Das Reading Sound_Signal_in bleibt seit dem Update heute leer (-) und der Receiver zeigt aktuell "Dolby Digital" an.

Beste Grüße
Torsten
RaspberryPi3 mit RaZberry2 und Conbee II
Fibaro: FGWPE/F-101 Switch & FIBARO System FGWPE/F Wall Plug Gen5, FGSD002 Smoke Sensor
EUROtronic: SPIRIT Wall Radiator Thermostat Valve Control
Shelly2.5 Rollladenaktoren
Zipato Bulb 2, Osram und InnrLight

Shadow3561

Richtig wäre VIALL?
Das Fragezeichen am Ende muss mitgesendet werden.

Wie sieht den die Ausgabe von SYMO bei Marantz AVRs aus??

ToKa

Da war ich wohl ein wenig zu schnell  ;D

Geht doch, gut dass Du so hartnäckig bist...
VIALL?
VIALLAVRX6200W E2
VIALLS/N.XXXXXXXXX
VIALLMAIN:04.18
VIALLMAINFBL:00.13
VIALLSUB:86100217
VIALLSUBFBL:00.01
VIALLDSP1:96.64
VIALLDSP2:97.66
VIALLDSP3:98.61
VIALLDSP4:99.05
VIALLAPLD:31.16
VIALLVPLD:44.02
VIALLGUIDAT:86110103
VIALLDM8FBL:140513
VIALLDM8SBL:B201604140707
VIALLDM8IMG:I201807060729
VIALLMAC:0005cd-680e49
VIALLBTMAC:0005cd-688e49
VIALLPRODUCTID:000100860200
VIALLPACKAGEID:0011
VIALLHWID:0x000000bd
VIALLCMP:OK
VIALLEND:END
RaspberryPi3 mit RaZberry2 und Conbee II
Fibaro: FGWPE/F-101 Switch & FIBARO System FGWPE/F Wall Plug Gen5, FGSD002 Smoke Sensor
EUROtronic: SPIRIT Wall Radiator Thermostat Valve Control
Shelly2.5 Rollladenaktoren
Zipato Bulb 2, Osram und InnrLight

Shadow3561

Habe heute eine Antwort von Denon bekommen.

Fazit: Sie rücken nichts anderes raus als das Control-Protocol was ich schon an Martin gesendet habe.

Die Kommandos die ich in Zusammenarbeit mit Martin bereits ins Modul integriert habe gehören wohl alle zu einer api (wohl eher geheime api) für die Denon Remote App.
Ich habe auch noch andere Kommandos über Telnet gefunden die evtl. ins Modul könnten, aber Denon gibt mir diesbezüglich keine Info.
Schade, aber ich bleibe dran.

Mit freundlichen Grüßen

PS.
Habe einen PullRequest an Martin gesendet mit der Modellabrage für die Internals. Zumindest bei meinem Modell funktioniert es. Leider habe ich keinen Zugriff auf Marantz AVR. Daher ein Aufruf an alle die einen haben: Bitte sendet einmal ein SYMO an euren AVR und postet das Ergebnis.
Nach Möglichkeit auch einmal das selbe mit VIALL?
Danke

delMar

#458
Hallo zusammen,

danke für euer alle Bemühungen, hier mehr Informationen zu gewinnen.

Auf https://raw.githubusercontent.com/delMar43/FHEM/master/70_DENON_AVR.pm findet ihr eine Testversion.
Die macht einen Request nach /ajax/get_config?type=25 und versucht, diese Information auszuwerten, falls der Call nach Deviceinfo.xml fehlschlägt. (also alles ab x400, nehme ich an).

Ich habe nun absichtlich zuerst diesen Weg gewählt, weil mich dieses Blocking-Verhalten der Telnet Connection irrsinnig stört.
per IP kann man ja ebenfalls direkt Telnet-Kommandos schicken, aber dieser Weg ist nicht mehr möglich, sobald auch Deviceinfo.xml nicht mehr funktioniert, hab ich das richtig in Erinnerung?
Beispiel-Aufruf: http://<ip>/goform/formiPhoneAppDirect.xml?PWON

Wie auch immer:
in diesem Test geht's darum, zu sehen, ob wir deviceinfo.xml und get_config verwenden können, um erstmal lückenlos das Modell rauszufinden.

Welcher Ansatz es dann schlußendlich wird, muss sich noch zeigen.
Ich würde mich trotzdem hier schon mal über Feedback dazu freuen.

Update: und wer Lust hat, kann auch gern mal http://<port>:8080/description.xml im Browser aufrufen und dann den Quellcode der Response hier reinstellen.
Funktioniert das denn bei allen Modellen?

Danke
schöne Grüße
Martin
Maintainer von: ZoneMinder, TA_CMI_JSON, ONKYO_AVR, DENON_AVR, CanOverEthernet, IPCAM.

Vielgenutzte Module sind die größte Motivation für Entwickler.
Bitte zumindest 'attr global sendStatistics onUpdate' setzen.
Denn: ohne 'sendStatistics' keine Zahlen.

Shadow3561

Zitat von: delMar am 02 März 2020, 21:51:49

Update: und wer Lust hat, kann auch gern mal http://<port>:8080/description.xml im Browser aufrufen und dann den Quellcode der Response hier reinstellen.
Funktioniert das denn bei allen Modellen?


Mein AVR-X4500H liefert ein Error.

MfG

grappa24

Zitat von: delMar am 02 März 2020, 21:51:49
Update: und wer Lust hat, kann auch gern mal http://<port>:8080/description.xml im Browser aufrufen und dann den Quellcode der Response hier reinstellen.
das ist mal was, was bei meinem X2100W funktioniert:<root>
<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<device>
<dlna:X_DLNADOC>DMR-1.50</dlna:X_DLNADOC>
<pnpx:X_compatibleId>MS_DigitalMediaDeviceClass_DMR_V001 </pnpx:X_compatibleId>
<pnpx:X_deviceCategory>MediaDevices </pnpx:X_deviceCategory>
<pnpx:X_hardwareId>VEN_0126&DEV_0035&REV_01 </pnpx:X_hardwareId>
<df:X_deviceCategory>Multimedia.DMR </df:X_deviceCategory>
<deviceType>urn:schemas-upnp-org:device:MediaRenderer:1</deviceType>
<friendlyName>Denon AVR-X2100W</friendlyName>
<manufacturer>Denon</manufacturer>
<manufacturerURL>http://www.denon.com</manufacturerURL>
<modelDescription>AV SURROUND RECEIVER</modelDescription>
<modelName>*AVR-X2100W</modelName>
<modelNumber>X2100W</modelNumber>
<modelURL>http://www.denon.com</modelURL>
<serialNumber>0005CD44F69B</serialNumber>
<UDN>uuid:5f9ec1b3-ff59-19bb-8530-0005cd44f69b</UDN>
<UPC>123810928305</UPC>
<iconList>
<icon>
<mimetype>image/jpeg</mimetype>
<width>48</width>
<height>48</height>
<depth>24</depth>
<url>/BCO_device_sm_icon.jpg</url>
</icon>
<icon>
<mimetype>image/jpeg</mimetype>
<width>120</width>
<height>120</height>
<depth>24</depth>
<url>/BCO_device_lrg_icon.jpg</url>
</icon>
<icon>
<mimetype>image/png</mimetype>
<width>48</width>
<height>48</height>
<depth>24</depth>
<url>/BCO_device_sm_icon.png</url>
</icon>
<icon>
<mimetype>image/png</mimetype>
<width>120</width>
<height>120</height>
<depth>24</depth>
<url>/BCO_device_lrg_icon.png</url>
</icon>
</iconList>
<serviceList>
<service>
<serviceType>urn:schemas-upnp-org:service:RenderingControl:1</serviceType>
<serviceId>urn:upnp-org:serviceId:RenderingControl</serviceId>
<SCPDURL>/RenderingControl/desc.xml</SCPDURL>
<controlURL>/RenderingControl/ctrl</controlURL>
<eventSubURL>/RenderingControl/evt</eventSubURL>
</service>
<service>
<serviceType>urn:schemas-upnp-org:service:ConnectionManager:1</serviceType>
<serviceId>urn:upnp-org:serviceId:ConnectionManager</serviceId>
<SCPDURL>/ConnectionManager/desc.xml</SCPDURL>
<controlURL>/ConnectionManager/ctrl</controlURL>
<eventSubURL>/ConnectionManager/evt</eventSubURL>
</service>
<service>
<serviceType>urn:schemas-upnp-org:service:AVTransport:1</serviceType>
<serviceId>urn:upnp-org:serviceId:AVTransport</serviceId>
<SCPDURL>/AVTransport/desc.xml</SCPDURL>
<controlURL>/AVTransport/ctrl</controlURL>
<eventSubURL>/AVTransport/evt</eventSubURL>
</service>
</serviceList>
<presentationURL>http://192.168.178.40</presentationURL>
</device>
</root>
FHEM 6.1, 2 x RasPi 3B+, Debian Buster; KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200
Rollo-/Lichtsteuerung/-szenarien, T-Sensoren, Fensterkontakte, Heizungssteuerung, HEOS, Sprachsteuerung mit Alexa-FHEM, Netatmo, Nuki, ...

justme1968

nur kurz: wenn man den descriptor für die telnet connection in die fhem event loop hängt kann man über die ReadFn auch nicht blockierend lesen. müsste im wiki beschrieben sein.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

tomcat.x

#462
Meiner liefert bei VIALL?:
VIALLAVRX4400H E2
VIALLS/N.AUY12179902761
VIALLMAIN:0201907191554
VIALLMAINFBL:00.30
VIALLDSP1:10.14
VIALLDSP2:11.16
VIALLDSP3:12.11
VIALLDSP4:13.01
VIALLAPLD:72.05
VIALLVPLD:68.03
VIALLGUIDAT:00100008
VIALLHEOSVER:1.520.200
VIALLHEOSBLD:147202
VIALLHEOSMOD:5
VIALLHEOSCNF:Production
VIALLHEOSLCL:en_EU
VIALLMAC:0005CD-ED96E0
VIALLWIFIMAC:0005CD-ED96E2
VIALLBTMAC:0005CD-ED96E1
VIALLAUDYIF:00.08
VIALLPRODUCTID:000101000200
VIALLPACKAGEID:0013
VIALLCMP:OK
VIALLEND:END


Bei http://<ip>:8080/description.xml:
auch den Fehler 403
FHEM: 6.1 auf Raspi 3, Raspbian (Buster), Perl v5.28.1
Sender/Empfänger: 2 x CULv3, Duofern Stick, HM-MOD-RPI-PCB
Gateways: FRITZ!Box 6591 (OS: 7.57), Trädfri, ConBee 2,  piVCCU, OpenMQTTGateway
Sensoren/Aktoren: FRITZ!DECT, FS20, FHT, HMS, HomeMatic, Trädfri, DuoFern, NetAtmo

tomcat.x

Zitat von: ToKa am 02 März 2020, 19:03:04
Das Reading Sound_Signal_in bleibt seit dem Update heute leer (-) ...

Bist Du vielleicht auf einer internen Quelle (Tuner, HEOS,...), also ohne Input-Signal (von außen)?
FHEM: 6.1 auf Raspi 3, Raspbian (Buster), Perl v5.28.1
Sender/Empfänger: 2 x CULv3, Duofern Stick, HM-MOD-RPI-PCB
Gateways: FRITZ!Box 6591 (OS: 7.57), Trädfri, ConBee 2,  piVCCU, OpenMQTTGateway
Sensoren/Aktoren: FRITZ!DECT, FS20, FHT, HMS, HomeMatic, Trädfri, DuoFern, NetAtmo

justme1968

die description url scheint teil von upnp/dlna zu sein. eigentlich muss man auf die ssdp broadcasts schauen wie die url genau ausschaut. und vermutlich get sie nur wenn der avr dlna renderer sein kann bzw. das aktiviert ist.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968