Files
zmk/docs/docs/config/led-indicators.md
Joel Spadin 197f899777 feat: Add LED indicator support (#3239)
This adds a new zmk,indicator-leds device, which maps HID indicator
states onto any devices that implement the LED driver API. This adds
support for things like a caps lock LED.

The name was chosen so that more drivers could be added later as
zmk,indicator-*, for example a version that uses the LED strip API.
2026-03-23 02:35:35 -04:00

2.5 KiB

title, sidebar_label
title sidebar_label
LED Indicators Configuration LED Indicators

See the LED indicators feature page for more details.

See Configuration Overview for instructions on how to change these settings.

Kconfig

Definition files:

Config Type Description Default
CONFIG_ZMK_INDICATOR_LEDS_INIT_PRIORITY int Indicator LED device driver initialization priority 91

CONFIG_ZMK_INDICATOR_LEDS_INIT_PRIORITY must be set to a larger value than CONFIG_LED_INIT_PRIORITY.

Indicator LED Driver

This driver maps HID indicator states to LED API devices.

Devicetree

Applies to: compatible = "zmk,indicator-leds"

Definition file: zmk/app/dts/bindings/indicators/zmk,indicator-leds.yaml

Property Type Description Default
indicator int The HID_INDICATOR_* value to indicate
leds phandles One or more LED devices to control
active-brightness int LED brightness in percent when the indicator is active 100
inactive-brightness int LED brightness in percent when the indicator is not active 0
disconnected-brightness int LED brightness in percent when the keyboard is not connected 0
on-while-idle bool Keep LEDs enabled even when the keyboard is idle and on battery power false

The indicator property must be one of the HID_INDICATOR_* values defined in zmk/app/include/dt-bindings/zmk/hid_indicators.h. You may also combine values with | to make the LED be lit when any of the indicator states are active.