
MM00
adampisula/modmidi
ModMIDI is a modular MIDI hardware and software project. This repository brings the base board, pad shield, extension board, and shared Arduino library together in one monorepo.

ModMIDI is a modular MIDI hardware and software project. This repository brings the base board, pad shield, extension board, and shared Arduino library together in one monorepo.
MM01 is an open-source printed circuit board by adampisula, from the adampisula/modmidi repository on GitHub, published under the MIT licence. It is a 2-layer board with 93 parts on 111 nets.
It is built around the 74HC14, 74HC165D and WS2813C, with the AO3400A among its other parts. Its parts include 37 resistors, 16 capacitors, 16 diodes, 16 switches and 5 ICs.
ModMIDI is a modular MIDI hardware and software project. This repository brings the base board, pad shield, extension board, and shared Arduino library together in one monorepo.
Current state: the KiCad source projects and PlatformIO configuration are present, but there is no board firmware or generated hardware PDF yet. Firmware and PDFs will be added/generated later; the current projects are not yet ready for a firmware build or hardware release.
| Path | Contents |
|---|---|
boards/MM00/ | Base/controller board; KiCad source, PlatformIO configuration, and board instructions |
boards/MM01/ | 4×4 pad shield; KiCad source, local footprint/model assets, PlatformIO configuration, and board instructions |
boards/EX08/ | Passive 8-port extension board; KiCad source and board instructions, no firmware project |
modmidi-arduino/ | Shared Arduino library used by the board firmware |
The MIDIUSB fork is maintained as a separate repository and is not nested in this monorepo. PlatformIO obtains it through the library dependency declaration; users do not need to clone the sibling repository separately.
MM01's project includes its custom TL1105 footprint and the referenced STEP model using project-relative paths. A standard KiCad installation is still required for standard libraries and models. The included E-Switch asset did not come with license/provenance information; confirm its redistribution terms before publishing the repository publicly.
Open each KiCad project file:
The editable KiCad projects are the hardware source of truth. PDFs, Gerbers, and BOMs are generated manually and are not produced by a script in this repository.
No PDFs are included yet. Adam will generate and add them manually under each board's hardware/output/ directory. These links show the planned locations and will become available once the files are generated:
boards/MM00/hardware/output/MM00-schematic.pdf — pendingboards/MM01/hardware/output/MM01-schematic.pdf — pendingboards/EX08/hardware/output/EX08-schematic.pdf — pendingGerbers and BOMs may also be added manually under the same hardware/output/ directories. Intended output files are not ignored by the repository rules.
MM00 is the base board with the STM32F103C8 controller. MM01 is a shield driven by the MM00 controller; EX08 is passive and has no firmware. The per-board PlatformIO configurations select the STM32 Arduino target and link the local modmidi-arduino/ library. USB support flags are included for USBLibrarySTM32/MIDIUSB.
For example, the MM00 configuration is in boards/MM00/software/platformio.ini:
cd boards/MM00/software
pio runMM01 has a corresponding configuration under boards/MM01/software/. These commands cannot build firmware yet: neither software directory contains source files. Adam plans to add firmware later. No upload protocol is configured; confirm the actual programmer/bootloader and MM00's 16 MHz HSE clock/USB setup before attempting to flash. EX08 has no software/ directory.
The board projects reference the library locally with symlink://../../../modmidi-arduino. Do not install the repository root as a PlatformIO library URL; the library's library.json is inside the modmidi-arduino/ subdirectory. PlatformIO fetches the declared USB dependencies, including the adampisula/MIDIUSB branch 1.0.5 and levi--g/USBLibrarySTM32 ~1.0.1.
See the modmidi-arduino README for API details and current implementation notes.
First-party ModMIDI code, documentation, and hardware are provided under the MIT License; see LICENSE. Third-party dependencies and assets retain their own licenses and are not relicensed by the root MIT license. In particular, MIDIUSB is LGPL-2.1 and USBLibrarySTM32 is LGPL-3.0-or-later. Redistribution terms for the bundled E-Switch footprint/model still need confirmation before a public push.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 21 | 10k | Resistor_SMD:R_0603_1608Metric | R1, R2, R3, R11, R12, R15, R17, R19, R21, R23, R25, R27, R28, R29, R30, R35 +5 |
| 16 | 470n | Capacitor_SMD:C_0603_1608Metric | C1, C2, C3, C4, C5, C6, C7, C8, C9, C10, C11, C12, C13, C14, C15, C16 |
| 16 | 5.1k | Resistor_SMD:R_0603_1608Metric | R7, R8, R9, R10, R13, R14, R16, R18, R20, R22, R24, R26, R31, R32, R33, R34 |
| 16 | SW_Push | SW-Eswitch:TL1105 | SW1, SW2, SW3, SW4, SW5, SW6, SW7, SW8, SW9, SW10, SW11, SW12, SW13, SW14, SW15, SW16 |
| 16 | WS2813 | LED_SMD:LED_WS2812_PLCC6_5.0x5.0mm_P1.6mm | D1, D2, D3, D4, D5, D6, D7, D8, D9, D10, D11, D12, D13, D14, D15, D16 |
| 3 | 74HC14 | Package_DIP:DIP-14_W7.62mm_SMDSocket_SmallPads | U3, U4, U5 |
| 2 | 01x13 | Connector_PinSocket_2.54mm:PinSocket_1x13_P2.54mm_Vertical | J1, J2 |
| 2 | 74HC165 | Package_SO:SOIC-16_3.9x9.9mm_P1.27mm | U1, U2 |
| 1 | AO3400A | Package_TO_SOT_SMD:SOT-23 | Q1 |
93 parts, built around the 74HC14, 74HC165D, WS2813C and AO3400A. 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 adampisula/modmidi repository on GitHub, at the commit this page was made from: the board is boards/MM01/hardware/MM01.kicad_pcb and its schematic boards/EX08/hardware/EX08.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).

adampisula/modmidi
ModMIDI is a modular MIDI hardware and software project. This repository brings the base board, pad shield, extension board, and shared Arduino library together in one monorepo.

adampisula/modmidi
ModMIDI is a modular MIDI hardware and software project. This repository brings the base board, pad shield, extension board, and shared Arduino library together in one monorepo.



gianluca-rainis/Z80DevBoard
An advanced development board for the Z80 microprocessor, powered by an RP2040.

KITTY-6502/hardware
the KITTY is a 65c02 homebrew kit microcomputer designed around text mode graphics and cartridge media. It is fully open source, and uses exclusively in-production parts.


GeraKuznetsov/M68K-MBC
A M68k Multi-Board Computer design. The design basics is as follows: 1) A backplane PCB contains the majority of the bus, such as the address and data lines. 2) Cards slot into the backplane.


dihermos/GaiaBeronia
Gaia Beronia is an inspired on Flipper Zero embeeded system. It uses a system based on Python running on Linux in a Raspberry Pi Zero 2W.