[sdiy] Handling MIDI Running Status from Power-up
Tom Wiltshire
tom at electricdruid.net
Thu Nov 14 16:57:12 CET 2019
> On 14 Nov 2019, at 15:45, Neil Johnson <neil.johnson71 at gmail.com> wrote:
>
> On Thu, 14 Nov 2019 at 15:34, chris <chris at chrismusic.de> wrote:
>>
>> That's what I thought too, but the *sender* would have to recognize the
>> interruption, in order to send a fresh status byte.
>>
>> It's correct that the *receiver* is able to notice missing Active Sense,
>> but in this case it can't make any use of it - it still doesn't know the
>> missing status byte.
>>
>>
>> If the MIDI gods had thought of acknowledged Active Sense, this would
>> work.
>> But then, with some dozen other bells'n'whistles, we'd have something
>> like USB. I'm glad they didn't...
>
> They already considered this in the spec:
>
> "If Running Status is being used and a receiver is connected to a
> transmitter after the transmitter has
> powered on it will not play until the next Status byte is transmitted.
> For this reason it is recommended
> that the status be refreshed every few seconds."
>
> (page A-2 in the online PDF version).
Oh, there we go! So Running Status is just not expected to run for too long. It’s more of a sprinter than a marathon runner?!
That’s simple enough to do. Either run a timer and make sure to send a status byte every time the timer times out, or count outgoing bytes and send a status byte with every Xth message.
I’m impressed that’s in the spec. They really did think of everything.
Tom
More information about the Synth-diy
mailing list