Add delay between parts of a two part midi message

michaelnauman2

2020-02-29 07:51:39

My microKorg needs to receive patch changes individually in two parts eg..   'B4 20 3F' (delay) 'C4 00'. probably begin with a 100ms delay to see if that works. Need to figure out how to do this preferably in one translator.

Steve-Bome Forum Moderator

2020-02-29 16:36:14

Hi Michael. Before working on the delay try sending just the first (Without B4 20 3F) and see if things work.

C4 3F.

 

If that doesn\'t work then the best way to put a delay after every LSB Bank changes is to have a translator that will trigger a delayed program change

 

So it would look like this:

 

Name - Specific Notes trigger delayed Bank change on CH 5

Incoming - Note On MIDI CH 5 Any note Note pp any value set to qq

Rules:

// Put notes you want to use for PC change here (if there are all in a range you can simplify the

// rules below for that range instead of conditions for every note

if pp == 1 then exit rules, execute outgoing action

if pp  == 23 then exit rules, execute outgoing action

// do not trigger for notes you are not using for PC by default

exit rules, skip outgoing action

 

Outgoing - Program Change on MIDI CH5 value pp delay 100 milliseconds (you will need to experiment with the value  here to se what works)

Then leave your usual translators for those notes that you want to trigger the CC 00 messages only

 

Again, this may not be necessary if the microKorg response is as documented in the manual

 

Name: PC on note

Incoming: Note On  MIDI CH5 any note set note to pp

// rules to restrict which notes send PC

qq=-1

if pp==1 then qq=4

if pp==23 then qq=5

if qq==-1 exit rules skip outgoing action

Outgoing: PC on MIDI CH 5 value qq

 

Good luck!

 

Steve Caldwell
Bome Q and A Moderator and
Independent Bome Consultant/Specialist
bome@sniz.biz

michaelnauman2

2020-03-01 05:14:15

comment

I'm not clear on that but I did create two translators and delayed one by 100 ms and it works. In my case, i'm just needing to do one note for one program change but will be unique with all the buttons since each one sets various patches on all units. So, don't need to set up a series. any pad could be for any patch. just have to one-off every instance. thanks for the help. I've ordered a mini pc which should be here tomorrow and i'm going to purchase the full version for it!

Steve-Bome Forum Moderator

2020-03-01 05:46:42

comment

Did you ever just try sending C0 00, C0 01, etc to see if that alone made program changes? I think it is quite odd that it is making program changes on a bank change when the manual clearly says that the microKord doesn't take bank changes.

michaelnauman2

2020-03-01 06:49:33

comment

yes, tried that early on. does not work

Steve-Bome Forum Moderator

2020-03-01 16:28:14

Hi Michael. I was looking at the manual again and found this on the bottom of page 52

 

Program change

Program change [Cn,pp]

(n: channel, pp: program number)

When you switch programs, a program change message with the program number for the corresponding program 1-128 (a.11-b.88) will be transmitted (voice name list).

If you want program changes to be transmitted and received set SHIFT function \"MIDI FILTER\" to PROGRAM CHANGE ENABLE (P-E). If this is set to Disable (P-d) program changes will not be transmitted or received.

Do you have it set to (P-E)? If not, set to (P-E) and try a simple program change again.

 

Steve Caldwell
Bome Q and A Moderator and
Independent Bome Consultant/Specialist
bome@sniz.biz

 

michaelnauman2

2020-03-01 17:53:58

comment

Yes, I have the manual also and you have to set those to allow PC, CC, and pitch bend... Yes, I've turned those on. I It's an odd one on this board coz apparently you change patch with bank changes. I've seen others trying to work with this and that's the consensus. From my testing, it looks like it have to have ... eg B4 20 3F C4 00. Nothing else works, that does, but I think it comes down to the sluggishness of the Korg on processing the commands. It may totally be unable to cue midi, and if it's handling the first part it may ignore the second? compensate by adding the delay. That's my working theory. I'm no expert, but 34 years of software development and beta testing put my little brain in that corner. Wish I could talk to one of the Korg guys who worked on these units... pick their brain a bit.