Replies: 11 comments 1 reply
-
|
Yes I have seen what you have done, it's a great Idea, how do you suggest I proceed to integrate it ? |
Beta Was this translation helpful? Give feedback.
-
|
The package is available from NPM registry. Replacing the
Example: read 4KB from Offset 0x0
const data = await espStubLoader.readFlash(
0x0, // address
4096, // Size in Bytes
(packet, progress, totalSize) => {
// Optional: Progressbar-Callback
console.log(`Progress: ${progress}/${totalSize} bytes`);
}
);
// data is an Uint8Array containing the read data |
Beta Was this translation helpful? Give feedback.
-
|
Great! |
Beta Was this translation helpful? Give feedback.
-
|
Hello @Jason2866, I need to confirm something: I rely on those to read real efuse-based info from the chip. |
Beta Was this translation helpful? Give feedback.
-
|
@thelastoutpostworkshop No, it does not. Chip description, features, Psram, etc are not available / not same. The tool focus on flashing and reading. This works fast, correct (all MCUs!) and reliable. The mentioned stuff is easy to implement. I will not do, since it bloats and is not needed for what the tool is designed. |
Beta Was this translation helpful? Give feedback.
-
|
Thanks for the clarification — that makes total sense. I completely understand the design goal of keeping the tool focused, fast, and reliable for flashing and reading. Your chip-detection and flash-read logic is clearly more robust than esptool.js, and I don’t want to interfere with that. For my use case, I do rely on real chip metadata (psram vendor/capacity, crystal freq, efuse-based fields, etc.). Since that’s outside the scope of your tool, I’ll look into forking it and adding those metadata helpers separately, without touching the core flashing logic. Thanks again for the explanation and the great work on this project! |
Beta Was this translation helpful? Give feedback.
-
|
@Jason2866 I would like to use the npm package, do you have any API documentation or an example that uses the npm package ? |
Beta Was this translation helpful? Give feedback.
-
|
@thelastoutpostworkshop Example https://github.com/Jason2866/esp-web-tools |
Beta Was this translation helpful? Give feedback.
-
|
I’ve just ported ESPConnect to use the latest WebSerial ESPTool from Jason2866. |
Beta Was this translation helpful? Give feedback.
-
|
@thelastoutpostworkshop There is no reason to limit to only 921600 baud. All device are working with 2M baud. The limiting factor is the used USB-Serial chip. Only the CH340 does not support 2M continously. My tool does detect the CH340 and prints a warning when a too high speed is selected for reading. Flashing does work with 2M baud too (data is compressed and does not stress the USB serial chip as read does). The CH340 can handle this peaks of high speed when flashing. |
Beta Was this translation helpful? Give feedback.
-
|
It would be nice to use the USB-Serial info to lower the baudrate when needed for the flash read. It can be changed to the orig. used Baud setting for flash write |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi @thelastoutpostworkshop
great nice tools, many features in your tool do not work or are incomplete since (the still very buggy) espressif/esptool.js is used. By using my implementation flash read works with 2MB as baudrate (when the USB serial chip supports, the CH340 supports only 460800). Furthermore it has a recovery function when a read error happens and resumes. No "broken" flash reads anymore. All currently available espressif MCUs are detected and can be read and flashed.
Even the orig. esptool.py can not read the flash content with 2MB.
Greetings Jason2866
Beta Was this translation helpful? Give feedback.
All reactions