Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Readme improvement, add package.json #2

Merged
merged 3 commits into from
Jun 18, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
node_modules
21 changes: 17 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,22 @@
# Javascript implementation of esptool

This repository contains a Javascript implementation of [esptool](https://github.com/espressif/esptool), a serial flasher utility for Espressif chips. Unlike the Python-based esptool, `esptool-js` doesn't implement generation of binary images out of ELF files, and doesn't include companion tools similar to [espefuse.py](https://github.com/espressif/esptool/wiki/espefuse) and [espsecure.py](https://github.com/espressif/esptool/wiki/espsecure).

`esptool-js` is based on [Web Serial API](https://wicg.github.io/serial/) and works in Google Chrome and Microsoft Edge, [version 89 or later](https://developer.mozilla.org/en-US/docs/Web/API/Serial#browser_compatibility).

## Live demo

Visit https://espressif.github.io/esptool-js/ to see this tool in action.

## Testing it locally

```
npm install xterm
npm install crypto-js
python2 -m SimpleHTTPServer 8008
npm install
python3 -m http.server 8008
```

Then browse http://localhost:8008
Then open http://localhost:8008 in Chrome or Edge.

## License

The code in this repository is Copyright (c) 2021 Espressif Systems (Shanghai) Co. Ltd. It is licensed under Apache 2.0 license, as described in [LICENSE](LICENSE) file.
9 changes: 6 additions & 3 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -25,13 +25,16 @@ <h2> Program </h2>
<br/>
<input class="button" type="button" id="eraseButton" value="Erase Flash" />
<br/>
<input type="text" id="offset1" name="offset1">
<label for="offset1">Bootloader</label>
<input type="text" id="offset1" name="offset1" value="0x1000">
<input type="file" id="selectFile1" name="selected_file1">
<br/>
<input type="text" id="offset2" name="offset2">
<label for="offset2">Partition table</label>
<input type="text" id="offset2" name="offset2" value="0x8000">
<input type="file" id="selectFile2" name="selected_file2">
<br/>
<input type="text" id="offset3" name="offset3">
<label for="offset3">App</label>
<input type="text" id="offset3" name="offset3" value="0x10000">
<input type="file" id="selectFile3" name="selected_file3">
<br/>
<input class="button" type="button" id="programButton" value="Program" />
Expand Down
35 changes: 35 additions & 0 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"dependencies": {
"crypto-js": "^4.0.0",
"xterm": "^4.13.0"
}
}