m5stack-cardputer-advlisted
Install: claude install-skill iot-forge/m5stack-skills
# M5Stack Cardputer Adv development
The Cardputer Adv is an ESP32-S3-based pocket computer from M5Stack: a 56-key
keyboard, 1.14" IPS screen, IMU, mic/speaker, Grove and EXT expansion ports,
microSD, and a 1750mAh battery, all in an 84 x 54 x 19.6mm shell. Official
docs: https://docs.m5stack.com/en/core/Cardputer-Adv
Use this skill to write correct firmware for it (Arduino, PlatformIO,
ESP-IDF, or UIFlow2/MicroPython), to explain what a pin or peripheral does,
or to debug hardware-facing code (wrong I2C address, keyboard not
responding, display not initializing, etc).
## Important: this is not the original Cardputer
M5Stack sells two boards with very similar names and the same enclosure
shape. Don't assume code for one works unmodified on the other.
| Subsystem | Cardputer (original) | Cardputer Adv |
|---|---|---|
| Keyboard | GPIO scan matrix, no I2C | **TCA8418 I2C keypad controller** + interrupt on G11 |
| Audio | NS4168 I2S amp + SPM1423 PDM mic | **ES8311 codec** (I2C control + I2S data) + NS4150B amp |
| IMU | none | **BMI270** (I2C, 6-axis) |
| Module | Stamp-S3 | Stamp-S3A |
If the user's code touches raw GPIO pin numbers for the keyboard or mic,
double-check which board it targets — a sketch written for the original
Cardputer's GPIO matrix keyboard will not read keys correctly on the Adv,
which exposes its keyboard only through the TCA8418 over I2C.
The good news: **if you use the official `M5Cardputer` Arduino library (which
wraps M5Unified/M5GFX), the same