Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Neuer Adapter: Yamaha MusicCast

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Neuer Adapter: Yamaha MusicCast

    This topic has been deleted. Only users with topic management privileges can see it.
    • F
      foxthefox Developer last edited by

      @bahnuhr:

      Ok,

      der Fehler tritt wohl auf, wenn 1 Lautsprecher (also die IP) nicht erreichbar ist (weil z.B. der Lautsprecher nicht am Netz ist).

      Sollte / könnte man dies per Script im Adapter nicht abfangen ? `

      Im Verstärker gibt es eine Funktion Uhr/Clock. Diese ist nur für einen Tag setzbar. Es gibt an anderen Geräten Wochentagseinstellungen wo die Variable "anz", die zum Fehler führte, benutzt wird.

      Beim copy und paste ist da wohl nix von mir geändert worden.

      Hängt also nicht daran, ob etwas im Netz nicht erreichbar ist.

      Mit der Version 0.1.1 von GitHub sollte es jetzt besser sein und bei den Objekten auch ein clock vorhanden sein.

      Bitte testen und berichten.

      Gruß

      Klaus

      sigi234 bahnuhr 2 Replies Last reply Reply Quote 0
      • S
        Sinalco last edited by

        Ich kann ab Version 0.1.x nicht mehr meine Yamaha YAS-306 Soundbar richtig steuern. Einschalten geht nicht, aber ausschalten funktioniert. Mute schaltet ebenfalls aus... Bin jetzt auf 0.0.9 da funktioniert alles bestens.

        1 Reply Last reply Reply Quote 0
        • sigi234
          sigi234 Forum Testing Most Active @foxthefox last edited by sigi234

          @foxthefox said in Neuer Adapter: Yamaha MusicCast:

          @bahnuhr:

          Mit der Version 0.1.1 von GitHub sollte es jetzt besser sein und bei den Objekten auch ein clock vorhanden sein.

          Hallo, diesen DP habe ich bei meinen RX-V481 nicht?

          1 Reply Last reply Reply Quote 0
          • bahnuhr
            bahnuhr Forum Testing Most Active @foxthefox last edited by

            @foxthefox said in Neuer Adapter: Yamaha MusicCast:

            Im Verstärker gibt es eine Funktion Uhr/Clock. Diese ist nur für einen Tag setzbar. Es gibt an anderen Geräten Wochentagseinstellungen wo die Variable "anz", die zum Fehler führte, benutzt wird.
            Mit der Version 0.1.1 von GitHub sollte es jetzt besser sein und bei den Objekten auch ein clock vorhanden sein.

            Bitte testen und berichten.

            Gruß

            Klaus

            Hallo Klaus,
            habe 0.1.1 installiert.
            Fehler ist immer noch da.
            Clock ist bei mir nicht vorhanden. (habe auch Objekte gelöscht und neu erstellen lassen; trotzdem nicht da)

            mfg
            Dieter

            1 Reply Last reply Reply Quote 0
            • S
              Sinalco last edited by

              @Sinalco sagte in Neuer Adapter: Yamaha MusicCast:

              Ich kann ab Version 0.1.x nicht mehr meine Yamaha YAS-306 Soundbar richtig steuern. Einschalten geht nicht, aber ausschalten funktioniert. Mute schaltet ebenfalls aus... Bin jetzt auf 0.0.9 da funktioniert alles bestens.

              Ich hab jetzt mal 0.1.1 direkt von Github installiert aber das Problem besteht immer noch.

              Hier mal der Log mit Debug Ausgabe:

              musiccast.0	2019-03-08 19:50:16.450	debug	system.adapter.admin.0: logging true
              musiccast.0	2019-03-08 19:50:11.477	debug	sent power succesfully to main with false
              musiccast.0	2019-03-08 19:50:11.458	debug	sent power succesfully to main with false
              musiccast.0	2019-03-08 19:50:11.452	debug	IP configured : 192.168.178.26 for UID 01915823
              musiccast.0	2019-03-08 19:50:11.452	debug	config items : [{"ip":"192.168.178.26","type":"YAS-306","uid":"01915823","name":"Soundbar"}]
              musiccast.0	2019-03-08 19:50:11.451	debug	device with uid = 01915823
              musiccast.0	2019-03-08 19:50:11.451	info	MusicCast: musiccast.0.YAS-306_01915823.main.power identified for command with false
              musiccast.0	2019-03-08 19:50:11.451	debug	stateChange musiccast.0.YAS-306_01915823.main.power {"val":false,"ack":false,"ts":1552071011440,"q":0,"from":"system.adapter.javascript.0","user":"system.user.admin","lc":1552071011427}
              musiccast.0	2019-03-08 19:50:11.438	debug	IP configured : 192.168.178.26 for UID 01915823
              musiccast.0	2019-03-08 19:50:11.437	debug	config items : [{"ip":"192.168.178.26","type":"YAS-306","uid":"01915823","name":"Soundbar"}]
              musiccast.0	2019-03-08 19:50:11.437	debug	device with uid = 01915823
              musiccast.0	2019-03-08 19:50:11.436	info	MusicCast: musiccast.0.YAS-306_01915823.main.power identified for command with false
              musiccast.0	2019-03-08 19:50:11.435	debug	stateChange musiccast.0.YAS-306_01915823.main.power {"val":false,"ack":false,"ts":1552071011427,"q":0,"from":"system.adapter.javascript.0","user":"system.user.admin","lc":1552071011427}
              musiccast.0	2019-03-08 19:50:11.434	debug	stateChange musiccast.0.YAS-306_01915823.main.disable_flags {"val":0,"ack":true,"ts":1552071011402,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108425}
              musiccast.0	2019-03-08 19:50:11.432	debug	stateChange musiccast.0.YAS-306_01915823.main.link_audio_quality {"val":"uncompressed","ack":true,"ts":1552071011401,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":15520531
              musiccast.0	2019-03-08 19:50:11.431	debug	stateChange musiccast.0.YAS-306_01915823.main.link_audio_delay {"val":"audio_sync","ack":true,"ts":1552071011400,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":155205310842
              musiccast.0	2019-03-08 19:50:11.429	debug	stateChange musiccast.0.YAS-306_01915823.main.link_control {"val":"speed","ack":true,"ts":1552071011399,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108423}
              musiccast.0	2019-03-08 19:50:11.427	debug	stateChange musiccast.0.YAS-306_01915823.main.bass_extension {"val":true,"ack":true,"ts":1552071011398,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108422}
              musiccast.0	2019-03-08 19:50:11.426	debug	stateChange musiccast.0.YAS-306_01915823.main.subwoofer_volume {"val":4,"ack":true,"ts":1552071011397,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108422}
              musiccast.0	2019-03-08 19:50:11.424	debug	stateChange musiccast.0.YAS-306_01915823.main.clear_voice {"val":true,"ack":true,"ts":1552071011396,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108421}
              musiccast.0	2019-03-08 19:50:11.423	debug	stateChange musiccast.0.YAS-306_01915823.main.sound_program {"val":"music","ack":true,"ts":1552071011395,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108420}
              musiccast.0	2019-03-08 19:50:11.421	debug	stateChange musiccast.0.YAS-306_01915823.main.distribution_enable {"val":true,"ack":true,"ts":1552071011394,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108419}
              musiccast.0	2019-03-08 19:50:11.420	debug	stateChange musiccast.0.YAS-306_01915823.main.input {"val":"tv","ack":true,"ts":1552071011393,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108419}
              musiccast.0	2019-03-08 19:50:11.418	debug	stateChange musiccast.0.YAS-306_01915823.main.max_volume {"val":100,"ack":true,"ts":1552071011392,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108418}
              musiccast.0	2019-03-08 19:50:11.417	debug	stateChange musiccast.0.YAS-306_01915823.main.mute {"val":false,"ack":true,"ts":1552071011391,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552071011133}
              musiccast.0	2019-03-08 19:50:11.415	debug	stateChange musiccast.0.YAS-306_01915823.main.volume {"val":52,"ack":true,"ts":1552071011390,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108417}
              musiccast.0	2019-03-08 19:50:11.413	debug	stateChange musiccast.0.YAS-306_01915823.main.power {"val":"standby","ack":true,"ts":1552071011389,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552071011389}
              musiccast.0	2019-03-08 19:50:11.409	debug	stateChange musiccast.0.YAS-306_01915823.main.response_code {"val":0,"ack":true,"ts":1552071011385,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108414}
              musiccast.0	2019-03-08 19:50:11.405	debug	stateChange musiccast.0.YAS-306_01915823.main.getStatus {"val":{"response_code":0,"power":"standby","volume":52,"mute":false,"max_volume":100,"input":"tv","distribution_enable":true,"sound_program":"
              musiccast.0	2019-03-08 19:50:11.403	debug	stateChange musiccast.0.YAS-306_01915823.netusb.shuffle_available {"val":["off","on"],"ack":true,"ts":1552071011365,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":155207101
              musiccast.0	2019-03-08 19:50:11.402	debug	stateChange musiccast.0.YAS-306_01915823.netusb.repeat_available {"val":["off","one","all"],"ack":true,"ts":1552071011364,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":155
              musiccast.0	2019-03-08 19:50:11.401	debug	stateChange musiccast.0.YAS-306_01915823.netusb.attribute {"val":16777247,"ack":true,"ts":1552071011363,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552071011363}
              musiccast.0	2019-03-08 19:50:11.400	debug	stateChange musiccast.0.YAS-306_01915823.netusb.auto_stopped {"val":false,"ack":true,"ts":1552071011362,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108441}
              musiccast.0	2019-03-08 19:50:11.398	debug	stateChange musiccast.0.YAS-306_01915823.netusb.usb_devicetype {"val":"unknown","ack":true,"ts":1552071011361,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108441}
              musiccast.0	2019-03-08 19:50:11.397	debug	stateChange musiccast.0.YAS-306_01915823.netusb.albumart_id {"val":8031,"ack":true,"ts":1552071011361,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108440}
              musiccast.0	2019-03-08 19:50:11.396	debug	stateChange musiccast.0.YAS-306_01915823.netusb.albumart_url {"val":"","ack":true,"ts":1552071011360,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108439}
              musiccast.0	2019-03-08 19:50:11.395	debug	stateChange musiccast.0.YAS-306_01915823.netusb.track {"val":"","ack":true,"ts":1552071011359,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108438}
              musiccast.0	2019-03-08 19:50:11.394	debug	stateChange musiccast.0.YAS-306_01915823.netusb.album {"val":"","ack":true,"ts":1552071011359,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108438}
              musiccast.0	2019-03-08 19:50:11.392	debug	stateChange musiccast.0.YAS-306_01915823.netusb.artist {"val":"","ack":true,"ts":1552071011358,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108437}
              musiccast.0	2019-03-08 19:50:11.391	debug	stateChange musiccast.0.YAS-306_01915823.netusb.total_time {"val":0,"ack":true,"ts":1552071011357,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108436}
              musiccast.0	2019-03-08 19:50:11.390	debug	stateChange musiccast.0.YAS-306_01915823.netusb.play_time {"val":-60000,"ack":true,"ts":1552071011356,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108436}
              musiccast.0	2019-03-08 19:50:11.387	debug	stateChange musiccast.0.YAS-306_01915823.netusb.shuffle_stat {"val":"off","ack":true,"ts":1552071011353,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108435}
              musiccast.0	2019-03-08 19:50:11.382	debug	stateChange musiccast.0.YAS-306_01915823.netusb.repeat_stat {"val":"off","ack":true,"ts":1552071011346,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108434}
              musiccast.0	2019-03-08 19:50:11.381	debug	stateChange musiccast.0.YAS-306_01915823.netusb.playback {"val":"stop","ack":true,"ts":1552071011345,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108433}
              musiccast.0	2019-03-08 19:50:11.379	debug	stateChange musiccast.0.YAS-306_01915823.netusb.play_queue_type {"val":"system","ack":true,"ts":1552071011344,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108433}
              musiccast.0	2019-03-08 19:50:11.378	debug	stateChange musiccast.0.YAS-306_01915823.netusb.input {"val":"bluetooth","ack":true,"ts":1552071011341,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552071011341}
              musiccast.0	2019-03-08 19:50:11.376	debug	stateChange musiccast.0.YAS-306_01915823.netusb.response_code {"val":0,"ack":true,"ts":1552071011337,"q":0,"from":"system.adapter.musiccast.0","user":"system.user.admin","lc":1552053108431}
              musiccast.0	2019-03-08 19:50:11.335	debug	Zone Status Update disable_flags at 0
              musiccast.0	2019-03-08 19:50:11.335	debug	Zone Status Update link_audio_quality at uncompressed
              musiccast.0	2019-03-08 19:50:11.335	debug	Zone Status Update link_audio_delay at audio_sync
              musiccast.0	2019-03-08 19:50:11.334	debug	Zone Status Update link_control at speed
              musiccast.0	2019-03-08 19:50:11.334	debug	Zone Status Update bass_extension at true
              musiccast.0	2019-03-08 19:50:11.334	debug	Zone Status Update subwoofer_volume at 4
              musiccast.0	2019-03-08 19:50:11.333	debug	Zone Status Update clear_voice at true
              musiccast.0	2019-03-08 19:50:11.330	debug	Zone Status Update sound_program at music
              musiccast.0	2019-03-08 19:50:11.330	debug	Zone Status Update distribution_enable at true
              musiccast.0	2019-03-08 19:50:11.330	debug	Zone Status Update input at tv
              musiccast.0	2019-03-08 19:50:11.329	debug	Zone Status Update max_volume at 100
              musiccast.0	2019-03-08 19:50:11.329	debug	Zone Status Update mute at false
              musiccast.0	2019-03-08 19:50:11.329	debug	Zone Status Update volume at 52
              musiccast.0	2019-03-08 19:50:11.328	debug	Zone Status Update power at standby
              musiccast.0	2019-03-08 19:50:11.328	debug	Zone Status Update response_code at 0
              musiccast.0	2019-03-08 19:50:11.327	debug	got status info succesfully from 192.168.178.26 for main
              musiccast.0	2019-03-08 19:50:11.327	debug	stateChange musiccast.0.YAS-306_01915823netusb.getPlayInfo {"val":{"response_code":0,"input":"bluetooth","play_queue_type":"system","playback":"stop","repeat":"off","shuffle":"off","play_time":-60000
              musiccast.0	2019-03-08 19:50:11.324	debug	albumart
              musiccast.0	2019-03-08 19:50:11.318	debug	got Netusb playinfo succesfully from 192.168.178.26with "{\"response_code\":0,\"input\":\"bluetooth\",\"play_queue_type\":\"system\",\"playback\":\"stop\",\"repeat\":\"off\",\"shuffle\":\"off\",\"pl
              musiccast.0	2019-03-08 19:50:11.305	debug	processing update from: [object Object] with {"main":{"signal_info_updated":true},"netusb":{"play_info_updated":true,"play_queue":{"updated":true}},"device_id":"00A0DEFEA471"}
              musiccast.0	2019-03-08 19:50:11.304	debug	server got:{"main":{"signal_info_updated":true},"netusb":{"play_info_updated":true,"play_queue":{"updated":true}},"device_id":"00A0DEFEA471"} from 192.168.178.26
              musiccast.0	2019-03-08 19:50:11.206	debug	sent power succesfully to main with false
              musiccast.0	2019-03-08 19:50:11.190	debug	sent power succesfully to main with false
              musiccast.0	2019-03-08 19:50:11.186	debug	IP configured : 192.168.178.26 for UID 01915823
              musiccast.0	2019-03-08 19:50:11.186	debug	config items : [{"ip":"192.168.178.26","type":"YAS-306","uid":"01915823","name":"Soundbar"}]
              musiccast.0	2019-03-08 19:50:11.185	debug	device with uid = 01915823
              musiccast.0	2019-03-08 19:50:11.185	info	MusicCast: musiccast.0.YAS-306_01915823.main.power identified for command with false
              musiccast.0	2019-03-08 19:50:11.183	debug	stateChange musiccast.0.YAS-306_01915823.main.power {"val":false,"ack":false,"ts":1552071011176,"q":0,"from":"system.adapter.javascript.0","user":"system.user.admin","lc":1552071011163}
              musiccast.0	2019-03-08 19:50:11.172	debug	IP configured : 192.168.178.26 for UID 01915823
              musiccast.0	2019-03-08 19:50:11.172	debug	config items : [{"ip":"192.168.178.26","type":"YAS-306","uid":"01915823","name":"Soundbar"}]
              musiccast.0	2019-03-08 19:50:11.171	debug	device with uid = 01915823
              musiccast.0	2019-03-08 19:50:11.171	info	MusicCast: musiccast.0.YAS-306_01915823.main.power identified for command with false
              
              1 Reply Last reply Reply Quote 0
              • bahnuhr
                bahnuhr Forum Testing Most Active last edited by

                zu clock

                erscheint bei mir bei einem Lautsprecher 021 (also die neuen MC 20)

                Bei den alten (010 und 030) erscheint der Punkt "clock" nicht.
                Ebenfalls bei meinem Receiver RX-v685 nicht.

                Vermutlich erscheint "clock" nur bei den Lautsprechern die dies auch anbieten ?!?!!?

                mfg
                Dieter

                sigi234 1 Reply Last reply Reply Quote 0
                • sigi234
                  sigi234 Forum Testing Most Active @bahnuhr last edited by sigi234

                  @bahnuhr

                  Hallo, bei mir wird im Yamaha Adapter Clock angezeigt. Im MusicCast Adapter nicht.
                  Also den DP gibt es und funktioniert auch unter RDSCLOCK.

                  YAMAHA

                  Screenshot (2269).png

                  MusicCast

                  Screenshot (2271).png

                  1 Reply Last reply Reply Quote 0
                  • bahnuhr
                    bahnuhr Forum Testing Most Active last edited by

                    sigi hast recht.

                    Im yamaha Adapter (bei mir für den Receiver RX-v685) hab ich auch den Punkt rdsclock.

                    Im MC nicht.

                    1 Reply Last reply Reply Quote 0
                    • U
                      Unbeliveable89 last edited by

                      Hallo Leute,

                      ich bin in den letzten Wochen von Bose SoundTouch auf Musiccast umgestiegen. Der SoundTouch-Adapter von ioBroker hat bisher ganz gut funktioniert, nur musste man pro Lautsprecher eine eigene Instanz anlegen, dies scheint mit dem Musiccast Adapter besser gelöst zu sein. Nur muss ich hier mit den ganzen Paramentern erst einmal durchsteigen. Trotzdem vorab ein großes Danke an Fox! 🙂

                      Ich habe folgende Komponenten:

                      • 1x AVR RX-V683
                      • 3x MusicCast 20 (WX-021)
                      • 1x ISX-80

                      Die MC 20 wurden von der Suche leider nicht automatisch erkannt. Manuell hinzufügen hat soweit geklappt, allerdings habe ich hier bemerkt, dass bei den erkannten anderen Geräten die System-ID und nicht die Geräte-ID unter Geräte-ID eingetragen wird.

                      Ich vermute, dass die System-ID das genaue Modell identifiziert - somit kommt es wohl zu Problemen bei mehreren Lautsprechern/Receivern des selben Modells, was bei einem Multiroom-System durchaus passieren kann. 🙂 Sollte evtl. in der nächsten Version angepasst werden?

                      Ansonsten bin ich mich mal durch die Datenpunkte wühlen.. gibt hier ja einige.

                      Danke nochmal vorab! 🙂

                      Viele Grüße,
                      Alex

                      M 1 Reply Last reply Reply Quote 0
                      • M
                        mghomedev @Unbeliveable89 last edited by

                        @Unbeliveable89
                        Den bug habe ich auch bemerkt - man kann aktuell nicht mehr als einen Receiver unterstützen (insbesondere Problem bei Multi-Zone Yamaha Receivern).
                        Ein einfacher Workaround ist, die Konfiguration als JSON-Datei im Musiccast Adapter zu exportieren (dafür gibt es da extra einen Knopf), dann leicht darin pro Receiver die uid zu ändern und dann wieder zu importieren.

                        Plötzlich hat man alle Receiver als Objekte und kann sie einzeln ansteuern.

                        Ich hoffe aber auch, dass das gefixt wird 🙂

                        1 Reply Last reply Reply Quote 0
                        • frank2604
                          frank2604 last edited by

                          Hallo zusammen,

                          habe seit einer Woche jetzt auch ein Yamaha AVR/Multiroom-System (RX-A 1080 + 4 Stück WX-021 (2 davon Surround-Back-LS)) ☺

                          Habe nun den MusicCast-Adapter in Betrieb genommen und mich durch die DP gearbeitet. Soweit erstmal alles klar.

                          VIELEN DANK AN KLAUS FÜR DIE TOLLE ARBEIT 👍

                          Bei einem Punkt brauche ich aber Eure Hilfe: Wie kann ich Räume verlinken bzw. wieder aufheben?

                          Danke vorab!

                          Grüße

                          Frank

                          bahnuhr 1 Reply Last reply Reply Quote 0
                          • bahnuhr
                            bahnuhr Forum Testing Most Active @frank2604 last edited by

                            @frank2604 sagte in Neuer Adapter: Yamaha MusicCast:

                            Wie kann ich Räume verlinken bzw. wieder aufheben?

                            Meinst du Räume gruppieren?

                            Dies geht mit dem Adapter nicht.

                            Muss du manuell mit einem Script machen.

                            mfg

                            1 Reply Last reply Reply Quote 0
                            • frank2604
                              frank2604 last edited by

                              Hallo Dieter,

                              Danke für Deine Rückmeldung.

                              Hmm, mit Skripten kenne ich mich nicht aus. Hättest Du die Nerven, mich dabei an die Hand zu nehmen?

                              Frank

                              1 Reply Last reply Reply Quote 0
                              • bahnuhr
                                bahnuhr Forum Testing Most Active last edited by

                                Hallo,
                                du musst dir die api Befehle für dein Modell bei deinem Verkäufer besorgen.
                                Direkt bei yamaha funktioniert dies i.d.R. nicht. Diese fragen deinen Verkäufer und senden letztendlich die api an deinen Händler.

                                Nach mehrmaligen Mails mit yamaha (und diese haben das dann intern abklären müssen) hab ich die api für mein Modell vom Händler als auch von yamaha bekommen.

                                Diese musst du zuerst besorgen.
                                Und dann halt versuchen ein script zu erstellen.

                                mfg

                                1 Reply Last reply Reply Quote 0
                                • frank2604
                                  frank2604 last edited by

                                  OK, klingt als hättest Du das "Räume gruppieren" bei Dir so umgesetzt. Werde mich um die api Befehle kümmern. Hast Du eventuell eine Beispiel für ein solches Skript?

                                  Danke & Grüße

                                  Frank

                                  1 Reply Last reply Reply Quote 0
                                  • bahnuhr
                                    bahnuhr Forum Testing Most Active last edited by bahnuhr

                                    
                                    // **************************************************************************************************************************************************
                                    // Yamaha - Gruppe einstellen und löschen per Script
                                    // @ 2019_02 bahnuhr
                                    // **************************************************************************************************************************************************
                                    
                                    
                                    // Variablen
                                        var v_server = "",      v_client = [],      v_random = "",      i_ende = 120,       logging = false,    request = require('request');
                                    
                                    // **************************************************************************************************************************************************
                                    // Trigger
                                    // **************************************************************************************************************************************************
                                        on({id: "javascript.0.Status.Yamaha.Gruppe.einstellen", change: "ne", val: true}, function() {      start_setzen();     }); 
                                        on({id: "javascript.0.Status.Yamaha.Gruppe.loeschen", change: "ne", val: true}, function() {        start_loeschen();   }); 
                                    
                                    
                                    // **************************************************************************************************************************************************
                                    // Programme Start - setzen und löschen
                                    // **************************************************************************************************************************************************
                                        function start_setzen() {
                                        // Ablauf des Scriptes 
                                            // Master und Client ermitteln
                                                Master_ermitteln();     Client_ermitteln();     v_random = "";
                                                for (x=1; x<=32; x++)   v_random = v_random + String(Math.floor(Math.random() * 10));  
                                                if (logging) log('start_setzen: v_random = ' + v_random);
                                                if (v_server !== "" && v_client.length > 0)  { MusicCast_Client_setzen(); MusicCast_Master_setzen(); } else log("start_setzen: Gruppe nicht gesetzt !");       // prüfen ob mindestens 1 Server und 1 Client gesetzt ist
                                                Lautstaerke_setzen();   pruefen_client_gesetzt();
                                        }
                                        function start_loeschen() {
                                            // Client loeschen
                                                for (x = 110; x <= i_ende ; x++)    pruef_client(x);    // 1. und letzte IP -> 192.168.243.....
                                            // Master loeschen und Distribution stop
                                                for (x = 110; x <= i_ende ; x++)    pruef_master(x);    // 1. und letzte IP -> 192.168.243.....
                                            setState('javascript.0.Status.Yamaha.Gruppe.Mitteilung', "Gruppe gelöscht.");
                                            setStateDelayed('javascript.0.Status.Yamaha.Gruppe.Mitteilung', "", 3000);
                                        }
                                    
                                    
                                    // **************************************************************************************************************************************************
                                    // Unterprogramme Starten
                                    // **************************************************************************************************************************************************
                                        function Master_ermitteln() {
                                            if (getState('javascript.0.Status.Yamaha.Gruppe.Master_Wohnzimmer').val)            v_server = "192.168.243.110";
                                            else if (getState('javascript.0.Status.Yamaha.Gruppe.Master_Schlafzimmer').val)     v_server = "192.168.243.111";
                                            else if (getState('javascript.0.Status.Yamaha.Gruppe.Master_Philipp').val)          v_server = "192.168.243.112";
                                            else if (getState('javascript.0.Status.Yamaha.Gruppe.Master_Buero').val)            v_server = "192.168.243.113";
                                            else if (getState('javascript.0.Status.Yamaha.Gruppe.Master_Bad_EG').val)           v_server = "192.168.243.114";
                                            else if (getState('javascript.0.Status.Yamaha.Gruppe.Master_Kueche').val)           v_server = "192.168.243.115";
                                            else if (getState('javascript.0.Status.Yamaha.Gruppe.Master_Fitnessraum').val)      v_server = "192.168.243.116";
                                            else if (getState('javascript.0.Status.Yamaha.Gruppe.Master_Hobbyraum').val)        v_server = "192.168.243.117";
                                            else if (getState('javascript.0.Status.Yamaha.Gruppe.Master_Gaeste-WC').val)        v_server = "192.168.243.118";
                                            else if (getState('javascript.0.Status.Yamaha.Gruppe.Master_Sauna').val)            v_server = "192.168.243.119";
                                            else if (getState('javascript.0.Status.Yamaha.Gruppe.Master_Test2').val)            v_server = "192.168.243.120";
                                            if (logging) log('Master_ermitteln: v_server = ' + v_server);
                                            return v_server;
                                        }
                                        function Client_ermitteln() {
                                            v_client = [];
                                            if (getState('javascript.0.Status.Yamaha.Gruppe.Client_Wohnzimmer').val && getState('ping.0.Asus-Buero.192_168_243_110').val)       v_client.push ("192.168.243.110");
                                            if (getState('javascript.0.Status.Yamaha.Gruppe.Client_Schlafzimmer').val && getState('ping.0.Asus-Buero.192_168_243_111').val)     v_client.push ("192.168.243.111");
                                            if (getState('javascript.0.Status.Yamaha.Gruppe.Client_Philipp').val && getState('ping.0.Asus-Buero.192_168_243_112').val)          v_client.push ("192.168.243.112");
                                            if (getState('javascript.0.Status.Yamaha.Gruppe.Client_Buero').val && getState('ping.0.Asus-Buero.192_168_243_113').val)            v_client.push ("192.168.243.113");
                                            if (getState('javascript.0.Status.Yamaha.Gruppe.Client_Bad_EG').val && getState('ping.0.Asus-Buero.192_168_243_114').val)           v_client.push ("192.168.243.114");
                                            if (getState('javascript.0.Status.Yamaha.Gruppe.Client_Kueche').val && getState('ping.0.Asus-Buero.192_168_243_115').val)           v_client.push ("192.168.243.115");
                                            if (getState('javascript.0.Status.Yamaha.Gruppe.Client_Fitnessraum').val && getState('ping.0.Asus-Buero.192_168_243_116').val)      v_client.push ("192.168.243.116");
                                            if (getState('javascript.0.Status.Yamaha.Gruppe.Client_Hobbyraum').val && getState('ping.0.Asus-Buero.192_168_243_117').val)        v_client.push ("192.168.243.117");
                                            if (getState('javascript.0.Status.Yamaha.Gruppe.Client_Gaeste-WC').val && getState('ping.0.Asus-Buero.192_168_243_118').val)        v_client.push ("192.168.243.118");
                                            if (getState('javascript.0.Status.Yamaha.Gruppe.Client_Sauna').val && getState('ping.0.Asus-Buero.192_168_243_119').val)            v_client.push ("192.168.243.119");
                                            if (getState('javascript.0.Status.Yamaha.Gruppe.Client_Test').val && getState('ping.0.Asus-Buero.192_168_243_120').val)             v_client.push ("192.168.243.120");
                                            if (logging) log('Client_ermitteln: v_client = ' + v_client.join(', '));
                                            return v_client;
                                        }
                                        function MusicCast_Client_setzen() {
                                            for (x=0; x < v_client.length ; x++) {
                                                var options = {uri: 'http://' + v_client[x] + '/YamahaExtendedControl/v1/dist/setClientInfo', method: 'POST', json: {group_id:v_random, zone:"main", server_ip_address: v_server }};
                                                request(options);
                                            if (logging) log('MusicCast_Client_setzen: v_client = ' + v_client[x]);
                                            }
                                        }
                                        function MusicCast_Master_setzen() {
                                            // Master setzen
                                                var options = {uri: 'http://' + v_server + '/YamahaExtendedControl/v1/dist/setServerInfo', method: 'POST', json: {group_id:v_random, zone:"main", type:"add", client_list:[v_client]}};
                                                request(options);
                                            // Distribution starten
                                                request('http://' + v_server + '/YamahaExtendedControl/v1/dist/startDistribution?num=0');
                                            // prüfen ob "working"
                                                setTimeout(function() {
                                                    request('http://' + v_server + '/YamahaExtendedControl/v1/dist/getDistributionInfo', function (error, response, body) {
                                                    if (!error && response.statusCode == 200) {
                                                        var obj = JSON.parse(body);
                                                        if (logging) log ("MusicCast_Master_setzen: "+ v_server + ": obj.role = " + obj.role + " / obj.status = " + obj.status);
                                                        if (obj.role == "server" && obj.status == "working") {
                                                            setState('javascript.0.Status.Yamaha.Gruppe.Mitteilung', "Gruppe erstellt.");
                                                            setStateDelayed('javascript.0.Status.Yamaha.Gruppe.Mitteilung', "", 3000);
                                                        } else {
                                                            setState ('javascript.0.Status.Yamaha.Gruppe.Mitteilung', "Gruppe nicht erstellt.");
                                                            setStateDelayed('javascript.0.Status.Yamaha.Gruppe.Mitteilung', "", 3000);
                                                        }
                                                    }
                                                    });
                                                },2000);
                                        }
                                        function pruefen_client_gesetzt() {
                                            setTimeout(function() {
                                                for (x = 110; x <= i_ende ; x++) {         // 1. und letzte IP -> 192.168.243.....
                                                    pruefen_client_unter(x);
                                                }
                                            },3000);    
                                            
                                        }
                                        function pruefen_client_unter(x) {
                                            if (getState('ping.0.Asus-Buero.192_168_243_' + x).val) {
                                                request('http://192.168.243.' + x + '/YamahaExtendedControl/v1/dist/getDistributionInfo', function (error, response, body) {
                                                    if (!error && response.statusCode == 200) {
                                                        var obj = JSON.parse(body);
                                                        if (obj.group_id == "00000000000000000000000000000000" && (obj.role == "none" || obj.role == "client") ) {
                                                            if (x == 110) setState('javascript.0.Status.Yamaha.Gruppe.Client_Wohnzimmer', false);
                                                            if (x == 111) setState('javascript.0.Status.Yamaha.Gruppe.Client_Schlafzimmer', false);
                                                            if (x == 112) setState('javascript.0.Status.Yamaha.Gruppe.Client_Philipp', false);
                                                            if (x == 113) setState('javascript.0.Status.Yamaha.Gruppe.Client_Buero', false);
                                                            if (x == 114) setState('javascript.0.Status.Yamaha.Gruppe.Client_Bad_EG', false);
                                                            if (x == 115) setState('javascript.0.Status.Yamaha.Gruppe.Client_Kueche', false);
                                                            if (x == 116) setState('javascript.0.Status.Yamaha.Gruppe.Client_Fitnessraum', false);
                                                            if (x == 117) setState('javascript.0.Status.Yamaha.Gruppe.Client_Hobbyraum', false);
                                                            if (x == 118) setState('javascript.0.Status.Yamaha.Gruppe.Client_Sauna', false);
                                                            if (x == 119) setState('javascript.0.Status.Yamaha.Gruppe.Client_Gaeste-WC', false);
                                                            if (x == 120) setState('javascript.0.Status.Yamaha.Gruppe.Client_Test2', false);
                                                            if (logging) log ("pruefen_client_gesetzt: Anzeige VIS - client " + x + " auf false gesetzt!");
                                                        } else {
                                                            if (logging) log ("pruefen_client_gesetzt: Anzeige VIS - client " + x + " alles ok!");
                                                        }
                                                    }
                                                });
                                            }
                                        }
                                    
                                    
                                    
                                    // **************************************************************************************************************************************************
                                    // Unterprogramme Löschen
                                    // **************************************************************************************************************************************************
                                        function pruef_client(x) {
                                            if (getState('ping.0.Asus-Buero.192_168_243_' + x).val) {
                                                request('http://192.168.243.' + x + '/YamahaExtendedControl/v1/dist/getDistributionInfo', function (error, response, body) {
                                                    if (!error && response.statusCode == 200) {
                                                        var obj = JSON.parse(body);
                                                        if (logging) log ("löschen - pruef_client 192.168.243." + x + ": obj.group_id = " + obj.group_id + " / obj.role = " + obj.role);
                                                        if (obj.group_id != "00000000000000000000000000000000" && obj.role == "client") MusicCast_Client_loeschen(x);
                                                    }
                                                });
                                            }
                                        }
                                        function MusicCast_Client_loeschen(x) {
                                            var options = {uri: 'http://192.168.243.' + x + '/YamahaExtendedControl/v1/dist/setClientInfo', method: 'POST', json: {group_id:""}};
                                            if (logging) log ("MusicCast_Client_loeschen: Client 192.168.243." + x + ": gelöscht!");
                                            request(options);
                                        }
                                        function pruef_master(x) {
                                            if (getState('ping.0.Asus-Buero.192_168_243_' + x).val) {
                                                request('http://192.168.243.' + x + '/YamahaExtendedControl/v1/dist/getDistributionInfo', function (error, response, body) {
                                                    if (!error && response.statusCode == 200) {
                                                        var obj = JSON.parse(body);
                                                        if (logging) log ("löschen - pruef_master 192.168.243." + x + ": obj.group_id = " + obj.group_id + " / obj.role = " + obj.role);
                                                        if (obj.group_id != "00000000000000000000000000000000" && obj.role == "server") MusicCast_Master_loeschen(x);
                                                    }
                                                });
                                            }
                                        }
                                        function MusicCast_Master_loeschen(x) {
                                            // Distribution stop
                                                request('http://192.168.243.' + x + '/YamahaExtendedControl/v1/dist/stopDistribution');    
                                            var options = {uri: 'http://192.168.243.' + x + '/YamahaExtendedControl/v1/dist/setServerInfo', method: 'POST', json: {group_id:""}};
                                            if (logging) log ("MusicCast_Master_loeschen: Master 192.168.243." + x + ": gelöscht!");
                                            request(options);
                                        }
                                    
                                    
                                    // **************************************************************************************************************************************************
                                    // Sonstiges
                                    // **************************************************************************************************************************************************
                                        function Lautstaerke_setzen() {
                                            request('http://' + v_server + '/YamahaExtendedControl/v1/main/getStatus', function (error, response, body) {
                                                if (!error && response.statusCode == 200) {
                                                    var obj = JSON.parse(body);
                                                    if (v_server == "192.168.243.110") {
                                                        setState("musiccast.0.RX-V685_0DA87303.main.volume", 71);
                                                        if (logging) log ("Lautstaerke_setzen: Master: 192.168.243.110 Lautstärke gesetzt auf: 71");
                                                        Laut_Master_volume = 26;
                                                    } else {
                                                        Laut_Master_volume = obj.volume;
                                                        if (logging) log ("Lautstaerke_setzen: Master: " + v_server + " Lautstärke ist: " + obj.volume);
                                                    }
                                                    for (x=0; x < v_client.length ; x++) {
                                                        if (v_client[x] == "192.168.243.110") {
                                                            setState("musiccast.0.RX-V685_0DA87303.main.volume", 71);
                                                            if (logging) log ("Lautstaerke_setzen: Client: " + v_client[x] + " Lautstärke gesetzt auf: 71");
                                                        } else {
                                                            request('http://' + v_client[x] + '/YamahaExtendedControl/v1/main/setVolume?volume='+ Laut_Master_volume);
                                                            if (logging) log ("Lautstaerke_setzen: Client: " + v_client[x] + " Lautstärke ist: " + Laut_Master_volume);
                                                        }
                                                    }
                                                }    
                                            });
                                        }
                                    
                                    
                                    

                                    Und in VIS sieht es so aus:
                                    e8337c1b-33ae-4a54-bbe6-7881ff59444e-image.png

                                    Aufnahme_2019_05_12_08_39_05_53.mp4

                                    Ist aber nicht einfach zu verstehen.
                                    Du musst die Variablen manuell anlegen.
                                    Weiterhin hab ich ping eingebaut um zu ermitteln ob die Lautsprecher am Netz sind.
                                    Daneben musst du noch ein Script schreiben, das nur 1 x Master zulässt.
                                    Weiterhin müssen die Lautsprecher aufsteigende IP haben.

                                    Fazit:
                                    Wollte es eigentlich nicht zur Verfügung stellen, da es doch äußerst auf mich abgestimmt ist.
                                    Aber vielleicht kommst du damit zurecht.

                                    mfg

                                    Nachtrag:
                                    Und wenn dem Entwickler "foxthefox" die api Bausteine gefallen, dann kann er diese gerne verwenden.
                                    Aber dann kann er ja auch mal bei Verwendung meiner Script - Bausteine meinen forum Namen ja zumindest mal erwähnen.

                                    1 Reply Last reply Reply Quote 1
                                    • frank2604
                                      frank2604 last edited by

                                      Hallo Dieter,

                                      Danke für Deine Hilfe, aber da steige ich aus. Dann lässt sich das für mich leider nicht mit ioBroker umsetzen. Muss ich zum Gruppieren der Räume dann doch zum iPhone greifen.

                                      Trotzdem nochmals Danke.

                                      Frank

                                      1 Reply Last reply Reply Quote 0
                                      • frank2604
                                        frank2604 last edited by

                                        Hier noch ein Hinweis für Klaus:

                                        Der musiccast-Adapter bekommt nicht mit, wenn der Receiver über HDMI-CEC an- oder ausgeschaltet wurde. Der Status vom DP power ändert sich nur bei Bedienung über die Yamaha FB.

                                        Der Yamaha-Adapter hingegen schaltet auch bei HDMI-CEC den DP power um.

                                        Habe daher vorübergehend den Yamaha-Adapter mit hinzugenommen. Falls man das lösen kann, würde ich aber gerne nur den musiccast verwenden.

                                        Grüße

                                        Frank

                                        1 Reply Last reply Reply Quote 0
                                        • C
                                          Coffeelover last edited by

                                          Hi,

                                          ich glaube, ich leide an einem ähnlichen Problem:
                                          Ich nutze 5 Musiccast Komponenten. Darunter ist ein Receiver sowie weitere Lautsprecher.
                                          Auf meinem iobroker Dashboard habe ich Schalter, um die einzelnen Lautsprechern ein/aus zu schalten. Der Schalter funktioniert zwar, zeigt aber normalerweise den falschen Status an, wenn der Lautsprecher zB über die Musiccast App angeschalten wurde. Gibt es hier noch etwas zum Einstellen?

                                          VG & Danke

                                          bahnuhr 1 Reply Last reply Reply Quote 0
                                          • M
                                            mghomedev last edited by

                                            Ich habe auch probleme mit dem MusicCast adapter, weil er keine Status-Änderungen mitbekommt. Als Notlösung habe ich jetzt einen Status eingebaut, mit dem man ein einfaches Refresh von außen anstoßen kann (das kann man dann leicht über javascript-Timer machen).
                                            Evtl. bau ich das Polling mit Intervall noch direkt da ein.
                                            Hier sieht man meine Änderung (einfach triggerForceRefresh=true setzen macht den refresh):
                                            https://github.com/mghomedev/ioBroker.musiccast

                                            sigi234 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            428
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            musiccast yamaha
                                            44
                                            385
                                            76001
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo