Claude Code skills for microcontrollers (MCU): STM32, ESP32, RP2040, nRF52840, AVR board-specific Agent Skills (SKILL.md) for embedded firmware
Overview
on STM32, ESP32, ESP8266, RP2040 / RP2350, nRF52 and AVR boards. These are Agent Skills (SKILL.md) for embedded development — one skill per board, holding the board-specific knowledge that is otherwise scattered across a datasheet, a reference manual, a schematic and a weekend of debugging. A good MCU skill answers, without the model guessing: which pin does what, which clock tree actually works, which HAL call silently does nothing, and how to get a build onto the chip. The repo is a plugin marketplace with one plugin per board. Inside Claude Code: Plugin names match the skill names in the table above. Or install from a clone with the scripts below. Then in Claude Code the skill loads by itself when you work on that board, or on demand: Project-scoped install instead of user-scoped: copy the skill directory to .claude/skills/ inside your firmware project.
README
mcu-skills — Claude Code Skills for Microcontrollers (MCU)
Claude Code skills for MCU firmware development on STM32, ESP32, ESP8266, RP2040 / RP2350,
nRF52 and AVR boards. These are Agent Skills
(SKILL.md) for embedded development — one skill per board, holding the board-specific knowledge
that is otherwise scattered across a datasheet, a reference manual, a schematic and a weekend of
debugging.
A good MCU skill answers, without the model guessing: which pin does what, which clock tree actually works, which HAL call silently does nothing, and how to get a build onto the chip.
Skills in this repo
| Skill | Board | MCU | Image |
|---|---|---|---|
stm32h750-weact |
WeAct Studio MiniSTM32H7xx core board | STM32H750VBT6 (Cortex-M7) | |
stm32f411-blackpill |
WeAct Studio “Black Pill” V3.x (and clones) | STM32F411CEU6 (Cortex-M4F) | |
stm32f401rc-blackpill |
40-pin “Black Pill” clone with the WeAct HID bootloader | STM32F401RCT6 (Cortex-M4F) | |
esp32c6-lcd147 |
Waveshare ESP32-C6-LCD-1.47 | ESP32-C6FH4 (RISC-V) | |
esp32c6-touch-lcd147 |
Waveshare ESP32-C6-Touch-LCD-1.47 | ESP32-C6FH8 (RISC-V) | |
esp32c3-oled042 |
ESP32-C3 0.42" OLED (ABRobot / 01Space) | ESP32-C3FH4 (RISC-V) | |
esp32-wroom-30pin |
30-pin ESP32 devkit (DOIT V1 / CH340 Type-C) | ESP32-D0WDQ6 (Xtensa LX6) | |
esp32-wroom-36pin |
36-pin ESP32 devkit (original DOIT DevKit V1) | ESP32-D0WDQ6 (Xtensa LX6) | |
esp32-wroom-38pin |
38-pin ESP32 devkit (DevKitC V4 / NodeMCU-32S) | ESP32-D0WDQ6 (Xtensa LX6) | |
esp32s3-cam-40pin |
40-pin ESP32-S3 CAM board (Freenove FNK0085 / clones) | ESP32-S3-WROOM-1 N8R8/N16R8 (Xtensa LX7) | |
esp32s3-rlcd42 |
Waveshare ESP32-S3-RLCD-4.2 (SKU 33298 / 33507) | ESP32-S3-WROOM-1-N16R8 (Xtensa LX7) | |
esp32p4-jc-m3-dev |
Guition JC-ESP32P4-M3-DEV | ESP32-P4NRW32 (2× RISC-V) + ESP32-C6 | |
esp32p4-jc4880p443 |
Guition JC4880P443C_I_W, 4.3" 480×800 touch display | ESP32-P4NRW32 (2× RISC-V) + ESP32-C6 | |
esp8266-nodemcu-30pin |
30-pin NodeMCU devkit (DevKit V1.0 / Amica, LoLin V3) | ESP8266EX (ESP-12E/F, Tensilica L106) | |
nrf52840-promicro |
ProMicro nRF52840 V1940 (nice!nano v2 clone / SuperMini) | nRF52840 QIAA (Cortex-M4F) | |
atmega328p-nano |
Arduino Nano (A000005) | ATmega328P (AVR 8-bit) | |
atmega32u4-beetle |
Beetle / CJMCU “Mini Arduino Leonardo” | ATmega32U4 (AVR 8-bit, native USB) | |
lgt8f328p-minievb |
LGT8F328P-LQFP32 MiniEVB, Nano-style 30-pin (silkscreen LGTBF32BP) |
LGT8F328P (Logic Green LGT8XM, AVR-compatible) | |
rp2040-pico |
Raspberry Pi Pico (SC0915, and Pico H) | RP2040 (2× Cortex-M0+) | |
rp2350a-weact |
WeAct Studio RP2350A Core Board (V1.0 and V2.0) | RP2350A (2× Cortex-M33) | |
beu1000-evuba |
Baikal Electronics EVU-BA-2.1 | BE-U1000 (3× RISC-V: 2× BR-350, BM-310) |
Install
As a Claude Code plugin
The repo is a plugin marketplace with one plugin per board. Inside Claude Code:
/plugin marketplace add alexex1993/mcu-skills
/plugin install stm32h750-weact@mcu-skills
Plugin names match the skill names in the table above. Or install from a clone with the scripts below.
macOS / Linux
git clone https://github.com/alexex1993/mcu-skills.git
cd mcu-skills
./scripts/install.sh --list
./scripts/install.sh stm32h750-weact # symlink into ~/.claude/skills
./scripts/install.sh stm32h750-weact --copy # or copy, if you want to edit locally
./scripts/install.sh --list # result
Windows
git clone https://github.com/alexex1993/mcu-skills.git
cd mcu-skills
.\scripts\install.ps1 --list
.\scripts\install.ps1 stm32h750-weact # junction into ~\.claude\skills
.\scripts\install.ps1 stm32h750-weact --copy # or copy, if you want to edit locally
.\scripts\install.ps1 --list # result
Then in Claude Code the skill loads by itself when you work on that board, or on demand:
/stm32h750-weact
Project-scoped install instead of user-scoped: copy the skill directory to .claude/skills/
inside your firmware project.
Layout
skills/// one skill, ready to copy into ~/.claude/skills
SKILL.md frontmatter + the load-bearing knowledge
reference/ deep detail, read on demand
template/ a project that actually builds
assets/ photos of the board, pinout images
.claude-plugin/marketplace.json plugin marketplace, one plugin per skill
docs/ how to author and review a skill
templates/skill-template/ blank skeleton to start from
scripts/ install.sh / install.ps1, validate.sh / validate.ps1
Every skill has an assets/ directory for pictures of the physical board — a top shot, a
bottom shot with a readable silkscreen, a pinout diagram. Photos can be uploaded into IMAGE.md
skills/rp2/rp2040-pico/assets/
IMAGE.md
Families: stm32, esp32, esp8266, rp2, nrf, avr, baikal.
Add a new directory if yours does not fit — one level, family name only, no vendor nesting.
Skill directory name == the name: in its frontmatter, and it must be unique across the whole
repo: installed skills all land in one flat ~/.claude/skills/ namespace.
Contributing
The short version: find the spec, build a hello world that runs on real hardware, then write the skill from what you learned. Full pipeline in CONTRIBUTING.md, authoring detail in docs/AUTHORING.md, review bar in docs/CHECKLIST.md.
Rule of thumb for what belongs here: if the answer is in the vendor’s getting-started page and the model gets it right without help, leave it out. Everything that cost you an evening goes in.
Articles
- dev.to: LLMs confidently lie about your microcontroller — an article about this repo in English.
- Хабр: скиллы Claude Code для микроконтроллеров — статья об этом репозитории на русском языке.
License
MIT — see LICENSE. Vendored third-party code inside a skill’s template/lib/ keeps
its own license; note it in that skill’s README.
The cross-chip comparison material in skills/esp32/*/reference/esp32-family.md is adapted
from ESP32Features by artkeller, used under
CC BY 4.0. Attribution is carried in §11 of
that file.
Recommended Tools
Try a different keyword or remove a filter.
Install
npx skillfish add alexex1993/mcu-skills