Two Devices with Identical Make and Model

In one version of my Rig, I have two Zoom LiveTrak L6 mixers (one for WindSynth inputs, the other is my output mixer). They both have the same MIDI name, so ‘the system’ adds a Tag on the end of the name - something like "… (1) and ‘… (2)’.

There’s no way to tell which Tag refers to which device, except to try it. Fair enough. However, which one is which changes arbitrarily whenever I power up. Powering up the two units in order does not have a predictable effect on which is which. Sometimes they change when one of the units is powered down and back up. It’s a Nightmare.

I can straighten it out in Bome MIDI Translator by changing the targets of Aliases, but that won’t work when I move to the BomeBox for Live use.

Is there a general solution to this scenario?? I searched this forum, and didn’t seen something that directly applied.

My one idea:

  • Set one units to MIDI channel 1 and the other to MIDI channel 2.
  • Send all output for either unit to both MIDI Ports.
  • Accept input from both MIDI ports and figure out who is sending by the Channel.

This might work (I have not tested exactly how the L6 behaves if the MIDI channel is restricted).

However, it is horribly wasteful of MIDI bandwidth and I suspect it will really muck up my BMT translator and rules with duplicated stuff.

Any thoughts welcome!

Hi,

In general, we are pretty much left at the mercy of the controller manufacturer and operating systems on how port names are assigned.

With that said, I think your idea would work. You could have an incoming trigger as a MIDI message on a given MIDI Channel and then use the outgoing action Port (Assign MIDI Alias) to assign the port you want. Alternatively if the units respond with a unique message when queried with a SysEX message, you could then use the incoming SysEX message to assign the alias.

Try sending this Raw MIDI message to each of your devices and see what they return.

F0 7E 7F 06 01 F7

Steve Caldwell
Bome Customer Care


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

Yo Da Man! Da Bome Man!

Great idea with the MIDI query. Tried it … no dice. In fact, the Zoom L6 does not respond to any SysEx (says that in the manual, somewhat cryptically). I think that the L6 is more of a ‘Pro-sumer’ device, but I’m using this second L6 as a replacement for my bulky CQ20B for venues outside the U.S. (where I can’t reliably ship the gear - like Mexico).

I’m looking along the lines you suggest - building a set of Translators to prompt the user (me) to hit buttons on the two L6s. The new Translators will then recognize the incoming channel, then remap alias mappings using [MIDI Port] => [Assign MIDI Port Alias] actions to change output on the fly.

One question: I use [BomeBox: XXX] ports for PC development. How it that going to work with [Assign MIDI Port Alias] actions when I move to the BomeBox? Is the BomeBox smart enough to use the corresponding non-network / Local versions of those ports??

Took a look at how my two L6 units are named in different environments. The L6 provide 3 USB connections, and I nee only the second one.

On BomeBox the two connections (as shown in Bome Network) are named:
‘L6 [2]’ and ‘L6 [2] (2)’

On my PC in Bome MIDI Translator, they are named:
‘ZOOM L6 2’ and ‘ZOOM L6 5’ (???)

On my PC in the MIDIView app they are named:
‘MIDIIN2 (Zoom L6)’ and ‘MIDIIN2 (Zoom L6)-2’

… all vastly different …

How can I smoothly switch from BMT on my PC to using the BomeBox, since I have no way to name the targets of my [Assign MIDI Port Alias] actions from my PC ??

Indeed this could be a problem.

For me since I have Bome unlimited named MIDI ports on my PC. I can simply create a few virtual MIDI ports with the name that the BomeBox assigns and then use them. You may be able to do something similar with LoopMIDI or LoopBE but I would caution that if you try to use them you may get a MIDI feedback loop while working with the project on your PC.

Steve Caldwell
Bome Customer Care


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

Thanks (as always).

I do have Bome unlimited named MIDI ports, but have not been using it in the current context. Will have to expand my tools …

1 Like

OK, I see how, using Bome Network with the Unlimited Named MIDI Ports add-on can work well for running (for example Bome MIDI Translator) on my PC and keeping all those apps independent of the hardware name by mapping the hardware name onto a Virtual Named MIDI Port in Bome Network.

However … when running my .bmtp on the BomeBox, which is not aware of the names I use in Bome Network, how will it know to do the mapping from it’s own names for the hardware devices to the virtual device names I am using in my .bmtp project?

Is that the purpose of the [MIDI Routes] facility in the BomeBox that is accessible from the BomeBox web interface?

I am not really clear on the purpose of that BomeBox [MIDI Routes] feature (although I do see how the MIDI Routes work in Bome MIDI Translator and also in Bome Network.

Also, because of the issue with the Two Devices with Identical Make and Model, I will be naming these ports in an outgoing [Assign MIDI Port Alias] action, which would not be accessible / modifyable from the Web Interface of the BomeBox …

So say you give them aliases of Device1 and Device2.
Then on BomeBox, the are called APC-1 and APC-2 (by default).
Then on your computer you create Virtual MIDI ports called APC-1 and APC-2 (to match the BomeBox Name.

On your computer, you assign the aliases as follows

Device1 → APC-1
Device 2 ->APC-2

Now can have translators that assign the aliases as shown above on Both your computer and your BomeBox. In this case you are sending to virtual ports on the computer and to physical ports on the BomeBox.

On your computer you can create the following routing. Say the physical device names on your computer are call called APC-MINI and APC-MINI(2).

Routes on your computer (Bome Network) would be

IN APC-1 → Out APC-MINI
IN APC-2 → Out APC-MINI(2)
IN APC-MINI → Out APC-1
IN APC-MINI(2) → Out APC-2

So with the combination of virtual ports and routes, eveything should work on both platforms.

The project aliases, in both cases would be assigned:

Device1 → APC-1
Device 2 → APC-2

and everything should work since you are routing the virtual ports to the physical port on the computer.

If running your project remotely on BomeBox from MT-Pro on your computer you would assign the aliases

Device1 → BomeBox:APC-1
Device 2 → BomeBox: APC-2

However the auto alias assignment would not work in this case.

The workaround here would be to use a global variable and depending on it (which tells where MT Pro is running) which assignment translators to execute.

I have not tested any of this but it should work.

Steve Caldwell
Bome Customer Care


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

Brilliant! … I’m on it …

I’ve gotten to first base: got one device (of 12) set up so that it works whether it is plugged in to the BomeBox or directly into USB on my development PC. I connect to 3 in and 3 out Virtual Ports on that PC (for use in Bome MIDI Translator, Cantabile, and some ‘utility’ such as Midi-OX for SysEx patch loading or saving).

This requires 12 MIDI Routes in Bome Network: 2 for In and Out (times) 3 for the Virtual Ports (times) 2 for whether the device is on the BomeBox or on the PC directly.

For my issue with the two identically-named Mixers, looks like I will need 24 more routes so that I can decide in MIDI Translator which one to use (i.e. which one is which) at run-time.

That will give me 12 routes per device (times) 12 devices (plus) another 24 routes extra for the secondary Mixer ports.

Will 168 (or 200 or 250 when I get finished) routes BUST something?
Is this getting ridiculous??

And, if it doesn’t break something, will there be a Load or Latency hit for all the Routes that go ‘nowhere’ (i.e. to ports on the BomeBox when the device is currently plugged in USB to the PC)?

I’ve never tested this but I don’t think it will break anything or add any latency, MIDI devices that route to nowhere should not consume processing resource, but might consume more memory.

You have 12 identically named devices? I thought it was only 2.

Each device has 3 ports so I could see using 6 ports for 2 devices, each with 2 routes.

Steve Caldwell
Bome Customer Care


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

12 devices total. Only two have identical names.

I’ve found the diagram in This Post to be very helpful, and I hope to cook something up along those lines when I am further along …