macOS
brew install esptoollocal Homebrew formula metadata
sudo port install esptoolMacPorts ports tree · cross/esptool/Portfile · source: api.github.com
brew
ESP8266 and ESP32 serial bootloader utility. Version 5.3.1 via Homebrew; verified 2026-06-30.
install
brew install esptoollocal Homebrew formula metadata
sudo port install esptoolMacPorts ports tree · cross/esptool/Portfile · source: api.github.com
sudo apk add esptoolAlpine Linux edge package indexes · esptool · source: dl-cdn.alpinelinux.org
sudo apt install esptoolDebian stable package indexes · esptool · source: deb.debian.org
sudo dnf install esptoolFedora Rawhide package metadata · esptool · source: dl.fedoraproject.org
nix profile install nixpkgs#esptoolnixpkgs package indexes · pkgs/by-name/es/esptool/package.nix · source: api.github.com
sudo pacman -S esptoolArch Linux sync databases · esptool · source: geo.mirror.pkgbuild.com
overview
ESP8266 and ESP32 serial bootloader utility
history
esptool is Espressif's Python-based, platform-independent serial utility for flashing, provisioning, and interacting with Espressif SoCs.
The official repository says esptool was initially created by Fredrik Ahlberg and later maintained by Angus Gratton; it is now supported by Espressif Systems and has received community improvements. That history reflects its move from community ESP8266 tooling into the vendor-supported flashing utility for the broader Espressif chip family.
As ESP8266 and ESP32 boards became common in hobbyist, IoT, and embedded development, esptool became the packaging target for the host-side operation everyone needed: moving firmware images onto chips over serial. Its distribution through Homebrew and many Linux package managers mirrors its role as infrastructure rather than as an application.
Espressif's documentation and repository describe a tool that spans flashing, provisioning, secure operations, eFuse management, remote serial ports, scripting, and chip-specific targets. That breadth made it a dependency under higher-level build systems as well as a direct CLI for firmware developers.
The core workflow is `esptool write-flash`, where users provide a serial port and flash offsets plus one or more binary files. The documentation notes automatic chip detection for writing, serial transfer compression by default, erase behavior before writes, and options for skipping unchanged content or fast reflashing.
The Homebrew package also installs companion commands such as `espefuse`, `espsecure`, and `esp_rfc2217_server`, so package users get both everyday flashing and lower-level provisioning, security, and remote serial helpers from the same source package.
esptool is one of those packages that quietly defines an ecosystem: if an OS package set wants embedded developers to flash ESP boards without a vendor IDE, it ships esptool. Its Python implementation, cross-platform serial behavior, and explicit config-file search paths make it easy to package and script.
security posture
broad file, network, media, or database tool signal.
blue risk · medium confidence · tool
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
local files
These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.
Config paths the tool may read or write during local use.
/home/<user>/.config/esptool/esptool.cfg/Users/<user>/.config/esptool/esptool.cfg./esptool.cfg~/esptool.cfg./setup.cfg./tox.inic:\Users\<user>\AppData\Local\esptool\esptool.cfgc:\Users\<user>\esptool.cfgexecutables
| Command | Kind | Exposure | Note |
|---|---|---|---|
esp_rfc2217_server | cli | global executable | |
esp_rfc2217_server.py | cli | global executable | |
espefuse | cli | global executable | |
espefuse.py | cli | global executable | |
espsecure | cli | global executable | |
espsecure.py | cli | global executable | |
esptool | cli | global executable | |
esptool.py | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
https://docs.espressif.com/projects/esptool/en/latest/esp32/
install metadata
| Package key | brew:esptool |
|---|---|
| Version | 5.3.1 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/esptool |
| Homepage | https://docs.espressif.com/projects/esptool/en/latest/esp32/ |
| Repository | https://github.com/espressif/esptool |
| Upstream docs | https://docs.espressif.com/projects/esptool/en/latest |
| License | GPL-2.0-or-later |
| Source archive | https://files.pythonhosted.org/packages/76/ac/d2016cf6b3709d0e0166f45f84bc6e2d717757b5f59020ccb34de08d1b9b/esptool-5.3.1.tar.gz |
| Last updated | 2026-06-30T09:25:50Z |
| Pulse | updated |
| Dependencies | cryptography, libyaml, python@3.14 |
| Build dependencies | rust |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | esptool |
| Version Scheme | 0 |
| Revision | 0 |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
esptool 4.7.0+dfsg-0.1
create and flash firmware files to ESP8266 and ESP32 chips
https://github.com/espressif/esptool
sudo apt install esptoolesptool
nix profile install nixpkgs#esptoolesptool 4.7.0+dfsg-0.1
create and flash firmware files to ESP8266 and ESP32 chips
https://github.com/espressif/esptool
sudo apt install esptoolesptool 4.8.1-r0
ESP8266 and ESP32 serial bootloader utility
https://docs.espressif.com/projects/esptool
sudo apk add esptoolesptool-pyc 4.8.1-r0
Precompiled Python bytecode for esptool
https://docs.espressif.com/projects/esptool
sudo apk add esptool-pycesptool 5.2.0-2.fc45
A utility to communicate with the ROM bootloader in Espressif ESP8266 & ESP32
https://github.com/espressif/esptool
sudo dnf install esptoolesptool 5.2.0-1
Espressif SoC serial bootloader utility
https://github.com/espressif/esptool
sudo pacman -S esptoolesptool
sudo port install esptoolsource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.