ESP32 Master Embedded Engineering Skill
Expert guidance for ESP32 chip selection, GPIO validation, and firmware generation, actively preventing bricking and protocol conflicts.
Pure local advisory + script validation skill: no network calls, no sensitive data, minimal privilege; SKILL.md openly discloses anti-bricking safety policies (GPIO12 trap, ADC2/Wi-Fi conflict, flash-pin protection). Deducted for: unverified publisher identity, script source files not visible in this evidence set (only conftest/helpers shown), so no-verified-side-effects, rollback paths, and confirmation/isolation mechanisms cannot be confirmed.
Internally consistent: JSON schema matches field table, variant support matrix is explicit (scripts support 5 variants, docs cover 9), README gives reproducible CLI invocations and pytest instructions, and conftest.py proves a real test framework exists. But this is a static review without execution: script bodies, fixtures, and test coverage are not visible; failure-feedback quality on abnormal input is unverifiable, so the anchor forbids exceeding 10.
Trigger conditions are precise (ESP32/ESP-IDF/PlatformIO/LVGL/Waveshare keywords), and non-fit boundaries are explicitly declared via the support matrix (C2/C5/H2/P4 docs-only). Deducted for: English-only content with no Chinese support, no discussion of mainland-China reachability (dependent on Claude Code ecosystem), and broad trigger terms ('embedded systems') that may cause over-triggering.
Good layering: on-demand reference loading with progressive disclosure, install notes, variant support matrix, contribution/extension guide, MIT license, and version 1.0.0. Deducted for: no CHANGELOG or version history, maintenance responsibility points only to an individual account ('ezrover'/'Vibe Coder') with no explicit update path, and known-limitation disclosure partly lives in README rather than the skill itself.
Clear value proposition: pin-mistake validation + boilerplate generation + chip selection, with directly consumable JSON/code/table outputs and genuine marginal value over manual datasheet lookup, especially the hardware-damage prevention. Deducted for: static review cannot verify generated-code correctness or direct usability; representative outputs were not executed, so the anchor forbids exceeding 7.
Primary material exists: structured references index, detailed JSON schema, auditable conftest and assertion helpers for 50 automated tests, and reproducible commands in README. Deducted for: only test infrastructure is visible, not the test cases/fixtures themselves; no CI workflow evidence; safety-check tables (e.g., flash-pin ranges) lack cross-source corroboration; no third-party execution evidence, so the anchor forbids exceeding 5.
- Static review only; no scripts or tests were executed, and pin validation / code generation outputs are unverified by reproduction.
- Script bodies and test cases were not visible in the evidence set; failure-feedback quality is unknown.
- Skill content is English-only with no Chinese support; depends on the Claude Code ecosystem with no mainland-China reachability discussion.
- Publisher is an unverified individual account with no CHANGELOG or explicit maintenance commitment.
- Cross-check hardware safety guidance (pin limits, current budget) against official Espressif datasheets before using in real circuits.
What does this skill do, and when should you use it?
A Claude Code plugin for the Espressif ESP32 ecosystem, covering both ESP-IDF and PlatformIO workflows. It ships reference docs for 9 chip variants, LVGL v8.2–v9.5, and 60+ Waveshare boards, and uses Python scripts to validate pin assignments against anti-bricking rules such as the GPIO12 flash-voltage trap and ADC2/Wi-Fi conflicts. It suits embedded developers who want generated firmware code that is electrically and boot-time safe.
Loads on-demand references (GPIO databases, per-variant specs, protocol quick reference, electrical constraints, LVGL docs, Waveshare board pinouts); runs validate_pinmap.py to check JSON pin configurations for electrical and boot conflicts; runs generate_config.py to emit Arduino or ESP-IDF initialization code; outputs assignment tables, sdkconfig snippets, and framework-specific init code.
- An embedded developer wiring a BME280 sensor and ST7789 display to an ESP32-S3 with Wi-Fi enabled, wanting ADC2 conflicts caught early
- A beginner generating ESP-IDF init code for an ESP32-C6 without manual pin config mistakes
- A Waveshare ESP32-S3 Touch LCD 4.3-inch board owner needing the pinout table
- A team migrating from LVGL v8 to v9 needing the rename mapping and migration guide
- A budget IoT node designer comparing C3/C6/H2 variants for the right fit
What are this skill's strengths and limitations?
- Concrete anti-bricking checks: GPIO12 voltage trap, flash pin protection, input-only pins, PSRAM conflicts, 200mA current budget warnings
- Structured references for 9 chip variants, LVGL v8.2–v9.5, and 60+ Waveshare boards
- 50 automated tests plus standalone Python validation and code-generation scripts
- Code generation for both Arduino and ESP-IDF frameworks
- Validation and code generation cover only ESP32/S2/S3/C3/C6; C2, C5, H2, and P4 have docs only, no script support
- MIT-licensed personal project with no third-party certification or evidence of large-scale production use
- Espressif-only scope; not applicable to other MCU vendors
How do you install this skill?
Prerequisites: Claude Code CLI and Python 3.9+. Run: claude /install-plugin https://github.com/ezrover/ESP32-AI-Agent-Skill, or clone the repo first and run claude /install-plugin ./ESP32-AI-Agent-Skill.
How do you use this skill?
After installing, ask Claude naturally, e.g. 'Generate ESP-IDF initialization code for my pin assignments on ESP32-C6'. Scripts also run standalone: echo '{"platform":"esp32s3","pins":[{"gpio":21,"function":"I2C_SDA","protocol_bus":"i2c"}]}' | python scripts/validate_pinmap.py; generate code with python scripts/generate_config.py input. --framework arduino|espidf --format text. Run tests with python3 -m pytest tests/ -v.
How does this skill compare with similar options?
The source material names no competing skills or alternatives, so no reliable comparison can be given.