main
Ashelyn Dawn 3 years ago
parent 913ed2e3cd
commit 89efb51f24

@ -61,6 +61,100 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
),
};
#ifdef _______
#undef _______
#define _______ {0, 0, 0}
const uint8_t PROGMEM ledmap[][DRIVER_LED_TOTAL][3] = {
[_TYPING_LAYER] = {
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CORAL, _______,
_______, _______, _______, _______, _______, _______, CORAL, CORAL, CORAL,
//UnderGlow
CORAL, CORAL, CORAL, CORAL, CORAL, CORAL, CORAL, CORAL, CORAL, CORAL, CORAL, CORAL, CORAL, CORAL, CORAL,
CORAL, CORAL,
CORAL, CORAL,
CORAL, CORAL,
CORAL, CORAL,
CORAL, CORAL, CORAL, CORAL, CORAL, CORAL, CORAL, CORAL, CORAL, CORAL, CORAL, CORAL, CORAL, CORAL, CORAL
},
[_FUNCTION_LAYER] = {
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CORAL, _______,
_______, _______, _______, _______, _______, _______, CORAL, CORAL, CORAL,
//UnderGlow
MAGENT, MAGENT, MAGENT, MAGENT, MAGENT, MAGENT, MAGENT, MAGENT, MAGENT, MAGENT, MAGENT, MAGENT, MAGENT, MAGENT, MAGENT,
MAGENT, MAGENT,
MAGENT, MAGENT,
MAGENT, MAGENT,
MAGENT, MAGENT,
MAGENT, MAGENT, MAGENT, MAGENT, MAGENT, MAGENT, MAGENT, MAGENT, MAGENT, MAGENT, MAGENT, MAGENT, MAGENT, MAGENT, MAGENT
},
[_TALI_LAYER] = {
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______,
//UnderGlow
RED, RED, RED, RED, RED, RED, RED, RED, RED, RED, RED, RED, RED, RED, RED,
RED, RED,
RED, RED,
RED, RED,
RED, RED,
RED, RED, RED, RED, RED, RED, RED, RED, RED, RED, RED, RED, RED, RED, RED
},
[_TALI_LAYER2] = {
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______,
//UnderGlow
YELLOW, YELLOW, YELLOW, YELLOW, YELLOW, YELLOW, YELLOW, YELLOW, YELLOW, YELLOW, YELLOW, YELLOW, YELLOW, YELLOW, YELLOW,
YELLOW, YELLOW,
YELLOW, YELLOW,
YELLOW, YELLOW,
YELLOW, YELLOW,
YELLOW, YELLOW, YELLOW, YELLOW, YELLOW, YELLOW, YELLOW, YELLOW, YELLOW, YELLOW, YELLOW, YELLOW, YELLOW, YELLOW, YELLOW
},
[_TALI_LAYER3] = {
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______,
//UnderGlow
GREEN, GREEN, GREEN, GREEN, GREEN, GREEN, GREEN, GREEN, GREEN, GREEN, GREEN, GREEN, GREEN, GREEN, GREEN,
GREEN, GREEN,
GREEN, GREEN,
GREEN, GREEN,
GREEN, GREEN,
GREEN, GREEN, GREEN, GREEN, GREEN, GREEN, GREEN, GREEN, GREEN, GREEN, GREEN, GREEN, GREEN, GREEN, GREEN
},
};
#undef _______
#define _______ KC_TRNS
#endif
// Runs just one time when the keyboard initializes.
void matrix_init_user(void) {
// Enable or disable debugging
debug_enable=false;
debug_matrix=false;
debug_keyboard=false;
//rgb_enabled_flag = true; // Initially, keyboard RGB is enabled. Change to false config.h initializes RGB disabled.
};
void keyboard_post_init_user(void) {
rgb_matrix_enable();
}
#define MODS_SHIFT (get_mods() & MOD_BIT(KC_LSHIFT) || get_mods() & MOD_BIT(KC_RSHIFT))
#define MODS_CTRL (get_mods() & MOD_BIT(KC_LCTL) || get_mods() & MOD_BIT(KC_RCTRL))
#define MODS_ALT (get_mods() & MOD_BIT(KC_LALT) || get_mods() & MOD_BIT(KC_RALT))
@ -128,31 +222,58 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
return false;
case RGB_TOG:
if (record->event.pressed) {
switch (rgb_matrix_get_flags()) {
case LED_FLAG_ALL: {
rgb_matrix_set_flags(LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER | LED_FLAG_INDICATOR);
rgb_matrix_set_color_all(0, 0, 0);
}
break;
case (LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER | LED_FLAG_INDICATOR): {
rgb_matrix_set_flags(LED_FLAG_UNDERGLOW);
rgb_matrix_set_color_all(0, 0, 0);
}
break;
case LED_FLAG_UNDERGLOW: {
rgb_matrix_set_flags(LED_FLAG_NONE);
rgb_matrix_disable_noeeprom();
}
break;
default: {
rgb_matrix_set_flags(LED_FLAG_ALL);
rgb_matrix_enable_noeeprom();
}
break;
}
switch (rgb_matrix_get_flags()) {
case LED_FLAG_ALL: {
rgb_matrix_set_flags(LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER);
rgb_matrix_set_color_all(0, 0, 0);
}
break;
case LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER: {
rgb_matrix_set_flags(LED_FLAG_UNDERGLOW);
rgb_matrix_set_color_all(0, 0, 0);
}
break;
case LED_FLAG_UNDERGLOW: {
rgb_matrix_set_flags(LED_FLAG_NONE);
rgb_matrix_disable_noeeprom();
}
break;
default: {
rgb_matrix_set_flags(LED_FLAG_ALL);
rgb_matrix_enable_noeeprom();
}
break;
}
return false;
}
return false;
default:
return true; //Process all other keycodes normally
}
}
void set_layer_color(int layer) {
for (int i = 0; i < DRIVER_LED_TOTAL; i++) {
HSV hsv = {
.h = pgm_read_byte(&ledmap[layer][i][0]),
.s = pgm_read_byte(&ledmap[layer][i][1]),
.v = pgm_read_byte(&ledmap[layer][i][2]),
};
if (hsv.h || hsv.s || hsv.v) {
RGB rgb = hsv_to_rgb(hsv);
float f = (float)rgb_matrix_config.hsv.v / UINT8_MAX;
rgb_matrix_set_color(i, f * rgb.r, f * rgb.g, f * rgb.b);
} else if (layer == 1) {
// Only deactivate non-defined key LEDs at layers other than FN. Because at FN we have RGB adjustments and need to see them live.
// If the values are all false then it's a transparent key and deactivate LED at this layer
// rgb_matrix_set_color(i, 0, 0, 0);
}
}
}
void rgb_matrix_indicators_user(void) {
if (g_suspend_state || disable_layer_color ||
rgb_matrix_get_flags() == LED_FLAG_NONE ||
rgb_matrix_get_flags() == LED_FLAG_UNDERGLOW) {
return;
}
set_layer_color(get_highest_layer(layer_state));
}

@ -1,6 +1,22 @@
#include QMK_KEYBOARD_H
// Note: check pregame keymap for layer color
#define RED {HSV_RED}
#define CORAL {HSV_CORAL}
#define ORANGE {HSV_ORANGE}
#define GOLDEN {HSV_GOLDENROD}
#define GOLD {HSV_GOLD}
#define YELLOW {HSV_YELLOW}
#define CHART {HSV_CHARTREUSE}
#define GREEN {HSV_GREEN}
#define SPRING {HSV_SPRINGGREEN}
#define TURQ {HSV_TURQUOISE}
#define TEAL {HSV_TEAL}
#define CYAN {HSV_CYAN}
#define AZURE {HSV_AZURE}
#define BLUE {HSV_BLUE}
#define PURPLE {HSV_PURPLE}
#define MAGENT {HSV_MAGENTA}
#define PINK {HSV_PINK}
enum layout_names {
_TYPING_LAYER=0,
@ -8,4 +24,8 @@ enum layout_names {
_TALI_LAYER,
_TALI_LAYER2,
_TALI_LAYER3
};
};
extern bool g_suspend_state;
extern rgb_config_t rgb_matrix_config;
bool disable_layer_color;

@ -0,0 +1,15 @@
# RGBLIGHT_ENABLE = no # Not for MD boards. This is here in case you forget.
COMMAND_ENABLE = no # Commands for debug and configuration
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration
BOOTMAGIC_ENABLE = no
# AUTO_SHIFT_ENABLE = yes # Auto Shift
NKRO_ENABLE = yes # USB Nkey Rollover
DYNAMIC_MACRO_ENABLE = no # Dynamic macro recording and play
MOUSEKEY_ENABLE = no # Enable mouse control keycodes. Increases firmware size.
TAP_DANCE_ENABLE = no # Enable tap dance keys
CONSOLE_ENABLE = no # Enable debugging console. Increases firmware size.
TERMINAL_ENABLE = no
EXTRAKEY_ENABLE = yes # Audio control and System control
# RAW_ENABLE = yes # Raw HID has not yet been implemented for this keyboard
# COMBO_ENABLE # Key combo feature
# LEADER_ENABLE # Enable leader key chording
Loading…
Cancel
Save