Ankündigung

Einklappen
Keine Ankündigung bisher.

Nubert nuPro X-Series Aktivlautsprecher Integration

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    [Projekte] Nubert nuPro X-Series Aktivlautsprecher Integration

    Hallo zusammen,

    im Rahmen der Aufrüstung meines 5.1 Heimkinos mit Nubert nuPro Aktivlautsprechern (X-6000-RC, X-3000-RC und nuSub XW-900), bin ich gerade dabei diese Aktivlautsprecher über ihre Bluetooth Schnittstelle an EDOMI anzubinden. Hierzu wird mind. ein Bluetooth LE fähiges Linux Device in der Nähe der Lautsprecher notwendig sein (vermutlich idealer Einsatzzweck für einen RPi zero W, der sowohl WLAN als auch BT LE kann).

    Meine Frage an die EDOMI Community: Gibt es neben mir weitere Interessenten für eine solche Lösung? Folgende Architektur soll dazu implementiert werden:

    nupro.jpg
    Zur Umsetzung müsste also ein kleines Python Skript als Daemon auf dem RPi laufen, welches sowohl die BLE Kommunikation (gatttool) und die Kommunikation mit EDOMI (TCP Socket [Commands] und EDOMI Remote API [Status]) steuert.

    Falls jemand Beta-Tester sein möchte, bitte einfach hier melden.

    Evtl. hat ctx Interesse??? Du hast doch auch die X-6000 und auch im Nubert Forum schon mal das API Thema angesprochen, oder?

    Ich kann nicht versprechen, dass es am Ende auch eine stabile Lösung wird, aber erste Tests sind vielversprechend und zeigen, dass sowohl die Steuerbefehle erfolgreichen via Bluetooth LE gesendet werden als auch jegliche Statusänderung via BLE Indications erfolgreichen vom Python Skript empfangen werden.

    Kommentare, Fragen, Diskussion oder sonstige Rückmeldungen gerne hier ...

    #2
    Mal ne kurze Frage, was macht der PI, was der EDOMI Rechner nicht kann? Oder gehts nur um die räumliche Trennung?

    Kommentar


      #3
      Zitat von vento66 Beitrag anzeigen
      Oder gehts nur um die räumliche Trennung?
      Ja, das ist der eigentliche Grund, da ja die Lautsprecher eher im Wohnbereich stehen und der Server im Keller und die Reichweite von BLE recht begrenzt ist.

      Ein Linux Device mit BLE Funktionalität und Python in BLE Kommunikationsdistanz ist die eigentliche Voraussetzung. Das kann also auch der EDOMI Server sein, wenn er alle diese Anforderungen erfüllt.

      Kommentar


        #4
        Hallo jonofe das ist richtig ich habe die X-6000 und das im Nubert Forum war ich auch.
        Und da war damals noch der Wunsch zum Bau eines Logigbaustein, wenn du dich erinnern magst.

        Ich habe das aber bis heute nie fertig gebracht, war alles echt frustrierend.
        Dazu habe ich mir mal noch die Logitech Harmony gekauft und wollte das ganze per IR über NodeRed steuern.

        Das würde auch grundsätzlich funktionieren. Man hat aber keine Rückmeldung oder so, von dem her scheint Bluetoot sicher besser zu sein, das Problem ist ja das er per IR OPT 1 und OPT2 hin und her switcht. Im Bluetooth kann man sicher auswählen was man auswählen will, das wäre schon besser.

        Also ich bin gerne als Test dabei.

        Ich müsste mir noch einen RP 2 Zero besorgen dieser wäre nur für das gedacht, hast du schon ausprobiert ob dieser bei den Lautsprechern angeschlossen werden kann ? Die haben ja dort ein USB Port, bin mir aber nicht sicher ob das immer Strom liefert ?
        Zuletzt geändert von ctx; 19.12.2020, 10:18.

        Kommentar


          #5
          Zitat von ctx Beitrag anzeigen
          Ich müsste mir noch einen RP 2 Zero besorgen dieser wäre nur für das gedacht, hast du schon ausprobiert ob dieser bei den Lautsprechern angeschlossen werden kann ? Die haben ja dort ein USB Port, bin mir aber nicht sicher ob das immer Strom liefert ?
          Das hatte ich auch geplant, aber der USB Anschluss wird abgeschaltet, sobald der LS in Stand-By geschaltet wird.

          Zitat von ctx Beitrag anzeigen
          Ich müsste mir noch einen RP 2 Zero
          Wie gesagt, ich fange gerade mit der Entwicklung an und kann noch nicht sagen, ob es stabil läuft. Werde aber hier ein Update geben. Nur für den Fall, dass du noch mit dem Kauf warten willst.

          Kommentar


            #6
            ok, ich warte mal noch bis du bescheid gibts, bin aber sehr intressiert daran :-)

            Hast du mal geprüft ob du die Boxen überhaupt per Bluetooth einschalten kannst ?
            Zuletzt geändert von ctx; 20.12.2020, 13:51.

            Kommentar


              #7
              Zitat von ctx Beitrag anzeigen
              Hast du mal geprüft ob du die Boxen überhaupt per Bluetooth einschalten kannst ?
              Jo, wenn du das Standby nutzt, dann funktioniert das, wenn du natürlich am Hauptschalter des Netzteils abschaltest, dann gehts nicht .

              Kurzer Zwischenstand:

              Es funktioniert inzwischen alles, was über Fernbedienung oder das lokale Bedienpanel eingestellt werden kann und das sogar gleichzeitig für mehrere Lautsprecher (bei mir 2 x X-6000 und 1 x X-3000) Damit ist es sogar möglich das Wireless Pairing automatisiert zu ändern.

              Einzige Einschränkung ist, dass bei jedem Bluetooth Reset und auch bei jedem Power-Off am Netzteil das Bluetooth Interface mit einer neuen MAC Adresse zurückkommt. Diese kann man automatisch discovern, bedeutet aber, dann man für Steuerung und Discovery unterschiedliche Bluetooth Adapter braucht. Mit einem RPi zero W + einem Bluetooth USB Dongle funktioniert dies aber perfekt, das heisst wenige Sekunden nachdem der LS wieder eingeschaltet ist, wird die neue MAC Adresse detektiert und ab dann ist der LS unter gleichem Namen steuerbar. Wenn man nur einen BT Sender/Empfänger hat, dass wird das auch erkannt und es muss manuell durch den Nutzer sichergestellt werden, dass nach Power-Toggle eines Lautsprechers der RPI neu gebootet wird oder der nuPi-Service neu gestartet wird.

              Habe jetzt sowohl Bluetooth Connectivity als auch den LBS fertig und es funktioniert wirklich gut. Muss aber noch dokumentiert werden und ich denke, dass ich die Connectivity zwischen LBS und RPi auf MQTT umbauen werde. Edomi Remote API und TCP Socket ist vermutlich nicht die beste Lösung, aber zumindest ein erster Start.

              Kommentar


                #8
                Hey jonofe, ich habe kürzlich bei der xs-7500 zugeschlagen und bin interessiert an einer Integration ins Gesamtsystem.

                welche Hardware empfiehlt sich zu kaufen? Habe oben gelesen rpi zero w , dazu ein USB Bluetooth stick und entsprechendes Netzteil. Wars das oder fehlt etwas? Bei dem Bluetooth Stick ein bestimmter oder egal?

                ​​​​​​bei Tests bin ich natürlich dabei, wenn du ein Opfer suchst

                Gruß
                Dirk

                Kommentar


                  #9
                  Zitat von dirkie Beitrag anzeigen
                  welche Hardware empfiehlt sich zu kaufen? Habe oben gelesen rpi zero w , dazu ein USB Bluetooth stick und entsprechendes Netzteil. Wars das oder fehlt etwas?
                  Ein RPi zero W mit einem zweiten USB BT Adapter ist völlig ausreichend.
                  Ich habe bei mir noch den USB/Ethernet Hat drauf gesteckt, um ihn so per Ethernet statt WLAN anzubinden, ist aber nicht zwangsweise notwendig.

                  photo_2021-01-17_14-21-05.jpgrpihat.jpg

                  Alternativ funktioniert natürlich auch ein RPi 3 oder 4, auch mit zusätzlichem USB BT Adapter.



                  Zitat von dirkie Beitrag anzeigen
                  Bei dem Bluetooth Stick ein bestimmter oder egal?
                  Wichtig ist, das der Adapter BLE kann, d.h. ab BT 4.x und das er von RaspberryOS erkannt und unterstützt wird..

                  Habe inzwischen die Implementierung komplett auf MQTT umgestellt, so dass nun gar kein EDOMI spezifischer LBS notwendig ist. Es kann alles mit den bestehenden EDOMI MQTT LBS umgesetzt werden.

                  Das ermöglicht es auch, sich eine neue Nubert Control App aus Basis einer MQTT Dashboard App zusammenzuklicken, mit der man nun stabil die nuPros steuern kann und zwar auch mehrere ohne sich jedes mal neu zu verbinden. Auch gehören damit die ständigen Reconnects der Nubert App der Vergangenheit an. Bei mir sieht das jetzt so aus:

                  photo_2021-01-17_14-04-27.jpgphoto_2021-01-17_14-04-20.jpg
                  ​​​​​​​

                  Kommentar


                    #10
                    Mqtt klingt super. Ich plane die presets automatisch zu ändern auf Basis der Wiedergabe durch KODI. Der spricht auch schon über mqtt mit edomi und da bleibt dann die Intelligenz. Ich bin gespannt.

                    Habe nur noch einen spare rpi4 hier rum fliegen, denke das ist sowieso mit Kanonen auf Spatzen geschossen. Ich melde mich wenn ich alles da ist.

                    Kommentar


                      #11
                      Zitat von dirkie Beitrag anzeigen
                      Mqtt klingt super. Ich plane die presets automatisch zu ändern auf Basis der Wiedergabe durch KODI.
                      So ähnlich plane ich es auch, allerdings ist mein Plan noch weiter zu gehen als Presets, d.h. teilweise auch das Pairing der LS zu ändern in Abhängigkeit ob der TV + Kodi|Blue-Ray (5.1 Sound) eingeschaltet ist oder nur der AVR (Stereo Musik). Werde ggf. die Funktionen noch dahingehend erweitern, dass Presets im RPI definiert werden können, die noch mehr Parameter beinhalten als die Nubert Presets, welche z.B. keine Lautstärke oder Inputs berücksichtigen, sondern nur die Klangparameter. Solche Konfigurationen kann man natürlich auch grundsätzlich in EDOMI definieren und entsprechende MQTT Commands senden. Mal sehn ...

                      Kommentar


                        #12
                        Heute ist dann auch der BT Stick angekommen. mit rtl8761b chip falls jemand das hier auch nachbaut und einen stick mit dem chip hat. -> der link hilft

                        Wenn du etwas zum Testen teilen magst, ich haette Lust zu testen.

                        Kommentar


                          #13
                          Zitat von dirkie Beitrag anzeigen
                          Wenn du etwas zum Testen teilen magst, ich haette Lust zu testen.
                          Ich bin noch dran. Gab noch ein Timing Problem mit Befehlssequenzen, wenn diese zusammen mit dem Power-ON gesendet werden.
                          Sollte aber auch so gut wie gelöst sein. Muss aber noch dokumentieren, welche Pakete zusätzlich zum Standard RaspberryOS Minimal installiert werden müssen. Außerdem soll noch ein Installskript für Mosquitto dazu, sofern man noch keinen MQTT Broker hat.

                          Du kannst aber schonmal folgendes Testen:

                          Erkannte BLE Controller
                          Code:
                          hciconfig
                          Für jeden erkannten BLE Controller (z.B. hci0 und hci1)

                          Code:
                          hcitool -i hciX lescan
                          X durch 0 bzw. 1 ersetzen. Hier sollten u.a. alle BLE Devices, d.h. Nubert nuPro X auftauchen (Nubert App darf natürlich nicht laufen)
                          MAC Adresse des Lautsprechers notieren.

                          Danach

                          Code:
                          gatttool -i hciX -t random -I -b <MAC Adresse>
                          X durch 0 bzw. 1 ersetzen.

                          Jetzt "connect" eingeben und mit RETURN bestätigen.

                          Wenn der connect erfolgreich ist,

                          Einschalten des LS mit:

                          Code:
                          char-write-req c 1f0100
                          Ausschalten des LS mit:

                          Code:
                          char-write-req c 1f0101
                          Wenn das alles funktioniert, dann bist du gut vorbereitet.

                          Kommentar


                            #14
                            muss ich morgen in Ruhe angucken. Irgendwie mag der rpi nur einen BT receiver gleichzeitig. Also hcitool findet entweder den internen an UART, wenn der Stick nicht drin ist, oder den Stick an USB. das soll ja so nicht, wenn ich dich richtig verstanden habe. Muss ich morgen mal gucken...

                            Kommentar


                              #15
                              Zitat von dirkie Beitrag anzeigen
                              Also hcitool findet entweder den internen an UART, wenn der Stick nicht drin ist, oder den Stick an USB. das soll ja so nicht, wenn ich dich richtig verstanden habe. Muss ich morgen mal gucken...
                              Das ist ein bekanntes Problem und liegt an einem Bug im Bluetooth Package. Er erkennt nur beide, wenn der USB Stick beim Booten nicht gesteckt ist und erst nach dem Booten angesteckt wird.

                              In meiner Installationsanleitung ist die Lösung schon dokumentiert und zwar so:

                              Code:
                              sudo setcap cap_net_raw+ep /usr/bin/hcitool
                              wget https://archive.raspberrypi.org/debian/pool/main/p/pi-bluetooth/pi-bluetooth_0.1.13_all.deb
                              sudo dpkg -i pi-bluetooth_0.1.13_all.deb
                              echo "pi-bluetooth hold" | sudo dpkg --set-selections
                              sudo reboot
                              Die erste Zeile ist nur notwendig, um dem pi-User auch Ausführrechte für hcitool zu geben.
                              Die vorletzte Zeile verhindert, dass bei einem Update wieder das fehlerhafte Bluetooth Paket eingespielt wird.
                              Nach dem reboot sollten dann eigentlich zuverlässig und reproduzierbar beide BLE Adapter erkannt werden.

                              Kommentar

                              Lädt...
                              X