FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Thema gestartet von: rtv am 23 Dezember 2012, 19:49:25

Titel: RS-232 Modul für AV-Geräte
Beitrag von: rtv am 23 Dezember 2012, 19:49:25
Seit einiger Zeit schalte ich einfache Befehle meines Onkyo-Receivers über dessen serielle Schnittstelle.
Wenn z.B. ein Anruf eingeht, setze ich über FHEM mit einem USB-RS232-Adapter dieses Kommando ab:
'echo "\\!1AMT01" > /dev/usb_rs232';
Und der Receiver ist stumm. Auch das Umschalten der HDMI Ein- und Ausgänge ist problemlos möglich.

Jetzt habe ich gesehen, dass der Receiver auch Rückmeldungen sendet, die vor allem bei der Lautstärkeregelung praktisch wären.
Noch besser: Sogar "normale" Eingaben am Gerät und per Fernbedienung werden über den seriellen Port ausgegeben (//images/smiley_icons/icon_cool.gif)

Aber wie komme ich da dran? Gibt es bereits ein serielles Modul, dass eine dauerhafte Verbindung aufrechterhält und dass ich klonen könnte?
Die Protokoll-Beschreibung hab' ich mal angehängt.
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: ext23 am 23 Dezember 2012, 21:35:32
Sowas ähnliches habe ich auch mal gesucht für mein selbstgebauten 433 MHz Steckdosensender.

Der gibt nämlich OK und sowas zurück. Aber die Idee mit dem echo ist ja geil, dann kann ich den ja doch benutzen und "pfeiffe" auf die Antwort von meinem Sender...
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: KIDzero am 23 Dezember 2012, 22:45:59
Servus,

ein ONKYO_AVR wäre eine super Idee.
Vielleicht könnt man sich bei dem Projekt https://github.com/beanz/device-onkyo-perl (//github.com/beanz/device-onkyo-perl) das ein oder andere abschauen. Das Modul sollte Serial und Network Devices unterstützen.
Bin leider noch recht neu was FHEM angeht. Werde mir mal das YAMAHA_AVR Modul anschauen.

Gruß KIDzero
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: rtv am 24 Dezember 2012, 16:09:38
Zitat von: KIDzero schrieb am So, 23 Dezember 2012 22:45Servus,

ein ONKYO_AVR wäre eine super Idee.
Vielleicht könnt man sich bei dem Projekt https://github.com/beanz/device-onkyo-perl das ein oder andere abschauen. Das Modul sollte Serial und Network Devices unterstützen.

Ich hatte mir auf der Fritzbox den wichtigsten Code daraus kopiert. Aber es hatte nicht funktioniert und danach reagierte der AVR auch nicht mehr auf simple Befehle per echo.
Gerade hab' ich Device::Onkyo per cpan auf meinem pogoplug installiert und siehe da: es geht!

Langfristig sollte ein Modul natürlich self-contained sein und auch auf der Fritzbox laufen, aber so kann ich schon mal anfangen, die Empfangsrichtung zusammen zu schustern.
Hab nur schnell ein paar Basics umgesetzt (HEX-Werte der Lautstärke umwandeln, etc). Vielleicht hab' ich nach Weihnachten ein paar Stunden Zeit um das ganze auszubauen. (//images/smiley_icons/icon_smile.gif)
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: Mario K am 26 März 2013, 12:41:17
Gibt es was neues?
Ich dachte auch schon daran, die Yamaha_AVR als Basis nutzen zu können, um eine
Onkyo_AVR daraus zu erzeugen und bad den Markus (Ersteller von Yamaha_AVR) um
Hilfestellung bzw. um eine Anpassung auf Onkyo. Leider klappt das nicht so einfach, da an
die Yamaha XML-Strukturen übertragen werden und Onkyo über Commando-Strings angesteuert wird.
Ich werde mich da mal mit der Übertragung per Telnet beschäftigen.
Da ich vorerst ohnehin nur ein paar Grundbefehle benötige, sollte das auch klappen.
Es wäre natürlich schön, wenn jemand mit dem nötigen Background irgendwann einmal ein
Onkyo-Modul, wie das Yamaha_AVR, für FHEM erstellen würde ;-)
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: Markus Bloch am 26 März 2013, 22:29:40
Hi Mario,

Ich würde mich bereit erklären das Modul zu schreiben, sofern mir jemand einen Onkyo natürlich nur für die Dauer der Entwicklungszeit zur Verfügung stellt. Dann könnte ich das Modul schreiben, testen und einchecken. Anschließend würde ich den Receiver wieder zurückschicken zum Absender.

Ohne ein Onkyo zum testen klappt das leider nicht.

Viele Grüße

Markus
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: Mario K am 27 März 2013, 23:34:46
Interessantes Angebot Markus!
Was meinst Du wie lange es in etwa dauern würde?
Ist ja nicht gerade ein geringer Aufwand, bedenkt man auch noch die Unterschiede der Modelle!
Hier müsste man sich wahrscheinlich auf die Hauptbefehle beschränken, welche von allen
AVR-Modellen genutzt werden können. Sonst müsste man noch eine Abfrage mit einbringen und
dann entspr. die Befehle je nach Modell zuordnen/freigeben.

Gruß
Mario
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: rtv am 28 März 2013, 13:06:59
Die von mir verlinkte Datei gilt für alle ansprechbaren Modelle.
Alltagsbefehle wie Power, Lautstärke, Surround-Modus, etc sind erstmal identisch.
Das man bei Einstiegsmodellen nicht auf einen nicht existenten HDMI-Ausgang 2 umschalten kann ist klar.

Ich hatte schon eine Frickellösung in Betrieb, kann aber aktuell nicht weitermachen, weil es für mein PowerPC NAS (Synology DS413) aktuell keine kompilierenden Kernel-Sourcen gibt um die USB-Module zu erstellen :-/

Bei der reinen Fleißarbeit (Perl-Konvertierung der Lautstärke, Implementieren der einzelnen Kommandos) könnte ich helfen.
Aber das Modul selber mit korrekter FHEM-Einbindung müsste jemand anders machen.

Für den Start geht z.B. dieser Code:


use Device::Onkyo;

sub
OnkyoPower ($)
{
        if ($_[0] eq 'An')
        { SendOnkyoCmd('PWR01'); }
        else
        { SendOnkyoCmd('PWR00'); }
}

SendOnkyoCmd ($)
{
        my $command = $_[0];
        my $onkyo = Device::Onkyo->new(device => '/dev/ttyUSB1');
        my $outstring = '';
        $command = "\\!1".$command." > /dev/ttyUSB1";

        $onkyo->write($command);
        my $message = $onkyo->read(1);

        $outstring=left(trim($message), 3);
        Log 1, "DEBUG: String: ".$outstring." Ausgabe: ".$message;

        if($outstring eq "PWR")
        {
          $outstring=right(trim($message), 2);
          if ($outstring eq "01") {
            Log 1, "Onyko Receiver eingeschaltet";
          } else {
            Log 1, "Onyko Receiver ausgeschaltet";
          }
        }
}
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: Markus Bloch am 28 März 2013, 20:27:33
@Mario: Ich schätze mal 2-3 Wochen, da ich leider nur am Wochenende daran arbeiten kann (Entwicklung, Testen, umsetzen inkl. Doku)

Ich würde generell erstmal die Funktionalitäten wie in YAMAHA_AVR anvisieren ohne das Zonen-Feature.

Sollten nach der Entwicklung mithilfe eines Gerätes im Modul ein Fehler entdeckt werden oder andere neue Features gewünscht sein, müsste jemand mit einem Onkyo Receiver diese Sachen nachtesten.

Viele Grüße

Markus
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: Markus Bloch am 28 März 2013, 20:29:20
Ich würde auch versuchen sowohl Ethernet als auch RS-232 zu unterstützen, da die Befehle ja gleich sind.
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: ThomasH am 08 April 2013, 10:26:53
Hallo,

bin durch Zufall auf diesen Thread hier gestossen, umso mehr verwundert bin ich, dass er so abrupt aufhört!?

@Markus: tolle Idee die du da vorhast. Ich hab gleich mal die Hausregierung gefragt, leider habe ich kein grünes Licht bekommen.
Frühstens im Sommerurlaub, da sind wir 2 Wochen weg ;-)

Ich weiß nicht, ob dieses Dok hier bekannt ist, da sind (fast) alle Befehle gelistet, hab mir selbst damit schon einige Codes gebastelt.

Gruß Thomas

PS: Ich selbst hab ein ONKYO_TX-NR717 den ich per Netzwerk steuere.
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: Markus Bloch am 08 April 2013, 11:03:04
Hallo Thomas,

das Urteil der Hausregierung kann ich nachvollziehen. Man könnte das Grundmodul auch an einem Wochenende machen (Freitag Ankunft bei mir und Montag direkt wieder versenden), wo dann das Grundgerüst und die ersten Befehle drinne sind und weitere Erweiterungen müssten dann durch dich oder einem anderen Onkyo Besitzer verifiziert werden.

Die Liste ist mir bekannt und währe die Grundlage für das Modul ;-)

Viele Grüße

Markus
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: Mario K am 08 April 2013, 13:27:59
Hallo,
@ThomasH: wieso abrupt aufhört? - ich muss mich eben auch erst einmal dazu durchringen, meinen Onkyo für einige Zeit abzugeben.
Hinzu kommt das Risiko beim Versand! Ich habe in den letzten Jahren so viele Beschädigungen beim Versand gesehen - unglaublich!

Ist aber schön, dass wir nun schon min. 2 sind :-) wegen dem verifizieren.

Wie machst Du das z.Z. mit den "Codes"?

Ich habe aber auch noch ein anderes Problem. Wie sage ich dem TV, dass er sich nicht einschalten soll, wenn ich auf dem AVR
Radio oder MP3-Wiedergabe starte? Ich möchte eben nicht ganz auf die Verbindung (Anynet/RIHD) verzichten.
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: rtv am 08 April 2013, 13:50:07
Zitat von: ThomasH schrieb am Mo, 08 April 2013 10:26Ich weiß nicht, ob dieses Dok hier bekannt ist, da sind (fast) alle Befehle gelistet, hab mir selbst damit schon einige Codes gebastelt.
Hallo Thomas, das von mir weiter oben verlinkte Dokument ist eine neuere Version. Aber vielleicht kannst du deine Quelle noch einmal anzapfen ob es zwischenzeitlich noch etwas aktuelleres gibt?
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: ThomasH am 08 April 2013, 14:15:12
Hallo,

ja da gebe ich dir natürlich Recht, bin ja auch ganz Neu hier und einfach was zu verschicken birgt natürlich ein Risiko.
Ich finde nur das Angebot von Markus echt cool.
Bis jetzt habe ich meine AV-Receiver meist in der Nähe gekauft, von daher kenne ich das Thema Transportschäden nicht.
Evtl. wäre es ja in dem Zusammenhang auch ne Option im Internet mit 2-wöchigem Rückgaberecht mal drüber nachzudenken.

Ich bin noch bei den Anfängen von fhem, zZ nutze ich die Software iRule http://www.iruleathome.com/ (//www.iruleathome.com/) da hatte ich mir mal paar Codes gebastelt, die sind aber mittlerweile alle in der Datenbank direkt enthalten.

Im Idealfall hast du für deine Geräte diskrete Codes, wenn ich zB auf den Button Radio drücke werden 2 Befehle abgesetzt: "AV-Receiver mit Quelle Tuner ein" und "TV aus".

Gruß Thomas
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: Mario K am 08 April 2013, 14:35:52
Anbei das aktuellste Protokoll (ISCP) von Onkyo.
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: Markus Bloch am 08 April 2013, 16:37:11
Zitat von: ThomasH schrieb am Mo, 08 April 2013 14:15Evtl. wäre es ja in dem Zusammenhang auch ne Option im Internet mit 2-wöchigem Rückgaberecht mal drüber nachzudenken.

Gute Idee, wenn ich wieder Bereitschaft habe währe das eine gute Möglichkeit die Umsetzung durchzuführen. Werd ich mal schauhen. Aktuell sind die kommenden Wochenenden im April bereits verplant.

Viele Grüße

Markus
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: KIDzero am 08 April 2013, 17:14:37
Hallo Leute,

schön das hier wieder was geht. Stehe sehr gerne als Tester zur Verfügung.

Gruß KIDzero
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: ThomasH am 13 April 2013, 08:21:19
Hallo,

in dem Zusammenhang vielleicht für den einen oder anderen interessant:

http://www.avforums.com/forums/18773181-post306.html (//www.avforums.com/forums/18773181-post306.html)

Dort hat jmd eine Websteuerung gebastelt.
Läuft auf meinem Raspberry einwandfrei.

Gruß Thomas
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: rtv am 13 April 2013, 17:55:58
Zitat von: ThomasH schrieb am Sa, 13 April 2013 08:21Dort hat jmd eine Websteuerung gebastelt.

Das ist nicht so weit entfernt von meinem derzeitigen Behelf in FHEM ;)
Die "Aktion" ist dabei nicht anderes als eine LightScene, bei der ich Kino (Alles an, Lichter aus), TV, Konsole, Streaming, Lesen, etc. wählen kann.

Nachteil derzeit: Keine Logik um Befehle auszulassen, wenn z.B. der Receiver manuell eingeschaltet wurde.


(siehe Anhang / see attachement)
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: ThomasH am 13 April 2013, 18:04:35
Wow, das sieht richtig richtig gut aus, ich hoffe ich komme auch mal soweit ;-)

Bzgl. der Logik: wenn du diskrete Codes hast, ist das doch eigentlich egal.

Gruß Thomas
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: justme1968 am 13 April 2013, 18:30:57
bei welchem anwendungsfall hast du denn genau das problem mit der fehlenden logik ?

ich könnte dir anbieten in die LightScene einzubauen das ein set nur dann ausgeführt wird wenn der aktuelle status ungleich dem gespeicherten ist.

gruss
  andre
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: rtv am 13 April 2013, 18:31:47
Zitat von: ThomasH schrieb am Sa, 13 April 2013 18:04Bzgl. der Logik: wenn du diskrete Codes hast, ist das doch eigentlich egal.

Leider nicht. Ich verwende beispielsweise ein Notify, das den Receiver muted, sobald auf der FritzBox ein Telefonat eingeht. Der Mute-Befehl hat bereits des öfteren den Receiver angeschaltet. Leider nicht reproduzierbar...
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: rtv am 13 April 2013, 18:39:30
Zitat von: justme1968 schrieb am Sa, 13 April 2013 18:30ich könnte dir anbieten in die LightScene einzubauen das ein set nur dann ausgeführt wird wenn der aktuelle status ungleich dem gespeicherten ist.

Hallo Andre,

das wäre schon hilfreich. Darüber hinaus müsste ich aber auch für jedes Gerät eine Eigenschaft hinzufügen, ob der letzte Vorgang automatisiert oder vom Benutzer ausgelöst wurde. Richtig gut (und alltagstauglich) ist es schließlich erst, wenn man nicht wissen muss, welche Status Geräte haben könnten, sondern immer einfach das Auswählen kann, was man gerade wünscht ;-)

Schöne Grüße, Ralf
Titel: Aw: RS-232 Modul für AV-Geräte
Beitrag von: justme1968 am 13 April 2013, 18:46:48
ich bin mir nicht sicher ob ich den unterschied zwischen automatisch oder manuell ausgelöst verstehe. meinst du wenn du von hand ein mute gemacht hast sollte die LightScene beim schalten einer szene das mute nicht rückgänig machen? das würde dann aber im anderen fall das du es doch rüchgängig machen willst nicht funktionieren. ein ähnliches problem haben z.b. auch die harmony fernbedienungen. die lösung da ist dann eine aktion doppelt anzulegen mit und ohne mute.

wie wäre es mute nicht direkt zu schalten sondern über einen dummy der nur dann schaltet wenn ein zweiter dummy einen bestimmtem zustand hat. dieser zweite dummy wäre dann manuell bedienbar und würde das automatische kommando unterdrücken.

was das mute angeht würde ich aber eigentlich dahin tendieren das es ein fehler im modul ist und kommandos nur ausgefürt werden sollten wenn das device auch an ist.

gruss
  andre
Titel: Antw:RS-232 Modul für AV-Geräte
Beitrag von: strauch am 09 Januar 2014, 14:20:26
Hallo,

ich, hänge mich mal an dieses Thema ran. Ich hab eine Classé Audio SSP-25 und überlege wie ich die ansteuern könnte. Infrarot wäre möglich, sie hat aber auch ein RS232 Interface. (Die Anleitung dazu habe ich mal angehangen). Nun ist meine erste Überlegung wie verbinde ich sie mit FHEM. Ginge das über RS232 und RJ45 Adapter (sowas z.B: http://ju-tec.de/art/102/102913/WIZ110SR-Serial-to-Ethernet-Modul-Schnittstelle-Ethernet-RS232-5VDC/). Ein Netzwerk wäre vorhanden. Oder wie habt ihr das gelöst?

Kann ich das Onkyo Modul zum umschreiben nutzen, bin für alle Tipps dankbar.

Grüße

strauch