Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions keyboards/tutte_coxeter_36k/config.h
Original file line number Diff line number Diff line change
@@ -1 +1,6 @@
#define LED_CAPS_LOCK_PIN GP25

#define WS2812_DI_PIN GP23
#define RGBLIGHT_LED_COUNT 1
#define RGBLIGHT_DEFAULT_HUE 180
#define RGBLIGHT_LAYERS
49 changes: 49 additions & 0 deletions keyboards/tutte_coxeter_36k/keymaps/default/keymap.c
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,52 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_DEL, KC_TAB, KC_SPC, KC_ENT, KC_ESC, KC_BSPC
)
};

// Light our single RGB LED blue when caps lock is active.
const rgblight_segment_t PROGMEM my_capslock_layer[] = RGBLIGHT_LAYER_SEGMENTS(
{0, 1, HSV_BLUE} // Light 1 LEDs, starting with LED 1
);
// Light our single RGB LED cyan when keyboard layer 0 is active
const rgblight_segment_t PROGMEM my_layer0_layer[] = RGBLIGHT_LAYER_SEGMENTS(
{0, 1, HSV_CYAN}
);
// Light our single RGB LED red when keyboard layer 1 is active
const rgblight_segment_t PROGMEM my_layer1_layer[] = RGBLIGHT_LAYER_SEGMENTS(
{0, 1, HSV_RED}
);
// Light our single RGB LED purple when keyboard layer 2 is active
const rgblight_segment_t PROGMEM my_layer2_layer[] = RGBLIGHT_LAYER_SEGMENTS(
{0, 1, HSV_PURPLE}
);
// Light our single RGB LED green when keyboard layer 3 is active
const rgblight_segment_t PROGMEM my_layer3_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_capslock_layer,
my_layer1_layer, // Overrides caps lock layer
my_layer2_layer, // Overrides other layers
my_layer3_layer // Overrides other layers
);

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.caps_lock);
return true;
}


layer_state_t default_layer_state_set_user(layer_state_t state) {
// Light up based on the layer
rgblight_set_layer_state(2, layer_state_cmp(state, 1)); // Layer 1 active
rgblight_set_layer_state(3, layer_state_cmp(state, 2)); // Layer 2 active
rgblight_set_layer_state(4, layer_state_cmp(state, 3)); // Layer 3 active
return state;
}
2 changes: 2 additions & 0 deletions keyboards/tutte_coxeter_36k/keymaps/default/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
RGBLIGHT_ENABLE = yes
WS2812_DRIVER = vendor
3 changes: 3 additions & 0 deletions keyboards/tutte_coxeter_36k/keymaps/vial/rules.mk
Original file line number Diff line number Diff line change
@@ -1,2 +1,5 @@
VIA_ENABLE = yes
VIAL_ENABLE = yes

RGBLIGHT_ENABLE = yes
WS2812_DRIVER = vendor