gitwtfhub

wtf is c.p.s.--cardputer-syhnth--?

oldtokage-collab/c.p.s.--cardputer-syhnth-- — explained in plain English

Analysis updated 2026-05-18

9C++Audience · generalComplexity · 3/5Setup · moderate

TL;DR

A DIY synthesizer for the M5Stack Cardputer, playable from its keyboard or its motion sensor, with a full wavetable synth engine.

Mindmap

mindmap
  root((C.P.S. Synth))
    What it does
      DIY synthesizer
      Runs on Cardputer
      Built with Claude AI
    Tech stack
      C++ and PlatformIO
      Arduino framework
      ESP32-S3 chip
    Use cases
      Live keyboard playing
      Motion controlled sound
      Custom patch banks
    Audience
      Hobbyist musicians
      Makers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Build a pocket synthesizer using an M5Stack Cardputer for live playing.

REASON 2

Flash the firmware via M5Burner without writing any code.

REASON 3

Customize the synth's sound engine by editing the PlatformIO project in VSCode.

REASON 4

Use the built-in motion sensor to control filter, pitch, or volume while performing.

What's in the stack?

C++PlatformIOArduinoESP32-S3

How it stacks up

oldtokage-collab/c.p.s.--cardputer-syhnth--gregordinary/ggml-rocketkhenderson20/clearcore
Stars999
LanguageC++C++C++
Setup difficultymoderatehardmoderate
Complexity3/55/54/5
Audiencegeneraldeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · moderate Time to first run · 30min

Easiest path uses M5Burner to flash prebuilt firmware, building from source needs PlatformIO and VSCode.

Wtf does this do

C.P.S. is a synthesizer you build yourself using the M5Stack Cardputer, a small pocket sized computer with a keyboard. The project targets both the Cardputer ADV and the original Cardputer, and it was built by sharing ideas with the Claude AI assistant, which wrote most of the code. The creator describes it as fully vibe coded and shares progress on Reddit and social media, with community feedback shaping many features. Playing the synth means typing on the device's keyboard, where two rows of keys form a musical layout. A beginner friendly Easy Mode gives a simple diatonic scale, while a Pro Mode offers a full chromatic keyboard with black keys. You can shift octaves and transpose notes, control volume, and bend pitch with dedicated keys, which gives a guitar like choke effect. Sound comes from a wavetable oscillator that can morph between sine, triangle, sawtooth, and square waves, plus a sub oscillator, adjustable noise, a filter with several types, its own envelope, and a general purpose LFO that can modulate pitch, volume, timbre, filter, or pulse width. A bit crusher effect adds a lo fi, gritty tone, and portamento smooths the glide between notes. On the CardputerADV, the built in motion sensor lets you tilt or move the device to control up to seventeen different sound parameters, each with its own sensitivity, axis inversion, response curve, and calibration settings. The original Cardputer, which lacks this sensor, instead uses key presses to substitute similar control. A patch bank lets you save, rename, duplicate, and randomize complete sound settings, and everything is stored automatically to an SD card. Getting started does not require any programming: you can flash the firmware using M5Burner, install it through a Launcher, or build it yourself in VSCode using PlatformIO if you want to modify the code.

Yoink these prompts

Prompt 1
Help me flash C.P.S. onto my M5Stack CardputerADV using M5Burner.
Prompt 2
Explain how the IMU controls affect the 17 assignable sound targets in this synth.
Prompt 3
Walk me through building this PlatformIO project from source in VSCode.
Prompt 4
Show me how the Patch Bank saves and randomizes synth settings.

Frequently asked questions

wtf is c.p.s.--cardputer-syhnth--?

A DIY synthesizer for the M5Stack Cardputer, playable from its keyboard or its motion sensor, with a full wavetable synth engine.

What language is c.p.s.--cardputer-syhnth-- written in?

Mainly C++. The stack also includes C++, PlatformIO, Arduino.

How hard is c.p.s.--cardputer-syhnth-- to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is c.p.s.--cardputer-syhnth-- for?

Mainly general.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.