Skip to content

GMK87 Lighting Presets and Effects

The GMK87 keyboard comes with 8 built-in lighting presets, 19 underglow effects, 5 LED modes, and 9 LED colors. This guide covers everything you need to configure your keyboard lighting exactly how you want it.

For full CLI reference and advanced configuration options, see the Configure Lighting guide.

On this page

Built-in Presets

Each preset configures underglow effects, LED color, brightness, and speed for a complete look. See how to apply them below.

gaming Red breathing, full brightness
Aggressive
work White backlight, moderate
Focused
movie Purple wave, ambient
Ambient
chill Cyan breathing, low brightness
Relaxed
party Rainbow waterfall, max speed
Flashy
minimal All lighting off
Clean
off Everything disabled
None
default Factory settings
Factory

Underglow Effects

The GMK87 supports 19 underglow effects. Select them by name in the app, or by name or number via CLI and API.

Index Effect Name Description
0offDisables underglow completely
1horizontal-dimming-waveHorizontal wave that dims across the keys
2horizontal-pulse-waveHorizontal wave with a pulsing intensity
3waterfallColor cascades downward like a waterfall
4full-cycling-colorsAll keys cycle through colors simultaneously
5breathingSmooth fade in and out like breathing
6full-one-colorSolid single color across all keys
7glow-pressed-keyLights up only the key you press
8glow-spreadingLight radiates outward from the pressed key
9glow-rowLights up the entire row of the pressed key
10random-patternRandom keys light up in random colors
11rainbow-cycleRainbow gradient cycles across the keyboard
12rainbow-waterfallRainbow colors cascade downward
13wave-from-centerLight wave radiates outward from the center
14circling-jkLight circles around the J and K keys
15rainingRandom keys light up and fade like rain drops
16wave-left-rightWave sweeps from left to right across keys
17slow-saturation-cycleSlowly cycles through saturation levels
18slow-rainbow-from-centerSlow rainbow that expands from the center

LED Modes

The big LED (screen area indicator) supports 5 display modes.

Mode Name Description
0Blinking One ColorLED blinks in a single color at a steady interval
1Pulse RainbowLED pulses through rainbow colors smoothly
2Blinking One Color (Alt)Alternate blinking pattern in a single color
3Fixed ColorStays on a single solid color with no animation
4Fixed Color (Alt)Alternate fixed color display mode

LED Colors

The LED supports 9 color presets. Select them visually in the app, or by name or number via CLI and API.

Red0
Orange1
Yellow2
Green3
Teal4
Blue5
Purple6
White7
Off8

Apply with the App

The GMK87 Configurator desktop app provides a visual interface for all lighting settings.

  1. Open the app and connect your keyboard via USB.
  2. Navigate to the Lighting tab.
  3. Pick a preset from the dropdown, or configure effects, brightness, speed, and colors individually.
  4. Use the color picker to choose a custom RGB color, or enable Rainbow Mode.
  5. Click Apply to save the configuration to the keyboard.

Apply with the CLI

Apply a preset

npx gmk87 preset gaming

Custom configuration

Mix and match any underglow effect, LED mode, color, brightness, and speed:

Rainbow cycle at full brightness:

npx gmk87 lights --effect rainbow-cycle --brightness 9 --speed 0

Cyan breathing with a fixed teal LED:

npx gmk87 lights --effect breathing --red 0 --green 255 --blue 255 --brightness 5 --led-mode 3 --led-color teal

Turn off all lighting:

npx gmk87 preset off

All CLI flags

Flag Range Description
--effectname or 0-18Underglow effect
--brightness0-9Underglow brightness (0=off, 9=max)
--speed0-9Effect speed (0=fast, 9=slow)
--rainbowtrue/falseEnable rainbow color cycling
--red --green --blue0-255Custom RGB values
--led-mode0-4LED display mode
--led-colorname or 0-8LED color preset

Apply with the API

Use the Node.js API for programmatic control of lighting.

Apply a preset

import { loadPreset } from 'gmk87-hid-uploader/src/api.js'

await loadPreset('gaming')

Custom configuration

import { setLighting } from 'gmk87-hid-uploader/src/api.js'

await setLighting({
  underglow: {
    effect: 11,       // rainbow-cycle
    brightness: 7,
    speed: 3,
    hue: { red: 0, green: 200, blue: 255 }
  },
  led: { mode: 3, color: 5 }
})
Tip: You can also create your own preset file. Copy presets.json from the project root, modify it, and load it with the loadPreset function.
Configure Lighting guide