Stanton SCS-3D Standalone Driver

This is a standalone driver I wrote (patched? whats the verb for Max/Msp?) for Stanton’s SCS-3D DJ interface, notoriously called ‘DaScratch.’ It’s designed to expand the number of faders you can control with it, at the expense of the ‘scratching’ surface.

I picked up the SCS-3D because I wanted something simple and sturdy with faders that I could play around with, and throw in a bag with a laptop. The actual hardware is great for that – and you can pick these things up on ebay for fifty bucks or so.

The software, however, is horrible and doesn’t allow for any customization. It’s programmed just so that you can use it for controlling a few specific pieces of DJ software such as Traktor or Serato. There is a general MIDI setting, but it doesn’t give you much in the way of DAW control over software like Ableton Live.

The really nice thing about the hardware, though, is just how simple communication is with the host computer. When plugged in, the device opens a “SCS.3d” MIDI Port to send and receive messages on. The touch faders (there are four of them – the center pad has one in the middle and one all the way around the edge), send out MIDI CC data based on their position when they are touched. The buttons (there are 14 of them), send out note on/off data when they are touched (the faders also do this).

All the LED’s on the device respond to note data sent to the port, with their function depending on the velocity data (typically 0 or 1) of the note sent. Writing a driver meant simply mapping out all the LEDs and then programming to send the appropriate messages over MIDI.

The original SCS-3D software lets you switch between uses such as ‘FX’ and ‘EQ’ with the top 6 buttons and uses the 4 corner buttons as triggers. My software imagines the 4 corner buttons as switching between channels, each with their own FX, EQ, etc, so there are 4 times as many faders that can be assigned.

Here’s what I generally use it for:

FX: channel-specific effects.

EQ: sets a filter for each channel with resonance, low pass, high pass.

LOOP: 3 buttons for looping the current clip.

TRIG: sets which clip the bottom 4 buttons will trigger.

VINYL: sets values for 4 effects on the master channel.

DECK: sends to three effects buses.

Also:

Holding more than one of the corner buttons and touching a fader changes the value for all channels.

This is basically my first maxpatcher ever, so it’s a little rough around the edges, but its great as proof that it is possible to write custom software with Max for what is a nifty little piece of kit!

Now that I have some Max-for-Live experience, I’d love to write some plugins for this controller, too. Originally I though it would be a great device to write some sequencing software for. There are 16 blue LEDs around the edge, which would be great for a 16-step sequencer, and you could drop into various steps in the sequence with the touch controls to chop it up!