200 ms delay does not solve it, anyways that would add 40 seconds to every power up. It definitely seems to fit everything @Mr_John_Smith is saying (except this is I2C instead of SPI). If I access the display after each read (which is inherently a 15 ms delay), I can finish reading 200 bytes at light speed. If I don’t access the display and keep the config on the EEPROM, it takes several minutes. The display is configured at 400 khZ and the EEPROM is at 200 kHz. Do they need the same timing?
@jwizard93 I will have to double check what is happening to temp but I don’t think that is the issue if accessing the other device on the I2C line immediately after a read is solving the issue.
@Justin Already tested it removing all debug prints and only print to the display (which is how I found that printing to the display after each read solves the symptom)
Could it be a result of setting the I2CDevice.Config every call to read if it is already set? I am not creating a new object… I made it so I could pass in configurations but ended up using separate methods in the class anyways