Short description of the issue: Sometimes simultaneous press of Play and Mute makes Midronome crash.
Setup (devices connected to the Midronome and how): Macbook Pro with Ableton Live via USB.
Steps to Reproduce: Press Play and Mute buttons simultaneously (or maybe slightly delayed).
Expected Behavior: Start Play and unmute the metronome.
Actual Behavior: Midronome crashes resulting in a crazy fast pulses noise and screen getting weird
ErrorLog (from the ErrorLogExtractor - https://midronome.com/support ): F00F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F09060000000000000800070001000200030001000200020000000100000001000000010000000200020001000000000000000000000000000000000000000100F7
I can’t add a video file, so I’ll send it to your email
Has the Midronome firmware been recently upgraded, I upgraded the firmware when it arrived to 0.1beta
---
EDIT by Simon: topic moved to Questions
[Solved] Crash with Play and Mute simultaneous press
Re: Crash with Play and Mute simultaneous press
Yay, an *actual* bug - well done this is officially the first bug found in firmware 1.0
It sounds easy to solve - I'll look into it and should be fixed in next firmware
It sounds easy to solve - I'll look into it and should be fixed in next firmware
Re: [A] Crash with Play and Mute simultaneous press
Hi Saw
I've been trying to reproduce the error, without success. I've been butchering the mute and play button, tried a few different combinations and could not get it to crash. The log you gave me from the ErrorLogExtractor gave me your settings so I have the exact same settings.
Can you tell me a bit more info:
Simon
I've been trying to reproduce the error, without success. I've been butchering the mute and play button, tried a few different combinations and could not get it to crash. The log you gave me from the ErrorLogExtractor gave me your settings so I have the exact same settings.
Can you tell me a bit more info:
- Can you reproduce it easily (say within a 10-20 attempts)?
- Does it happen when the metronome is muted (Mute button lit), and/or unmuted (Mute button not lit)?
- Does it happen when the device is playing (Play button lit) and/or when it is not (Play button not lit)?
- Does it happen if you only press the Play button, without pressing the Mute button at the same time?
- When it does happen, would you say you are pressing the Play button or the Mute button first? (if you do not know, can you then try where you always press Play first?)
Simon
Re: [A] Crash with Play and Mute simultaneous press
Hi Simon,
Sorry for the late reply. It’s weird that I can’t reproduce the bug now. Anyway, my answers to your questions:
1. When I posted it was quite easily reproducible, as shown in the video I sent you.
2 & 3. In the video I sent to you it happens with Mute on / Play off. I’m not sure if happened the other way around.
4. I only could reproduce it pressing both buttons at the same time. I actually discovered this by my need to have it muted while in stop (this could be added as an option!)
5. I can't tell, as I can't reproduce it right now.
So, again, I don't know what caused this to happen the day I reported it. I'm happy that it doesn't right now, but the fact that we don't know the cause and it could happen again makes me hesitant to use it in live scenario right now. Could this maybe have to do with some MIDI feedback with the Play/Stop commands? Although I can't reproduce it with all that activated either.
Fernando
Sorry for the late reply. It’s weird that I can’t reproduce the bug now. Anyway, my answers to your questions:
1. When I posted it was quite easily reproducible, as shown in the video I sent you.
2 & 3. In the video I sent to you it happens with Mute on / Play off. I’m not sure if happened the other way around.
4. I only could reproduce it pressing both buttons at the same time. I actually discovered this by my need to have it muted while in stop (this could be added as an option!)
5. I can't tell, as I can't reproduce it right now.
So, again, I don't know what caused this to happen the day I reported it. I'm happy that it doesn't right now, but the fact that we don't know the cause and it could happen again makes me hesitant to use it in live scenario right now. Could this maybe have to do with some MIDI feedback with the Play/Stop commands? Although I can't reproduce it with all that activated either.
Fernando
Re: [A] Crash with Play and Mute simultaneous press
Thank you for the reply Fernando. I'll give another go at reproducing the issue. There must have been something that you were previously doing that caused the bug to appear, maybe some stuff running in the background, data sent to the device over USB for example.
I have your precise configuration from the ErrorLog you sent - but that's the configuration you had at the moment where you ran the ErrorLogExtractor tool. Maybe you the configuration you had when you could reproduce the bug was different and that's why I could not reproduce it?
Here are the settings from that ErrorLog you sent:
If you remember anything that could help reproduce the bug be sure to let me know.
Once the issue is reproduced it should be relatively easy to solve
Simon
I have your precise configuration from the ErrorLog you sent - but that's the configuration you had at the moment where you ran the ErrorLogExtractor tool. Maybe you the configuration you had when you could reproduce the bug was different and that's why I could not reproduce it?
Here are the settings from that ErrorLog you sent:
Code: Select all
Tempo = 105
Vo.1 = 8
Vo.2 = 9
CL.1 = 1
CL.2 = 2
bAr = 4
inp = Ped
Ped = tap
Pe.2 = PLA
Pe.t = SuS
An.L = On
An.1 = 1
An.2 = 2
PLA = bot
Res = On
Loc = Par
LED = HIG
Bri = 003
Once the issue is reproduced it should be relatively easy to solve
Simon
Re: [A] Crash with Play and Mute simultaneous press
Hi Simon,
Well, that’s what I pointed, Ableton Live was sending MIDI via USB to the Midronome, while Midronome was starting Ableton Live, so I don’t know if maybe the Start/Stop commands sent back to the Midronome could have something to do. Although I’ve been testing it with the same project I was testing it the faulty day.
Also, I can tell you that I got the same bug with a different configuration, as I remember to have been testing two pedals attached, being Ped = mute and Pe.2 = play, and the bug was happening pushing the pedals at the same time too.
I’ll let you know if I find out something else.
Fernando
Well, that’s what I pointed, Ableton Live was sending MIDI via USB to the Midronome, while Midronome was starting Ableton Live, so I don’t know if maybe the Start/Stop commands sent back to the Midronome could have something to do. Although I’ve been testing it with the same project I was testing it the faulty day.
Also, I can tell you that I got the same bug with a different configuration, as I remember to have been testing two pedals attached, being Ped = mute and Pe.2 = play, and the bug was happening pushing the pedals at the same time too.
I’ll let you know if I find out something else.
Fernando
Re: [A] Crash with Play and Mute simultaneous press
Good news Fernando, I was able to reproduce the issue. I thought it was an actual bug in the Midronome (an endless loop), but it is not! So still not a single bug found in the code - that's crazy
Also it has nothing to do with the Mute button, it's a combination of a strange Ableton behavior (one could call it a bug), and the Reset mode of the Midronome.
Summary
It's a loop between Ableton and the Midronome over the USB-MIDI.
Code: Select all
Midronome sends Start+stop to Ableton -> Ableton sends Start+stop to the Midronome (-> and so on)
So to prevent it from happening:
- deactivate "Sync" for Midronome Commands in Ableton's Preferences (see screenshot)
- or do not use the Reset Mode (rES setting to OFF on the Midronome)
Analysis & long explanation
Even though there is a loop, this should not happen, and there's a reason why it only happens in Reset Mode. The Reset Mode used to be very "aggressive", simply resetting right away no matter where the clock was. This created issues in some of the receiving devices which did not like being "reset". So now it is softer, it only resets on the next MIDI Clock (which means that at low tempos there can be a tiny delay between the press of the button and the actual reset, max 83ms at 30bpm).
This worked with all devices that had issues with the aggressive reset mode. But my guess is Ableton still gets bothered by the reset, depending on when the MIDI Start message is sent according to the clock.
See the attached screenshot of a MIDI monitor:
- At 10:00:10 Play is pressed -> Midronome sends SPP 0 and Start, then Ableton sends SPP 0 and Start (which are ignored by the Midronome), so all is good
- At 10:00:12 Play is pressed again -> now Midronome sends Stop, then Ableton sends Stop (also ignored), all is still good
- At 10:00:14 Play is pressed again and this time the issue happens: Midronome sends SPP 0 and Start, and Ableton sends SPP 0 and Start (ignored by the Midronome)... followed by Stop, SPP 0, Continue!! (highlighted line on the screenshot)
- These messages get the Midronome to send Stop to Ableton and Start right after, which are then sent by Ableton to the Midronome, and so on... And there we have our loop. To stop it you can simply press the "Ext" button on Ableton.
Maybe this could be improved on the Midronome by adding extra checks on when the MIDI Start message is sent (since this does not happen every time), but for now unless you or someone else has something to say about this I will close the issue stating in the manual that you cannot use Sync on both Clock&Start and Commands if you are using the Reset mode.
Re: [A] Crash with Play and Mute simultaneous press
Hi Simon,
Well, it all makes so much sense. It's actually what I was suspecting.
Thanks for the great explanation.
Fernando
Well, it all makes so much sense. It's actually what I was suspecting.
Thanks for the great explanation.
Fernando