From dcc47ea31b3f4ef097a2fc677bdbb9b2560d905a Mon Sep 17 00:00:00 2001 From: James Gzowski Date: Sun, 14 Jan 2024 06:07:59 +0000 Subject: Add Proteus67 keyboard (#22439) Co-authored-by: jack <0x6a73@protonmail.com> Co-authored-by: Joel Challis Co-authored-by: Drashna Jaelre --- keyboards/proteus67/proteus67.c | 42 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 keyboards/proteus67/proteus67.c (limited to 'keyboards/proteus67/proteus67.c') diff --git a/keyboards/proteus67/proteus67.c b/keyboards/proteus67/proteus67.c new file mode 100644 index 0000000000..4073ac87d3 --- /dev/null +++ b/keyboards/proteus67/proteus67.c @@ -0,0 +1,42 @@ +// Copyright 2023 James Gzowski +// SPDX-License-Identifier: GPL-2.0-or-later +#include QMK_KEYBOARD_H + +enum custom_layer { + _LAYERA, + _LAYERB, + _LAYERC, +}; + +// MO(_LAYERB) +const rgblight_segment_t PROGMEM backlight_layer_layerb[] = RGBLIGHT_LAYER_SEGMENTS( + {0, 4, HSV_GOLD} +); +// MO(_LAYERC) +const rgblight_segment_t PROGMEM backlight_layer_layerc[] = RGBLIGHT_LAYER_SEGMENTS( + {0, 4, HSV_CYAN} +); +const rgblight_segment_t PROGMEM backlight_layer_layera[] = RGBLIGHT_LAYER_SEGMENTS( + {0, 4, HSV_BLACK} +); +const rgblight_segment_t* const PROGMEM set_backlight_mode[] = RGBLIGHT_LAYERS_LIST( + backlight_layer_layerb, + backlight_layer_layerc, + backlight_layer_layera +); + +layer_state_t layer_state_set_kb(layer_state_t state) { + rgblight_set_layer_state(0, layer_state_cmp(state, _LAYERB)); + rgblight_set_layer_state(1, layer_state_cmp(state, _LAYERC)); + rgblight_set_layer_state(2, layer_state_cmp(state, _LAYERA)); + + return layer_state_set_user(state); +} + +void keyboard_post_init_kb(void) { + rgblight_set_effect_range(4, 17); + rgblight_sethsv_range(HSV_BLACK, 0, 4); + rgblight_layers = set_backlight_mode; + + keyboard_post_init_user(); +} -- cgit v1.2.3