What we are building
General MIDI hardware from the early nineties still defines how thousands of DOS and PC-98/X68000 games are meant to sound. The Roland MT-32 and SC-55 are now expensive and ageing, and the most popular modern replacement, mt32-pi, is no longer maintained. RetroMIDI 55 is our take: a finished, plug-in-and-play module that sits on a desk, takes a real MIDI cable, and needs no computer to configure.
Inside, a Raspberry Pi Compute Module 5 runs open emulators: Munt for MT-32 / CM-32L compatibility and Nuked-SC55 for SC-55 compatibility. Both engines stay resident, one is active at a time, and the front-panel keys switch between them. Neither works without ROM images, which RetroMIDI 55 does not include: you supply them, dumped from hardware you own. Without ROMs, RetroMIDI 55 runs as a General MIDI module on an open SoundFont.
The case
The enclosure is a parametric CAD model that prints in six parts without supports and closes with M3 heat-set inserts. Its look is inspired by the early-90s MIDI sound modules that sat beside DOS PCs and the X68000: a black body with an orange stripe, an amber backlit display showing a 16-part level meter, and a row of eight keys for level, pan, reverb, chorus, mode, mute, part and instrument. The 3D view above is the v0.3 case; the Size vs MT-32 / SC-55 toggle places simple true-size outlines of those modules beside it for scale.
Every revision is checked in software before it is printed: an interference checker, a fit check that drops the real KiCad boards into the case with a clearance envelope for every plug, and printable full-size PCB mock-ups. The v0.4 case was printed on a Bambu X1C and adjusted from that fit check.
Electronics
| Function | Part |
|---|---|
| Module sockets | 2 × Amphenol 10164227-1004A1RLF (CM5 or CB1) |
| Audio DAC | TI PCM5102A over I²S |
| Headphone amp | TI TPA6132A2 |
| MIDI input | H11L1S opto-isolator, three DIN-5 jacks |
| Front controls | TI ADS1115 ADC, 74LVC595 shift register, Bourns PTV09A volume |
| Storage and host | Push-push microSD, Molex USB-A host, USB-C power |
The board history runs from a bare Allwinner T113-i motherboard (v0.2 to
v0.7, including a T113-S3 cost-down and an H616 variant), through
Orange Pi Zero 2W add-ons, to the current cm5-addon v0.5-0.3
carrier. Placement on the CM5 carrier is done and routing is in progress.
Front panel rev C is routed, DRC clean and quoted for manufacture.
Software
The emulation is ported behind a small platform layer (MIDI parser at 31,250 baud with running status and SysEx, a render loop, and audio, MIDI and storage interfaces). The same port runs as a bare-metal Cortex-A7 image under QEMU and as a desktop build on macOS and Linux, where Space Quest III and Akumajou Dracula (X68000) have already been played through it. Benchmarks against a 0.6 worst-block real-time budget show MT-32 at 0.36 and SC-55 at 0.47 on a 64-bit Allwinner H616 (Cortex-A53) with the T113's Cortex-A7 borderline, which is why the hardware moved up.
Status. The enclosure is at v0.4-dev and has been printed. No board has been fabricated yet; the next step is finishing routing on the CM5 carrier and ordering the front panel.
RetroMIDI 55 is an independent fabPlane project and is not affiliated with, endorsed by or sponsored by Roland Corporation. Roland, Sound Canvas, MT-32, SC-55, CM-32L and GS are trademarks of Roland Corporation, used here only to describe compatibility. RetroMIDI 55 includes no Roland firmware or ROM data; MT-32 and SC-55 compatibility requires ROM images dumped from hardware you own. Munt is used under the LGPL-2.1 and Nuked-SC55 under the GPL-2.0.