YAMAHA_AVR Steuerung

Begonnen von dev0, 11 September 2015, 12:17:40

Vorheriges Thema - Nächstes Thema

dev0

#15
In der Doku, die ich zu den Serien RX-Ax10/Vx71 und RX-3900/Z7 habe, ist von <Remote_Control> nichts zu finden.
In dem Heimkino Artikel ist mir auch direkt eine Falschaussage aufgefallen, da sie fett gedruckt war :)
ZitatDie Befehle sind aber auf allen Modellen gleich
Das stimmt definitiv nicht.

[Edit:] Es gibt aber:
DSZ-Z7: <System><Remote_Signal><Receive><Code>***</Code></Receive></Remote_Signal></System>
RX-Vx7x: <System><Misc><Remote_Signal><Receive><Code>***</Code></Receive></Remote_Signal></Misc></System>

gitarero

#16
Hallo.
Also das funktioniert tatsächlich.
Habe es jetzt nur für die RX-Vx7x eingefügt. Da ich nicht weiss, wo und wie im Modul zwischen den Reciever-Typen genau unterschieden wird.

Eingefügt habe ich folgendes:
Zeile 191:
"rc-code ".

und ab Zeile 200:
elsif($what eq "rc-code")
    {
        YAMAHA_AVR_SendCommand($hash, "<YAMAHA_AV cmd=\"PUT\"><System><Misc><Remote_Signal><Receive><Code>$a[2]</Code></Receive></Remote_Signal></Misc></System></YAMAHA_AV>", $what, undef);
    }


funktioniert erstaunlich gut.

Wäre es möglich, das in das offizielle Modul zu übernehmen? Dann muss ich das nicht nach jedem Update wieder anpassen.

Grüße,
Ingo

P.S.:
Im Anhang ein Dokument mit den verfügbaren RC-Codes.

Edit:
Manchmal muss man RC Befehle doppelt und dreifach absetzen, damit es klappt. Das ist aber bei der Terminal Verbindung nicht anders. Warum das mit der Infrarotbedienung allerdings mit jedem Knopfdruck funktioniert ist mir schleierhaft.

dev0

Passiert das auch bei einzelnen Befehlen oder nur bei mehreren hintereinander?

gitarero

Das passiert auch bei einzelnen.

Markus Bloch

Zitat von: dev0 am 21 September 2015, 11:18:17
Hallo Markus,

da ich alles was mit HiFi/Video zu tun hat ausschließlich über FHEM/smartVISU steuere finde ich diese Steuerungsmöglichkeit gar nicht so abwegig. Zur reinen Automatisierung wäre es überflüssig, da hast du sicherlich recht.

Vorab zum Patch: Habe bitte ein wenig Nachsicht mit mir, wenn der Code nicht so elegant ist wie er vielleicht seinen könnte. Ich programmiere erst seit ein paar Monaten (versuche es zumindest ;) ) und würde mich über Kritik freuen, da ich auch bestehende Features erweitern würde, damit sie mit den DSP Modellen funktionieren (direct, dsp, enhancer, adaptiveDrc, ...)

Zum Patch selbst: ich habe die Tonsteuerung auch für die "normalen" Modelle eingebaut, kann sie aber nicht ausprobieren, habe selbst nur einen DSP-Z7. Würdest du das bitte testen?
Bei einer Kleinigkeit weiss ich noch nicht wie ich sie lösen soll: zur Tonsteuerung muss man bei den DSP Modellen die Crossover Frequenz mit angeben. Diesen Wert speichere ich in einem hidden Reading. Das funktioniert so weit, allerdings wird dieses Reading im Get-Selectmenu angezeigt was etwas unschön ist. Ich habe bisher auch nicht verstanden wie die einzelnen Readings überhaupt in diesem Selectmenu landen. Aber vielleicht gibt es ja auch eine elegantere Methode diesen Wert zu speichern?

/Uli

Ich habe den Patch mit leichten Modifikationen eingecheckt, da er so bei meinem RX-V473 out-of-the-box nicht funktionierte.

Viele Grüße

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

Schlimbo

#20
Hallo Markus,

seit dem gestrigen Update ist mein Log voll mit:
"YAMAHA_AVR (AV_Receiver_Zone2) - Could not execute "statusRequest toneStatus": received return code 2"

Könntest du bitte "bass" und "treble" bei Zone2 wieder raus nehmen.

Bei der "Main Zone" habe ich keine Probleme,  danke für diese neu Funktion.

Gruß Schlimbo

dev0

Bei welchem Modell tritt das auf?

Schlimbo

Model: RX-V773

Wie ist das bei anderen Mehrzonen Receiver, könnte ihr Bass und Höhe für jede Zone separat einstellen?

dev0

Ja, zumindest mein DSP-Z7 unterstützt das in den ersten drei Zonen. Die 4. Zone habe ich nicht getestet und auch nicht in Betrieb. Laut Doku wird das von den Vx75 und Vx79 auch unterstützt. Eine separate Doku zu deiner Serie habe ich leider nicht. Ich würde dann auch vermuten, dass alle x73 dass dann nicht können...

dev0

@Markus: soll ich mich darum kümmern?

Markus Bloch

Kannst gerne einen Patch machen. Ich bin leider wieder unterwegs und hab aktuell keine Möglichkeit den Patch entsprechend zu testen und einzuchecken.

Kann ich erst nächste Woche ab Mittwoch einchecken.
Viele Grüße

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

dev0

Hi Markus,

werde ich machen, ich komme aber auch nicht vor nächster Woche dazu.
Die Frage, die sich mir noch stellt ist, wie wir diese Ausnahmen behandeln sollen:
- global an und Modelle/Serien excluden
- global aus und Modelle/Serien includen

Vieleicht macht es sogar Sinn für diese Abfragen einzelne kleine Subs zu schreiben, à ala YAMAHA_AVR_featureToneControl_multipleZones($model). Zig Ausnahmen können das aufgeräumte Modul schnell unübersichtlich werden lassen. In dem "HDMI Output" Thread stellt sich ja die gleiche Frage. Ich bin mir nicht sicher was sinnvoller ist. Was meinst Du?


/Uli

Markus Bloch

Hi Uli,

ich habe es in solchen Fällen immer umabhängig der Gerätemodelle gemacht. Ich frage beim GetStatus diesen Wert an, habe dann aber den Parameter $can_fail auf 1, damit es keine Logmeldung gibt. Sollte hierbei ein Fehler auftreten, mach ich mir eine Merker-Variable in $hash->{helper} dass das Gerät diesen Befehl nicht akzeptiert, damit wird der entsprechende Set-Befehl unterbunden und der nächste Status-Request übergeht diesen dann.

So würde ich es hier auch machen. Das Problem mit dem exkludieren von Modellen ist, dass man nie 100% sicher sein kann, alles exakt zu erwischen. Manche Modelle können das in der Main-Zone und den anderen Zonen, bei anderen gehts nur in der Main-Zone, usw.

Viele Grüße

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

dev0

Hi Markus,

kannst Du das bitte übernehmen? Theoretisch verstehe ich wie der Mechanismus arbeit, aber an der Umsetzung scheitert es im Moment noch. Da ich ab Montag auch wieder beruflich "auswärts" bin, komme ich in nächster Zeit wohl auch nicht dazu. OK?

/Uli

Markus Bloch

Hallo zusammen,

könnt ihr bitte mal die angehangene Version testen. Hier habe ich den toneStatus wie in meinem letzten Beitrag beschrieben verändert.

Ich würde mich freuen, wenn ihr das testen könntet und mir Feedback geben könnt, ob es funktioniert.

Vielen Dank

Gruß
Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)