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
Loading...
+ 9 hidden pages