esp32-workbench-ota

Solid

OTA firmware upload, listing, deletion, and over-the-air update for the Universal ESP32 Workbench. Triggers on "OTA", "firmware", "update", "upload", "binary", "over-the-air".

Data & Documents 183 stars 39 forks Updated 1 months ago MIT

Install

View on GitHub

Quality Score: 88/100

Stars 20%
75
Recency 20%
75
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# ESP32 OTA & Firmware Repository Base URL: `http://192.168.0.87:8080` ## When to Use OTA (vs Serial Flashing) ### Use OTA when: - Device **already runs firmware** with an OTA HTTP endpoint - Device is **on the WiFi network** (connected to workbench's AP or same LAN) - You want to update firmware **without blocking the serial port** - You're doing **iterative development** (build → upload → trigger → monitor cycle) ### Do NOT use OTA when: - Device is **blank/bricked** — use serial flashing (see esp32-workbench-serial-flashing) - Device firmware **has no OTA support** — use serial flashing - Device has **no WiFi connectivity** — use serial flashing - You need to flash a **bootloader or partition table** — only esptool can do this ## Endpoints | Method | Path | Purpose | |--------|------|---------| | POST | `/api/firmware/upload` | Upload firmware binary (multipart/form-data) | | GET | `/api/firmware/list` | List all uploaded firmware files | | DELETE | `/api/firmware/delete` | Delete a firmware file | | GET | `/firmware/<project>/<file>` | Download URL (ESP32 fetches from here during OTA) | ## End-to-End OTA Workflow ### Step 1: Upload firmware to workbench ```bash curl -X POST http://192.168.0.87:8080/api/firmware/upload \ -F "project=my-project" \ -F "file=@build/firmware.bin" ``` Response: `{"ok": true, "project": "my-project", "filename": "firmware.bin", "size": 456789}` ### Step 2: Verify upload ```bash curl -s http://192.168.0.87:8080/api/firmware/list |...

Details

Author
majiayu000
Repository
majiayu000/claude-skill-registry
Created
5 months ago
Last Updated
1 months ago
Language
Python
License
MIT

Integrates with

Similar Skills

Semantically similar based on skill content — not just same category