• Which firmware version are you using on Bangle.js?

    Normally when you upload code to flash, Espruino will attempt to execute the code directly from external flash. What can happen is if something was writing code to Storage and Storage got full, Espruino would then 'compact' the storage, re-writing external flash and removing all the 'erased' files to make room for more data.

    In the old firmwares, Espruino wasn't aware that a function might have been executing from the code in flash, so if things moved around in flash it'd then end up referencing the wrong code and something like you're seeing could be happening.

    Firmware 2v09 and later should have fixed that, however if you're triggering Storage compacts often enough for this to be an issue on earlier firmwares you might want to look at your code, as writing to flash memory that often won't be great for power usage or the longevity of the memory on the device.

About

Avatar for Gordon @Gordon started