Aftertouch event arriving in wrong order and choking cymbal before it can play

Cubase 12.0.40 Build 317
Bfd Drums v3.4.3 build 7 64-bit (installed as plugin)
Roland TD-50

I have a setup where we rehearse a song live in headphones with acoustic guitar, bass and electronic drums. Bass is direct, acoustic is processed through an Axe-fx III and the drums are connected via usb and trigger BFD. Everything in this scenario works perfectly. These performances get recorded.

However, when playing back (not during the live performance), I have an issue with the crash cymbals. Usually, but not 100% of the time, the crash cymbal is getting choked. Following is a MIDI log from BFD.

Note that the first yellow highlighted group, is NOT from playback, but rather from a single strike on the crash. As expected, there is an aftertouch event, which would stop any previous cymbal on that key before the sample is played again from the beginning. That works just fine. Also note in the second image, that BFD is configured to ‘choke on aftertouch’. This allows the drummer to choke the cymbal manually if desired, so turning it off is not really a desirable solution (the sound does go unchoked if this is unchecked).

Now note the second highlighted group. These are the events received by BFD when cubase plays back the same midi event. Now the aftertouch comes immediately after the note on, consequently choking the cymbal sound.



Below is a capture of the MIDI list in Cubase. As can be seen, the aftertouch (poly pressure) follows the note on, explaining why BFD reports the events in the order that it does.

As mentioned earlier, this does not occur 100% of the time. Following are the MIDI events on an occasion where the data is correct and the cymbal triggers and plays as I would expect. The aftertouch is first, followed by the note on,

So what I am seeking here, is a confirmation that what I am seeing is a bug, or an explanation of what I am missing or do not understand. The rough work around for the moment is to uncheck ‘choke on aftertouch’, at the expense to the drummer, disallowing him to manually choke.

If we are dealing with a bug, can somebody tell me how I push this upstream to the developers so they can review. I have never had occasion to do that.

Any input is sincerely appreciated.

Not sure, if it will help your setup, but maybe try to experiment with some of the settings to use System Time Stamps to see if that makes a difference in maintaining the order of midi events that show up on the same MIDI tick?

@Nico5 - Appreciate the suggestion. I read the page at the link you offered. Unfortunately, I tried the various options there, but with no luck. Seems curious to me that nobody else has chimed in, stating they have seen this issue. Does not seem like a thing that would be specific to one users machine, and surely this scenario would have to happen frequently, considering the components (Cubase, BFD3 and Roland TD-50) are very common. So I’m baffled.

I still have Cubase 11 installed, so I decided to try it there as well. Same problem.

I am going to create an issue thread, but if anybody has a similar setup, I would love to hear what results they have, recording a crash and seeing if the choke comes afterwards on playback.

Not everyone can afford a nice TD-50 :slight_smile:

Have you tried to monitor the incoming MIDI messages with some MIDI monitoring tool (i.e. totally outside of Cubase) and see if you get similar occasional re-ordering of these identically timed midi messages? Or is there evidence that the re-ordering only occurs in Cubase?

For example on Windows, I typically use the great MIDI-OX utility to see what MIDI is coming in. Not sure what MacOS users typically use these days.

The issue you’re experiencing has been around for some years - you can probably do some web searching for MIDI messages with the same time stamp being re-ordered in some circumstances.

This re-ordering might happen anywhere in the flow of MIDI messages from your TD-50 to Cubase. (Is the TD-50 connected to your computer via USB or via a MIDI cable through a separate MIDI interface?) So it could happen in a MIDI interface device or a MIDI device driver or in the operating system itself. o

I’d also check if the TD-50 is fully firmware updated, because ideally it should send those messages with slightly different time stamps to avoid the MIDI re-ordering problem.

@Nico5 - Nice suggestion. I will try the MIDI-OX utility. I have no evidence that the re-ordering only occurs in Cubase at this time. The TD-50 is connected via USB.

1 Like