Fix Caps Lock indicators on Wilba Tech PCBs (#18695)

This commit is contained in:
Wilba 2022-10-13 18:14:58 +11:00 committed by GitHub
parent d5b9081864
commit 4a74e3d02d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 11 additions and 32 deletions

View file

@ -115,14 +115,6 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record)
return process_record_user(keycode, record);
}
void led_set_kb(uint8_t usb_led)
{
#if RGB_BACKLIGHT_ENABLED || MONO_BACKLIGHT_ENABLED
backlight_set_indicator_state(usb_led);
#endif // RGB_BACKLIGHT_ENABLED || MONO_BACKLIGHT_ENABLED
led_set_user(usb_led);
}
void suspend_power_down_kb(void)
{
#if RGB_BACKLIGHT_ENABLED || MONO_BACKLIGHT_ENABLED

View file

@ -53,7 +53,6 @@ backlight_config g_config = {
};
bool g_suspend_state = false;
uint8_t g_indicator_state = 0;
// Global tick at 20 Hz
uint32_t g_tick = 0;
@ -118,11 +117,6 @@ void backlight_set_suspend_state(bool state)
g_suspend_state = state;
}
void backlight_set_indicator_state(uint8_t state)
{
g_indicator_state = state;
}
void backlight_set_brightness_all( uint8_t value )
{
IS31FL3736_mono_set_brightness_all( value );
@ -168,7 +162,9 @@ void backlight_effect_indicators(void)
#if defined(MONO_BACKLIGHT_WT75_A)
HSV hsv = { .h = g_config.color_1.h, .s = g_config.color_1.s, .v = g_config.brightness };
RGB rgb = hsv_to_rgb( hsv );
// G8, H8, I8 -> (6*8+7) (7*8+7), (8*8+7)
// SW7,CS8 = (6*8+7) = 55
// SW8,CS8 = (7*8+7) = 63
// SW9,CS8 = (8*8+7) = 71
IS31FL3736_mono_set_brightness(55, rgb.r);
IS31FL3736_mono_set_brightness(63, rgb.g);
IS31FL3736_mono_set_brightness(71, rgb.b);
@ -183,20 +179,20 @@ defined(MONO_BACKLIGHT_WT75_A) || \
defined(MONO_BACKLIGHT_WT75_B) || \
defined(MONO_BACKLIGHT_WT75_C) || \
defined(MONO_BACKLIGHT_WT80_A)
if ( g_indicator_state & (1<<USB_LED_CAPS_LOCK) ) {
// Caps Lock: D1 -> (4*8+0)
IS31FL3736_mono_set_brightness(32, 255);
if ( host_keyboard_led_state().caps_lock ) {
// SW3,CS1 = (2*8+0) = 16
IS31FL3736_mono_set_brightness(16, 255);
}
#endif
#if defined(MONO_BACKLIGHT_WT80_A)
if ( g_indicator_state & (1<<USB_LED_SCROLL_LOCK) ) {
// Scroll Lock: G7 -> (6*8+6)
if ( host_keyboard_led_state().scroll_lock ) {
// SW7,CS7 = (6*8+6) = 54
IS31FL3736_mono_set_brightness(54, 255);
}
#endif
#if defined(MONO_BACKLIGHT_WT75_C)
if ( g_indicator_state & (1<<USB_LED_SCROLL_LOCK) ) {
// Scroll Lock: G8 -> (6*8+7)
if ( host_keyboard_led_state().scroll_lock ) {
// SW7,CS8 = (6*8+7) = 55
IS31FL3736_mono_set_brightness(55, 255);
}
#endif

View file

@ -56,7 +56,6 @@ void backlight_timer_enable(void);
void backlight_timer_disable(void);
void backlight_set_suspend_state(bool state);
void backlight_set_indicator_state(uint8_t state);
// This should not be called from an interrupt
// (eg. from a timer interrupt).

View file

@ -144,7 +144,6 @@ backlight_config g_config = {
};
bool g_suspend_state = false;
uint8_t g_indicator_state = 0;
// Global tick at 20 Hz
uint32_t g_tick = 0;
@ -1982,11 +1981,6 @@ void backlight_set_suspend_state(bool state)
g_suspend_state = state;
}
void backlight_set_indicator_state(uint8_t state)
{
g_indicator_state = state;
}
void backlight_effect_rgb_test(void)
{
// Mask out bits 4 and 5
@ -2425,8 +2419,7 @@ void backlight_effect_indicators_set_colors( uint8_t index, HS color )
// colors already set
void backlight_effect_indicators(void)
{
if ( g_config.caps_lock_indicator.index != 255 &&
( g_indicator_state & (1<<USB_LED_CAPS_LOCK) ) )
if ( g_config.caps_lock_indicator.index != 255 && host_keyboard_led_state().caps_lock )
{
backlight_effect_indicators_set_colors( g_config.caps_lock_indicator.index, g_config.caps_lock_indicator.color );
}

View file

@ -81,7 +81,6 @@ void backlight_timer_enable(void);
void backlight_timer_disable(void);
void backlight_set_suspend_state(bool state);
void backlight_set_indicator_state(uint8_t state);
// This should not be called from an interrupt
// (eg. from a timer interrupt).