
Dinoctopus v2
bjonnh/dinoctopus
A MIDI router and USB interface using a Raspberry PICO (RP2040)

A MIDI router and USB interface using a Raspberry PICO (RP2040)
Minimidi v1 panellized 4x is an open-source printed circuit board by bjonnh, from the bjonnh/dinoctopus repository on GitHub, published under the MIT licence. It is a 2-layer board of 60 × 60 mm with 88 parts on 19 nets, routed with 512 tracks and 52 vias.
It is built around the H11L1, SJ-3524-SMT-TR and 1N4148WS. Its parts include 24 resistors, 16 connectors, 4 ICs and 4 diodes. It belongs with the audio and music and interfaces and adapters boards and the RP2040 boards of this library.
This is a RP2040 based USB-Midi interface that also allows for Midi merging and other MIDI tools (coming, I'm porting them from an Arduino Mega).
It is currently still highly experimental (but works well for me) and comes with no support.
The noticeable things here is that:
That's 22 duplex MIDI interfaces (6 physical) on a $4 board ($1 microcontroller if you like soldering small things).
I've not stressed tested it yet, but it handles normal playing with multiple controllers so far.
It works out of the box on Linux with no driver installation. I do not have a Windows or MacOS machine to test on them.
I'm using Jetbrains Clion and PlatformIO to code and upload it to my board using a picoprobe programmer.
This should probably get you started:
pio project init
pio run -e pico -t uploadMost of the configuration you care about is in include/config.hpp
It used to have a UI, but I switched to a pure SysEX approach, that may have a web UI to set it or just a tiny python program.
I made a tiny Python tool to test the SYSEX commands that could help you configure it:
virtualenv venv
source venv/bin/activate
pip install -r requirements.txt
python3 test_sysex.pyCareful this will erase your matrix and set it as a diagonal (so the physical ports are replicated to their matching number).
DiyElectroMusic - About the idea of using PIOs for MIDI
Ha Thach - For TinyUSB (I had to extract some code from there to get virtual cable workings)
| Qty | Value | Footprint | References |
|---|---|---|---|
| 8 | 2.2K | Resistor_SMD:R_0805_2012Metric | R3, R3, R3, R3, R6, R6, R6, R6 |
| 8 | Conn_01x02_Pin | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | J1, J1, J1, J1, J2, J2, J2, J2 |
| 8 | LED | LED_SMD:LED_0805_2012Metric | DR1, DR1, DR1, DR1, DT1, DT1, DT1, DT1 |
| 8 | SJ-3524-SMT | MIDI_projects:CUI_SJ-3524-SMT | J1-I1, J1-I1, J1-I1, J1-I1, J11-O1, J11-O1, J11-O1, J11-O1 |
| 8 | Type A/B | Jumper:SolderJumper-3_P1.3mm_Open_RoundedPad1.0x1.5mm_NumberLabels | JP1, JP1, JP1, JP1, JP3, JP3, JP3, JP3 |
| 4 | 10 | Resistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolder | R2, R2, R2, R2 |
| 4 | 1N4148WS | Diode_SMD:D_SOD-323 | D1, D1, D1, D1 |
| 4 | 220 | Resistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolder | R4, R4, R4, R4 |
| 4 | 33 | Resistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolder | R1, R1, R1, R1 |
| 4 | 470 | Resistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolder | R5, R5, R5, R5 |
| 4 | H11L1 | Package_DIP:SMDIP-6_W9.53mm | U1, U1, U1, U1 |
| 4 | Type A connect 1 and 2 | Jumper:SolderJumper-3_P1.3mm_Open_RoundedPad1.0x1.5mm_NumberLabels | JP4, JP4, JP4, JP4 |
| 4 | Type B Connect 2 and 3 | Jumper:SolderJumper-3_P1.3mm_Open_RoundedPad1.0x1.5mm_NumberLabels | JP2, JP2, JP2, JP2 |
The 72 most common of 88 parts.

bjonnh/dinoctopus
A MIDI router and USB interface using a Raspberry PICO (RP2040)

bjonnh/dinoctopus
A MIDI router and USB interface using a Raspberry PICO (RP2040)

bjonnh/dinoctopus
A MIDI router and USB interface using a Raspberry PICO (RP2040)

bjonnh/dinoctopus
A MIDI router and USB interface using a Raspberry PICO (RP2040)

bjonnh/dinoctopus
A MIDI router and USB interface using a Raspberry PICO (RP2040)

bjonnh/dinoctopus
A MIDI router and USB interface using a Raspberry PICO (RP2040)

xiphonics/picoTracker-pcb
Buy the official kit at xiphonics store # Trademark Notice




MarkWestbroek/MusicBrain
A central brain running on teensy or a lighter MCU to process any control signals (MIDI, CV, our own) into the same but adding logic, ADSRs, DCOs, CV matrices etc. to it

Xii-Labs/Xii-Boy-Ultra
The world's first wire-free Wii portable, now in the palm of your hands. Better than ever, optimized to delight, built for fun. The next generation of Wii portables starts now.

martinroger/ipodesp32
An iPod emulator for 2006-2013 BMW Mini Coopers that need Bluetooth
It measures 60 × 60 mm and has 2 copper layers, 1.6 mm thick.
88 parts, built around the H11L1, SJ-3524-SMT-TR and 1N4148WS. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the bjonnh/dinoctopus repository on GitHub, at the commit this page was made from: the board is hardware/electronics/minimidi/minimidi_v1/minimidi_v1_panellized_4x.kicad_pcb and its schematic hardware/electronics/main_board/main_board.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).