Squeezeplayer goes ESP32

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • hismastersvoice
    Supermoderator
    • 25.08.2015
    • 7217

    #16
    Mit der aktuellen Version des MS4H 1.4.1.5_beta wird der ESP32-Squeezelite nun auch voll unterstützt.
    • PowerManger
    • Equalizer
    Aufgrund der begrenzten CPU/RAM-Leistung sind Events nicht 100% synchron (~0,3 - 0,4 Sekunden).
    Das kann ich leider technisch nicht einfach lösen ohne das alle anderen verspätet kommen.
    Kein Support per PN!

    Kommentar

    • Prof.Mobilux
      Supermoderator
      • 25.08.2015
      • 4655

      #17
      Ich hab hier ZeroWs mit den HifiberryMiniAmps. Das sind zwei Küchenradios. Die müssten ja eigentlich auch laufen, oder? Da ist laut Abbildung ein PCM5101A drauf (https://www.hifiberry.com/docs/data-...sheet-miniamp/).

      Ich habe allerdings nirgends eine Pinbelegung gefunden.
      Zuletzt geändert von Prof.Mobilux; 23.01.2022, 12:33.
      🇺🇦 Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine


      LoxBerry - Beyond the Limits

      Kommentar

      • hismastersvoice
        Supermoderator
        • 25.08.2015
        • 7217

        #18
        Zitat von Prof.Mobilux
        Ich hab hier ZeroWs mit den HifiberryMiniAmps. Das sind zwei Küchenradios. Die müssten ja eigentlich auch laufen, oder? Da ist laut Abbildung ein PCM5101A drauf (https://www.hifiberry.com/docs/data-...sheet-miniamp/).

        Ich habe allerdings nirgends eine Pinbelegung gefunden.
        Hier die genutzten Pins der Amp Mini
        GPIOs 18-21 (pins 12, 35, 38 and 40) are used for the sound interface. GPIO16 can be used to mute the power stage. GPIO26 shuts down the power stage. You can’t use these GPIOs for any other purpose.
        Ich habe einen Versuch der Amp 2 und Amp 100 gemacht, die werden per I2S / I2C Bus und ein paar Pins angesteuert.
        Das hat funktioniert.
        rochuck/squeeze-amp-too: Hardware for squeezelite-esp32 player (github.com)

        Bei der Amp Mini kann ich es nicht sagen, die scheint anders angesteuert zu weden.
        Kein Support per PN!

        Kommentar

        • Prof.Mobilux
          Supermoderator
          • 25.08.2015
          • 4655

          #19
          Danke Dir, diese Angaben hatte ich auch gefunden. Aber welcher PIN jetzt welcher ist geht daraus ja nicht hervor. Ich wollte mir den Miniamp ungern grillen :-)
          🇺🇦 Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine


          LoxBerry - Beyond the Limits

          Kommentar


          • hismastersvoice
            hismastersvoice kommentierte
            Kommentar bearbeiten
            Schau mal die Nummern an einer GPIO Map des Raspberrys an, dann siehst du daneben so was wie PCMD_IN oder PCMD:_OUT etc.
            Vielleicht hilft das weiter, so bin mit der Amp2 auch vorgegenagen.

          • LCH
            LCH kommentierte
            Kommentar bearbeiten
            Habs gerade mit einem MiniAmp probiert. Funktioniert tadellos:

            Funktion - Miniamp-Pin - ESP32-Pin:
            5V - Pin 2 - 5V
            3,3V - Pin 1 - 3,3V
            GND - Pin 6 - GND
            BCK - GPIO 18 (PIN 12) - GPIO 26
            LRCK - GPIO 19 (Pin 35) - GPIO 33
            DIN - GPIO 21 (PIN 40) - GPIO 25
        • Labmaster
          Lox Guru
          • 20.01.2017
          • 2523

          #20
          Hab mich heute mal wieder mit dem "ESP32 Audio Kit V2.2" beschäftigt, da ich untere anderem mal testweise die Taster auf dem Board in Betrieb nehmen wollte, was nun auch funktioniert.

          Zusätzlich zu den DAC Settings welche hismastersvoice ja schon angegeben hatte ( "dac_config" --> "model=ES8388,bck=27,ws=25,do=26,sda=33,scl=32,i2c =16" ) , kann man noch weitere GPIOs für das Ein/Ausschalten der Verstärker ICs, eine LED und die Erkennung des Klinkensteckers definieren:
          Hierzu unter "set_GPIO" das hier eintragen (ohne Anführungsstriche natürlich): "21=amp,22=green:0,39=jack:0"


          Für die Tasten hier die entsprechende "ACTRL" JSON Config: (weitere Vorgehensweise siehe noch weiter unten)
          [
          {
          "gpio":36,
          "type":"BUTTON_LOW",
          "pull":false,
          "normal":{
          "pressed":"ACTRLS_PLAY"
          }
          },
          {
          "gpio":13,
          "type":"BUTTON_LOW",
          "pull":true,
          "normal":{
          "pressed":"ACTRLS_STOP"
          }
          },
          {
          "gpio":19,
          "type":"BUTTON_LOW",
          "pull":true,
          "normal":{
          "pressed":"ACTRLS_PREV"
          }
          },
          {
          "gpio":23,
          "type":"BUTTON_LOW",
          "pull":true,
          "normal":{
          "pressed":"ACTRLS_NEXT"
          }
          },
          {
          "gpio":18,
          "type":"BUTTON_LOW",
          "pull":true,
          "normal":{
          "pressed":"ACTRLS_VOLDOWN"
          }
          },
          {
          "gpio":5,
          "type":"BUTTON_LOW",
          "pull":true,
          "normal":{
          "pressed":"ACTRLS_VOLUP"
          }
          }
          ]
          Diese im NVS Editor der ESP32-squeezelite Webseite ganz unten im "new value" Feld pasten.
          bei "new key" eine Name angeben (max 16 Zeichen, am besten nur Buchstaben und zusammenhängend), z.B. "Buttons"
          Dann ebenfalls im NVS Editor bei "actrls_config" genau diesen Namen eintragen z.B. "Buttons"

          ganz unten im Fenster auf "Commit" klicken und neu starten.


          Sehr hilfreich war das Schematic hier:


          Kommentar


          • hismastersvoice
            hismastersvoice kommentierte
            Kommentar bearbeiten
            Hast du eine fertige BIN genutzt oder selber kompiliert?
            Ich bekomme aus dem Dinge keinen ordentlichen Sound.

          • hismastersvoice
            hismastersvoice kommentierte
            Kommentar bearbeiten
            Nach deiner Rückmeldung habe ich jetzt auch noch kurz eine neue Firmware aufgespielt.
            Jetzt passt der Klang auch bei mir. Woran das lag...???

            Habe den Beitrag oben gleich mal korrigiert.

          • hismastersvoice
            hismastersvoice kommentierte
            Kommentar bearbeiten
            Zu früh gefreut.
            Ich habe das ganze jetzt nochmal etwas mehr getestet.
            Das säuseln, knacken und knistern ist immer noch da. Wenn an einen Kopfhörer an die Klinke anschließt und den Ton aus 0 stellt im Play-Modus hört man es.
            Inzwischen habe ich aus China auch den zweiten bekommen, genau das gleiche.

            Das Problem das der A1S über längere Zeit stabil läuft habe ich auch. Immer wieder ist der Ton weg, und ich kann ihn nur nach einem reboot wieder zum abspielen bewegen.

            Wenn du Lösungen hast, werde ich die Dinger mal auf die Seite legen, das ist so nix.
            Ich werde mit dem normalen Wrover weiter testen.
            Denke das die Konstellation bald in realen Einsatz kommt. Der Überlebt sogar die nächtliche DSL-Zwangsunterbrechung und spielt einfach weiter und das seit mehr als 9 Tagen.
        • Labmaster
          Lox Guru
          • 20.01.2017
          • 2523

          #21
          Prof.Mobilux

          Zitat von Prof.Mobilux
          Danke Dir, diese Angaben hatte ich auch gefunden. Aber welcher PIN jetzt welcher ist geht daraus ja nicht hervor. Ich wollte mir den Miniamp ungern grillen :-)

          https://datasheets.raspberrypi.com/b...eripherals.pdf

          Tabelle auf: Seite 102

          GPIO18 / PCM_CLK (Raspi Header Pin 12)
          GPIO19 / PCM_FS (Raspi Header Pin 35)
          GPIO20 / PCM_DIN (Raspi Header Pin 38)
          GPIO21 / PCM_DOUT (Raspi Header Pin40)

          Die Pinnummern decken sich mit den Pinangaben von Hifiberry also "GPIOs 18-21 (Pins 12, 35, 38 and 40)"
          ( https://www.hifiberry.com/docs/hardw...iberry-boards/ )

          Bei manchen DACs kommt noch I2C zum Konfigurieren hinzu.
          Für die I2C Hardwarepins kann man auch wieder ins BCM2835 Manual schauen.

          GPIO2 / I2C SDA1 (Data) (Raspi Header Pin3)
          GPIO3 / I2C SCL1 (Clock) (Raspi Header Pin5)

          Weiterhin wird teils noch das ein oder andere Steuersignal verwendet (z.B. Mute ...)

          Da das Pinout diesbezüglich über die Raspi Versionen hinweg für diesen 40Pin Pfostenstecker nicht groß verändert wurde ist vom selben Pinout für alles Raspi Modell auszugehen.
          Zuletzt geändert von Labmaster; 30.01.2022, 02:03.

          Kommentar

          • hismastersvoice
            Supermoderator
            • 25.08.2015
            • 7217

            #22
            Zitat von Labmaster
            .......
            man noch weitere GPIOs für das Ein/Ausschalten der Verstärker ICs, eine LED und die Erkennung des Klinkensteckers definieren:
            Hierzu unter "set_GPIO" das hier eintragen (ohne Anführungsstriche natürlich): "21=amp,22=green:0,39=jack:0"
            .......
            Das mit zB der Amp kann man natürlich auch of dem ESP32 Wrover Board nutzen.

            Es gibt eine kleine Besonderheit wie dieser GPIO gesteuert wird, er get erst au 1 wenn der Stream anfängt zu spielen.
            Hat man also einen AMP der etwas braucht bis er hochgefahren ist, wird zB bei einem Event der Anfang abgeschnitten.
            Diese Steuerung der AMP ist für mich eher um den Mute-Eingang den manche Amps haben zu steuern. Für Power ein/aus des AMP ist es nur mit der Einschränkung nutzbar.
            Kein Support per PN!

            Kommentar

            • MartiS
              Azubi
              • 06.12.2021
              • 2

              #23
              Hallo Zusammen,
              würde aufgrund der langen Startzeit des RPi auch gerne auf den ESP32 umsteigen, möchte aber den Hifiberry Amp2 verwenden!
              Funktioniert das zusammen?
              Hab mit dem ESP32 noch absolut keine Erfahrungen…

              Kommentar

              • hismastersvoice
                Supermoderator
                • 25.08.2015
                • 7217

                #24
                Wenn du so gar keine Ahnung hast wird es schwer.
                Gerade ein Hifiberry Modul ist schwer einzubinden.

                ​​​​​​
                Kein Support per PN!

                Kommentar

                • MartiS
                  Azubi
                  • 06.12.2021
                  • 2

                  #25
                  Naja ich sag mal so, wenns da eine Doku gibt würde ich das iwie hinbekommen..
                  Es muss praktisch aber auch nicht der AMP2 sein, wenn ein anderes Verstärkerboard ähnlich specs hat aber leichter implementiert werden kann!?
                  Ich brauch aber die 60W Leistung, damit ich mein komplettes Setup ändern muss

                  Kommentar

                • pmayer
                  LoxBus Spammer
                  • 27.02.2017
                  • 379

                  #26
                  Ich überlege ernsthaft dafür eine Platine zu machen.... 90% davon hab ich quasi hier in Kisten liegen.

                  Wärs ok wenn hier mal Anforderungen gesammelt werden können?
                  Display und Buttons wären für mich zum Beispiel optional, weil ich den Player nur irgendwo hinpacken würde wo ich eh nicht dran komme.

                  Hatte vor Jahren das bei mir zu Hause mi Pi's und Pi Zero's gebaut... https://allgeek.de/2017/07/05/multir...chmediaserver/


                  Die Lizenz von Phillippe44 erlaubt sogar die Nutzung seiner Schematics: https://github.com/philippe44/SqueezeAMP

                  Zuletzt geändert von pmayer; 19.09.2022, 14:50.
                  https://allgeek.de/

                  https://twitter.com/pregopm, https://github.com/codmpm/
                  https://github.com/codmpm/node-red-contrib-loxone
                  https://github.com/codm/wled-controller

                  Kommentar

                • Benjamin Jobst
                  Lox Guru
                  • 25.08.2015
                  • 1194

                  #27
                  Hi hismastersvoice ich habe mich gerade einmal an einem ESP32-Client mit Wrover-B und DAC 5102 versucht. Die Installation des ESP hat einwandfrei funktioniert und der Client wird auch im MS4H erkannt und ich kann ihn als externe Zone anlegen.
                  Aber leider bekomme ich aus dem DAC keinen einzigen Ton heraus. Die Pin-Belegung der hinteren PIN-Leiste (VIN, GND, LCK, DIN und BCK) habe ich wie von dir weiter oben beschrieben (PINS 33, 25&26) verkabelt und auch im Client eingestellt. Trotzdem passiert gar nichts, weder über Kopfhörer noch über einen nachgelagerten Verstärker.

                  Jetzt bin ich gerade etwas ratlos, woran es liegen kann, denn so viel einstellen kann man ja gar nicht. Werden die anderen Pins (FLT, DEMP etc.) benötigt? Auch die hatte ich schon angeschlossen, aber ohne erfolg...

                  Danke und Grüße!
                  MfG Benny

                  Kommentar

                  • hismastersvoice
                    Supermoderator
                    • 25.08.2015
                    • 7217

                    #28
                    Du hast wirklich alle Pins verbunden? Wie in Post 12 beschrieben?
                    Es müssen wirklich alle mit mehrfach 3,3V und GND sowie den Datenleitungen belegt sein...

                    Poste mal ein Foto von der Verkabelung und den Einstellungen im WebUI


                    Kein Support per PN!

                    Kommentar

                    • Benjamin Jobst
                      Lox Guru
                      • 25.08.2015
                      • 1194

                      #29
                      Hi, danke für die schnelle Antwort.
                      Ich habe die gesamte Verkabelung noch einmal neu aufgebaut und durchgesehen.
                      Ich habe auch die Nummerierung der Pins am ESP nochmal mit den GPIOs verglichen.
                      Auf dem Bild wirst du denke ich nicht viel sehen können... für die Datenkabel hatte ich nur noch lila verfügbar, deshalb kann man sie nicht unterscheiden...

                      Klicke auf die Grafik für eine vergrößerte Ansicht

Name: IMG_20221104_221444.jpg
Ansichten: 1635
Größe: 2,86 MB
ID: 364172

                      Die 3 Datenleitungen sind direkt vom ESP auf den DAC verbunden, alle 3,3V und GND gehen über ein kleines Breadboard.

                      DAC ESP
                      VIN 3V3
                      GND GND
                      LCK (ws) Pin 25 (GPIO 32)
                      DIN (do) Pin 15 (GPIO 15)
                      BCK (bck) Pin 33 (GPIO 33)
                      SCK n.c
                      FLT GND
                      DEMP GND
                      XSMT 3V3
                      A3V3 n.c
                      AGND n.c
                      ROUT n.c
                      AGND n.c
                      LROUT n.c

                      Welche Einstellungen brauchst du, nur NVS Editor?

                      Klicke auf die Grafik für eine vergrößerte Ansicht

Name: NVS 1.png
Ansichten: 1708
Größe: 34,8 KB
ID: 364170
                      Klicke auf die Grafik für eine vergrößerte Ansicht

Name: NVS 2.png
Ansichten: 1577
Größe: 30,7 KB
ID: 364171

                      Was mir noch aufgefallen ist: Im MS4H kann ich keinen Client Type ESP32 abspeichern, das springt mir nach dem Speichern auf Sonos. Squeezelite (kein EQ) bleibt beim Speichern aber bestehen.

                      Danke für die Hilfe!
                      Benny
                      MfG Benny

                      Kommentar


                      • hismastersvoice
                        hismastersvoice kommentierte
                        Kommentar bearbeiten
                        Bei mir war das bei den ersten Versuchen schon auch ein Thema.
                        Am Ende hatte nur ein GND an einem Pin gefehlt.

                        Wenn der Player im LMS läuft und die Zeit zählt, dann läuft auf jeden Fall Squeezelite schon mal, und es muss in Richtung DAC oder DSC Config gehen.

                      • Benjamin Jobst
                        Benjamin Jobst kommentierte
                        Kommentar bearbeiten
                        Okay danke ich werde morgen noch ein bisschen weiterprobieren... vielleicht versuche ich noch einmal einen anderen DAC, um sicherzustellen dass mir nicht einfach ein defekter geliefert wurde. Wenn ich mehr weiß melde ich mich noch mal ;-)

                      • Benjamin Jobst
                        Benjamin Jobst kommentierte
                        Kommentar bearbeiten
                        So noch mal ein Update:
                        - aktuellste Updates auf MS4H installiert
                        - Verkabelung überprüft
                        - ESP32 neu aufgesetzt, um fehlerhafte Installation auszuschließen
                        - SCK-Pin probehalber auf GND gesetzt
                        - VIN mit 5V statt 3,3V belegt

                        Alles bisher leider ohne jeglichen Effekt. Der squeezelite wird vom LMS erkannt und ich kann einen Stream starten - der Läuft beim Testen über mehrere Minuten durch, aber am Kopfhörer kommt nichts an.
                        Ich habe auch die Kopfhörer noch einmal getestet und eine kleine Verstärkerplatine angeschlossen, aber immer das gleiche.


                        werde mir jetzt wohl oder übel noch einen DAC bestellen und mit dem testen...
                    • LCH
                      Azubi
                      • 23.03.2020
                      • 4

                      #30
                      Zitat von Benjamin Jobst
                      Was mir noch aufgefallen ist: Im MS4H kann ich keinen Client Type ESP32 abspeichern, das springt mir nach dem Speichern auf Sonos. Squeezelite (kein EQ) bleibt beim Speichern aber bestehen.
                      Dieses Problem hatte ich auch. War ein blöder Fehler:
                      Nach dem Eingeben der WLAN Zugangsdaten über das Webintererface hatte ich vergessen im Browser die neue IP Adresse des ESP32 aufzurufen. Folge war, dass alle folgend durchgeführten Konfigurationen natürlich im Nichts verlaufen sind. Merkt man aber gar nicht so schnell ... nur funktioniert nichts ...
                      Dann im Browser die richtige IP Adresse aufgerufen, alle Konfigurationen wiederholt und es läuft. Dann Funktioniert auch die Einstellung des Client Typ ESP32 im MS4H.

                      Kommentar


                      • Benjamin Jobst
                        Benjamin Jobst kommentierte
                        Kommentar bearbeiten
                        Ja, die IP des ESP Webserver passt. Ich habe jetzt den Zonen-Namen noch einmal neu vergeben, der MS4H findet die Externe Zone, aber der Client Type springt immer auf Sonos zurück...

                      • hismastersvoice
                        hismastersvoice kommentierte
                        Kommentar bearbeiten
                        Ist irgendwie komisch, Sonos ist normal gar nicht wählbar. Muss ich mir am WE nochmal anschauen.

                        Hat aber mit der Wiedergabe der Musik nichts zu tun.

                      • Benjamin Jobst
                        Benjamin Jobst kommentierte
                        Kommentar bearbeiten
                        Ja direkt auswählen kann ich Sonos nicht, aber es wechselt nach dem Speichern von ESP32 auf Sonos.
                        Habe heute noch einmal einen DAC mit PCM5102 bekommen, kein Unterschied. Kopfhörer bleiben stumm. Langsam bin ich ratlos...
                        Im Readme auf Github steht etwas von "use the squeezelite-esp32-I2S-4MFlash-sdkconfig.defaults configuration file. Weißt du, wie ich das bewerkstellige? Ist das die Load-Funktion bei NVS?


                        ///edit: ich habe es tatsächlich geschafft. Ich habe die ältere FW geflasht, die du in deinen Angaben auch verwendet hast und am Ende mit den von dir verwendeten Pins, jetzt funktioniert es.
                        Danke für die Unterstützung!
                        Zuletzt geändert von Benjamin Jobst; 09.11.2022, 19:10.
                    Lädt...