Well, nrf5x internal flash storage can be erased over SWD quite easily however Bangle.js storage is in external SPI flash which needs custom code to be executed. The password itself is however stored in RAM in variables so the password can be found by dumping RAM.
As for SWD access I have SWD Espruino console implemented via Segger RTT, currently it can be used as ordinary Espruino console from openocd via telnet. Something like
The second step is using any other espruino device to act as SWD debugger over 2 gpios and read/write RTT buffers in memory and redirect its console to this. So then one could connect to the other espruino device via IDE (over serial/usb/bluetooth) and have console of the device attached over SWD (like Bangle 2). I have the SWD part but not the RTT server part.
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.
Well, nrf5x internal flash storage can be erased over SWD quite easily however Bangle.js storage is in external SPI flash which needs custom code to be executed. The password itself is however stored in RAM in variables so the password can be found by dumping RAM.
As for SWD access I have SWD Espruino console implemented via Segger RTT, currently it can be used as ordinary Espruino console from openocd via telnet. Something like
as per https://openocd.org/doc/html/General-Commands.html#Real-Time-Transfer-_0028RTT_0029
And then one could telnet to locahost port 2222 and have espruino console over SWD cable. Unfortunately WebIDE in browser cannot connect to telnet port so it is not that much usable for the IDE.
The second step is using any other espruino device to act as SWD debugger over 2 gpios and read/write RTT buffers in memory and redirect its console to this. So then one could connect to the other espruino device via IDE (over serial/usb/bluetooth) and have console of the device attached over SWD (like Bangle 2). I have the SWD part but not the RTT server part.