User Guide for Focusrite models including: Launchkey 49, Launchkey 61, MK4 Launch Key, MK4, Launch Key, Key

Launchkey MK4 Programmer's Reference Guide

[PDF] Launchkey MK4 Programmer's Reference Guide - Focusritefael-downloads-prod.focusrite.com › ...

Launchkey MK4 Programmer's Reference Guide

DAW mode. DAW mode provides DAWs and DAW-like software functionality to realise intuitive user interfaces on the Launchkey’s surface. The capabilities described in this chapter are only available once DAW mode is enabled.


File Info : application/pdf, 23 Pages, 744.62KB

PDF preview unavailable. Download the PDF instead.

launchkey mk4 programmer s reference guide v2 en
English
Launchkey MK4 Programmer's Reference Guide
Version 2.0

Table of Contents
About this Guide ...................................................................................................................... 3 Bootloader ............................................................................................................................. 4 MIDI on Launchkey MK4 ............................................................................................................ 5
SysEx message format used by the device ............................................................................ 5 Standalone (MIDI) mode ........................................................................................................... 6 DAW mode .............................................................................................................................. 8
DAW mode control ........................................................................................................... 8 The surface in DAW mode .................................................................................................. 8 Additional modes available in DAW mode ........................................................................... 10 Mode report and select .................................................................................................... 10 DAW mode ..................................................................................................................... 11 Drum mode ................................................................................................................... 12 Encoder modes .............................................................................................................. 12 Fader mode (Launchkey 49/61 only) .................................................................................. 13 Colouring the surface ...................................................................................................... 14 Controlling the screen ..................................................................................................... 17 Launchkey MK4 feature controls ............................................................................................... 21
2

About this Guide
This document provides all the information you need to be able to control the Launchkey MK4. The Launchkey communicates using MIDI over USB and DIN. This document describes the MIDI implementation for the device, the MIDI events coming from it, and how the Launchkey's various features can be accessed through MIDI messages. MIDI data is expressed in this manual in several ways:
· A plain English description of the message. · When we describe a musical note, middle C is deemed to be `C3' or note 60. MIDI channel 1 is the
lowest-numbered MIDI channel: channels range from 1 to 16. · MIDI messages are also expressed in plain data, with decimal and hexadecimal equivalents. The
hexadecimal number will always be followed by an `h' and the decimal equivalent given in brackets. For example, a note on message on channel 1 is signified by the status byte 90h (144).
3

Bootloader
The Launchkey has a bootloader mode that allows the user to view the current FW versions, and enable/ disable Easy Start. The bootloader is accessed by holding the Octave Up and Octave Down buttons together whilst powering up the device. The screen will display the current Application and Bootloader version numbers. The Record button can be used to toggle Easy Start. When Easy Start is ON, the Launchkey shows up as a Mass Storage Device to provide a more convenient first-time experience. You can turn this off once you are familiar with the device to disable this Mass Storage Device. The Play button can be used to start the Application.
4

MIDI on Launchkey MK4

The Launchkey has two MIDI interfaces, providing two pairs of MIDI inputs and outputs over USB. They are as follows:

· MIDI In / Out (or first interface on Windows): This interface is used to receive MIDI from performing (keys, wheels, pad, pot, and fader Custom Modes); and is used to provide external MIDI input.
· DAW In / Out (or second interface on Windows): This interface is used by DAWs and similar software to interact with the Launchkey.

The Launchkey also has a MIDI DIN output port, which transmits the same data a as is received on host port MIDI In (USB). Note that this excludes responses to requests issued by the host to the Launchkey on MIDI Out (USB).

If you wish to use Launchkey as a control surface for a DAW (Digital Audio Workstation), you will likely want to use the DAW interface (See DAW Mode [11]).

Otherwise, you may interact with the device using the MIDI interface.

The Launchkey sends Note On (90h (144) ­ 9Fh (159)) with velocity zero for Note Offs. It accepts either Note Offs (80h (128) ­ 8Fh (143)) or Note Ons (90h (144) ­ 9Fh (159)) with velocity zero for Note Off.

SysEx message format used by the device
All SysEx messages begin with the following header, regardless of direction (Host  Launchkey or Launchkey  Host):

Regular SKUs:

Hex: F0h 00h 20h 29h 02h 14h

Dec: 240 0

32

41

2

20

Mini SKUs:

Hex: F0h 00h 20h 29h 02h 13h

Dec: 240 0

32

41

2

19

After the header is a command byte, selecting the function to use, and then whatever data is required for that function.

5

Standalone (MIDI) mode
The Launchkey powers up into Standalone mode. This mode does not provide specific functionality for interaction with DAWs, the DAW in/out (USB) interface remains unused for this purpose. However, to provide means for capturing events on the Launchkey's DAW control buttons, they do send MIDI Control Change events on Channel 16 (MIDI status: BFh, 191) on the MIDI in / out (USB) interface and the MIDI DIN port:
Figure 1. Decimal:
6

Figure 2. Hexadecimal:
The Start and Stop buttons (Start and Shift + Start on Launchkey Mini SKUs) output the MIDI Real Time Start and Stop messages respectively When creating Custom Modes for the Launchkey, keep these in mind if you are setting up controls to operate on MIDI Channel 16.
7

DAW mode

DAW mode provides DAWs and DAW-like software functionality to realise intuitive user interfaces on the Launchkey's surface. The capabilities described in this chapter are only available once DAW mode is enabled.

All functionality described in this chapter is accessible through the DAW In/Out (USB) interface.

DAW mode control
Enable DAW Mode:

Hex: Dec:

9fh 0Ch 7Fh

159 12

127

Disable DAW Mode:

Hex: Dec:

9Fh 0Ch 00h

159 12

0

When the DAW or DAW-like software recognises the Launchkey and connects to it, it should first enter DAW mode (send 9Fh 0Ch 7Fh), and then, if necessary, enable the feature controls (see the "Launchkey MK4 feature controls" section of this document).

When the DAW or DAW-like software exits, it should exit from DAW mode on the Launchkey (send 9Fh 0Ch 00h) to return it to Standalone (MIDI) mode.

The surface in DAW mode
In DAW mode, contrary to standalone (MIDI) mode, all buttons, and surface elements not belonging to performance features (such as the Custom Modes) can be accessed and will report on the DAW In/Out (USB) interface only. The buttons except for those belonging to the Faders are mapped to Control Change events as follows:

8

Figure 3. Decimal:
Figure 4. Hexadecimal:
The Control Change indices listed are also used for sending colour to the corresponding LEDs (if the button has any), see Colouring the surface [14].
9

Additional modes available in DAW mode
Once in DAW mode, the following additional modes become available: · DAW mode on the pads. · Plugin, Mixers, Sends & Transport on the encoders. · Volume on the faders (Launchkey 49/61 only).
When entering DAW mode, the surface is set up in the following manner: · Pads: DAW. · Encoders: Plugin. · Faders: Volume (Launchkey 49/61 only).
The DAW should initialise each of these areas accordingly.
Mode report and select
The modes of the pads, encoders, and faders can be controlled by MIDI events and are reported back by the Launchkey whenever it changes mode due to user activity. These messages are important to capture, as the DAW should follow them when setting up and using the surfaces as intended based on the selected mode.
Pad modes
Pad mode changes are reported or can be changed by the following MIDI event: · Channel 7 (MIDI status: B6h, 182), Control Change 1Dh (29)
The Pad modes are mapped to the following values: · 01h (1): Drum layout · 02h (2): DAW layout · 04h (4): User Chords · 05h (5): Custom Mode 1 · 06h (6): Custom Mode 2 · 07h (7): Custom Mode 3 · 08h (8): Custom Mode 4 · 0Dh (13): Arp Pattern · 0Eh (14): Chord Map
10

Encoder modes
Encoder mode changes are reported or can be changed by the following MIDI event: · Channel 7 (MIDI status: B6h, 182), Control Change 1Eh (30)
The encoder modes are mapped to the following values: · 01h (1): Mixer · 02h (2): Plugin · 04h (4): Sends · 05h (5): Transport · 06h (6): Custom Mode 1 · 07h (7): Custom Mode 2 · 08h (8): Custom Mode 3 · 09h (9): Custom Mode 4
Fader modes (Launchkey 49/61 only)
Fader mode changes are reported or can be changed by the following MIDI event: · Channel 7 (MIDI status: B6h, 182), Control Change 1Fh (31)
The fader modes are mapped to the following values: · 01h (1): Volume · 06h (6): Custom Mode 1 · 07h (7): Custom Mode 2 · 08h (8): Custom Mode 3 · 09h (9): Custom Mode 4
DAW mode
The DAW mode on pads is selected on entering DAW mode, and when the user selects it by the Shift menu. The pads report back as note (MIDI status: 90h, 144) and aftertouch (MIDI status: A0h, 160) events (the latter only if Polyphonic Aftertouch is selected) on Channel 1, and can be accessed for colouring their LEDs by the following indices:
11

Drum mode
The Drum mode on pads can replace the Drum mode of standalone (MIDI) mode, providing a capability to the DAW to control its colours and receive the messages on the DAW MIDI port. This is done by sending the below message:

Hex: Dec:

B6h 54h 01h 182 84 1

Drum mode can be returned to standalone operation with the below message:

Hex: Dec:

B6h 54h 00h 182 84 0

The pads report back as note (MIDI status: 9Ah, 154) and Aftertouch (MIDI status: AAh, 170) events (the latter only if Polyphonic Aftertouch is selected) on Channel 10, and can be accessed for colouring their LEDs (see "Colouring the Surface [14]") by the following indices:

Encoder modes
Absolute Mode
The Encoders in the following modes provide the same set of Control Changes on Channel 16 (MIDI status: BFh, 191):
· Plugin · Mixer · Sends The Control Change indices provided are as follows:
If the DAW sends them position information, they automatically pick that up.

12

Relative Mode
The Transport Mode uses the relative output mode with the following Control Changes on Channel 16 (MIDI status: BFh, 191):
In Relative mode, the pivot value is 40h(64) (no movement). Values above the pivot point encode clockwise movements. Values below the pivot point encode anticlockwise movements. For example, 41h(65) corresponds to 1 step clockwise and 3Fh(63) corresponds to 1 step anticlockwise. If Continuous Control Touch events are enabled, the Touch On is sent as a Control Change event with Value 127 on Channel 15, while the Touch Off is sent as a Control Change event with Value 0 on Channel 15. For example, the leftmost Pot would send BEh 55h 7Fh for Touch On, and BEh 55h 00h for Touch Off.
Fader mode (Launchkey 49/61 only)
The Faders, in Volume mode, provide the following set of Control Changes on Channel 16 (MIDI status: BFh, 191):
If Continuous Control Touch events are enabled, the Touch On is sent as a Control Change event with Value 127 on Channel 15, while the Touch Off is sent as a Control Change event with Value 0 on Channel 15. For example, the leftmost Fader would send BEh 05h 7Fh for Touch On, and BEh 05h 00h for Touch Off.
13

Colouring the surface
For all controls except the Drum mode, a note, or a control change matching those described in the reports can be sent to colour the corresponding LED (if the control has any) on the following channels:

· Channel 1: Set stationary colour. · Channel 2: Set flashing colour. · Channel 3: Set pulsing colour.

For the Drum mode on Pads, Once the DAW has taken control of the mode [12], the following channels apply:

· Channel 10: Set stationary colour. · Channel 11: Set flashing colour. · Channel 12: Set pulsing colour.

The colour is selected from the colour palette by the note event's Velocity or the control change's value.

Monochrome LEDs can have their brightness set using a CC on channel 4, the CC number is the LED index, the value is the brightness.

e.g.

Hex: Dec:

93h 73h 7Fh 147 115 127

14

Colour palette
When providing colours by MIDI notes or control changes, the colours are chosen according to the following table, decimal:
The same table with hexadecimal indexing:
15

Flashing colour
When sending flashing colour, the colour flashes between that set as static or pulsing colour (A), and that contained in the MIDI event setting flashing (B), at 50% duty cycle, synchronized to the MIDI beat clock (or 120bpm or the last clock if no clock is provided). One period is one beat long.

Pulsing colour
The colour pulses between dark and full intensity, synchronised to the MIDI beat clock (or 120bpm or the last clock if no clock is provided). One period is two beats long, using the following waveform:

RGB colour
Pads and fader buttons can also be set to a custom colour using the following SysEx

Regular SKUs:

Hex: Dec:
Mini SKUs:

F0h 00h 20h 29h 02h 14h 01h 43h <padID> <R> <G> <B> F7h 240 0 32 41 2 20 1 67 <padID> <R> <G> <B> 247

Hex: Dec:

F0h 00h 20h 29h 02h 13h 01h 43h <padID> <R> <G> <B> F7h 240 0 32 41 2 19 1 67 <padID> <R> <G> <B> 247

16

Controlling the screen

Concepts

· Stationary display: A default display which is shown unless any event requires a different display to be temporarily shown above it.
· Temporary display: A display triggered by an event, persisting for the length of the display timeout user setting.
· Parameter name: Used in association with a control, showing what it is controlling. Unless provided by messages (SysEx), typically this is the MIDI entity (such as note or CC).
· Parameter value: Used in association with a control, showing the current value of it. Unless provided by messages (SysEx), this is the raw value of the MIDI entity controlled (such as a number in range 0 - 127 in case of a 7 bits CC).

Configure displays
Regular SKUs:

Hex: Dec:
Mini SKUs:

F0h 00h 20h 29h 02h 14h 04h <target> <config> F7h 240 0 32 41 2 20 4 <target> <config> 247

Hex: Dec:

F0h 00h 20h 29h 02h 13h 04h <target> <config> F7h 240 0 32 41 2 19 4 <target> <config> 247

Once a display is configured for a given target, it can be triggered.

Targets

· 00h (0) - 1Fh (31): Temp. display for Analogue controls (same as CC indices, 05h-0Dh: Faders, 15h-1Ch: encoders)
· 20h (32): Stationary display · 21h (33): Global temporary display (can be used for anything unrelated to the Analogue controls) · 22h (34): DAW pad mode's displayed name (Field 0, empty: default) · 23h (35): DAW Drum pad mode's displayed name (Field 0, empty: default) · 24h (36): Mixer encoder mode's displayed name (Field 0, empty: default) · 25h (37): Plugin encoder mode's displayed name (Field 0, empty: default) · 26h (38): Sends encoder mode's displayed name (Field 0, empty: default) · 27h (39): Transport encoder mode's displayed name (Field 0, empty: default) · 28h (40): Volume fader mode's displayed name (Field 0, empty: default)

17

Config
The <config> byte sets up the arrangement and operation of the display. 00h and 7Fh are special values: It cancels (00h) or brings up (7Fh) the display with its current contents (as MIDI Event, it is a compact way to trigger display).

· Bit 6: Allow Launchkey to generate Temp. Display automatically on Change (default: Set). · Bit 5: Allow Launchkey to generate Temp. Display automatically on Touch (default: Set; this is the Shift +
rotate). · Bit 0-4: Display arrangement

Display arrangements:

· 0: Special value for cancelling display. · 1-30: Arrangement IDs, see table below. · 31: Special value for triggering display.

ID

Description

Num

Fields

F0

F1

F2

1

2 lines: Parameter Name and Text Parameter Value

No

2

Name

Value

-

2

3 lines: Title, Parameter Name and Text Parameter Value

No

3

Title

Name

Value

3

1 line + 2x4: Title and 8 names (for encoder

designations)

No

9

Title

Name1

...

4

2 lines: Parameter Name and Numeric Parameter Value

Yes

1

Name

-

-

(default)

NOTE
The arrangement is ignored for targets only setting names (22h(34) ­ 28h(40)), however for changing triggerability, it needs to be set non-zero (since the value 0 for these still acts for cancelling the display).

18

Setting text
Once a display is configured, the following message can be used to fill in the text fields.

Regular SKUs:

Hex: Dec:
Mini SKUs:

F0h 00h 20h 29h 02h 14h 06h <target> <field> <text...> F7h 240 0 32 41 2 20 6 <target> <field> <text...> 247

Hex: Dec:

F0h 00h 20h 29h 02h 13h 06h <target> <field> <text...> F7h 240 0 32 41 2 19 6 <target> <field> <text...> 247

The text uses the standard ASCII character mapping in the range 20h (32) ­ 7Eh (126) with the addition of the below control codes, which have been reassigned to provide additional non-ASCII characters.

· Empty Box - 1Bh (27) · Filled Box - 1Ch (28) · Flat Symbol - 1Dh (29) · Heart - 1Eh (30)

Other control characters should not be used as their behaviour may change in the future.

19

Bitmap
The screen can also display custom graphics by sending a bitmap to the device.

Regular SKUs:

Hex: Dec:
Mini SKUs:

F0h 00h 20h 29h 02h 14h 09h <target> <bitmap_data> 7Fh 240 0 32 41 2 20 9 <target> <bitmap_data> 127

Hex: Dec:

F0h 00h 20h 29h 02h 13h 09h <target> <bitmap_data> 7Fh 240 0 32 41 2 19 9 <target> <bitmap_data> 127

The <target> can be either the Stationary display (20h(32)) or the Global temporary display (21h(33)). There is no effect on other targets.

The <bitmap_data> is of fixed 1216 bytes, 19 bytes for each pixel row, for a total of 64 rows (19 × 64 = 1216). The 7 bits of the SysEx byte encode pixels from left to right (highest bit corresponding to the leftmost pixel), the 19 bytes covering the 128 pixels width of the display (with five unused bits in the last byte).

Upon success, there is a response to this message, which is suitable for timing fluid animations (once receiving it, the Launchkey is ready to accept a next Bitmap message):

Regular SKUs:

Hex: Dec:
Mini SKUs:

F0h 00h 20h 29h 02h 14h 09h 7Fh 240 0 32 41 2 20 9 127

Hex: Dec:

F0h 00h 20h 29h 02h 13h 09h 7Fh 240 0 32 41 2 19 9 127

The display can be cancelled by either cancelling it explicitly (using the Configure Display SysEx or MIDI Event), or triggering the normal display (whose parameters are preserved while the bitmap is displaying).

NOTE
The firmware can only hold one bitmap in its memory at once.

20

Launchkey MK4 feature controls

Many of the Launchkey's features can be controlled by MIDI CC messages sent to the Launchkey's DAW in port on channel 7 and queried by sending the same message to channel 8. Reply messages confirming changes or answering queries will always be sent on channel 7.
To enable or disable these controls in standalone mode, use the below messages.
Enable feature controls:

Hex: Dec:

9Fh 0Bh 7Fh 159 11 127

Disable feature controls:

Hex: Dec:

9Fh 0Bh 00h 159 11 0

NOTE
· In DAW mode, all feature controls are listening, but will not send the confirmation reply except for a few essential ones.
· In DAW mode, the above messages can be used to turn fully on all of them or revert to the DAW set.
· The CC messages must be sent to the Launchkey's DAW in MIDI port. · Nibble-Split controls use the least significant nibble of two CC values to create an
8-bit value. The first CCs value becomes the most significant nibble. · Features marked with (*) are non-volatile, persisting across power cycles. · Features marked with (#) are always fully enabled in DAW mode.

21

CC Number Hex 02h:22h
03h:23h 04h: 24h 05h: 25h 06h: 26h 07h: 27h 1Dh (#) 1Eh (#) 1Fh (#) 3Ch 3Dh (#) 3Eh (#) 3Fh (#) 44h 45h 46h 47h 49h 4Ah 4Ch
4Dh 4Eh 4Fh (*) 53h 54h
55h 56h 57h 58h 59h 5Ah 5Ch 64h (*)
65h (*)
66h (*) 67h (*)

Decimal (2:34)
(3:35) (4:36) (5:37) (6:38) (7:39) (29) (#) (30) (#) (31) (#) (6) (61) (#) (62) (#) (63) (#) (68) (69) (70) (71) (73) (74) (76)
(77) (78) (79) (*) (83) (84)
(85) (86) (87) (88) (89) (90) (92) (100) (*)
(101) (*)
(102) (*) (103) (*)

Feature

Control Type

Arp Swing
Tempo control Arp Deviate rhythm pattern Arp Ties Arp Accents Arp Ratchets Pads layout select Encoders layout select Faders layout select Scale behaviour select Scale tonic (root note) select Scale mode (type) select Shift DAW 14-bits Analogue output DAW Encoder Relative output DAW Fader Pickup DAW Touch events Arp Scale mode DAW Performance note redirect (When On, Keybed notes go to DAW) Keyboard Zones, mode Keyboard Zones, split key Keyboard Zones, Arp connection select DAW Drumrack active colour DAW Drumrack On / Off (When Off, Drumrack remains in MIDI mode while in DAW mode) Arp Type (Up / Down etc.) Arp Rate (including Triplets) Arp Octave Arp Latch Arp Gate length Arp Gate minimum Arp Mutate MIDI Channel, Part A (or Keybed MIDI Channel for SKUs not having keyboard split) MIDI Channel, Part B (only used on SKUs having keyboard split) MIDI Channel, Chords MIDI Channel, Drums

2's complement signed 14 bits percentage nibble-split bitmask nibble-split bitmask nibble-split bitmask nibble-split bitmask
On/Off On/Off On/Off On/Off On/Off On/Off On/Off 0: Part A, 1: Part B, 2 : Split, 3: Layer MIDI note on default octave keybed 0: Part A, 1: Part B
On/Off percentage milliseconds 0­15 0­15 0­15 0­15

22

CC Number Hex 68h (*) 69h (*) 6Ah (*) 6Bh (*)
6Ch (*) 6Dh (*) 6Eh (*) 6Fh (*) 70h (*) 71h (*)
72h (*) 73h (*) 74h (*) 75h (*) 76h (*) 77h (*) 7Ah 7Bh 7Ch 7Dh

Decimal (104) (*) (105) (*) (106) (*) (107) (*)
(108) (*) (109) (*) (110) (*) (111) (*) (112) (*) (113) (*)
(114) (*) (115) (*) (116) (*) (117) (*) (118) (*) (119) (*) (122) (123) (124) (125)

Feature

Control Type

Keys velocity curve / Fixed velocity select Pads velocity curve / Fixed velocity select Fixed velocity value Arp velocity (whether Arp should take velocity from its note input or use fixed velocity) Pad aftertouch type Pad aftertouch threshold MIDI Clock output LED brightness level Screen brightness level Temporary display timeout
Vegas mode External Feedback Pads power-on default mode select Pots power-on default mode select Faders power-on default mode select Custom Mode Fader pick-up Chord Map Adventure setting Chord Map Explore setting Chord Map Spread setting Chord Map Roll setting

On/Off (0­127 where 0 is min, 127 is max) (0­127 where 0 is min, 127 is max) 1/10 sec units, minimum of 1 sec at 0. On/Off On/Off
0 : Jump, 1 : Pickup 1­5 1­8 0­2 0­100 milliseconds

23


Antenna House XSL Formatter V7.4 MR2 Amazon Linux 2 Graviton2 : 7.4.3.63807 (2024-03-22T11:49 09) Antenna House PDF Output Library 7.4.1901