NEWS
[Aufruf] DENON & Marantz Adapter
-
Moin,
nachdem 0.3.1 hier nicht groß angekündigt wurde und eigentlich nur die volumeDB States wieder gerichtet hat, gab es nun mit 0.3.2 vielleicht für den ein oder anderen interessante Anpassungen.
Für die AVR's (HEOS-fähig) bei denen die Display States nicht funktionieren, werden diese erst gar nicht mehr angelegt. Ebenfalls gibt es zwei neue States die auch nur für non-HEOS Geräte was bringen. "zoneMain.isPlaying" stellt einen Indikator dar, der true ist wenn Musik wiedergegeben wird und sonst false liefert. Das sollte unter anderem bei Visualisierungen hilfreich sein. Ebenfalls wurde ein State angelegt der statisch den Link zum aktuellen Cover enthält – zu den States gerne Feedback ob sie das tun was sie sollen.
Wichtig ist es, dass ihr die bestehenden Instanzen löscht und neu hinzufügt -- ist leider ein nötiges übel. Deshalb daran denken danach die Cloud Geräte wieder anzulegen (falls ihr aus dem Denon Adapter welche nutzt).
beste Grüße und happy testing
fox
-
Guten Abend,
leider gehen die Version ab V0.30 nicht mehr.
Hier der Fehler:
host.ioBroker-Pi 2018-08-01 21:14:49.196 info Restart adapter system.adapter.denon.0 because enabled host.ioBroker-Pi 2018-08-01 21:14:49.195 error instance system.adapter.denon.0 terminated with code 0 (OK) Caught 2018-08-01 21:14:49.195 error by controller[0]: at Manager.ondata (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:322:16) Caught 2018-08-01 21:14:49.195 error by controller[0]: at Decoder.add (/opt/iobroker/node_modules/socket.io-parser/index.js:246:12) Caught 2018-08-01 21:14:49.195 error by controller[0]: at Decoder.Emitter.emit (/opt/iobroker/node_modules/component-emitter/index.js:134:20) Caught 2018-08-01 21:14:49.194 error by controller[0]: at Decoder. <anonymous>(/opt/iobroker/node_modules/component-bind/index.js:21:15) Caught 2018-08-01 21:14:49.194 error by controller[0]: at Manager.ondecoded (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:332:8) Caught 2018-08-01 21:14:49.194 error by controller[0]: at Manager.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20) Caught 2018-08-01 21:14:49.194 error by controller[0]: at Manager. <anonymous>(/opt/iobroker/node_modules/component-bind/index.js:21:15) Caught 2018-08-01 21:14:49.194 error by controller[0]: at Socket.onpacket (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:236:12) Caught 2018-08-01 21:14:49.194 error by controller[0]: at Socket.onack (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:312:9) Caught 2018-08-01 21:14:49.193 error by controller[0]: at Socket.adapter.getObject (/opt/iobroker/node_modules/iobroker.denon/main.js:584:44) Caught 2018-08-01 21:14:49.192 error by controller[0]: TypeError: Cannot read property 'common' of null denon.0 2018-08-01 21:14:49.149 info terminating denon.0 2018-08-01 21:14:49.133 info Stopping Denon AVR adapter... denon.0 2018-08-01 21:14:49.131 error at Manager.ondata (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:322:16) denon.0 2018-08-01 21:14:49.131 error at Decoder.add (/opt/iobroker/node_modules/socket.io-parser/index.js:246:12) denon.0 2018-08-01 21:14:49.131 error at Decoder.Emitter.emit (/opt/iobroker/node_modules/component-emitter/index.js:134:20) denon.0 2018-08-01 21:14:49.131 error at Decoder. <anonymous>(/opt/iobroker/node_modules/component-bind/index.js:21:15) denon.0 2018-08-01 21:14:49.131 error at Manager.ondecoded (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:332:8) denon.0 2018-08-01 21:14:49.131 error at Manager.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20) denon.0 2018-08-01 21:14:49.131 error at Manager. <anonymous>(/opt/iobroker/node_modules/component-bind/index.js:21:15) denon.0 2018-08-01 21:14:49.131 error at Socket.onpacket (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:236:12) denon.0 2018-08-01 21:14:49.131 error at Socket.onack (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:312:9) denon.0 2018-08-01 21:14:49.131 error at Socket.adapter.getObject (/opt/iobroker/node_modules/iobroker.denon/main.js:584:44) denon.0 2018-08-01 21:14:49.131 error TypeError: Cannot read property 'common' of null denon.0 2018-08-01 21:14:49.129 error uncaught exception: Cannot read property 'common' of null</anonymous></anonymous></anonymous></anonymous>
-
Guten Abend,
leider gehen die Version ab V0.30 nicht mehr.
Hier der Fehler:
!
host.ioBroker-Pi 2018-08-01 21:14:49.196 info Restart adapter system.adapter.denon.0 because enabled host.ioBroker-Pi 2018-08-01 21:14:49.195 error instance system.adapter.denon.0 terminated with code 0 (OK) Caught 2018-08-01 21:14:49.195 error by controller[0]: at Manager.ondata (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:322:16) Caught 2018-08-01 21:14:49.195 error by controller[0]: at Decoder.add (/opt/iobroker/node_modules/socket.io-parser/index.js:246:12) Caught 2018-08-01 21:14:49.195 error by controller[0]: at Decoder.Emitter.emit (/opt/iobroker/node_modules/component-emitter/index.js:134:20) Caught 2018-08-01 21:14:49.194 error by controller[0]: at Decoder. <anonymous>(/opt/iobroker/node_modules/component-bind/index.js:21:15) Caught 2018-08-01 21:14:49.194 error by controller[0]: at Manager.ondecoded (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:332:8) Caught 2018-08-01 21:14:49.194 error by controller[0]: at Manager.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20) Caught 2018-08-01 21:14:49.194 error by controller[0]: at Manager. <anonymous>(/opt/iobroker/node_modules/component-bind/index.js:21:15) Caught 2018-08-01 21:14:49.194 error by controller[0]: at Socket.onpacket (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:236:12) Caught 2018-08-01 21:14:49.194 error by controller[0]: at Socket.onack (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:312:9) Caught 2018-08-01 21:14:49.193 error by controller[0]: at Socket.adapter.getObject (/opt/iobroker/node_modules/iobroker.denon/main.js:584:44) Caught 2018-08-01 21:14:49.192 error by controller[0]: TypeError: Cannot read property 'common' of null denon.0 2018-08-01 21:14:49.149 info terminating denon.0 2018-08-01 21:14:49.133 info Stopping Denon AVR adapter... denon.0 2018-08-01 21:14:49.131 error at Manager.ondata (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:322:16) denon.0 2018-08-01 21:14:49.131 error at Decoder.add (/opt/iobroker/node_modules/socket.io-parser/index.js:246:12) denon.0 2018-08-01 21:14:49.131 error at Decoder.Emitter.emit (/opt/iobroker/node_modules/component-emitter/index.js:134:20) denon.0 2018-08-01 21:14:49.131 error at Decoder. <anonymous>(/opt/iobroker/node_modules/component-bind/index.js:21:15) denon.0 2018-08-01 21:14:49.131 error at Manager.ondecoded (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:332:8) denon.0 2018-08-01 21:14:49.131 error at Manager.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20) denon.0 2018-08-01 21:14:49.131 error at Manager. <anonymous>(/opt/iobroker/node_modules/component-bind/index.js:21:15) denon.0 2018-08-01 21:14:49.131 error at Socket.onpacket (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:236:12) denon.0 2018-08-01 21:14:49.131 error at Socket.onack (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:312:9) denon.0 2018-08-01 21:14:49.131 error at Socket.adapter.getObject (/opt/iobroker/node_modules/iobroker.denon/main.js:584:44) denon.0 2018-08-01 21:14:49.131 error TypeError: Cannot read property 'common' of null denon.0 2018-08-01 21:14:49.129 error uncaught exception: Cannot read property 'common' of null</anonymous></anonymous></anonymous></anonymous>
`Hast du die Instanz gelöscht und neu hinzugefügt? Bzw. wie hast du aktualisiert?
Falls du über Git aktualisiert hast bitte den Adapter neu uploaden, geht auch über die GUI – den DENON Adapter im Tab Adapter anklicken und dann steht dort Upload.
Es ist aufgrund der Überarbeitung der States sehr wichtig, dass ihr die Instanzen des DENON Adapters löscht und neu hinzufügt.
-
Bin im Admin unter Adapter auf den Denon und habe hier ein Update gemacht.
Wirklich vorher löschen? Werden da keinen neuen Datenpunkte zusätzlich erzeugt?
-
Bin im Admin unter Adapter auf den Denon und habe hier ein Update gemacht.
Wirklich vorher löschen? Werden da keinen neuen Datenpunkte zusätzlich erzeugt? `
Also du solltest unter Instanzen die Instanz/en des AVR's löschen. Da es vor Version 0.3.0 nicht ioBroker konform war (ich hatte Channels in Channels, was zwar 1A funktioniert allerdings so nicht vorgesehen ist), wurden die States ordentlich verändert, z. B. sind die Main Zone States nun in einem extra "zoneMain" channel usw.
-
Bei mir läuft die neue Version ohne Probleme bisher. Vorher Instanz gelöscht (damit auch alle States).
-
Bei mir läuft die neue Version ohne Probleme bisher. Vorher Instanz gelöscht (damit auch alle States). `
Top, falls du ein HEOS-fähigen Receiver hast würde mich interessieren, ob die displayContents nicht mehr angelegt werden. Sonst wäre ich interessiert daran ob isPlaying zuverlässig arbeitet – falls du das nutzt.
beste Grüße
fox
-
Tja, leider nein, habe "nur" einen Marantz SR7008 (ohne HEOS). Die Änderungen für mich sind also lediglich ein paar Umsortierungen der States, kann also leider bei den neueren Funktionen nicht sehr viel hilfreicher sein. Getestet hab ich die Installation und Grundfunktionen der drei Zonen incl. Soundparameter (Änderungen gab's da ja aber eigentlich nur bei der Umsortierung in 'settings' und 'zoneMain').
IsPlaying habe ich noch nicht genutzt. Wenn ich das richtig verstehe wäre das ein cooles Feature (scheinst Du Dir ja aus dem Display-Text zu holen). Interessant für mich weil: Bei mir kommt ab und an "Serverfehler" beim Einschalten des AV auf IRadio und dann kein Sender (hat nix mit ioBroker zu tun). Mit IRP Kommando kann man wohl einen Reconnect-Versuch machen (hat schon bei mir geklappt, intensiv getestet hab ich's noch nicht). Mit IsPlaying könnte man IRP automatisch triggern.
Ein kurzer Test zum Verhalten von IsPlaying bei mir:
-
false wenn AV aus (macht Sinn)
-
true wenn IRadio spielt (macht Sinn)
-
Wenn ich nach IRadio auf anderen Kanal schalte (z.B. Aux wo nichts angeschlossen ist) bleibt isPlaying true (OSD bleibt auch daher wohl)
-
AV anschalten, egal auf welchem Kanal und IRadio-Info wird im OSD angezeigt (dann läuft IRADIO auch, wenn ich darauf umschalte) -> IsPlaying true (auch wenn ich bisher nicht IRadio gewählt habe
-
AV anschalten, egal auf welchem Kanal und IRadio-Info wird im OSD nicht angezeigt (dann kommt kurz die Meldung "serverfehler im OSD") -> IsPlaying false
Fazit: Sieht nach einem guten Ansatz für mein oben geschildertes Problem aus. Hat das sonst noch jemand bei seinem AVR?
Wenn Du schon mit einer Analyse des OSD anfängst, dann frag ich mal, ob Du Dir schon mal die
NS und MN Befehlen angesehen hast. Ich hätte ja gerne noch eine Navigation durchs OSD ohne Beamer-Anschluss, konkret um IRadio-Stationen zu wählen (mal abseits der Favorite Stations). Das wollte ich mir immer mal angucken (auch ob die NS und MN Befehle dazu überhaupt taugen), komme aber bisher nicht dazu.
Soweit erstmal Feedback.
Viele Grüße
Stefan
-
-
Wenn Du schon mit einer Analyse des OSD anfängst, dann frag ich mal, ob Du Dir schon mal die
NS und MN Befehlen angesehen hast. Ich hätte ja gerne noch eine Navigation durchs OSD ohne Beamer-Anschluss, konkret um IRadio-Stationen zu wählen (mal abseits der Favorite Stations). Das wollte ich mir immer mal angucken (auch ob die NS und MN Befehle dazu überhaupt taugen), komme aber bisher nicht dazu. `
Vielen Dank.
Also die NS Commands sind in Form der Display Content States implementiert. Und ja es geht eigentlich nur danach ob Now Playing im OSD0 steht, da der Wunsch nach einem Indikator für die Visualisierung bestand. Wenn dieser jedoch nur so halb funktioniert werde ich ihn wieder entfernen. Die NM Befehle kann ich gerne implementieren, dazu am besten mal ein Issue auf Github eröffnen.
-
Na ja, der State tut ja was er soll, nur der (zumindest mein) AVR reagiert nicht so richtig logisch. Wenn man den State umbenennen würde in z.B. "NowPlaingInfoinOSD" dann wäre er für mich immer noch sehr hilfreich (aus im letzten Post geschriebenen Gründen). Wenn Du's wegen nicht immer nachvollziehbarer Rückmeldung raus nehmen willst versteh ich das auch (ich find's aber cool, würde mir dann die Funktion in ein Skript basteln ;))
Ich versuch am SO noch mal genauer zu testen (auch mit Medienserver), vorher wird's wahrscheinlich zeitlich eng bei mir.
-
Na ja, der State tut ja was er soll, nur der (zumindest mein) AVR reagiert nicht so richtig logisch. Wenn man den State umbenennen würde in z.B. "NowPlaingInfoinOSD" dann wäre er für mich immer noch sehr hilfreich (aus im letzten Post geschriebenen Gründen). Wenn Du's wegen nicht immer nachvollziehbarer Rückmeldung raus nehmen willst versteh ich das auch (ich find's aber cool, würde mir dann die Funktion in ein Skript basteln ;))
Ich versuch am SO noch mal genauer zu testen (auch mit Medienserver), vorher wird's wahrscheinlich zeitlich eng bei mir. `
Ich warte mal weiteres Feedback ab, auf jeden Fall vielen Dank erst mal. Lass dir ruhig Zeit – soll nicht überstürzt werden. Das mit der eventuellen Umbenennung wäre ne Möglichkeit. Bezüglich meinem Gedankengang: Ich finde es nicht sonderlich schön, wenn da ein isPlaying Indikator verbaut ist, der nicht korrekt funktioniert. Du verstehst die Logik dahinter, jedoch lese ich im Forum und in der FB Gruppe sehr viele Anfängerfragen, die eigentlich auch die Zielgruppe von Adaptern sein sollten und die gerne darauf vertrauen dass States zuverlässig arbeiten.
beste Grüße und einen guten Start ins Wochenende
fox
-
Hi,
ich hab seit ein paar Tagen regelmäßig "AVR timed out due to no response" im Log. Hat das sonst noch wer von Euch?
denon.0 2018-08-03 23:21:04.246 warn AVR timed out due to no response denon.0 2018-08-03 23:20:05.000 info [CONNECT] Adapter connected to DENON-AVR: 10.10.0.106:23 denon.0 2018-08-03 23:20:04.998 info Trying to connect to 10.10.0.106:23 denon.0 2018-08-03 23:19:34.994 warn AVR timed out due to no response denon.0 2018-08-03 23:18:49.679 info [CONNECT] Adapter connected to DENON-AVR: 10.10.0.106:23 denon.0 2018-08-03 23:18:49.676 info Trying to connect to 10.10.0.106:23
-
@Mic:Hi,
ich hab seit ein paar Tagen regelmäßig "AVR timed out due to no response" im Log. Hat das sonst noch wer von Euch?
denon.0 2018-08-03 23:21:04.246 warn AVR timed out due to no response denon.0 2018-08-03 23:20:05.000 info [CONNECT] Adapter connected to DENON-AVR: 10.10.0.106:23 denon.0 2018-08-03 23:20:04.998 info Trying to connect to 10.10.0.106:23 denon.0 2018-08-03 23:19:34.994 warn AVR timed out due to no response denon.0 2018-08-03 23:18:49.679 info [CONNECT] Adapter connected to DENON-AVR: 10.10.0.106:23 denon.0 2018-08-03 23:18:49.676 info Trying to connect to 10.10.0.106:23 ```` `
Welchen AVR hast du, welche Version des Adapters? Erweiterte Einstellungen unverändert?
-
Hallo zusammen,
ich bin relativ neu hier und lese mich im Moment gerade etwas hier im Forum ein.
Mein Ziel ist es so viele meiner Geräte wie möglich per Sprache über meinen Goggle Home per Sprache zu steuern. Zur zeit läuft IOBroker auf meinem Windows 10 PC. Eventuell stelle ich demnächst auf einen Raspy um.
Nun zu meinem Problem.
Mit meinen nur geringen Kenntnissen über IObroker ist es mir mittlerweile gelungen meinen Denon AVR-X3400h mittels des Adapters einzubinden und über IFTTT und die Cloud mit einem kleinen Script die Kiste per Sprache ein und auszuschalten
Nächstes Ziel war die Änderung der Lautstärke (habe ich über Alexa hinbekommen), über Google Home noch nicht versucht.
Viel wichtiger war mir erst mal das Umschalten der Quellen in der Mainzone, da komme ich nicht weiter. Wollte für jede Quelle ein kleines Script schreiben, scheitere aber kläglich. Kann mir jemand sagen, wo der Fehler liegt?
on({id: 'cloud.0.services.ifttt', change: "ne"}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if (getState("cloud.0.services.ifttt").val == 'internetradio an') { setState("denon.0.zoneMain.selectInput"/*Select input*/, '12'); } });
-
Viel wichtiger war mir erst mal das Umschalten der Quellen in der Mainzone, da komme ich nicht weiter. Wollte für jede Quelle ein kleines Script schreiben, scheitere aber kläglich. Kann mir jemand sagen, wo der Fehler liegt?
on({id: 'cloud.0.services.ifttt', change: "ne"}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if (getState("cloud.0.services.ifttt").val == 'internetradio an') { setState("denon.0.zoneMain.selectInput"/*Select input*/, '12'); } }); ```` `
on({id: 'cloud.0.services.ifttt', change: 'ne'}, obj => { if(getState("cloud.0.services.ifttt").val.toLowerCase() === 'internetradio an') { setState("denon.0.zoneMain.selectInput"/*Select input*/, 12); // --> Typ Number ist vermutlich das Problem } // endIf });
Ansonsten bitte mehr Infos.
schönen Sonntag
fox
-
Erst mal vielen Dank!
Im IObroker wurde der Input Select auf Internetradio umgeschaltet, am Receiver selbst hat sich nichts geändert, wurde also nicht umgeschaltet.
IRADIO(12) ist rot geschrieben.
In den Logs steht nichts.
Könnte der Fehler noch in den Einstellungen der Cloud verborgen sein, da habe ich auf Switch gestellt.
War auf jeden Fall einen Schritt weiter, da der Denon Adapter reagiert, aber nicht umgeschaltet hat.
Ansonsten, welche Informationen könnten helfen?
-
Erst mal vielen Dank!
Im IObroker wurde der Input Select auf Internetradio umgeschaltet, am Receiver selbst hat sich nichts geändert, wurde also nicht umgeschaltet.
IRADIO(12) ist rot geschrieben.
In den Logs steht nichts.
Könnte der Fehler noch in den Einstellungen der Cloud verborgen sein, da habe ich auf Switch gestellt.
War auf jeden Fall einen Schritt weiter, da der Denon Adapter reagiert, aber nicht umgeschaltet hat.
Ansonsten, welche Informationen könnten helfen? `
System bzw Main Zone ist an? Ansonsten reagiert er nicht.
-
ja, steht auf Main-Zone, Zone 2 nutze ich nicht
-
ja, steht auf Main-Zone, Zone 2 nutze ich nicht `
on({id: 'cloud.0.services.ifttt', change: 'ne'}, obj => { // Übrigens wird change: 'ne' nur getriggert wenn vorher was anderes in dem State drin stand, sonst change: 'any' nutzen if(getState('cloud.0.services.ifttt').val.toLowerCase() === 'internetradio an' ) { if(getState('denon.0.zoneMain.powerZone').val === false) setState('denon.0.zoneMain.powerZone', true); setTimeout(() => setState('denon.0.zoneMain.selectInput', 12), 1200); } // endIf });
Bitte mal probieren, nur um sicher zu gehen mit der Main Zone. Bei mir lässt sich der State einwandfrei schalten.
Ansonsten: welche Version des Adapters nutzt du? Welchen AVR? Falls du von einer früheren Version aktualisiert hast, hast du danach die Instanz gelöscht und neu hinzugefügt?
-
Hallo fixriver 76,
habe jetzt mal dein Script versucht, passiert leider auch nichts.
Version des Adapters ist 0.3.2, der Receiver ist ein Denon AVR-X3400h.
Habe auch mal die Instanzen deinstalliert, den Adapter neu installiert und den IObroker neu gestartet.
Node Vers. ist 8, könnte es damit noch zusammen hängen?