The Saitek X52 Midi Joystick Project.


    Jul 25 2006 | 2:51 pm
    Hello, I have kind of an interesting project and I wanted to know if max was the right place to start with it, or if not, what direction I should head in.
    I have a Saitek X52 joystickthrottle combination, which is really, really cool. Everything about it, from the pageability to the numerous pots, hat switches, and the overall build of the unit screams to me that I should find a way to convert these babies to send midi data for effects control in ableton live.
    Here's a pic and technical info on the joysticks:
    Now, a few joystick to midi programs exist, but none of them are even close to supporting what the x52 can offer in terms of paging, number of axes and programmability. I've tried to get in touch with some of the writers of these programs, but no luck. People have suggested that perhaps MAX is the answer.
    I do not program myself, and would pretty much have to hire or badger one of my friends into setting this up for me. Before I buy the program, is this definitely something max can do, or am I barking up the wrong tree? The joystick connects via USB, so to my limited understanding, it's just a matter of using something like midi ox (which I also don't understand) to capture the signals, translate them into midi code defining CC ranges etc, and send them via a virtual midi port to ableton. (I think!) Is there more to it than this?
    Thanks in advance for any thoughts on the matter.

    • Jul 25 2006 | 3:00 pm
      maybe im missing something, but i would guess you should be able to get your USB controller to play nice with max via the [hi] object. from there you could parse the control data and translate it to midi in Max then pass it out of Max via the midi out family of objects. ableton could then see these midi outs as available ports...
    • Jul 25 2006 | 3:13 pm
      It occured to me to use the search function after I posted this (d'oh) and it seems like a lot of people already use these controllers in MAX.
    • Jul 25 2006 | 3:15 pm
      The X52 is a HID-compliant device, and works fine with Max/MSP; it just takes a bit of scaling since the different controls (of which there are many) generate different ranges. Since the little tri- coloured-LED rotator thing also generates values, it can be used as a shift/select for the other controls.
      Add some Java, season with JavaScript, and you get something like this:
      nick rothwell -- composition, systems, performance -- http:// www.cassiel.com
    • Jul 25 2006 | 4:36 pm
      So basically, max is the way to go, but I will need to hire a js programmer to make it happen?
    • Jul 25 2006 | 4:52 pm
      you could totally do this sorta stuff with just max objects...
      its just easier with js or java (assuming you are the kind of person who can deal with text programming)
      > So basically, max is the way to go, but I will need to hire a js > programmer to make it happen?
    • Jul 25 2006 | 5:39 pm
      I downloaded the demo to check it out, and am completely baffled :( currently slogging through the manuals
    • Jul 25 2006 | 7:42 pm
      Don't feel badly -- I've been stop/starting on Max for over eight years, and I'm still baffled. But I've done some satisfying things with using joysticks (and flight-sim pedals) to front-end my performance patch. So there's solid hope (no, I'll even call it a guarantee) that you'll get exactly what you want using Max, and it won't take long.
      --raf (...who's about to take another look at the Saitek X52)
      Horatio Brunswick wrote:
      > I downloaded the demo to check it out, and am completely baffled :( currently slogging through the manuals >
    • Jul 25 2006 | 8:19 pm
      On 25 Jul 2006, at 18:36, Horatio Brunswick wrote:
      > So basically, max is the way to go, but I will need to hire a js > programmer to make it happen?
      Depends what you're after, and whether you want something complex and algorithmic (say, involving some kind of latching state machine), and/ or whether you want a graphical user interface.
      I wanted an algorithmic, and graphical, solution which could be configured for using an X52 in several ways (and which could also be configured for other devices - I have a P880 and a Logitech wireless as well). I coded the first version in JavaScript but found the performance to be unacceptable, so I re-coded the calculation engine in Java.
      nick rothwell -- composition, systems, performance -- http:// www.cassiel.com
    • Jul 25 2006 | 8:32 pm
      there's a joystick external on XP. It's got support for the analog joystick axis of say like a PS2 type controller and also for force feedback.... makes a damn fine drum trigger I must say.
    • Jul 25 2006 | 10:08 pm
      Quote: nick rothwell / cassiel wrote on Tue, 25 July 2006 14:19 ---------------------------------------------------- > > On 25 Jul 2006, at 18:36, Horatio Brunswick wrote: > > > So basically, max is the way to go, but I will need to hire a js > > programmer to make it happen? > > Depends what you're after, and whether you want something complex and > algorithmic (say, involving some kind of latching state machine), and/ > or whether you want a graphical user interface. > > I wanted an algorithmic, and graphical, solution which could be > configured for using an X52 in several ways (and which could also be > configured for other devices - I have a P880 and a Logitech wireless > as well). I coded the first version in JavaScript but found the > performance to be unacceptable, so I re-coded the calculation engine > in Java. > > > nick rothwell -- composition, systems, performance -- http:// > www.cassiel.com > > > > ----------------------------------------------------
      Do you plan to release your work to the public ever? I've been screwing with max all day and have basically come to the conclusion that it's beyond my grasp.
    • Jul 26 2006 | 12:13 am
      On 26.07.2006, at 00:08, Horatio Brunswick wrote:
      > I've been screwing with max all day and have basically come to the > conclusion that it's beyond my grasp.
      here's something simpler if just want to control effects in Live: http://www.steim.org/steim/junxion_v2.html
      I've never used it myself, but just ask STEIM for details
      good luck, Sukandar
    • Jul 26 2006 | 1:37 am
      : ( junxion is exactly what I want but it's mac only : (
    • Jul 26 2006 | 8:46 am
      On 26 Jul 2006, at 00:08, Horatio Brunswick wrote:
      > Do you plan to release your work to the public ever?
      Sure, time and effort permitting - it'll obviously need packaging and documenting properly. (I'm slowly trickling out bits of my Java and JavaScript codebase at http://www.loadbang.net .)
      In the meantime, doing basic stuff with a joystick via the [hi] object is pretty simple in plain old Max.
      -- N.
      nick rothwell -- composition, systems, performance -- http:// www.cassiel.com