david wrote:
Is there some sort of upper speed limit in the MIDI
standard? Is the
MIDI standard smart enough to negotiate speeds if various MIDI devices
differ? Or was the MIDI standard strict in saying that your device
must operate at this official speed?
<https://www.midi.org/specifications/item/the-midi-1-0-specification>:
| The hardware MIDI interface operates at 31.25 (+/- 1%) Kbaud,
| asynchronous, with a start bit, 8 data bits (D0 to D7), and a stop
| bit. This makes a total of 10 bits for a period of 320 microseconds
| per serial byte.
USB MIDI does not specify any limit. However, the protocol implicitly
throttles when the device takes longer to accept a new packet; this
happens automatically when the device's buffer is full.
FireWire MIDI has no synchronization mechanism, so the sender must take
care to avoid sending the data faster than the receiver can handle it.
RP-027 says:
| The encapsulation function block of a transmitter that does not
| implement a negotiation procedure shall use a maximum rate of one
| LABEL 81H quadlet every 320 microseconds per MPX-MIDI Data Channel.
| [...]
| NOTE: a future extension of this specification will define a negotiation
| procedure between transmitters and receivers and will allow the use of
| LABEL 82H and 83H quadlets. These capabilities will allow transmission
| of MIDI data at rates substantially faster than the MIDI 1.0 data rate.
| However, the current version of this specification limits the use of
| these capabilities in order to avoid interoperability problems with
| other MIDI devices. Higher speed modes (e.g. MIDI1.0–2X–SPEED and
| MIDI1.0–3X–SPEED) are described solely so that devices compliant with
| the current specification will be able to interoperate with devices
| compliant with a future extension of this specification.
Regards,
Clemens