M5Stack Cardputer Zero · Volume 12

M5Stack Cardputer Zero Volume 12 — Cheatsheet

Quick-facts panel, what to verify on receipt, hypothesized vs confirmed delta tracking, pre-engagement checklist, troubleshooting flow

Contents

SectionTopic
1About this volume
2Hypothesized quick-facts panel
3WHAT TO VERIFY ON RECEIPT — the critical Zero checklist
4Hypothesis vs confirmed-fact tracker template
5Firmware quick-flash reference
6Programming environment quick-start
7Battery life realism table
8Region rules quick reference
9Troubleshooting flow
10Pre-engagement checklist (printable)
11Key references in one block

1. About this volume

Vol 12 is the laminate-ready field card for Cardputer Zero. Because Zero is research-baseline (unconfirmed product as of 2026-05-13), this cheatsheet has a critical Zero-specific section: the what to verify on receipt checklist (§ 3). When the actual product lands, work through that checklist before treating any other content as authoritative.


2. Hypothesized quick-facts panel

┌──────────────────────────────────────────────────────────────────┐
│ M5Stack Cardputer Zero (hypothesized as of 2026-05-13)           │
├──────────────────────────────────────────────────────────────────┤
│ Status         Aspirational; product unconfirmed                 │
│ Family role    Budget / education / fleet-ops tier of Cardputer  │
│ MCU (presumed) ESP32-S3 family (FN8 or PICO-1-N8R2 likely)       │
│ Flash          8 MB (presumed)                                   │
│ PSRAM          None (presumed)                                   │
│ Wi-Fi          2.4 GHz only (ESP32-S3 silicon)                   │
│ BLE            5.0 (no Classic BT)                               │
│ Display        1.14" 240×135 IPS ST7789V2 (presumed)             │
│ Keyboard       56-key membrane QWERTY (presumed)                 │
│ Battery        500-1000 mAh LiPo (presumed)                      │
│ USB            USB-C (5V; no PD likely)                          │
│ microSD        Yes (FAT32, Class 10+)                            │
│ Grove          HY2.0-4P (3.3V + 2 GPIO)                          │
│ EXT bus        NO (presumed) — no Cap LoRa-1262 compatibility    │
│ Audio in       NO (presumed) — no MEMS mic, no codec, no jack    │
│ Audio out      Speaker only (PWM-driven presumed)                │
│ IR LED         MAYBE (presumed reduced)                          │
│ IMU            NO (presumed)                                     │
│ Form factor    Credit-card handheld; ~35-45 g                    │
│ Price          $30-40 USD (presumed)                             │
└──────────────────────────────────────────────────────────────────┘

ALL VALUES MARKED "PRESUMED" REQUIRE VERIFICATION ON RECEIPT.
SEE § 3 FOR THE FULL VERIFICATION CHECKLIST.

3. WHAT TO VERIFY ON RECEIPT — the critical Zero checklist

When Cardputer Zero (or whatever the actual product turns out to be) lands in your hands:

3.1 Identification + provenance

  • Product name matches advertised SKU
  • SKU matches what you ordered
  • Vendor packaging matches M5Stack’s standard presentation
  • Documentation included — quick-start card, etc.
  • Photograph unit + serial number for records

3.2 Visual inspection

  • No physical damage to case
  • No swelling visible
  • All connectors clean
  • Keyboard membrane intact
  • Display free of cracks
  • Antenna PCB trace (if visible) intact

3.3 Power-on test

  • First boot succeeds (display shows vendor firmware)
  • Display renders normally
  • Keyboard responds to keypresses
  • USB-C charges (verify charging LED if present)
  • Speaker produces sound

3.4 Hardware verification

For each presumed hardware feature, verify on receipt:

  • MCU: read via esptool.py --port X chip_id — confirm ESP32-S3 + variant
  • Flash size: esptool.py --port X flash_id
  • PSRAM: build a sketch that probes; report at runtime
  • IR LED: attempt to send IR signal; confirm with phone camera (IR is visible to most cameras)
  • IMU: Wire-scan I²C at 0x68; presence indicates IMU
  • Audio codec: Wire-scan I²C at 0x18 (ES8311 default)
  • Microphone: try recording test (firmware path)
  • 3.5 mm jack: visible inspection; plug headphones, test audio output
  • EXT bus: visual inspection — look for 14-pin connector on the side/back
  • Grove port: visual + plug test
  • microSD: insert card, verify mounted; test write
  • Battery: charge to full, run typical load, measure actual runtime

3.5 Spec sheet retrieval

  • Locate Cardputer Zero’s product page on shop.m5stack.com
  • Locate the docs page on docs.m5stack.com
  • Download datasheets / schematics if available
  • Compare your unit’s actual specs to the docs
  • Flag any discrepancies for vendor support

3.6 Update this deep dive

Once specs are confirmed:

  1. Edit each volume’s hypothesis tables to confirmed values
  2. Replace FIGURE SLOT markers with actual photos (via Photo Helper)
  3. Update CLAUDE.md Progress Log
  4. Run bash build/rebuild_complete.sh
  5. Run validators + commit

4. Hypothesis vs confirmed-fact tracker template

ItemHypothesis (Vol N § X)Confirmed valueConfirmation source
Product existsTBD_________Vendor page
SKUK132-Zero_________Vendor invoice
MCUESP32-S3FN8_________chip_id output
Flash8 MB_________flash_id output
PSRAMNone_________Runtime probe
Display240×135 IPS_________Visual + datasheet
Keyboard56-key_________Visual count
Battery700 mAh_________Datasheet + measured
USB-CYes_________Visual
microSDYes_________Visual
Grove HY2.0-4PYes_________Visual
EXT busNo_________Visual
IR LEDTBD_________Test + visual
IMUNo_________I²C scan
Audio codecNo_________I²C scan
MEMS micNo_________Visual + test
3.5 mm jackNo_________Visual
SpeakerYes_________Test
Magnetic baseTBD_________Visual
Price$30-40_________Vendor listing

Copy this template into your engagement record / unit’s narrative .md on receipt.


5. Firmware quick-flash reference

# === Identify port ===
ls /dev/cu.usb*           # macOS
ls /dev/ttyUSB* /dev/ttyACM*  # Linux
# Or check Device Manager → COM ports on Windows

# === Backup factory firmware ===
esptool.py --port /dev/cu.usbserial-X \
           --chip esp32s3 \
           read_flash 0 0x800000 \
           factory_backup_$(date +%Y%m%d).bin

# === Erase + flash ===
esptool.py --port /dev/cu.usbserial-X erase_flash

esptool.py --port /dev/cu.usbserial-X \
           --chip esp32s3 \
           --baud 921600 \
           write_flash -z 0x0 firmware.bin

# === Verify ===
esptool.py --port /dev/cu.usbserial-X \
           --chip esp32s3 \
           read_mac

6. Programming environment quick-start

# === Arduino + PlatformIO ===
# Install PlatformIO (one-time)
pip install -U platformio

# Build + flash with Zero env
cd your-project/
pio run --environment m5stack-cardputer-zero --target upload

# Serial monitor
pio device monitor --baud 115200

# === MicroPython ===
# Flash MicroPython firmware first (one-time)
esptool.py --port /dev/cu.usbserial-X erase_flash
esptool.py --port /dev/cu.usbserial-X --chip esp32s3 --baud 921600 \
           write_flash -z 0x0 micropython-esp32s3.bin

# Then use Thonny or rshell as MicroPython IDE

7. Battery life realism table

Assuming 700 mAh nominal:

ModeCurrent (mA)Runtime
Sleep5~140 hours (~6 days)
Display off, idle30~24 hours
Menu navigation70~8 hours
Wi-Fi scan150~4 hours
Wi-Fi active TX/RX250~2.5 hours
Heaviest load (Wi-Fi + display + SD)300~2 hours

For 500 mAh: × 0.71. For 1000 mAh: × 1.43.

Practical rule: half a Cardputer ADV’s runtime.


8. Region rules quick reference

Region2.4 GHz Wi-FiTX powerNotes
USFCC §15.247+30 dBm maxSpread spectrum required
EUEN 300 328+20 dBm maxStrict duty cycle
JPARIB STD-T66+20 dBm maxVarious
Other regionsVariousVariousVerify locally

ESP32-S3 typically TX at +20 dBm — within all major region limits.

For pentest TX (deauth, evil portal): authorization required, period.


9. Troubleshooting flow

Won't boot?
   ├─ Battery dead? Charge for 30 min, retry.
   ├─ Stuck firmware? Erase + reflash (Vol 8).
   ├─ Bad SD? Try without SD inserted.
   └─ Hardware fault? Vendor RMA.

USB-C won't enumerate?
   ├─ Charge-only cable? Use data cable.
   ├─ Driver issue (Windows)? Reinstall ESP32 USB drivers.
   ├─ Wrong port? Try different USB port.
   └─ Silicon damage? Vendor RMA.

Wi-Fi scan empty?
   ├─ Wi-Fi enabled in firmware? Check.
   ├─ Antenna damaged? Visual inspect.
   ├─ Region setting wrong? Check.
   └─ Silicon fault? Vendor RMA.

Battery dies fast?
   ├─ Heavy display brightness? Dim to 30-50%.
   ├─ Sustained Wi-Fi TX? Lower duty.
   ├─ Cold ambient? Cell capacity drops.
   └─ Cell degraded? Replace.

Custom firmware bricked?
   ├─ Erase + reflash via esptool.py (Vol 8 § 7)
   ├─ Boot button + USB if needed
   └─ Vendor RMA if silicon damage.

10. Pre-engagement checklist (printable)

HARDWARE
[ ] Unit charged to ≥80%
[ ] USB-C battery pack ready (engagement >3h)
[ ] USB-C cable
[ ] microSD formatted FAT32, adequate space
[ ] Antenna inspected

FIRMWARE
[ ] Firmware version locked + tested
[ ] Region setting matches venue
[ ] Recovery plan documented

ENGAGEMENT
[ ] Written authorization (TX-related)
[ ] Bystander privacy plan
[ ] Sanitization plan post-engagement
[ ] Documentation policy

FINAL
[ ] All above checked — proceed

11. Key references in one block

Vendor
   M5Stack shop                    shop.m5stack.com
   M5Stack docs                    docs.m5stack.com
   M5Stack community               community.m5stack.com

Community
   Cardputer Wiki                  cardputer.wiki
   r/CardPuter                     reddit.com/r/CardPuter
   Awesome M5Stack Cardputer       github.com/terremoth/awesome-m5stack-cardputer

Firmware
   M5Launcher                      bmorcelli.github.io/Launcher
   Bruce                           github.com/pr3y/Bruce
   NEMO                            github.com/n0xa/m5stack-nemo
   MicroHydra                      github.com/echo-lalia/MicroHydra
   UiFlow                          flow.m5stack.com
   ESPHome                         esphome.io

Libraries
   M5Cardputer                     github.com/m5stack/M5Cardputer
   M5Unified                       github.com/m5stack/M5Unified
   Arduino-ESP32                   github.com/espressif/arduino-esp32

Sibling Hack Tools references
   Cardputer ADV deep dive         ../../../M5Stack Cardputer ADV/03-outputs/Cardputer_ADV_Complete.html
   Cardputer ADV CLAUDE.md         ../../../M5Stack Cardputer ADV/CLAUDE.md
   M5Stick S3 deep dive            ../../../M5Stick S3/03-outputs/M5StickS3_Complete.html
   ESP32 Marauder firmware         ../../../ESP32 Marauder Firmware/03-outputs/ESP32_Marauder_Firmware_Complete.html
   Hack Tools comparison           ../../../_shared/comparison.md
   Capability matrix               ../../../_shared/capability_matrix.html

Regulatory
   US FCC                          fcc.gov
   US 47 CFR                       fcc.gov/general/title-47-code-federal-regulations
   EU ETSI                         etsi.org

Tools
   esptool.py                      github.com/espressif/esptool
   PlatformIO                      platformio.org

This is the final volume of the M5Stack Cardputer Zero research-baseline series. Re-build all 12 volumes with confirmed-fact updates when actual hardware specs become available — until then, every hardware claim is hypothesis subject to verification per § 3.