As the title suggest, the problem is hardly new.
But, unfortunately, as I have spent an entire day battling this, I feel there is something really weird going on here.
At this point, this has been such a bizarre adventure that I feel that I NEED to figure out what is wrong here. Sure, a reinstall could potentially save me much much more time, but I feel the education from this is invaluable.
Basic details
Raspberry Pi 5
OS image on SD at time of install: Raspberry Pi OS Lite
I have two SD cards. One is old-ish… I think it was imaged about 6 months ago.
Its config settings hint that it was before the cm5 at least.
Factors to rule out: Literally most hardware issues
e.g. Power supply, HDMI cable, any pi hats, etc.
Why do I think I can claim this?
I have the privilege of TWO installations on two SD cards. One that has a working sound setup.
The sound works with no display manager session, or during a running x11 session.
e.g. ffplay ~/some_music.mp3 or mpv ~/some_music.mp3 produces the expected behavior, that is, the music plays.
What is happening
>aplay -l
aplay: device_list:274: no soundcards found…
I have followed the install process of pipewire and I have gone as far as to check the running services on systemd (systemctl —user status)
(Install process: Debian 12 wiki pipewire install guide)
Both systems are running the EXACT same services:
Thus:
>sudo vcgencmd get_config hdmi_drive
hdmi_drive is unknown
>vcgencmd get_config int
So… Ill tentatively believe that the boot settings are applied (and yes, between SD card swaps nothing else changes. The HDMI cable is plugged into port 0, the one NEXT to the USB C power input)
but, doubt!
In my /boot/firmware/config.txt
I have the line:
dtparam=audio=on
When I run: lsmod | grep snd
I do not see snd_bcm2835 (I have not checked this on my working install)
This makes me suspect that there is something fishy afoot here.
Of course, I run: modprobe snd-bcm2835
lsmod | grep snd does show a snd_bcm2835
But aplay -l still reports no soundcards.
As a sanity check:
systemctl —user restart pipewire-pulse pipewire wireplumber
But still, aplay -l still reports nothing.
Lastly, when I run sudo raspi-config, -> system options -> S2 Audio
For a moment the tool seems to quit (as in, I see my terminal) before reloading to the first menu. There is sadly no print on the terminal to hint what has happened and I cannot seem to find a verbose mode (unless it IS -v, … and it prints out nothing)
Of course. There is still options to pursue, but I feel I have done at least the minimum before I can at least ask for a hint.
How does the system check for audio outputs? As in, the thing that shows “card 0, card1, etc” in aplay -l? Is there a way to force reload it? A way to get debug information from a “reload/recheck”? Of course, I will continue looking for now.
Some extra basics
uname -r
6.6.62+rpt-rpi-2712
pipewire —version
But, unfortunately, as I have spent an entire day battling this, I feel there is something really weird going on here.
At this point, this has been such a bizarre adventure that I feel that I NEED to figure out what is wrong here. Sure, a reinstall could potentially save me much much more time, but I feel the education from this is invaluable.
Basic details
Raspberry Pi 5
OS image on SD at time of install: Raspberry Pi OS Lite
I have two SD cards. One is old-ish… I think it was imaged about 6 months ago.
Its config settings hint that it was before the cm5 at least.
Factors to rule out: Literally most hardware issues
e.g. Power supply, HDMI cable, any pi hats, etc.
Why do I think I can claim this?
I have the privilege of TWO installations on two SD cards. One that has a working sound setup.
The sound works with no display manager session, or during a running x11 session.
e.g. ffplay ~/some_music.mp3 or mpv ~/some_music.mp3 produces the expected behavior, that is, the music plays.
What is happening
>aplay -l
aplay: device_list:274: no soundcards found…
I have followed the install process of pipewire and I have gone as far as to check the running services on systemd (systemctl —user status)
(Install process: Debian 12 wiki pipewire install guide)
Both systems are running the EXACT same services:
Now. I do understand that there are issues that is solved with config.txt (/boot/firmware/config.txt)pipewire-pulse.service
pipewire.service
wireplumber.service
Thus:
Whilst I get this response from vcgencmd (with or without sudo yields same result)hdmi_drive=2
hdmi_force_hotplug=1
hdmi_force_edid_audio=1
>sudo vcgencmd get_config hdmi_drive
hdmi_drive is unknown
>vcgencmd get_config int
Among other things^hdmi_force_edid_audio:0=1
hdmi_force_hotplug:0=1
hdmi_drive:0=2
So… Ill tentatively believe that the boot settings are applied (and yes, between SD card swaps nothing else changes. The HDMI cable is plugged into port 0, the one NEXT to the USB C power input)
but, doubt!
In my /boot/firmware/config.txt
I have the line:
dtparam=audio=on
When I run: lsmod | grep snd
I do not see snd_bcm2835 (I have not checked this on my working install)
This makes me suspect that there is something fishy afoot here.
Of course, I run: modprobe snd-bcm2835
lsmod | grep snd does show a snd_bcm2835
But aplay -l still reports no soundcards.
As a sanity check:
systemctl —user restart pipewire-pulse pipewire wireplumber
But still, aplay -l still reports nothing.
Lastly, when I run sudo raspi-config, -> system options -> S2 Audio
For a moment the tool seems to quit (as in, I see my terminal) before reloading to the first menu. There is sadly no print on the terminal to hint what has happened and I cannot seem to find a verbose mode (unless it IS -v, … and it prints out nothing)
Of course. There is still options to pursue, but I feel I have done at least the minimum before I can at least ask for a hint.
How does the system check for audio outputs? As in, the thing that shows “card 0, card1, etc” in aplay -l? Is there a way to force reload it? A way to get debug information from a “reload/recheck”? Of course, I will continue looking for now.
Some extra basics
uname -r
6.6.62+rpt-rpi-2712
pipewire —version
wireplumber —versionpipewire
Compiled with libpipewire 1.2.4
Linked with libpipewire 1.2.4
wireplumber
Compiled with libwireplumber 0.4.13
Linked with libwireplumber 0.4.13
Statistics: Posted by PuzzleSad — Sat Dec 28, 2024 9:27 pm