With nothing on the GPIO pins (including no fan shim) the I2C works normal.
sudo i2cdetect -y 1 completes all addresses near instantly.
Mount the Fan Shim, mechanical only - no software: I2C fails.
sudo i2cdetect -y 1 takes over a second per address
How to prevent the Fan Shim from interfering with I2C?
Official RPi4 power supply
Buster 4.19.75-v7l+ #1270
I considered making a dumb shim, but pins 3 & 5 are not so easily circumvented
Working Ok here for me, Pi 4B 4 gig running Buster. My Fan Shim is soldered to a booster header. I don’t know if it matters but I didn’t install the fan shim software.
EDIT: I guess I should also mention that I currently don’t have any i2c devices connected.
The BCM 3, pin 5 wake connection is to the button. My understanding is a ground is placed on pin 5 when, and only while, the button is pressed. If you don’t touch the button on the fan shim nothing should be connected to pin 5 other than a trace on the circuit board going to an open circuit.
If you power down, and leave the Pi powered up. Momentarily grounding GPIO 3 / pin 5 will boot it up. It can also be used to do a proper shut down when running with a config.txt edit, which I have done.
Solved it. The case I use is a tight fit.
Mounting the Fan Shim presses the button against the side of the case.
Physically removing the button from the Shim solved my issue.
I ended up cutting new pieces out of acrylic and getting 5V and ground from GPS and RTC hats that I have attached to all my RPis.
Now my problem is that the fans aren’t actually lasting that long. I’ve replaced a couple with a different type fan to see how that works.
Ah nice to hear you figured out what was going on.
These may be of use to you, to mount fans too.
The Difussers are precut and have mounting holes. You’d just have to make a hole for the fans in one.
And maybe get a long bolt pack