Using Max as a basic midi controller

    Nov 10 2010 | 8:43 pm
    Howdy folks,
    New here but have been using max msp for a while now, mainly at university where I study electronics and music.
    I'm developing a project wherein I use colour tracking and probably some other inputs with an arduino board to create synthesised and midi sounds.
    What I want to do is use max as a midi controller connected to another computer with a seperate DAW and VSTs on it. To simplify: instead of using a cheap midi keyboard into my laptop through usb, I want to use Max.
    Now this is a piece of cake if the two programs are on the same computer but the studio software I use is on a pc and the computer I use for max is a mac.
    Is there a simple way of doing this similar to interfacing between programs on the same computer or should I just get max for my pc?
    It seems far more popular to use unusual things as midi controllers going into max, but I'm struggling to find sources on using max as the controller.
    Regards, Matt

    • Nov 10 2010 | 8:57 pm
      There's a real simple solution if the computers are on the same network. You can send data from your mac and then set up a little receiver patch and run it with max runtime on the pc. Check out UDP objects like [udpsend] or the mxj TCP objects or even good old maxhole, sure there's other ways too!
    • Nov 10 2010 | 9:02 pm
      If you have a MIDI interface available on both machines, just hook up a MIDI cable between them, then use the midiout, noteout or ctlout objects to send data and the respective midi input objects to receive it on the other end.
      Alternatively you could send data over a network using udpsend and udpreceive. Use midiformat to encode your MIDI messages before sending them and then midiparse to decode them after receiving on the other side.
      Edit: Obviously you would have to run the receiver patch using Max runtime.
    • Nov 10 2010 | 9:06 pm
      [quote]should I just get max for my pc[/quote]
      No need! Just build the patch for the windows machine with standard Max objects, and you can run that patch on windows with the Max/Msp runtime for windows! (free download).
    • Nov 10 2010 | 10:36 pm
      Thanks for the great response. I will have a look at runtime for windows and try some of the UDP stuff. It was my desire to have max as a midi controller for any other machine (with a midi cable) without it having to run max but I think I will stick to just my lappy.
      Regards, Matt
    • Nov 10 2010 | 11:17 pm
      Here's what I will try.
      I will make a send and recieve patch both within max on the mac, just to see if it works. Then I will transfer the recieve patch to my lappy with the runtime. If my computer were part of the network it would be easy so I just have to hope I can get stuff out of the ports on the university macs without getting firewalled off.
      Alternatively as Charles mentioned. Is it actually possible to make the patch and transfer it entirely into runtime? negating using a mac completely?
    • Nov 10 2010 | 11:37 pm
      In the midi setup of the windows max runtime there's no "fromMaxMSP" output for my DAW to look for.
      Would this appear once I stick the midi reciever patch?
      I will try making some basic midi patches to see if I can get some midi into my computer from the runtime.
    • Nov 10 2010 | 11:44 pm
      If you want to be able to control any MIDI equipment via a MIDI cable then just use the midiout object.
      The max runtime can load any patch in a read-only way. You don't have to do anything special to the patch, just open it in the runtime program.
      If you're sending data over a network then you don't need the 'From Max/MSP' MIDI port. To answer your question though, these ports only appear when MaxMSP is running.
    • Nov 11 2010 | 12:04 am
      Thanks thats what I suspected. I am just testing runtime with a few test patches I made a while back.
      I have a basic midi patch that plays notes but it can only output to the built in microsoft wave table, rather than be used as a midi input. Perhaps midiyoke would work.
      Tomorrow when I go back into the studio I will try using the midiout object but I will need to find some midi interfaces first. Hope theres some lying around or that they are not too expensive.
      Thanks again.
    • Nov 13 2010 | 11:48 pm
      Ok here's my progress.
      I'm using the windows trial of max/msp/jitter. Will get the student one soon.
      Turns out that only OSX gets "from MaxMSP" as a midi out but this is easily solved in windows by using midi yoke. Plus it means I get a whole load more midi in and out channels than normal.
      This is easily linked up to cubase and now I can get my sweet synths out whilst using my top secret gadgetry that runs through max.
      I'm rather happy about this as now I can move on to more experimental areas.
      Only downside is that max doesn't recognise my built in webcam but thats probably because it maybe doesn't use quicktime. Not to worry I have a spare usb one back home I can use.
      Thanks again for all the support and I will try and upload a video of the project when it's done.