Launchpad Pro support (and a bunch of refactoring) #2
Conversation
… Copyedit existing comments. Take advantage of shared code to begin making mg 64 and mg 128 look more alike.
…it comparisons. Kill ternaries with fire :) Move some locals into more appropriate scopes
…idigrid` - it strikes me that this make it easier to reason about. Remove more dead code
…messages. Some more refactor (rename)
|
Thanks for the work esspecially on sysex and you also seem to have solved the button latching issue just had a quick look on my launchpad mk2 and the pro config file actully works with sysex commands with very minor changes to the profile. The only issue i've come across is trying to run a script with the launchpad disconnected casues loading the script to fail with this error which is not ideal if you're not using the norns with the launchpad.
|
Awesome!
I never even thought to try it without an LP plugged in; I was too busy trying to get it to work :P I'll definitely take a look at trapping this so it's possible to modify a script to use a launchpad, but is not necessary for it to work (i.e. same behavior as a monome grid) |
@miker2049 - PTAL! I started out wanting to support the LP Pro, and ended up doing a lot more :P
I'd suggest reviewing commit-by-commit, as the final diffs are too different to reason about easily.
I'm a Pythonista by trade and by calling, so I have to tell you that learning Lua has been PAINFUL. I tried to avoid making changes just for the sake of making changes, or to look at it another way, I only made changes which I felt would help (me and others) when trying to reason about the data structures and logic herein.
I could only test with my LP Pro - I have no other devices. OTOH e.g. Loom is a pretty complex script, grid-display-wise, and works perfectly, so I feel pretty good about this PR, ie. that it should work OOB for other devices.
Changes which aren't strictly for the LP Pro:
supported_devicestable in midigrid/midigrid_2pages