Raspberry Pi 5 + X1203 UPS + SPH0645 + MAX98357A Issue

< X1203
Revision as of 17:18, 31 July 2026 by 178.91.98.235 (talk)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

I encountered an issue while using a Raspberry Pi 5 with the Geekworm X1203 UPS together with two SPH0645 I2S microphones and a MAX98357A I2S amplifier.

The problem is caused by the dtoverlay=googlevoicehat-soundcard (or googlevoicehat) device tree overlay. During audio playback, this overlay drives GPIO16, which is used as the amplifier enable (shutdown) pin. Unfortunately, GPIO16 is also used by the X1203 UPS, and toggling this pin causes the UPS to interpret it as a control signal, resulting in an immediate system reboot.

To resolve the issue, I modified the Device Tree Source (.dts) for the overlay, changing the amplifier enable GPIO from GPIO16 to another unused GPIO. After recompiling the overlay (.dtbo) and replacing the original file in /boot/firmware/overlays/ (or /boot/overlays/, depending on the Raspberry Pi OS version), the problem was completely resolved.

Hopefully this information helps anyone using the same hardware combination.