Route Ableton from two computers to BomeBox

Hi.

I set this up on a bomebox - I use A and B computers with ableton to send prgrm change, midi notes and various others. I only need Ableton to send to the Bomebox DIN outs, not anything the other way.

I can upload the project to the Bome, and I can even see the Switching work om the Web GUI, but for some reason midi from both computers still end up at the DIN output simultaneously… any idea how this can be happening? Does it matter how the Bome MIDI I/O are configured in Ableton? Should I refrain from using the Direct Midi feature in Bome Network? Could this be the problem?

I was of the impression that when a MIDI Translate file was active on the Bomebox, all other routing was suspended, but it seems something is circumventing the switching.

Best, Tor

Hi and welcome to the Bome community!

Well the project file was probably not well suited for your needs so I created a new one and split your question into a new thread.

Assuming you run the project on BomeBox then it should work. If you test it on a computer, be sure to use aliases so that you can re-assign the once you move the project to BomeBox.

Here is how I have my aliases setup for testing.

image

You can learn more about aliases from this tutorial.

I set it up for manual routing toggling between presets from my controller (handled by preset 1).

I enable a given preset. Each preset handles enabling or disabling routes. I have my routing set up as show here.
image

I also set it up so Computer A is always selected at project start. which is what is shown in the illustration above.

Without looking at your project, it is hard to guess what was happening. Maybe you had some other routes setup on your BomeBox outside of the project. Be sure to unselect Automatic Routes on your BomeBox

unselect

Here is the project file I created.

Manual-Route-2023-11-10.bmtp (2.8 KB)

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

Hi Steve.

Thank you for your time!

My project is based on the Allen Heath Failover file, with some modifications. I need the switching to be handled by Midi Clock, and I see the switching happening on the Bomebox Midi Routes page. But on the actual DIN both Ableton A and B midi is being sent out for some reason. There is nothing in my project but Mac A and Mac B as inputs, and Bome DIN as output - but it is oart if a larger network of 6 Bome boxes spread across stage, in a fairly elaborate setup. At least 2 of these need to be able to do switching via Midi Clock.

The Bome and BMTP software is great for simple routing, but there is serious lack of documentation on more advanced features - very steep learning curve, and I have read the manuals multiple times :sweat_smile:

I cannot tick or untick the “Automatic Routes”, it is greyed out. As it should be when running a BMTP file I would assume? Are automatic routes not disabled as soon as BMTP project is run on the Bomebox? Would you advise to have ALL automatic routing switched off on the entire system, and then build every single connection from scratch?

Building a more straight forward redundant environment would really make the Bome a lot more competitive and appealing to touring bands - otherwise the product really is perfect :slight_smile:

Best, Tor

I’d have to see your project file, however if you have translators handling any incoming MIDI, then they may be making it through the translators instead of the MIDI thru routes. So you need to make sure all of the translators and/or parent presets have the right devices selected otherwise if there is nothing checked for incoming, it will process MIDI translators on all incoming ports and if there is nothing checked for outgoing, the translators will send to all outgoing ports.

In a nutshell the routing of any translators override the MIDI thru paths (usually with the ‘swallow’ option set.

For more information about device selection, see this tutorial.

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz
1 Like

This version works off of MIDI clock preset with a priority on A if both are sending clock. I disabled manual routing but left the preset there because I’m switching presets by number.

I’m using a timer to periodically look for clock presence. The poll interval is 500ms as set by global variable ge in translator 0.1

ClockFailover-Route-2023-11-10.bmtp (4.2 KB)

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz
1 Like

I will give this a try :slight_smile:

One think I didn’t test is whether MIDI sync is getting through. On the translator that received MIDI sync, if swallow is set, uncheck it so that it get though the thru path.

Also, I’m not sure if you really need to switch presets while searching for clock. You should be able to just monitor for clock and turn path A on if it is on path A and switch to B under the conditions below:

  1. No clock on path A
    and
  2. clock on B
    Then once you get clock on A again switch back to A

Not as much preset switching that way. I have to think about how I would implement it. I would still use global variables gc for clock A stat and gd for clock B state though.

I’m not sure why I didn’t think of this technique earlier.

Steve

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz
1 Like

Yeah, optimally it would just default to A when there is no clock on either A or B, and only switch to B, in the scenario you listed.

On top of this I also need a DIN port of another Bome on the network to always pass Midi to the same DIN port that is fed by Ableton A or B, but I would suspect this should be fairly simple to implement, if I can just get the switching working. I suppose ‘My Controller’ in your file could be patched to the My Bomebox DIN in the project Midi Router, since I will not be using it for switching. I tried creating a Network MIDI connection from the other Bome to this playback Bomebox, but it did not work at first glance, and I was pressed for time, but it works when I test at home just using a bunch of IAC Busses.

Thanx for your time Steve. I am afraid this Midi Translator stuff is a bit above my skill level - hopefully someday this stuff can be done without a software engineering degree :rofl: Since redundant midi is the reason a lot of productions go for the iConnectivity stuff, I think Bome would really be one step ahead if a more straight forward user-friendly implementation of this feature existed. Preferably as a feature of the Bome Network, without the need for Midi Translate programming. The issue is, that as soon as you put BMTP files into the equation, the user friendliness and totally awesome plug-and-play style of the Bome Network is kind of set aside, as this blocks the ability to make quick and easy routes in Bome Network. Just a thought from my end :slight_smile:

Yes, however with complexity comes a bigger learning curve so that is why we have so many tutorials and why I’m hear to help.

I agree that it would be nice to have a way to program routing with Bome Network with a more automated way. Like pushing different MIDI buttons to switch routes. I have requested this for a future enhancement. Of course Bome Network will have no translation but in this case, translation is not what you are looking for.

So you want A-B Switching to 2 different BomeBoxes where both get either A or either B at their DIN port based on presence of timing clock? If so, the routes can be set up by adding additional translators in presets 2 and 3 for routing to the other BomeBox DIN.

I, like you, was first and are still a Bome user but feel free to make any suggestions you would like and I’ll be happy to pass them along for consideration.

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

If you run this on one of your BomeBoxes, it can handle routing to the local DIN port and also to the other BomeBox, however since BomeBox doesn’t understand Remote Direct MIDI, it will be routed to everything on the second BomeBox so the second BomeBox should have routing from just the Main Network Port to just the DIN port.

I also set up the logic so that:

  1. If Ableton A has clock - Route A is selected no matter the status of Ableton B
  2. If Ableton A has no clock - Route B is selected only if Ableton B has clock
  3. If Neither Ableton A or Ableton B has clock the last one that had clock will be stay selected. There is no toggling back and forth of routes.

I created a new preset (5) for the new logic and disabled the old one (4) if you every want to go back to the old logic.

Since the routing is done within the BomeBox, this project should be run on only 1 of your 2 BomeBoxes as a BomeBox will not be able to route directly between a external computer and the other BomeBox.

If you want failover redundancy of your BomeBoxes as well as your computers, you would need a different solution but I think I’ve already gone way beyond the scope of free support here.

ClockFailover-Route-2-BomeBoxes-2023-11-10.bmtp (6.7 KB)

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

Hi Steve.

Your help is much appreciated - I bought the Bome boxes thinking redundancy was an integrated part of the system. I like diving into stuff like this, but honestly I wasn’t planning on programming BMTP files etc :sweat_smile: I should have done my homework a little better I guess, but for now I am obligated to figure out a solution, so the band can get up and running. I am just their FOH sound guy, trying to make everything work.

I understand that this forum is for help and not educational purposes, or free work. I would suggest BOME hired and paid you to support this forum and products instead of you having to walk the line between support and working for free :slight_smile: That being said, I will talk to the tour production about hiring you, if I cannot figure this out myself from here.

Anyway, just made this PDF to illustrate what I am trying to do - as you can see the Bass and GTR Boxes need to have redundant switching, since they are receiving Notes and Midi Clock from Ableton and that needs to only follow the currently active playback machine. The rest is mostly basic PRGRM CH, and while switching is nice, a double PRGRM CH from both A and B is not problematic, an keeping as much routing as possible in Bome Network is desirable. I am thinking I should be able to make this work, using your project files as starting point - if you see any problems in what I am trying to do, let me know, and we can talk via email about consulting.

JUNG BOME SETUP.pdf (34.0 KB)

Interesting,

So your backing band (bass and guitar) is Ableton Live and Bome Bass and Bome Guitar will do the failover so you should be able to just run the same script on both of those BomeBoxes. The only thing you are protecting with redundancy is Ableton Live.

It looks like the drummer controls Ableton Live though Bome Drums 2 and my guess is that you are using Bome Seq Rack to do the same.

I also anticipate that when both computers are running you keep Ableton Live instance in sync through Ableton Sync.

The live musicians seem to handling keyboard and drums directly but maybe not all of the time. It looks like they have the ability to step away and do other stuff after starting the appropriate Ableton Live tracks to keep keyboard and drums playing.

I’ll have to go online to check out what their performance looks like. You have me curious now. What were the doing before BomeBox?

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz
1 Like

We used a Radial SW8 USB Auto switching system which had built in midi, that we just distributed on DIN/XLR analog. But Audio especially was unstable and we moved to a Directout Exbox.MD on the audio side to handle redundant Dante Switching from the Ableton computers.

Every Bome represents a musician on stage (2 at the drums though, and 1 at the backliner/playback rack), Playback is generally just extra synth, FX and Backing Vocals.

We needed a seperate Midi solution and knew it had to be network based, and I LOVE that Bome boxes are small, light, POE powered, and relatively cheap. That means it is easy to just place a box at each musician on stage. Iconnectivity is poorly built, big, more expensive, not very stable and cumbersome to set up. BUT it has easy redundancy together with the PlayAudio12.

Bass and Gtr stations just have certain parts of the songs where they use either Midi Clock for their built in arp’s on Korg and Sub37, and parts where they receive notes from ableton, and they only “play” the filters. All other stations only receive Prgrm Ch, and receiving those from both Ableton mac’s is not a problem. But Notes and Midi clock is!

Right now the only solution is to turn off Midi Direct for the B computer, and turn it on in case A crashes. Not really a very nice solution in the heat of the battle :sweat_smile: My thoughts are the same, loading a BMTP on the Bass and Gtr boxes :slight_smile:

Best, Tor

Just wanted to say thank you to Steve and say that I have got this all working now + a much better understanding of how this thing works. Thank you so much to Steve :slight_smile:

I also found out the the timing set in the switching method 4 will determine how fast the switching will take place in case of failure on A. So a faster timing is desirable.

I did not have time to implement method 5, as it somehow behaved a little odd. I will do some further testing, and report back here.

1 Like

I slightly jumped to conclusions… it seems the switching logic is swallowing the Midi Clock Signal. On 2 parts of the set we use the internal arp of the Korg, this part has lost it’s Midi Clock, which means the clock is not passed to the Din Output, but swallowed by the switching translator. Is this just a case of removing “swallow midi” checkbox somewhere?

Best, Tor

Hi Tor,

Sorry. Yes just uncheck ‘Swallow’ in the translator that is looking at incoming clock.

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz
1 Like