DSMI - DS Music Interface
The DS is a really great toy wth a lot of potential for music software. Through the touchscreen it can be transformed into a lot of different instruments. The problem is that it's processing power is relatively low, and complex synthesizers with lots of effects will force the poor 66Mz CPU to it's knees. On the other hand, the DS can serve as a sampler or a Game Boy synthesizer (since some of the Game Boy sound hardware is still built in), but is lacking the ability to integrate with sequencer software or hardware musical instruments.
What does DSMI do?
DSMI solves these problems by adding real MIDI and OSC compatibility to the DS. MIDI is the de-facto standard for interfacing of musical instruments and music software. Using musical control commands like "play the note C at octave 4" or "change my pitch up" MIDI instruments control hardware synthesizers and samplers, or music software that is running on a computer. It is even being abused to synchronise lightshows to the music at concerts or to control visualization software for VJs. DSMI adds MIDI capabilities to the DS in two ways:
- Via a wireless network connection, talking to music software
- Via standard MIDI cable, talking to music hardware
How does it work?
DSMI is a library for use in homebrew DS music software. The application sends MIDI messages through the DSMI API, and DSMI handles the transport to the other side. Likewise, DSMI receives MIDI messages from the outside and forwards them to the application.
The DS sends MIDI messages via WiFi. The messages are received by a server running on a computer and forwarded to local MIDI-capable applications. For the computer it thus looks just like a hardware MIDI instrument is connected. The DSMI server is available for Windows, MacOS and Linux.