Hello,
I'm new to LibreELEC. I have just installed it on a Raspberry Pi 4 and I'm having troubles getting my DAC to work, this is an IQaudio Codec Zero (IQaudio Codec Zero).
I have used this in the past with Raspbian and ALSA without issues.
In the config.txt I have added the following line:
When I go to Setup > System > Audio I see the DAC listed under the Audio output device. The options I have there are:
- ALSA: Default (IQaudIOCODEC IQaudIO CODEC HiFi v1.2 da7213-hifi-0)
- ALSA: IQaudIOCODEC, IQaudIO CODEC HiFi v1.2 da7213-hifi-0
- PI: HDMI
- PI: Analogue
- PI HDMI and Analogue
- PULSE: Default, Bluetooth Audio (PULSEAUDIO)
However, I select the first or the second option I have no sound... with the 3rd option I have the sound through my TV speakers.
Logging in via SSH I can see the audio card with aplay -l:
LibreELEC:~ # aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: IQaudIOCODEC [IQaudIOCODEC], device 0: IQaudIO CODEC HiFi v1.2 da7213-hifi-0 [IQaudIO CODEC HiFi v1.2 da7213-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
LibreELEC:~ # aplay -L
null
Discard all samples (playback) or generate zero samples (capture)
default:CARD=IQaudIOCODEC
IQaudIOCODEC, IQaudIO CODEC HiFi v1.2 da7213-hifi-0
Default Audio Device
sysdefault:CARD=IQaudIOCODEC
IQaudIOCODEC, IQaudIO CODEC HiFi v1.2 da7213-hifi-0
Default Audio Device
Display More
And with aslamixer I can adjust the volumes. However, If I run the speaker test from the command line I do not hear any sound and this ends with the following error:
LibreELEC:~ # speaker-test -Dsysdefault:IQaudIOCODEC -c2
speaker-test 1.1.9
Playback device is sysdefault:IQaudIOCODEC
Stream parameters are 48000Hz, S16_LE, 2 channels
Using 16 octaves of pink noise
Rate set to 48000Hz (requested 48000Hz)
Buffer size range from 128 to 131072
Period size range from 64 to 65536
Using max buffer size 131072
Periods = 4
was set period_size = 32768
was set buffer_size = 131072
0 - Front Left
1 - Front Right
Write error: -5,Input/output error
xrun_recovery failed: -5,Input/output error
Transfer failed: Input/output error
Display More
Modules seem to be ok:
LibreELEC:~ # lsmod | grep snd
snd_soc_da7213 40960 1
snd_soc_iqaudio_codec 16384 0
snd_soc_bcm2835_i2s 20480 2
However, seems there is a problem with the codec:
LibreELEC:~ # dmesg | grep codec
[ 16.641114] snd-rpi-iqaudio-codec soc:sound: ASoC: CPU DAI (null) not registered - will retry
[ 16.642229] snd-rpi-iqaudio-codec soc:sound: ASoC: CODEC DAI da7213-hifi not registered - will retry
[ 16.689359] snd-rpi-iqaudio-codec soc:sound: ASoC: CODEC DAI da7213-hifi not registered - will retry
[ 16.796742] snd-rpi-iqaudio-codec soc:sound: da7213-hifi <-> fe203000.i2s mapping ok
[ 16.989577] bcm2835_codec: module is from the staging directory, the quality is unknown, you have been warned.
[ 16.996240] bcm2835-codec bcm2835-codec: Device registered as /dev/video10
[ 16.996276] bcm2835-codec bcm2835-codec: Loaded V4L2 decode
[ 17.002713] bcm2835-codec bcm2835-codec: Device registered as /dev/video11
[ 17.002746] bcm2835-codec bcm2835-codec: Loaded V4L2 encode
[ 17.007285] : bcm2835_codec_get_supported_fmts: port has more encoding than we provided space for. Some are dropped.
[ 17.008556] bcm2835-codec bcm2835-codec: Device registered as /dev/video12
[ 17.008577] bcm2835-codec bcm2835-codec: Loaded V4L2 isp
Display More
Any idea on what I could try to solve this?
Thank you!