Trying to get Speakers working on Chromebook Hardware

I’ve got an Asus CXB170CK chromebook that I’ve converted to use endeavorOS. I’m running the gnome DE - not sure if that’ll really matter, but figured I’d mention it since xfce is mostly the default. I’ve manged to get some sound output over my 3.5mm output jack using the audio device that identifies itself as Jasper Lake HD Audio Pro 1 when I flip the pavucontrol package’s configuration tab into the “Pro Audio” profile.
That said, I’ve tried flipping through all of my available output devices there - both with and without a device plugged into the 3.5mm jack in case there was a hardware-based switchover process instead of being software configured - and none of them seem to correspond to the laptop’s built-in speakers.
I gave running the alsa-info.sh script a shot to see if I could see anything that stood out to me, but all I really saw was that the output info didn’t seem to contain any devices that looked like they might correspond to the speakers either. Here’s my output from that: http://alsa-project.org/db/?f=28d210e21a4f3b9399f0f994b2a61b7d4e38c9bc
I’m wondering whether someone here might be able to help me to get the speakers working; I understand that I’m using some pretty obscure hardware here though, so I understand if it might not be possible.

Looks like your problem will be related to

[   69.094624]  DMIC16kHz: ASoC: dpcm_fe_dai_hw_params failed (-22)
[   69.102289] sof-audio-pci-intel-icl 0000:00:1f.3: ipc tx error for 0x60010000 (msg/reply size: 108/20): -22
[   69.102299] sof-audio-pci-intel-icl 0000:00:1f.3: HW params ipc failed for stream 3
[   69.102302] sof-audio-pci-intel-icl 0000:00:1f.3: ASoC: error at snd_soc_pcm_component_hw_params on 0000:00:1f.3: -22
[   69.102333]  DMIC16kHz: ASoC: __soc_pcm_hw_params() failed (-22)

Which probably indicates the system doesn’t have compatible firmware for the audio chipset.

Do you have sof-firmware installed? (If not, install it and reboot.)

1 Like

I do already have the sof-firmware package installed. I’m on version 2.2-1.

Next thing is to try linux-lts instead of linux to see whether this is a regression in the newer kernel series.

There might also be some hits if you search for the specific errors mentioned in the log (I’ve found several references so far, e.g. on the Arch forum).

You could also try adding snd_intel_dspcfg.dsp_driver=1 (and/or with different values, 1-3) to your kernel parameters as per https://askubuntu.com/a/1313726

Thanks for the advice!
Unfortunately, while switching to the LTS kernel branch resulted in me seeing a different set of audio devices as available, none of them worked. This included the headphone output: none of them produced any sound through it either.

I tried searching a couple of the lines of that output with only the first seeming to really point me to the arch wiki. There it looked like they recommended downgrading the sof-firmware package to version 1.9.3-1, which I tried. The result was no change from the baseline problem: 3.5mm output works, but not the speakers.

A lot of the other discussion around those output lines seemed to be related to people having problems with audio resuming after system suspend/sleep. Their situation seemed inapplicable and following their advice to unload and reload the snd_sof_pci_intel_icl module didn’t produce any results.

I also gave the kernel parameter modification suggestion you have a shot, but level 1 did something similar to when I was on the LTS where I had different, but all non-functional devices. Level 2 didn’t detect any audio devices at all. And, level 3 produced identical results to my baseline configuration where I can get headphone/3.5mm output, but no sound from the built-in speakers.

I had an issue on my laptop where the speakers weren’t working, what I had to do was go into alsamixer and manually then up the speakers which were reading as “headphones” which actually fixed it

@TheKarion, thank you for that suggestion. I’d actually already went and looked at alsa mixer before, but your suggestion made me go back and look again. By default it only shows me one audio channel there from pipewire and I didn’t think I could access most of the extra commands with the chromebook keyboard (no function keys).
I figured out how to bring up the help menu though and that brought me to figure out an alternative way to change settings for the sound card using ‘S’. Then I could select sof-rtl5682 - the dashboard for which was much more complicated that I’ve seen before in alsamiser, but I just did my best to turn as many things on/up as possible and, well, that did the trick. Switching to the default (un-numbered) “Jasper Lake HD Audio Pro” output now plays sound through laptop’s speakers!
Thanks everyone for your help with this issue.

Happy to help!