暫無描述

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

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