If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.
concerning the x400:
connected to an esp32 the volume control (hardware poti) works ...
perhaps it uses a different approach to control the volume?
It appears that we had a misunderstanding about hardware volume control .
When I was talking about hardware volume control in post numbers 1910 and 1912, I was referring to the digital volume control function inside the PCM5122 DAC chip. This I2C controlled digital volume control is located in front of the actual D to A converter function. See PCM5122 datasheet, section 8.2 (Functional Block Diagram). With this hardware volume control function, the audio volume can be controlled between -103dB and +24dB in steps of 0.5dB (see section 8.3.5.4 of the datasheet). The default setting (power-on reset value) is 0dB. What I meant to say is that the squeezelite-esp32 software does not make use of this I2C controlled digital volume control inside the PCM5122 chip. Instead, squeezelite-esp32 uses software volume control. In case of the PCM5122 it does not make a difference for the audio quality if software volume control is used inside the squeezelite-esp32 software, or hardware volume control inside the PCM5122. Software volume control is a multiplier function in software, and hardware volume control is a multiplier function in hardware. In both cases the multiplier function is located in front of the actual D to A converter. Assuming that software and hardware multiplication is done with similar precision, audio quality will be similar.
It appears that you are talking about a manual analog volume control by means of a stereo potentiometer on the X400 board . I did not know there was a potentiometer on the X400 board . I assume that this potentiometer is connected between the output of the PCM5122 DAC chip and the input of the Class-D Power amplifier chip. Indeed this manual volume control will always work, only it cannot be remote controlled.
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?
I had a better look at the issue and although it is not a CPU load problem, it is a complex scheduling situation that happens because we have very few DMA buffers for I2S and we can't increase them significantly. Fixing the issue I think it is requires a rewrite of the I2S backend. The mainline is not a big issue but then when you want to add synchronization it's a whole different problem. I will continue to think about it but because of the sync problem, I'm not very keen to start that.
Based on Philippe's explanation I understand that this only affects digital output without a dedicated circuit. And even if the I2S backend can be optimised or fixed, the digital outputs could still be sensitive to introduce some jitter. Therefore I would rather avoid this now and use a dedicated IC, like in the DIGI32.
Based on Philippe's explanation I understand that this only affects digital output without a dedicated circuit. And even if the I2S backend can be optimised or fixed, the digital outputs could still be sensitive to introduce some jitter. Therefore I would rather avoid this now and use a dedicated IC, like in the DIGI32.
Just for information, for I2S to SPDIF conversion the PolyVection DIGI32 uses the TI PCM9211 IC. Another option is the Wolfson / Cirrus Logic WM8804. This IC is used in multiple Hifiberry SPDIF HAT boards for the Raspberry Pi.
| LMS 8.3.2 on Linux Mint 21.2 | Squeezebox Boom | RPi0W + pCP 8.2.0 + HiFiBerry DAC Zero | ESP Muse Luxe |
Based on Philippe's explanation I understand that this only affects digital output without a dedicated circuit. And even if the I2S backend can be optimised or fixed, the digital outputs could still be sensitive to introduce some jitter. Therefore I would rather avoid this now and use a dedicated IC, like in the DIGI32.
No this has nothing to do with jitter. I2S works with the pll of the esp32 and uses DMA, so all this is way above any precision you might need or can hear. The problem is due to the fact that I don’t have time to replenish the buffers that are sent over DMA.
Just for information, for I2S to SPDIF conversion the PolyVection DIGI32 uses the TI PCM9211 IC. Another option is the Wolfson / Cirrus Logic WM8804. This IC is used in multiple Hifiberry SPDIF HAT boards for the Raspberry Pi.
The WM8804 is a bit on the expensive side for what it's worth. The PCM9211 is cheaper and f for digital out, it is likely just fine
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!
I can't read the type number, but I do recognize the Wolfson logo on the IC. So it is probably a WM8804 or WM8805. Board with chip does not cost much more than only the chip.
When buying a board be sure to buy an I2S to SPDIF converter board. There are also SPDIF to I2S converter boards that use the same chip (i.e. WM8804), but these boards cannot be used to create an SPDIF output.
| LMS 8.3.2 on Linux Mint 21.2 | Squeezebox Boom | RPi0W + pCP 8.2.0 + HiFiBerry DAC Zero | ESP Muse Luxe |
So I am trying to connect an RMII ethernet device to my WROVER module. I have followed the pin connections in the readme and have connected mdc to 4 and mdio to 34 and it does not seem to be working. I added the following to eth_config "model=lan8720,mdc=4,mdio=34". I am using a PCM5102 for the DAC with the following config "model=i2s,bck=33,ws=25,do=32". I am not really sure how to debug this to find where the issue is. Occasionally I will see "Configuring Ethernet failed: ESP_FAIL" in the logs but nothing more. Any ideas of how to debug this?
So I am trying to connect an RMII ethernet device to my WROVER module. I have followed the pin connections in the readme and have connected mdc to 4 and mdio to 34 and it does not seem to be working. I added the following to eth_config "model=lan8720,mdc=4,mdio=34". I am using a PCM5102 for the DAC with the following config "model=i2s,bck=33,ws=25,do=32". I am not really sure how to debug this to find where the issue is. Occasionally I will see "Configuring Ethernet failed: ESP_FAIL" in the logs but nothing more. Any ideas of how to debug this?
In order to track possible issues efficiently, you should open an issue on our GitHub project page. Make sure you provide as much details as possible like the version you are running, etc. Also, disable telnet, connect to your device with a serial adapter or USB cable if the adapter is built in, then get ALL the logs somewhere where I can read it. Obfuscate personal info as needed.
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!
In order to track possible issues efficiently, you should open an issue on our GitHub project page. Make sure you provide as much details as possible like the version you are running, etc. Also, disable telnet, connect to your device with a serial adapter or USB cable if the adapter is built in, then get ALL the logs somewhere where I can read it. Obfuscate personal info as needed.
Hey, i am the guy from Github trying to get a PCB. Seems i still can't DM you. If you can, please drop me a msg. Thx !!
But keep on posting and you'll be gain some privileges. Welcome to the forums!
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!
We process personal data about users of our site, through the use of cookies and other technologies, to deliver our services, personalize advertising, and to analyze site activity. We may share certain information about our users with our advertising and analytics partners. For additional details, refer to our Privacy Policy.
By clicking "I AGREE" below, you agree to our Privacy Policy and our personal data processing and cookie practices as described therein. You also acknowledge that this forum may be hosted outside your country and you consent to the collection, storage, and processing of your data in the country where this forum is hosted.
Comment