Archive of the former Yahoo!Groups mailing list: Korg Poly800/EX800 Users

previous by date index next by date
previous in topic topic list next in topic

Subject: Re: [korgpolyex] Re: Revisiting NRPN's problem

From: Michael Hawkins <korgpolyex800@...>
Date: 2014-05-13

On further inspection, I can see one situation where the MIDI CC's for the HAWK could fail. This would only occur if there were other MIDI NRPN CC's mixed in with HAWK messages.

Remember that the MSB must match the global parameter 16. As long as you send NRPN messages on the same channel and using the same MSB, then the NRPN's will work. You only have to send the MSB once to begin with as long as you never send RPN's on the same channel. If RPN's are sent, then you MUST send a full NRPN MSB, LSB combination again.

It seems unlikely that you would be sending RPN's on the same channel but if you were, then it could possibly cause a problem. It seems unlikely though because controllers know that if they send an RPN then the next NRPN must include MSB, LSB, data. And vice versa, if a controller sends an NRPN then the next RPN must be MSB, LSB, data.

Are you certain that there are no RPN's occurring on the same channel as NRPN's?

Mike

On Monday, May 12, 2014 9:38 PM, "Michael Hawkins korgpolyex800@... [korgpolyex]" <korgpolyex@yahoogroups.com> wrote:
 
Actually, I tell a lie. The RemoteSL does not send them short style.

But nevertheless, my tests with amidi showed that the HAWK does handle the short versions of the messages as expected.

Mike

On Monday, May 12, 2014 9:31 PM, "Michael Hawkins korgpolyex800@... [korgpolyex]" <korgpolyex@yahoogroups.com> wrote:
 
No, I would say it is the same code. Are you certain that you flashed all three sysex blocks of the firmware?

My RemoteSL25 does the same thing your controllers do. It sends NRPN's based upon what has changed since the last NRPN message. So if the MSB and LSB are the same as before then only the data message gets sent. If the LSB changes then it will send the LSB and then the data. If the MSB changes then it will send that then data. And finally, if MSB and LSB are both different then they all get sent.

HAWK responds correctly to all of the above.

I also ran tests using amidi on LINUX as follows:

################################################################################
# list midi devices
################################################################################
amidi -l

################################################################################
# send NRPN with MSB=0, LSB=18 (24d=VCF cutoff) and data Min,Mid,Max
# send MSB,LSB,Data a few times then send data values only
################################################################################
amidi -S "B0 62 18 B0 63 00 B0 06 00" -p hw:3,0,0
amidi -S "B0 62 18 B0 63 00 B0 06 6F" -p hw:3,0,0
amidi -S "B0 62 18 B0 63 00 B0 06 7F" -p hw:3,0,0

#WORKS AOK

################################################################################
# send NRPN data change only
################################################################################

amidi -S "B0 06 00" -p hw:3,0,0
amidi -S "B0 06 7F" -p hw:3,0,0
amidi -S "B0 06 00" -p hw:3,0,0

# WORKS AOK


################################################################################
# send NRPN with LSB=18 (24d=VCF cutoff) MSB=0, and data Min,Mid,Max
# send LSB,MSB,Data a few times then send data values only
################################################################################
amidi -S "B0 63 00 B0 62 18 B0 06 00" -p hw:3,0,0
amidi -S "B0 63 00 B0 62 18 B0 06 6F" -p hw:3,0,0
amidi -S "B0 63 00 B0 62 18 B0 06 7F" -p hw:3,0,0

################################################################################
# send NRPN data change only
################################################################################

amidi -S "B0 06 00" -p hw:3,0,0
amidi -S "B0 06 7F" -p hw:3,0,0
amidi -S "B0 06 00" -p hw:3,0,0

# WORKS AOK

################################################################################
# send NRPN with LSB=18 (24d=VCF cutoff) MSB=0, and data Min,Mid,Max
# send MSB,LSB,Data then send LSB,data only to change two parameters
################################################################################

# send full VCF change
amidi -S "B0 63 00 B0 62 18 B0 06 00" -p hw:3,0,0
# send DCO1 octave change to "3" as LSB,data only
amidi -S "B0 62 00 B0 06 7F" -p hw:3,0,0
# send DCO1 octave change to "1" as LSB,data only
amidi -S "B0 62 00 B0 06 00" -p hw:3,0,0

# WORKS AOK

################################################################################
# send NRPN data change only
################################################################################

amidi -S "B0 06 00" -p hw:3,0,0
amidi -S "B0 06 7F" -p hw:3,0,0
amidi -S "B0 06 00" -p hw:3,0,0

# WORKS AOK

So this must be quite frustrating but I am sure we'll figure it out.

Try to flash all three version 2.5.7 files again.

Mike


On Monday, May 12, 2014 6:42 PM, "bperkins211@... [korgpolyex]" <korgpolyex@yahoogroups.com> wrote:
 
I checked my HAWK and it indeed does have v2.57 installed.My guess is that is the same code you just posted up.. unless it's a 2.57b?Any other ideas? I'd even send you this Evolution controller to use for testing, since I'm sure if you get it working, all the others will work too.