weskoop / launchpad-pro-mk3-for-bitwig Goto Github PK
View Code? Open in Web Editor NEWLaunchpad Pro Mk3 Controller Script for Bitwig (Tested on 4+, should work on 3.2.5+)
License: GNU General Public License v3.0
Launchpad Pro Mk3 Controller Script for Bitwig (Tested on 4+, should work on 3.2.5+)
License: GNU General Public License v3.0
Bitwig presets each have a color, and making the sliders adopt this color would make it much easier to pick the correct slider.
New control surface API to launch clips with specific options. In the APC40mkII and Launchpad Pro scripts, you can:
- Hold shift to immediately launch a clip or a scene
- Release the clip or scene button while holding shift, to return immediately to last playing clip(s)
Momentary clips would be awesome, but updating the API version will exclude old versions of Bitwig. At a minimum we'll push one more release without this, but then we make make future versions require 4.2, or we maintain 2 versions, less into that.
We also use Shift + Grid for Selecting a slot, so this may need to be an optional thing, or Select only works on empty slots.
We'll look into all of this later when 4.2 is out of beta.
Most important for when Tracks is less than 8 Total.
All of these will need to update if they are on the display at the time the tracks, sends or devices change.
Devices, we will need to see if the Remote control slot is empty, I haven't looked at this yet, should be doable tho.
Hi, I tried to install your script following the instructions but it seems not to be recognised. Nothing new for the launchpad pro mk3 on the controller menu... :(
I'm on win10 and bitwig 4.0.8 by the way...
Add a Setting Toggle for Debug messages to the console.
Hello,
It would be helpful to see the 16 input channels available in midi tracks.
By assigning a specific channel in the daw, we can for example use the 4 tracks sequencer in the launchpad to play on 4 tracks of the daw.
I noticed that if you set anything in the shift+note mode (scale, key and layout changer), what you've input there is not preserved. Which is super tedious to have to remember, and set, every time you launch your project.
I actually asked Novation people if Launchpad provides any functionality that would help out with that, and this is what they gave me (regrettably, i have to post a screenshot, because the original table is formatted in some weird way which github's markdown parser absolutely despises):
Hopefully this is helpful and/or useful!
Hi there,
new Bitwig user here, and I'm wondering if this script is still relevant now that Bitwig ships with a native script for LP Pro MK3.
some stuff seems to exists in Bitwig implementation and not here, like using shift for momentary clip lanching. Is there anything else ?
Mostly curious.
Thanks !
Pure Sysex, then the Script would need to handle translation into an actual clip.
Not a small undertaking.
To get start this toggles the Print to MIDI button on the launchpad:
Enable (Midi Clip slot selected)
08:29:14.696 To Launchpad Pro MK3 LPProMK3 DAW SysEx Focusrite / Novation 9 bytes F0 00 20 29 02 0E 18 01 F7
08:29:14.697 To Launchpad Pro MK3 LPProMK3 DAW Control 1 105 1
08:29:14.697 To Launchpad Pro MK3 LPProMK3 DAW Control 1 106 16
Disable (Midi Clip Slot de-selected):
08:29:00.691 To Launchpad Pro MK3 LPProMK3 DAW SysEx Focusrite / Novation 9 bytes F0 00 20 29 02 0E 18 00 F7
08:29:00.696 To Launchpad Pro MK3 LPProMK3 DAW Control 1 105 76
08:29:00.696 To Launchpad Pro MK3 LPProMK3 DAW Control 1 106 1
Do we need anything else?
Does anything else need to be tested or cleaned up?
For me it's working rock solid, just a bit of clean up to do. See the Milestone for details.
I'm having issues with Bitwigs default and hoped I could try this but it seems to not be showing in the options. I'm not sure what to do. I copied the folder into my extensions directory.
I'm on Linux(NixOS).
Edit: I tried driven by moss and really prefer the original setup so thought this might be a little more to my liking.
I suspect this is because enabling the drum mode takes into consideration the first device on a track, rather than first actual instrument
Also quick aside, is there any way of having the drum mode be toggleable regardless of whether something's a bitwig drum machine? Would be real useful e.g. with Kontakt setups
Hi,
just an idea / minor suggestion to throw into the room. Feel free to ignore / disagree.
When switching into different layers than Session, the track buttons get all the same color as the functionality chosen.
If they keep the color of the tracks, there is a bit more context. What track is then enabled / active could also be indicated by keeping the same color but making it pulsing. When choosing Volume, Pan or Sends it the track color could also be used as a fader color?
For the Device page, I wonder if it is possible to use the colors from the bitwig device remote controls?
To me it looks like it's always the same 8 colors in the same order. Here both track colors and fader colors could be adjusted.
Pressure data is not coming in. Is support planned?
could have sworn it worked like that when i first tried the script. did i imagine it? did i accidentally disable it somehow?
either way, being able to launch recording like that would not only speed things up (for me at least), but also prevent errors
No matter what orange or red colour you give to a track they all appear in the same red colour it seems there is no slight contrast between them, and difficult to distinguish between them. The same for the green colours.
Is there somehow a way to add some more contrast?
Background: Novation designed and dedicated LaunchPad Pro to the Clip Launcher in Ableton, Session View. It's integration is even under a button of the same name.
So far this script has followed that thinking, but Bitwig moves beyond this idea, integrating the Clip Launcher with the Arranger Timeline.
Until the last ~20% of development on this script, I had the Record Button attached to the transport Record button in the top bar of Bitwig; it did not toggle Clip Overdub, and honestly it was useless is most situations.
When finalizing the scripts behaviour, i tweaked the record button to bring back focus to the Clip Launcher.
I'm used to thinking of these things in my own head, but now that the script is live, I figured I would think out loud.
I think there may be some potential to bring back the connection to record button in transports, and maybe arranger overdub, though I'm doubtful.
When I think about performance oriented features, Clip Record and Clip Overdub in the Launcher fall into that bucket, capturing multiple clips, variations, building scenes, and it can all be dont without touching the computer, no context switching. Record and overdub in Arranger timeline feels less like a performance/jam tool and more like a deliberate action to capture longer pieces of audio/midi, which would later then be processed in the Bitwig interface, features like Count-in and the general UI lend itself to moving between interfaces, switching from the computer to the instrument and back.
Do we bother with changing this at all? More code/options means more bugs.
How would it work?
Would it support Arranger Overdub?
Only toggle the record button?
Is this a Preference Toggle?
Shift Mode?
Attached to the Arrange/Mix orientation? (probably bad)
There are some format examples in the other Bitwig factory controller scripts. Maybe just a trimmed up version of the README to provide a supplement to the Novation Manual.
Hi,
I just wanted to let you know that I've just bought a Launchpad pro mk3 and search a script controller for bitwig. I've quickly test Jürgen but I was lost because I expect to have same native feature but have custom layouts for each node, chord, sequencer.
I think you've started this controller script with that idea in mind to not change the native feature of the controller to have consistent behaviour with the button and the official documentation that I've started to read yesterday.
I've not tested yet your script, I think I have time this week-end to test it. I've started to read also your README, great to have such a documentation :-).
I am also a typescript developer, I've look at your code to start understand how it work and may be help you if needed. I'm not familiar with bitwig programming but I have some experiences with web development (and more) on frontend (javascript/typescript) and backend (java server).
I've started a new branch :
https://github.com/llgcode/Launchpad-Pro-Mk3-for-Bitwig/tree/fix-typing-issue
I could open a pull request on it if you are interested to disccuss on it and may be merge it if it make sense.
Thanks for your work.
Finally I've managed to find a way to make this bug reproducible (I think), here are the steps
expected behavior: you switch to the second instrument's layout, the second track is armed and you can play it
actual behavior: the layout changes (usually), but the track is not armed, so if you want to play a synth, you get a faceful of kick instead
if i disable the record to arrangement button, everything seems to work as expected
When booting up Bitwig with launchpad connected , adding an instrument and pressing device knob to modify its parameters will lights up the patterns knob in green in session mode. Pressing the sends button will make the patterns knob light in white in session mode.
It will happen from within session mode and note mode and chord mode and sequencer mode. But the patterns button lighten in green or white is only shown when returning to session mode then.
Hopefully it can be corrected,
Thanks,
Great script by the way really loving it.
Just an idea to throw in: There could be controller preferences whether you want to ignore the Effect Tracks or the Master track in session view.
The Handler for the Arrange/Mix toggle gets disconnected, so we'll need to restart the script when the Display Layout changes.
Also disable (LEDs=Off) the Arrange/Mix Toggle for any Display Layout that doesn't support it.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.