OscPocketM
A portable beatmaker for the CYD, ported from OscPocketM
Install / Use
/learn @sakana280/OscPocketMREADME
Overview
A portable beatmaker for CYD (cheap yellow display, aka ESP32-2432S028R). Create and sequence loops into complete songs with 3 synth tracks and 1 drum track.
Build
Open in VS Code with the PlatformIO extension, apply the Mozzi Patch below, connect your CYD via USB, then click "upload" to build and deploy.
Side note: I don't bother with Arduino IDE much these days, as it requires too much messing about with board selection, port speed selection, and manual library management with global versions. VSCode+PlatformIO provides easy one-click build-and-deploy from a git clone.
Mozzi Patch
The touchscreen input configuration gets destroyed after startMozzi() is called. For now, the easiest workaround is to patch libdeps\cyd2usb\Mozzi\internal\MozziGuts_impl_ESP32.hpp like this:
# elif MOZZI_IS(MOZZI_AUDIO_MODE, MOZZI_OUTPUT_INTERNAL_DAC)
- i2s_set_pin((i2s_port_t)i2s_num, NULL);
- i2s_set_dac_mode(I2S_DAC_CHANNEL_BOTH_EN);
+ i2s_set_dac_mode(I2S_DAC_CHANNEL_LEFT_EN); // output only on GPIO26, since GPIO25 is used for touchscreen on CYD
# endif
Hardware
Tested on the CYD2USB variant (eg this one with USB-C) of the original CYD. Probably works on the original with micro-USB only, using the "cyd" environment.
License
GNU General Public License v3.0
Credits
This is a port of Staffan Melin's OscPocketM, originally for the M5Stack Core2 licensed as GNU General Public License v3.0
This port has made minimal modifications to the original OscPocketM source via a minimal/janky implementation of the M5Stack libraries, but any future features will probably replace this with a HAL abstraction.
Related Skills
node-connect
350.8kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
110.4kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
350.8kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
350.8kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
