Skip to content

madskjeldgaard/mico

Repository files navigation

Mico - A tiny, cheap Raspberry Pi Pico midi controller

mic build Enclosure

Mico is a small, cheap (~10 euros total) and super precise 14 bit midi controller based on the Raspberry Pi Pico board.

Features

  • 4 x detentless (smooth) encoders
  • Velocity: Slow movements result in microscopic changes (1/16000 of the max range approximately), fast movements in large changes.
  • A variety of "clip modes" (cycle through them by pressing the button):
    • wrap (when the value goes above max, it wraps back to 0)
    • clamp (clip at min and max value)
  • 14 bit midi (as well as regular 7 bit midi)
  • Cheap as chips and open sourced

DEMO

There's a demo here.

BOM

Quantity Part Mouser Number
1 Raspberry Pi Pico rpi2040 474-DEV-17829
8 0.01uF capacitor, 0603 80-C0603C103M5R7411
16 10k resistors, 1%, 0603 603-RC0603FR-0710KL
4 15mm Detentless encoders 652-PEC11R-4015K-N24(knurled) / PEC11R-4015F-N0024(flat)
2 Female header (to sandwich between the boards) n/a
2 Male header (to sandwich between the boards) n/a

Uploading the firmware

Download the latest firmware from the release and locate the mico.uf2 file. While plugging your Pico into your computer, press and hold the "BOOTSEL" button. It will show up as a storage device on your computer. Copy mico.uf2 to this device. Done.

Building and uploading the firmware (optional)

If you want to build the code and mess around with it, it is recommended to use a second Pico flashed with the picoprobe firmware.

Using picoprobe

cd software
mkdir build
cd build 
cmake ..
make && openocd -f interface/picoprobe.cfg -f target/rp2040.cfg -c "program mico.elf verify reset exit"

Debug:

openocd -f interface/picoprobe.cfg -f target/rp2040.cfg -s tcl

Usage

SuperCollider

There is an easy to use interface for this controller here.

License

This work is shared under the Attribution-NonCommercial-ShareAlike 4.0 International license.

If you have questions about that, send me an email mail at madskjeldgaard.dk

Credits

These projects were a big help and inspiration in making this: