Hey everyone,
I’m currently working on a project called FC-MIDI (formerly USB-NES) and I’m looking to collaborate with someone in the community who has access to a USB MIDI keyboard (or similar physical MIDI controller) to help develop and test a real-time MIDI layer.
FC-MIDI is a hardware/firmware platform I’ve been developing since 2018, that allows direct, cycle-accurate access to NES/Famicom cartridge buses, using a modern USB interface and “blue pill“ STM32 microcontroller. Hand-written in ARM assembly, the firmware engine runs more like a deterministic state machine than traditional code, enabling precise control of mapper hardware at the bus level. I’ve also built a command-line interface tool that lets me interact with cartridges directly from a host system, via USB communications device class (CDC) abstract control model (ttyACM).
Using the oscicoscope at VHS over the last few months, I’ve been able to tweak and verify all the bus timings work @ 1.8 MHz, and fixed all the bugs in the firmware engine, so that whole thing just works now…
So far, I’ve successfully:
* Bit-banged and controlled sound registers on multiple cartridge-based audio chips (MMC5, VRC6, VRC7, FDS, etc.) using the command line interface tool
* Generated tones and verified RAM access (including protected save RAM and internal mapper RAM)
* Demonstrated stable, timing-accurate operation across different cartridges
The next step is to layer live MIDI input on top of this system, effectively turning these cartridge chips into modular, hardware-based synthesizer platforms.
Why?
* These are real synthesis chips (pulse, wavetable, FM) inside iconic after-market 8-bit cartridge video games that sold millions of units…
* They’re being driven directly at the bus level—no emulation, no game engine, no use of copywrited cartridge ROM code
* The system is scalable: multiple chips, multiple voices, multiple FC-MIDI cart setups for potential spatial audio setups
* The sound output domain is already analog line level audio- directly compatible with iPod speaker systems and guitar amplifiers.
I believe this kind of live, modular reuse of cartridge audio hardware for musical performance hasn’t really been explored in a serious way (except perhaps with MSX synth carts)…
I’ve sold about 70 USB-NES units internationally, and the retail hardware platform is stable. Now I’m pushing the FC-MIDI firmware into something more expressive and performance-oriented than just an instant .NES ROM file dumping tool, as it was previously.
If you have:
* A USB MIDI keyboard or controller
* Interest in experimental audio / embedded / retro hardware
* Willingness to help test and iterate on a MIDI control layer ( I have elementary experience with the USB-MIDI interface + commands)…
I’d love to connect.
This has the potential to become a pretty unique instrument—something that blends retro hardware, precise timing control, and modern MIDI workflows into a highly scalable, modular synth system. I think it could appeal to musicians looking for something fringe, retro, synthwave and spatial (physically vectored synth voices)…
Full nerd mode ON: one particularly exciting direction is focusing on the Konami VRC7 chip alone. It provides 6 simultaneous FM synthesis voices, which is already enough for full musical expression—chords, basslines, and leads—without needing multiple cartridges. In other words, even a single cartridge becomes a complete, playable hardware synth. Driving that directly from MIDI, in real time, with cycle-accurate control opens the door to playing with something that feels much closer to a classic 1980s FM keyboard, than just an old 8-bit Japanese role playing game cartridge.
Feel free to reach out if this sounds like your kind of project.
— Brad