Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add alexex1993/mcu-skills --skill esp32-wroom-38pingit clone --depth 1 https://github.com/alexex1993/mcu-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/alexex1993/mcu-skills/esp32-wroom-38pin)<a href="https://agentmods.dev/skills/alexex1993/mcu-skills/esp32-wroom-38pin"><img src="https://agentmods.dev/badge/skills/alexex1993/mcu-skills/esp32-wroom-38pin/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/alexex1993/mcu-skills/esp32-wroom-38pin"><img src="https://agentmods.dev/badge/skills/alexex1993/mcu-skills/esp32-wroom-38pin.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium analysis-evasion · line 1 Suspicious Unicode normalization or mixed-script contentFix: Review the flagged content for security risks. Ensure no credentials, secrets, or sensitive data are exposed.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00000 | $0.04515 |
| Opus 5 | $0.00000 | $0.02257 |
| Sonnet 5 | $0.00000 | $0.00903 |
| Haiku 4.5 | $0.00000 | $0.00451 |
Grade A, and why
esp32-wroom-38pin scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 251 lines — stays where its author put it; the contents beside it link to each section on GitHub.
ESP32-WROOM-32 devkit — 38-pin
The reference form factor: Espressif's ESP32-DevKitC V4 and the clones that copy its J2/J3 header pin for pin. Nineteen pins a side, and every pad of the module is broken out — including six that will hang the chip and one that will stop it booting.
That completeness is the whole story of this board. The 30-pin version protects you by
omission; this one hands you the flash bus and GPIO0 and expects you to know better.
Read reference/board-hardware.md before choosing pins.
reference/board-hardware.md— the board: the Espressif J2/J3 header table with every pin's alternate functions, the six flash pins, the IO0 hazard, theD2-means-GPIO9 silkscreen trap, the WROVER GPIO16/17 difference, the USB bridge and auto-reset circuit, power tree, flash partitions — plus a development guide (§10 toolchain, §11 sdkconfig, §12 flashing and recovery, §13 peripheral cookbook, §14 symptom → cause → fix table).reference/esp32-soc.md— the silicon: pins that do not exist, strapping semantics and theGPIO_STRAP_REGbit order, ADC/DAC/touch maps and accuracy, IO_MUX vs GPIO Matrix and the SPI speed rule, power modes, memory map, deep-sleep wake pins.reference/esp32-family.md— the rest of the family, for "should this be a different ESP32?" questions: what does and does not port between chips, radio and USB capability per chip, the RMT generation table (WS2812 under Wi-Fi load), deep-sleep memory and ULP/LP-core availability, and a chip-selection table.reference/recipes.md— code that compiles:platformio.ini,sdkconfig.defaults, ADC1 with calibration, LEDC LED and servo, debounced input, the new I2C master driver, 80 MHz SPI, UART2, Wi-Fi scan and station connect, NVS, deep sleep, RMT WS2812.template/— a project that builds clean, in two variants, plus a scaffold script. Seetemplate/README.md.
Orientation
| Module | ESP32-WROOM-32/-32D/-32E/-32U, ESP-WROOM-32S, or ESP32-WROVER — check the can. ESP32-D0WDQ6 or D0WD-V3, Xtensa LX6 dual-core @ 240 MHz |
| Memory | 4 MB in-package flash, 520 KB SRAM (~320 KB linkable), 8 KB RTC FAST + 8 KB RTC SLOW. PSRAM only on a WROVER |
| Header | 38 pins, 19 per side (Espressif J2 / J3). 32 GPIOs — all module pads, EN, 3V3, 5V, 3× GND |
| USB | No USB peripheral in the chip. A CP2102N (DevKitC) or CH340G (clones) bridge on UART0 (GPIO1/GPIO3), with DTR/RTS auto-reset |
| Console | UART0 @ 115200 only. There is no USB-Serial-JTAG and no debug header |
| LED | none on the Espressif DevKitC V4. GPIO2, active high, on NodeMCU-32S and clones |
| Buttons | BOOT = GPIO0, pressed low, and GPIO0 is also a header pin · EN/RST acts on CHIP_PU, not readable |
| Free pins | 4, 13, 14, 16, 17, 18, 19, 21, 22, 23, 25, 26, 27, 32, 33 |
| Input-only | 34, 35, 36 (VP), 39 (VN) — no output driver, no internal pulls |
| Strapping | 0, 2, 5, 12 (MTDI), 15 (MTDO) |
| Never use | 6, 7, 8, 9, 10, 11 — the in-package flash bus, six pins by the USB connector |
| Analog | ADC1 on 32–36, 39 · ADC2 on 0, 2, 4, 12–15, 25–27 · DAC on 25 and 26 |
| Radio | Wi-Fi b/g/n + Bluetooth 4.2 BR/EDR + BLE, PCB antenna (or u.FL on -U/-IE modules) |
| Power | 3V3 out (~600 mA budget) · 5V in/out. Three mutually exclusive supply routes |
| Toolchain | PlatformIO 6.1.19 + platform-espressif32 7.0.1 + ESP-IDF 6.0.1, board = esp32dev |
What ships with it
20 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- assets/IMAGE.md 457 B
- reference/board-hardware.md 20 KB
- reference/esp32-family.md 22 KB
- reference/esp32-soc.md 16 KB
- reference/recipes.md 20 KB
- template/.gitignore 139 B
- template/CMakeLists.txt 114 B
- template/include/app.h 696 B
- template/include/board.h 4.9 KB
- template/partitions.csv 217 B
- template/platformio.ini 613 B
- template/README.md 2.8 KB
- template/sdkconfig.defaults 454 B
- template/src/analog.c 2.5 KB
- template/src/board_report.c 5.4 KB
- template/src/CMakeLists.txt 289 B
- template/src/main.c 5.4 KB
- template/src/wifi_scan.c 2.4 KB
- template/variants/minimal/main.c 1.5 KB
- template/variants/new-project.sh 1.7 KB runs code
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 8d ago Changed · +4 lines 8b8d6d146f01
- 12d ago First seen · 247 lines · 0 tokens per session scan A da2b1bd64911
esp32-wroom-38pin is a skill published in the GitHub repository alexex1993/mcu-skills (17 stars, last pushed 2d ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 4,515 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
doca-argp
Use this skill for hands-on DOCA Arg Parser CLI work on a shipped sample or new DOCA-using app — adding / removing / renaming flags; wiring docaargpinit → register params → docaargpstart → docaargpdestroy in order; picking a parameter type from the full public enum (DOCAARGPTYPESTRING, INT, BOOLEAN, DEVICE, DEVICEREP…
holoscan-install-wheel
Install Holoscan SDK Python wheel via pip into a venv. Use for Python installs; not for native C++/apt or Conda installs.
mspm0-skill
Tool-neutral CLI agent rules for TI MSPM0 development with SysConfig, DriverLib, CCS, Keil/uVision, CMake/GCC/OpenOCD, and supported board references. Use when an agent needs to inspect or modify MSPM0 projects, validate SysConfig output, package examples, or work on NUEDC embedded firmware.
arduino-code-generator
Generate Arduino and embedded C++ snippets for sensors, actuators, buses, state machines, timing, data logging, and hardware abstraction. Use when a user requests implementation code and provide the exact board, framework, toolchain, pins, voltage, memory, and library versions first. Bundled templates target UNO…
arduino-project-builder
Build complete Arduino and embedded projects across Arduino IDE, Arduino CLI, PlatformIO, and vendor-specific toolchains. Use when users request an application combining firmware, sensors, actuators, networking, power, or deployment rather than a code snippet. The bundled scaffold targets UNO, ESP32, and Raspberry Pi…
keymap-ai
Expert assistant for ZMK and QMK keyboard firmware configs. Use when auditing or improving a zmk-config or QMK keymap, tuning home row mods or hold-taps, adding smart layers (numword, caps word), configuring trackballs, trackpads, trackpoints, encoders and per-layer input processors, generating keymap-drawer diagrams…