I'm trying to communicate with an old i2c device and I'm getting wrong read values, and possibly even some incorrect write values too.
My logic analyzer shows random highs in the middle of a low.
This happens mostly on software i2c but I get incorrect reads on the hardware i2c too.
What could cause these spikes?
Here's an illustration. Look at the end of the second byte (C0)
Edit: This seems very related: https://www.raspberrypi.org/forums/viewtopic.php?t=223056