2 launchpads outside Ableton

jazzisfaction's icon

Hey,
I posted this at another place and didn't get answer yet.
Before i'll buy me a second launchpad, I wanted to ask the following:
is it possible to use 2 launchpads simultanously inside Max/MSP - so NOT in m4L ?
i only work with x / y / colour values......so i should get different x and y values from the 2 different launchpads...that would be no problem (just adding 64 to the information of one of the launchpads).
but how does/can max recognize from which of the two launchpads it's actually getting the x and y information? will i get a 'laucnpad 1, launchpad 2' information via midiinfo?
thanx so much
cheers
Peer

jazzisfaction's icon

nobody has any experience with that?
that's a pity....

Timo Rozendal's icon

I guess the launchpads show up as different midi ports, so you should be able to handle them separate. However, I hope they do the naming right: It might be the case that both launchpad's midiports have the same name and that you simply have to try each time which one is which.

jazzisfaction's icon

thanx Timo...that's exactly the problem of which I heard: that you have to try each time which one is which....it's a pity that there is no solution for that.
have a good day :-)

Timo Rozendal's icon

there might be a solution for this problem, but it's a bit more work
It might be possible in java or c to which usb port they are connected, or perhaps they have a unique id internally. You have to try that out though

Timo Rozendal's icon

wait, i just found out it's probably simpler than that, check the message
;#SM inportinfo (and the outportinfo equivalent)

It says this also includes a unique id for that port, let's hope that will help you to distinguish between the launchpads. First check it!

jazzisfaction's icon

hey timo,
thanx so much. could u send a short patcher please?
i'm not familiar with messages like that and i don't know where to send them.
thanx again. you're of great help.

all the best
Peer

Timo Rozendal's icon
Max Patch
Copy patch and select New From Clipboard in Max.

this should get you started:

jazzisfaction's icon

damn...u r a genius...from where did u get this stuff?
i mean everything is very clear but how did u get this message line?
what does #SM do please? and the rest of the line?
I think it will work perfectly. I'll order my second Launchpad tomorrow and I'll keep in touch with u.
A last thing: please explain me the message. It's important for me not to just copy -> paste things but to understand what's happening.
Thanx a million times.
Cheers
P

Timo Rozendal's icon

where I got it from?

max help --> messages to max
this is the syntax:
-the port's name (symbol)
-the port's driver name (symbol)
-the port's unique ID (int)
-the port's abbreviation (int)
-the port's channel offset (int)
-whether the port is enabled or disabled (one if enabled, zero if disabled)
-whether the port was created dynamically (one if yes, zero if no)

before you order it is important to know whether this id is the same for every type of device or even different for every device of the same type (you want the latter), as a starter this is the id of the midi in port of my own launchpad:
-16760
(this id remains the same for every usb port I plug it in.)

Timo Rozendal's icon

Hmm... I don't think my method will work.

- first off: IF your 2 launchpads appear with the same name my method will only get the id of 1 of them
- I am still not sure what this id means and if it is 'device type' specific or 'device' specific, or not even that...
- I tried with a couple of double devices that were lying around:
* m-audio fw 410: confusion about the midi ports, they showed up in max and live and appeared again, ending with only 1 in and 1 out (should be 2 in, 2 out)
* icon i-control: don't show up as 2 ports in max, but they do in live
- Plus: I checked in java with the MMJ.jar and there the same problems arise as in max (not showing of ports) and I the .getId() call resulted in "?"

so... if 2 launchpads show up as different midiports in max (which is needed anyway) AND they have the same name the puzzle remains how to distinguish them (apart from your own init routine of course where you e.g. first have to tap the left and then the right launchpad). what you could still do then is to try in c with ext_sysmidi.h if you can get a better 'id'.

jazzisfaction's icon

Hey Timo,
the strange thing is that I get the ID port information '16615' for my Launchpad.
But as u said: why is that? because of the midi ports of my computer? because every launchpad has another ID?.
i have to find sb with a LP in the neighbourhood. No way out.....

by the way: i sold my m-audio fw 410 long ago cause I always had problems with recognizing the device or all of a sudden it disappeared in the middle of a logic session. i'm so happy that i changed to motu !

let's see how this story ends ;-)

jazzisfaction's icon

and here the answer from the novation support team:

Working with 2 different Launchpads should work fine - they are however listed in order of plugging in. Saving them as dedicated numbered devices is not possible, however the functions will obviously translate to either Launchpad perfectly.

Basvlk's icon

I'm playing with my 2 Launchpads now and tried TImo's suggested ID identification - it seems that the ID is for the USB port they are connected to. Whichever launchpad is connected to the top USB port on my macbook pro is '-20517' and whichever launchpad is connected to the bottom USB port is '-30588'

Internally they both have the same name, _unless_ you give them a different name in the Audio Midi Setup -> Midi Window. That's the only way I've found the internal system to be able to have different names for the two.

(btw, after a couple of times unplugging and plugging the devices the midi window just stopped seeing them at all)

jazzisfaction's icon

hey,
thanx for your post. it doesn't sound so encouraging though.
i just bought a second launchpad on eBay and will try it, too.
i think the LP is a great alternative to the monome but it's also very restricted (in many ways) and i'm not a big fan of midi messages anymore.
anyway, take care.

Basvlk's icon

I think there's actually no problem using 2 or more launchpads once you have them identified properly. You're right: that part is not very encouraging, but that's as far as I can see the only problem. I think it just takes developing a step by step procedure for starting up - I'll let you know what I find.

Cheers!

Basvlk's icon

Ok so I've played around a bit more and it's hard to see what determines how a launchpad shows up on OSX.
I've had 2 launchpads plugged in, and renamed them '1' and '2' in the 'midi studio' window (Audio Midi Setup -> MIDI Window). It's hard to predict which one will represent which launchpad. It seems that the first launchpad plugged in is always '1' but if you start moving it around on different ports, especially with a hub, it sometimes shows up as '2'. WIth 2 launchpads connected it's even harder to predict especially if you start moving them around on ports.

My guess is that if you always plug in one first on the same port, and then the other on another port (but always the same) they will always end up with the same internal name. But not sure what would happen if you reboot - and I don't particularly want to unplug both and plug in again after a reboot. So I think I'll develop a little patcher that creates virtual ports and helps you assign each to the right port...

jazzisfaction's icon

yeah, that's what novation support wrote to me (see above).
if you ever have that patcher please let me know ;-)
i'm still fighting a bit with flashing one single button. i know there is this patcher on the forum from phil, but i want to find it out myself.
BTW: i don't like that i have to use automap to use different 'levels' on the launchpad.
automap 3.7. is really weak and 4.0 is not there yet although they announced it long ago (great that the manual is already online ;-))
i have the strange feeling that i will replace the launchpad very fast if there will be something better on the market....
thanx for all your efforts and messages....

Basvlk's icon

automap 4 has been up on the website since a few days... it's a little different, not sure yet whether it's better. I find the OSX Midi Server crashes with too much plugging in and plugging out, a bit of a concern..

The different layers of automap you should be able to program in Live. If you're brave.

jazzisfaction's icon

oh cool...but as u said: i don't think automap 4 is much of an improvement.
Live is not my cup of tea. i try to avoid it. not a lot which i like of this programme except that's it is a fast sample player in live situations...

Basvlk's icon

duh.. that's what you get when you combine a dayjob with late night patching: I meant you can build the complexity in MAX (not in Live). Still, if you're brave.

Have a look at the patch below. I'm still a noob so it doesn't look too pretty / could probably be more efficient, but.. it works! (yay!)

Here's what it does:
1) removes the default Max virtual midi ports
2) creates new virtual midiports: ToLPL and FromLPL (referring to the LEFT Launchpad), and the same for the right (LPR)
3)displays a big green 'L' on the one launchpad and a big red 'R' on the other

If they're they wrong way round, just click 'swap' and the connections are swapped and the big L and R are too so you can check if you got it right. From then on, the left Launchpad comes in on 'FromLPL' and the right one on 'FromLPR'

Note: it will ONLY work if you have named the two Launchpads '1' and '2' in the OSX MIdi Studio utility. Eitherway, you can edit the patch to suit your need (you may want to have TOP and BOTTOM other than left and right!

Max Patch
Copy patch and select New From Clipboard in Max.

Cheers!

jazzisfaction's icon

Hey,
hmmm...i just wanted to test it. am i still sleeping or too stupid but i only get 3 buttons....is that the patcher?
i'm sorry.
and thanx for helping...i'm curious :-)))

Basvlk's icon

oh duh- still getting used to the program. I must have copied it from presentation mode.

Max Patch
Copy patch and select New From Clipboard in Max.

When you paste the below, swith on 'presentation mode' again, it should be a tiny interface.

jazzisfaction's icon

:-)
no prob...yes, it was a presentation mode copy.
now it works perfectly...thanx so much. very cool !!!! good work !

Basvlk's icon

Thanks! glad it's useful.
let me know once you start using it in your setup if it works

jazzisfaction's icon

it works...but honestly (don't be angry) i don't need it ;-)
i have to use automap (btw a very week programme) and there every launchpad gets another midi channel anyway and i can find out in 2 seconds which one is which :-)))
but really nice work of u...

Basvlk's icon

no worries, I need it for myself: I'm trying to get rid of automap in my setup and do everything in MAX. Cheers!

jazzisfaction's icon

hmmm...that would be fantastic to ged rid of automap. are u also working with different layers on the LP without automap? and different midichannels?
my big problem just at this moment is also that i use the abstraction which phil put on this forum to get the values of the LP. but he works with sends and receives and i can't use his object for different launchpads because they all get the same receive messages....it's maybe too confuse what i'm telling u here. just working the whole day to find a solution on this problem and can't get it......

Basvlk's icon

Hi sorry no - I'm only using them for clip launching in Live, I find using one controller to do many things confuses my during gigs, my lauchpads only do clips, I use a Zero SL MKii for other remote control functions.

I'm too far removed from what you're doing to comment, but if the issue is that you can't tell which launchpad is which when you select a midi in or out port, you could still use my patch - it gives you two new names to work with internally (LPL and LPR - if your launchpads aren't left and right, just rename them in my patch for whatever makes sense to you) you won't have any confusion after that.

good luck!

jazzisfaction's icon

i'm sorry too. i don't use Live anymore.
u know, even if i don't use your patcher, you helped me A LOT.
this one easy little sentence was great (sometimes i forget the easy things ;-))

"Note: it will ONLY work if you have named the two Launchpads '1' and '2' in the OSX MIdi Studio utility"

thanx for that.
talk to u soon.