Espruino is Open Source. Our work is supported by sales of our boards and donations. If you are using Espruino on another board, please donate below so we can keep improving Espruino and supporting our users.
While Espruino can be downloaded onto many other boards, the boards we make come pre-installed with Espruino and can be easily updated straight from our Web IDE. If you want something that 'just works', or want to support what we're doing then please try Espruino on one of them!
We try to release new versions of Espruino every few weeks. However if you can't wait that long, you can get versions that are compiled directly from the repository after each commit.
If you have an Original Espruino or a Pico, you can download the absolute latest binary directly from http://www.espruino.com/binaries/git/commits/master or can browse by Git commit hash. If you want to download an old release you can also browse the binaries.
Otherwise there are nightly builds for some other boards available from http://drazzy.com/e/espruino/
Please see the Puck.js page for more information
We'd strongly recommend that you use the Chrome Web IDE which has a flasher (and firmware download) built-in. Downloading up to date firmware is as easy as clicking the
Settings button, then
Flash Firmware. To flash a 'cutting edge' or older binary, simply:
.binfile that you wish to flash online, right-click on it and
Copy Link Address.
Paste the URL into the text box under
Advanced Firmware Update
Advanced Flash Firmwarebutton
If you absolutely don't want or can't do this then do the following on Linux or MacOS:
- Open a Terminal Window
Make sure you have Python installed (type
python --helpand see if anything happens)
- Download the stm32loader.py Python script from https://github.com/espruino/Espruino/blob/master/scripts/stm32loader.py
python stm32loader.py -k -p MySerialPort -evw espruino_for_your_device.bin
- On Mac OS, MySerialPort will probably look a lot like /dev/tty.usbmodem### where ### is a number. You can use the 'Tab' key to autocomplete once you have typed /dev/tty.usbserial
- On Linux, MySerialPort will probably look a lot like /dev/ttyACM# where # is a number. If you only have one USB-Serial device plugged in, it's almost certainly /dev/ttyUSB0
- Note the -k flag above. This is specific to Espruino rev 1.3 Boards and helps to ensure that the USB link is reliable during flashing.
You can also completely overwrite Espruino's bootloader using the Serial Bootloader instructions, but you'll need a USB-TTL converter for this.
Please see the page on Other Boards for more information.
After You have Flashed Espruino
See Quick Start for instructions on how to get started!