m5-onboard

Detect M5Stack ESP32 boards, flash UIFlow 2.0, and install MicroPython app bundles.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/julianobarbosa/.claude --skill m5-onboard-julianobarbosa
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: m5-onboard
Source: https://github.com/julianobarbosa/.claude/tree/main/plugins/marketplaces/claude-plugins-official/plugins/cwc-makers/skills/m5-onboard
Command: npx skills add https://github.com/julianobarbosa/.claude --skill m5-onboard-julianobarbosa

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires esptool, pyserial, and includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill removes the guesswork and tedious manual steps required to cold-start a new (or reset) M5Stack ESP32 device, reliably getting it from unplugged hardware to a bootable setup with your desired apps.

Core Features & Use Cases

  • End-to-end USB provisioning: Detects the connected board, identifies the target variant, fetches the correct UIFlow 2.0 firmware, and flashes it.
  • Push a MicroPython app bundle: Installs the Claude Buddy app bundle (or a user-specified app source) into the device’s /flash/ so it boots into your software.
  • Validation and recovery hooks: Runs optional smoke tests and includes coached manual button-dance steps for native-USB ESP32-S3 boards to avoid bricking-style “stuck” states.

Use Case: Plug in a Cardputer-Adv for the first time and have it automatically flashed to UIFlow 2.0 and loaded with Claude Buddy, Hello, and Snake—without you manually switching modes or uploading files.

Quick Start

Run the skill and start fresh onboarding by telling Claude: "m5-onboard go".

Frequently Asked Questions about m5-onboard

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I flash UIFlow 2.0 firmware onto a freshly connected M5Stack ESP32 board?

Flashing UIFlow 2.0 firmware onto a freshly connected M5Stack ESP32 board is fully automated by detecting the USB device, fetching the correct per-variant firmware image, and applying the appropriate flashing parameters without manual mode switching.

What is the best way to install a MicroPython app bundle onto an M5Stack device?

Installing a MicroPython app bundle onto an M5Stack device is handled via REPL paste-mode, which pushes your specified app source directly into the device's /flash/ directory so it boots into your software automatically.

Does esptool support automated device provisioning for different M5Stack variants?

esptool supports automated device provisioning for common M5Stack variants by coordinating USB port detection and applying correct per-variant flashing parameters alongside firmware download and caching routines.

How do I detect the correct USB port for an M5Stack ESP32 board before flashing?

Detecting the correct USB port for an M5Stack ESP32 board is handled automatically by the provisioning workflow using pyserial, which coordinates port detection to identify the target variant before applying firmware.

Why does my ESP32-S3 M5Stack board get stuck during firmware flashing?

ESP32-S3 M5Stack boards get stuck during firmware flashing due to native-USB download-mode requirements, which can be resolved using coached manual button-dance steps included as recovery hooks to avoid bricking.

When do I need to run hardware smoke checks after MicroPython device provisioning?

Hardware smoke checks after MicroPython device provisioning are needed as an optional validation step to ensure the freshly flashed M5Stack board boots correctly and the installed app bundle operates without hardware faults.