Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/notpaulmartin/autoflash
An easy-to-use CLI for handling ESP8266 (NodeMCU) images: erase, download and flash with ease
https://github.com/notpaulmartin/autoflash
cli esp8266 esp8266-arduino espressif esptool nodejs nodejs-cli nodemcu nodemcu-arduino nodemcu-esp8266 nodemcu-lua
Last synced: about 1 month ago
JSON representation
An easy-to-use CLI for handling ESP8266 (NodeMCU) images: erase, download and flash with ease
- Host: GitHub
- URL: https://github.com/notpaulmartin/autoflash
- Owner: notpaulmartin
- License: gpl-2.0
- Created: 2020-01-02T16:34:06.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2022-03-25T23:51:39.000Z (almost 3 years ago)
- Last Synced: 2024-10-30T05:07:15.153Z (3 months ago)
- Topics: cli, esp8266, esp8266-arduino, espressif, esptool, nodejs, nodejs-cli, nodemcu, nodemcu-arduino, nodemcu-esp8266, nodemcu-lua
- Language: JavaScript
- Homepage:
- Size: 351 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Autoflash
## A CLI to handle images for the ESP8266
**_Flash an ESP8266 in no time (nodemcu & arduino)_**
[![npm](https://img.shields.io/npm/v/autoflash)](https://www.npmjs.com/package/autoflash)
In building build-yours.com, a company developing and selling products based on ESP8266s, a large problem we encountered was \
_How do you flash a large number of chips with little effort in a short amount time?_To solve this, I created autoflash, of which I am now publishing the third generation.
You can wipe a chip clean, create backups and upload them again. \
**Uploading to a 4MB chip takes a mere 15s.** \
Autoflash automatically selects the port depending on the OS.## Installation
Autoflash uses [npm](https://www.npmjs.com/get-npm) as a means of distribution.
```
$ npm i -g autoflash
```## Usage
Autoflash works with binary files. The only reason we use the file extension `.afl` is so that we know that they are ESP8266 images, but it can also be omitted.
Adding the flag `-v` or `--verbose` tells autoflash to display everything it does in detail.
Available commands: \
[`download`](#downloading) \
[`upload`](#uploading) \
[`erase`](#wiping) \
[`device` / `devices`](#port-selection)### Downloading
```
$ autoflash download [backup.afl] [--port=]
```- If no filename is specified, the file is downloaded to the current working directory with the name "backup.afl".
- If no port is specified, autoflash decides which port to use
### Uploading
```
$ autoflash upload file.afl [--port=]
```- If no port is specified, autoflash decides which port to use
### Wiping
```
$ autoflash erase [--port=]
```- If no port is specified, autoflash decides which port to use
### Port selection
For the above commands, a port can be specified using the optional `--port` flag. If no port is specified, autoflash detects an active port and uses it.
The port automatically selected port can be viewed with
```
$ autoflash device
```To get a list of available ports, use
```
$ autoflash devices
```## Todo
If you want to contribute but don't know where to start, these are a few things that would be cool to have:
- Complain when specified port doesn't exist
- Complain on error with esptool.py
- JS API so that it can be integrated as a dependency in other programs
- Progress bar
- Download
- Upload
- Erase## Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
## License
[GNU General Public License v2.0](https://choosealicense.com/licenses/gpl-2.0/)