summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlbert Y <76888457+filterpaper@users.noreply.github.com>2021-02-28 14:15:38 +0800
committerGitHub <noreply@github.com>2021-02-28 17:15:38 +1100
commitdb7c8562eddb22350fc9849685bf82aa6dc6f31a (patch)
tree65a13fb727315179d5676cbee3f5a281af78cead
parent51eac99ce4db739c6149e674ec89ac9fc984c512 (diff)
Add RGB Matrix support for Preonic rev3 (#12008)
* Add g_led_config for RGB Matrix support * Corrected indentation * Undo indentation on existing rev3.c code Co-authored-by: filterpaper <filterpaper@localhost>
-rw-r--r--keyboards/preonic/rev3/config.h3
-rw-r--r--keyboards/preonic/rev3/rev3.c23
-rw-r--r--keyboards/preonic/rev3/rules.mk4
3 files changed, 29 insertions, 1 deletions
diff --git a/keyboards/preonic/rev3/config.h b/keyboards/preonic/rev3/config.h
index e8b09e8484..b336477a32 100644
--- a/keyboards/preonic/rev3/config.h
+++ b/keyboards/preonic/rev3/config.h
@@ -124,6 +124,7 @@
#define RGB_DI_PIN A1
#define RGBLED_NUM 9
#define RGBLIGHT_ANIMATIONS
-
+// RGB Matrix support
+#define DRIVER_LED_TOTAL RGBLED_NUM
#endif
diff --git a/keyboards/preonic/rev3/rev3.c b/keyboards/preonic/rev3/rev3.c
index 04b691f405..a8bfd8bdb5 100644
--- a/keyboards/preonic/rev3/rev3.c
+++ b/keyboards/preonic/rev3/rev3.c
@@ -15,6 +15,29 @@
*/
#include "rev3.h"
+#ifdef RGB_MATRIX_ENABLE
+led_config_t g_led_config = { {
+ // Key Matrix to LED Index
+ { NO_LED, 6, NO_LED, NO_LED, 5, NO_LED },
+ { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED },
+ { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, 0 },
+ { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED },
+ { NO_LED, 4, NO_LED, NO_LED, 3, NO_LED },
+ { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED },
+ { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED },
+ { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED },
+ { NO_LED, 7, NO_LED, NO_LED, 2, NO_LED },
+ { NO_LED, 1, NO_LED, NO_LED, 8, NO_LED },
+}, {
+ // LED Index to Physical Position
+ {112, 39}, {148, 60}, {206, 53}, {206, 3}, {150, 3}, {74, 3}, {18, 3}, {18, 54}, {77, 60}
+}, {
+ // LED Index to Flag
+ LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL,
+ LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL
+} };
+#endif
+
void matrix_init_kb(void) {
matrix_init_user();
}
diff --git a/keyboards/preonic/rev3/rules.mk b/keyboards/preonic/rev3/rules.mk
index 1f62fa55ec..249d13705c 100644
--- a/keyboards/preonic/rev3/rules.mk
+++ b/keyboards/preonic/rev3/rules.mk
@@ -25,6 +25,10 @@ API_SYSEX_ENABLE = no
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
#SLEEP_LED_ENABLE = yes
+# Do not enable RGB_MATRIX_ENABLE together with RGBLIGHT_ENABLE
+RGB_MATRIX_ENABLE = no
+RGB_MATRIX_DRIVER = WS2812
+
# SERIAL_LINK_ENABLE = yes
ENCODER_ENABLE = yes
DIP_SWITCH_ENABLE = yes