No Description

Andrew Chalkley a5e55bfa18 Simple compat tables 9 years ago
back-end 4b28d21666 Fixes #17 9 years ago
front-end e188c2c895 Add contributing guidelines and fix small typos 9 years ago
test 22bd0bd5d0 Adds response handling tests 9 years ago
.gitignore 59f4c4725c Updated UI 9 years ago
.jshintrc c99e53e452 Adds electron keywords 9 years ago
.travis.yml 5b837aa8ce Attempting to get compile steps to work 9 years ago
CONTRIBUTING.md 4c7e2c2493 Fix relative link to contributing 9 years ago
README.md a5e55bfa18 Simple compat tables 9 years ago
index.js 67c419dd15 Disables the debug window 9 years ago
package.json e306b27b82 Added Craig to Contributors property to package.json 9 years ago
typings.json 5104d04c84 Available serial ports 9 years ago

README.md

Flasher.js

Build Status

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.


Application Compatibility

OS Status
Windows 10 Tested
Windows 8.1 Tested
Ubuntu 14.04 LTS Tested
Mac OS X 10.11 Tested

Device Compatibility

Board Status Notes
Adafruit Feather HUZZAH Tested May require driver installation.
Adafruit HUZZAH Tested Requires FTDI cable.

Run the GUI in Development

OS X

npm install
npm start

Windows 10

You'll need installed:

  • Visual Studio Community Edition (or better) installed with Windows 8/8.1 SDK.
  • Python 2.7

    npm install
    del node_modules\serialport\build\Release\serialport.node
    del node_modules\nslog\build\Release\nslog.node
    npm run rebuild
    npm start
    

Linux

npm install
rm node_modules/serialport/build/Release/serialport.node
rm node_modules/nslog/build/Release/nslog.node
npm run rebuild
sudo 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

We would love your contributions! Check out the contribution guidelines.


License

Flasher.js is released under the MIT License