Interfaceby Mozgi512 · GitHub · LVGLTab5 touchscreen, turned into a MIDI grid
Open-source ESP-IDF firmware that turns the M5Stack Tab5's touchscreen into a class-compliant USB-MIDI controller with six playing modes, a 4-track looper and live value readouts on screen.
Build sheet
- Board
- M5Stack Tab5 (ESP32-P4)
- Interface
- USB-MIDI class device
- Framework
- ESP-IDF 5.5.4
- Modes
- 6 (notes, drums, faders, XY, macros, looper)
Can I build this?Beginner · AI 5/5 · $0
- Difficulty
- Beginner
- AI-buildability
- 5/5
- Time
- A weekend
- Cost
- $0
It is almost entirely software on an off-the-shelf board: ESP-IDF firmware, USB-MIDI class descriptors and touch UI, with no soldering or wiring required.
Based on "Tab5 touchscreen, turned into a MIDI grid" on Afterware: https://afterware.xyz/p/tab5-touchscreen-turned-into-a-midi-grid
Write ESP-IDF firmware for an M5Stack Tab5 (ESP32-P4) with its touchscreen that acts as a class-compliant USB-MIDI device. Draw an 8x4 grid of pads that send note on/off with fixed velocity, and a row of four faders that send CC 20-23 with relative drag. Show each control's current value and CC or note number on screen, and redraw the full frame every time you present it.
Estimates based on the original write-up. How AI-buildability is scored. Building with an AI assistant? Connect it to Afterware (free MCP server).
Story
The Tab5 Launchpad is firmware for the M5Stack Tab5, which is built around an ESP32-P4. The firmware presents the device as a standard USB-MIDI class device, so a DAW or synth sees a plain MIDI input with no driver. The touchscreen is divided into modes: notes, drums (GM percussion map on channel 10), faders, an XY pad, 16 macro knobs and a looper.
The looper records whatever is played in any mode, and can also capture MIDI sent back from a connected host. Tracks layer through overdub, and each on-screen control shows its current value and CC or note assignment. The author also notes that the firmware only reports USB enumeration state, not whether a DAW is actually listening.
The repository includes a native Linux preview tool that renders the real drawing code against a software framebuffer, so the screenshots come from the firmware itself rather than mockups. The build is a stock ESP-IDF 5.5.4 project.
Resources · 2
Interfaceby Mozgi512 · GitHub · LVGL
Interfaceby EnglandLobster · GitHub · LVGL











