Provisional name: mei|dia
Warning
This is work in progress and currently very under-documented! Ping me if you want to know more.
This is a long-time side project of mine, which has been going on since late 2022.
Immediate Goals
- Setting up a platform/OS for the development of Eurorack sequencer applications
- Creating a user-friendly MIDI-to-CV program
- Everything should be Open Source/Hardware
Later Goals
- Creating an SDK for the development of user apps which can be loaded either from flash ROM or the SDcard
- Creating a user-friendly sequencer program
- Creating a VCV-rack/Cardinal compatible module which interfaces with the hardware via MIDI SysEx or USB HID
Software
midisans

midisans
is a MIDI-to-CV converter program which allows for different types of mapping between inputs and outputs: polyphonic voices, drum-like gate maps and pitch/modulation to CV, among others. The interface is purposefully retro and glitchy.
Hardware (alpha-1)
- Raspberry Pi Pico or pin-compatible RP2040 board (soon Pico 2 / RP2350 too, hopefully)
- Texas Instruments DAC8165 (4-channel)
- MCP23008 port expander (for gates and switches)
- SD card reader
- (+-)5V Output stage (TL07x opamps)
- 5V + 3.3V PSU for digital electronics
- User Inteface
- 2.8” TFT screen
- 1 x Encoder + Button (EC11E)
- 4 x Push Button (KS01Q01)
- 4 x CV + 4 x CV 3.5mm (mono) jacks
- 1 x TRS MIDI IN (stereo 3.5mm jack)
- 1 x Clock OUT
- 8x RGB LEDs (SK6812MINI)
Issues identified
- Missing GND connection in PIN 13 of the Pico - this can be fixed by scraping a a bit of the coating next to the pin and soldering it to the ground plane;
- COPI and CLK lines of OLED are swapped - and since the tracks are buried, this means I had to switch them on the OLED module (dirty!) - Note for next version: add surface pads to facilitate dirty fixes if needed;
- Encoder caps missing - adding 10nF capacitors to
GND
, for bothENC_CLK
andENC_DT
is needed. I also added pull-up resistors, but the firmware can use the pins in pull-up mode as a workaround; - SK6812MINI RGB LEDs:
- missing 100nF capacitors between
VDD
andVSS
- can be soldered on the original board; - lack of voltage level conversion - in theory, the
DIN
andVDD
signals should be max. 0.5V apart on the first LED (according to the datasheet). They seem to work nonetheless (not sure about long term), but in the next revision I am adding a proper level converter;
- missing 100nF capacitors between
- MIDI IN - wrong optocoupler - I was using a 6N138, which works with 5V. The RP2040’s GPIO pins are not 5V-tolerant (in theory). I severed the track between pin 8 of the optocoupler and R42, and then added a wire between the resistor and 3.3V (I soldered it to the MCP13008’s pin 18). In the next revision, I will be using the H11L1, which works with 3.3V.
- Names of debug headers missing - for a few of the headers;
- USB footprint - supporting holes too wide - in any case, I will swap this one with a USB-C, as I changed my mind about wanting to run it in host mode (software is non-trivial, and use cases not convincing);
- The encoder isn’t tall enough - I bought alternative ones on AliExpress, which are taller, but still require a little bit of padding underneath in order to have enough length to be bolted onto the panel;
- The buttons aren’t great (not super reliable, shaky) - I’m still considering what to do, but I will probably change them.
Software
- 100% Rust powered!
- Based on Embassy embedded
async/await
runtime - Will Open Source it as soon as I’ve stabilized it;
History
- Oct 2025
- Updated the page with what happened over the last 10 months;
- Have a working unit in my Eurorack case, and I’m writing software at the moment (midisans);
- Dec 2024
- Updated this page to better keep track of progress;
- Dialed down my (immediate) ambitions - for the last few months I spent some time trying to have “user space apps” which can be dynamically loaded, and working on RP2350 support. This is not something easy to do, and especially so with
async/await
, so it became a time sink. I’m putting the idea aside for now, and switched to providing firmware with a few built-in useful apps for now.