Add support for ISSI drivers on both sides of a split keyboard (#13842)
* Gets RGB working on a split keyboard with IS31FL3733. Currently needs small tweak to re-enable WS2812 * Added helper function * Trying to integrate the function * Moved functionality into a macro * Swapped conditional for a macro everywhere * Tidying up * More code cleanup * Documentation updates * Fixed formatting via linter * Switching to a function from a macro * Fixed compile error * Fixing WS2812 behavior. UNTESTED. * Updated documentation about the driver addresses. * Fixed code for WS2812 * Trying to add in LED_MATRIX support * Updated effects for LED matrix * Updated third-party effect defines. * Ran format-c on modified files * Apply suggestions from code review Co-authored-by: Ryan <fauxpark@gmail.com> * Move to static inline. Avoids issues with gcc v8+ * Move helper function for LED_matrix to static inline to avoid issues with gcc v8+ Co-authored-by: Vlad Kvitnevskiy <vladkvit@outlook.com> Co-authored-by: Ryan <fauxpark@gmail.com>
This commit is contained in:
		
							parent
							
								
									7f8faa429e
								
							
						
					
					
						commit
						a29ca1e7f1
					
				
					 33 changed files with 127 additions and 72 deletions
				
			
		| 
						 | 
				
			
			@ -25,13 +25,13 @@ static bool indicator_static(effect_params_t* params) {
 | 
			
		|||
    HSV hsv = rgb_matrix_config.hsv;
 | 
			
		||||
    RGB rgb = hsv_to_rgb(hsv);
 | 
			
		||||
    RGB_MATRIX_USE_LIMITS(led_min, led_max);
 | 
			
		||||
    for (uint8_t i = led_min ; i < 74; i++) {
 | 
			
		||||
    for (uint8_t i = led_min; i < 74; i++) {
 | 
			
		||||
        rgb_matrix_set_color(i, 0x00, 0x00, 0x00);
 | 
			
		||||
    }
 | 
			
		||||
    for (uint8_t i = 74 ; i < led_max; i++) {
 | 
			
		||||
    for (uint8_t i = 74; i < led_max; i++) {
 | 
			
		||||
        rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b);
 | 
			
		||||
    }
 | 
			
		||||
    return led_max < DRIVER_LED_TOTAL;
 | 
			
		||||
    return rgb_matrix_check_finished_leds(led_max);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
bool effect_runner_indicator(effect_params_t* params, i_f effect_func) {
 | 
			
		||||
| 
						 | 
				
			
			@ -47,7 +47,7 @@ bool effect_runner_indicator(effect_params_t* params, i_f effect_func) {
 | 
			
		|||
            rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
    return led_max < DRIVER_LED_TOTAL;
 | 
			
		||||
    return rgb_matrix_check_finished_leds(led_max);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static HSV indicator_gradient_math(HSV hsv, uint8_t i, uint8_t time) {
 | 
			
		||||
| 
						 | 
				
			
			@ -64,4 +64,4 @@ static HSV indicator_cycle_all_math(HSV hsv, uint8_t i, uint8_t time) {
 | 
			
		|||
 | 
			
		||||
bool indicator_cycle_all(effect_params_t* params) { return effect_runner_indicator(params, &indicator_cycle_all_math); }
 | 
			
		||||
 | 
			
		||||
#endif // RGB_MATRIX_CUSTOM_EFFECT_IMPLS
 | 
			
		||||
#endif  // RGB_MATRIX_CUSTOM_EFFECT_IMPLS
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue