[R] Midronome sends incorrect clock after stopping DAW (24P mode)

Report any bug you find here!
Topics ar marked as: [R]=Rejected, [A]=Approved, [WIP]=Work in Progress, [F]=Fixed
Post Reply
MPrinsen
Posts: 76
Joined: 01 May 2023, 13:42

[R] Midronome sends incorrect clock after stopping DAW (24P mode)

Post by MPrinsen »

STATUS: bug was introduced in Firmware 3.0, on the 24P mode. Will be investigated and solved in a future version.

----

Hi Simon,

I use the new 24P mode in 2.90 beta using Ableton Live 12 with the Midronome plugin.

Whenever I now stop Ableton Live 12, the Midronome does also stop as expected. However, it seems to still send a few pulses to my other gear before it sends a stop message, as my other gear then show a BPM of about 29.

This can be annoying whenever I want to start the outboard gear on their own without starting the DAW.

When I Start/Stop the Midronome on its own (without starting the DAW), it works as expected: the other gear will just stop and won't change the tempo.
Simon
Posts: 882
Joined: 09 Jan 2022, 22:08

Re: Midronome sends incorrect clock after stopping DAW (24P mode)

Post by Simon »

Hi Maarten,

Thanks for reporting. A few questions:
  • Is this new with FW 2.90, i.e. this is not the case with FW 2.0?
  • How is your other gear connected to the Midronome, via MIDI?
Thanks
Simon
MPrinsen
Posts: 76
Joined: 01 May 2023, 13:42

Re: Midronome sends incorrect clock after stopping DAW (24P mode)

Post by MPrinsen »

Simon wrote: 30 May 2024, 13:44 Hi Maarten,

Thanks for reporting. A few questions:
  • Is this new with FW 2.90, i.e. this is not the case with FW 2.0?
  • How is your other gear connected to the Midronome, via MIDI?
Thanks
Simon
I think so, but not 100% sure. I compared the 24P mode in 2.90 vs the 2.4.P. mode in 2.0. Maybe the original 24P mode in 2.0 had the same issue already?

I will do some more testing. Is it possible to downgrade to 2.0 without any troubles?
Simon
Posts: 882
Joined: 09 Jan 2022, 22:08

Re: Midronome sends incorrect clock after stopping DAW (24P mode)

Post by Simon »

Thank you Maarten, that would be great!
Yes you can freely upgrade and downgrade, no problem there ;)
MPrinsen
Posts: 76
Joined: 01 May 2023, 13:42

Re: Midronome sends incorrect clock after stopping DAW (24P mode)

Post by MPrinsen »

Hi Simon,

I did some more testing.

First of all, I connected my Midronome directly to my Hapax midi input with a DIN cable.

Then I started playback in my DAW at 130 BPM, using the "old" Midronome plugin to send pulses.

Midronome starts, Hapax starts as well and everything works fine, running at 130 BPM.

Then I stop playback in my DAW, Midronome correctly shows STOP on the display and stops sending clock. Hapax also stops playing, but the tempo drops to about 30 BPM.

Then I disconnected my Hapax and connected my Iridium directly to Midronome instead. Same issue, but the tempo doesn't drop as low as Hapax: it drops to 113 BPM.

It seems that Midronome sends 1 or a few pulse(s) after the STOP message or something, which causes the BPM calculation of the external device to drop.

Then I downgraded Midronome to 2.0 and tested both 24P and 2.4.P. mode and both were doing perfectly: when pressing stop in my DAW, everything stops correctly and the tempo stays at 130 BPM.

So it is an issue introduced since 2.9.0 beta and also present in 3.0.0 (tested both versions - both exactly the same issue).


It is a bit cumbersome, for multiple reasons:

- When I want to save a project or patch etc., often the BPM is also saved within the project/patch. So I have to manually change the tempo back to the BPM I want when saving, or (if possible) I need to save during playback.
- I often switch back and forth between having the DAW as midi clock master to using my hardware as master clock. Obviously this is painful if you need to manually adjust the BPM every time you switch back to your hardware.
- It can cause unwanted audio artefacts, like a time synced delay feedback tripping because of the sudden tempo drop.
- And I'm sure there are more reasons which I can't come up with.

However, it is not a major issue. It would be nice if it will be fixed in the future though.
Simon
Posts: 882
Joined: 09 Jan 2022, 22:08

Re: Midronome sends incorrect clock after stopping DAW (24P mode)

Post by Simon »

Awesome Maarten, thank you, much appreciated. Yes this sounds like a bug introduced in the 3.0 firmware, I'll investigate and get back to you here.

PS: topic moved to bugs category where it belongs ;)
MPrinsen
Posts: 76
Joined: 01 May 2023, 13:42

Re: Midronome sends incorrect clock after stopping DAW (24P mode)

Post by MPrinsen »

Simon wrote: 05 Jun 2024, 21:27 Awesome Maarten, thank you, much appreciated. Yes this sounds like a bug introduced in the 3.0 firmware, I'll investigate and get back to you here.

PS: topic moved to bugs category where it belongs ;)
Awesome!
Simon
Posts: 882
Joined: 09 Jan 2022, 22:08

Re: [A] Midronome sends incorrect clock after stopping DAW (24P mode)

Post by Simon »

Hi Maarten

So I've investigated this. The good news is I know exactly what is happening. The bad news is I am not sure if there is much I can do about it.

TLDR: you should be able to solve this by making sure your devices always set their tempo to the incoming clock, whether they have received a MIDI Start or not. The MIDI Clock is always sent by the Midronome at the tempo shown on its display, whether the "PLAY" button is lit or not. So even though they might drop to 30bpm for a very short time (see explanation below), they should go back to 130bpm right after (about 20ms later).


Technical explanation:

The problem starts with the way the 24P mode "stops": the device only receives "pulses" from the plugin, and because there is no way to know if the tempo suddenly jumped to 30bpm or if the pulses stopped, the device will wait till the tempo drops down lower than 30bpm before considering the plugin has "stopped".

On the MIDI Clock output side, this means the clocks will stop inevitably for a "30bpm MIDI clock" time (about 83ms). So, after those 83ms, the device decides "ok, this tempo is now so low that this means the DAW/plugin stopped", and sends stop and switches back to master mode at the last tempo received (in your case 130bpm).

This technically should not be a problem with any synth: as I wrote above, they will see their tempo drop to 30bpm (or lower) for a fraction of a second, and then go straight back to 130bpm which is the MIDI Clock sent right after the MIDI Stop command.

Now why is it working in FW 2.0?
As I've mentioned in the changelog, a lot of things have been improved with the sync in FW 3.0, and funny enough the reason you do not see the issue with FW 2.0 is because the delay is worse - i.e. it would bring the tempo so low (about 23bpm) that your Hapax ignores it. FW 3.0 does its best, so as soon as the tempo reaches 29.55bpm, it sends a clock already, which your devices read as 30bpm.

See attached a recording of the Plugin pulses (bottom) as well as the Midronome's MIDI output (top).
The large black blob are all the "MIDI notes off" messages sent for every channel).

Notice how in both cases there is a "hole" of MIDI clocks when the DAW plugin pulses stops. In FW 2.0 the hole is bigger, the first MIDI Clock is sent only after the MIDI notes off messages, while with FW 3.0 it is sent as soon as the stop is detected (bringing the tempo to 29.55bpm).

FW3.0:
FW-3.0.png
FW2.0:
FW-2.0.png
Simon
Posts: 882
Joined: 09 Jan 2022, 22:08

Re: Midronome sends incorrect clock after stopping DAW (24P mode)

Post by Simon »

MPrinsen wrote: 06 Jun 2024, 00:36 Awesome!
Hi Maarten, have you had a look at what I wrote above?

Cheers
Simon
MPrinsen
Posts: 76
Joined: 01 May 2023, 13:42

Re: Midronome sends incorrect clock after stopping DAW (24P mode)

Post by MPrinsen »

Simon wrote: 06 Jul 2024, 11:28
MPrinsen wrote: 06 Jun 2024, 00:36 Awesome!
Hi Maarten, have you had a look at what I wrote above?

Cheers
Simon
Hi Simon, sorry for the late response.

Anyway, I get why it works like this now. However, it would be nice if an option would exist that allows Midronome to take over the "lead" and keeps sending midi clock, after the external pulses stop. Ideally, it should then send the original BPM and "catch up" the few ms it needed to conclude the external clock is stopped (lower than 30 bpm).

I hope you get what I mean.
Simon
Posts: 882
Joined: 09 Jan 2022, 22:08

Re: Midronome sends incorrect clock after stopping DAW (24P mode)

Post by Simon »

MPrinsen wrote: 10 Jul 2024, 20:57 Ideally, it should then send the original BPM and "catch up" the few ms it needed to conclude the external clock is stopped (lower than 30 bpm).
You mean so that the timing is continuous? That's a whole different deal, and U-SYNC already does that extremely well.

As for sending the tempo when the pulses stop, it does that already as you can see in the pictures above. Why your machines are ignoring it I am not sure - have you tried a few different settings on them?
MPrinsen
Posts: 76
Joined: 01 May 2023, 13:42

Re: [R] Midronome sends incorrect clock after stopping DAW (24P mode)

Post by MPrinsen »

I guess I have to do some more testing. I suspect that my gear is set to Auto and when it receives a Stop message, it reverts to its internal clock, so it stops calculating the incoming midi pulses.
Post Reply