Searching \ for '[PIC] acceptable MIDI data rate deviation' in subject line. ()
Make payments with PayPal - it's fast, free and secure! Help us get a faster server
FAQ page: www.piclist.com/techref/microchip/memory.htm?key=data
Search entire site for: 'acceptable MIDI data rate deviation'.

Exact match. Not showing close matches.
PICList Thread
'[PIC] acceptable MIDI data rate deviation'
2005\02\02@185057 by Darren Gibbs

picon face
I need to communicate via MIDI both with a PIC and with other MIDI
devices from an embedded Linux world.  The Linux device's UARTs are
cabable of:

14.7456M/16*29 = 31779
14.7456M/16*30 = 30720

MIDI spec says 31250 +-1%.  My error is 1.7%.  Does anyone know if this
is this close enough?

I figure this problem can't be new, but I'm finding very little info
about it on the net. Some sites hint that an error of up to 3% is OK
with certain MIDI devices.  I wonder if anyone has real-world
experience with this.

Any advice appreciated,

darren

2005\02\02@210030 by Russell McMahon

face
flavicon
face
>I need to communicate via MIDI both with a PIC and with other MIDI
>devices

> Some sites hint that an error of up to 3% is OK

I know nothing about this :-)
BUT if it's an asynchronous serial protocol then the MAXIMUM allowable
error is close enough to

50/(start bits + data bits [+ stop bits])  %
   (Stop bits may not be necessary depending on system design)

ie the error required to get half a bit error so that sampling wanders
off the proper bit onto the adjacent one.

eg the standard 1+ 8 + 1 serial data protocol gives

       50/(1+8) =~ 5.6%

With stop bit that's 50/(1+8+1) = 5%

That's the error at BOTH ends.
If the error is in the same direction at both ends you can tolerate
higher error rates.
If it goes opposite ways then the above applies. Murphy says it goes
the same way during design and opposite ways in real world must-work
situations.

Resonator gives you 1% odd.
Crystal gives maybe 0.1% or better over life/temperature/phase of
moon/bank holiday/ ....

If it's not an async serial protocol then the above doesn't apply :-)


       RM

2005\02\03@060503 by Gerhard Fiedler

picon face
Russell McMahon wrote:

>>I need to communicate via MIDI both with a PIC and with other MIDI
>>devices

>> Some sites hint that an error of up to 3% is OK

> With stop bit that's 50/(1+8+1) = 5%
> That's the error at BOTH ends.

> If it's not an async serial protocol then the above doesn't apply :-)

It is an async serial protocol, and it applies. All MIDI devices that I've
seen from the inside use standard UARTs to communicate. The only thing a
bit odd about it is the bit rate.

So you are probably quite safe with 1.7%, and the sources that say up to 3%
are fine are correct, too. (No hard experience data, though.)

Gerhard

2005\02\03@073722 by Russell McMahon

face
flavicon
face
>> With stop bit that's 50/(1+8+1) = 5%
>> That's the error at BOTH ends.

> So you are probably quite safe with 1.7%, and the sources that say
> up to 3%
> are fine are correct, too. (No hard experience data, though.)

That's presumably 3% at one end and hopefully almost 0% at the other.
(ie Crystal or resonator at one end).

Two ends with 3% each going in the opposite directions could be bad.


       RM


2005\02\03@141755 by Darren Gibbs

picon face
Thanks for the info!  It's good to know I'm in the ballpark at least...

On Feb 3, 2005, at 4:28 AM, Russell McMahon wrote:

{Quote hidden}

More... (looser matching)
- Last day of these posts
- In 2005 , 2006 only
- Today
- New search...