# Esptool

Published articles for Esptool.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## esparagus: ESP32 flashing with structured output for CI and coding agents

DevFeed: [esparagus: ESP32 flashing with structured output for CI and coding agents](<https://devfeed.tech/articles/esparagus-esp32-flashing-with-structured-output-for-ci-and-coding-agents-13790.md>)

Original publisher: [Read original article](<https://developer.espressif.com/blog/2026/08/esparagus-esp32-flashing-for-ci-and-agents/>)

Author: John Lee

Published: 2026-08-01T00:00:00Z

Content type: tutorial

Language: en

Sources: [Blog on Developer Portal](<https://devfeed.tech/sources/blog-on-developer-portal.md>)

Topics: [ESP32](<https://devfeed.tech/topics/esp32.md>), [observability](<https://devfeed.tech/topics/observability.md>), [Rust](<https://devfeed.tech/topics/rust.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Agent Skill](<https://devfeed.tech/topics/agent-skill.md>), [ci](<https://devfeed.tech/topics/ci.md>), [MCP Server](<https://devfeed.tech/topics/mcp-server.md>)

Tags: [agent-skill](<https://devfeed.tech/tags/agent-skill.md>), [ai](<https://devfeed.tech/tags/ai.md>), [blog](<https://devfeed.tech/tags/blog.md>), [ci](<https://devfeed.tech/tags/ci.md>), [ci-cd](<https://devfeed.tech/tags/ci-cd.md>), [cli](<https://devfeed.tech/tags/cli.md>), [esp32](<https://devfeed.tech/tags/esp32.md>), [esptool](<https://devfeed.tech/tags/esptool.md>), [flashing](<https://devfeed.tech/tags/flashing.md>), [mcp](<https://devfeed.tech/tags/mcp.md>), [mcp-server](<https://devfeed.tech/tags/mcp-server.md>), [observability](<https://devfeed.tech/tags/observability.md>), [rust](<https://devfeed.tech/tags/rust.md>)

### AI overview

This article introduces esparagus, a Rust flasher for the ESP32 family that behaviorally ports esptool's flashing paths. It adds machine-oriented observability through NDJSON events, structured reports, stable exit codes, crash detection, and integrations including a direct CLI, an Agent Skill, and an MCP server.

### Source excerpt

esparagus is an ESP32-family flasher written in Rust -- a behavioral port of esptool's protocol, sync, reset, and stub-loader paths, wrapped in an observability layer built for programs rather than humans: NDJSON events, a machine-readable report file, stable exit codes, and an expect-style serial monitor with built-in crash detection. This article explains why that layer exists, how the flash-test-fix feedback loop works, and the three ways to integrate it -- direct CLI, an Agent Skill, and an MCP server.

## esptool: Updates about the upcoming v5 major release

DevFeed: [esptool: Updates about the upcoming v5 major release](<https://devfeed.tech/articles/esptool-updates-about-the-upcoming-v5-major-release-13695.md>)

Original publisher: [Read original article](<https://developer.espressif.com/blog/2025/04/esptool-v5/>)

Author: John Lee

Published: 2025-04-01T00:00:00Z

Content type: release

Language: en

Sources: [Blog on Developer Portal](<https://devfeed.tech/sources/blog-on-developer-portal.md>)

Topics: [Command-line interface](<https://devfeed.tech/topics/cli.md>), [API](<https://devfeed.tech/topics/api.md>), [Python](<https://devfeed.tech/topics/python.md>), [Development](<https://devfeed.tech/topics/development.md>), [ESP32](<https://devfeed.tech/topics/esp32.md>), [ESP8266](<https://devfeed.tech/topics/esp8266.md>), [Logging](<https://devfeed.tech/topics/logging.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [blog](<https://devfeed.tech/tags/blog.md>), [cli](<https://devfeed.tech/tags/cli.md>), [command-line](<https://devfeed.tech/tags/command-line.md>), [esp32](<https://devfeed.tech/tags/esp32.md>), [esp8266](<https://devfeed.tech/tags/esp8266.md>), [esptool](<https://devfeed.tech/tags/esptool.md>), [logging](<https://devfeed.tech/tags/logging.md>), [python](<https://devfeed.tech/tags/python.md>), [release](<https://devfeed.tech/tags/release.md>), [secure-boot](<https://devfeed.tech/tags/secure-boot.md>), [security](<https://devfeed.tech/tags/security.md>), [tools](<https://devfeed.tech/tags/tools.md>), [updates](<https://devfeed.tech/tags/updates.md>), [v5](<https://devfeed.tech/tags/v5.md>)

### AI overview

Espressif describes the upcoming esptool v5 major release, which is under development and available as a preview. The release adds a public Python API, structured workflows, type-safe integration, and customizable logging, with a migration guide for users.

### Source excerpt

esptool v5, currently under development by Espressif, boosts its new public API and customizable logging capabilities for developers. The new version brings enhancements for users as well. Contributions are welcome, preview out now.

## ESP32 bootstrapping in Zephyr

DevFeed: [ESP32 bootstrapping in Zephyr](<https://devfeed.tech/articles/esp32-bootstrapping-in-zephyr-13668.md>)

Original publisher: [Read original article](<https://developer.espressif.com/blog/2024/10/esp32-bootstrapping/>)

Author: John Lee

Published: 2024-10-30T00:00:00Z

Content type: article

Language: en

Sources: [Blog on Developer Portal](<https://devfeed.tech/sources/blog-on-developer-portal.md>)

Topics: [ESP32](<https://devfeed.tech/topics/esp32.md>), [Espressif](<https://devfeed.tech/topics/espressif.md>), [boot](<https://devfeed.tech/topics/boot.md>), [Zephyr RTOS](<https://devfeed.tech/topics/zephyr-rtos.md>), [SOC](<https://devfeed.tech/topics/soc.md>), [Hardware](<https://devfeed.tech/topics/hardware.md>), [Tooling](<https://devfeed.tech/topics/tooling.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [boot](<https://devfeed.tech/tags/boot.md>), [bootloader](<https://devfeed.tech/tags/bootloader.md>), [debugging](<https://devfeed.tech/tags/debugging.md>), [embedded](<https://devfeed.tech/tags/embedded.md>), [esp-idf](<https://devfeed.tech/tags/esp-idf.md>), [esp32](<https://devfeed.tech/tags/esp32.md>), [esp32-c3](<https://devfeed.tech/tags/esp32-c3.md>), [esp32-c6](<https://devfeed.tech/tags/esp32-c6.md>), [esp32-s2](<https://devfeed.tech/tags/esp32-s2.md>), [esp32-s3](<https://devfeed.tech/tags/esp32-s3.md>), [espressif](<https://devfeed.tech/tags/espressif.md>), [esptool](<https://devfeed.tech/tags/esptool.md>), [format](<https://devfeed.tech/tags/format.md>), [zephyr](<https://devfeed.tech/tags/zephyr.md>)

### AI overview

This article explains how Espressif SoCs, including ESP32 devices up to ESP32-C6, boot in Zephyr RTOS. It covers the ROM loader, second-stage loader, image formats, build and memory considerations, and related tooling.

### Source excerpt

This article explains the booting process of Espressif devices up to ESP32-C6 (and probably newer devices).

## Accelerate Your IoT Development with the Espressif WebIDE

DevFeed: [Accelerate Your IoT Development with the Espressif WebIDE](<https://devfeed.tech/articles/accelerate-your-iot-development-with-the-espressif-webide-13799.md>)

Original publisher: [Read original article](<https://developer.espressif.com/blog/accelerate-your-iot-development-with-the-espressif-webide/>)

Author: John Lee

Published: 2023-04-17T00:00:00Z

Content type: tutorial

Language: en

Sources: [Blog on Developer Portal](<https://devfeed.tech/sources/blog-on-developer-portal.md>)

Topics: [Espressif](<https://devfeed.tech/topics/espressif.md>), [Internet of things](<https://devfeed.tech/topics/iot.md>), [ESP-IDF](<https://devfeed.tech/topics/esp-idf.md>), [ide](<https://devfeed.tech/topics/ide.md>), [Visual Studio Code](<https://devfeed.tech/topics/visual-studio-code.md>), [Framework](<https://devfeed.tech/topics/framework.md>), [Website](<https://devfeed.tech/topics/website.md>), [Web](<https://devfeed.tech/topics/web.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [Docker](<https://devfeed.tech/topics/docker.md>), [TypeScript](<https://devfeed.tech/topics/typescript.md>), [Docker Container](<https://devfeed.tech/topics/docker-container.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [browser](<https://devfeed.tech/tags/browser.md>), [c-c-plus-plus](<https://devfeed.tech/tags/c-c-plus-plus.md>), [clang](<https://devfeed.tech/tags/clang.md>), [docker](<https://devfeed.tech/tags/docker.md>), [eclipse-theia](<https://devfeed.tech/tags/eclipse-theia.md>), [esp-idf](<https://devfeed.tech/tags/esp-idf.md>), [esp32](<https://devfeed.tech/tags/esp32.md>), [espressif](<https://devfeed.tech/tags/espressif.md>), [esptool](<https://devfeed.tech/tags/esptool.md>), [ide](<https://devfeed.tech/tags/ide.md>), [iot](<https://devfeed.tech/tags/iot.md>), [json](<https://devfeed.tech/tags/json.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [python](<https://devfeed.tech/tags/python.md>), [qemu](<https://devfeed.tech/tags/qemu.md>), [theia](<https://devfeed.tech/tags/theia.md>), [typescript](<https://devfeed.tech/tags/typescript.md>), [visual-studio-code](<https://devfeed.tech/tags/visual-studio-code.md>), [web](<https://devfeed.tech/tags/web.md>)

### AI overview

This tutorial introduces the Espressif Web IDE, an Eclipse Theia-based IDE that integrates the ESP-IDF extension for Visual Studio Code with additional tools. It explains how to run the IDE from source or in Docker, connect to ESP chip serial ports, flash and monitor devices, and use C/C++ language features.

### Source excerpt

The Espressif Web IDE is an implementation of the Eclipse Theia framework with the ESP-IDF extension for Visual Studio Code and few additional tools. You can see it in action in the Espressif DevCon22 presentation below. If you haven't used Eclipse Theia before, it is an open-source framework to develop Cloud & Desktop IDEs and tools in TypeScript with a Visual Studio Code UI and Visual Studio Code extensions support or extensions implemented in the OpenVSX registry.

## Secure Signing Using External HSM

DevFeed: [Secure Signing Using External HSM](<https://devfeed.tech/articles/secure-signing-using-external-hsm-13953.md>)

Original publisher: [Read original article](<https://developer.espressif.com/blog/secure-signing-using-external-hsm/>)

Author: John Lee

Published: 2023-02-09T00:00:00Z

Content type: tutorial

Language: en

Sources: [Blog on Developer Portal](<https://devfeed.tech/sources/blog-on-developer-portal.md>)

Topics: [ESP32](<https://devfeed.tech/topics/esp32.md>), [Security](<https://devfeed.tech/topics/security.md>), [Cryptography](<https://devfeed.tech/topics/cryptography.md>), [Embedded Software Dev](<https://devfeed.tech/topics/embedded-software-dev.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [cryptographic](<https://devfeed.tech/tags/cryptographic.md>), [digital](<https://devfeed.tech/tags/digital.md>), [esp32](<https://devfeed.tech/tags/esp32.md>), [esptool](<https://devfeed.tech/tags/esptool.md>), [external](<https://devfeed.tech/tags/external.md>), [firmware](<https://devfeed.tech/tags/firmware.md>), [hardware](<https://devfeed.tech/tags/hardware.md>), [iot](<https://devfeed.tech/tags/iot.md>), [release](<https://devfeed.tech/tags/release.md>), [secure-boot](<https://devfeed.tech/tags/secure-boot.md>), [security](<https://devfeed.tech/tags/security.md>), [signing](<https://devfeed.tech/tags/signing.md>), [ubuntu](<https://devfeed.tech/tags/ubuntu.md>)

### AI overview

This tutorial explains how to use an external Hardware Security Module with Espsecure.py to sign ESP32 firmware through the PKCS #11 interface. It demonstrates a YubiKey 5 Series setup and describes supported Secure Boot V2 signing algorithms.

### Source excerpt

Overview# ESP32 series of chips supports secure boot scheme to allow only trusted firmware to execute from its flash storage. However, this requires careful management of the secure signing key, it must be generated and stored in a secure manner by the signing entity. External HSM (Hardware Security Module) is specially designed cryptographic device that safeguards and manages secrets. HSM also provides specialised cryptographic services like encryption, digital signing etc.

## Blink LED on ESP32 with RTOS NuttX

DevFeed: [Blink LED on ESP32 with RTOS NuttX](<https://devfeed.tech/articles/blink-led-on-esp32-with-rtos-nuttx-13657.md>)

Original publisher: [Read original article](<https://developer.espressif.com/blog/2020/12/blink-led-on-esp32-with-rtos-nuttx/>)

Author: John Lee

Published: 2020-12-01T00:00:00Z

Content type: tutorial

Language: en

Sources: [Blog on Developer Portal](<https://devfeed.tech/sources/blog-on-developer-portal.md>)

Topics: [ESP32](<https://devfeed.tech/topics/esp32.md>), [Tutorial](<https://devfeed.tech/topics/tutorial.md>), [Embedded Software Dev](<https://devfeed.tech/topics/embedded-software-dev.md>), [Operating system](<https://devfeed.tech/topics/operating-system.md>), [configuration](<https://devfeed.tech/topics/configuration.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [bootloader](<https://devfeed.tech/tags/bootloader.md>), [devkit](<https://devfeed.tech/tags/devkit.md>), [esp32](<https://devfeed.tech/tags/esp32.md>), [esptool](<https://devfeed.tech/tags/esptool.md>), [firmware](<https://devfeed.tech/tags/firmware.md>), [flash](<https://devfeed.tech/tags/flash.md>), [getting-started](<https://devfeed.tech/tags/getting-started.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [led](<https://devfeed.tech/tags/led.md>), [nuttx](<https://devfeed.tech/tags/nuttx.md>), [partition](<https://devfeed.tech/tags/partition.md>), [port](<https://devfeed.tech/tags/port.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [usb](<https://devfeed.tech/tags/usb.md>)

### AI overview

This tutorial explains how to configure NuttX on an ESP32 DevKit, add LED support and the LED Driver Example, build and flash the firmware, and run an application that blinks an LED.

### Source excerpt

This is a tutorial on how to blink an LED with NuttX after getting started.