Before posting, please read: When to use this forum, when to submit a help ticket

Issue with MIDI Preset Order with intruduction of Serial Queue feature

Started by skress, March 30, 2023, 10:01:52 AM

Previous topic - Next topic

skress

Hi Arlo,

I had an issue at my last gig where my patches weren't changing correctly, so thought I'd share it here in case others have the same issue.

I use Sysex messages to change the mode  (Patch vs Peformance/Combi) on my keyboards prior to sending Program Changes.  Since it's a common setting, I have a couple of MIDI Presets that contain the Sysex messages that I add to song presets as "Attached Presets".  I've been using the MIDI Preset Order to make sure the attachments and/or sysex message are sent first, then the Program Control messages. 

That's worked fine for years, but recently stopped working.  I found that, while the keyboard was changing modes, it wasn't then also changing the patch/program.  I tried several adjuments It wasn't until I went into your Release Notes that I noticed the new Serial Queue feature and turned it on that things started working again.   So I guess the Program Change was being sent in parallel and being received before the keyboards changed modes until I turned on Serial Queue. 

I thought I'd share it in case anyone else has the same issue, or in case you didn't intend to override the MIDI Preset Order in that way.

arlo

Hmm, the functionality shouldn't have changed if the new setting is left off. Can you describe a specific example of what you're sending for a song and how your presets are connected together?

skress

Sure.  Here's a basic example.

I have a Midi Preset (screenshot attached) called "Kronos Program Mode" that contains the SysEx messages to change my Korg Kronos from Combi (or any other) Mode to Program Mode.  It's attached to another preset (screenshot attached) containing the Program Change message to change the Kronos to the desired patch within Program Mode.   Under the MIDI setting for my iPAD, I have attachments in the top of the order of preset sends (screenshot attached) so that the keyboard changes modes prior to getting the program change for the desired patch.   I also have a 0.4 second delay to make sure the keyboard switches before the program change is sent.

Until recently, this worked flawlessly.  The issue I was having is that, while the keyboard would switch modes, the desired patch never came up.  I assume that the message was sent prior to the keyboard completing the mode switch, so I increased the delay time between preset sends, but it didn't help.  It wasn't until I found and turned on the Serial Queue toggle that it started working again. 

I'm good to go, but I suspect others might come across the same issue.

arlo

I tried the same setup and it worked as expected regardless of the new Serial Queue setting. You said you added a delay between presets, but you would need to add a delay between parts of the preset (MIDI Preset Order ... with Delay Between) to make this work reliably. If you add a delay there and turn off Use Serial Queue, do you get the desired behavior?

skress

Actually, I had delays setup between Presets (0.2sec) and also between the Midi Preset Order (0.4sec).  It was the latter I was speaking to in my first post (forgot about the former option). 

I just tried again with Serial Queue turned off w/o changing the delay and now it's working.  Perhaps toggling it on and off reset something.  Strange.  I'll leave it off and let you know if I see any further issues.

As always, thanks for your support!

jimm

I know that this isn't strictly what you're asking about, but have you considered using Set Lists on your Kronos? I put every program or combi I use into a set list and I stay in set list mode all night. While in set list mode the Bank LSB selects the set list number (since I stay in one set list all night I don't need to use it) and the program change number will select the slot within the bank.

skress

I'm aware of the Kronos feature, but I use Band Helper (and before that, Set List Maker) to send Midi/SysEx messages to multiple devices (other keyboards & a guitar processor).  It's very handy to have everything change when selecting the song, but I also have a few cases where I'll setup SysEx sends to trigger other Midi commands during a song to mute/unmute parts in sequence with a bluetooth foot pedal (so I don't have to take my hands off the keys to make the change). 

Thanks for pointing out the option, though!