Fix for errors from Bangle.js when resetting a device that may already have code in `.boot0`/etc

pull/129/head
Gordon Williams 2020-03-09 14:31:29 +00:00
parent 0da0acefd2
commit 4e19affb76
1 changed files with 3 additions and 3 deletions

View File

@ -2,8 +2,8 @@ Puck.debug=3;
// FIXME: use UART lib so that we handle errors properly // FIXME: use UART lib so that we handle errors properly
var Comms = { var Comms = {
reset : () => new Promise((resolve,reject) => { reset : (opt) => new Promise((resolve,reject) => {
Puck.write("\x03\x10reset();\n", (result) => { Puck.write(`\x03\x10reset(${opt=="wipe"?"1":""});\n`, (result) => {
if (result===null) return reject("Connection failed"); if (result===null) return reject("Connection failed");
setTimeout(resolve,500); setTimeout(resolve,500);
}); });
@ -73,7 +73,7 @@ removeApp : app => { // expects an app structure
})); }));
}, },
removeAllApps : () => { removeAllApps : () => {
return Comms.reset().then(() => new Promise((resolve,reject) => { return Comms.reset("wipe").then(() => new Promise((resolve,reject) => {
// Use write with newline here so we wait for it to finish // Use write with newline here so we wait for it to finish
Puck.write('\x10E.showMessage("Erasing...");require("Storage").eraseAll();Bluetooth.println("OK")\n', (result,err) => { Puck.write('\x10E.showMessage("Erasing...");require("Storage").eraseAll();Bluetooth.println("OK")\n', (result,err) => {
if (!result || result.trim()!="OK") return reject(err || ""); if (!result || result.trim()!="OK") return reject(err || "");