Apparent midi clock loop - clock from iPad (via Bome Network) is being doubled

DJG Midi 2021-12-13.bmtp (71.7 KB)

Hi All,

I’ve attached here my precious BMTP project for controlling my entire rig. Amazingly it all works, excepting clock signals from my iPad to my drum machine (a BeatBuddy).

No translators are involved here, though hundreds are driving virtually everything else in my rig. It’s just routing.

I created an alias (“iPad_Filter”) linked it to the first “RSV” (reserved) port on the MioXM, which is MioXM port 14. In the MioXM, RSV 1 (again, MioXM port 14) is mapped to the BeatBuddy port DIN ports. In the project, midi from my iPad (“DoviPadPro” via Bome Network) is routed from “iPad” (midi port assignment on the BomeBox) to iPad_Filter.

In my MioXM, I turn on and off the routing of MioXM port 14 (again called “iPad_Filter” in this project) to my BeatBuddy, which is connected via DIN ports. When that routing is on, everything works (eg - selecting a song from a playlist), except that midi clock is doubled. If I filter midi clock in the MioXM, no midi clock signal is received by the Beatbuddy, proving to me that this is the only direct route from my iPad to the Beatbuddy.

Just for the heck of it, I deactivated each of the other routings in the BomeBox one by one, then changed the BPM the iPad is transmitting via midi clock. No change. This tells me that I’m not sending midi clock to the BeatBuddy via another routing, and the device in question is retransmitting it back into the BomeBox.

I just purchased the Bome Network licenses on my Mac and iPad so I could test this out using the BMTP on my Mac. The midi clock didn’t double! Why is the midi clock doubling on the BomeBox and not using BMTP on the Mac?

I know I’m doing something wrong, but darned if I can figure it. I’m hope Steve or some other helpful forum member can point out what I’ve done wrong.

Thanks in advance,
Dov

Just to be clear, when I tested with the BomeBox, it was connected to the “To Host” port of my MioXM. When I tested on the Mac, I connected it to the MioXM “To Host” port as well.

The only change I made was to set the midi port aliases in BMTP for the Bome Network port that resolved to the iPad.

Wow, it looks like a spagetti of routing. At first glance I cannot figure it out either. My guess is that either.

1- One of your attached devices has a MIDI thru setting allowing the clock to pass through to an unwanted port.
2- The mioXM may have a port routing that may be overlooked.

I would recommend that to test the first case, you disconnect each device 1 by one until the problem goes away. If it doesn’t go away, then you have at least eliminated a bunch of potential issues.

Then make sure your mioXL has only the routings needed. Since you have routings in both BomeBOX (via a project file) and in mioXL (via Auracle), there may be some routes duplicated. I would recommend you have minimal routings in mioXL and do most of your routings in BomeBox (or visa versa).

Typically I don’t like to do anything in Bome Project file with routings, rather have tighter control by using translators only. The only exception would be to allow SysEX messages through. If there are static routes, I usually add “blocking translators” for MIDI messages I know I don’t want to get through. Such as incoming timing clock with outgoing none (in your case).

Good luck!

Steve Caldwell
Bome Customer Care


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

Thank you Steve. I tried all of that.

This routing setup works in BMTP on a Mac - the clock isn’t doubled.

In the BomeBox, it doubles the clock.

The reason for all the routing in BMTP is because the iPad is connected to Bome Network. I had to route the iPad to all relevant the ports on the MioXM once I added Bome Network in place of RTP Midi. Until then, I did exactly what you do - blocking translators.

Again, the big mystery is that this works in BMTP on the Mac. The clock only doubles when I run it on the BomeBox.

Thoughts?

After sleeping on it, I decided to try putting the routing back in the MioXM and to use a single blocking translator to prevent an unwanted behavior - Camelot Pro on my iPad sends “Start” when I select a song. Hopefully that will simply everything and prevent whatever loop is doubling midi clock.

Hi,

If was working on the Mac but not BomeBox. I suspect the most likely cause is how you assigned one of the aliases on BomeBox.

Steve

Hi Steve,

I’ve completing simplified (as much as possible in this relatively complex rig) the routing. At this point all the routing is back in the MioXM, with the exception of iPad (BomeNet) to/from iPad (MioXM). That’s required (I believe) so that the iPad can talk to everything connected to the MioXM.

With the exception of the midi clock tripling (yes, it’s now 3x!) on my BeatBuddy, this version seems to work perfectly.

I connected my iPad directly to the BeatBuddy to assure myself that it’s not Camelot Pro on the iPad or something in the BeatBuddy itself. I also went through every single mapping both in the BomeBox (there are only the two alluded to above) and the MioXM, turning each off to see if the problem went away. It only stopped when I shut off the mapping from MioXM [14], which is connected to iPad (MioXM) in BMTP and the BomeBox. Of course at that point I could not longer control the BeatBuddy at all from the iPad!

I then connected this Mac to the MioXM “To Host” port and tested. No problem at all. Everything seems to work just fine.

I am sure you are right that I’ve made a mistake in the way I mapped the BMTP aliases to MioXM ports and/or the Bome Network. I have clue where and would greatly appreciate another pair of much more experienced eyes on this.

I’m attaching both the newer project with the much simpler routing, and screenshots of the mappings in the BomeBox.

I hope you can help. I’m pretty desperate here…

2021-12-23 Midi Clock Problem.pdf (1.5 MB)

Thanks,
Dov

The revised BMTP file:
DJG Midi 2021-12-23.bmtp (72.6 KB)

Hi,

Could you post me a snapshot on how aliases are assigned on both MT Pro and on your BomeBox. I think that is where we really need to look.

Also take a snapshot of your routing on BomeBox after the project file is loaded.

Also perhaps a snapshot of your mioXL routing but I’m less suspect of that since it is working with MT Pro on your Mac and only a problem on BomeBox.

Steve Caldwell
Bome Customer Care


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

Hi Steve,

I loaded all the screenshots into this one PDF. I hope this helps.

I truly appreciate your effort!

Thanks,
Dov
2021-12-23 Midi Clock Problem.pdf (2.4 MB)

Could you connect your iPad up to your Mac and then show the ports that are available from your iPhone? I’m suspecting that maybe it exposes more than one MIDI port and you are setting up the alias to the wrong MIDI port.

For instance, if I hook up my iPhone with the application for MIDI Keys set up. I see 3 ports as shown below.

I suspect somewhere in here is your alias assignment issue.

Although BomeBox exposes Remote MIDI Direct ports to computers, I don’t think the firmware yet supports recognizing Remote MIDI Direct ports. If you have multiple applications running on your iPad, this may also cause an issue but I think you don’t.
Also, if your iPad app is routing MIDI through, perhaps it is creating a MIDI loop itself. Maybe test this by disabling MIDI In to your iPad.

To test this theory. Unload the project file on the BomeBox and then. Set up an input route from your iPad to your computer to see which port on your iPad is actually being recognized on BomeBox.

iPAD → BomeBox → Computer running MT Pro - Monitor what is coming through.

Steve Caldwell
Bome Customer Care


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

Good stuff!

Here’s what I see on my iPhone, after connecting iPad → BomeBox → Mac:

More detail:

After connecting iPhone to BomeBox:


After connecting iPhone to iPad:

I unloaded the project on the BomeBox and created a route DoviPadPro → Dovs-MBP-3.

On the Mac, I connected to the BomeBox but not the iPad (is that what you meant?).

I made sure the iPad app is transmitting to “BomeBox” and hit controls to generate CC’s.

With my project open on the Mac and iPad (BomeNet) mapped to BomeBox - Net, I see the expected CC’s when hitting controls on the iPad app (Camelot Pro). When I turn on tempo on Camelot, I get a string of F8 in the Log Window.

I imagine the most relevant of the above is what’s exposed on this iPhone after connecting to the iPad.

Thanks,
Dov

The tripling of midi clock happens without the Mac running, meaning that I’m not adding another route out of the iPad to try Mac and creating a loop.

My intuition from the beginning has been a loop on the iPad itself, but I can’t explain that the problem doesn’t happen when I use the Mac and BMTP in place of the BomeBox.

I checked that in Camelot Pro’s settings Midi In and Out are both connected only to BomeBox - Net. I also verified that in a song where I’m seeing triple tempo, all the scene layers have only BomeBox - Net as input, and all instruments have only the scene layer as I put and BomeBox - Net as output.

Other than Camelot Pro, the iPad is running only Bome Network.

Not sure where else to look. It seems clean as a whistle.

I’m wondering if the outputs of the iPad Pro are being merged into one port. That is why I suggest having it hooked up to your BomeBox without a project file loaded and routing then routing to your Mac. Then check the various inputs on the Mac to see if the messages are coming through double or triple.

Steve Caldwell
Bome Customer Care


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

I did that.

CC’s are not being doubled.

With a single instrument in a layer on Camelot Pro (iPad) with tempo set to 20 BPM, I see what looks like 20 F8 messages per minute.

When I add another instrument to the layer, the F8’s come much faster.

My intuition is a problem in the way the newest version of Camelot Pro sends midi clock. But, I can’t square that at all with the fact that when I run BMTP on the Mac in place of rhe BomeBox (all else is the same as best I can determine), I don’t see double or triple clock.

I asked Audio Modeling to look into potential bugs with transmitting multiple streams of midi clock (1 per instrument), which I imagine is not correct.

I will let you know.

Happy holidays and thanks for the incredible support!!

Why is Beatbuddy input routed to iPad (BomeNet) on your mioXM? That might create a loop of sorts.

Page 13 of your PDF.

To enable commands from translators, which are all aimed at specific ports.

I checked that. Turning off that mapping doesn’t change anything.

I did find something suspicious:

I didn’t map “Network 1” anywhere. Thoughts?

You have DoviPADPro Mapped so it will use the generic Network 1 port which is the port between your BomeBox and iPad.

Somehow you need to monitory what is going into your BeatBuddy and tracing it back until the duplicate timing clocks go away. I would set a very slow BPS and monitory with timestamp on so you can tell with the dups dissapper.

Or you might want to use something other than timing clock to monitory so that you can single step and check for duplicates.

Steve

Camelot Pro may be sending to multiple ports on your iPad (each to it’s own instrument). On your Mac, you can probably just select one of the ports, but maybe on your BomeBox, the ports are being merged into the single input port of BomeBox since it will not recognize remote MIDI direct.

If adding and removing instruments within Camelot makes things change while connected to BomeBox only, this is likely what is happening.

If your final configuration still includes you MacBook, you might want to send all timing clock to the Remote MIDI direct port on your Macbook and then route from your Macbook there.
Not an optimal solution but that might work. Other than that, I would need to research how muliple ports from an iPAD effects BomeBox that does not support Remote MIDI direct input.

Steve Caldwell
Bome Customer Care


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

I only see the duplication with midi clock. CC’s and PC’s show up only once. I did try lowering the time clock to 20 bpm. I counted F8’s in the BMTP window and it seemed to be 20/minute until I added another instrument, at which it sped up dramatically. It seems pretty clear that something is happening in the iPad.

I think that the ball is in Audio Modeling’s court for now. It does seem that each instrument in a layer is sending midi clock again into the stream.

The disconnect with the Mac/BMTP and no such symptom vs BomeBox exhibiting this behavior may actually be explainable. When I take BomeBox out of the loop, midi flows through a different path.

I saw this behavior on a previous version, which they subsequently fixed.

I don’t keep the Mac in the picture. I use it only to configure my gear and build the BMTP program. The lovely BomeBox makes a computer absolutely unnecessary - such an awesome thing!

This will get figured out.

Hi,

Maybe the workaround solution is to remove all MIDI static routing and then add translators to allow MIDI clock as translators to each specific device.

I often run into problems where I set static MIDI routes. May not be worth the effort now tho so see what Audio Modeling comes back with. I’m not using their app. I’m testing with my iPhone using MIDIKeys, Knob Lab and Touch OSC. I’m not seeing any duplicate messages coming in from any of these apps and it appears there is no merge function within BomeBox as they only recognize data on the main network port.

Steve