stretchcore
README
stretchcore
stretchcore is a Workshop Computer card for playing uploaded mono sample loops with tempo control, timestretch, position jumps, and browser-based audio loading.
Quickstart
Get UF2 + instructions + sample manager at https://infinitedigits.co/stretchcore/
Demo
22 minutes of pure stretchcore: https://www.youtube.com/watch?v=w-iyoTLxIP8
Audio Loading
Audio is loaded from the web app in web/ over Web Serial (public instance at infinitedigits.co/stretchcore/). The firmware only needs to be flashed once with loader support; after that, sample banks can be replaced from the browser without reflashing firmware.
Samples are stored in flash as 48 kHz mono signed 8-bit PCM. The loader can read the device bank back, detect device flash capacity, show transfer progress with ETA, preview samples, crop waveforms, and upload banks with up to 64 samples.
Controls
| Control | Function |
|---|---|
| Main knob | Timestretch amount |
| X knob | Tempo when not externally clocked |
| Y knob | Position knob for jumps; sample selector when using Toggle Up |
| Toggle Down | Jump playback to the Y knob position; fire Pulse Out 1 |
| Toggle Up | Select sample from the Y knob position; fire Pulse Out 2 |
| CV In 1 | Adds bipolar modulation to Main knob timestretch when plugged in |
| CV In 2 | Bipolar offset for Pulse In 2 jumps |
| Pulse In 1 | External clock / BPM input |
| Pulse In 2 | Jump trigger: jumps to Y knob position plus CV In 2, or Y knob position if CV In 2 is unplugged |
| CV Out 1 | Smooth random slow bipolar LFO |
| CV Out 2 | Smooth random slow bipolar LFO |
| Pulse Out 1 | 20 ms trigger from Toggle Down |
| Pulse Out 2 | 20 ms trigger from Toggle Up |
Build
make build
make web-build
The firmware artifact is build/stretchcore.uf2.
Acknowledgements
Thanks for Tom Whitwell for this incredible tool which I find myself constantly referring to as a design of pure genius. Thanks to Chris Johnson for paving the way for the framework and huge thanks to Dune for continually pushing the boundaries and making incredibly inspirational music from such a small device. Also for letting me steal the 15_MLRws Sample Manager code!