aboutsummaryrefslogtreecommitdiff
path: root/quantum/led_matrix/animations/runners
diff options
context:
space:
mode:
authorVlad K <vkvitnevski@gmail.com>2021-11-01 15:04:37 -0700
committerGitHub <noreply@github.com>2021-11-02 09:04:37 +1100
commita29ca1e7f1a5addfde163b158399684505453fc9 (patch)
tree3a98dc034d034c4a5e8a30b1e744d7793ecbc00b /quantum/led_matrix/animations/runners
parent7f8faa429e0c0662cec34a7d60e33ca58333d6d7 (diff)
downloadqmk_firmware-a29ca1e7f1a5addfde163b158399684505453fc9.tar.gz
qmk_firmware-a29ca1e7f1a5addfde163b158399684505453fc9.zip
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>
Diffstat (limited to 'quantum/led_matrix/animations/runners')
-rw-r--r--quantum/led_matrix/animations/runners/effect_runner_dx_dy.h2
-rw-r--r--quantum/led_matrix/animations/runners/effect_runner_dx_dy_dist.h2
-rw-r--r--quantum/led_matrix/animations/runners/effect_runner_i.h2
-rw-r--r--quantum/led_matrix/animations/runners/effect_runner_reactive.h2
-rw-r--r--quantum/led_matrix/animations/runners/effect_runner_reactive_splash.h2
-rw-r--r--quantum/led_matrix/animations/runners/effect_runner_sin_cos_i.h2
6 files changed, 6 insertions, 6 deletions
diff --git a/quantum/led_matrix/animations/runners/effect_runner_dx_dy.h b/quantum/led_matrix/animations/runners/effect_runner_dx_dy.h
index ef97631b9..fa9b7dbbf 100644
--- a/quantum/led_matrix/animations/runners/effect_runner_dx_dy.h
+++ b/quantum/led_matrix/animations/runners/effect_runner_dx_dy.h
@@ -12,5 +12,5 @@ bool effect_runner_dx_dy(effect_params_t* params, dx_dy_f effect_func) {
12 int16_t dy = g_led_config.point[i].y - k_led_matrix_center.y; 12 int16_t dy = g_led_config.point[i].y - k_led_matrix_center.y;
13 led_matrix_set_value(i, effect_func(led_matrix_eeconfig.val, dx, dy, time)); 13 led_matrix_set_value(i, effect_func(led_matrix_eeconfig.val, dx, dy, time));
14 } 14 }
15 return led_max < DRIVER_LED_TOTAL; 15 return led_matrix_check_finished_leds(led_max);
16} 16}
diff --git a/quantum/led_matrix/animations/runners/effect_runner_dx_dy_dist.h b/quantum/led_matrix/animations/runners/effect_runner_dx_dy_dist.h
index 5ef5938be..061a5f07f 100644
--- a/quantum/led_matrix/animations/runners/effect_runner_dx_dy_dist.h
+++ b/quantum/led_matrix/animations/runners/effect_runner_dx_dy_dist.h
@@ -13,5 +13,5 @@ bool effect_runner_dx_dy_dist(effect_params_t* params, dx_dy_dist_f effect_func)
13 uint8_t dist = sqrt16(dx * dx + dy * dy); 13 uint8_t dist = sqrt16(dx * dx + dy * dy);
14 led_matrix_set_value(i, effect_func(led_matrix_eeconfig.val, dx, dy, dist, time)); 14 led_matrix_set_value(i, effect_func(led_matrix_eeconfig.val, dx, dy, dist, time));
15 } 15 }
16 return led_max < DRIVER_LED_TOTAL; 16 return led_matrix_check_finished_leds(led_max);
17} 17}
diff --git a/quantum/led_matrix/animations/runners/effect_runner_i.h b/quantum/led_matrix/animations/runners/effect_runner_i.h
index b3015759b..f6f8c0dee 100644
--- a/quantum/led_matrix/animations/runners/effect_runner_i.h
+++ b/quantum/led_matrix/animations/runners/effect_runner_i.h
@@ -10,5 +10,5 @@ bool effect_runner_i(effect_params_t* params, i_f effect_func) {
10 LED_MATRIX_TEST_LED_FLAGS(); 10 LED_MATRIX_TEST_LED_FLAGS();
11 led_matrix_set_value(i, effect_func(led_matrix_eeconfig.val, i, time)); 11 led_matrix_set_value(i, effect_func(led_matrix_eeconfig.val, i, time));
12 } 12 }
13 return led_max < DRIVER_LED_TOTAL; 13 return led_matrix_check_finished_leds(led_max);
14} 14}
diff --git a/quantum/led_matrix/animations/runners/effect_runner_reactive.h b/quantum/led_matrix/animations/runners/effect_runner_reactive.h
index 4369ea8c4..be3090aa5 100644
--- a/quantum/led_matrix/animations/runners/effect_runner_reactive.h
+++ b/quantum/led_matrix/animations/runners/effect_runner_reactive.h
@@ -22,7 +22,7 @@ bool effect_runner_reactive(effect_params_t* params, reactive_f effect_func) {
22 uint16_t offset = scale16by8(tick, led_matrix_eeconfig.speed); 22 uint16_t offset = scale16by8(tick, led_matrix_eeconfig.speed);
23 led_matrix_set_value(i, effect_func(led_matrix_eeconfig.val, offset)); 23 led_matrix_set_value(i, effect_func(led_matrix_eeconfig.val, offset));
24 } 24 }
25 return led_max < DRIVER_LED_TOTAL; 25 return led_matrix_check_finished_leds(led_max);
26} 26}
27 27
28#endif // LED_MATRIX_KEYREACTIVE_ENABLED 28#endif // LED_MATRIX_KEYREACTIVE_ENABLED
diff --git a/quantum/led_matrix/animations/runners/effect_runner_reactive_splash.h b/quantum/led_matrix/animations/runners/effect_runner_reactive_splash.h
index d6eb9731e..f6ffc825a 100644
--- a/quantum/led_matrix/animations/runners/effect_runner_reactive_splash.h
+++ b/quantum/led_matrix/animations/runners/effect_runner_reactive_splash.h
@@ -20,7 +20,7 @@ bool effect_runner_reactive_splash(uint8_t start, effect_params_t* params, react
20 } 20 }
21 led_matrix_set_value(i, scale8(val, led_matrix_eeconfig.val)); 21 led_matrix_set_value(i, scale8(val, led_matrix_eeconfig.val));
22 } 22 }
23 return led_max < DRIVER_LED_TOTAL; 23 return led_matrix_check_finished_leds(led_max);
24} 24}
25 25
26#endif // LED_MATRIX_KEYREACTIVE_ENABLED 26#endif // LED_MATRIX_KEYREACTIVE_ENABLED
diff --git a/quantum/led_matrix/animations/runners/effect_runner_sin_cos_i.h b/quantum/led_matrix/animations/runners/effect_runner_sin_cos_i.h
index 4a5219abd..3145e2713 100644
--- a/quantum/led_matrix/animations/runners/effect_runner_sin_cos_i.h
+++ b/quantum/led_matrix/animations/runners/effect_runner_sin_cos_i.h
@@ -12,5 +12,5 @@ bool effect_runner_sin_cos_i(effect_params_t* params, sin_cos_i_f effect_func) {
12 LED_MATRIX_TEST_LED_FLAGS(); 12 LED_MATRIX_TEST_LED_FLAGS();
13 led_matrix_set_value(i, effect_func(led_matrix_eeconfig.val, cos_value, sin_value, i, time)); 13 led_matrix_set_value(i, effect_func(led_matrix_eeconfig.val, cos_value, sin_value, i, time));
14 } 14 }
15 return led_max < DRIVER_LED_TOTAL; 15 return led_matrix_check_finished_leds(led_max);
16} 16}