local-flash

Compile and flash ESPHome firmware to a USB-connected ESP32 using Docker.

219|35|Updated Feb 16, 2026
One-click install
npx skills add https://github.com/jtenniswood/esphome-media-player --skill local-flash
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: local-flash
Source: https://github.com/jtenniswood/esphome-media-player/tree/main/.cursor/skills/local-flash
Command: npx skills add https://github.com/jtenniswood/esphome-media-player --skill local-flash

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Compile ESPHome firmware locally for a USB-connected ESP32 device, enabling offline testing and rapid iteration with local components.

Core Features & Use Cases

  • Local build and flash workflow to a USB-connected ESP32
  • Test and validate firmware with local components on real hardware
  • Clear step-by-step workflow from preparing dev.yaml to flashing firmware

Quick Start

Connect your USB ESP32, ensure Docker is installed, and run the local flash workflow to compile and flash the firmware to the device.

Frequently Asked Questions about local-flash

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I flash ESPHome firmware to a USB-connected ESP32 locally?

Flashing ESPHome firmware locally requires Docker with the esphome image, esptool on PATH, a USB-connected ESP32 device, and a secrets.yaml file containing your WiFi credentials to compile and flash the build.

Why compile ESPHome firmware locally instead of using the cloud builder?

Compiling ESPHome firmware locally enables offline testing and rapid iteration with local component changes. You can validate firmware with custom components on real hardware without relying on a remote cloud builder.

Do I need Docker and esptool to build ESP32 firmware locally?

Yes, building ESP32 firmware locally requires Docker with the esphome image and esptool available on your PATH. You also need a USB-connected device and a secrets.yaml file with your WiFi credentials to complete the workflow.

Can I test local ESPHome component changes on real hardware?

Yes, you can test local ESPHome component changes on real hardware by compiling the firmware via Docker and flashing it to a USB-connected ESP32. This workflow validates your local changes directly on the physical device.

What's the best way to prepare a dev.yaml configuration for ESP32 hardware testing?

Preparing a dev.yaml configuration involves setting up your ESP32 device definitions and ensuring a secrets.yaml file with WiFi credentials is present. This provides the necessary configuration for the local Docker build and flash workflow.

What are the limitations of flashing ESP32 firmware via a local Docker workflow?

The local Docker flashing workflow is limited by its requirement for a physical USB connection to the ESP32 device. It also requires Docker, esptool on PATH, and a properly configured secrets.yaml file to function correctly.