Quick Sign In:  

Forum: General Discussion

Topic: Running two Novation Launchpads?
Hi, is it possible to run two Launchpads (1 for each deck) with different mapping for each? Maybe there is a way of giving each launchpad a unique ID so VDJ knows to always assign a specific map to it?
Thanks!
 

Posted Thu 25 Apr 24 @ 2:45 pm
djdadPRO InfinityDevelopment ManagerMember since 2005
Yes, can connect as many as you want, and can assign different actions, and different Mappings.
 

Posted Thu 25 Apr 24 @ 2:50 pm
djdad wrote :
Yes, can connect as many as you want, and can assign different actions, and different Mappings.


Do I have to manually assign them each time or is there a way that VDJ will automatically know which is my Left deck Launchpad and which is my Right?
I'm curious because they are identical controllers, so I don't know if they have unique identifiers that VDJ can recognize. Maybe there is a way to assign a name to each of them?

Thanks
 

Posted Thu 25 Apr 24 @ 3:22 pm
djdadPRO InfinityDevelopment ManagerMember since 2005
Which Launchpad model ?
Most of them are pre-defined/mapped to control both Left/right Decks, so if you want to "split" them, you will need to do some remapping in both.
You will probably get 2 x devices in Controllers tab, so you need to select which one you want to map
 

Posted Thu 25 Apr 24 @ 3:24 pm
djdad wrote :
Which Launchpad model ?


Launchpad X.
I already have one but I want to add another (one for each deck). I'll have the transport buttons on the bottom and then multiple pad banks (Hot cues, Stems, Slicer, etc) all available on the fly for each deck without having to select them.

I already have created a custom map for one, but If I plug in a new one I don't want it to give it the same map. I want each to load their own specific custom map, and I don't know how to do that or if it is possible.

The whole setup will be permanently mounted into a case, so Left-deck Launchpad will always be left-deck launchpad. They won't be interchangeable. I just want to plug it all in and be ready to go
Thanks!
 

Posted Thu 25 Apr 24 @ 5:41 pm
djdad wrote :
Which Launchpad model ?
Most of them are pre-defined/mapped to control both Left/right Decks, so if you want to "split" them, you will need to do some remapping in both.
You will probably get 2 x devices in Controllers tab, so you need to select which one you want to map


I've got two launchpads now and have created maps for both (1 for Deck Left, and 1 for Deck Right) but I'm finding that they 'mirror' each other. If I select a map from one of the vertical 'scene' buttons BOTH launchpads switch to that map. I'm trying to get launchpads to function seperately so I can control one deck from each. I even copied the map file and gave them different names so each launchpad has it's own map file loaded. Same result. So maybe each launchpad is sending program change MIDI messages though VDJ to the other?

The Bootloader for the Launchpads lets you select a unique ID so that multiple launchpads can be used (at least in Ableton), but it doesn't look like VDJ is recognizing the ID's, or I'm missing something.

Any help figuring this out would be great. I can't be the first person to try doing this.
THanks!
 

Posted yesterday @ 11:38 pm
The IDs are being read by VDJ correctly.

If one looks at the mapping of each pad.. there is a variable $lpxpage, which sets which group of scripts are used for each bank..
( the uppper most bank, Bank 1, is when the variable, $lpxpage, is set to 0, for example)

So if one sets variable $lpxpage, to 0 and BOTH mappings have the same variable .. BOTH launchpad are executing the same group of scripts, and setting the LEDs the same.
Both lauchpad are on Bank 1, since $lpxpage is 0.
(and both lauchpads do the same thing)



2 ways around this:

1) is to replace "var" with "controllervar" for those vars that you want to be unique between lanchpads. ($lpxpage)
controllervar will create unique vars for each lanchpad, using the ID's from the OS.

the advantage is only 1 mapping to maintain.

Disadvantage: one does not know what the full var name is it cannot be called by other scripts.



2) create 2 different mappings, one for each lauchpad.
by changing var $lpxpage to $lpxpageB

reverse the pros and cons mentioned above for this method


I have 4 launchpads and opted for method 2 because I valued being able to have a multiple ways to select a launchpad bank,
(for example, load song that has some trigger, set lauchpads to this configuration and also like to each launchpad start with given bank active, done by setting the vars, during ONINIT)



Note: either method can be quickly accomplished with notepad++'s, find/replace operation.




Summary:
To have each lanchpad do different things (run different scripts) one needs to have different vars in each of the mappings, by one of the 2 methods.


 

Posted yesterday @ 12:29 am
IIDEEJAYII wrote :


Summary:
To have each lanchpad do different things (run different scripts) one needs to have different vars in each of the mappings, by one of the 2 methods.




Awesome! Thanks for the detailed explanation of what is going on and the methods to correct it! It really helps me out. I'm new to scripts and trying to decipher this as I go.
Also thanks for the Notepad++ suggestion. I downloaded it and it worked great.

Do you know if there is a way to permanently assign each map to it's own launchpad? I'm going to be mounting these in a case on either side of my mixer, so I'd like to always have $lpxpage for deck left and $lpxpageB for deck right.

Thanks again!
 

Posted 20 hours ago
user28480722 wrote :
Do you know if there is a way to permanently assign each map to it's own launchpad? I'm going to be mounting these in a case on either side of my mixer, so I'd like to always have $lpxpage for deck left and $lpxpageB for deck right.


Yes VDJ and OS will identify each lauchpad uniquely, a mapping can be set permanently to each.
Just have the lauchpads powered up before starting VDJ, for best results.

Also if you have a different starting Bank for each lauchpad, you can easily see that all is set correctly.

 

Posted 19 hours ago