The midi device names are correct, but something weird is going on … I suspect we are missing some code to put the launchpad MK3 into the correct mode and you are using the “wrong” mode for midigrid. Anyone else know what is the right mode? Programmer mode seem to line up with the configuration? Does this mode reset on power off?

It could be useful to try the following:

On lib/devices/supported_devices.lua uncomment line 83 and maybe line 113, they should both be calls to print, then check what is output in the maiden console when you push the up and down button?

1 Like

I haven’t tried midigrid/lib/mg_128 (only midigrid/lib/midigrid) and using Launchpad’s Programmer mode reflects what’s on the Shield’s screen, but needs to be selected each time I start up.

I toggle between the upper and lower sequencers by using K2 and K3 on the Shield itself - none of the buttons on the outer edges (top and right) are active. The only lit button is the Up arrow; pressing the Down arrow seems to have no effect.

Will double-check what’s in SYSTEM > DEVICES > MIDI later, and see if I can make the edits to lib/devices/supported_devices.lua later (I have to go to work in a few minutes)

awake_500

It’s possible to put the Mk3 into programmer mode over MIDI - I think it might be a sysex message. But I didn’t add that to the code when I patched it for the Mk3. Something I could look at when I get a chance. @JaggedNZ I’d branch from your repo right?

In the meantime, Mk3 users need to do the manual steps to change to programmer mode on each LP powerup.

2 Likes

It is possible via SysEx, I can look up the exact commands I used in a recent script

1 Like

The midi device names are correct, but something weird is going on … I suspect we are missing some code to put the launchpad MK3 into the correct mode and you are using the “wrong” mode for midigrid. Anyone else know what is the right mode? Programmer mode seem to line up with the configuration? Does this mode reset on power off?

It could be useful to try the following:

On lib/devices/supported_devices.lua uncomment line 83 and maybe line 113, they should both be calls to print, then check what is output in the maiden console when you push the up and down button?

Thanks, I will try this later!
I think you’re on the right track here. i’m not much of a coder but i was digging around in the script looking for something which looked like it handled paging and settled on investigating supported_devices.lua - i feel like something funky is happening in there.
Seems like there are 3 possible connections:

Launchpad Mini Mk3 1
Launchpad Mini Mk3 2
Launchpad Mini Mk3 2 2 (which i think only appears when two LPs are connected?)

Also not sure how much it matters where you assign the LP on Norns, whether it needs to be in slot 1, 2, or whatever.

msg = {240, 0, 32, 41, 2, 12, 14, mode, 247} device.send(msg)

for mode put either 0 or 1 (1==programmer)

3 Likes

Hope the above explains why there is the 1 or the 2 at the end of the Mk 3 device name.

When a second Mk3 is added you get the 1 2 or the 2 2 at the end of the name.

I don’t think it matters which USB slot(s) the LP(s) are in.

1 Like

Gotcha. So if i’m understanding correctly only the ‘Mk3 2’ interface is relevant to Norns, since it’s exclusively using Custom or Programmer modes?

1 Like

Ok, so I’ve gotten my head wrapped around midi a bit more with norns. Not entirely sure on the script editing side but am ready to start adding Launchpad Pro MK3 support and testing if anyone has anything!

it mysteriously works now. same setup as last time, it worked from the beginnig. it shows in SYSTEMS>DEVICES>MIDI as Launchpad mini
superweird. but anyway: IT WORKS!
thanks for everything!

2 Likes

YAAAY!
This is really good to hear!
Now, the fun can start! :grinning:

Here we go! This is a push & release on the ‘down’ arrow followed by ‘up’ while running Awake with mg_128

Summary

#script init
starting halfsecond
pset >> read: /home/we/dust/data/awake/awake-01.pset
pset :: /home/we/dust/data/awake/awake-01.pset not read.
cc 92
type cc
val 127
ch 1
Unhandled CC 92
cc 92
type cc
val 0
ch 1
Unhandled CC 92
cc 91
type cc
val 127
ch 1
Unhandled CC 91
cc 91
type cc
val 0
ch 1
Unhandled CC 91

feels like we’re getting somewhere…

1 Like

ok, seriously stunned.
where can i find the local g = grid.connect line in buoys?

Line 783, but bouys needs a double grid really, as you have to press all four corner buttons to load samples and it expects a 128 grid. Certainly looks pretty though, and if we can get paging to work again it should be doable.

Yeah, looks like most people are jumping on my branch and I’m the most active dev at the moment … I’ve also managed to get in a state where merging the original code makes a mess. (More on this below)

I think there needs to be a device init function stubbed in genetic device and called in midigrid._load_midi_devices. This can then be implemented in the device lua file to send any sysex messages, etc. Might be worth adding a quick grid test pattern? ie draw an x across each quad?

@blueroses thanks for that output, it’s sending Cc messages but the devices is configured for Note messages. I think line 10 of launchpad_minimk3.lua should read:

launchpad.quad_leds = { CC = { 91,92,93,94 }}

But would be worth to see what @delineator comes up with too.

FYI I’m looking at what it would take to hard fork and create a more community based maintenance.

@Cubeinthebox I’d start by putting your launchpad into programmers mode and add the correct midi device name to supported_devices.lua with a device_type of launchpad_minimk3 … let us know how it goes

2 Likes

I’ll go ahead and start from! I did find this in my search for more info related to programmers mode and the LPPmk3 in the following PDF. Not much usage to me as of yet, but for future use.

@lylem kindly helped out with this when I was running buoys with just one Launchpad Mini Mk3, allowing the 4 keys needed to load samples to be moved to somewhere more convenient for midigrid:

2 Likes

dude…nice… :+1: worked a treat!

1 Like

Installed a fresh version of this from your fork and I’ve added the name to the supported_devices.lua and sent that over to norns. Attempted to boot up the midigrid tests (LED/device test) on there with no luck at all. Just getting “no script information”. Norns is receiving the midi signals so it’s just that I have no clue what to do from here. Not sure how to exactly “call” other libraries into scripts. Scripting is very new territory so bear with me as I get used to some of this…ELI5 level sometimes. Midi device name is “Launchpad Pro MK3 1” which transmits midi in both session mode and programmers mode.

The LPP mk3 has 2 other midi channels (it has 2 midi cv outs and 1 midi cv in). Here are some diagrams from the pdf I found relating to CC values and LED color values (in decimal and hex values). Source

The CC values in both decimal and hex.

LED colors in decimal.

LED colors in hex

The note and cc values are mostly the standard launchpad layout (except for the left side and bottom buttons), the colour map is also the same and It does look like the MK3 pro still uses the same midi implementation…

Is there a “Launchpad Pro MK3 2” and have you tried to use that?

If you get the test to work then look at Helen and Bluerose’s posts on how to modify scripts to load midigrid.