Blackbird
A scriptable, live-codable, USB-serial-to-CV device implementing monome crow's protocol
Blackbird is the answer to the question “If the Workshop Computer is a codeable computer and it has inputs and outputs capable of CV… could it pretend to be a monome crow?” Which was a particularly interesting question at the time because there was no live coding environment for the Workshop Computer yet, and because the original crow was going out of print- which was announced around October of 2025.
I had learned from Zack (@infinitedigits) that running a whole lua environment on an rp2040 was possible. He had done this for his miditocv project, and that planted the seed that it might be possible- but boy was it hard to optimize.
My goal was to get all of the original bowery scripts running on it and I was able to get maybe three quarters of the way there before getting stuck on specific things. Thankfully most of the failures were interesting in themselves (for example lorenz.lua runs but extreeeeeeemely slowwwwwly in a way that I found interesting). And thankfully Ben Regnier (aka Q*Ben) from the Workshop discord got engaged to help me test and tweak certain bowery scripts so that they were compatible in a collection of scripts that ultimately became the “bbbowery” with the additions of my turing script and Chris Johnson’s script that plays McCartney’s Blackbird when connected to oscillators etc.
The largest challenge here by far: original crow runs on an STM32F* with its own FPU and floating point math throughout, and the Workshop Computer runs on the rp2040 with no FPU. Any Float/Double operations are outrageously slow so there was a huge amount of adapting to fixed point arithmetic to be done here.