Jump to content

MIOS - User SYSEX Handling questions


johnh
 Share

Recommended Posts

Greetings...

In my application I need to process system exclusive messages.  Is there any example code that demonstrates how this is done?

Looking at the functions that MIOS provides it looks like there are two user functions that get called on input: USER_MIDI_NotifyRx and USER_MPROC_NotifyReceivedByte.  I'm not sure of the difference between the two.

It would seem that I could take calls to one of these functions and watch for the start of a sysex message and then continue to queue bytes one call at a time until the end of the sysex and then process the entire queued message.  This would be easier in my case than trying to process the message on the fly (plus it would put less code in the interrupt routines)  Am I overlooking an easier solution?

Sorry for what may be naive questions but this is my first attempt at coding a custom app under MIOS.  

Link to comment
Share on other sites

Hi John,

there are a lot of simple and also more complex examples for parsing SysEx in the MIOS download section.

A simple one: see the led_digits_mtc_v1_3.zip example or the midimon (mtc.inc)

More complex ones: see the MIDIbox applications like "midibox64" or "midibox_lc"

Don't use USER_MIDI_NotifyRx for parsing SysEx streams, this is an interrupt service routine which should only be taken on very special cases (e.g. for receiving a MIDI clock or for a software implemented MIDI In LED)

USER_MIDI_NotifyReceivedByte is a low priority task (at the same level like USER_Tick) - which doesn't mean that it has a mentionable latency!).

Best Regards, Thorsten.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...