OnWorks favicon

esptool - Online in the Cloud

Run esptool in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command esptool that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator



esptool - create and flash firmware files to ESP8266 or ESP32 chips


esptool [FLASH OPTION]...
esptool [CREATION OPTION]...


Flash firmware files to ESP8266 or ESP32 boards with ability to automatically put certain
boards into UART bootloader programming mode. Or, extract code sections from ELF
executable files to create firmware files for ESP chips.


-cp <device>
Select a serial port device to communicate with an ESP chip. Default is
/dev/ttyUSB0 on Linux, COM1 on Windows and /dev/tty.usbserial on Mac OS X.

-cb <baudrate>
Select the baud rate. Default is 115200.

-ca <address>
Flash memory address to upload the data to. Default is 0x00000000.

-cf <filename>
Upload the file to flash memory. Serial communication parameters and flash memory
address must precede this argument.

-cp <size>
Pad last written section to the given size, in bytes.

-cc <chip>
Select chip to upload to. Currently supported values are: esp8266 (default), esp32.

-cd <board>
Reset board into bootloader mode. Default is none.

Resetting methods:
GPIO0 and RESET are controlled by two NPN transistors as implemented in NodeMCU

wifio TXD controls GPIO0 via a PNP transistor, while DTR controls RESET via a capacitor.

ck RTS controls RESET or CH_PD, while DTR controls GPIO0;

none No DTR/RTS manipulation.

Firmware creation:
-eo <filename>
Open an ELF object file, parse it and cache information found therein. Only one
input file could be opened at a time.

-es <section> <filename>
Read the given section from currently opened input file and make raw dump into the
specified file.

-ec Close the currently opened input file.

-bo <filename>
Prepare a new firmware image file for writing.

-bm <qio|qout|dio|dout>
Set the flash chip interface mode. Default is QIO. This parameter is stored in the
firmware image header along with the flash size and flash frequency. ROM bootloader
in the ESP chip uses this info to know how to talk to the flash memory chip.

-bz <512K|256K|1M|2M|4M|8M|16M|32M>
Set the flash chip size. Default is 512K.

-bf <40|26|20|80>
Set the flash chip frequency in MHz. Default is 40M.

-bs <section>
Read the specified section from the input file and append it to the firmware image.
The sections will appear in the same order as the -bs options appear on the command

-bc Flush the content into the firmware image and close the file.

-v Display verbose informational messages. Add more v's to increase verbosity level,
e.g. -vv, -vvv.

-q Suppress informational messages.

--help Display help.

Display program version information.


Flash Lua script firmware to a NodeMCU board:

esptool -cd nodemcu -cf nodemcu_integer_0.9.5_20150318.bin

Flash MicroPython for ESP8266 firmware to a Huzzah or EzSBC ESP board: First reset the
board into flash programming mode. Holod GPIO0/Flash button and press reset button,
release the reset button and finally release the GPIO0/Flash button. Then run the
following command:

esptool -cf firmware-combined.bin

Flash Espressif AT v0.50 firmware to an ESP board: First manually reset the board into
flash programming mode or use correct -cd option, then run:

esptool -ca 0x00000 -cf noboot/eagle.flash.bin -ca 0x40000 -cf
noboot/eagle.irom0text.bin -ca 0x3e000 -cf blank.bin -ca 0x7c000 -cf
esp_init_data_default.bin -ca 0x7E000 -cf blank.bin

Create firmware files from app.elf. Note the option for 4M flash size.

esptool -bz 4M -eo app.elf -bo app_00000.bin -bs .text -bs .data -bs .rodata -bc
-ec -eo app.elf -es .irom0.text app_40000.bin -ec

Then, flash the created firmware to the board:

esptool -cf 00000.bin -ca 0x40000 -cf 40000.bin

Use esptool online using onworks.net services

Free Servers & Workstations

Download Windows & Linux apps

  • 1
    A fast tunnel proxy that helps you
    bypass firewalls This is an application
    that can also be fetched from
    It ha...
    Download Shadowsocks
  • 2
    GLPI Themes
    GLPI Themes
    Download release at
    Color themes for GLPI 0.84 and 0.85 New
    Modifications for GLPI This is an
    application that c...
    Download GLPI Themes
  • 3
    SMPlayer is a free media player for
    Windows and Linux with built-in codecs
    that can also play YouTube videos. One
    of the most interesting features of
    Download SMPlayer
  • 4
    AAX to MP3
    AAX to MP3
    Usage: - Install the Audible Manager
    and open a file of your account. - Sign
    in into your audible account (in the
    application). Now the program can
    convert you...
    Download AAX to MP3
  • 5
    TestLink is a web based Test Management
    tool. The application provides Test
    specification, Test plans and execution,
    Reporting, Requirements specification
    and ...
    Download TestLink
  • 6
    XDXF - XML Dictionary Exchange Format
    XDXF - XML Dictionary Exchange Format
    XDXF is a project to unite all existing
    open dictionaries and provide both users
    and developers with universal XML-based
    format, convertible from and to other ...
    Download XDXF - XML Dictionary Exchange Format
  • 7
    Transmission Remote GUI
    Transmission Remote GUI
    Transmission Remote GUI is a feature
    rich cross platform front-end to
    remotely control a Transmission
    Bit-Torrent client daemon via its RPC
    protocol. Transmissi...
    Download Transmission Remote GUI
  • More »

Linux commands