Thanks for the hints - I will explore further. It looks like SPI mode could be the reason. Writing to bit 1 of register 0x70 disables I2C. There are many 0x70 bytes in the config file, so I could easily have done that.
It looks quite hard to overwrite the NVRAM, you need a distinct sequence of bytes (or a byte and a bit) that I can't find anywhere in my config file.
I don't think it has changed I2C address - that would require rewiring.
I have tried to flatten the battery by running a firmware (no sleep or shutdown) until it dies and won't power on. However, it is possible that there is enough power in the battery to keep the sensor alive. I haven't taken the watch apart.
I found a poster on the Borsch forum that had a similar problem, and solve it by a power cycle, so I will try running down the battery again and leaving for a few days (or weeks?) to see if that helps to flatten it totally!
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
Thanks for the hints - I will explore further. It looks like SPI mode could be the reason. Writing to bit 1 of register 0x70 disables I2C. There are many 0x70 bytes in the config file, so I could easily have done that.
It looks quite hard to overwrite the NVRAM, you need a distinct sequence of bytes (or a byte and a bit) that I can't find anywhere in my config file.
I don't think it has changed I2C address - that would require rewiring.
I have tried to flatten the battery by running a firmware (no sleep or shutdown) until it dies and won't power on. However, it is possible that there is enough power in the battery to keep the sensor alive. I haven't taken the watch apart.
I found a poster on the Borsch forum that had a similar problem, and solve it by a power cycle, so I will try running down the battery again and leaving for a few days (or weeks?) to see if that helps to flatten it totally!