I have just put Espruino (2v24) on a smartwatch that has an nRF52832 on board. I determined the button GPIO and created a board file for it, that all works well. If I issue an E.reboot(), everything is fine, comes back to Espruino. Also if the Watchdog gets tripped, it boots to Espruino. If I let the battery run down to cold and plug it in however it jumps to DFU and stays there. I have to reload Espruino each time. I'll enclose the board file below. I've had issues with getting to DFU at all from other boards/watches I've worked on, this is the first time I've experienced this.
Notes: BTN1 (D28) is normally high, goes low when pressed, so I inverted it in the board file. I gathered that the IN_PULLDOWN works opposite when inverted as the pin needed to be pulled high to properly register. Works as expected when running (normally low, pressing sends it high).
Also: originally I did a full build (RELEASE=1 BOARD=M98) and used SWD to program the entire package (so it received SD, firmware, bootloader, MBR and UICR). The current UICR is all "ffffffff" except:
0x10001014: 0x78000
0x10001018: 0x7e000
Any ideas very much appreciated...
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.
I have just put Espruino (2v24) on a smartwatch that has an nRF52832 on board. I determined the button GPIO and created a board file for it, that all works well. If I issue an E.reboot(), everything is fine, comes back to Espruino. Also if the Watchdog gets tripped, it boots to Espruino. If I let the battery run down to cold and plug it in however it jumps to DFU and stays there. I have to reload Espruino each time. I'll enclose the board file below. I've had issues with getting to DFU at all from other boards/watches I've worked on, this is the first time I've experienced this.
Notes: BTN1 (D28) is normally high, goes low when pressed, so I inverted it in the board file. I gathered that the IN_PULLDOWN works opposite when inverted as the pin needed to be pulled high to properly register. Works as expected when running (normally low, pressing sends it high).
Also: originally I did a full build (RELEASE=1 BOARD=M98) and used SWD to program the entire package (so it received SD, firmware, bootloader, MBR and UICR). The current UICR is all "ffffffff" except:
0x10001014: 0x78000
0x10001018: 0x7e000
Any ideas very much appreciated...
1 Attachment