I am trying to interface an ESP8266 microcontroller with an ICM-20948 IMU chip.
Using the reference code from Invensense, the internet and trial and error, I managed to configure the chip do do 9-axis sensor fusion using its internal compass and DMP.
I am using a mosfet(BSS138)-based level shifter and a linear voltage regulator to provide the ICM with its required 1.7V VCC / logic voltage.
For the first 5-30 seconds, everything works fine and I get perfect drift-corrected quaternions. However, the data stream then just apruptly stops and the call to
Wire.endTransmission() fails with error 4 (which very helpfully means "other error")
Does anyone know what the reason for such behavior could be?