diff --git a/keyboards/tutte_coxeter_36k/config.h b/keyboards/tutte_coxeter_36k/config.h new file mode 100644 index 0000000..7076830 --- /dev/null +++ b/keyboards/tutte_coxeter_36k/config.h @@ -0,0 +1 @@ +#define RGBLIGHT_LAYERS diff --git a/keyboards/tutte_coxeter_36k/keyboard.json b/keyboards/tutte_coxeter_36k/keyboard.json index 6a8c482..c644b35 100644 --- a/keyboards/tutte_coxeter_36k/keyboard.json +++ b/keyboards/tutte_coxeter_36k/keyboard.json @@ -10,6 +10,13 @@ "mousekey": true, "nkro": false }, + "ws2812": { + "pin": "GP23", + "driver": "vendor" + }, + "rgblight": { + "led_count": 1 + }, "matrix_pins": { "cols": ["GP11", "GP10", "GP3", "GP4", "GP7", "GP26", "GP27", "GP28", "GP15", "GP21", "GP19", "GP20", "GP16"], "rows": ["GP12", "GP8", "GP9", "GP1", "GP6", "GP2", "GP22", "GP0", "GP13", "GP14", "GP18", "GP17", "GP5"] diff --git a/keyboards/tutte_coxeter_36k/keymaps/default/keymap.c b/keyboards/tutte_coxeter_36k/keymaps/default/keymap.c index 6503e33..8ea5360 100644 --- a/keyboards/tutte_coxeter_36k/keymaps/default/keymap.c +++ b/keyboards/tutte_coxeter_36k/keymaps/default/keymap.c @@ -28,3 +28,44 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_DEL, KC_TAB, KC_SPC, KC_ENT, KC_ESC, KC_BSPC ) }; + +// Only have one LED at index zero: +const rgblight_segment_t PROGMEM my_num_lock_layer[] = RGBLIGHT_LAYER_SEGMENTS( + {0, 1, HSV_CYAN} +); +const rgblight_segment_t PROGMEM my_caps_lock_layer[] = RGBLIGHT_LAYER_SEGMENTS( + {0, 1, HSV_BLUE} +); +const rgblight_segment_t PROGMEM my_scroll_lock_layer[] = RGBLIGHT_LAYER_SEGMENTS( + {0, 1, HSV_PURPLE} +); +const rgblight_segment_t PROGMEM my_compose_layer[] = RGBLIGHT_LAYER_SEGMENTS( + {0, 1, HSV_ORANGE} +); +const rgblight_segment_t PROGMEM my_kana_layer[] = RGBLIGHT_LAYER_SEGMENTS( + {0, 1, HSV_GREEN} +); +// etc... + +// Now define the array of layers. Later layers take precedence +const rgblight_segment_t* const PROGMEM my_rgb_layers[] = RGBLIGHT_LAYERS_LIST( + my_num_lock_layer, + my_caps_lock_layer, + my_scroll_lock_layer, + my_compose_layer, + my_kana_layer +); + +void keyboard_post_init_user(void) { + // Enable the LED layers + rgblight_layers = my_rgb_layers; +} + +bool led_update_user(led_t led_state) { + rgblight_set_layer_state(0, led_state.num_lock); + rgblight_set_layer_state(1, led_state.caps_lock); + rgblight_set_layer_state(2, led_state.scroll_lock); + rgblight_set_layer_state(3, led_state.compose); + rgblight_set_layer_state(4, led_state.kana); + return true; +} diff --git a/keyboards/tutte_coxeter_36k/keymaps/default/rules.mk b/keyboards/tutte_coxeter_36k/keymaps/default/rules.mk new file mode 100644 index 0000000..1e3cebb --- /dev/null +++ b/keyboards/tutte_coxeter_36k/keymaps/default/rules.mk @@ -0,0 +1 @@ +RGBLIGHT_ENABLE = yes diff --git a/keyboards/tutte_coxeter_36k/keymaps/vial/rules.mk b/keyboards/tutte_coxeter_36k/keymaps/vial/rules.mk index 4f7618e..7a030d4 100644 --- a/keyboards/tutte_coxeter_36k/keymaps/vial/rules.mk +++ b/keyboards/tutte_coxeter_36k/keymaps/vial/rules.mk @@ -1,2 +1,4 @@ VIA_ENABLE = yes VIAL_ENABLE = yes + +RGBLIGHT_ENABLE = yes