Autor Thema: Modul für Yamaha Musiccast  (Gelesen 35187 mal)

Offline Pythonf

  • Full Member
  • ***
  • Beiträge: 456
Modul für Yamaha Musiccast
« am: 20 Juni 2016, 10:28:46 »
EDIT
Auf Seite 2 befindet sich ein deutlich fortschrittlicheres Modul, als das hier angehängte. Die aktuelle Version findet sich im Verlauf des Beitrages
Vielen Dank an Stefan alias Leugi dafür!

Im Anhang eine erste Version zur Steuerung von Yamaha Musiccast Geräten, die zum größten Teilen auf der Demo.pm von dev0 beruht. Alle Funktionen sind auf einem Yamaha R-N602 Verstärker getestet.
Was bisher geht:
  • Lautstärker einstellen (über Zahleneingabe)
  • Wahl des Eingangssignals
  • Ein/Ausschalten (aus Netzwerkstandby)
  • Abfragen von aktuellen Informationen (Lautstärke, Power, Input)
  • Abfragen von allgemeinen Informationen (Input-Liste, maximale Lautstärke)
Neu
  • Mute-Funktion

Hier muss ich anmerken, dass alle get-Befehle bis auf presence noch nicht sinnvoll funktionieren. Da dies mein erstes Modul ist können sicherlich Fehler auftreten und eine Stellen sind unschön geschrieben. Ich versuche das mit der Zeit zu verbessen und auszubauen und nehme Verbesserungsvorschläge gerne entgegen. Falls jemand die Power befehle (standby und on) in das dropdown menu integriert bekommt und eventuell ein intervall zum abfragen der Daten integriert bekommt wäre das schon mal ein sehr guter Anfang zu einem schöneren Modul.

#Alter Post
Leider lässt sich der Yamaha R-N602 Netzwerk Stereoreciever nicht mit dem Yamaha_AVR Modul ansprechen.
Es scheint auch so, dass Yamaha hier keine API herraus gegeben hat und leider gehöre ich zu den FHEM Nutzern mit nur sehr geringen Programmierkenntnissen.
Ich würde mich aber sehr freuen, wenn sich jemand findet, der mit mir ein Modul entwicklen könnte.


Beste Grüße
Fabian
« Letzte Änderung: 01 April 2017, 12:13:57 von Pythonf »
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline Pythonf

  • Full Member
  • ***
  • Beiträge: 456
Antw:Yamaha R-N602 / Musiccast über FHEM ansteuern
« Antwort #1 am: 18 Juli 2016, 14:38:27 »
Mir ist aufgefallen, dass das YAMAHA_AVR das falsche Modul ist und es bereits das YAMAHA_NP-Modul hierfür gibt.
Leider scheint das aber nicht erfolgreich zu funktionieren:
Internals:
   DEF        192.168.37.29
   NAME       Amp_Wohnzimmer
   NR         149
   STATE      absent
   TYPE       YAMAHA_NP
   Readings:
     2016-07-18 14:26:20   power           0
     2016-07-18 14:26:44   presence        absent
     2016-07-18 14:26:44   state           absent
   Helper:
     ADDRESS    192.168.37.29
     AVAILABLE  0
     DISABLED   0
     OFF_INTERVAL 30
     ON_INTERVAL 30
Attributes:
   group      Audio
   room       Wohnzimmer
   webCmd     input:volume:mute:volumeDown:volumeUp
Gerät ist eingeschaltet, spielt Musik über Internet und lässt sich pingen.
Da sich das Gerät aber auch nicht über die Network Player Controller App steuern lässt sonder nur über die Musiccast-App nehm ich an, dass die Musiccast-App ein anderes Protokoll spricht.
Gibt es für mich als Laien eine Möglichkeit hier irgendwie die Steuerung über FHEM zu ermöglichen?

Grüße
Fabian

Offline Markus Bloch

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 3488
Antw:Yamaha R-N602 / Musiccast über FHEM ansteuern
« Antwort #2 am: 18 Juli 2016, 23:37:18 »
Hallo Fabian,

siehe dazu: https://forum.fhem.de/index.php/topic,47948.0.html

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)

Offline Pythonf

  • Full Member
  • ***
  • Beiträge: 456
Antw:Yamaha R-N602 / Musiccast über FHEM ansteuern
« Antwort #3 am: 19 Juli 2016, 09:26:34 »
Ich hab mal mit Wireshark ein wenig was aufgenommen. Vielleicht findet sich jemand, der sich das eventuell mit mir ansehen möchte, da ja auch in anderen Threads Interesse besteht.
Was ich getan habe war erstmal die Musiccast-App starten und dann:
- Einschalten
- Opt.2 Auswählen
- Opt.1 Auswählen
- Lautstärker verringern
- Lautstärke erhöhen
- Ausschalten

mit "ip.dst==192.168.37.29"

Außerdem findet man im Netz etwas:
https://www.symcon.de/forum/threads/24471-Sonos-Alternativen-!/page4 (aktuell letzer Eintrag, JSON-Schnittstelle)
https://github.com/neutmute/neutmute.github.io/blob/master/_posts/blog/2016-04-04-Yamaha-Musiccast-Protocol.md

z.B. On/Off
IP:80/YamahaExtendedControl/v1/main/setPower?power=on
IP:80/YamahaExtendedControl/v1/main/setPower?power=standby
IP:80/YamahaExtendedControl/v1/main/setVolume?volume=100 (Max Werte hab ich noch nicht in Erfahrung gebracht)

Und:
IP:80/YamahaExtendedControl/v1/main/prepareInputChange?input=optical1
IP:80/YamahaExtendedControl/v1/main/setInput?input=optical1

IP:80/YamahaExtendedControl/v1/system/getTag
liefert die möglichen Input-Arten:
{"response_code":0,"zone_list":[{"id":"main","tag":0}],"input_list":[{"id":"tuner","tag":0},{"id":"phono","tag":0},{"id":"optical1","tag":0},{"id":"optical2","tag":0},{"id":"coaxial1","tag":0},{"id":"coaxial2","tag":0},{"id":"line1","tag":0},{"id":"line2","tag":0},{"id":"line3","tag":0},{"id":"line_cd","tag":0},{"id":"usb","tag":0},{"id":"bluetooth","tag":0},{"id":"server","tag":0},{"id":"net_radio","tag":0},{"id":"napster","tag":0},{"id":"spotify","tag":0},{"id":"juke","tag":0},{"id":"airplay","tag":0},{"id":"mc_link","tag":0}]}
Grüße
Fabian
« Letzte Änderung: 29 Juli 2016, 17:09:15 von Pythonf »

Offline Pythonf

  • Full Member
  • ***
  • Beiträge: 456
Antw:Yamaha Musiccast-Modul - Yamaha R-N602
« Antwort #4 am: 29 Juli 2016, 17:47:06 »
Ich hab nun mal alle bekannten Befehle in einem PDF Dokument zusammen mit den Antworten des R-N602 (geht aber wahrscheinlich auch mit allen anderen Musiccast-Geräten) gesammelt.
Wenn sich jemand finden würde, der mir ein wenig bei einem Modul helfen könnte würde mich das sehr weiterbringen. Ich hab mir die anderen Yamaha-Module angesehn und denke, dass sie sich nicht sehr unterscheiden bis auf eine andere Adresse, komme aber leider nicht wirklich weiter. Gerade Ein/Aus-Schalten, Lautstärke und Wahl des Eingangssignals interessieren mich, aber irgendwie durchblick ich das nicht so ganz.

Grüße
Fabian

Offline dev0

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3454
    • _.:|:._
Antw:Yamaha Musiccast-Modul - Yamaha R-N602
« Antwort #5 am: 30 Juli 2016, 12:11:42 »
Funktionieren die ermittelten URLs, wenn Du sie im Browser aufrufst?

Zitat
Wenn sich jemand finden würde, der mir ein wenig bei einem Modul helfen könnte
Grundlegende Infos zur Modulentwicklung findest Du hier: http://www.fhemwiki.de/wiki/Kategorie:Development
Einen Einstieg in Perl und regexp findet man z.B. hier: https://wiki.selfhtml.org/wiki/Perl

Bestehende Module anzupassen war für mich ein guter Weg einzusteigen. Das, von Dir angesprochene, Yamaha_AVR Modul ist aber schon recht umfangreich und komplex und daher mMn nur bedingt zum Lernen geeignet . Wenn Du magst, dann dengel ich Dir ein minmalst Modul zusammen, das http urls nonblocking aufruft und die Antworten in Readings schreiben kann. Vielleicht findest Du ja so den Anfang...

Offline Pythonf

  • Full Member
  • ***
  • Beiträge: 456
Antw:Yamaha Musiccast-Modul - Yamaha R-N602
« Antwort #6 am: 30 Juli 2016, 15:57:47 »
Die links funktionieren im Browser. Eine Minimalsversion mit einem get und einem set sowie einem reading sollte mir wahrscheinlich schon sehr weiterhelfen und ich würd mich sehr darüber freun.

Gruß Fabian

Offline dev0

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3454
    • _.:|:._
Antw:Yamaha Musiccast-Modul - Yamaha R-N602
« Antwort #7 am: 31 Juli 2016, 07:04:03 »
Schau mal, ob Du damit etwas anfangen kannst...

miktin

  • Gast
Antw:Modul für Yamaha Musiccast
« Antwort #8 am: 02 August 2016, 20:31:47 »
Hallo
Hab auch 2 musiccast Geräte. Ein wx-030 und ein isx-80. Hab leider auch noch keinen Erfahrung mit dem Modul schreiben. Beide Geräte lassen sich mit Power und der Befehlseingabe on einschalten. Ebenso läßt sich das Volumen mit Eingabe des Wertes regeln. Ausschalten mit off geht nicht. Ebenso ist es mir bis jetzt auch nicht gelungen das input zu wechseln z.B. netradio. Dachte zumindestens ich geb mal Rückmeldung.

miktin

  • Gast
Antw:Modul für Yamaha Musiccast
« Antwort #9 am: 02 August 2016, 20:43:39 »
Sehe gerade, geht aus mit standby. input geht tuner und net_radio.
« Letzte Änderung: 02 August 2016, 20:53:30 von miktin »


Offline Pythonf

  • Full Member
  • ***
  • Beiträge: 456
Antw:Modul für Yamaha Musiccast
« Antwort #11 am: 30 September 2016, 11:26:05 »
https://github.com/neutmute/neutmute.github.io/blob/master/_posts/blog/2016-04-04-Yamaha-Musiccast-Protocol.md
Hatte ich oben schon verlinkt.

Das andere Projekt sieht interessant aus, aber ich wüsste nicht direkt in wie weit das in einem FHEM-Modul Verwendung finden könnte.

Gruß
Fabian

Tscherno

  • Gast
Antw:Modul für Yamaha Musiccast
« Antwort #12 am: 06 Oktober 2016, 17:03:55 »
Ging mir mehr darum, etwas vom Protokoll ableiten zu können. Jetzt gibt es aber auch eine offizielle API:

https://jayvee.com.au/downloads/commands/yamaha/YXC_API_Spec_Basic.pdf

Offline sprudelverduenner

  • Full Member
  • ***
  • Beiträge: 134
Antw:Modul für Yamaha Musiccast
« Antwort #13 am: 10 Oktober 2016, 19:52:54 »
Hallo Zusammen,

ich ´besitze nun auch 2 MusicCast Komponenten und bin sehr an dem PlugIn interessiert.
Das beschriebene funktioniert auch bei mir bereits.

Geht da noch mehr? Interessant wäre für mich die Möglichkeit aus den Favoriten oder den net_radio Lesezeichen einen Internetradiosender starten zu können...

Zum testen wäre ich gerne bereit!

Schönen Abend
Sprudelverduenner
RaspberryPi 3 mit FHEM, HMLAN + HMRS485, Homematic, ESPEasy @ Sonoff / Shelly / ESP8266, ZigBee, Xiaomi Cube, Echo Dot, FRITZ!Box 7590, FRITZ!Repeater 1750E, FRITZ!Fon, iPhone 8, iPad Air, Dreambox, Yamaha MusicCast, Logitech Hub, LW-12 WiFi, LD382 WiFi

Offline Pythonf

  • Full Member
  • ***
  • Beiträge: 456
Antw:Modul für Yamaha Musiccast
« Antwort #14 am: 10 Oktober 2016, 22:28:35 »
Mehr gehen tut sicherlich, aber ich habe Momentan leider nicht die Zeit, mich um die Entwicklung zu kümmern, alleine schon deshalb, weil ich eigentlich keine Ahnung davon habe. Wenn aber jemand das Modul weiter entwickelt werde ich stets versuchen, den ersten Beitrag aktuell zu halten.
Es freut mich wenn ich mit dem, was ich mit viel Hilfe da zusammengebastelt habe schon helfen konnte.

Alternativ lässt sich ein Radio aber gut per dlna starten und dazu gibt es einige Module für FHEM (dlna modul oder Squeezebox modul um nur 2 zu nennen)

Gruß
Fabian
« Letzte Änderung: 10 Oktober 2016, 22:30:24 von Pythonf »