UPDATE 14.2.2017: Fixed script and layout for Bitwig Studio 2.0 B1/B2
UPDATE 23.2.2017: Fixed script for Bitwig Studio 2.0 B4+ on Github
I came to really like the hardware controller integrated clip launcher functionality on music software a few years ago while playing around with Launchpad and Ableton Live. However I didn't finish a single song properly until I got myself comfortable laying parts in traditional timeline style sequencer with mouse and keyboard. Now after finishing a bunch of tracks I'm testing different hardware controls. For me hardware controllers (and synth's) aren't only inspiring, but they can speed up workflow and can help with mousearm related problems.
During 2016 I had my hands on an probably the most iconic DAW control surface AKAI APC40 controller loaned from Unzyme. I had thoughts on investing for my own controller and APC40 MK1 with $160 secondhand price was high on the list. However the bulky size and non-motorized faders were putting me off, rendering the controller pretty much useless during track mixdown. Maschine Jam improves slightly on this with touchstrips, but I wasn't happy with it's pricetag of $400 as I didn't have a need for the bundled NI Komplete 11 Select having already purchased enough synthesizers and hoarded enough sample audio material.
After some time I resolved into setting up a simple Launchpad grid controller accompanied with custom tablet touchscreen control layout providing the best of what I saw APC40 and Maschine providing, in a package that doesn't take more space in a backbag than a single hardcover book.
I was on a lookout a few weeks for second hand Launchpad Mini and got a barely used one for $75 (MK2). The stock Bitwig Studio Launchpad controller mapping has the default Ableton Live Launchpad functionality implemented, plus a Ableton Push style clip sequencer which I find inspiring especially for programming percussion. There's also a toggle the clip launcher orientation for either Bitwig arrangement view or the session view and a fancy VU meter.
The Launchpad Mini is pretty much the size of a medium-size tablet such as my iPad Mini 2 that I got cheaply with slighly cracked glass and they fit nicely together.
I already had bought TouchOSC mobile app some years ago for ~$2, and while looking at it's features found it capable for the things I would need. Setting up the layout with TouchOSC editor was quite straightforward, but in the end it started to act crazy sometimes resizing and moving around some elements that I wasn't even clicking, which took some extra patience to cope with.
During a hunt for a starting point controller layout, someone on Bitwig Studio Users Facebook group also mentioned a Lemur Bitwig template, which is seems quite advanced, but too bloated for my needs. Also though Lemur has some more advanced features and probably a less buggy layout editor, I didn't yet see the $25 pricetag (times two for both iOS & Android) worth it for now.
As a starting point for the I used layout and sciprt by Thomas Helzle and Astartes, which had 80% of functionality already in place and I had played with earlier. It took a couple days to getting my head around the initial script and Bitwig Controller API documentation and some extra time testing and optimizing the layout.
TouchOSC supports USB-connection currently from iOS devices to Mac/Win via TouchOSC midi bridge (not yet implemented on Linux version). There are also 3rd party solutions for connecting Android as stated on TouchOSC Blog.
Though I've heard Wifi control surface users without any problems losing the connection in middle of a gig, the delay for playing notes or soloing tracks is not good enough and +50ms delay makes the use of a touchscreen controller feel even more flaky compared to hardware knobs and faders.
Extract and copy the
TouchOSC directory containing
TouchOSC.control.js file to Bitwig controller scripts directory.
%USERPROFILE%\Documents\Bitwig Studio\Controller Scripts\
~/Documents/Bitwig Studio/Controller Scripts/
~/Bitwig Studio/Controller Scripts/
BitwigTablet.touchosc layout via TouchOSC editor. Run TouchOSC bridge and Bitwig Studio. In Bitwig controller preferences, click "Detect available controllers", and it should setup the controller automatically, as it does with Launchpad with the builtin script for it.
Compared to using a hardware controller the touchscreen layout is not fixed making it a great tool for prototyping control surfaces and while test driving the mapping for a couple weeks I'm already getting ideas on where to improve.
One TouchOSC drawback is that the fader for pitchbend that does not return to zero position, as the feature is not supported (or I missed it?). This would make the pitch wheel more playable.
With having modular control surface interfacing the track bank, I would also like to see synchronization between different control scripts, so that shifting the bank on Launchpad would shift the controls on TouchOSC accordingly and vice versa. This could be hacked together at least, but I hope to find some official way of sharing date between scripts.
APC40 control surface mapping is not too usable while working on tracks. It's handy for performing with clip sequencer, but during composing and mixdown (that normally takes most of time) I still need to use mouse 95% of time. A larger amount of mixer strips would be more handy and I'm starting to understand professional studios with crazy amounts of motorized channel strips on mixing consoles.
Having a large amount of mixer faders on a small touchscreen wouldn't work too far. It could be helpful have a layout showing currently selected track's controls that follow the selection on Bitwig GUI. I'm doing some experiments with that in few weeks.