Can't get Display Hat Mini to work with Adafruit speaker bonnet

I need some help figuring out this technical problem.

My project involves a Raspberry Pi Zero 2 W, an Adafruit I2S Stereo Speaker Bonnet, and a Display HAT Mini. The components stack very nicely with 20mm header pins.

The RPi and speaker bonnet work great together. The RPi and Display Hat Mini also work great together. Unfortunately, when I stack them, the display doesn’t behave correctly. The PyGame examples run fine without the bonnet, but when the bonnet is connected, the display often doesn’t light. The LEDs on the sides of the display seem to work fine, and sometimes it looks like the backlight of the LED is working, but nothing shows up on the display.

According to pinout.xyz, these devices should work just fine together: the display uses pins 11, 13, 15, 18, 19, 21, 22, 23, 26, 29, 31, 33, and 36 (link: https://pinout.xyz/pinout/display_hat_mini), and the speaker bonnet uses pins 12, 35, and 40 (link: https://pinout.xyz/pinout/speaker_bonnet). That is, the speaker bonnet only uses the I2S pins, and the hat uses SPI and some general-purpose pins for power and button-presses. I can’t find any specific indication of incompatibility.

My best guess is insufficient power. I see this comment in the speaker bonnet notes:

And that would make sense if I were maximizing power output. But I’m not - I’m using dinky little 2W 8-ohm speakers and keeping the gain at a minimum. Besides, the power problems occur even when audio is silent and the speaker bonnet is idle. So it seems unlikely to me that microUSB can’t power the Raspberry Pi, the speaker bonnet, and the display hat.

Any suggestions? Thanks in advance.

Pins seem to be fine (and the Pirate Audio Hats use the same technology, i.e. I2S and SPI display).

Power supply is not only about power, but also about voltage. The latter drops when your devices need current. So maybe your problem is voltage related.

One other issue could be the limited amount of current that the GPIOs provide. There is a limit per pin and across all pins. And the power-pins are limited too.