Device Details

Device Overview

Name/Version: Bass Station II Interface with M4L Presets 2.4
Author: TBTAHG  
Description: This is a bi-directional Live interface for the Novation Bass Station II, allowing you to control BS2 from within Ableton Live and / or record automation straight from BS2 to Live. As of version 2.1, it also allows you to save and recall presets from within the M4L device, and as these presets are sent back to the BS2, they will temporarily overwrite local preset values, making it possible to play your own presets from just your Ableton Live set on any Bass Station II that happens to be at hand... ;-) (Notice that you obviously will need to save to the BS2 itself manually if you want to use these presets without the M4L device.)


- Just create an empty midi track and put this device on it. Set MIDI out to your BS2 and arm the track (obviously set the MIDI in settings as appropriate for how you want to use the device)

- You will be prompted to create a file called BS2.json the first time you open or close the device. This is your preset file. Somehow, this file really likes to be at the path Documents/Max/Max for Live Devices/BS2 Interface Project/data/BS2.json (on mac, not sure how this translates on windows), so you might have to place it there to work properly. Also, you can create 'banks' of presets by first placing the original BS2.json file in a different folder and then saving a new BS2.json file to the original folder. By changing places between these two, you can use one file as preset 0 - 127 and the second file as preset 128 - 256, etc. Finally: it seems as freezing the device will disable saving presets, so keep this in mind!

Please feel free to tweak and / or build upon this device +re-use it's basic principles and any of the code you think might be of help for your own device.


The first version of this device was built upon splonge's Bass Station 2 Controller (-> ), which was itself a very minimal rework of JoeM's Bass Station II Editor (-> ), which in turn was a rather elaborate expansion of Justin Foster's original Bass Station II Patch Editor (-> )

For this version (2.0), I re-coded the entire device to make it as straight-forward and transparent as possible, using only native M4L components and keeping CPU as low as possible (1% on my 2009 mac mini). I also added a whole bunch of commentary (accessible when opening the device in patching mode), where I explain in detail how the device works, how I handle CC, double CC and NRPN messages, + some peculiarities from BS2 itself and how I've dealt with them.

Most of the UI elements I used are recycled from splonge's / JoeM's version of this device, but I've quite drastically re-arranged them, re-defined their ranges to better mirror BS2's behavior and re-defined their auto-mapping index so as to make more sense (to me) when used with controllers such as Ableton Push, Akai APC40, the Novation Launch, Keys, and Remote family, etc.


- Added save and recall presets from within the M4L device that will be applied - but not saved - to your BS2 on preset change


- Re-designed the UI


- Fixed an issue where not all parameters arrived to BS2 exactly as they should on preset change. These now work 100% as they are supposed to.


Re-introduced the random function (Notice I've made every parameter (except for patch volume) completely random, so the outcome will almost always be something rather experimental / SFX like, while not necessarily being very musical indeed... ;-)


Device Details

Downloads: 1449
Tags utility, hardware
Live Version Used: 9.1.6
Max Version Used: 6.1.6
Date Added: May 16 2015 07:51:55
Date Last Updated: May 25 2015 07:03:46
Average Rating -n/a-
Rate this device: (must be logged in to rate devices login)
Device Type: midi_device
URL (optional):
License (more info): AttributionNonCommercialShareAlike

Device Files

Device File: BS2 Interface.amxd



Awesome, perfect companion to a great combo, Live + BS2

Awesome! Is there a way to make the GUI elements change when you change patch? Or it should already do it and I'm doing something wrong?

Thanks a lot!

Hey, thanks for the feedback!

I'm not sure what you mean exactly with your question, as there are two possibilities here, so I'll just answer both of them ;-)

1. If you want the M4L device to display the settings of a patch saved on the M4L device itself when changing patch-number on the BS2, this should work. If it doesn't work, you need to check your MIDI preferences in Live (check if 'track' is on under preferences -> midi / sync -> input: Bass Station II) + you need to make sure your track is armed and is set to receive midi in from either 'All Ins' or 'Bass Station II' (whatever you prefer).

Also, you obviously need to have a patch saved on the device under the specific number you navigate to. As you first use the device, all patch-numbers are blank; and so changing patch-numbers won't do anything because there is no information in the preset-file to display and send to the BS2 in the first place.

If you want to save the presets on your BS2 to the M4L device, you can use the indicator LEDs next to patch-number on your BS2, which show you which value each parameter actually has for that patch: Top LED lit means the value you are at is too low, bottom LED lit means the value you are at is too high, no LED lit means you hit the right spot. (Obviously, this only works when you are actually turning a knob :-) -> Do this for every parameter and then press save on the M4L device and you have your patch imported to the device. I realize this might be some work, but you only need to do this once for each preset, and personally, I rather just create and save my presets on the M4L device from the beginning, so there is no need to import presets from BS2 to the M4L device, and it gives me the possibility to have a many presets as I want without having to use the BS2 Librarian).

2. If you want the device to display the settings of a preset that is saved on your BS2 (and not on the M4L device itself) when you change patch-number, then that feature is not supported by my device -> I had to choose between importing presets from BS2 to the M4L device or sending presets from the M4L device to BS2, and I chose the latter because a lot of my friends own a BS2, and so I found it more interesting to be able to recall my presets on any BS2 from within Ableton Live (so I don't have to carry my BS2 with me every time I go jamming at their house...)

There exists a device which should give you this functionality though (notice it lacks some of the other features of my own device), so if that's what you are looking for, go check out this device right here ->

(I can't guarantee it works all that well though, as I've never even used the latest version of this device myself for obvious reasons mentioned above, and previous versions of it didn't prove to be very stable on my setup, which is the very reason I created this device myself ;-)

Sorry for the TL;DR, but I hope that answers your question!

And either way, enjoy! ;-)

Ok.. Super keen to receive patch dumps from my synth and have the GUI update.

I like noodling around playing with patches on the synth, but with no screen, I don't always know where to save my creation

Plus, If I use it in a track, I want to have it saved ^inside^ the ableton project (like with softsynths I guess :P)

Your version looks easier to follow and better documented than some of the other ones I've seen

I've found this excellent breakdown of sysex

And I'm examining
for seeing how they make sense of the patch information

Hopefully these things, combined with your device.... I can crack this code

Will share if I get anywhere

Login to comment on this device.

[ browse device library ]