Bump esptool-js from 0.5.3 to 0.5.4 (#556)

* Bump esptool-js from 0.5.3 to 0.5.4

Bumps [esptool-js](https://github.com/espressif/esptool-js) from 0.5.3 to 0.5.4.
- [Release notes](https://github.com/espressif/esptool-js/releases)
- [Commits](https://github.com/espressif/esptool-js/compare/v0.5.3...v0.5.4)

---
updated-dependencies:
- dependency-name: esptool-js
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* hard reset

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
This commit is contained in:
dependabot[bot] 2025-03-07 12:52:14 -05:00 committed by GitHub
parent 11a1574849
commit dedf3ef1f7
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 31 additions and 11 deletions

13
package-lock.json generated
View File

@ -3857,9 +3857,10 @@
} }
}, },
"node_modules/esptool-js": { "node_modules/esptool-js": {
"version": "0.5.3", "version": "0.5.4",
"resolved": "https://registry.npmjs.org/esptool-js/-/esptool-js-0.5.3.tgz", "resolved": "https://registry.npmjs.org/esptool-js/-/esptool-js-0.5.4.tgz",
"integrity": "sha512-RAzlZ3+o2a5h+1EZ/ItNEkj4hhBuUtX/BFGiEh7OyF4pSxTIBsBu0oWE2o7THQ+oUgd+bn682SPQQr8Fl2LMDw==", "integrity": "sha512-B+XcbbPBjfmnMHVGktGlNI85BbEIQs02y4hoYuqM25q6yVPqLE3bxce/KWtKXH4IGruWTkEujqdKxNeWEV2BDg==",
"license": "Apache-2.0",
"dependencies": { "dependencies": {
"atob-lite": "^2.0.0", "atob-lite": "^2.0.0",
"pako": "^2.1.0", "pako": "^2.1.0",
@ -7942,9 +7943,9 @@
"dev": true "dev": true
}, },
"esptool-js": { "esptool-js": {
"version": "0.5.3", "version": "0.5.4",
"resolved": "https://registry.npmjs.org/esptool-js/-/esptool-js-0.5.3.tgz", "resolved": "https://registry.npmjs.org/esptool-js/-/esptool-js-0.5.4.tgz",
"integrity": "sha512-RAzlZ3+o2a5h+1EZ/ItNEkj4hhBuUtX/BFGiEh7OyF4pSxTIBsBu0oWE2o7THQ+oUgd+bn682SPQQr8Fl2LMDw==", "integrity": "sha512-B+XcbbPBjfmnMHVGktGlNI85BbEIQs02y4hoYuqM25q6yVPqLE3bxce/KWtKXH4IGruWTkEujqdKxNeWEV2BDg==",
"requires": { "requires": {
"atob-lite": "^2.0.0", "atob-lite": "^2.0.0",
"pako": "^2.1.0", "pako": "^2.1.0",

View File

@ -6,6 +6,7 @@ import {
Manifest, Manifest,
FlashStateType, FlashStateType,
} from "./const"; } from "./const";
import { hardReset } from "./util/reset";
export const flash = async ( export const flash = async (
onEvent: (state: FlashState) => void, onEvent: (state: FlashState) => void,
@ -53,7 +54,8 @@ export const flash = async (
"Failed to initialize. Try resetting your device or holding the BOOT button while clicking INSTALL.", "Failed to initialize. Try resetting your device or holding the BOOT button while clicking INSTALL.",
details: { error: FlashError.FAILED_INITIALIZING, details: err }, details: { error: FlashError.FAILED_INITIALIZING, details: err },
}); });
await esploader.hardReset();
await hardReset(transport);
await transport.disconnect(); await transport.disconnect();
return; return;
} }
@ -74,7 +76,7 @@ export const flash = async (
message: `Your ${chipFamily} board is not supported.`, message: `Your ${chipFamily} board is not supported.`,
details: { error: FlashError.NOT_SUPPORTED, details: chipFamily }, details: { error: FlashError.NOT_SUPPORTED, details: chipFamily },
}); });
await esploader.hardReset(); await hardReset(transport);
await transport.disconnect(); await transport.disconnect();
return; return;
} }
@ -121,7 +123,7 @@ export const flash = async (
details: err.message, details: err.message,
}, },
}); });
await esploader.hardReset(); await hardReset(transport);
await transport.disconnect(); await transport.disconnect();
return; return;
} }
@ -199,7 +201,7 @@ export const flash = async (
message: err.message, message: err.message,
details: { error: FlashError.WRITE_FAILED, details: err }, details: { error: FlashError.WRITE_FAILED, details: err },
}); });
await esploader.hardReset(); await hardReset(transport);
await transport.disconnect(); await transport.disconnect();
return; return;
} }
@ -214,7 +216,7 @@ export const flash = async (
}, },
}); });
await esploader.hardReset(); await hardReset(transport);
console.log("DISCONNECT"); console.log("DISCONNECT");
await transport.disconnect(); await transport.disconnect();

17
src/util/reset.ts Normal file
View File

@ -0,0 +1,17 @@
import { Transport } from "esptool-js";
import { sleep } from "./sleep";
export const hardReset = async (transport: Transport) => {
console.log("Triggering reset");
await transport.device.setSignals({
dataTerminalReady: false,
requestToSend: true,
});
await sleep(250);
await transport.device.setSignals({
dataTerminalReady: false,
requestToSend: false,
});
await sleep(250);
await new Promise((resolve) => setTimeout(resolve, 1000));
};