Renoise does not like my Launchpad MK2...

Can you assign samples to each of the pads and use it as a giant drumpad controller instead of as a clip launcher?

64 velocity sensitive pads each with their own samples assigned could be interesting…that is if they are sensitive enough to be played that way.

I know its primarily intended as a clip launcher…

I made a different implementation ofLaunchpadMK2:output_value()

https://github.com/amoetodi/Renoise-Duplex-Launchpad-MK2

You’d mapped your colorspace to {1,1,1} but there are {64,64,64} available colors. Most of these can only be called through sysex messages, there are colors that can be called via MIDI messages, but Novation just picked 128 colors and put them in a mostly random order to maintain easy compatibility with Live, but mapping RGB to their weird made up colorspace is too much of a pain to be worthwhile.

I was wondering if someone could help me with a less hackish way of implementing the thing I’ve kind of got working inLaunchpadMK2:output() with rainbow_mode using the Keyboard application. Right now, output_value() passes out the expected color, but when rainbow_mode is on and the user presses a button on the LargeGrid I replace it with a color of my own. I’ve mapped the circle of fifths to the colorwheel, so when chords are played in IsomorphicLayout on the Launchpad, consonant chords have similar colors and dissonant chords clash. The way I’ve coded this means the colors are laid out in IsomorphicLayout even when the grid isn’t. I was hoping someone could help me create a more generalised version of the code. I think it’d be quite easy if I could figure out how to get the pitch that is being sent to the sound engine after it has been quantized to the scale, rather that the pitch of the midi message received from the Launchpad. If not, if it were possible to work out through code which layout has been selected, I could write a color picker for each layout, but this seems a bit inelegant and would mean more effort each time a new layout is added. In any case, I prefer the IsomorphicLayout, so I’ve got most of the functionality I wanted now, but if it could be improved that’d be even better.

I’m just trying your script out, works really well so thank you very much. I am curious about the top half of pads when playing, what are the two coloured blocks representing?

@Meef Chaloin: Right, I forgot that Duplex actually had support through this. Relevant to this topic, I guess:

https://forum.renoise.com/t/is-there-anything-i-can-do-with-a-launchpad-mk2/48204

But question is, is it good enough? Because, then I’m going to include it in future versions. You tell me :smiley:

I’m just trying your script out, works really well so thank you very much. I am curious about the top half of pads when playing, what are the two coloured blocks representing?

Mmmm…are you running Duplex (Keyboard)?

https://github.com/renoise/xrnx/blob/master/Tools/com.renoise.Duplex.xrnx/Docs/Applications/Keyboard.md

There are_many_things you can do with a Launchpad. In this case, it’s a split keyboard layout (lower part and two smaller upper parts). Each one can be configured via options.

And you can always create your own layouts by modifying the configuration files

It seems good enough to me so far but I have only started playing with it and I don’t know what other things it could potentially do. It’s certainly better than nothing! I thought I encountered a couple of bugs in it but I will need to play with it a bit more to check those.

I’ll have a look at the options regarding the upper and lower keyboard layout, I couldn’t make sense of the upper part with the default settings.

A couple of things about general duplex:

With this script every time I changed from one script/mode to another the midi I/O was set to none, is that normal?

Also, Is it supposed to be used by using the mouse to change script/mode? It would be great if there was somehow a way to change it from the controller itself but perhaps this would use up too many buttons?

With this script every time I changed from one script/mode to another the midi I/O was set to none, is that normal?

The tool saves the I/O for each configuration. So you might have to adjust them - but just once, then you’re good to go.

Also, yes, there are some mouse-free way to switch between applications.

  1. The application called SwitchConfiguration allow you to select “next”, “previous” configuration

https://github.com/renoise/xrnx/blob/master/Tools/com.renoise.Duplex.xrnx/Docs/Applications/SwitchConfiguration.md

SwitchConfig is suitable when you need to switch absolutely everything. But you will need to create unique configurations that make use of it.

For example, here are the Ohm64 configurations. Each one comes as a “switchified” and regular version:

https://github.com/renoise/xrnx/tree/master/Tools/com.renoise.Duplex.xrnx/Duplex/Controllers/Ohm64/Configurations

  1. A control-map feature called States, which can switch or toggle things on your controller. A bit like pressing SHIFT or CAPS LOCK on the keyboard.

https://github.com/renoise/xrnx/blob/master/Tools/com.renoise.Duplex.xrnx/Docs/Controlmaps.md#states–when-static-maps-are-not-enough

States is a newer, more flexible way to do things. You can check out the LP keyboard configuration - it uses the feature to toggle the two upper grid on/off:

https://github.com/renoise/xrnx/blob/master/Tools/com.renoise.Duplex.xrnx/Duplex/Controllers/Launchpad/Controlmaps/Launchpad_Keyboard.xml

But question is, is it good enough? Because, then I’m going to include it in future versions. You tell me :smiley:

I’ve cleaned up the code a bit again. It should be good enough for future versions. There is a slight bug with the Keyboard configuration, when it launches it’s in DimStateA, but it’s lit up as if it’s in DimStateB. Toggling the state twice clears it, but it draws the wrong state when it’s connected, I’m not sure how to fix that. Other than that I’ve not had any problems using it.

I’ve cleaned up the code a bit again. It should be good enough for future versions.

Wow, that’s awesome. Thanks!

Will quickly check out the “dim-state” issue you mention… it most likely isn’t caused by you.

Hi Everyone,

Sorry to revive this thread, but I just started trying to get my Launchpad MK2 going with Renoise and Duplex (I am currently running Renoise 3.1). I installed the main tool, and then created a new folder under “Controllers” named LaunchpadMK2. Then, I simply copied everything from @stellartux’s Github fork into that new folder. When I try running the script (specifically trying the Keyboard tool), the grid initially lights up fine. However, I then start to get Scripting Tool errors. For example, the first line says Tools/com.renoise.Duplex.xrnx/main.lua failed in one of its notifiers. . . . LaunchpadMK2.lua 65: attempt to perform arithmetic on a nil value.

. . . Device.lua.631: in function ‘output_value’
. . . Display.lua.353: in function ‘set_parameter’
. . . Display.lua.284: in function ‘update’
. . . Display.lua.587: in function ‘_send_message’

etc.

I have not typed out all of the errors, but can certainly do so. I am hoping, though, that I missed something simple (like forgetting to add a file or line of code somewhere) that somebody who knows more than me can identify quickly.

Thanks in advance for your help!