I've been having trouble getting audio HATs working on my Raspberry Pi Zero 2W, which is running Bookworm OS and kernel 6.12.41-v7+.
I started with the Seeedstudio ReSpeaker 2-Mics HAT v1, but ran into the error:
.
SeeedStudio support confirmed that the v1 HAT isn't compatible with the kernel 6.12, it's more compatible with kernels around 5.10.X, and Bullseye OS.
I accepted that and then purchased another, similar audio Hat, the SB Audio Codec Hat https://shop.sb-components.co.uk/collec ... spberry-pi. I even contacted SB ahead of purchasing it to make sure it would work with kernel 6.1.41, and they replied that it should work fine as long as I add the WM8960 device tree overlay to my /boot/firmware/config.txt file...which I did.
ALSA detects the device with:show the wm8960 device as sound card 1, device 0.
I've enabled I2C and I2S in raspi-config.
However, when I try to record:, it comes up with
I get:I've also tried and from the parameters that are displayed, S16_LE, 8000Hz are 'within the hw params'. I've tried using both 'hw' and 'plughw'.
I've tried (without the "-D") and it does create a file, but I don't think it's recording anything because aplay test.wav doesn't play any sound. Using I can see that S16_LE, 8000 Hz are within the reported parameters, so it shouldn't be failing.
I have encountered problems installing the driver. Running: I've had this error appear:
I tried reinstalling the headers, but I get this error:
but the package can't be found....
I tried uninstalling and reinstalling the Audio Codec HAT driver and after rebooting, it's listed there after lsmod | grep wm8960.
, gives me:
(I think they are supposed to have "installed" next to them?)
I'm not sure, but it could be that my problem is related to viewtopic.php?t=349270 or this https://github.com/waveshareteam/WM8960 ... /issues/76 or this viewtopic.php?t=349270
When I try to start the soundcard service I encounter more errors:
When I check the systemctl status and journalctl I get this:
I have been trying for 3 days to get an audio HAT working on my pi zero and I've purchased 2 different Hats. Hoping someone can help or lead me in the right direction. I've worked with ChatGPT to try and figure this issue out too. It really should be straightforward, but something seems to be blocking the hw parameters.
I started with the Seeedstudio ReSpeaker 2-Mics HAT v1, but ran into the error:
Code:
unable to install hw paramsSeeedStudio support confirmed that the v1 HAT isn't compatible with the kernel 6.12, it's more compatible with kernels around 5.10.X, and Bullseye OS.
I accepted that and then purchased another, similar audio Hat, the SB Audio Codec Hat https://shop.sb-components.co.uk/collec ... spberry-pi. I even contacted SB ahead of purchasing it to make sure it would work with kernel 6.1.41, and they replied that it should work fine as long as I add the WM8960 device tree overlay to my /boot/firmware/config.txt file...which I did.
ALSA detects the device with:
Code:
aplay -larecord -lI've enabled I2C and I2S in raspi-config.
However, when I try to record:
Code:
arecord -D plughw:1,0 S16_LE --r 8000 -d 5 test.wavI get:
Code:
unable to install hw paramsCode:
arecord -D dump-hw-paramsI've tried
Code:
arecord plughw:1,0 S16_LE --r 8000 -d 5 test.wavCode:
--dump-hw-paramsI have encountered problems installing the driver. Running:
Code:
sudo /.install.shCode:
Error! The module/version combo: wm8960-soundcard-1.0 is not located in the DKMS tree. Creating symlink /var/lib/dkms/wm8960-soundcard/1.0/source -> /usr/src/wm8960-so undcard-1.0 Sign command: /lib/modules/6.12.41-v7+/build/scripts/sign-file Binary /lib/modules/6.12.41-v7+/build/scripts/sign-file not found, modules won't be signed Error! Your kernel headers for kernel 6.12.41-v7+ cannot be found at /lib/module s/6.12.41-v7+/build or /lib/modules/6.12.41-v7+/source. Please install the linux-headers-6.12.41-v7+ package or use the --kernelsourcedi r option to tell DKMS where it's located. Created symlink /etc/systemd/system/sysinit.target.wants/wm8960-soundcard.servic e → /lib/systemd/system/wm8960-soundcard.service. Job for wm8960-soundcard.service failed because the control process exited with error code. See "systemctl status wm8960-soundcard.service" and "journalctl -xeu wm8960-soundcard.service" for details.Code:
sudo apt install linux-headers-$(uname -r)Reading package lists... Done Building dependency tree... Done Reading state information... Done E: Unable to locate package linux-headers-6.12.41-v7 E: Couldn't find any package by glob 'linux-headers-6.12.41-v7'I tried uninstalling and reinstalling the Audio Codec HAT driver and after rebooting, it's listed there after lsmod | grep wm8960.
Code:
sudo dkms statusCode:
seeed-voicecard/0.3: added wm8960-soundcard/1.0: addedI'm not sure, but it could be that my problem is related to viewtopic.php?t=349270 or this https://github.com/waveshareteam/WM8960 ... /issues/76 or this viewtopic.php?t=349270
When I try to start the soundcard service I encounter more errors:
Code:
sudo systemctl restart wm8960-soundcard.serviceJob for wm8960-soundcard.service failed because the control process exited with error code. See "systemctl status wm8960-soundcard.service" and "journalctl -xeu wm8960-soun dcard.service" for details.Code:
$ systemctl status wm8960-soundcard.service × wm8960-soundcard.service - WM8960 soundcard service Loaded: loaded (/lib/systemd/system/wm8960-soundcard.service; enabled; preset: enabled) Active: failed (Result: exit-code) since Thu 2025-08-14 21:46:07 BST; 2min 13s ago Process: 786 ExecStart=/usr/bin/wm8960-soundcard (code=exited, status=99) Main PID: 786 (code=exited, status=99) CPU: 334ms Aug 14 21:46:04 aliaspi systemd[1]: Starting wm8960-soundcard.service - WM8960 soundcard service... Aug 14 21:46:04 aliaspi wm8960-soundcard[786]: + exec Aug 14 21:46:04 aliaspi wm8960-soundcard[787]: ++ basename /usr/bin/wm8960-soundcard Aug 14 21:46:07 aliaspi systemd[1]: wm8960-soundcard.service: Main process exited, code=exited, status=99/n/a Aug 14 21:46:07 aliaspi systemd[1]: wm8960-soundcard.service: Failed with result 'exit-code'. Aug 14 21:46:07 aliaspi systemd[1]: Failed to start wm8960-soundcard.service - WM8960 soundcard service.Code:
$ journalctl -xeu wm8960-soundcard.service Aug 14 21:46:04 aliaspi wm8960-soundcard[787]: ++ basename /usr/bin/wm8960-soundcard Aug 14 21:46:07 aliaspi systemd[1]: wm8960-soundcard.service: Main process exited, code=exited, status=99/n/a ░░ Subject: Unit process exited ░░ Defined-By: systemd ░░ Support: https://www.debian.org/support ░░ ░░ An ExecStart= process belonging to unit wm8960-soundcard.service has exited. ░░ ░░ The process' exit code is 'exited' and its exit status is 99. Aug 14 21:46:07 aliaspi systemd[1]: wm8960-soundcard.service: Failed with result 'exit-code'. ░░ Subject: Unit failed ░░ Defined-By: systemd ░░ Support: https://www.debian.org/support ░░ ░░ The unit wm8960-soundcard.service has entered the 'failed' state with result 'exit-code'. Aug 14 21:46:07 aliaspi systemd[1]: Failed to start wm8960-soundcard.service - WM8960 soundcard service. ░░ Subject: A start job for unit wm8960-soundcard.service has failed ░░ Defined-By: systemd ░░ Support: https://www.debian.org/support ░░ ░░ A start job for unit wm8960-soundcard.service has finished with a failure. ░░ ░░ The job identifier is 870 and the job result is failed. lines 74-96/96 (END)Statistics: Posted by Raspi-45 — Fri Aug 15, 2025 1:36 pm