UPD: that idea was a brainfart caused by me not knowing that MIDI signal can only go downstream by design. A more realistic solution is to use external MIDI Master Clock as suggested by others.
Below is my original message.
While there are plans to implement Aeros being a master, I feel that it’s still a limitation if only either Aeros or BB could be a master or slave for a particular song.
An example of what I want to do:
As usual, start song with an intro fill on BB, and start recording on Aeros: BB acts as a master here
After some time, pause BB, but keep playing Aeros; also may switch song parts as I want, may pause Aeros and start it again, etc: i.e. Aeros acts as a master now because it’s playing while BB is not
After some time, start BB again, and it should wade in with a nice intro fill, exactly in time with the measures as Aeros is playing right now.
So basically, whenever only a single party is playing, that party should become a master.
I’m not sure you’ve read my initial message, Raphael. 2.13 does make so that Aeros (not BB) starts/stops at the measure boundary, which is nice, but it’s not at all what this thread is about. This thread is about switching master/slave roles on the fly, so that if BB is a master, then I stop BB while aeros is still playing, then Aeros should become a master, and then, when I start BB again, then BB should start perfectly in sync with the Aeros which is already playing.
I’m not sure if BB itself supports that at the moment.
If you have a constant master clock (independent of starting/stopping either unit), then I think all you need is to have the start (for either device) wait until the end of the measure.
Pretty sure the BB added a setting that keeps the clock going when stopped. Aeros 2.13.1 added “Aeros will now start at the End of Measure if receiving MIDI Clock”.
Seems close, if not exactly what the OP asked for. Not sure how this works in practice.
Agreed. I’ve been thinking about how one would implement a non-constant master, and I am at a loss as to how that could be made to work. My best solution would be to have a pair of sysex commands sent to reset the master/slave status on each device. I am not sure if that capability could be made to be present in the BB. It is more likely a possibility in the Aeros as that is newer technology, and it is still being fully developed.
More conceivable would be a means to have adjustable tempo, which we have with the Maestro/BB combo, and then have a 1 beat per measure setting to have as much flexibility as might be needed.
As long as tempo can be adjusted and both the BB and the Aeros can remain in sync, having a floating master should not be necessary.
I hope I’m not speaking out of ignorance as I do not own a Beat Buddy, but is the MIDI communication between the BB and the Aeros bi-directional?
The reason I ask is, I have a long experience with MIDI Clock and Transport Commands over the Serial/Daisy Chain DIN topology and the device that is Master has to be physically connected before the device that is Slave. You can’t switch these roles on the fly without some sort of bi-directional communication so that either device can send signals to the other. In the Serial DIN topology, this is tricky because it is very easy to cause a feedback loop unless all the devices handle thru data well and filter out any feedback causing data.
So, I have run into the same kind of wish you have between 2 other looping devices where I require either of the devices to be running at any given time while the other is stopped, and what I’ve done is added a third device that is specifically for being the Master clock. The other 2 looping devices are always slaves to that clock when it is running, and either device can be stopped or started at will. The device I have is a Molten Voltage TEMPODE. All it ever does is behave as the master clock on my pedalboard. I also have a Morningstar Foot Controller that can send clock which I could make the master as well.
So I have the option of running a Master Clock that will keep both devices in sync, I can stop or start either device independently while maintaining overall sync, or I can stop the Master Clock entirely and let either device run under it’s own timing conditions.
IMO, though this adds a 3rd device (if the MIDI foot controller you may already be using can’t handle it), it’s a cleaner system to use and control instead of expecting the 2 looping devices to know how to treat, listen for and/or send a Master Clock signal. At least there is some opportunity for success here given that the 2 devices you are using are the same vendor, but generally I’m using devices from different vendors and they all have slightly different ideas how to behave.
Hardware does allow bi-directional communication: BB with its MIDI breakout cable has both MIDI IN and OUT, and Aeros has two separate jacks for MIDI IN and OUT.
@Quad , @RockDebris , you both talk about having an external Master Clock device, to which BB and Aeros will be slaves. I actually like that, it’ll mostly solve my wishes. However, as @Quad pointed out,
Yeah right, so Aeros already does this in 2.13 beta, but can BB do this? I don’t yet have external master clock so can’t verify; and the following point makes me doubt that BB can do that:
That’s right, but the problem is that even though the clock keeps going while stopped, that clock gets reset when I hit the start button on BB! That really sucks, I want intro fill to be sort of like just a regular fill (don’t know what’s the right term for it), I mean, no matter when I hit the start button on BB, the intro fill only continues until the end of the current measure, it can be almost full measure or some very short time, doesn’t matter: the clock shouldn’t be reset. Do you know if BB has an option to do that? I failed to find it, sadly.
So again, I don’t mean to speak out of ignorance of the BB so I really hope someone will step in here if I’m wrong, but a device that has MIDI IN and OUT does not make me think it has bi-directional communication, that’s still a serial topology, meaning something can come before the BB and send it commands, and something can come after the BB which it can send commands to (or forward commands on via a THRU setting). Everything flows downstream. If you try to hook up the BB MIDI OUT to the Aeros MIDI IN and the Aeros MIDI OUT to the BB MIDI IN, a MIDI feedback loop is the expected result unless both devices have been programmed in some special (unusual) way that goes against MIDI DIN transport specs.
Unfortunately for your needs, it is common for a device that is functioning as a Master clock to also reset the start time. This is not the only device I’ve run across that behaves this way when configured as Master; I believe it is because when configured as Master, the loop start command is also the MIDI Transport Start command. The MIDI Transport Start Command and the MIDI Clock are tied together for instant execution.
A Slave device that is stopped, but which has been listening to the Master Clock the whole time, can typically queue up it’s Start command to sync to the running clock’s first down beat of a measure. They can also queue their Stop commands for the end of the measure, or like in many cases stop immediately with a double tap.
All of this is precisely why I use an external Master Clock for complete control. You may not have even got to Stopping yet. That’s another area where it is nice to have an external Master Clock. Stop the Master Clock, everything stops (full stop), but with the Master Clock running you can stop either of the loop devices without effecting the other in any way (selective stop). Ultimately an external Clock will sever any dependency that exists between how two devices function.
It’s great that devices implement the ability to be a Master Clock, not all do. It works for a narrow path of execution. And I’m sure there may be some special designs going forward how BB and Aeros can work together, but its a common situation to get two looping devices and come up short with your desired goals until you have an external clock.
You are absolutely correct. The devices are not capable of bidirectional communication. The BB can be a master or a slave, but only one at a time. The idea that we could have a non-static status is unrealistic.
Ok I see, thanks a lot for eliminating my MIDI illiteracy guys. Special thanks to @RockDebris for such detailed and informative messages.
Before I go ahead and order some MIDI Master Clock device, can someone confirm that having input clock, with MIDI IN configured on BB, when I hit the start button on BB itself, BB will do the following:
Play intro fill until the end of the measure (be it almost full measure or some very short time)
After the end of the measure, start playing regular drums
Or does it do something else?
(I should probably ask that in the BB forum, but since we’re all talking here about MIDI, just continuing conversation in this thread for now)
I disagree. He is asking for bi-directional midi communication in Aeros and BB. AFAIK, neither of these units was designed to meet MIDI 2. They both would need to be re-engineered to meet MIDI 2. Maybe that’s conceivable for the Aeros. I don’t see how that is remotely conceivable for the BB.
And, when the question was posed, there was no MIDI 2.