Midi clock

Hi,

I've got a drum machine, master clock, in midi DIN in, going out midi DIN out of the bomebox.

If I create routes (Midi DIN IN -> Midi DIN OUT), the clock works fine.

But if I do it in a script (see btmp file attached, the preset is called : digitakt In->Out), the synchronisation is out of control :

  1. the slave sequencer works (play & stop)
  2. but the tempo is very irregular and roughly 2 times the normal tempo (master : 90bpm, slave between 160 & 200bpm)

Any idea about what is missing in this script, or what I do wrong ?

Thanks a lot !

PS: the script is not from me, I don't remember where I found it (forum? video ?), but I'm pretty sure it's Steve's one.


Attachments:
1567091190352_channel-change-seaboard.bmtp

Hi,

Try the attached and see if it works better. What I did:

  1. Reversed the order of bytes translators. Instead of 3 bytes then 2 bytes then 1 byte, I made it 1 byte, 2 bytes, then 3 bytes
  2. Put Stop processing after each translator. For a computer the MIDI driver usually knows how many bytes are in the message, but this is not always true for MIDI DIN connections.

To make it even more robust your might want to use incoming F8, FA, and FC as three separate translators instead of just oo as a single tranlaor. For instance, if the timing of the incoming message of the MIDI port is a bit slow, a 3 byte message actually may be interpreted as 3, 1 byte messages, so best to make the pattern more complete to avoid this.

Again this is usually not a problem with a USB MIDI driver that does some byte length interpretation. It would only be an issue with MIDI DIN which has no concept of completeness of MIDI messages.

I think I will discuss with Florian to see if he has any plans to interpret raw MIDI messages on DIN ports to validate the required length of them. It may be more complex to do this however, for instance if you are looking for a sequence of multiple MIDI messages as raw byte like 3 separate note messages like 90 02 7F 90 03 7F 90 04 7F. This is really 3 3 byte messages but having an input pattern like this can make MT Pro (and BomeBox) more powerful by interpreting a longer sequence of MIDI events.

 

 

Steve Caldwell
Bome Q and A Moderator and
Independent Bome Consultant/Specialist
bome@sniz.biz


Attachments:
1567098298139_channel-change-seaboard-2019-08-29.bmtp
1 Like

Thanks very much, that works !

And in addition, I’m going into midi in Din on the bomebox, but now I’m going out with midi USB.

Do you know what is best concerning stability ? Because I could do everything with midi over usb. I’ve read the cons :
– slightly slower (but nothing really, doesn’t make a difference for me)
– less ground isolated

But what are the pros ? Will my setup be more stable if I use only midi over usb ?

Thanks !

I think actually MIDI over USB would be faster for long MIDI messages like System Exclusive but maybe a bit slower for 1-3 byte messages because of the USB overhead. I might be wrong though as processing USB messages is pretty darn fast.

MIDI over USB could be better for 2 way communications because you have 1 cable instead of 2. Also since BomeBox only has 1 set of DIN connectors but with a USB hub, you can get multiple connections over USB into your BomeBox.

Typically I only use the DIN connection for concerns about ground isolation or on older legacy gear that only has DIN.

1 Like

If I want to forward the start stop and clock messages from my sequencer to BMT then from there I can use a virtual port to provide clock to the gear that needs it.

 

What messages need to be forwarded to constitute a full clock signal? I tried with start stop, timing clock and continue song messages but ableton still doesn't recognise them.

 

 

If I want to forward the start stop and clock messages from my sequencer to BMT then from there I can use a virtual port to provide clock to the gear that needs it.

What messages need to be forwarded to constitute a full clock signal? I tried with start stop, timing clock and continue song messages but ableton still doesn't recognise them.

 

SJC> For sending full MTC (MIDI Timing clock) messages to your gear, it would be best to

  1. Create static routes between your source devices and the devices that need the time click
  2. Add translators that block any other messages that would otherwise pass through. Usually these are any 2 or 3 byte MIDI messages so if you put rules for:

Input : Raw MIDI oo pp

Output: None

Input: Raw MIDI oo pp qq

Output: None

And set swallow on for both translators, you should be covered for most other MIDI messages.

Or you could be more specific and block:

Input: Note-on any channel any note

Output: None

Input: Note-off any channel any note

Output: None

Program Change any channel any value

Output None

CC any channel any CC any value

Output: None

 

Steve Caldwell
Bome Q and A Moderator and
Independent Bome Consultant/Specialist
bome@sniz.biz

1 Like

How does this apply for Midi Clock instead of MTC? Is it the same principle of filtering any additional messages from that input?
Squarp–>BMT 2 --> any devices needing start stop and Midi clock. With notes and ccs filtered. T
If i understand correctly this will only forward timing information to BMT 2 out?
And Ableton will get it’s ‘sync’ signal from This channel?

How does this apply for Midi Clock instead of MTC? Is it the same principle of filtering any additional messages from that input? Squarp-->BMT 2 --> any devices needing start stop and Midi clock. With notes and ccs filtered. T If i understand correctly this will only forward timing information to BMT 2 out? And Ableton will get it's 'sync' signal from This channel?

SJC> You can do it either way. Clock messages themselves are a single byte and defined as a proper incoming action. They have no channel. Depending on the implementation of the DAW, start,stop may be MMC messages or may be implemented as simple note messages.

In general if you use the static router, you must suppress anything you do not want to go through the default routes with translators. If you don't use the static router, then you need to create translators for anything to go through. So the choice is usually what implementation would require the creation of the least amount of translators.

Steve Caldwell
Bome Q and A Moderator and
Independent Bome Consultant/Specialist
bome@sniz.biz

Hi,

I have similar question here. I am new to BomeBox and Bome Network and exploring possibilities. I would like my Daslight4 (application on laptop running Bome Network) to receive clock from digital piano with sequencer setup as clock master (connected to BomeBox via DIN).
I can see notes in and out and everything else in Daslight MIDI log file but it looks clock is somehow filtered.

I was able to have sync clock functioning when piano was directly connected via my soundcard’s MIDI port. So I think my setup is correct.

Do I need to purchase MIDI Translator Pro and setup some special rules?

Thank you for help.
Pavel

Hi @pavel2 and welcome to the forum.

You can set up a MIDI path between your MIDI DIN Port on on your BomeBox and the laptop network port . Then any thing you send to the to DIN port on your BomeBox will pass thru to the network port on your computer. You will need to have Daslight set up to read the BomeBox network port which should be the same name of you BomeBox.

If you are using Remote Direct MIDI ports, you might want to instead just open that up on Bome Network and on your laptop, just connect to it directly.
It would show as “BomeBoxName:BomeBox DIN” on your computer. In this case, no MIDI routing would be needed on the BomeBox.

Steve Caldwell
Bome Customer Care


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

Hi Steve, all,

issue was on my side and got this working. It turned out Sync Output was turned off on the keyboard. I had not writen settings to memory when previously experimenting with soundcard so setup has been only valid for current session and was lost whe I turned off the keyboard.

So valid setup for Roland FA08 is:
Menu / System / SyncTempo tab, then:
SYNC MODE: MASTER
SYNC OUTPUT: ON

I also found clock over Wifi is pretty unstable and oscilating. No issue over the ethernet.

I hope this will help someone.
Thank you for help.

Pavel

Great, Pavel!

Thanks for the follow-up!

Steve Caldwell
Bome Customer Care


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