Roon Bridge on Pi3B+/Raspbian sees 3 audio devices

I’m trying to use my Pi 3B+ running Raspbian to drive my Samsung sound bar through its HDMI input. My Pi has no HAT or USB DAC so I would have assumed that I would either see only one audio output (the system output directed either to auto or forced to either 3.5mm or HDMI) or at most maybe 2 outputs, the 3.5mm and HDMI. My Roon Core sees the bridge just fine but the bridge is reporting back 3 audio devices - “bcm2835 ALSA”, “bcm2835 ALSA IEC/HDMI” and “bcm2835 ALSA IEC/HDMI1”. So far I can enable and play to them all but haven’t seemed to be able to get any sound out of my sound bar from any of them which is curious because it was all working before I went away for 3 weeks and powered everything off. On reboot it just won’t play now. Has the bridge somehow misdiscovered the audio devices on reboot? Is there any convenient way to get it to rebuild its picture of what devices are available short of uninstalling and reinstalling the whole thing? Or maybe seeing 2 HDMI devices on a Pi is for some reason to be expected in which case which one should I be using?

Did you try going into Roon - Settings - Audio and resetting the output device?

Hello @Julian,

Are you sure that your Samsung sound bar has an “HDMI” input? These are rare on sound bar devices, most often they are “HDMI ARC” inputs. “HDMI ARC” is incompatible with the “HDMI” output of a Raspberry Pi.

-John

Hi Jim - Not sure exactly what you mean by “resetting” because I can’t see that option in Settings/Audio. I’ve clicked the refresh symbol next to the bridge as a whole and for all 3 of the devices I’ve disabled and re-enabled each one (numerous times) and also done “Load Defaults” on each as well. All to no effect.

That’s what I was suggesting.

Hi John,

Out of interest I’ll look at the labelling of the input on my sound bar later today but my sound bar is definitely compatible, or was about 5 weeks ago before I went on holiday when it had all been working fine for months beforehand.

I’ve actually had this issue before when, after restarting everything (core, bridge, router) after coming back from a long trip where I’d cut power and water to my home, it just wouldn’t play and again the bridge showed more audio devices than I expected.

After a bit of messing around I managed to get it going again last time but unfortunately that was 6 months ago and I can’t remember what I did. If I can fix it this time I’d like to understand what actually went wrong so that I can document. I’ve it working for a few months, then breaking, then working again for a few months, and now broken again all on exactly the same hardware and cabling so it isn’t that.

Thanks Jim. Done all that.

I still don’t fully understand what happened but I now have music playing from my Pi to the HDMI input of my sound bar (which was labelled simply “HDMI In”).

I tried running ‘speaker-test’ to play pink noise to the HDMI port and it kept coming out of the 3.5mm port even after I’d done a ‘amixer cset numid=3 2’ to set the default output to the HDMI port. (I also tried sudo-ing the amixer command in case it was an unreported permission issue.) Nothing would get the sound to HDMI and the Pi audio config page (https://www.raspberrypi.org/documentation/configuration/audio-config.md) said that “in some rare cases” the HDMI port might get stuck in DVI mode and that ‘hdmi_drive=2’ should be put into /boot/config.text to force the HDMI port into audio mode. What’s weird though is that I had already put that line in config.txt when I first set this up months ago but maybe I had some sort of glitch during or after boot that messed up the state of the HDMI port.

So, it’s working but I’m still confused about why Roon Bridge is showing 3 audio devices. I can understand why it might be showing 2 it doesn’t use the concept of a default audio device so is showing 3.5mm and HDMI as discreet devices. That would be perfectly reasonable, helpful in fact because then one explicitly selects the device in Roon and doesn’t need to worrying about doing the ‘amixer’ command to correctly set the default audio output device, but I still don’t understand why I see two HDMI devices.

Maybe the chipset in the Pi 3B+ theoretically supports 2 HDMI ports but only one is tracked & socketed on the PCB? Alternatively might it be a bug in Roon Bridge on the Pi?

2 Likes