No Description

Andrew Chalkley d5275b87f5 Packing on all platforms 9 years ago
back-end 99234012d1 Manifest download and flashing via the UI 9 years ago
front-end db92c9b97f Merge branch 'master' into auto-updater 9 years ago
.gitignore 5949167a68 Adds OSX packaging `npm run pack:osx` 9 years ago
.jshintrc 334dd32d8b WIP: Run updates.thingssdk.com locally 9 years ago
README.md 531130402f Flasher.js rebrand 9 years ago
index.js d5275b87f5 Packing on all platforms 9 years ago
package.json d5275b87f5 Packing on all platforms 9 years ago
typings.json 5104d04c84 Available serial ports 9 years ago

README.md

Flasher.js

Flasher.js is a tool to get JavaScript running natively on the Internet of Things device, ESP8266. This application runs on Windows, Mac OS X and Linux.

This tool flashes (installs) the Espruino JavaScript run time on ESP8266 EP-12 devices like the Adafruit Huzzah and Adadfruit Feather Huzzah.


Run the GUI

npm install
npm start

ROM Communication

The ESP8266 is notoriously finicky about being flashed, we've done our best to abstract that for you.

Here is an example of flashing the ESP8266 with the latest Espruino build.

const log = require("./logger");

const esp = new RomComm({
    portName: "/dev/cu.SLAB_USBtoUART",
    baudRate: 115200
});

esp.open().then((result) => {
    log.info("ESP is open", result);
    esp.flashAddressFromFile(0x0000, "/path/to/binaries/boot_v1.4(b1).bin")
        .then(() => esp.flashAddressFromFile(0x1000, "/path/to/binaries/espruino_esp8266_user1.bin"))
        .then(() => esp.flashAddressFromFile(0x3FC000, "/path/to/binaries/esp_init_data_default.bin"))
        .then(() => esp.flashAddressFromFile(0x3FE000, "/path/to/binaries/blank.bin"))
        .then(() => esp.close())
        .then((result) => log.info("Flashed to latest Espruino build!", result));
}).catch((error) => {
    log.error("Oh noes!", error);
});

See also RomComm.flashAddress for passing just a buffer representation of the file.

We are using Bunyan for logging, make sure to pipe it through the parser.


Contributing

If you want to contribute to the Flasher.js clone this repo and run the following commands.

npm install
npm start