• I have done more investigation. I am still quite baffled.

    I tried directly using I2C.writeTo() to write the EEPROM, to no avail. What is weird is that the first two bytes of the writes must be making it through because reads require two bytes to be written to set the address, and that works - but if the third byte made it out, that would enable it to write one byte, and it doesn't do that.

    I can move the same module that fails on ESP8266 running 1v95, onto a pico running 1v95 and it works fine - and reads work fine on both. So it's not a hardware issue with the EEPROM or something silly like not holding WP low. And it works fine on an ESP8266 running 1v91.

    I just can't figure out what exactly is going on here... Anyone?

    I suspect it's this change that broke it: ESP8266: Add i2c clock stretch (#1097)

About

Avatar for DrAzzy @DrAzzy started