Pisound not detected on Pi 4 after moving from Pi 5 — Reading card info failed: -22

Hi,

I’ve moved my Pisound HAT from a Raspberry Pi 5 (where it was working fine) to a Raspberry Pi 4 Model B Rev 1.4, and it’s not being detected.

Setup:

- Raspberry Pi 4 Model B Rev 1.4

- Patchbox OS (Bookworm), kernel 6.6.20+rpt-rpi-rt-v8

- dtoverlay=pisound in /boot/firmware/config.txt

- dtparam=spi=on

dmesg output:

[ 4.195821] pisound: Using SPI speed: 150000

[ 4.195834] pisound: Searching for spi device…

[ 4.195840] pisound: Found!

[ 4.379196] pisound: Reading card info failed: -22

[ 4.379218] pisound: pisnd_spi_init failed: -22

[ 4.379222] snd-rpi-pisound: probe of soc:sound failed with error -22

The module loads and finds the SPI device, but fails to read card info. aplay -l shows no pisound card.

What I’ve tried:

- Re-seating the HAT

- Inspecting the board for physical damage/flux residue (nothing visible)

- Attempting firmware reflash via avrdude with the pisound-firmware repo — avrdude connects to /dev/spidev0.0 but gets signature 0x000000 (device not responding)

- Confirmed SPI pins (GPIO 9/10/11) are correctly set to SPI alt functions

The HAT was previously on a Pi 5 using dtoverlay=pisound-pi5 (SPI speed 100kHz). Now on Pi 4 the driver uses 150kHz. Could the firmware have been updated for Pi 5 in a way that’s incompatible

with the Pi 4 driver? Or is there something else I should check?

Any advice appreciated. Thanks!

Does it still work with the Pi 5?

Did you do any soldering on Pisound?

Btw, no changes to /boot/firmware/config.txt are needed, as Pisound should be auto-detected and the necessary DT overlay should load automatically. Such lines in the file can actually prevent Pisound from getting detected.

Try running pintest on Pi 4 with nothing attached to any of the GPIO pins, to check whether any damage on the pins is detected. We had encountered some instances of faulty RPi pins in our units during development which prevented proper operation.

thanks for the prompt response, it’l looking like the hat is dead

  • No soldering was done
  • Pintest on Pi 4 with nothing attached: all pins clean
  • Tested on both Pi 4 and Pi 5 — same result on both
  • Without manual overlay: EEPROM not detected at boot at all (no HAT/EEPROM messages in dmesg)
  • With manual overlay: module loads, finds SPI device, but Reading card info failed: -22
  • avrdude gets signature 0x000000 — MCU not responding

also i should add I’m getting a constand undervoltage reported even though I’m using an official rpi 5 charger

Please inspect both sides of Pisound for any damage - things like missing components, scratches, some conductive material making shorts between components, burn marks, etc… It sounds like it had some physical damage. You may send me some photos of both sides of Pisound so I can take a look too.

I can’t see anything obvious upon inspection, I have a few photos, do you want me to DM them to you?

Yes, please PM them to me or send to our support email.