Denon Receiver

Begonnen von docbobo, 25 Februar 2013, 17:18:18

Vorheriges Thema - Nächstes Thema

xusader

Am einfachsten wäre es wenn du einen pull request auf github erstellst. Wäre das möglich?

Amenophis86

#211
ich habe überhaupt keinen Plan was das ist. Github kenne ich zwar durch FHEM bzw. weiß, dass es die Seite gibt. Aber ich schaue mal, was ich finde :)

Edit: Brauche ich dafür einen Account?
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...

xusader

Ja, du musst einen Account anlegen.

AndreasB777

Hey :)

leider wurde es bei mir auch mit dem Workaround nichts :/ Der AVR schluckt den command absolut nicht.

Amenophis86

Zitat von: AndreasB777 am 07 März 2016, 11:52:42
leider wurde es bei mir auch mit dem Workaround nichts :/ Der AVR schluckt den command absolut nicht.

Welcher Workaround ist denn gemeint?
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...

fhemi


Ich habe den Thread hier gelesen und denke ich habe nichts übersehen. Daher:

Ich steuere meinen Denon auch (etwas) mit fhem. Zwei Dinge scheinen dabei wichtig:

1.) Der Denon muss so konfiguriert werden, dass der sein Netzwerkinterface im StandBy (Powerknopf vorne) nicht abschaltet. Das kann man in den Details der Netzwerkeinstellungen aktivieren. Das ist per Default aus, da das mehr Strom verbraucht. Was man dann wieder mit eine Funkdose handeln kann. Funkdose an. Denon aus StandBy an. Denon in StandBy. Funkdose (mit Verzögerung) aus.

2.) Und da stehe ich grad vor: Reconnect durch fhem erzwingen. Das geht recht gut mit einem ReloadCfg. Allerdings würde ich das gerne etwas genauer haben wollen:

a.) wie stelle ich fest, ob eine Connection besteht?
b.) geht das auch ohne ReloadCfg, da ja im Init des Perl-Packages "etwas" sein muss, was die Verbindung herstellen kann

Zu 2a.) und 2b.) suche ich eine Lösung. Wer kann da helfen?


Amenophis86

Mit der Version aus diesem Post https://forum.fhem.de/index.php/topic,11338.msg419289.html#msg419289 kannst du ein reconnect herstellen. Ist im Github noch nicht dran, aber geplant.
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...

fhemi

Danke Dir! Schaue ich mir an!

Ich habe in der Zwischenzeit auch eine Lösung gefunden. Evtl. hilft die auch in anderem Zusammenhang für ähnliche Fragestellungen. Daher poste ich die einfach trotzdem mal:

define trg_AVPowerOn notify wz_AVPowerPlug:on { \
sleep 2 ;;\
fhem("modify DenonAVR 192.168.1.2:23");;\
Log 1, "trg_AVPowerOn: reconnect to Denon fired" ;;\
}


Direkt so 1:1 in die fhem.cfg einfügen und die Config neu laden.

Wenn die Funksteckdose an der der AVR hängt angeht, wird 2 Sekunden später ein reconnect versucht (das macht das modify, welches hier schon im Thread beschrieben wurde). Der letzte Befehl schreibt noch einen Hinweis ins Log.

Im Prinzip steht das alles schon hier im Thread. Nur etwas verstreut  ;D

fhemi

#218
@Amenophis86

Wenn ich das neue Modul nutze, wie verwende ich das dann? Mittels eines "at" Triggers? Hast Du evtl. ein funktionierendes Beispiel?


Amenophis86

Habe noch keine Überwachung eingebaut, da ich an einem anderen Problem gearbeitet hatte. Aber es gibt den set Befehl disconnect und reconnect. Die das Reading state beeinflussen. Damit müsstest du ja arbeiten können ;)

Kannst das Modul ja umbenennen und testweise einfügen.
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...

fhemi


Ah, verstanden.

Muss ich mal überlegen, da reconnect nur Sinn macht, wenn die AVRPowerPlug an ist.

Auf jeden Fall nochmals Danke!

fhemi

Lässt einem ja keine Ruhe  8)

Ich habe mir einen Watchdog angelegt, der alle 10 Sekunden prüft, ob die Funksteckdose des AVR eingeschaltet ist. Ist sie das nicht, dann passiert nix. Ist die an dann setzte ich das "reconnect" ab.

define at_AVWatchDog at +*00:00:10 IF ([wz_AVRPowerPlug:&STATE] eq "on") ( set DenonAVR reconnect)

Es dauert ungefähr 30 Sekunden nach dem Anschalten der Funkdose, bis der Denon den reconnect akzeptiert. Soweit so erfreulich.

Allerdings schreibt mir das Modul das Logfile danach alle 10 Sek. mit

Device must be connected to disconnect!

voll, solange die Funkdose State:on ist.... der Denon ist aber connected und lässt sich erwartungsgemäß auch steuern.

Unschön. Ich dachte der reconnect Befehl macht kein Init, wenn er merkt, dass der Denon noch da ist.

Fehlt da noch etwas oder handelt es sich um einen kleinen bug?

Amenophis86

es ist relativ klar, warum er das macht. So lange die die Steckdose an ist, führt er alle 10 Sekunden ein Reconnect aus. Das kann er aber nur machen, wenn der Denon auf disconnected steht, da er das nicht ist, kommt die Meldung, dass er erst auf disconnected stehen muss, bevor ein reconnect ausgeführt werden kann.

Ich würde dir empfehlen ein Zeit verzögertes notify zu nehmen, oder ein DOIF. Beides lässt du auf die Steckdose lauschen und sobald diese angeht, lässt du ca. 30 Sekunden später einmalig ein reconnect ausführen.
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...

fhemi

#223
Dann habe ich das falsch verstanden. Ich dachte der Reconnect wird nur dann durchgeführt, wenn das auch notwendig ist. Also dass das Kommando das vorher prüft und wenn alles ok ist dann ohne etwas zu tun zurück kommt. Ich will ja auch keine ständige, unötige und unschöne Neuverbindungen auslösen.

Ich könnte das auch von der Funkdose abhängig machen, aber da der Receiver manchmal einfach keinen Connect annimmt (manchmal nach 10 Sekunden, aber auch schon mal nach 70 Sekunden) ist mir das zu fad. Ich möchte nicht immer die max. Zeit warten müssen...

D. h. also ich müsste diese Prüfung vornehmen und nur wenn ich feststelle "nix connected" dann "set reconnect" absetzen? Richtig?

Ploppt natürlich die Frage auf: wie kann ich sicher und sauber abfragen, ob die Connection besteht? Wie sähe der obige "Watchdog" korrekt aus?

"Nur" auf die Funkdose zu reagieren ist auch in anderer Hinsicht ein Problem: der Verstärker wird auch schon mal per "Handfunkschalter" mit Strom versorgt. Es kommt dann vor, dass der Rasi 433Mhz Empfänger das dann nicht mitbekommt, weil das Signal zwar die Funkdose, nicht aber den Rapi erreicht hat.


Amenophis86

Das Problem ist, dass ich noch nicht verstanden habe, wie man in einem Modul überprüft, ob die Verbindung noch besteht. Bis dahin kannst du auf den Status achten, dieser geht normal in disconnected über, wenn die Verbindung nicht mehr besteht.

Als Alternative und eher unschöne Lösung kannst du regelmäßig selbst disconnecten und wieder reconnecten. Mehr kann ich dir leider noch nicht anbieten. Sry.
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...