Agent Skill
2/7/2026

xiao

Pin definitions and board specifications for SeeedStudio XIAO series microcontrollers. Use this skill to identify correct GPIO pins, alternate functions, power domains, strapping pins, or boot mode restrictions for XIAO boards (ESP32C3/C5/C6/S3, nRF52840, RP2040/RP2350, SAMD21, MG24, nRF54L15, RA4M1). Provides board selection guidance and links to platform sub-skills. Requires a platform sub-skill for code implementation.

S
starsphere
0GitHub Stars
1Views
npx skills add StarSphere-1024/xiao_skills

SKILL.md

Namexiao
DescriptionPin definitions and board specifications for SeeedStudio XIAO series microcontrollers. Use this skill to identify correct GPIO pins, alternate functions, power domains, strapping pins, or boot mode restrictions for XIAO boards (ESP32C3/C5/C6/S3, nRF52840, RP2040/RP2350, SAMD21, MG24, nRF54L15, RA4M1). Provides board selection guidance and links to platform sub-skills. Requires a platform sub-skill for code implementation.

name: xiao description: Pin definitions and board specifications for SeeedStudio XIAO series microcontrollers. Use this skill to identify correct GPIO pins, alternate functions, power domains, strapping pins, or boot mode restrictions for XIAO boards (ESP32C3/C5/C6/S3, nRF52840, RP2040/RP2350, SAMD21, MG24, nRF54L15, RA4M1). Provides board selection guidance and links to platform sub-skills. Requires a platform sub-skill for code implementation.

XIAO Board Reference

This skill provides pin definitions and board specifications for SeeedStudio XIAO series. For code implementation, use the appropriate platform sub-skill.

Platform Sub-Skills

PlatformSub-SkillWhen to Use
Arduino/xiao-arduinoArduino/C++ framework development
MicroPython/xiao-micropythonMicroPython development
ESPHome/xiao-esphomeHome Assistant ESPHome YAML configs

First select your platform sub-skill, then read board reference below.

Board Selection

Read the corresponding board reference for pin definitions:

BoardReferencePlatform Support
ESP32C3boards/esp32c3.mdArduino, MicroPython, ESPHome
ESP32C5boards/esp32c5.mdArduino
ESP32C6boards/esp32c6.mdArduino, MicroPython, ESPHome
ESP32S3boards/esp32s3.mdArduino, MicroPython, ESPHome
ESP32S3 Senseboards/esp32s3.mdArduino, MicroPython
nRF52840boards/nrf52840.mdArduino, MicroPython
nRF52840 Senseboards/nrf52840.mdArduino, MicroPython
RP2040boards/rp2040.mdArduino, MicroPython, ESPHome
RP2350boards/rp2350.mdArduino
SAMD21boards/samd21.mdArduino
MG24boards/mg24.mdArduino
MG24 Senseboards/mg24.mdArduino
nRF54L15 Senseboards/nrf54l15.mdMicroPython only
RA4M1boards/ra4m1.mdArduino

Board Quick Reference

ESP32 Series

BoardWirelessGPIOADCSpecial
ESP32C3WiFi, BLE115Low cost
ESP32C5WiFi, BLE~11-WiFi 6
ESP32C6WiFi, BLE135Zigbee, low power
ESP32S3WiFi, BLE114Dual-core, AI

nRF Series

BoardWirelessGPIOADCSpecial
nRF52840BLE 5.0216NFC, USB
nRF52840 SenseBLE 5.0216+ PDM mic
nRF54L15 SenseBLE 5.4154Ultra low power

RP Series

BoardGPIOADCSpecial
RP2040304PIO, SWD boot
RP2350304ARM M33, DSP

Other

BoardGPIOADCSpecial
SAMD21166USB HID
MG24208Matter, Zigbee
RA4M11814Arduino UNO R4 chip

Expansion Boards

XIAO expansion boards add peripherals and capabilities. For complete hardware documentation, see references/expansion_boards/.

Expansion BoardKey FeaturesArduino Reference
Expansion BaseOLED, RTC, SD card, buzzer, Grove connectorsxiao-arduino:expansion-boards/expansion-base.md
Round Display1.28" touchscreen (240x240)xiao-arduino:expansion-boards/round-display.md
Grove Shield8 Grove connectors + battery managementxiao-arduino:expansion-boards/grove-shield.md
ePaper V27 ePaper display sizes (1.54" to 7.5")xiao-arduino:expansion-boards/epaper-v2.md
CAN BusMCP2515 controller for automotive/industrialxiao-arduino:expansion-boards/can-bus.md
RS485Industrial communicationxiao-arduino:expansion-boards/rs485.md
LED Driver5V/12V LED strips with WLED supportxiao-arduino:expansion-boards/led-driver.md
Bus ServoSerial bus servo control for roboticsxiao-arduino:expansion-boards/bus-servo.md
GPS/GNSSL76K GNSS module for positioningxiao-arduino:expansion-boards/gps-gnss.md
GPIO ExpanderMCP23017 16-bit I/O expansionxiao-arduino:expansion-boards/gpio-expander.md
RGB MatrixRGB LED matrix driverxiao-arduino:expansion-boards/rgb-matrix.md
COB LEDChip-on-Board LED lightingxiao-arduino:expansion-boards/cob-led.md

For detailed hardware specifications, pin mappings, and compatibility, see references/expansion_boards/.

Critical Pin Restrictions

ESP32 Series Strapping Pins

These pins affect boot mode - avoid using or use carefully:

BoardPinFunctionRestriction
ESP32C3/C6D8 (GPIO20/8)SPI SCKMust be HIGH/float at boot
ESP32C3/C6D9 (GPIO21/9)SPI MISOConnected to BOOT button
ESP32C3/C6D0, D1USB D-/D+Used for USB upload
ESP32S3D0, D1GPIO16/17USB D-/D+
ESP32S3D8, D9GPIO8/9Strapping pins

Warning: Using strapping pins incorrectly can prevent booting or uploading.

RP2040 BOOTSEL

  • Hold BOOTSEL button while connecting USB to enter firmware upload mode
  • Drive appears as RPI-RP2 mass storage

I2C/SPI/UART Pin Mappings

Pin mappings vary by board - always check board reference before wiring.

Sense Models

For camera/microphone sensor boards, see special/sense-models.md:

  • ESP32S3 Sense camera configuration
  • nRF52840 Sense PDM microphone
  • MG24 Sense built-in sensors

Low Power

Deep sleep and power optimization are platform-specific. Use your platform sub-skill:

  • Arduino: Use the /xiao-arduino skill and see the API documentation for deep sleep (ESP32, nRF52, RP2040)
  • MicroPython: Use the /xiao-micropython skill and see the API documentation for deep sleep (ESP32, nRF52, RP2040)
  • ESPHome: Use the /xiao-esphome skill and see the advanced documentation for deep sleep configuration

Bootloader Reflash

For bootloader recovery or firmware flashing procedures, see special/bootloader-reflash.md.

Reference Structure

xiao/
├── boards/              # Pin definitions for each board (READ THIS FIRST)
├── expansion_boards/    # XIAO expansion board hardware documentation
│   ├── README.md        # Expansion board overview and selection guide
│   ├── expansion-base.md
│   ├── round-display.md
│   ├── grove-shield.md
│   ├── epaper-v2.md
│   ├── can-bus.md
│   ├── rs485.md
│   ├── led-driver.md
│   ├── bus-servo.md
│   ├── gps-gnss.md
│   ├── gpio-expander.md
│   ├── rgb-matrix.md
│   └── cob-led.md
└── special/
    ├── bootloader-reflash.md  # Bootloader recovery
    └── sense-models.md        # Sense model camera/sensors

Workflow

  1. Load platform sub-skill first (/xiao-arduino, /xiao-micropython, /xiao-esphome)
  2. Read board reference for pin definitions (e.g., boards/esp32c3.md, boards/rp2040.md)
  3. Check pin restrictions for strapping/boot pins
  4. Generate code using platform sub-skill patterns

Important Notes

  • Always verify pin mappings in board reference before connecting peripherals
  • Avoid strapping pins on ESP32 boards unless necessary
  • Use appropriate sub-skill for code examples and platform patterns
  • Check Sense model docs for camera/microphone configuration
Skills Info
Original Name:xiaoAuthor:starsphere