Thanks. I’ve read through that thread a good few times already, and tested the Android TouchOSC extensively with things like Awake and the very useful Grid-test script, which is where the latency is most visible.


I also got hold of a Launchpad Mini Mk3, which some above have indicated works with Midigrid - I’ve not had much luck with that as yet. Midigrid is reporting the device as present (I fixed the name in the config to match that shown in the MIDI device menu on the Norns) when midigrid.lua is called by a script, but no buttons light up (except as triggered MIDI notes) on any of the scripts I’ve tried so far.

I spent a couple of days with the Launchpad mini trying to get it to work, trying both the @beepboop and @JaggedNZ forks - it is the former which gives the most response in Matron when midigrid.lua is called by a script. Which of those is most up to date, by the way?

This for example what gets reported by Beepboop’s latest midigrid (edit for clarification: when called from within a script):

midigrid.device is:
dev userdata: 0x6af0e080
event function: 0x3bd240
port 4
name Launchpad Mini MK3 2
id 2

Pressing some keys on the Launchpad mini results in “missing coords!” messages in Matron.

I tried rewriting the grid_notes in launchpadmini_config.lua to match the note numbers for both the Programmer mode and default custom mode 3 layouts in the Launchpad Programmers Reference Manual to no discernable effect, but I wonder if this is where the answer lies?

I’d dearly love to get the Launchpad Mini working with the Norns Shield, but for now I’ve switched it to controlling Axoloti patches via MIDI CCs as I’ve seemingly hit a brick wall with Midigrid.

Any advice from those who’ve had more luck than me would be gratefully received.

1 Like

My fork is only tested with lp mini and should work on a few other devices. Still has some bugs (unexpected lights)
Does not support MK3 yet, mostly as I have no way to test.

1 Like

Rereading you need to add the midi grid to the scripts you want to use, not launch midi grid directly

1 Like

This is what I’ve been doing with every script I’ve tested - apologies if my process outlined above was not clear.

I’m considering getting a second-hand Mini Mk2 as well just to see if I can get something working!

Try it right next to your WIFI router. If your wifi is too weak, it is unusable.

1 Like

I tried that with no discernable improvement. I also tried with the Norns as a wifi node, which improved the latency a tiny bit but not enough to make the Android TouchOSC usable, unfortunately.

I’ve started writing a node.js script to make two launchpad mini mk3’s behave as a Grid 128.

Taking the approach of emulating a serialoscd server in node.js. Then a second layer that maps grid.setLed x,y messages to MIDI messages to the appropriate launchpad.

1 Like

Good luck with that - really looking forward to seeing the results!

@DoS sorry to hear this has been a pain point despite your substantial time investment. if you want to share the MIDI API for the device, it shouldn’t be difficult to construct a softare shim.

1 Like

Thanks @zebra. I’m an inveterate tinkerer with limited actual programming skills, so the time was well spent learning how these things are supposed to function.

If anyone needs access to the Launchpad Mini Mk3 Programmer’s Reference Guide, it can be found here.

Got my Norns shield working today. Realise now that emulating a serialoscd server won’t work to get launchpads working with Norns. As Norns uses serial USB via libmonome to talk to grid, not serialosc.

So I’ll take a look at what appears to be the latest vgrid wip fork, @beepboop’s fork of @JaggedNZ’s vgrid work:

I can test first with an APC Mini. Then try to get it working with one, and hopefully two Launchpad Mini Mk3’s. I also have a Launchpad Mini Mk2 on its way for testing. Fun times!

1 Like

Fyi I finally got to testing my WIP branch again and it looks like resent upgrades have broken something. Hope to get a chance to debug soon.

1 Like

Ok, looks like I had some code that would get upset if random midi devices where plugged in at the same time.

For my fork ONLY try adding the following line to your desired script (around line 42 before
g = grid.connect())

local grid = include "midigrid/lib/mg_128"

This is a virtual 128 grid, you can swap between the two pages using buttons 5&6 at the top the launchpad mini.

Current known bugs:
Sometimes the wrong LED lights on the first column in particular. This is not as bad as I remember it, but it’s still happening and its very hard to figure out why.

Takt didn’t work at all last time I tried many months ago :man_shrugging:

I feel I must say this, I can’t recommend buying a new launchpad mini mk2 for the sole purpose of pairing it with Norns unless you are prepared to code to make it work, and even then I’d hesitate. But if you already have one or find one second hand for cheap … (and by cheap I mean like $20-30US)
And please please don’t buy an original launchpad, unless it’s for parts!

p.s. if you have 2 launchpad mk2 / mini mk2 then plug them both in via a USB hub. Enjoy :slight_smile:

3 Likes

I got a good deal on a new Mini Mk3, and while I am not ever likely to use Ableton (I run Linux on my PC) it’s already proving useful for controlling an Axoloti and perhaps some other things.

I’ll give this a go - thanks!

1 Like

After much tweating, I’ve added configuration for LaunchPad Mini Mk3, and a fix for LP Mini Mk2, to the midigrid library - thanks!

To work with LP Mini Mk3, you need to put LP in “programmer” mode: long press Session -> press orange “Stop/Solo/Mute” -> see “programmer” scroll by -> then press “drums” or “keys” to leave Session config.

Changes to midigrid are in this PR:

I’ve managed to get two LaunchPad Mini Mk3 working together as a Grid 128, by overriding grid in scripts.

local grid = include "midigrid/lib/mg_128"

10 Likes

FYI I’ve merged your code into my fork and made a few tweaks. Most devices should support 2x for 128 buttons now.

I like your rotation hack for the second device, proper device rotation is still on my todo list but it gives me ideas…

Two questions:
Does the MK3 present two midi interfaces? I’m trying to understand “MK3 2 2”

Have you had any issues with random LEDs lighting occasionally? Particularly in the first column?

Does the MK3 present two midi interfaces? I’m trying to understand “MK3 2 2”

LP Mini MK3 presents two MIDI interfaces over USB:

  • LPMiniMK3 DAW I/O (or first interface): For use by DAWs and similar software to interact with the MK3’s Session mode.
  • LPMiniMK3 MIDI I/O (or second interface): Used to receive MIDI from Custom modes; and to provide external MIDI input or Light controls in Lighting Custom Modes and Programmer mode.

Have you had any issues with random LEDs lighting occasionally? Particularly in the first column?

Initially I missed adding launchpad.auxcol, auxrow, quad_leds configuration, and did have some unexpected LEDs lit. But not noticing random grid LEDs now.

Changing MK3 colour via MIDI note on/off allows you to use a preset MK3 128 colour palette.

We could set RGB colour values via a MK3 LED lighting SysEx message to get closer to the varibright Monome hue/brightness.

Thanks, that really clears things up for me.

Hopefully I can spend some more time on this over the next few weeks, merge beepboops branch in for APC support and create a proper Vgrid v0.1 release.

I’m debating a “hard fork” at this point, curious what other peoples opinions are on this.

1 Like

Thanks for all your efforts; I’m not certain that I’ve been getting the merged files correctly from Github at all, but I’ve not been able to get any response from the Launchpad Mini Mk3 beyond the top-left upper vertical arrow to light up when calling midigrid from any script so far (which is more than I was getting beforehand!)

Thanks for all your efforts; I’m not certain that I’ve been getting the merged files correctly from Github

To use the code changes I got working:

ssh we@norns.local # pw: sleep

cd dust/code
# backup your existing midigrid, e.g. mv midigrid midigrid-bak
git clone https://github.com/robmckinnon/midigrid.git
cd midigrid
git checkout vgrid_wip_apc # <- branch with LP Mini Mk3 device config

And add include into other scripts, as explained on the Usage Instructions page.