<html>
<body>
Hi Dave, Paul,<br><br>
I did have some success finding "nanoKONTROL2 MIDI Implementation
Revision 1.00 (2010.12.14)", this was not easy to find - see
below.<br><br>
"(3)Native KORG Mode Knob/Slider Output" may be what is
required, but this is the unit response.<br><br>
"1-3 System Exclusive Message Transmitted Command List" may be
what is needed to be sent, but byte 8 onwards looks a bit confusing at
first glance.<br><br>
Current plan is to debug using Linux with /dev/midix, then move the
command string into micro-land.<br><br>
Any thoughts on how to construct the appropriate SYSEX message
appreciated, this all looks somewhat cryptic at first glance.<br><br>
Many thanks, I will also take a look at the stuff you
referenced.<br><br>
Regards, Mark<br><br>
<br><br>
At 09:11 p.m. 1/04/2013, you wrote:<br>
<blockquote type=cite class=cite cite="">Hi Mark,<br><br>
You can get some information back by sending it MIDI sysex messages, but
it looks like it will only dump the current scene configuration, which
isn't (as I understand it) the current position of the sliders. The MIDI
implementation doc is here:
<a href="http://www.korg.co.uk/support/downloads/nano_dl.php" eudora="autourl">
http://www.korg.co.uk/support/downloads/nano_dl.php</a> in
nano_MIDI_implementation.zip, and there is some Python code for sending
and reading scenes using sysex on
<a href="https://github.com/royvegard/Nano-Basket/blob/master/nano_basket_backend.py" eudora="autourl">
https://github.com/royvegard/Nano-Basket/blob/master/nano_basket_backend.py</a>
<br><br>
If the Korg editor software can read the current position of the sliders
then there's a chance that there's an undocumented message that will do
it, otherwise I don't think it's possible. In software you can either
just jump the controlled parameter to the fader position as soon as
someone moves it, or wait until they move the fader to the current
parameter position before changing the parameter, as in this video:<br>
<a href="http://youtu.be/PgRTyMnosSI?t=1m54s" eudora="autourl">
http://youtu.be/PgRTyMnosSI?t=1m54s</a><br><br>
Dave<br><br>
On 01/04/2013 14:39, Mark Atherton wrote:<br>
<blockquote type=cite class=cite cite="">Hi All,<br><br>
Hopefully someone here can save me some work digging around for a
solution to this question:<br><br>
I am building a small wireless interface for a KORG nanoKONTROL2
MIDI-over-USB control surface. The system is based on a Microchip dsPIC
device with USB host port, so far so good; everything works as expected
in terms of controlling LEDs on the control surface, and reading back
sliders, knobs etc. as Control Change messages.<br><br>
As an example, after moving a slider, a message is received like 0x0B,
0xB0, 0x02, 0x78 -- Cable 0, Control Change, Address 2, Data 0x78,
etc.<br><br>
I need to be able to read the whole control surface at power up, so for
example I need to know how to interrogate slider 2, to find it's current
position without moving it.<br><br>
Any ideas how I go about doing this will be appreciated, or a more
appropriate forum.<br><br>
Thanks,<br><br>
Mark<br>
</blockquote></blockquote><br>
<font face="Courier New, Courier">
nanoKONTROL2 MIDI
Implementation
Revision 1.00 (2010.12.14)<br><br>
1.Transmitted Data
-------------------------------------------------------------<br><br>
1-1 Channel
Messages
[H]:Hex, [D]:Decimal<br>
+--------+----------+----------+-----------------------------------------------+<br>
| Status | Second | Third |
Description (Transmitted
by ) |<br>
| [Hex] | [H] [D] | [H] [D]
|
|<br>
+--------+----------+----------+-----------------------------------------------+<br>
| 8n | kk (kk) | 40 (64) | Note
Off
(Button)
|<br>
| 9n | kk (kk) | 00 (00) | Note
Off
(Button)
*m
|<br>
| 9n | kk (kk) | VV (VV) | Note
On
(Button)
|<br>
| Bn | cc (cc) | vv (vv) | Control
Change (Panel
Controls) |<br>
| En | vv (vv) | vv (vv) | Pitch
Bend (Slider)
*m
|<br>
+--------+----------+----------+-----------------------------------------------+<br>
n : MIDI Channel = 0~15<br>
kk : Note# 0~127<br>
VV : Velocity = 1~127<br>
cc : Control Change# = 0~127<br>
vv : Value = 0~127<br>
*m Only DAW1/DAW2/DAW3/DAW5 Mode<br><br>
<br>
1-2 Universal System Exclusive Message ( Non Realtime )<br><br>
Device Inquiry Reply<br>
+---------+-----------------------------------------------+<br>
| Byte[H]
|
Description
|<br>
+---------+-----------------------------------------------+<br>
| F0 | Exclusive
Status
|<br>
| 7E | Non Realtime
Message
|<br>
| 0g | Global MIDI Channel ( Device
ID )
|<br>
| 06 | General
Information
|<br>
| 02 | Identity
Reply
|<br>
| 42 | KORG
ID
( Manufacturers ID ) |<br>
| 13 | Software
Project ( Family ID
(LSB)) |<br>
| 01
|
( Family ID (MSB)) |<br>
| 00
|
( Member ID (LSB)) |<br>
| 00
|
( Member ID (MSB)) |<br>
| xx
|
( Minor Ver. (LSB)) |<br>
| xx
|
( Minor Ver. (MSB)) |<br>
| xx
|
( Major Ver. (LSB)) |<br>
| xx
|
( Major Ver. (MSB)) |<br>
| F7 | End Of
Exclusive
|<br>
+---------+-----------------------------------------------+<br><br>
This message is transmitted whenever an INQUIRY MESSAGE REQUEST is
received.<br><br>
<br><br>
1-3 System Exclusive Message Transmitted Command List<br><br>
Structure of nanoKONTROL2 System Exclusive Messages<br><br>
1st Byte = F0 : Exclusive Status<br>
2nd Byte = 42 : KORG<br>
3rd Byte = 4g : g : Global MIDI Channel<br>
4th Byte = 00 : Software Project (nanoKONTROL2: 000113H)<br>
5th Byte = 01 : <br>
6th Byte = 13 : <br>
7th Byte = 00 : Sub ID<br>
8th Byte = cd : 0dvmmmmm d (1:
Controller->Host)<br>
v (0: 2 Bytes Data Format, 1: Variable)<br>
mmmmm (Command Number)<br>
9th Byte = nn : 2 Bytes Format: Function ID, Variable: Num of
Data<br>
10th Byte = dd : Data<br>
:<br>
LastByte = F7 : End of Exclusive<br><br>
+-----------------+---------------------------------------+<br>
|8th Byte command#|
Description/Command
|<br>
| [Bin (Hex)]
|
|<br>
+-----------------+---------------------------------------+<br>
| 010 00000 (40) | Native mode
In/Out
|<br>
| 010 11111 (5F) | Packet
Communication
*2 |<br>
| 011 11111 (7F) | Data
Dump
*2 |<br>
+-----------------+---------------------------------------+<br><br>
*2 :Function ID Code List<br>
+-------------+-----------------------------------+-----+<br>
| Function ID |
Description/Function
| |<br>
| [Hex]
|
| |<br>
+-------------+-----------------------------------+-----+<br>
| 40 | Current
Scene Data
Dump |
R |<br>
| 23 | Data Load
Completed
| E |<br>
| 24 | Data Load
Error
| E |<br>
| 21 | Write
Completed
| E |<br>
| 22 | Write
Error
| E |<br>
| 42 | Mode
Data
| R |<br>
+-------------+-----------------------------------+-----+<br>
Transmitted when<br>
R : Request Message is
received.<br>
C : Change Scene.<br>
E : Exclusive Message is
received.<br><br>
<br>
1-4 Search Device Message<br><br>
Search Device Reply<br>
+---------+------------------------------------------------+<br>
| Byte[H]
|
Description
|<br>
+---------+------------------------------------------------+<br>
| F0 | Exclusive
Status
|<br>
| 42 | KORG
ID
( Manufacturers ID ) |<br>
| 50 | Search
Device
|<br>
| 01 |
Request
|<br>
| 0g | g: MIDI Global Channel (
Device ID ) |<br>
| dd | Echo Back
ID
|<br>
| 13 | nanoKONTROL2
ID ( Family ID
(LSB)) |<br>
| 01 | nanoKONTROL2
ID ( Family ID
(MSB)) |<br>
| 00
|
( Member ID (LSB)) |<br>
| 00
|
( Member ID (MSB)) |<br>
| xx
|
( Minor Ver. (LSB)) |<br>
| xx
|
( Minor Ver. (MSB)) |<br>
| xx
|
( Major Ver. (LSB)) |<br>
| xx
|
( Major Ver. (MSB)) |<br>
| F7 | End Of
Exclusive
|<br>
+---------+------------------------------------------------+<br><br>
g : MIDI Global Channel = 0 ~ F<br>
dd : Echo Back ID = copy from SEARCH DEVICE REQUEST
message.<br><br>
This message is transmitted whenever a SEARCH DEVICE REQUEST is
received.<br><br>
<br>
2.Recognized Receive Data
------------------------------------------------------<br><br>
2-1 Universal System Exclusive Message (Non Realtime)<br><br>
Inquiry Message Request<br>
+---------+-----------------------------------------------+<br>
| Byte[H]
|
Description
|<br>
+---------+-----------------------------------------------+<br>
| F0 | Exclusive
Status
|<br>
| 7E | Non Realtime
Message
|<br>
| gg | Global MIDI
Channel
|<br>
| 06 | General
Information
|<br>
| 01 | Identity
Request
|<br>
| F7 | End Of
Exclusive
|<br>
+---------+-----------------------------------------------+<br>
gg = 00~0F :Received if Global Channel<br>
7F :Received on any
Channel<br><br>
<br>
2-2 System Exclusive Message Received Command List<br>
Structure of nanoKONTROL2 System Exclusive Messages<br><br>
1st Byte = F0 : Exclusive Status<br>
2nd Byte = 42 : KORG<br>
3rd Byte = 4g : g : Global MIDI Channel<br>
4th Byte = 00 : Software Project (nanoKONTROL2: 000113H)<br>
5th Byte = 01 : <br>
6th Byte = 13 : <br>
7th Byte = 00 : Sub ID<br>
8th Byte = cd : 0dvmmmmm d (0:
Host->Controller)<br>
v (0: 2 Bytes Data Format, 1: Variable)<br>
mmmmm (Command Number)<br>
9th Byte = nn : 2 Bytes Format: Function ID, Variable: Num of
Data<br>
10th Byte = dd : Data<br>
:<br>
LastByte = F7 : End of Exclusive<br><br>
+-----------------+---------------------------------------+<br>
|8th Byte command#|
Description/Command
|<br>
| [Bin (Hex)]
|
|<br>
+-----------------+---------------------------------------+<br>
| 000 00000 (00) | Native mode In/Out
Request
|<br>
| 000 11111 (1F) | Data Dump
Request
*3 |<br>
| 011 11111 (7F) | Data
Dump
*3 |<br>
+-----------------+---------------------------------------+<br><br>
*3 :Function ID Code List<br>
+-------------+-----------------------------------+<br>
| Function ID |
Description/Function
|<br>
| [Hex]
|
|<br>
+-------------+-----------------------------------+<br>
| 10 | Current
Scene Data Dump Request |<br>
| 40 | Current
Scene Data
Dump |<br>
| 11 | Scene Write
Request
|<br>
| 12 | Mode
Request
|<br>
+-------------+-----------------------------------+<br><br>
<br>
2-3 Search Device Message<br><br>
Search Device Request<br>
+---------+------------------------------------------------+<br>
| Byte[H]
|
Description
|<br>
+---------+------------------------------------------------+<br>
| F0 | Exclusive
Status
|<br>
| 42 | KORG
ID
( Manufacturers ID ) |<br>
| 50 | Search
Device
|<br>
| 00 |
Request
|<br>
| dd | Echo Back
ID
|<br>
| F7 | END OF
EXCLUSIVE
|<br>
+---------+------------------------------------------------+<br>
Receive this message, and transmits SEARCH DEVICE REPLY
message<br>
including copied Echo Back ID.<br><br>
<br>
3.MIDI Exclusive Format (R:Receive, T:Transmit)
------------------------------<br><br>
3-1 Standard Messages<br><br>
(1) Current Scene Data Dump
Request
R,-<br>
+----------------+------------------------------------------------------------------+<br>
| Byte
|
Description
|<br>
+----------------+------------------------------------------------------------------+<br>
| F0,42,4g, | Exclusive Header
g;Global Channel
[Hex]
|<br>
| 00,01,13,00, | Software Project (nanoKONTROL2: 000113H, Sub
ID:
00)
|<br>
| 0001 1111 (1F) | Data Dump Command (Host->Controller, 2Bytes
Format)
|<br>
| 0001 0000 (10) | Current Scene Data Dump
Request
|<br>
| 0000 0000 (00)
|
|<br>
| 1111 0111 (F7) | End of Exclusive
(EOX)
|<br>
+----------------+------------------------------------------------------------------+<br>
When this message was received, the nanoKONTROL2 transmits a
Func=40(Current Scene Data Dump)<br>
or a Func=24(NAK) message.<br><br>
(2) Scene Write
Request
R,-<br>
+----------------+------------------------------------------------------------------+<br>
| Byte
|
Description
|<br>
+----------------+------------------------------------------------------------------+<br>
| F0,42,4g, | Exclusive Header
g;Global Channel
[Hex]
|<br>
| 00,01,13,00, | Software Project (nanoKONTROL2: 000113H, Sub
ID:
00)
|<br>
| 0001 1111 (1F) | Data Dump Command (Host->Controller, 2Bytes
Format)
|<br>
| 0001 0001 (11) | Scene Write
Request
|<br>
| 0000 0000 (00)
|
|<br>
| 1111 0111 (F7) | End of Exclusive
(EOX)
|<br>
+----------------+------------------------------------------------------------------+<br>
When this message was received, the nanoKONTROL2 writes the current
scene data to the<br>
internal memory and transmits Func=21(Write Complete) messages or a
Func=22(Write Error)<br>
message.<br><br>
(3) Native mode In/Out
Request
R,-<br>
+----------------+------------------------------------------------------------------+<br>
| Byte
|
Description
|<br>
+----------------+------------------------------------------------------------------+<br>
| F0,42,4g, | Exclusive Header
g;Global Channel
[Hex]
|<br>
| 00,01,13,00, | Software Project (nanoKONTROL2: 000113H, Sub
ID:
00)
|<br>
| 0000 0000 (00) | Native mode In/Out Request (Host->Controller,
2Bytes Format) |<br>
| 0000 0000 (00)
|
|<br>
| 0qqq qqqq (qq) | qq = 00:Out Req, 01:In
Req
|<br>
| 1111 0111 (F7) | End of Exclusive
(EOX)
|<br>
+----------------+------------------------------------------------------------------+<br>
Receive this message, and transmits Command=40 message.<br><br>
(4) Mode
Request
R,-<br>
+----------------+------------------------------------------------------------------+<br>
| Byte
|
Description
|<br>
+----------------+------------------------------------------------------------------+<br>
| F0,42,4g, | Exclusive Header
g;Global Channel
[Hex]
|<br>
| 00,01,13,00, | Software Project (nanoKONTROL2: 000113H, Sub
ID:
00)
|<br>
| 0001 1111 (1F) | Data Dump Command (Host->Controller, 2Bytes
Format)
|<br>
| 0001 0010 (12) | Mode
Request
|<br>
| 0000 0000 (00)
|
|<br>
| 1111 0111 (F7) | End of Exclusive
(EOX)
|<br>
+----------------+------------------------------------------------------------------+<br>
Receive this message, and transmits Func=42 message.<br><br>
(5) Current Scene Data
Dump
R,T<br>
+----------------+------------------------------------------------------------------+<br>
| Byte
|
Description
|<br>
+----------------+------------------------------------------------------------------+<br>
| F0,42,4g, | Exclusive Header
g;Global Channel
[Hex]
|<br>
| 00,01,13,00, | Software Project (nanoKONTROL2: 000113H, Sub
ID:
00)
|<br>
| 0111 1111 (7F) | Data Dump Command (Host<->Controller,
Variable Format)
|<br>
| 0111 1111 (7F) | Over 0x7F
Data
|<br>
| 0000 0010 (02) | 2Bytes
structure
|<br>
| 0000 0011 (03) | Num of Data MSB (1+388 bytes :
B'110000101)
|<br>
| 0000 0101 (05) | Num of Data
LSB
|<br>
| 0100 0000 (40) | Current Scene Data
Dump
|<br>
| 0ddd dddd (dd) |
Data
(NOTE 1, 2) |<br>
|
: |
:
|<br>
| 1111 0111 (F7) | End of Exclusive
(EOX)
|<br>
+----------------+------------------------------------------------------------------+<br>
When these message and data were received, the nanoKONTROL2 saves
the data to the current<br>
scene, and transmits a Func=23(ACK) or a Func=24(NAK) message.<br>
When a Func=10(Current Scene Data Dump Request) message was
received, the nanoKONTROL2<br>
transmits this message with the current scene data.<br><br>
(6) Data Load Completed
(ACK)
-,T<br>
+----------------+------------------------------------------------------------------+<br>
| Byte
|
Description
|<br>
+----------------+------------------------------------------------------------------+<br>
| F0,42,4g, | Exclusive Header
g;Global Channel
[Hex]
|<br>
| 00,01,13,00, | Software Project (nanoKONTROL2: 000113H, Sub
ID:
00)
|<br>
| 0101 1111 (5F) | Data Dump Command (Host<-Controller, 2Bytes
Format)
|<br>
| 0010 0011 (23) | Data Load
Completed
|<br>
| 0000 0000 (00)
|
|<br>
| 1111 0111 (F7) | End of Exclusive
(EOX)
|<br>
+----------------+------------------------------------------------------------------+<br>
When the operation was completed, the nanoKONTROL2 transmits this
message.<br><br>
(7) Data Load Error
(NAK)
-,T<br>
+----------------+------------------------------------------------------------------+<br>
| Byte
|
Description
|<br>
+----------------+------------------------------------------------------------------+<br>
| F0,42,4g, | Exclusive Header
g;Global Channel
[Hex]
|<br>
| 00,01,13,00, | Software Project (nanoKONTROL2: 000113H, Sub
ID:
00)
|<br>
| 0101 1111 (5F) | Data Dump Command (Host<-Controller, 2Bytes
Format)
|<br>
| 0010 0100 (24) | Data Load
Error
|<br>
| 0000 0000 (00)
|
|<br>
| 1111 0111 (F7) | End of Exclusive
(EOX)
|<br>
+----------------+------------------------------------------------------------------+<br>
When the operation was not completed, the nanoKONTROL2 transmits
this message.<br><br>
(8) Write
Completed
-,T<br>
+----------------+------------------------------------------------------------------+<br>
| Byte
|
Description
|<br>
+----------------+------------------------------------------------------------------+<br>
| F0,42,4g, | Exclusive Header
g;Global Channel
[Hex]
|<br>
| 00,01,13,00, | Software Project (nanoKONTROL2: 000113H, Sub
ID:
00)
|<br>
| 0101 1111 (5F) | Data Dump Command (Host<-Controller, 2Bytes
Format)
|<br>
| 0010 0001 (21) | Write
Completed
|<br>
| 0000 0000 (00)
|
|<br>
| 1111 0111 (F7) | End of Exclusive
(EOX)
|<br>
+----------------+------------------------------------------------------------------+<br>
When the writing operation was completed, the nanoKONTROL2
transmits this message.<br><br>
(9) Write
Error
-,T<br>
+----------------+------------------------------------------------------------------+<br>
| Byte
|
Description
|<br>
+----------------+------------------------------------------------------------------+<br>
| F0,42,4g, | Exclusive Header
g;Global Channel
[Hex]
|<br>
| 00,01,13,00, | Software Project (nanoKONTROL2: 000113H, Sub
ID:
00)
|<br>
| 0101 1111 (5F) | Data Dump Command (Host<-Controller, 2Bytes
Format)
|<br>
| 0010 0010 (22) | Write
Error
|<br>
| 0000 0000 (00)
|
|<br>
| 1111 0111 (F7) | End of Exclusive
(EOX)
|<br>
+----------------+------------------------------------------------------------------+<br>
When the writing operation was not completed, the nanoKONTROL2
transmits this message.<br><br>
(10) Native mode
In/Out
-,T<br>
+----------------+------------------------------------------------------------------+<br>
| Byte
|
Description
|<br>
+----------------+------------------------------------------------------------------+<br>
| F0,42,4g, | Exclusive Header
g;Global Channel
[Hex]
|<br>
| 00,01,13,00, | Software Project (nanoKONTROL2: 000113H, Sub
ID:
00)
|<br>
| 0100 0000 (40) | Native mode In/Out (Host<-Controller, 2Bytes
Format)
|<br>
| 0000 0000 (00)
|
|<br>
| 0rrr rrrr (rr) | rr =
02:Out,03:In
|<br>
| 1111 0111 (F7) | End of Exclusive
(EOX)
|<br>
+----------------+------------------------------------------------------------------+<br>
Receive Command=00 message, and transmits this message.<br><br>
(11) Mode
Data
-,T<br>
+----------------+------------------------------------------------------------------+<br>
| Byte
|
Description
|<br>
+----------------+------------------------------------------------------------------+<br>
| F0,42,4g, | Exclusive Header
g;Global Channel
[Hex]
|<br>
| 00,01,13,00, | Software Project (nanoKONTROL2: 000113H, Sub
ID:
00)
|<br>
| 0101 1111 (5F) | Data Dump Command (Host<-Controller, 2Bytes
Format)
|<br>
| 0100 0010 (42) | Mode
Data
|<br>
| 0mmm mmmm (rr) | mm = 00:Normal mode, 01:Native
mode
|<br>
| 1111 0111 (F7) | End of Exclusive
(EOX)
|<br>
+----------------+------------------------------------------------------------------+<br>
Receive Func=12 message, and transmits this message.<br><br>
NOTE 1: Current Scene Data Dump Format<br>
339 bytes = 7*48+3 ->
8*48+(3+1) => 388 bytes<br>
(TABLE 1)<br><br>
NOTE 2: The Dump Data Conversion<br><br>
Data (1set = 8bit x 7Byte)<br>
b7 ~
b0 b7 ~
b0 b7 ~~ b0
b7 ~ b0<br>
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
+-+-+-~~-+-+-+ +-+-+-+-+-+-+-+-+<br>
| | | | | | | | | | | | | | | | | | | |
| | | | | | | | | | | | |<br>
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
+-+-+-~~-+-+-+ +-+-+-+-+-+-+-+-+<br>
7n+0
7n+1 7n+2 ~~
7n+5 7n+6<br><br>
MIDI Data (1set = 7bit x 8Byte)<br>
b7b7b7b7b7b7b7
b6 ~ b0
b6 ~~ b0 b6
~ b0<br>
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
+-+-+-~~-+-+-+ +-+-+-+-+-+-+-+-+<br>
|0| | | | | | | | |0| | | | | | | | |0|
| | | | |0| | | | | | | |<br>
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
+-+-+-~~-+-+-+ +-+-+-+-+-+-+-+-+<br>
7n+6,5,4,3,2,1,0
7n+0 7n+1 ~~
7n+5 7n+6<br><br>
<br>
TABLE 1 : Scene
Parameter
<br>
+--------+----------------------------+--------------------------------------------+<br>
| |
PARAMETER
|
VALUE
|<br>
+--------+----------------------------+--------------------------------------------+<br>
| Common
parameters
|<br>
+--------+----------------------------+------------------------------------------
-+<br>
| 0 | Global MIDI
Ch. |
0~15
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 1 | Control
Mode
| 0~5=CC
Mode/Cubase/DP/
|<br>
|
|
|
Live/ProTools/SONAR
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 2 | LED
Mode
|
0~1=Internal/External
|<br>
+--------+----------------------------+--------------------------------------------+<br>
| Controller Group 1
parameters
|<br>
+--------+----------------------------+--------------------------------------------+<br>
| 3 | Group MIDI
Ch.
| 0~16=0~15/Global MIDI
Ch.
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 4 | Slider assign
type |
0/1=Disable/Enable
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 5 |
Reserved
|
0
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 6 | Slider CC/Note
Number |
0~127
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 7 | Slider min
value |
0~127
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 8 | Slider max
value |
0~127
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 9 |
Reserved
|
0
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 10 | Knob assign
type |
0/1=Disable/Enable
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 11 |
Reserved
|
0
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 12 | Knob CC/Note
Number |
0~127
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 13 | Knob min
value
|
0~127
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 14 | Knob max
value
|
0~127
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 15 |
Reserved
|
0
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 16 | Solo Button assign type
| 0~2=No Assign/Control
Change/
|<br>
|
|
|
Note
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 17 | Solo Button
Behavior |
0/1=Momentary/Toggle
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 18 | Solo Button CC/Note Number |
0~127
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 19 | Solo Button off
value |
0~127
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 20 | Solo Button on
value |
0~127
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 21 |
Reserved
|
0
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 22 | Mute Button assign type
| 0~2=No Assign/Control
Change/Note |<br>
|
+----------------------------+--------------------------------------------+<br>
| 23 | Mute Button
Behavior |
0/1=Momentary/Toggle
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 24 | Mute Button CC/Note Number |
0~127
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 25 | Mute Button off
value |
0~127
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 26 | Mute Button on
value |
0~127
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 27 |
Reserved
|
0
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 28 | Rec Button assign
type | 0~2=No Assign/Control
Change/Note |<br>
|
+----------------------------+--------------------------------------------+<br>
| 29 | Rec Button
Behavior |
0/1=Momentary/Toggle
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 30 | Rec Button CC/Note Number |
0~127
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 31 | Rec Button off
value |
0~127
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 32 | Rec Button on
value |
0~127
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 33 |
Reserved
|
0
|<br>
+--------+----------------------------+--------------------------------------------+<br>
| 34~64 | Group 2
parameters | ( Same as
the Group 1 format
)
|<br>
+--------+----------------------------+--------------------------------------------+<br>
| 65~95 | Group 3
parameters | ( Same as
the Group 1 format
)
|<br>
+--------+----------------------------+--------------------------------------------+<br>
| 96~126 | Group 4
parameters | ( Same as
the Group 1 format
)
|<br>
+--------+----------------------------+--------------------------------------------+<br>
|127~157 | Group 5
parameters | ( Same as
the Group 1 format
)
|<br>
+--------+----------------------------+--------------------------------------------+<br>
|158~188 | Group 6
parameters | ( Same as
the Group 1 format
)
|<br>
+--------+----------------------------+--------------------------------------------+<br>
|189~219 | Group 7
parameters | ( Same as
the Group 1 format
)
|<br>
+--------+----------------------------+--------------------------------------------+<br>
|220~250 | Group 8
parameters | ( Same as
the Group 1 format
)
|<br>
+--------+----------------------------+--------------------------------------------+<br>
| Transport Button
parameters
|<br>
+--------+----------------------------+--------------------------------------------+<br>
| 251 | Transport Button MIDI Ch. |
0~16=0~15/Global MIDI
Ch.
|<br>
+--------+--------------------------
-+--------------------------------------------+<br>
| Transport Button Prev Track
parameters
|<br>
+--------+----------------------------+--------------------------------------------+<br>
| 252 | Assign
type
| 0~2=No Assign/Control
Change/Note |<br>
|
+----------------------------+--------------------------------------------+<br>
| 253 | Button
Behavior
|
0/1=Momentary/Toggle
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 254 | CC/Note
Number
|
0~127
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 255 | Off
value
|
0~127
|<br>
|
+----------------------------+--------------------------------------------+<br>
| 256 | On
value
|
0~127
|<br>
|
+----------------------------+
-------------------------------------------+<br>
| 257 |
Reserved
|
0
|<br>
+--------+----------------------------+--------------------------------------------+<br>
|258~263 | Next Track parameters | (Same as
the Transport Prev Track format ) |<br>
+--------+----------------------------+--------------------------------------------+<br>
|264~269 | Cycle
parameters |
(Same as the Transport Prev Track format ) |<br>
+--------+----------------------------+--------------------------------------------+<br>
|270~275 | Marker Set parameters | (Same as
the Transport Prev Track format ) |<br>
+--------+----------------------------+--------------------------------------------+<br>
|276~281 | Prev Marker parameters | (Same as the
Transport Prev Track format ) |<br>
+--------+----------------------------+--------------------------------------------+<br>
|282~287 | Next Marker parameters | (Same as the
Transport Prev Track format ) |<br>
+--------+----------------------------+--------------------------------------------+<br>
|288~293 | REW
parameters
| (Same as the Transport Prev Track format ) |<br>
+--------+----------------------------+--------------------------------------------+<br>
|294~299 | FF
parameters
| (Same as the Transport Prev Track format ) |<br>
+--------+----------------------------+--------------------------------------------+<br>
|300~305 | STOP
parameters
| (Same as the Transport Prev Track format ) |<br>
+--------+----------------------------+--------------------------------------------+<br>
|306~311 | PLAY
parameters
| (Same as the Transport Prev Track format ) |<br>
+--------+----------------------------+--------------------------------------------+<br>
|312~317 | REC
parameters
| (Same as the Transport Prev Track format ) |<br>
+--------+----------------------------+--------------------------------------------+<br>
|318~322 | Custom DAW
Assign |
0,41,42,46,47,48,49,50,127,255
|<br>
+--------+----------------------------+--------------------------------------------+<br>
|323~338 |
Reserved
|
0
|<br>
+--------+----------------------------+--------------------------------------------+<br>
<br>
Total 339 bytes<br><br>
<br>
4.Native KORG Mode Messages
----------------------------------------------------<br><br>
(1) Native KORG mode Display LEDs<br>
+--------+------------------+--------------------------------------+<br>
| Status | Second | Third |
Description
|<br>
| [Hex] | [Hex] | [Hex]
|
|<br>
+--------+----------+-------+--------------------------------------+<br>
| BF | 2E
| ss | Cycle (ss= Off:00~40
On:41~7F) |<br>
| BF | 2B
| ss |
REW
|<br>
| BF | 2C
| ss |
FF
|<br>
| BF | 2A
| ss |
STOP
|<br>
| BF | 29
| ss |
PLAY
|<br>
| BF | 2D
| ss |
REC
|<br>
+--------+----------+-------+--------------------------------------+<br>
| BF | 20
| ss | Group 1
Solo
|<br>
| BF | 21 ~ 27 | ss
| Group 2 ~ 8
Solo
|<br>
| BF | 30
| ss | Group 1
Mute
|<br>
| BF | 31 ~ 37 | ss
| Group 2 ~ 8
Mute
|<br>
| BF | 40
| ss | Group 1
Rec
|<br>
| BF | 41 ~ 47 | ss
| Group 2 ~ 8
Rec
|<br>
+--------+----------+-------+--------------------------------------+<br>
<br>
(2) Native KORG Mode Button Output<br>
+--------+------------------+--------------------------------------+<br>
| Status | Second | Third |
Description
|<br>
| [Hex] | [Hex]
|
|
|<br>
+--------+----------+-------+--------------------------------------+<br>
| BF | 2E
| ss | Cycle ss;on/off (on = 127 Off = 00)
| <br>
| BF | 2B
| ss |
REW
|<br>
| BF | 2C
| ss |
FF
|<br>
| BF | 2A
| ss |
STOP
|<br>
| BF | 29
| ss |
PLAY
|<br>
| BF | 2D
| ss |
REC
|<br>
| BF | 3A
| ss | <<
Track
|<br>
| BF | 3B
| ss | Track
>>
|<br>
| BF | 3C
| ss | Marker
Set
|<br>
| BF | 3D
| ss | <<
Marker
|<br>
| BF | 3E
| ss | Marker
>>
|<br>
+--------+----------+-------+--------------------------------------+<br>
| BF | 20
| ss | Group 1
Solo
|<br>
| BF | 21 ~ 27 | ss
| Group 2 ~ 8
Solo
|<br>
| BF | 30
| ss | Group 1
Mute
|<br>
| BF | 31 ~ 37 | ss
| Group 2 ~ 8
Mute
|<br>
| BF | 40
| ss | Group 1
Rec
|<br>
| BF | 41 ~ 47 | ss
| Group 2 ~ 8
Rec
|<br>
+--------+----------+-------+--------------------------------------+<br>
<br>
(3) Native KORG Mode Knob/Slider Output<br>
+--------+------------------+--------------------------------------+<br>
| Status | Second | Third |
Description
|<br>
| [Hex] | [Hex]
|
|
|<br>
+--------+----------+-------+--------------------------------------+<br>
| BF | 10
| vv | Group 1 Knob vv=value(0 ~
127) |<br>
| BF | 11 ~ 17 | vv
| Group 2 ~ 8
Knob
|<br>
+--------+----------+-------+--------------------------------------+
<br>
| BF | 00
| vv | Group 1 Slider
vv=value(0~127) |<br>
| BF | 01 ~ 07 | vv
| Group 2 ~ 8
Slider
|<br>
+--------+----------+-------+--------------------------------------+<br>
</font></body>
</html>