note: i haven’t had much of a chance to work on this lately and my ds is a bit sad, i’m only really posting this in the hope someone will donate a pink ds with a properly working touchscreen (black is also fine)
dsmcu is a nintendo-ds based emulator of the MCU control surface protocol. it talks to your audio workstation over wifi via dsmi.
CLICK HERE TO DOWNLOAD (beta software, please exercise care, no warranties expressed or implied, and you’ll need the readme file to get it working)
requirements: a homebrew-capable ds (which can connect to your computer over wifi), compatible audio workstation software (like ‘reaper‘) and dsmi correctly set up on your computer. more details in the download link.
tested on: reaper; (primary testing platform, works great), samplitude V8 SE (works but no VU display).
does not work with pro tools or logic yet, but support is planned
the following subset of the mcu protocol is supported:
fader send, receive
track select, mute, arm and solo (w/ feedback)
more coming soon…
possible applications include: a wireless rec/arm remote or end-user monitor mix interface for tracking, touch-sensitive automation recorder during mixdown, multi-user mixing, ‘left-hand’ level control while tweaking VSTs…
lots more planned, more info soon.
some user interface elements have been taken from Reaper – BIG THANKS to White Tie and the Reaper posse for granting permission for use of this and helping out with design/layout. cheers again to tobw for the dsmi library. also uses palib and devkitpro/libnds, yay.
Note: in theory this stuff all works on Linux and OSX but you’re on your own, let me know if you get it working!
Maybe print this out before you start.
Obtain a Nintendo DS and a cartridge that will let you run homebrew (I use an R4DS – http://www.r4ds.com – works great). If you get stuck here, hit up Google.
You need a wireless router or something else that will let you connect your DS to the network your computer is on. Make sure that you can connect to the Nintendo WFC online services. If you get stuck here, hit up Google.
Download the dsmcu.nds file and get it onto your DS flash card (i.e. R4DS, whatever). You don’t need to patch this file or do anything weird with it, just put it on there.
Boot your DS and run the dsmcu.nds file. If it locks up with a faint “MIDI: ?” message on the bottom screen, that means it can’t connect to your network. If you can play DS Tetris on the internet and this still doesn’t work, contact me.
If dsmcu can connect to the internet, the screen will fill with faders. This is good.
Download and run Reaper. Go to options/preferences and select the Control Surfaces section (near the bottom). Click Add to add a new control surface.
Set: Control surface mode: Mackie Control Universal,
MIDI Input: IN FROM MIDI YOKE 2
MIDI Output: OUT TO MIDI YOKE 1,
Leave everything else at default settings.
When you click OK, everything should work.
If it’s doesn’t work, try setting the DSMI output to Microsoft GS Wavetable Synth and seeing if noise is made when you click on the transport buttons on dsmcu.
note that this doesn’t show the dsmi MIDI integration, only uses one of the default sample sets, doesn’t show any of the randomization functions, and there’s no theremin. i’ll post a better quality clip with some more fun stuff when i get a bit of spare time.
i’ve recently started using reaper as my main audio software. one of the best things about this thing is that it comes with a built-in plugin programming language. it’s pretty basic but you can do some cool stuff with it, and it’s way easier than futzing about with compilers and vst frameworks and garbage like that.
i’ve just released my first effect for this environment, called tonegate. it’s based on a number of other effects supplied with reaper – it’s really just a basic tone generator triggered off a gate, mainly to add sin, square or noise tones to kick or snare hits. tone type/pitch is configurable (the pitch can optionally raise or drop during tone decay), there’s a simple low pass filter and wet/dry mix.
this is a quick audio demo of the effect in action – first part is dry kick and snare tracks, second part has some (not-so) subtle sin and noise added to kick and snare, last one is way over the top. with enough of these you can do all sorts of weird nintendo-y sounding stuff:
bliptracker is my free (and open-source) nintendo ds-based drum machine, synth and sequencer, intended for live performance.
bliptracker is stable, runs happily on most nintendo ds flash cards (tested working on R4DS and supercard), and supports custom sounds (up to four sets of six samples per ‘sample-set’).
as with any homebrew please backup your flash card before installation or use.
unzip to flash card. make sure the bliptracker folder unzips to the root of the card, so you have a folder called \bliptracker\samples – bliptracker.nds can go anywhere, though.
DLDI PATCH the BLIPTRACKER.NDS file – go HERE and look for “dldi win32 right click”
default sounds are provided, but can be replace by 16 bit 11kHz-32kHz mono wave files named bd.wav, sn.wav, hh.wav, xx.wav, yy.wav, zz.wav. keep samples small for best performance.
operating instructions are on top screen. basic instructions: select and start are stop/start, use the bottom screen to fire beats manually and directional pad and buttons to control sequencer.
made with devkitpro.org and palib.info developer tools. Source code (GPL) – requires devkitpro r20, libdsmi, most recent palib + some minor tweaks to get it to compile against r20 (check the palib formums or mail me).
known issues: tempo doesn’t stay synced – need to disconnect audio from video refresh | tap tempo is a bit weird | max. 15 files in file dialogs | bad wav files can crash bliptracker
everything is broken! and new! but that’s okay. i’ll get around to cleaning up this layout properly at some point.
things from the old page are still kinda here: nds has the nintendo homebrew software ‘bliptracker’, there’s a flash game i helped with at oldgame.html, and some music and stuff up at mshopper and bsc, along with my new band which has a temporary home at myspace.