[sdiy] Handling MIDI Running Status from Power-up
chris
chris at chrismusic.de
Thu Nov 14 16:33:21 CET 2019
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...
Chris
On Thu, 14 Nov 2019 15:03:35 +0000 Neil Johnson
<neil.johnson71 at gmail.com> wrote:
> Isn't this what Active Sense is for? To detect when a cable becomes
> unplugged and put the receiving device into a sane state ready for
> reconnection?
>
> Neil
>
> On Thu, 14 Nov 2019 at 14:43, chris <chris at chrismusic.de> wrote:
> >
> > I understood the OP that he's dealing with the receiving side (where you
> > actually can't do much about it, you'd have to guess a status byte you
> > never saw).
> >
> > If it's about the sending side, it's quite easy - after say, 10 sec of
> > no MIDI commands sent, send the next message with full status byte.
> > This doesn't affect bandwidth in case of heavy traffic, and the
> > situation described will be fixed by cluelessly scratching you head for
> > 10 seconds.
> >
> > Chris
> >
> >
> >
> > On Thu, 14 Nov 2019 15:54:48 +0200 Mikko Helin <maohelin at gmail.com>
> > wrote:
> >
> > > The sending device could monitor the current of MIDI loop.
> > > You could also build a device ("a man in the middle") which tracks the
> > > connections but it would mean increased latencies.
> > >
> > >
> > > On Thu, Nov 14, 2019 at 3:36 PM Tom Wiltshire <tom at electricdruid.net> wrote:
> > >
> > > > Iââ¬â¢ve never seen it before (despite having done a fair bit of MIDI coding),
> > > > but Iââ¬â¢m not surprised that causes a problem, and Iââ¬â¢m not sure Iââ¬â¢d bother to
> > > > fix it. Itââ¬â¢s a rare enough situation to not require a solution, and anyway,
> > > > youââ¬â¢ve already found a work-around for the times when it might crop up -
> > > > just wiggle the pitch bend.
> > > >
> > > > I canââ¬â¢t see how you *would* fix it anyway. The sending device doesnââ¬â¢t know
> > > > what is at the other end of the MIDI connection, so thereââ¬â¢s no way for it
> > > > to know if the device has changed. Hence the best you can do is offer the
> > > > user some simple fix to do when they change devices - which youââ¬â¢ve got
> > > > already.
> > > >
> > > > Tom
> > > >
> > > > ==================
> > > > Electric Druid
> > > > Synth & Stompbox DIY
> > > > ==================
> > > >
> > > > On 14 Nov 2019, at 13:09, ackolonges fds <ackolonges at hotmail.com> wrote:
> > > >
> > > > Hi All,
> > > >
> > > > I've run into a MIDI running status issue while writing and testing my own
> > > > MIDI parser, and I was wondering if anyone on here has heard of any
> > > > practical way of handling it.
> > > >
> > > > Here is the scenario: You have been playing notes on a (hardware) MIDI
> > > > sound module via your MIDI keyboard that makes use of running status. You
> > > > then power-up a second sound module, unplug the MIDI cable from the
> > > > previous one, and plug it into the second one. When you continue playing
> > > > notes, they are not received by the second module, because it did not
> > > > receive any status bytes due to the use of running status. The only way to
> > > > begin playing notes with the second module is to then send another type of
> > > > MIDI message such as Control Change or Pitch Bend to 'break' the running
> > > > status, and force the sending of a new status byte - a completely
> > > > bewildering thing for the end user.
> > > >
> > > > I've recreated this issue on commercial synths, so it looks like I'm not
> > > > alone with this - have any of you encountered this problem and have any
> > > > ideas about an elegant way to deal with it?
> > > >
> > > > Cheers
More information about the Synth-diy
mailing list