Focusrite Launchpad S User Manual

Programmer’s Reference Manual
version 1.02 written by Ben Supper
About T
About This
About TAbout T
his MMMManual
his his
anual
anualanual
controller change message on MIDI channel 1, for example, is signified by the status byte B0h (176).
Launchpad S communicates using MIDI over USB in both directions. This is the only interface that the device supports. By describing the MIDI communication format, this manual contains all the information you need to be able to write software that is customised for Launchpad S.
In terms of communication, Launchpad S is largely similar to the original Launchpad, and is compatible with any software that already supports Launchpad. See the Original Launchpad Compatibility Notes on page 2 for a summary of how the units differ.
This is not an exhaustive document. Certain extra controller change and System Exclusive messages are used to signal between different pieces of software, for authentication, and for remote firmware upgrade. These are beyond the scope of this document. However, it is worth knowing that they exist in case you encounter them while you are playing with Launchpad S.
Number systems and MIDI
Number systems and MIDI conventions
Number systems and MIDI Number systems and MIDI
There are three common ways of expressing MIDI data. All are given in this manual. The first, where appropriate, is a plain English description of the MIDI message. When we describe a musical note, middle C is deemed to be ‘C 3’. MIDI channel 1 is considered the lowest-numbered MIDI channel. Controller numbers begin at zero.
Throughout this manual, MIDI messages are also expressed in plain data, with decimal and hexadecimal equivalents. The hexadecimal number will always be given with a lower-case ‘h’ at the end, and the decimal equivalent given in brackets. A
conventions
conventionsconventions
In all circumstances unless described otherwise, Launchpad transmits and responds only to messages on MIDI channel 1.
For
For Max
Max users
For For
For the benefit of those who use Cycling 74’s Max software to process and manipulate MIDI data, a series of tutorial patches are available. These demonstrate many of Launchpad’s features and capabilities within the Max environment, and can be downloaded from novationmusic.com.
Max is a world of its own, and this manual does not specifically instruct on the use of Launchpad inside its environment. Where particular tutorials are useful, though, they will be introduced.
The demonstration patches are designed to select the original Launchpad automatically, but the correct device will need choosing in the relevant drop-down boxes where Launchpad S is concerned.
Original
Original Launchpad
OriginalOriginal
We made every effort to ensure that Launchpad S will work with all the software released for the original Launchpad. What follows is a description of the differences that are already known.
Launchpad S is a class-compliant MIDI device, while Launchpad is not. This means that no additional drivers are needed to get started with Launchpad S. However, the standard class drivers on Windows do not allow different programs to use the same MIDI device simultaneously. To allow Launchpad S to be shared
users
MaxMax
usersusers
Launchpad Compatibility Notes
Launchpad Launchpad
Compatibility Notes
Compatibility NotesCompatibility Notes
1
2
between programs, you will still need to install the Novation USB driver.
Launchpad S has a bootloader mode, in which certain settings can be changed and saved by the user. These can alter its maximum current consumption and USB identity. If you are a Linux developer, you might want to be aware that the USB PID of Launchpad S can fall in a range between 20h and 2Fh.
The MIDI communication speed of Launchpad S is approximately forty times that of the original Launchpad. Many of its more advanced MIDI features were tricks to reduce MIDI traffic. Programmers could apply these in succession until their software worked smoothly and responsively. When writing for Launchpad S, heavy MIDI traffic can be exchanged seamlessly and these tricks are no longer necessary. However, if your new software generates particularly large amounts of MIDI data, please be aware that users of the original Launchpad will obtain a less satisfactory user experience.
Further differences occur because Launchpad S uses more efficient LEDs with better wavelength separation, and it drives these in a new way. If your colour vision is good, you may observe four or five distinct colours that could be used at maximum brightness to signify different settings. This was not the case on the original Launchpad, where the colour space was more modest and not so easily traversed. One ramification of the new colour space is that certain colours that appeared as yellow on the original Launchpad can now appear as yellow-green.
If backwards compatibility is desired, assume that only red, amber, and green are discernible.
We have imitated this command’s effect by turning it into the brightness command (page 6), but we cannot match it exactly.
Those features that are exclusive to Launchpad S are assigned their own section at the end of this manual. Otherwise, they may be applied either to the old or the new device.
Quick Start
Quick Start
Quick StartQuick Start
The central grid of 64 buttons on Launchpad sends note data on MIDI channel 1. A note-on message of maximum velocity is delivered when the button is pressed, and a message of velocity zero when released. Sending the same data back to Launchpad will light or extinguish the LED behind the button.
Different note velocities produce different colours. A velocity of 0Fh (15) will light a button red; 3Ch (60) will light it green; 3Fh (63) will light it amber.
Most Launchpad communication is hardly more complicated than this.
Max
Max patch
patch: LP_2_MIDI_in_Cellblock.maxpat
MaxMax
This patch introduces the default layout of Launchpad, decomposing the location of a pressed button into its respective row and column, and displaying its incoming velocity on an 8×8 grid.
: LP_2_MIDI_in_Cellblock.maxpat
patchpatch
: LP_2_MIDI_in_Cellblock.maxpat: LP_2_MIDI_in_Cellblock.maxpat
If your software uses the original Launchpad’s ‘set duty cycle’ feature, you might perceive visual differences in the way that Launchpad S interprets this command compared with Launchpad.
3
4
Computer
Computer----to
ComputerComputer
 Reset
Reset
ResetReset
Host » Launchpad: Channel 1: controller 0 set to 0. B0h, 00h, 00h (176, 0, 0).
All LEDs are turned off. Launchpad’s settings revert to their power-on values.
 Turn on all LEDs
Turn on all LEDs
Turn on all LEDsTurn on all LEDs
Host » Launchpad: Channel 1: controller 0 set to 125-127. B0h, 00h, 7D-7Fh (176, 0, 125-127).
This command behaves like the Reset instruction above, except that the LEDs are lit amber. 7Dh (125) is the lowest intensity; 7Fh (127) is the highest.
 Change the button layout
Change the button layout
Change the button layoutChange the button layout
to----Launchpad
Launchpad CCCConfiguration
toto
Launchpad Launchpad
onfiguration MMMMessages
onfiguration onfiguration
essages
essagesessages
Layout 2 is the drum rack layout. This is ideal for situations where Launchpad must launch samples or deal with musical MIDI. Six continuous octaves are available in this mode, and they are laid out in a regular pattern.
Figures 1–3 (starting on page 7) illustrate the button locations and MIDI note numbers in each mapping mode.
Max
Max patch: LP_6_DrumRackNoteLayout.maxpat
patch: LP_6_DrumRackNoteLayout.maxpat
MaxMax
patch: LP_6_DrumRackNoteLayout.maxpatpatch: LP_6_DrumRackNoteLayout.maxpat
The button layout mode — either drum rack or X-Y [normal] — can be chosen from the drop-down box at the top-right of the patch. Choosing a new layout will immediately change Launchpad’s button mode. The MIDI note of the most recently-pressed button is shown on the displayed piano, and the note can be played via another connected MIDI device.
Host » Launchpad: Channel 1: controller 0 set to 1 or 2. B0h, 00h, 01-02h (176, 0, 1-2).
Launchpad has two mapping modes that determine the MIDI note that corresponds to each button.
Layout 1 is the X-Y layout. This is best for writing software that uses Launchpad S as a free grid, as it is easy to navigate around the grid in any direction simply by adding or subtracting.
5
6
Upper
UpperUpper
Upper
Launchpad
LaunchpadLaunchpad
Launchpad
::::
Upper
UpperUpper
Upper
Launchpad
LaunchpadLaunchpad
Launchpad
::::
Figure 1.
Figure 1. Launchpad
Figure 1. Figure 1.
Launchpad MIDI
Launchpad Launchpad
MIDI notes
notes, hexadecimal values
MIDI MIDI
, hexadecimal values
notesnotes
, hexadecimal values, hexadecimal values
Figure 2
Figure 2.
Figure 2Figure 2
. Launchpad
Launchpad MIDI
. .
Launchpad Launchpad
MIDI notes
MIDI MIDI
notes, decimal values
, decimal values
notesnotes
, decimal values, decimal values
00h 01h 02h 03h 04h 05h 0 6h 07h
10h 11h 12h 13h 14h 1 5h 16h 17h
20h 21h 22h 23h 24h 25h 2 6h 27h
30h 31h 32h 33h 34h 35h 3 6h 37h
40h 41h 42h 43h 44h 4 5h 46h 47h
50h 51h 52h 53h 54h 55h 5 6h 57h
60h 61h 62h 63h 64h 65h 6 6h 67h
70h 71h 72h 73h 74h 7 5h 76h 77h
40h 41h 42h 43h 60h 61h 6 2h 63h
3Ch 3Dh 3Eh 3Fh 5Ch 5Dh 5Eh 5F h
38h 39h 3Ah 3Bh 58h 59h 5Ah 5Bh
34h 35h 36h 37h 54h 55h 5 6h 57h
30h 31h 32h 33h 50h 51h 5 2h 53h
08h
18h
28h
38h
48h
58h
68h
78h
X-Y layout
Lower
Lower Launchpad
Launchpad::::
LowerLower
LaunchpadLaunchpad
Drum rack layout
Different octaves are shaded differently to make the note pattern clearer.
64h
65h
66h
67h
68h
Cs are coloured red; Fs are coloured blue.
0 1 2 3 4 5 6 7
16 17 18 19 20 21 2 2 23
32 3 3 34 35 36 37 38 39
48 4 9 50 51 52 53 54 55
64 6 5 66 67 68 69 70 71
80 8 1 82 83 84 85 86 87
96 9 7 98 99 100 101 102 103
112 113 1 14 115 116 117 118 119
64 6 5 66 67 96 97 98 99
60 6 1 62 63 92 93 94 95
56 5 7 58 59 88 89 90 91
52 5 3 54 55 84 85 86 87
48 4 9 50 51 80 81 82 83
8
24
40
56
72
88
104
120
X-Y layout
Lower
Lower Launchpad
Launchpad::::
LowerLower
LaunchpadLaunchpad
Drum rack layout
Different octaves are shaded differently to make the note pattern clearer.
100
101
102
103
104
Cs are coloured red; Fs are coloured blue.
2Ch 2Dh 2Eh 2Fh 4Ch 4Dh 4Eh 4Fh
28h 29h 2Ah 2Bh 48h 49h 4Ah 4Bh
24h 25h 26h 27h 44h 45h 4 6h 47h
7
69h
6Ah
6Bh
44 4 5 46 47 76 77 78 79
40 4 1 42 43 72 73 74 75
36 3 7 38 39 68 69 70 71
105
106
107
8
Upper
UpperUpper
Upper
Launchpad
LaunchpadLaunchpad
Launchpad
::::
Figure
Figure 3333.
Figure Figure
. Launchpad MIDI notes, note pitches
Launchpad MIDI notes, note pitches
. .
Launchpad MIDI notes, note pitchesLaunchpad MIDI notes, note pitches
 Change the brightness
Change the brightness
Change the brightnessChange the brightness
Host » Launchpad: Channel 1: change controller 30 or 31. B0h, 1E-1Fh, Data (176, 30-31, Data).
C -2 C#-2 D -2 D#-2 E -2 F -2 F#- 2 G -2
E -1 F -1 F#- 1 G -1 G#-1 A -1 A#-1 B -1
G#0 A 0 A#0 B 0 C 1 C#1 D 1 D#1
C 2 C#2 D 2 D#2 E 2 F 2 F#2 G 2
E 3 F 3 F#3 G 3 G#3 A 3 A#3 B 3
G#4 A 4 A#4 B 4 C 5 C#5 D 5 D#5
C 6 C#6 D 6 D#6 E 6 F 6 F#6 G 6
E 7 F 7 F#7 G 7 G#7 A 7 A#7 B 7
E 3 F 3 F#3 G 3 C 6 C#6 D 6 D#6
C 3 C#3 D 3 D#3 G#5 A 5 A#5 B 5
G#2 A 2 A#2 B 2 E 5 F 5 F#5 G 5
E 2 F 2 F#2 G 2 C 5 C#5 D 5 D#5
C 2 C#2 D 2 D#2 G#4 A 4 A#4 B 4
G#1 A 1 A#1 B 1 E 4 F 4 F#4 G 4
E 1 F 1 F#1 G 1 C 4 C#4 D 4 D#4
C 1 C#1 D 1 D#1 G#3 A 3 A#3 B 3
G#-2
C 0
E 1
G#2
C 4
E 5
G#6
C 8
E 6
F 6
F#6
G 6
G#6
A 6
A#6
B 6
X-Y layout
Lower
Lower Launchpad
Launchpad::::
LowerLower
LaunchpadLaunchpad
Drum rack layout
Different octaves are shaded differently to make the note pattern clearer.
Cs are coloured red; Fs are coloured blue.
This command conveys a specially-formatted fraction that Launchpad S uses to scale its overall brightness. Its effect is most pronounced when some LEDs are dimmed.
In the original Launchpad, this function set the device’s duty cycle for dim LEDs, but Launchpad S is driven in a way that does not accommodate such treatment. While the new command is engineered to behave in a similar way, some differences in appearance will be experienced.
Many programs use this command: either to apply fade effects to the unit, or to suggest a metronome beat, by rhythmically setting the brightness briefly to a higher and then quickly back to its default setting.
The original Launchpad would begin to flicker visibly when duty cycles of 1/6th or less were used for any length of time, and the visual contrast would suffer when duty cycles greater than 1/5th (its default) were employed. These technical limitations provided the rationale for providing such configuration in the first place.
In Launchpad S, the default is still 1/5th. The brightness may validly be set to any value between 1/18th and 6/1, although settings of more than 1/3rd are not particularly useful, and may overload the USB host.
Brightness = numerator / denominator
9
10
When numerator is less than 9, send:
B0h, 1Eh, 10h×(numerator-1) + (denominator–3) (176, 30, 16× (numerator-1) + (denominator–3)
When numerator is 9 or more, send:
B0h, 1Fh, 10h×(numerator-9) + (denominator–3) (176, 31, 16× (numerator-9) + (denominator–3)
The following pre-baked examples may be useful. Note that the first two will flicker on an original Launchpad, and will look absolutely revolting.
Brightness
Brightness Hex message
BrightnessBrightness
1/16 B0h, 1Eh, 0Dh 176, 30, 13
1/11 B0h, 1Eh, 08h 176, 30, 8
1/7 B0h, 1Eh, 04h 176, 30, 4
1/5 (default) B0h, 1Eh, 02h 176, 30, 2
1/3 B0h, 1Eh, 00h 176, 30, 0
Max
Max patch
patch: LP_8_Brightness.maxpat
MaxMax
patchpatch
This patch modulates the brightness through 2/9th, 3/9th and so on, to 9/9ths and back again. The overall effect is of the LEDs of Launchpad fading in and out. A dial can be used to set the speed of movement.
Hex message Decimal message
Hex messageHex message
: LP_8_Brightness.maxpat
: LP_8_Brightness.maxpat: LP_8_Brightness.maxpat
Decimal message
Decimal messageDecimal message
Computer
Computer----to
ComputerComputer
The simplest way of changing the colour of a pad LED is to send Launchpad a note-on message on MIDI channel 1, where the note number conforms to the numbers given in Figures 1–3, and the velocity corresponds to the desired colour.
In the X-Y layout, a note value that falls within the gaps between two rows – for example, notes 9 to 0Fh (15) – will be interpreted as the last column on that row, and will therefore light the scene launch button.
Figure 4.
Figure 4. The sixteen displayable colours of
Figure 4. Figure 4.
Readers who are versed in the manipulation of binary will have worked out that bits 1 and 0 of the note velocity refer to the level of the red element, and bits 5 and 4 refer to the level of the green element. The red intensity is therefore varied by progressively adding 1 to the ‘off’ value, shown in Figure 4 as 0Ch (12). The green intensity is adjustable by progressively adding 10h (16).
to----Launchpad LED
Launchpad LED MMMMessages
toto
Launchpad LED Launchpad LED
The sixteen displayable colours of Launchpad
The sixteen displayable colours of The sixteen displayable colours of
essages
essagesessages
Launchpad SSSS
LaunchpadLaunchpad
11
Red and green light combine in equal proportions to form the amber colour, and in other proportions to form orange and yellow.
12
The 64 grid buttons and the eight clip launch buttons are determined by sending appropriate MIDI note messages. However, the eight round buttons at the top — the mode and cursor controls — are sent as control change messages 68h (104) to 6Fh (111) on MIDI channel 1, with the controller value containing the colour data. This makes it easier for programs to deal with them differently.

Example: to light the
Example: to light the second
Example: to light the Example: to light the
Channel 1: note on C 6 / 60h (96), velocity 0Fh (15). 90h, 60h, 0Fh (144, 96, 15).
second----from
secondsecond
from----bottom
fromfrom
bottom left grid LED red
bottombottom
left grid LED red
left grid LED redleft grid LED red
Note: if this lights a different LED, you may be using the drum rack layout (page 5).

Example: to light the cursor left LED green
Example: to light the cursor left LED green
Example: to light the cursor left LED greenExample: to light the cursor left LED green
Channel 1: set controller 6Ah (106) to 3Ch (60). B0h, 6Ah, 3Ch (176, 106, 60).
Max
Max patch: LP_7_MIDI_in_lit_Matrix.maxpat
patch: LP_7_MIDI_in_lit_Matrix.maxpat
MaxMax
patch: LP_7_MIDI_in_lit_Matrix.maxpatpatch: LP_7_MIDI_in_lit_Matrix.maxpat
This patch demonstrates the use of Jitter’s matrix function to store and recall conventional note messages, by switching between two screens of LEDs. Pressing buttons on the grid will toggle LEDs between red and off in one page, and green and off in the other. Pressing the the two pages.
This patch uses the Jitter library, which requires QuickTime to be installed.
Rapid LED
Rapid LED UUUUpdate
Rapid LED Rapid LED
pdate
pdatepdate
mixer
button on Launchpad changes between
To make more economical use of data, the original Launchpad featured a mode in which the entire LED grid could be updated using half the messages that would otherwise be required. This can still be employed in Launchpad S to reduce MIDI traffic.
Rapid update uses note-on messages on MIDI channel 3. In each message, the note number is treated as the colour of one LED, and the note velocity is treated as the colour of its neighbour.
Max
Max patch
patch: LP_3_LED_ColourMix.maxpat
MaxMax
Either the multi slider or drop-down box at the top of the patch window can be used to choose the colour of Launchpad’s top-left grid LED. The number boxes show the note velocity calculated to produce this colour.
: LP_3_LED_ColourMix.maxpat
patchpatch
: LP_3_LED_ColourMix.maxpat: LP_3_LED_ColourMix.maxpat
Hex
and
Dec
13
Starting at the top-left-hand corner in either mode, subsequent note messages update the 64-pad grid horizontally and then vertically. They then update the eight clip launch buttons, and then the eight mode buttons.
If rapid LED update is interrupted by a valid message on MIDI channel 1, Launchpad will leave this mode and reset the cursor to the top-left-hand corner ready for subsequent updates. It is therefore essential that rapid update is used only when data traffic to Launchpad is carefully managed.
14

Example: update the top row
Example: update the top row
Example: update the top rowExample: update the top row
This command, illustrating the beginning of a rapid LED update, sets the topmost row to display a pleasing spectrum of colours.
Channel 3: send a stream of notes and velocities corresponding to colours. 92h, 0Fh, 1Fh, 2Fh, 3Fh, 3Fh, 3Eh, 3Dh, 3Ch. (146, 15, 31, 47, 63, 63, 62, 61, 60).
Adventures in
Adventures in DDDDouble
Adventures in Adventures in
We now reach our second sleight of hand intended to improve the performance of the original Launchpad. The note velocity associated with each pad is used to choose the LED colour, but also conveys two extra bits of information. Programs may use these bits to control the state of each LED at some point in the future. Launchpad updates its LEDs to reflect this new configuration in response to a certain control change message.
Essentially, Launchpad manages two sets of LED data — buffers — for each pad. By default, these are configured so that the buffer that is updated by incoming MIDI messages is the same as the one that is visible, so that note-on messages immediately change their respective pads.
ouble BBBBuffering
oubleouble
uffering
ufferinguffering
The visible buffer can alternatively be configured to swap automatically at 280ms intervals in order to configure LEDs to flash.
The extra bits within every note velocity, 3 and 2, can be set as follows:
bit 3:bit 2
bit 3:bit 2 Mode
bit 3:bit 2bit 3:bit 2
00 Ignore Do nothing to the non-visible buffer.
01 Copy Copy this colour to the non-visible buffer.
10 Clear Turn off the LED in the non-visible buffer.
11 Copy As ‘Copy’ above.
The colours given in Figure 4 are expressed in ‘copy’ mode, with bits 3 and 2 set. These examples will make it easy for software to incorporate flashing LEDs without being re-written. To use these examples in ‘clear’ mode (in other words, to configure the LEDs to flash), it is sufficient just to clear bit 2. This means subtracting 4 from the velocity value given in Figure 3. To set LEDs in ‘ignore’ mode, subtract 0Ch (12) instead. See the examples at the end of this section.
Mode Meaning
ModeMode
Meaning
MeaningMeaning
However, the buffers can also be configured so that Launchpad’s LED status is updated invisibly. With a single command, these buffers can then be swapped. The pads will instantly update to show their pre-programmed state, while the pads can again be updated invisibly ready for the next swap.
15
16
 Change the LED buffer
Change the LED bufferssss
Change the LED bufferChange the LED buffer

Example: F
Example: Flashing LEDs
Example: FExample: F
lashing LEDs
lashing LEDslashing LEDs
Host » Launchpad: Channel 1: controller 0 set to 20-3Dh
(32-61). B0h, 00h, 20-3Dh (176, 0, 32-61).
The table below shows those control values that will prove most useful. For those with the interest and expertise to delve further, a definitive description of these settings is given in terms of bitwise logic in the original Launchpad Programmer’s Reference Manual.
Control value
Control value Mode
Control valueControl value
20h (32) Simple
24h (36) Buffered 0 Display buffer 0, and write to buffer 1.
21h (33) Buffered 1 Display buffer 1, and write to buffer 0.
34h (52)
31h (49)
28h (40) Flash
Mode Meaning
ModeMode
Buffered 0 + Copy
Buffered 1 + Copy
Meaning
MeaningMeaning
(the default) Display and write to buffer 0.
Display buffer 0, write to buffer 1, copy buffer 0 to buffer 1.
Display buffer 1, write to buffer 0, copy buffer 1 to buffer 0.
Flash mode: write to buffer 0, and swap the display buffer every 280ms.
Turn flashing on.
Channel 1: set controller 0 to 28h (40). B0h, 00h, 28h (176, 0, 40).
Then set second-from-bottom left grid LED to light amber solidly.
Channel 1: note on C 6 / 60h (96), velocity 3Fh (63). 90h, 60h, 3Fh (144, 96, 63).
Then set the next grid LED to flash amber.
Channel 1: note on C#6 / 61h (97), velocity 3Bh (59). 90h, 61h, 3Bh (144, 97, 59).
Then set the next grid LED to flash green.
Channel 1: note on D 6 / 62h (98), velocity 38h (56). 90h, 62h, 38h (144, 98, 56).
Then turn off the first LED.
Channel 1: note on C 6 / 60h (96), velocity 0Ch (12). 90h, 60h, 0Ch (144, 96, 12).
Finally, turn flashing off.
Channel 1: set controller 0 to 20h (32). B0h, 00h, 20h (176, 0, 32).
17
18

Example:
Example: DDDDouble buffering
Example: Example:
ouble buffering
ouble bufferingouble buffering
Enter buffering mode.
The display will not change until the buffers are swapped again, as follows:
Channel 1: set controller 0 to 31h (49). B0h, 00h, 31h (176, 0, 49).
Set some LEDs. We will use ‘ignore’ mode to set four adjacent LEDs to red-amber-green-amber. (We are using running status here: part of the MIDI spec that allows us to send a single status byte followed by a stream of note/velocity pairs.)
Channel 1: note on C 6 / 60h (96), velocity 3. note on C#6 / 61h (97), velocity 33h (51). note on D 6 / 62h (98), velocity 30h (48). note on D#6 / 63h (99), velocity 33h (51). 90h, 60h, 03h, 61h, 33h, 62h, 30h, 63h, 33h. (144, 96, 3, 97, 51, 98, 48, 99, 51).
The display will update invisibly, and will not change until the buffers are cycled as follows:
Channel 1: set controller 0 to 34h (52). B0h, 00h, 34h (176, 0, 52).
Set the first amber LED to green, and turn off the second amber LED. We will use ‘ignore’ mode again: otherwise the visible state of Launchpad will change. (Note the use of running status again.)
Channel 1: set controller 0 to 31h (49). B0h, 00h, 31h (176, 0, 49).
To continue working in this way, cycle between controller values 31h (49) and 34h (52) to swap buffers. Every time this is done, all the LEDs will change instantly.
Return to the default mode when you have finished:
Channel 1: set controller 0 to 20h (32). B0h, 00h, 20h (176, 0, 32).
Max
Max patch: LP_5_LED_Banks.maxpat
patch: LP_5_LED_Banks.maxpat
MaxMax
patch: LP_5_LED_Banks.maxpatpatch: LP_5_LED_Banks.maxpat
The ‘LED colour’ option chooses the transmitted note velocity. The ‘bank’ option determines whether the note. A note is sent to the top-left grid button whenever the LED colour option is changed.
Different bank options are selectable from the ‘Options’ drop-down menu. As soon as its state is changed, the appropriate controller message is transmitted to Launchpad.
Ignore, Copy
or
Clear
mode is used while sending the
Channel 1: note on C#6 / 61h (97), velocity 30h (48). note on D#6 / 63h (99), velocity 0. 90h, 61h, 30h, 63h, 00h. (144, 97, 48, 99, 0).
19
20
New Features
New Features
New FeaturesNew Features
 Device Inquiry
Device Inquiry
Device InquiryDevice Inquiry
Launchpad S responds to the MIDI 1.0 specification’s Device Inquiry message. The original Launchpad does not. A device response can be generated by sending:
F0h, 7Eh, 7Fh, 06h, 01h, F7h. (240, 126, 127, 6, 1, 247).
Launchpad S will respond with data appropriate to its identity. Novation’s manufacturer ID is 00h, 20h, 29h (0, 32, 41), and the device code for Launchpad S is 20h, 00h (32, 00).
 Scrolling text
Scrolling text
Scrolling textScrolling text
Launchpad S natively supports scrolling text. ASCII text can be embedded in a System Exclusive message. Additional bytes are reserved to change the scrolling speed or text colour.
F0h, 00h, 20h, 29h, 09h, colour, text ..., F7h (240, 0, 32, 41, 9, colour, text ..., 247)
Colour refers to the scroll text colour, and should be supplied in the same way as the MIDI note velocity, as described in Figure 3. Additionally, bit 4 can be set (add 64 to the velocity) in order to make the text loop.
In addition to the standard ASCII characters, Launchpad S recognises plain values of 1-7 as speed commands, where 1 is slowest and 7 is fastest. This allows the scrolling speed to be manipulated mid-text. The default speed is 4.
When the text ends, Launchpad S restores the LEDs to their previous settings. As the text either ends or loops, a controller change message will be sent back to the host, setting controller 0 to 3:
B0h, 00h, 03h (176, 0 3)
This enables software to keep track of the message’s progress.

Example: H
Example: Hello world
Example: HExample: H
Start the text scrolling with the following System Exclusive message:
F0h, 00h, 20h, 29h, 09h, 7Ch, 05h, 48h, 65h, 6Ch, 6Ch, 6Fh, 20h, 02h, 77h, 6fh, 72h, 6ch, 64h, 21h, F7h
(240, 0, 32, 41, 9, 124, 5, 72, 101, 108, 108, 111, 32, 2, 119, 111, 114, 108, 100, 33, 247)
This loops the text in green, playing ‘Hello’ quickly and ‘world!’ slowly. To stop it, just send an empty scroll command:
F0h, 00h, 20h, 29h, 09h, 00h, F7h (240, 0, 32, 41, 9, 0, 247)
Max patch: LP_9_Scrolling.maxpat
Max patch: LP_9_Scrolling.maxpat
Max patch: LP_9_Scrolling.maxpatMax patch: LP_9_Scrolling.maxpat
This patch demonstrates custom scrolling text. The colour and loop settings can be changed, and a text string entered. This is converted into the relevant System Exclusive message format, and sent to Launchpad S.
ello world
ello worldello world
21
22
http://www.novationmusic.com
Loading...