[sdiy] MIDI Sys Ex packet length

MTG grant at musictechnologiesgroup.com
Sun May 24 23:07:49 CEST 2015

What I do, and I think it's pretty common, is to send the amount of data 
that matches the flash sector size of the target. In my case that's 512 
bytes. Then one typically sets the pause in MIDI-OX for that F7 to delay 
the amount of time for the flash write.  I recommend to my users 150ms. 
Never had an issue/failure/brick ever.

Now MIDIOX on the other hand is a bit of a brute. I always struggle with 
the port settings. I ended up writing my own. It wasn't that bad but 
took a while to get solid. Your USB endpoint size will determine how 
many of those 4-byte packets you get at a time on your micro. And you 
will find an empty one too on occasion.  I found that out on Win7 or 8, 
can't remember. That's not well addressed by the spec that I could find 
but no issues once I discovered it. I posted a question about it on 


On 5/24/2015 11:21 AM, Richie Burnett wrote:
> If doing a flash update of firmware over conventional MIDI via System
> Exclusive is it wise to break the download into many smaller packets of
> say 128 or 256 bytes in length?
> I was planning on using MIDI-Ox for Sys Ex flash updates, but I guess I
> could also incorporate the Sys Ex packets into a standard MIDI file that
> could be played back on any capable hardware?
> Does anyone know if MIDI-Ox has any provision for resending packets if
> something like a CRC fails, or would I have to write my own program at
> the PC/Mac end to check for ack/nack and resend the necessary corrupted
> packets?
> I've already discovered that certain cheap Chinese USB to MIDI
> interfaces don't correctly handle MIDI messages containing more than 3
> bytes!!! So they're a non-starter from the outset.
> -Richie,
> _______________________________________________
> Synth-diy mailing list
> Synth-diy at dropmix.xs4all.nl
> http://dropmix.xs4all.nl/mailman/listinfo/synth-diy

More information about the Synth-diy mailing list