Announcement

Collapse
No announcement yet.

ANNOUNCE: Squeezelite-ESP32 (dedicated thread)

Collapse
X
 
  • Time
  • Show
Clear All
new posts

  • Originally posted by Rasputin_GY
    Connecting the DIGI32 from the spotify app works fine and I can hear music for about 2 seconds through my speakers until it stops and the DIGI32 itself becomes unusable until power cycle.
    Just for test I flashed my Muse Luxe with the 32-bit I2S firmware (squeezelite-esp32-master-v4.3-I2S-4MFlash-32-21290.bin). When connecting to my Muse Luxe from the Spotify app on my smartphone, the behavior of my Muse was similar to what you experience with your DIGI32. Only in my case, there was music for circa 10 seconds before playback stopped. When playback had stopped my Muse had disappeared from the list of players in LMS, and a power cycle was needed to bring the Muse back to life. I have tried two times, and in both cases the Spotify connect playback stopped after circa 10 seconds. Btw, this was with AirPlay disabled and Bluetooth enabled on the System tab of the web UI.

    After flashing the 16-bit I2S firmware, Spotify Connect playback was fine again.
    => So it seems that the Spotify Connect function does not work reliable with the 32-bit firmware. For me this is no problem, since I always use the 16-bit firmware for my Muse.

    Btw, I expect that I will use the Spotify Connect function mainly when traveling with my Muse Luxe speaker, i.e. when I do not have access to LMS. At Home I will make use of the Spotty plugin on LMS, because my other players (Boom and piCorePlayer) do not have the Spotify Connect function.

    Also I wonder why the DIGI32 SPDIF output does not work with the 16-bit firmware. If you want to make use of the Spotify Connect function with the present firmware, it seems that your only option is to get the SPDIF output working with the 16-bit firmware.
    | LMS 8.3.2 on Linux Mint 21.2 | Squeezebox Boom | RPi0W + pCP 8.2.0 + HiFiBerry DAC Zero | ESP Muse Luxe |

    Comment


    • Help needed to get MCP23S17 SPI GPIO expander working on ESP32-AS1 with 256 X64 SPI display. Display works OK, but can't get expander to work.

      I have connected expander as follows :

      VDD 3.3V
      Vss Gnd
      CS GPIO 14 (MTMS)
      SCK GPIO 13 (MTCK)
      SI GPIO 22 (Shared with Display)
      SO GPIO 12 (MTDI)
      INT A GPIO 5
      RST to Reset Pin
      Address lines all to Gnd (0)

      My Config

      display_config SPI,width=256,height=64,cs=12,speed=8000000,mode=0 ,driver=SSD1322,HFlip,VFlip,rotate
      gpio.exp_config model= mcp23s17,addr=0,port=system,base=100,count=16,intr =5,cs=14
      rotary_config A=100,B=101,SW=102,volume
      spi_config data=22,clk=13,dc=18,host=1 (dc goes to display only)

      Any help would be much appriciated, I can't seem to find much infomation about this expander with Squeezelite ESP32.

      Comment


      • Originally posted by philippe_44

        There is no specific support for PCM5122, so someone would need to write the low level C driver to benefit from these extra features
        Is this still the case? I have an x400 from http://www.suptronics.com/xseries/x400.html that i would like to use with an esp32

        Comment


        • Originally posted by cubii

          Is this still the case? I have an x400 from http://www.suptronics.com/xseries/x400.html that i would like to use with an esp32
          I’ve not added anything to the code. I don’t even remember what « specific » features this message was referring to
          LMS 8.2 on Odroid-C4 - SqueezeAMP!, 5xRadio, 5xBoom, 2xDuet, 1xTouch, 1xSB3. Sonos PLAY:3, PLAY:5, Marantz NR1603, Foobar2000, ShairPortW, 2xChromecast Audio, Chromecast v1 and v2, Squeezelite on Pi, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5, RivaArena 1 & 3

          Comment


          • Originally posted by cubii
            Is this still the case? I have an x400 from http://www.suptronics.com/xseries/x400.html that i would like to use with an esp32
            FYI, even if squeezelite-esp32 may not support the extra features of the PCM5122 (i.e. hardware volume control), the PCM5122 will work with WROVER module + squeezelite-esp32. You should then use the generic I2S build of squeezelite-esp32, and enter the following in the dac_config field in NVS:
            Code:
            model=TAS57xx,bck=33,ws=25,do=32,sda=27,scl=26,mute=14:0
            See post 1893 in this thread. FYI, the Polyvection DAC32 product also uses the PCM5122 DAC chip, and works fine with squeezelite-esp32 using this dac_config definition. Make sure that you use the IO pins of the WROVER module for I2S, I2C and mute signals as defined in this dac_config line.


            | LMS 8.3.2 on Linux Mint 21.2 | Squeezebox Boom | RPi0W + pCP 8.2.0 + HiFiBerry DAC Zero | ESP Muse Luxe |

            Comment


            • It works:


              The x400 was made as an a raspberry pi hat. So I use the raspberry pi gpio numbers for the documentation of my setup:


              Connection:
              Left : ESp32, right GPIO Raspberry
              bck=33: GPIO 18
              ws=25: GPIO 19
              do=32: GPIO 40
              sda=27: GPIO 2
              scl=26: GPIO 3

              ​;-)

              Volume control (hardware) works too.

              model=TAS57xx,bck=33,ws=25,do=32,sda=27,scl=26,mut e=14:0

              in dac_config (NVS EDITOR)
              ​

              Comment


              • Originally posted by cubii
                It works:​
                Congratulations!

                Originally posted by cubii
                Volume control (hardware) works too.​
                When you use the X400 as Raspberry Pi HAT, then I expect that hardware volume control will be used, provided that you select a compatible DAC model in piCorePlayer (I think that the Allo Boss DAC uses PCM5122 DAC). However when using the X400 with ESP32 and squeezelite-esp32 software, then I expect that hardware volume control will use a fixed setting, and actual volume control will be the software volume control that is implemented in squeezelite-esp32. Personally I would not worry about that, also with software volume control the audio quality will be fine.
                Last edited by CJS; 2023-05-18, 21:09.
                | LMS 8.3.2 on Linux Mint 21.2 | Squeezebox Boom | RPi0W + pCP 8.2.0 + HiFiBerry DAC Zero | ESP Muse Luxe |

                Comment


                • Originally posted by CJS
                  Congratulations!


                  When you use the X400 as Raspberry Pi HAT, then I expect that hardware volume control will be used, provided that you select a compatible DAC model in piCorePlayer (I think that the Allo Boss DAC uses PCM5122 DAC). However when using the X400 with ESP32 and squeezelite-esp32 software, then I expect that hardware volume control will use a fixed setting, and actual volume control will be the software volume control that is implemented in squeezelite-esp32. Personally I would not worry about that, also with software volume control the audio quality will be fine.
                  Absolutely!
                  LMS 8.2 on Odroid-C4 - SqueezeAMP!, 5xRadio, 5xBoom, 2xDuet, 1xTouch, 1xSB3. Sonos PLAY:3, PLAY:5, Marantz NR1603, Foobar2000, ShairPortW, 2xChromecast Audio, Chromecast v1 and v2, Squeezelite on Pi, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5, RivaArena 1 & 3

                  Comment


                  • I have a question regarding ESP32 (ESP32-DEVKITC-VE using 16 - I2S-4MFlash-1317) /SPDIF(optical) I wired it the following:

                    ESP32 - SPDIF
                    3,3V -> Vcc
                    32 -> Vin
                    GND -> GND

                    autoexec1: squeezelite -o spdif -b 500:2000 -C 30 -d all=info
                    spdif_config: bck=33,ws=25,do=32

                    The transmitters data sheet also suggests a 0.1uF capacitor between Vcc and GND which I also put in place.
                    While I can play many radio stations through LMS without an issue I encounter constant stutter while playing music using Spotify (cspot).
                    I already tried different optical cables but that doesn't seem to be the issue. My amplifier has small indicator on its display saying DIGI./PCM and this one blinks exact same rate as the audio stutters.
                    As soon as I end using Spotify eg switch to radio paradise no stutter anymore.
                    I'm a little bit confused what might cause this and would like to ask if someone has an idea?

                    Comment


                    • Originally posted by Rasputin_GY
                      I have a question regarding ESP32 (ESP32-DEVKITC-VE using 16 - I2S-4MFlash-1317) /SPDIF(optical) I wired it the following:

                      ESP32 - SPDIF
                      3,3V -> Vcc
                      32 -> Vin
                      GND -> GND

                      autoexec1: squeezelite -o spdif -b 500:2000 -C 30 -d all=info
                      spdif_config: bck=33,ws=25,do=32

                      The transmitters data sheet also suggests a 0.1uF capacitor between Vcc and GND which I also put in place.
                      While I can play many radio stations through LMS without an issue I encounter constant stutter while playing music using Spotify (cspot).
                      I already tried different optical cables but that doesn't seem to be the issue. My amplifier has small indicator on its display saying DIGI./PCM and this one blinks exact same rate as the audio stutters.
                      As soon as I end using Spotify eg switch to radio paradise no stutter anymore.
                      I'm a little bit confused what might cause this and would like to ask if someone has an idea?
                      Ah... that's a configuration I've not tested, so you might very well hit a CPU limitation because cspot is eating a fair bit of it. Have you tried to update to the latest version? I've done a few optimizations but I don't remember if I released them "officially"
                      LMS 8.2 on Odroid-C4 - SqueezeAMP!, 5xRadio, 5xBoom, 2xDuet, 1xTouch, 1xSB3. Sonos PLAY:3, PLAY:5, Marantz NR1603, Foobar2000, ShairPortW, 2xChromecast Audio, Chromecast v1 and v2, Squeezelite on Pi, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5, RivaArena 1 & 3

                      Comment


                      • Uh I honestly can't tell if your optimizations went public already but I initially flashed latest release I2S-4MFlash.16.1306.master-v4.3 and afterwards flashed most recent squeezelite.bin from latest action build .
                        Is there a better way/configuration/wiring to run SPDIF/Toslink only or anything you might suggest me to try ?

                        Comment


                        • Originally posted by Rasputin_GY
                          Is there a better way/configuration/wiring to run SPDIF/Toslink only or anything you might suggest me to try ?
                          If I understand correctly, SPDIF out uses more CPU power than I2S out, and the combination of SPDIF out and cspot (Spotify Connect function) seems to overload the ESP32 CPU.

                          Since you have LMS running, you can also listen to Spotify through LMS by installing the Spotty plugin on LMS, and selecting Spotify tracks via the LMS user interface that you are using. Did you try that? And can you confirm that in this case there is no stutter?
                          | LMS 8.3.2 on Linux Mint 21.2 | Squeezebox Boom | RPi0W + pCP 8.2.0 + HiFiBerry DAC Zero | ESP Muse Luxe |

                          Comment


                          • Originally posted by Rasputin_GY
                            Uh I honestly can't tell if your optimizations went public already but I initially flashed latest release I2S-4MFlash.16.1306.master-v4.3 and afterwards flashed most recent squeezelite.bin from latest action build .
                            Is there a better way/configuration/wiring to run SPDIF/Toslink only or anything you might suggest me to try ?
                            If you took the latest build from actions, then you really have the upmost update. There is not much I can do
                            LMS 8.2 on Odroid-C4 - SqueezeAMP!, 5xRadio, 5xBoom, 2xDuet, 1xTouch, 1xSB3. Sonos PLAY:3, PLAY:5, Marantz NR1603, Foobar2000, ShairPortW, 2xChromecast Audio, Chromecast v1 and v2, Squeezelite on Pi, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5, RivaArena 1 & 3

                            Comment


                            • Originally posted by philippe_44

                              If you took the latest build from actions, then you really have the upmost update. There is not much I can do
                              Well, I had a SqueezeAMP with me so I did a quick test of spotify and spdif and from a CPU load point of view, everything seems to be fine. I can't do an audio test unfortunately as I don't have anything that would accept optical input.
                              LMS 8.2 on Odroid-C4 - SqueezeAMP!, 5xRadio, 5xBoom, 2xDuet, 1xTouch, 1xSB3. Sonos PLAY:3, PLAY:5, Marantz NR1603, Foobar2000, ShairPortW, 2xChromecast Audio, Chromecast v1 and v2, Squeezelite on Pi, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5, RivaArena 1 & 3

                              Comment


                              • Originally posted by philippe_44

                                Well, I had a SqueezeAMP with me so I did a quick test of spotify and spdif and from a CPU load point of view, everything seems to be fine. I can't do an audio test unfortunately as I don't have anything that would accept optical input.
                                And I did have a conversation today with Philippe where he asked me to actually test a couple of things like increasing the priority of the i2s output task. In all cases, I confirm that this is a software issue and that Philippe has a plan to fix it.
                                LMS 7.9 - 1xRadio, 1xBoom, 5xDuet,3xTouch, 1 SB2. Sony PlayStation, Emby, Chromecast v1 and v2 and...
                                6xSqueezeAmp, several other ESP32-Wrover boards with jumper wires flying around, some with ethernet!

                                Comment

                                Working...
                                X
                                😀
                                🥰
                                🤢
                                😎
                                😡
                                👍
                                👎