color-palette-ref

APC Mini MK2 color palette reference with velocity values and custom RGB via SysEx. Use when user asks about "color", "velocity value", "RGB", "palette", "brightness", "LED color", or needs to set specific colors on the APC Mini MK2.

$ 설치

git clone https://github.com/majiayu000/claude-skill-registry /tmp/claude-skill-registry && cp -r /tmp/claude-skill-registry/skills/devops/color-palette-ref ~/.claude/skills/claude-skill-registry

// tip: Run this command in your terminal to install the skill


name: color-palette-ref description: APC Mini MK2 color palette reference with velocity values and custom RGB via SysEx. Use when user asks about "color", "velocity value", "RGB", "palette", "brightness", "LED color", or needs to set specific colors on the APC Mini MK2.

APC Mini MK2 Color Palette Reference

Complete reference for the 128-color velocity palette and custom RGB control.

Primary Colors (Quick Reference)

ColorVelocityHexApproximate RGB
Off00x00-
White30x03#FFFFFF
Red50x05#FF0000
Orange90x09#FF8000
Yellow130x0D#FFFF00
Lime170x11#80FF00
Green210x15#00FF00
Mint290x1D#00FF80
Cyan330x21#00FFFF
Sky370x25#0080FF
Blue450x2D#0000FF
Purple490x31#8000FF
Magenta530x35#FF00FF
Pink570x39#FF0080
Hot Pink950x5F#FF1493

Extended Color Palette

Reds (Velocity 1-8)

VelocityHexDescription
10x01Dark Red
20x02Red-Orange Dark
30x03White/Warm
40x04Light Red
50x05Red
60x06Red-Orange
70x07Orange-Red
80x08Dark Orange

Oranges/Yellows (Velocity 9-16)

VelocityHexDescription
90x09Orange
100x0ALight Orange
110x0BAmber
120x0CYellow-Orange
130x0DYellow
140x0ELight Yellow
150x0FPale Yellow
160x10Yellow-Green

Greens (Velocity 17-28)

VelocityHexDescription
170x11Lime
180x12Yellow-Green
190x13Light Green
200x14Pale Green
210x15Green
220x16Green Dark
230x17Forest Green
240x18Teal-Green
250x19Sea Green
260x1AAqua-Green
270x1BTurquoise
280x1CCyan-Green

Cyans/Blues (Velocity 29-48)

VelocityHexDescription
290x1DMint
300x1EAqua
310x1FLight Cyan
320x20Pale Cyan
330x21Cyan
370x25Sky Blue
410x29Light Blue
450x2DBlue

Purples/Magentas (Velocity 49-64)

VelocityHexDescription
490x31Purple
500x32Violet
510x33Lavender
520x34Light Purple
530x35Magenta
540x36Pink-Magenta
550x37Hot Pink
560x38Deep Pink
570x39Pink

Brightness Control via MIDI Channel

The same velocity color appears at different brightness levels:

ChannelBrightnessUsage
010%Very dim
125%Dim
240%Low
355%Medium-Low
470%Medium
585%High
6100%Full (recommended)

Example: Red at different brightness levels

output.send('noteon', { note: 0, velocity: 5, channel: 0 }); // 10% red
output.send('noteon', { note: 0, velocity: 5, channel: 3 }); // 55% red
output.send('noteon', { note: 0, velocity: 5, channel: 6 }); // 100% red

Animation Effects via MIDI Channel

ChannelEffectRate
7Pulse1/16 note
8Pulse1/8 note
9Pulse1/4 note
10Pulse1/2 note
11Blink1/24 note
12Blink1/16 note
13Blink1/8 note
14Blink1/4 note
15Blink1/2 note

Example: Pulsing red

output.send('noteon', { note: 0, velocity: 5, channel: 9 }); // Red pulse 1/4

Custom RGB via SysEx

For precise color control beyond the 128-color palette:

SysEx Message Format

F0 47 7F 4F 24 00 08 [pad] [pad] [R-MSB] [R-LSB] [G-MSB] [G-LSB] [B-MSB] [B-LSB] F7

RGB Encoding Function

function encodeRGB(value: number): [number, number] {
  // Split 8-bit value into MSB (bit 7) and LSB (bits 0-6)
  const msb = (value >> 7) & 0x01;
  const lsb = value & 0x7F;
  return [msb, lsb];
}

Complete Custom RGB Function

function setCustomRGB(
  output: Output,
  pad: number,
  r: number,
  g: number,
  b: number
) {
  const [rMSB, rLSB] = encodeRGB(r);
  const [gMSB, gLSB] = encodeRGB(g);
  const [bMSB, bLSB] = encodeRGB(b);

  output.send('sysex', [
    0xF0,                   // SysEx start
    0x47,                   // Akai manufacturer ID
    0x7F,                   // Device broadcast
    0x4F,                   // APC Mini MK2 product ID
    0x24,                   // RGB LED command
    0x00, 0x08,             // Length (8 bytes)
    pad, pad,               // Start/end pad (single pad)
    rMSB, rLSB,             // Red
    gMSB, gLSB,             // Green
    bMSB, bLSB,             // Blue
    0xF7                    // SysEx end
  ]);
}

Range RGB (Multiple Pads)

function setRangeRGB(
  output: Output,
  startPad: number,
  endPad: number,
  r: number,
  g: number,
  b: number
) {
  const [rMSB, rLSB] = encodeRGB(r);
  const [gMSB, gLSB] = encodeRGB(g);
  const [bMSB, bLSB] = encodeRGB(b);

  output.send('sysex', [
    0xF0, 0x47, 0x7F, 0x4F, 0x24,
    0x00, 0x08,
    startPad, endPad,       // Range of pads
    rMSB, rLSB,
    gMSB, gLSB,
    bMSB, bLSB,
    0xF7
  ]);
}

Common Color Examples

// Primary colors
setCustomRGB(output, 0, 255, 0, 0);     // Red
setCustomRGB(output, 1, 0, 255, 0);     // Green
setCustomRGB(output, 2, 0, 0, 255);     // Blue

// Secondary colors
setCustomRGB(output, 3, 255, 255, 0);   // Yellow
setCustomRGB(output, 4, 0, 255, 255);   // Cyan
setCustomRGB(output, 5, 255, 0, 255);   // Magenta

// Pastels
setCustomRGB(output, 6, 255, 182, 193); // Light Pink
setCustomRGB(output, 7, 173, 216, 230); // Light Blue

// Brand colors
setCustomRGB(output, 8, 29, 185, 84);   // Spotify Green
setCustomRGB(output, 9, 255, 69, 0);    // SoundCloud Orange

Peripheral Button Colors

Track and Scene buttons have fixed colors:

Button TypeLED ColorOn VelocityBlink Velocity
Track 1-8Red12
Scene 1-8Green12
// Track button on
output.send('noteon', { note: 100, velocity: 1, channel: 0 });

// Scene button blinking
output.send('noteon', { note: 112, velocity: 2, channel: 0 });