1
0
Fork 0

Default rgblight (#17855)

* better rgb bindings; improve default

* trim firmware size
This commit is contained in:
Joshua Diamond 2022-07-30 18:31:31 -04:00 committed by GitHub
parent f02e355380
commit baf34989f1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 48 additions and 42 deletions

View file

@ -2,21 +2,37 @@
#define LED_DISABLE_WHEN_USB_SUSPENDED
#define RGB_DISABLE_WHEN_USB_SUSPENDED
#define RGBLIGHT_LAYERS
#define RGBLIGHT_MAX_LAYERS 17
#define RGBLIGHT_LAYER_BLINK
#define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF
#define RGBLIGHT_STARTUP_ANIMATION
#undef RGBLIGHT_ANIMATIONS
#define RGBLIGHT_EFFECT_BREATHING
#define RGBLIGHT_EFFECT_RAINBOW_MOOD
#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
#define RGBLIGHT_EFFECT_SNAKE
#define RGBLIGHT_EFFECT_KNIGHT
#define RGBLIGHT_EFFECT_STATIC_GRADIENT
#define RGBLIGHT_EFFECT_ALTERNATING
#define RGBLIGHT_EFFECT_TWINKLE
#ifdef RGBLIGHT_ENABLE
# define RGBLIGHT_LAYERS
# define RGBLIGHT_MAX_LAYERS 17
# define RGBLIGHT_LAYER_BLINK
# define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF
# define RGBLIGHT_STARTUP_ANIMATION
# undef RGBLIGHT_ANIMATIONS
# define RGBLIGHT_EFFECT_BREATHING
# define RGBLIGHT_EFFECT_RAINBOW_MOOD
# define RGBLIGHT_EFFECT_RAINBOW_SWIRL
# define RGBLIGHT_EFFECT_SNAKE
# define RGBLIGHT_EFFECT_KNIGHT
# define RGBLIGHT_EFFECT_STATIC_GRADIENT
# define RGBLIGHT_EFFECT_TWINKLE
# define RGBLIGHT_DEFAULT_HUE 213
# define RGBLIGHT_DEFAULT_SAT UINT8_MAX
# define RGBLIGHT_DEFAULT_VAL RGBLIGHT_LIMIT_VAL / 2
# if defined(RGBLIGHT_EFFECT_TWINKLE)
# define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_TWINKLE
# elif defined(RGBLIGHT_EFFECT_RAINBOW_MOOD)
# define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_MOOD
# else
# define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_STATIC_LIGHT
# endif
#endif
#define UNICODE_SELECTED_MODES UC_MAC, UC_LNX, UC_WINC

View file

@ -11,10 +11,6 @@ void eeconfig_init_user(void) {
#ifdef UNICODEMAP_ENABLE
eeconfig_init_user_unicode();
#endif
#ifdef RGBLIGHT_ENABLE
eeconfig_init_user_rgb();
#endif
}
#ifdef RGBLIGHT_ENABLE

View file

@ -13,21 +13,15 @@ bool rgb_saved = 0;
extern bool spi_gflock;
extern uint16_t spi_replace_mode;
void spidey_glow(void) {
static void set_rgb_default(void) {
rgblight_enable();
rgblight_sethsv(213, 255, 128);
if ((RGBLIGHT_MODE_TWINKLE <= rgblight_get_mode()) && (rgblight_get_mode() < RGBLIGHT_MODE_TWINKLE_end)) {
rgblight_step();
} else {
rgblight_mode(RGBLIGHT_MODE_TWINKLE);
}
rgblight_sethsv(RGBLIGHT_DEFAULT_HUE, RGBLIGHT_DEFAULT_SAT, RGBLIGHT_DEFAULT_VAL);
rgblight_mode(RGBLIGHT_DEFAULT_MODE);
#ifdef VELOCIKEY_ENABLE
if (velocikey_enabled()) velocikey_toggle();
#endif
}
void eeconfig_init_user_rgb(void) { spidey_glow(); }
// clang-format off
// Convenience macros
@ -396,11 +390,9 @@ extern rgblight_config_t rgblight_config;
bool process_record_user_rgb(uint16_t keycode, keyrecord_t *record) {
if (record->event.pressed) {
switch (keycode) {
case SPI_GLO:
spidey_glow();
return false;
// clang-format off
case SPI_GLO: set_rgb_default(); return false;
case RGB_HUI: change_timer = timer_read(); change_hue = 1; return false;
case RGB_HUD: change_timer = timer_read(); change_hue = -1; return false;
case RGB_SAI: change_timer = timer_read(); change_sat = 1; return false;

View file

@ -13,13 +13,12 @@ enum userspace_layers {
};
enum custom_keycodes {
SPI_GLO = SAFE_RANGE,
SPI_LNX, // Mode: Linux
SPI_OSX, // Mode: Mac
SPI_WIN, // Mode: Windows
CH_CPNL, // AL Control Panel
CH_ASST, // AL Context-aware Desktop Assistant
CH_SUSP, // Suspend
SPI_LNX = SAFE_RANGE, // Mode: Linux
SPI_OSX, // Mode: Mac
SPI_WIN, // Mode: Windows
CH_CPNL, // AL Control Panel
CH_ASST, // AL Context-aware Desktop Assistant
CH_SUSP, // Suspend
SPI_NORMAL,
SPI_WIDE,
@ -33,6 +32,10 @@ enum custom_keycodes {
SPI_MATH,
SPI_GFLOCK,
SPI_KP_00,
#ifdef RGBLIGHT_ENABLE
SPI_GLO,
#endif
};
#ifdef RGBLIGHT_ENABLE
@ -52,7 +55,6 @@ typedef enum layer_ack {
# define RGB_LAYER_ACK_DURATION 500
void eeconfig_init_user_rgb(void);
void matrix_init_user_rgb(void);
void matrix_scan_user_rgb(void);
void keyboard_post_init_user_rgb(void);