Commit graph

5 commits

Author SHA1 Message Date
618aaea115 README: clarify v1.0 vs v1.1 API for separate module repos 2026-07-01 16:08:01 +08:00
e7b543c501 README: add separate module repo guide 2026-07-01 15:49:32 +08:00
e800222842 Add README with setup, usage, and custom effect guide 2026-07-01 15:46:36 +08:00
e2a7af15f4 feat: implement all 6 fork parity behaviors
- ZMK_RGB_EFFECT_PERSISTENT flag: layer effect survives RGB toggle
- on_idle callback: wake re-renders layer, sleep turns off without
  clearing layer_effect_active
- is_active callback: ext power stays on for layer RGB
- Wakeup filtering: battery events (wakeup=false) don't wake sleeping
  RGB, layer changes (wakeup=true) do
- Layer filtering: only refresh when changed layer matches active top
  layer, skip unnecessary re-renders
- Fade delay: calls zmk_rgb_set_tick_delay() with per-layer DT
  fade-delay prop after rendering static pixels

Requires: zmk fork rgb-modular-v1.1 branch
2026-07-01 15:17:06 +08:00
569dc85e0c Initial: modular per-key RGB layer effect for ZMK
ZMK module providing per-key per-layer RGB effects via the modular
effect API (zmk_rgb_effect). Extracted from darknao's fork patches.

Contents:
- Layer effect: registers via ZMK_RGB_EFFECT_DEFINE, renders per-key
  colors based on active keymap layer
- Behaviors: underglow_color, underglow_battery, underglow_indicators
- DTS bindings: zmk,underglow-layer + behavior bindings
- Event: underglow_color_changed for reactive refresh

Requires: ZMK core with rgb-modular branch (effect registration API)
2026-07-01 08:46:43 +08:00