It was detected and worked automatically in Ubuntu 8.04. (I imagine any “class compliant” USB MIDI device would work.)
It’s light but feels solid. It’s USB-powered so there’s just one cable. $100 online. I recommend it.
About the Controls
The 4 vertical sliders have a bit of resistance to them, while the horizontal (crossfader) slider is much more flickable.
The inner 6 knobs have grooved positions at 50%, the outer 6 knobs and all five sliders move freely end-to-end.
The 10 buttons have very satisfying clicks, there’s no mistaking whether you pushed one or not.
Despite the overzealous markings, all controls are actually generic and can be assigned to any action you like.
Two small complaints:
- the sliders and knobs have some dead-space at their extremes of movement– that is, they report 0% or 100% slightly before they physically hit their limit, and
- the XSP is invisible in the dark, except for the power LED in the center
Coding for MIDI devices
When researching the available technologies, I didn’t find it obvious which API to use; Linux doesn’t seem to have any blessed CoreAudio equivalent yet.
I ended up with the PortMIDI library, which is working great: it lets you enumerate MIDI input (or output) devices, open the ones you are interested in (I just open all inputs, which may or may not be ideal behavior), and poll them for waiting MIDI messages.
(If anyone is stuck coding for MIDI without MIDI hardware available, as I was until today, I recommend the QMidiControl app to see what sliders/knobs send, and Rosegarden for notes on/off.)