diff --git a/builddefs/show_options.mk b/builddefs/show_options.mk
index 563d08988036..44e40e1f41c0 100644
--- a/builddefs/show_options.mk
+++ b/builddefs/show_options.mk
@@ -60,7 +60,6 @@ OTHER_OPTION_NAMES = \
ENCODER_ENABLE_CUSTOM \
GERMAN_ENABLE \
HAPTIC_ENABLE \
- ISSI_ENABLE \
KEYLOGGER_ENABLE \
LCD_BACKLIGHT_ENABLE \
MACROS_ENABLED \
diff --git a/keyboards/hs60/v2/v2.c b/keyboards/hs60/v2/v2.c
index f817ef19e799..45b1f54d5f55 100644
--- a/keyboards/hs60/v2/v2.c
+++ b/keyboards/hs60/v2/v2.c
@@ -15,5 +15,82 @@
*/
#ifndef RGB_BACKLIGHT_HS60
-#error RGB_BACKLIGHT_HS60 not defined, recheck config.h
+# error RGB_BACKLIGHT_HS60 not defined, recheck config.h
+#else
+# include "drivers/led/issi/is31fl3733.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_HS60)
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, B_1, A_1, C_1}, //LA1
+ {0, E_1, D_1, F_1}, //LA2
+ {0, H_1, G_1, I_1}, //LA3
+ {0, K_1, J_1, L_1}, //LA4
+ {0, B_2, A_2, C_2}, //LA5
+ {0, E_2, D_2, F_2}, //LA6
+ {0, H_2, G_2, I_2}, //LA7
+ {0, K_2, J_2, L_2}, //LA8
+ {0, B_3, A_3, C_3}, //LA9
+ {0, E_3, D_3, F_3}, //LA10
+ {0, H_3, G_3, I_3}, //LA11
+ {0, K_3, J_3, L_3}, //LA12
+ {0, B_4, A_4, C_4}, //LA13
+ {0, E_4, D_4, F_4}, //LA14
+ {0, H_4, G_4, I_4}, //LA15
+ {0, K_4, J_4, L_4}, //LA16
+ {0, B_5, A_5, C_5}, //LA17
+ {0, E_5, D_5, F_5}, //LA18
+ {0, H_5, G_5, I_5}, //LA19
+ {0, K_5, J_5, L_5}, //LA20
+ {0, B_6, A_6, C_6}, //LA21
+ {0, E_6, D_6, F_6}, //LA22
+ {0, H_6, G_6, I_6}, //LA23
+ {0, K_6, J_6, L_6}, //LA24
+ {0, B_7, A_7, C_7}, //LA25
+ {0, E_7, D_7, F_7}, //LA26
+ {0, H_7, G_7, I_7}, //LA27
+ {0, K_7, J_7, L_7}, //LA28
+ {0, B_8, A_8, C_8}, //LA29
+ {0, E_8, D_8, F_8}, //LA30
+ {0, H_8, G_8, I_8}, //LA31
+ {0, K_8, J_8, L_8}, //LA32
+ {0, B_9, A_9, C_9}, //LA33
+ {0, E_9, D_9, F_9}, //LA34
+ {0, H_9, G_9, I_9}, //LA35
+ {0, K_9, J_9, L_9}, //LA36
+ {0, B_10, A_10, C_10}, //LA37
+ {0, E_10, D_10, F_10}, //LA38
+ {0, H_10, G_10, I_10}, //LA39
+ {0, K_10, J_10, L_10}, //LA40
+ {0, B_11, A_11, C_11}, //LA41
+ {0, E_11, D_11, F_11}, //LA42
+ {0, H_11, G_11, I_11}, //LA43
+ {0, K_11, J_11, L_11}, //LA44
+ {0, B_12, A_12, C_12}, //LA45
+ {0, E_12, D_12, F_12}, //LA46
+ {0, H_12, G_12, I_12}, //LA47
+ {0, K_12, J_12, L_12}, //LA48
+ {0, B_13, A_13, C_13}, //LA49
+ {0, E_13, D_13, F_13}, //LA50
+ {0, H_13, G_13, I_13}, //LA51
+ {0, K_13, J_13, L_13}, //LA52
+ {0, B_14, A_14, C_14}, //LA53
+ {0, E_14, D_14, F_14}, //LA54
+ {0, H_14, G_14, I_14}, //LA55
+ {0, K_14, J_14, L_14}, //LA56
+ {0, B_15, A_15, C_15}, //LA57
+ {0, E_15, D_15, F_15}, //LA58
+ {0, H_15, G_15, I_15}, //LA59
+ {0, K_15, J_15, L_15}, //LA60
+ {0, B_16, A_16, C_16}, //LA61
+ {0, E_16, D_16, F_16}, //LA62
+ {0, H_16, G_16, I_16}, //LA63
+ {0, K_16, J_16, L_16}, //LA64
+};
#endif
diff --git a/keyboards/keebwerk/mega/ansi/ansi.c b/keyboards/keebwerk/mega/ansi/ansi.c
index 4494ffd9ffef..4b10cdde66ef 100755
--- a/keyboards/keebwerk/mega/ansi/ansi.c
+++ b/keyboards/keebwerk/mega/ansi/ansi.c
@@ -20,6 +20,146 @@
#include "ansi.h"
#include "drivers/led/issi/is31fl3733.h"
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_KW_MEGA)
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, B_1, A_1, C_1}, //LA1
+ {0, E_1, D_1, F_1}, //LA2
+ {0, H_1, G_1, I_1}, //LA3
+ {0, K_1, J_1, L_1}, //LA4
+ {0, B_2, A_2, C_2}, //LA5
+ {0, E_2, D_2, F_2}, //LA6
+ {0, H_2, G_2, I_2}, //LA7
+ {0, K_2, J_2, L_2}, //LA8
+ {0, B_3, A_3, C_3}, //LA9
+ {0, E_3, D_3, F_3}, //LA10
+ {0, H_3, G_3, I_3}, //LA11
+ {0, K_3, J_3, L_3}, //LA12
+ {0, B_4, A_4, C_4}, //LA13
+ {0, E_4, D_4, F_4}, //LA14
+ {0, H_4, G_4, I_4}, //LA15
+ {0, K_4, J_4, L_4}, //LA16
+ {0, B_5, A_5, C_5}, //LA17
+ {0, E_5, D_5, F_5}, //LA18
+ {0, H_5, G_5, I_5}, //LA19
+ {0, K_5, J_5, L_5}, //LA20
+ {0, B_6, A_6, C_6}, //LA21
+ {0, E_6, D_6, F_6}, //LA22
+ {0, H_6, G_6, I_6}, //LA23
+ {0, K_6, J_6, L_6}, //LA24
+ {0, B_7, A_7, C_7}, //LA25
+ {0, E_7, D_7, F_7}, //LA26
+ {0, H_7, G_7, I_7}, //LA27
+ {0, K_7, J_7, L_7}, //LA28
+ {0, B_8, A_8, C_8}, //LA29
+ {0, E_8, D_8, F_8}, //LA30
+ {0, H_8, G_8, I_8}, //LA31
+ {0, K_8, J_8, L_8}, //LA32
+ {0, B_9, A_9, C_9}, //LA33
+ {0, E_9, D_9, F_9}, //LA34
+ {0, H_9, G_9, I_9}, //LA35
+ {0, K_9, J_9, L_9}, //LA36
+ {0, B_10, A_10, C_10}, //LA37
+ {0, E_10, D_10, F_10}, //LA38
+ {0, H_10, G_10, I_10}, //LA39
+ {0, K_10, J_10, L_10}, //LA40
+ {0, B_11, A_11, C_11}, //LA41
+ {0, E_11, D_11, F_11}, //LA42
+ {0, H_11, G_11, I_11}, //LA43
+ {0, K_11, J_11, L_11}, //LA44
+ {0, B_12, A_12, C_12}, //LA45
+ {0, E_12, D_12, F_12}, //LA46
+ {0, H_12, G_12, I_12}, //LA47
+ {0, K_12, J_12, L_12}, //LA48
+ {0, B_13, A_13, C_13}, //LA49
+ {0, E_13, D_13, F_13}, //LA50
+ {0, H_13, G_13, I_13}, //LA51
+ {0, K_13, J_13, L_13}, //LA52
+ {0, B_14, A_14, C_14}, //LA53
+ {0, E_14, D_14, F_14}, //LA54
+ {0, H_14, G_14, I_14}, //LA55
+ {0, K_14, J_14, L_14}, //LA56
+ {0, B_15, A_15, C_15}, //LA57
+ {0, E_15, D_15, F_15}, //LA58
+ {0, H_15, G_15, I_15}, //LA59
+ {0, K_15, J_15, L_15}, //LA60
+ {0, B_16, A_16, C_16}, //LA61
+ {0, E_16, D_16, F_16}, //LA62
+ {0, H_16, G_16, I_16}, //LA63
+ {0, K_16, J_16, L_16}, //LA64
+
+ {1, B_1, A_1, C_1}, //LB1
+ {1, E_1, D_1, F_1}, //LB2
+ {1, H_1, G_1, I_1}, //LB3
+ {1, K_1, J_1, L_1}, //LB4
+ {1, B_2, A_2, C_2}, //LB5
+ {1, E_2, D_2, F_2}, //LB6
+ {1, H_2, G_2, I_2}, //LB7
+ {1, K_2, J_2, L_2}, //LB8
+ {1, B_3, A_3, C_3}, //LB9
+ {1, E_3, D_3, F_3}, //LB10
+ {1, H_3, G_3, I_3}, //LB11
+ {1, K_3, J_3, L_3}, //LB12
+ {1, B_4, A_4, C_4}, //LB13
+ {1, E_4, D_4, F_4}, //LB14
+ {1, H_4, G_4, I_4}, //LB15
+ {1, K_4, J_4, L_4}, //LB16
+ {1, B_5, A_5, C_5}, //LB17
+ {1, E_5, D_5, F_5}, //LB18
+ {1, H_5, G_5, I_5}, //LB19
+ {1, K_5, J_5, L_5}, //LB20
+ {1, B_6, A_6, C_6}, //LB21
+ {1, E_6, D_6, F_6}, //LB22
+ {1, H_6, G_6, I_6}, //LB23
+ {1, K_6, J_6, L_6}, //LB24
+ {1, B_7, A_7, C_7}, //LB25
+ {1, E_7, D_7, F_7}, //LB26
+ {1, H_7, G_7, I_7}, //LB27
+ {1, K_7, J_7, L_7}, //LB28
+ {1, B_8, A_8, C_8}, //LB29
+ {1, E_8, D_8, F_8}, //LB30
+ {1, H_8, G_8, I_8}, //LB31
+ {1, K_8, J_8, L_8}, //LB32
+ {1, B_9, A_9, C_9}, //LB33
+ {1, E_9, D_9, F_9}, //LB34
+ {1, H_9, G_9, I_9}, //LB35
+ {1, K_9, J_9, L_9}, //LB36
+ {1, B_10, A_10, C_10}, //LB37
+ {1, E_10, D_10, F_10}, //LB38
+ {1, H_10, G_10, I_10}, //LB39
+ {1, K_10, J_10, L_10}, //LB40
+ {1, B_11, A_11, C_11}, //LB41
+ {1, E_11, D_11, F_11}, //LB42
+ {1, H_11, G_11, I_11}, //LB43
+ {1, K_11, J_11, L_11}, //LB44
+ {1, B_12, A_12, C_12}, //LB45
+ {1, E_12, D_12, F_12}, //LB46
+ {1, H_12, G_12, I_12}, //LB47
+ {1, K_12, J_12, L_12}, //LB48
+ {1, B_13, A_13, C_13}, //LB49
+ {1, E_13, D_13, F_13}, //LB50
+ {1, H_13, G_13, I_13}, //LB51
+ {1, K_13, J_13, L_13}, //LB52
+ {1, B_14, A_14, C_14}, //LB53
+ {1, E_14, D_14, F_14}, //LB54
+ {1, H_14, G_14, I_14}, //LB55
+ {1, K_14, J_14, L_14}, //LB56
+ {1, B_15, A_15, C_15}, //LB57
+ {1, E_15, D_15, F_15}, //LB58
+ {1, H_15, G_15, I_15}, //LB59
+ {1, K_15, J_15, L_15}, //LB60
+ {1, B_16, A_16, C_16}, //LB61
+ {1, E_16, D_16, F_16}, //LB62
+ {1, H_16, G_16, I_16}, //LB63
+ {1, K_16, J_16, L_16}, //LB64
+};
+#endif
+
uint8_t R = 0;
uint8_t G = 0;
uint8_t B = 0;
diff --git a/keyboards/novelkeys/nk65/nk65.c b/keyboards/novelkeys/nk65/nk65.c
index 2c325e453a46..c4a14e7087bc 100755
--- a/keyboards/novelkeys/nk65/nk65.c
+++ b/keyboards/novelkeys/nk65/nk65.c
@@ -20,6 +20,146 @@
#include "nk65.h"
#include "drivers/led/issi/is31fl3733.h"
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_NK65)
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, B_1, A_1, C_1}, //LA1
+ {0, E_1, D_1, F_1}, //LA2
+ {0, H_1, G_1, I_1}, //LA3
+ {0, K_1, J_1, L_1}, //LA4
+ {0, B_2, A_2, C_2}, //LA5
+ {0, E_2, D_2, F_2}, //LA6
+ {0, H_2, G_2, I_2}, //LA7
+ {0, K_2, J_2, L_2}, //LA8
+ {0, B_3, A_3, C_3}, //LA9
+ {0, E_3, D_3, F_3}, //LA10
+ {0, H_3, G_3, I_3}, //LA11
+ {0, K_3, J_3, L_3}, //LA12
+ {0, B_4, A_4, C_4}, //LA13
+ {0, E_4, D_4, F_4}, //LA14
+ {0, H_4, G_4, I_4}, //LA15
+ {0, K_4, J_4, L_4}, //LA16
+ {0, B_5, A_5, C_5}, //LA17
+ {0, E_5, D_5, F_5}, //LA18
+ {0, H_5, G_5, I_5}, //LA19
+ {0, K_5, J_5, L_5}, //LA20
+ {0, B_6, A_6, C_6}, //LA21
+ {0, E_6, D_6, F_6}, //LA22
+ {0, H_6, G_6, I_6}, //LA23
+ {0, K_6, J_6, L_6}, //LA24
+ {0, B_7, A_7, C_7}, //LA25
+ {0, E_7, D_7, F_7}, //LA26
+ {0, H_7, G_7, I_7}, //LA27
+ {0, K_7, J_7, L_7}, //LA28
+ {0, B_8, A_8, C_8}, //LA29
+ {0, E_8, D_8, F_8}, //LA30
+ {0, H_8, G_8, I_8}, //LA31
+ {0, K_8, J_8, L_8}, //LA32
+ {0, B_9, A_9, C_9}, //LA33
+ {0, E_9, D_9, F_9}, //LA34
+ {0, H_9, G_9, I_9}, //LA35
+ {0, K_9, J_9, L_9}, //LA36
+ {0, B_10, A_10, C_10}, //LA37
+ {0, E_10, D_10, F_10}, //LA38
+ {0, H_10, G_10, I_10}, //LA39
+ {0, K_10, J_10, L_10}, //LA40
+ {0, B_11, A_11, C_11}, //LA41
+ {0, E_11, D_11, F_11}, //LA42
+ {0, H_11, G_11, I_11}, //LA43
+ {0, K_11, J_11, L_11}, //LA44
+ {0, B_12, A_12, C_12}, //LA45
+ {0, E_12, D_12, F_12}, //LA46
+ {0, H_12, G_12, I_12}, //LA47
+ {0, K_12, J_12, L_12}, //LA48
+ {0, B_13, A_13, C_13}, //LA49
+ {0, E_13, D_13, F_13}, //LA50
+ {0, H_13, G_13, I_13}, //LA51
+ {0, K_13, J_13, L_13}, //LA52
+ {0, B_14, A_14, C_14}, //LA53
+ {0, E_14, D_14, F_14}, //LA54
+ {0, H_14, G_14, I_14}, //LA55
+ {0, K_14, J_14, L_14}, //LA56
+ {0, B_15, A_15, C_15}, //LA57
+ {0, E_15, D_15, F_15}, //LA58
+ {0, H_15, G_15, I_15}, //LA59
+ {0, K_15, J_15, L_15}, //LA60
+ {0, B_16, A_16, C_16}, //LA61
+ {0, E_16, D_16, F_16}, //LA62
+ {0, H_16, G_16, I_16}, //LA63
+ {0, K_16, J_16, L_16}, //LA64
+
+ {1, B_1, A_1, C_1}, //LB1
+ {1, E_1, D_1, F_1}, //LB2
+ {1, H_1, G_1, I_1}, //LB3
+ {1, K_1, J_1, L_1}, //LB4
+ {1, B_2, A_2, C_2}, //LB5
+ {1, E_2, D_2, F_2}, //LB6
+ {1, H_2, G_2, I_2}, //LB7
+ {1, K_2, J_2, L_2}, //LB8
+ {1, B_3, A_3, C_3}, //LB9
+ {1, E_3, D_3, F_3}, //LB10
+ {1, H_3, G_3, I_3}, //LB11
+ {1, K_3, J_3, L_3}, //LB12
+ {1, B_4, A_4, C_4}, //LB13
+ {1, E_4, D_4, F_4}, //LB14
+ {1, H_4, G_4, I_4}, //LB15
+ {1, K_4, J_4, L_4}, //LB16
+ {1, B_5, A_5, C_5}, //LB17
+ {1, E_5, D_5, F_5}, //LB18
+ {1, H_5, G_5, I_5}, //LB19
+ {1, K_5, J_5, L_5}, //LB20
+ {1, B_6, A_6, C_6}, //LB21
+ {1, E_6, D_6, F_6}, //LB22
+ {1, H_6, G_6, I_6}, //LB23
+ {1, K_6, J_6, L_6}, //LB24
+ {1, B_7, A_7, C_7}, //LB25
+ {1, E_7, D_7, F_7}, //LB26
+ {1, H_7, G_7, I_7}, //LB27
+ {1, K_7, J_7, L_7}, //LB28
+ {1, B_8, A_8, C_8}, //LB29
+ {1, E_8, D_8, F_8}, //LB30
+ {1, H_8, G_8, I_8}, //LB31
+ {1, K_8, J_8, L_8}, //LB32
+ {1, B_9, A_9, C_9}, //LB33
+ {1, E_9, D_9, F_9}, //LB34
+ {1, H_9, G_9, I_9}, //LB35
+ {1, K_9, J_9, L_9}, //LB36
+ {1, B_10, A_10, C_10}, //LB37
+ {1, E_10, D_10, F_10}, //LB38
+ {1, H_10, G_10, I_10}, //LB39
+ {1, K_10, J_10, L_10}, //LB40
+ {1, B_11, A_11, C_11}, //LB41
+ {1, E_11, D_11, F_11}, //LB42
+ {1, H_11, G_11, I_11}, //LB43
+ {1, K_11, J_11, L_11}, //LB44
+ {1, B_12, A_12, C_12}, //LB45
+ {1, E_12, D_12, F_12}, //LB46
+ {1, H_12, G_12, I_12}, //LB47
+ {1, K_12, J_12, L_12}, //LB48
+ {1, B_13, A_13, C_13}, //LB49
+ {1, E_13, D_13, F_13}, //LB50
+ {1, H_13, G_13, I_13}, //LB51
+ {1, K_13, J_13, L_13}, //LB52
+ {1, B_14, A_14, C_14}, //LB53
+ {1, E_14, D_14, F_14}, //LB54
+ {1, H_14, G_14, I_14}, //LB55
+ {1, K_14, J_14, L_14}, //LB56
+ {1, B_15, A_15, C_15}, //LB57
+ {1, E_15, D_15, F_15}, //LB58
+ {1, H_15, G_15, I_15}, //LB59
+ {1, K_15, J_15, L_15}, //LB60
+ {1, B_16, A_16, C_16}, //LB61
+ {1, E_16, D_16, F_16}, //LB62
+ {1, H_16, G_16, I_16}, //LB63
+ {1, K_16, J_16, L_16}, //LB64
+};
+#endif
+
/* Indicator LEDS are part of the LED driver
* Top LED is blue only. LED driver 2 RGB 7 Green channel
* Middle LED is blue and red. LED driver 2 RGB 6 Red and Blue channel
diff --git a/keyboards/novelkeys/nk87/nk87.c b/keyboards/novelkeys/nk87/nk87.c
index c75fff450b30..e701bfaccf9a 100755
--- a/keyboards/novelkeys/nk87/nk87.c
+++ b/keyboards/novelkeys/nk87/nk87.c
@@ -20,6 +20,146 @@
#include "nk87.h"
#include "drivers/led/issi/is31fl3733.h"
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_NK87)
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, B_1, A_1, C_1}, //LA1
+ {0, E_1, D_1, F_1}, //LA2
+ {0, H_1, G_1, I_1}, //LA3
+ {0, K_1, J_1, L_1}, //LA4
+ {0, B_2, A_2, C_2}, //LA5
+ {0, E_2, D_2, F_2}, //LA6
+ {0, H_2, G_2, I_2}, //LA7
+ {0, K_2, J_2, L_2}, //LA8
+ {0, B_3, A_3, C_3}, //LA9
+ {0, E_3, D_3, F_3}, //LA10
+ {0, H_3, G_3, I_3}, //LA11
+ {0, K_3, J_3, L_3}, //LA12
+ {0, B_4, A_4, C_4}, //LA13
+ {0, E_4, D_4, F_4}, //LA14
+ {0, H_4, G_4, I_4}, //LA15
+ {0, K_4, J_4, L_4}, //LA16
+ {0, B_5, A_5, C_5}, //LA17
+ {0, E_5, D_5, F_5}, //LA18
+ {0, H_5, G_5, I_5}, //LA19
+ {0, K_5, J_5, L_5}, //LA20
+ {0, B_6, A_6, C_6}, //LA21
+ {0, E_6, D_6, F_6}, //LA22
+ {0, H_6, G_6, I_6}, //LA23
+ {0, K_6, J_6, L_6}, //LA24
+ {0, B_7, A_7, C_7}, //LA25
+ {0, E_7, D_7, F_7}, //LA26
+ {0, H_7, G_7, I_7}, //LA27
+ {0, K_7, J_7, L_7}, //LA28
+ {0, B_8, A_8, C_8}, //LA29
+ {0, E_8, D_8, F_8}, //LA30
+ {0, H_8, G_8, I_8}, //LA31
+ {0, K_8, J_8, L_8}, //LA32
+ {0, B_9, A_9, C_9}, //LA33
+ {0, E_9, D_9, F_9}, //LA34
+ {0, H_9, G_9, I_9}, //LA35
+ {0, K_9, J_9, L_9}, //LA36
+ {0, B_10, A_10, C_10}, //LA37
+ {0, E_10, D_10, F_10}, //LA38
+ {0, H_10, G_10, I_10}, //LA39
+ {0, K_10, J_10, L_10}, //LA40
+ {0, B_11, A_11, C_11}, //LA41
+ {0, E_11, D_11, F_11}, //LA42
+ {0, H_11, G_11, I_11}, //LA43
+ {0, K_11, J_11, L_11}, //LA44
+ {0, B_12, A_12, C_12}, //LA45
+ {0, E_12, D_12, F_12}, //LA46
+ {0, H_12, G_12, I_12}, //LA47
+ {0, K_12, J_12, L_12}, //LA48
+ {0, B_13, A_13, C_13}, //LA49
+ {0, E_13, D_13, F_13}, //LA50
+ {0, H_13, G_13, I_13}, //LA51
+ {0, K_13, J_13, L_13}, //LA52
+ {0, B_14, A_14, C_14}, //LA53
+ {0, E_14, D_14, F_14}, //LA54
+ {0, H_14, G_14, I_14}, //LA55
+ {0, K_14, J_14, L_14}, //LA56
+ {0, B_15, A_15, C_15}, //LA57
+ {0, E_15, D_15, F_15}, //LA58
+ {0, H_15, G_15, I_15}, //LA59
+ {0, K_15, J_15, L_15}, //LA60
+ {0, B_16, A_16, C_16}, //LA61
+ {0, E_16, D_16, F_16}, //LA62
+ {0, H_16, G_16, I_16}, //LA63
+ {0, K_16, J_16, L_16}, //LA64
+
+ {1, B_1, A_1, C_1}, //LB1
+ {1, E_1, D_1, F_1}, //LB2
+ {1, H_1, G_1, I_1}, //LB3
+ {1, K_1, J_1, L_1}, //LB4
+ {1, B_2, A_2, C_2}, //LB5
+ {1, E_2, D_2, F_2}, //LB6
+ {1, H_2, G_2, I_2}, //LB7
+ {1, K_2, J_2, L_2}, //LB8
+ {1, B_3, A_3, C_3}, //LB9
+ {1, E_3, D_3, F_3}, //LB10
+ {1, H_3, G_3, I_3}, //LB11
+ {1, K_3, J_3, L_3}, //LB12
+ {1, B_4, A_4, C_4}, //LB13
+ {1, E_4, D_4, F_4}, //LB14
+ {1, H_4, G_4, I_4}, //LB15
+ {1, K_4, J_4, L_4}, //LB16
+ {1, B_5, A_5, C_5}, //LB17
+ {1, E_5, D_5, F_5}, //LB18
+ {1, H_5, G_5, I_5}, //LB19
+ {1, K_5, J_5, L_5}, //LB20
+ {1, B_6, A_6, C_6}, //LB21
+ {1, E_6, D_6, F_6}, //LB22
+ {1, H_6, G_6, I_6}, //LB23
+ {1, K_6, J_6, L_6}, //LB24
+ {1, B_7, A_7, C_7}, //LB25
+ {1, E_7, D_7, F_7}, //LB26
+ {1, H_7, G_7, I_7}, //LB27
+ {1, K_7, J_7, L_7}, //LB28
+ {1, B_8, A_8, C_8}, //LB29
+ {1, E_8, D_8, F_8}, //LB30
+ {1, H_8, G_8, I_8}, //LB31
+ {1, K_8, J_8, L_8}, //LB32
+ {1, B_9, A_9, C_9}, //LB33
+ {1, E_9, D_9, F_9}, //LB34
+ {1, H_9, G_9, I_9}, //LB35
+ {1, K_9, J_9, L_9}, //LB36
+ {1, B_10, A_10, C_10}, //LB37
+ {1, E_10, D_10, F_10}, //LB38
+ {1, H_10, G_10, I_10}, //LB39
+ {1, K_10, J_10, L_10}, //LB40
+ {1, B_11, A_11, C_11}, //LB41
+ {1, E_11, D_11, F_11}, //LB42
+ {1, H_11, G_11, I_11}, //LB43
+ {1, K_11, J_11, L_11}, //LB44
+ {1, B_12, A_12, C_12}, //LB45
+ {1, E_12, D_12, F_12}, //LB46
+ {1, H_12, G_12, I_12}, //LB47
+ {1, K_12, J_12, L_12}, //LB48
+ {1, B_13, A_13, C_13}, //LB49
+ {1, E_13, D_13, F_13}, //LB50
+ {1, H_13, G_13, I_13}, //LB51
+ {1, K_13, J_13, L_13}, //LB52
+ {1, B_14, A_14, C_14}, //LB53
+ {1, E_14, D_14, F_14}, //LB54
+ {1, H_14, G_14, I_14}, //LB55
+ {1, K_14, J_14, L_14}, //LB56
+ {1, B_15, A_15, C_15}, //LB57
+ {1, E_15, D_15, F_15}, //LB58
+ {1, H_15, G_15, I_15}, //LB59
+ {1, K_15, J_15, L_15}, //LB60
+ {1, B_16, A_16, C_16}, //LB61
+ {1, E_16, D_16, F_16}, //LB62
+ {1, H_16, G_16, I_16}, //LB63
+ {1, K_16, J_16, L_16}, //LB64
+};
+#endif
+
/* Indicator LEDS are part of the LED driver
* Top LED is blue only. LED driver 2 RGB 63 Blue channel
* Middle LED is blue and red. LED driver 2 RGB 63 Red and Green channel
diff --git a/keyboards/spaceholdings/nebula12/nebula12.c b/keyboards/spaceholdings/nebula12/nebula12.c
index 7491bee844b4..3b8aae7a770b 100755
--- a/keyboards/spaceholdings/nebula12/nebula12.c
+++ b/keyboards/spaceholdings/nebula12/nebula12.c
@@ -14,7 +14,9 @@
* along with this program. If not, see .
*/
#ifndef RGB_BACKLIGHT_NEBULA12
-#error RGB_BACKLIGHT_NEBULA12 not defined, recheck config.h
+# error RGB_BACKLIGHT_NEBULA12 not defined, recheck config.h
+#else
+# include "drivers/led/issi/is31fl3731.h"
#endif
#include "nebula12.h"
@@ -23,3 +25,30 @@ void board_init(void) {
SYSCFG->CFGR1 |= SYSCFG_CFGR1_I2C1_DMA_RMP;
SYSCFG->CFGR1 &= ~(SYSCFG_CFGR1_SPI2_DMA_RMP);
}
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_NEBULA12)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C1_1, C3_2, C4_2}, //A1
+ {0, C1_2, C2_2, C4_3}, //A2
+ {0, C1_3, C2_3, C3_3}, //A3
+ {0, C1_4, C2_4, C3_4}, //A4
+ {0, C1_5, C2_5, C3_5}, //A5
+ {0, C1_6, C2_6, C3_6}, //A6
+ {0, C1_7, C2_7, C3_7}, //A7
+ {0, C1_8, C2_8, C3_8}, //A8
+ {0, C9_1, C8_1, C7_1}, //A9
+ {0, C9_2, C8_2, C7_2}, //A10
+ {0, C9_3, C8_3, C7_3}, //A11
+ {0, C9_4, C8_4, C7_4}, //A12
+ {0, C9_5, C8_5, C7_5}, //A13
+ {0, C9_6, C8_6, C7_6}, //A14
+ {0, C9_7, C8_7, C6_6}, //A15
+ {0, C9_8, C7_7, C6_7}, //A16
+};
+#endif
diff --git a/keyboards/spaceholdings/nebula68/nebula68.c b/keyboards/spaceholdings/nebula68/nebula68.c
index 054a269bf623..af51c4805e1d 100755
--- a/keyboards/spaceholdings/nebula68/nebula68.c
+++ b/keyboards/spaceholdings/nebula68/nebula68.c
@@ -14,7 +14,149 @@
* along with this program. If not, see .
*/
#ifndef RGB_BACKLIGHT_NEBULA68
-#error RGB_BACKLIGHT_NEBULA68 not defined, recheck config.h
+# error RGB_BACKLIGHT_NEBULA68 not defined, recheck config.h
+#else
+# include "drivers/led/issi/is31fl3733.h"
#endif
#include "nebula68.h"
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_NEBULA68)
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, B_1, A_1, C_1}, //LA1
+ {0, E_1, D_1, F_1}, //LA2
+ {0, H_1, G_1, I_1}, //LA3
+ {0, K_1, J_1, L_1}, //LA4
+ {0, B_2, A_2, C_2}, //LA5
+ {0, E_2, D_2, F_2}, //LA6
+ {0, H_2, G_2, I_2}, //LA7
+ {0, K_2, J_2, L_2}, //LA8
+ {0, B_3, A_3, C_3}, //LA9
+ {0, E_3, D_3, F_3}, //LA10
+ {0, H_3, G_3, I_3}, //LA11
+ {0, K_3, J_3, L_3}, //LA12
+ {0, B_4, A_4, C_4}, //LA13
+ {0, E_4, D_4, F_4}, //LA14
+ {0, H_4, G_4, I_4}, //LA15
+ {0, K_4, J_4, L_4}, //LA16
+ {0, B_5, A_5, C_5}, //LA17
+ {0, E_5, D_5, F_5}, //LA18
+ {0, H_5, G_5, I_5}, //LA19
+ {0, K_5, J_5, L_5}, //LA20
+ {0, B_6, A_6, C_6}, //LA21
+ {0, E_6, D_6, F_6}, //LA22
+ {0, H_6, G_6, I_6}, //LA23
+ {0, K_6, J_6, L_6}, //LA24
+ {0, B_7, A_7, C_7}, //LA25
+ {0, E_7, D_7, F_7}, //LA26
+ {0, H_7, G_7, I_7}, //LA27
+ {0, K_7, J_7, L_7}, //LA28
+ {0, B_8, A_8, C_8}, //LA29
+ {0, E_8, D_8, F_8}, //LA30
+ {0, H_8, G_8, I_8}, //LA31
+ {0, K_8, J_8, L_8}, //LA32
+ {0, B_9, A_9, C_9}, //LA33
+ {0, E_9, D_9, F_9}, //LA34
+ {0, H_9, G_9, I_9}, //LA35
+ {0, K_9, J_9, L_9}, //LA36
+ {0, B_10, A_10, C_10}, //LA37
+ {0, E_10, D_10, F_10}, //LA38
+ {0, H_10, G_10, I_10}, //LA39
+ {0, K_10, J_10, L_10}, //LA40
+ {0, B_11, A_11, C_11}, //LA41
+ {0, E_11, D_11, F_11}, //LA42
+ {0, H_11, G_11, I_11}, //LA43
+ {0, K_11, J_11, L_11}, //LA44
+ {0, B_12, A_12, C_12}, //LA45
+ {0, E_12, D_12, F_12}, //LA46
+ {0, H_12, G_12, I_12}, //LA47
+ {0, K_12, J_12, L_12}, //LA48
+ {0, B_13, A_13, C_13}, //LA49
+ {0, E_13, D_13, F_13}, //LA50
+ {0, H_13, G_13, I_13}, //LA51
+ {0, K_13, J_13, L_13}, //LA52
+ {0, B_14, A_14, C_14}, //LA53
+ {0, E_14, D_14, F_14}, //LA54
+ {0, H_14, G_14, I_14}, //LA55
+ {0, K_14, J_14, L_14}, //LA56
+ {0, B_15, A_15, C_15}, //LA57
+ {0, E_15, D_15, F_15}, //LA58
+ {0, H_15, G_15, I_15}, //LA59
+ {0, K_15, J_15, L_15}, //LA60
+ {0, B_16, A_16, C_16}, //LA61
+ {0, E_16, D_16, F_16}, //LA62
+ {0, H_16, G_16, I_16}, //LA63
+ {0, K_16, J_16, L_16}, //LA64
+
+ {1, B_1, A_1, C_1}, //LB1
+ {1, E_1, D_1, F_1}, //LB2
+ {1, H_1, G_1, I_1}, //LB3
+ {1, K_1, J_1, L_1}, //LB4
+ {1, B_2, A_2, C_2}, //LB5
+ {1, E_2, D_2, F_2}, //LB6
+ {1, H_2, G_2, I_2}, //LB7
+ {1, K_2, J_2, L_2}, //LB8
+ {1, B_3, A_3, C_3}, //LB9
+ {1, E_3, D_3, F_3}, //LB10
+ {1, H_3, G_3, I_3}, //LB11
+ {1, K_3, J_3, L_3}, //LB12
+ {1, B_4, A_4, C_4}, //LB13
+ {1, E_4, D_4, F_4}, //LB14
+ {1, H_4, G_4, I_4}, //LB15
+ {1, K_4, J_4, L_4}, //LB16
+ {1, B_5, A_5, C_5}, //LB17
+ {1, E_5, D_5, F_5}, //LB18
+ {1, H_5, G_5, I_5}, //LB19
+ {1, K_5, J_5, L_5}, //LB20
+ {1, B_6, A_6, C_6}, //LB21
+ {1, E_6, D_6, F_6}, //LB22
+ {1, H_6, G_6, I_6}, //LB23
+ {1, K_6, J_6, L_6}, //LB24
+ {1, B_7, A_7, C_7}, //LB25
+ {1, E_7, D_7, F_7}, //LB26
+ {1, H_7, G_7, I_7}, //LB27
+ {1, K_7, J_7, L_7}, //LB28
+ {1, B_8, A_8, C_8}, //LB29
+ {1, E_8, D_8, F_8}, //LB30
+ {1, H_8, G_8, I_8}, //LB31
+ {1, K_8, J_8, L_8}, //LB32
+ {1, B_9, A_9, C_9}, //LB33
+ {1, E_9, D_9, F_9}, //LB34
+ {1, H_9, G_9, I_9}, //LB35
+ {1, K_9, J_9, L_9}, //LB36
+ {1, B_10, A_10, C_10}, //LB37
+ {1, E_10, D_10, F_10}, //LB38
+ {1, H_10, G_10, I_10}, //LB39
+ {1, K_10, J_10, L_10}, //LB40
+ {1, B_11, A_11, C_11}, //LB41
+ {1, E_11, D_11, F_11}, //LB42
+ {1, H_11, G_11, I_11}, //LB43
+ {1, K_11, J_11, L_11}, //LB44
+ {1, B_12, A_12, C_12}, //LB45
+ {1, E_12, D_12, F_12}, //LB46
+ {1, H_12, G_12, I_12}, //LB47
+ {1, K_12, J_12, L_12}, //LB48
+ {1, B_13, A_13, C_13}, //LB49
+ {1, E_13, D_13, F_13}, //LB50
+ {1, H_13, G_13, I_13}, //LB51
+ {1, K_13, J_13, L_13}, //LB52
+ {1, B_14, A_14, C_14}, //LB53
+ {1, E_14, D_14, F_14}, //LB54
+ {1, H_14, G_14, I_14}, //LB55
+ {1, K_14, J_14, L_14}, //LB56
+ {1, B_15, A_15, C_15}, //LB57
+ {1, E_15, D_15, F_15}, //LB58
+ {1, H_15, G_15, I_15}, //LB59
+ {1, K_15, J_15, L_15}, //LB60
+ {1, B_16, A_16, C_16}, //LB61
+ {1, E_16, D_16, F_16}, //LB62
+ {1, H_16, G_16, I_16}, //LB63
+ {1, K_16, J_16, L_16}, //LB64
+};
+#endif
diff --git a/keyboards/tkc/portico/portico.c b/keyboards/tkc/portico/portico.c
index 72f8754f6c98..bd60df13e255 100644
--- a/keyboards/tkc/portico/portico.c
+++ b/keyboards/tkc/portico/portico.c
@@ -17,7 +17,11 @@ along with this program. If not, see .
#include "portico.h"
-#ifdef RGB_MATRIX_ENABLE
+#ifdef RGB_BACKLIGHT_PORTICO
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_PORTICO)
const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
{ 0, C2_1, C3_1, C4_1 },
@@ -92,7 +96,9 @@ const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
{ 1, C9_16, C7_15, C6_15 },
{ 1, C8_16, C7_16, C6_16 }
};
+#endif
+#ifdef RGB_MATRIX_ENABLE
led_config_t g_led_config = {
{
{ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 },
diff --git a/keyboards/tkc/portico75/portico75.c b/keyboards/tkc/portico75/portico75.c
index f0751483aade..0a22a37d4e38 100644
--- a/keyboards/tkc/portico75/portico75.c
+++ b/keyboards/tkc/portico75/portico75.c
@@ -18,7 +18,11 @@ along with this program. If not, see .
#include "portico75.h"
-#ifdef RGB_MATRIX_ENABLE
+#ifdef RGB_BACKLIGHT_PORTICO75
+# include "drivers/led/issi/is31fl3741.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_PORTICO75)
const is31fl3741_led_t PROGMEM g_is31fl3741_leds[IS31FL3741_LED_COUNT] = {
{0, CS18_SW1, CS17_SW1, CS16_SW1},
@@ -134,8 +138,10 @@ const is31fl3741_led_t PROGMEM g_is31fl3741_leds[IS31FL3741_LED_COUNT] = {
{0, CS33_SW5, CS32_SW5, CS31_SW5},
{0, CS33_SW6, CS32_SW6, CS31_SW6},
{0, CS33_SW7, CS32_SW7, CS31_SW7},
-
};
+#endif
+
+#ifdef RGB_MATRIX_ENABLE
led_config_t g_led_config = { {
{ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14},
{ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29},
diff --git a/keyboards/wilba_tech/rama_works_kara/rama_works_kara.c b/keyboards/wilba_tech/rama_works_kara/rama_works_kara.c
index 787a8549250d..c5f5c9a9d602 100644
--- a/keyboards/wilba_tech/rama_works_kara/rama_works_kara.c
+++ b/keyboards/wilba_tech/rama_works_kara/rama_works_kara.c
@@ -14,5 +14,93 @@
* along with this program. If not, see .
*/
#ifndef RGB_BACKLIGHT_M60_A
-#error RGB_BACKLIGHT_M60_A not defined
+# error RGB_BACKLIGHT_M60_A not defined
+#else
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_M60_A)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
#endif
diff --git a/keyboards/wilba_tech/rama_works_koyu/rama_works_koyu.c b/keyboards/wilba_tech/rama_works_koyu/rama_works_koyu.c
index 03d1e1215976..f7b1595d2471 100644
--- a/keyboards/wilba_tech/rama_works_koyu/rama_works_koyu.c
+++ b/keyboards/wilba_tech/rama_works_koyu/rama_works_koyu.c
@@ -14,5 +14,93 @@
* along with this program. If not, see .
*/
#ifndef RGB_BACKLIGHT_KOYU
-#error RGB_BACKLIGHT_KOYU not defined, you done goofed somehao, brah
+# error RGB_BACKLIGHT_KOYU not defined, you done goofed somehao, brah
+#else
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_KOYU)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
#endif
diff --git a/keyboards/wilba_tech/rama_works_m10_c/rama_works_m10_c.c b/keyboards/wilba_tech/rama_works_m10_c/rama_works_m10_c.c
index 17fa921db611..8f23c9130b4e 100644
--- a/keyboards/wilba_tech/rama_works_m10_c/rama_works_m10_c.c
+++ b/keyboards/wilba_tech/rama_works_m10_c/rama_works_m10_c.c
@@ -14,5 +14,24 @@
* along with this program. If not, see .
*/
#ifndef RGB_BACKLIGHT_M10_C
-#error RGB_BACKLIGHT_M10_C not defined
-#endif
\ No newline at end of file
+# error RGB_BACKLIGHT_M10_C not defined
+#else
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_M10_C)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15} // LB16
+};
+#endif
diff --git a/keyboards/wilba_tech/rama_works_m50_a/rama_works_m50_a.c b/keyboards/wilba_tech/rama_works_m50_a/rama_works_m50_a.c
index ee5ebf93fd61..69f92df89339 100644
--- a/keyboards/wilba_tech/rama_works_m50_a/rama_works_m50_a.c
+++ b/keyboards/wilba_tech/rama_works_m50_a/rama_works_m50_a.c
@@ -15,4 +15,92 @@
*/
#ifndef RGB_BACKLIGHT_M50_A
#error RGB_BACKLIGHT_M50_A not defined
+#else
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_M50_A)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
#endif
diff --git a/keyboards/wilba_tech/rama_works_m60_a/rama_works_m60_a.c b/keyboards/wilba_tech/rama_works_m60_a/rama_works_m60_a.c
index 80a98460d822..dd292c685d03 100644
--- a/keyboards/wilba_tech/rama_works_m60_a/rama_works_m60_a.c
+++ b/keyboards/wilba_tech/rama_works_m60_a/rama_works_m60_a.c
@@ -14,5 +14,93 @@
* along with this program. If not, see .
*/
#ifndef RGB_BACKLIGHT_M60_A
-#error RGB_BACKLIGHT_M60_A not defined, you done goofed somehao, brah
+# error RGB_BACKLIGHT_M60_A not defined, you done goofed somehao, brah
+#else
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_M60_A)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
#endif
diff --git a/keyboards/wilba_tech/rama_works_m65_b/rama_works_m65_b.c b/keyboards/wilba_tech/rama_works_m65_b/rama_works_m65_b.c
index 62546fbfc926..8c92472ecbf6 100644
--- a/keyboards/wilba_tech/rama_works_m65_b/rama_works_m65_b.c
+++ b/keyboards/wilba_tech/rama_works_m65_b/rama_works_m65_b.c
@@ -14,5 +14,93 @@
* along with this program. If not, see .
*/
#ifndef RGB_BACKLIGHT_M65_B
-#error RGB_BACKLIGHT_M65_B not defined
+# error RGB_BACKLIGHT_M65_B not defined
+#else
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_M65_B)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
#endif
diff --git a/keyboards/wilba_tech/rama_works_m65_bx/rama_works_m65_bx.c b/keyboards/wilba_tech/rama_works_m65_bx/rama_works_m65_bx.c
index f390540a4812..1709b0915e6b 100644
--- a/keyboards/wilba_tech/rama_works_m65_bx/rama_works_m65_bx.c
+++ b/keyboards/wilba_tech/rama_works_m65_bx/rama_works_m65_bx.c
@@ -14,5 +14,93 @@
* along with this program. If not, see .
*/
#ifndef RGB_BACKLIGHT_M65_BX
-#error RGB_BACKLIGHT_M65_BX not defined
+# error RGB_BACKLIGHT_M65_BX not defined
+#else
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_M65_BX)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
#endif
diff --git a/keyboards/wilba_tech/rama_works_m6_b/rama_works_m6_b.c b/keyboards/wilba_tech/rama_works_m6_b/rama_works_m6_b.c
index 581b31d753d9..cf37083fcc79 100644
--- a/keyboards/wilba_tech/rama_works_m6_b/rama_works_m6_b.c
+++ b/keyboards/wilba_tech/rama_works_m6_b/rama_works_m6_b.c
@@ -14,5 +14,18 @@
* along with this program. If not, see .
*/
#ifndef RGB_BACKLIGHT_M6_B
-#error RGB_BACKLIGHT_M6_B not defined, you done goofed somehao, brah
+# error RGB_BACKLIGHT_M6_B not defined, you done goofed somehao, brah
+#else
+# include "drivers/led/issi/is31fl3218.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_M6_B)
+const is31fl3218_led_t PROGMEM g_is31fl3218_leds[IS31FL3218_LED_COUNT] = {
+ {OUT1, OUT2, OUT3},
+ {OUT4, OUT5, OUT6},
+ {OUT7, OUT8, OUT9},
+ {OUT10, OUT11, OUT12},
+ {OUT13, OUT14, OUT15},
+ {OUT16, OUT17, OUT18}
+};
#endif
diff --git a/keyboards/wilba_tech/rama_works_u80_a/rama_works_u80_a.c b/keyboards/wilba_tech/rama_works_u80_a/rama_works_u80_a.c
new file mode 100644
index 000000000000..17091db7cea1
--- /dev/null
+++ b/keyboards/wilba_tech/rama_works_u80_a/rama_works_u80_a.c
@@ -0,0 +1,132 @@
+// Copyright 2022 QMK
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include "rama_works_u80_a.h"
+
+#ifdef RGB_BACKLIGHT_U80_A
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_U80_A)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+
+ {2, C2_1, C3_1, C4_1}, // LE0
+ {2, C1_1, C3_2, C4_2}, // LE1
+ {2, C1_2, C2_2, C4_3}, // LE2
+ {2, C1_3, C2_3, C3_3}, // LE3
+ {2, C1_4, C2_4, C3_4}, // LE4
+ {2, C1_5, C2_5, C3_5}, // LE5
+ {2, C1_6, C2_6, C3_6}, // LE6
+ {2, C1_7, C2_7, C3_7}, // LE7
+ {2, C1_8, C2_8, C3_8}, // LE8
+ {2, C9_1, C8_1, C7_1}, // LE9
+ {2, C9_2, C8_2, C7_2}, // LE10
+ {2, C9_3, C8_3, C7_3}, // LE11
+ {2, C9_4, C8_4, C7_4}, // LE12
+ {2, C9_5, C8_5, C7_5}, // LE13
+ {2, C9_6, C8_6, C7_6}, // LE14
+ {2, C9_7, C8_7, C6_6}, // LE15
+ {2, C9_8, C7_7, C6_7}, // LE16
+ {2, C8_8, C7_8, C6_8}, // LE17
+
+ {2, C2_9, C3_9, C4_9}, // LF0
+ {2, C1_9, C3_10, C4_10}, // LF1
+ {2, C1_10, C2_10, C4_11}, // LF2
+ {2, C1_11, C2_11, C3_11}, // LF3
+ {2, C1_12, C2_12, C3_12}, // LF4
+ {2, C1_13, C2_13, C3_13}, // LF5
+ {2, C1_14, C2_14, C3_14}, // LF6
+ {2, C1_15, C2_15, C3_15}, // LF7
+ {2, C1_16, C2_16, C3_16}, // LF8
+ {2, C9_9, C8_9, C7_9}, // LF9
+ {2, C9_10, C8_10, C7_10}, // LF10
+ {2, C9_11, C8_11, C7_11}, // LF11
+ {2, C9_12, C8_12, C7_12}, // LF12
+ {2, C9_13, C8_13, C7_13}, // LF13
+ {2, C9_14, C8_14, C7_14}, // LF14
+ {2, C9_15, C8_15, C6_14}, // LF15
+ {2, C9_16, C7_15, C6_15}, // LF16
+ {2, C8_16, C7_16, C6_16}, // LF17
+};
+#endif
diff --git a/keyboards/wilba_tech/wt60_b/wt60_b.c b/keyboards/wilba_tech/wt60_b/wt60_b.c
new file mode 100644
index 000000000000..f45b6c9612ef
--- /dev/null
+++ b/keyboards/wilba_tech/wt60_b/wt60_b.c
@@ -0,0 +1,94 @@
+// Copyright 2022 QMK
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include "wt60_b.h"
+
+#ifdef RGB_BACKLIGHT_WT60_B
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_WT60_B)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
+#endif
diff --git a/keyboards/wilba_tech/wt60_bx/wt60_bx.c b/keyboards/wilba_tech/wt60_bx/wt60_bx.c
new file mode 100644
index 000000000000..29e789a2fc25
--- /dev/null
+++ b/keyboards/wilba_tech/wt60_bx/wt60_bx.c
@@ -0,0 +1,94 @@
+// Copyright 2022 QMK
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include "wt60_bx.h"
+
+#ifdef RGB_BACKLIGHT_WT60_BX
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_WT60_BX)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
+#endif
diff --git a/keyboards/wilba_tech/wt60_c/wt60_c.c b/keyboards/wilba_tech/wt60_c/wt60_c.c
new file mode 100644
index 000000000000..cac6b866b06e
--- /dev/null
+++ b/keyboards/wilba_tech/wt60_c/wt60_c.c
@@ -0,0 +1,94 @@
+// Copyright 2022 QMK
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include "wt60_c.h"
+
+#ifdef RGB_BACKLIGHT_WT60_BX
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_WT60_BX)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
+#endif
diff --git a/keyboards/wilba_tech/wt_rgb_backlight.c b/keyboards/wilba_tech/wt_rgb_backlight.c
index 8bd04c840fde..72ddb34ee70f 100644
--- a/keyboards/wilba_tech/wt_rgb_backlight.c
+++ b/keyboards/wilba_tech/wt_rgb_backlight.c
@@ -154,785 +154,6 @@ uint8_t g_key_hit[BACKLIGHT_LED_COUNT];
// Ticks since any key was last hit.
uint32_t g_any_key_hit = 0;
-#if defined(RGB_BACKLIGHT_HS60)
-#define ISSI_ADDR_1 IS31FL3733_I2C_ADDRESS_GND_GND
-
-const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, B_1, A_1, C_1}, //LA1
- {0, E_1, D_1, F_1}, //LA2
- {0, H_1, G_1, I_1}, //LA3
- {0, K_1, J_1, L_1}, //LA4
- {0, B_2, A_2, C_2}, //LA5
- {0, E_2, D_2, F_2}, //LA6
- {0, H_2, G_2, I_2}, //LA7
- {0, K_2, J_2, L_2}, //LA8
- {0, B_3, A_3, C_3}, //LA9
- {0, E_3, D_3, F_3}, //LA10
- {0, H_3, G_3, I_3}, //LA11
- {0, K_3, J_3, L_3}, //LA12
- {0, B_4, A_4, C_4}, //LA13
- {0, E_4, D_4, F_4}, //LA14
- {0, H_4, G_4, I_4}, //LA15
- {0, K_4, J_4, L_4}, //LA16
- {0, B_5, A_5, C_5}, //LA17
- {0, E_5, D_5, F_5}, //LA18
- {0, H_5, G_5, I_5}, //LA19
- {0, K_5, J_5, L_5}, //LA20
- {0, B_6, A_6, C_6}, //LA21
- {0, E_6, D_6, F_6}, //LA22
- {0, H_6, G_6, I_6}, //LA23
- {0, K_6, J_6, L_6}, //LA24
- {0, B_7, A_7, C_7}, //LA25
- {0, E_7, D_7, F_7}, //LA26
- {0, H_7, G_7, I_7}, //LA27
- {0, K_7, J_7, L_7}, //LA28
- {0, B_8, A_8, C_8}, //LA29
- {0, E_8, D_8, F_8}, //LA30
- {0, H_8, G_8, I_8}, //LA31
- {0, K_8, J_8, L_8}, //LA32
- {0, B_9, A_9, C_9}, //LA33
- {0, E_9, D_9, F_9}, //LA34
- {0, H_9, G_9, I_9}, //LA35
- {0, K_9, J_9, L_9}, //LA36
- {0, B_10, A_10, C_10}, //LA37
- {0, E_10, D_10, F_10}, //LA38
- {0, H_10, G_10, I_10}, //LA39
- {0, K_10, J_10, L_10}, //LA40
- {0, B_11, A_11, C_11}, //LA41
- {0, E_11, D_11, F_11}, //LA42
- {0, H_11, G_11, I_11}, //LA43
- {0, K_11, J_11, L_11}, //LA44
- {0, B_12, A_12, C_12}, //LA45
- {0, E_12, D_12, F_12}, //LA46
- {0, H_12, G_12, I_12}, //LA47
- {0, K_12, J_12, L_12}, //LA48
- {0, B_13, A_13, C_13}, //LA49
- {0, E_13, D_13, F_13}, //LA50
- {0, H_13, G_13, I_13}, //LA51
- {0, K_13, J_13, L_13}, //LA52
- {0, B_14, A_14, C_14}, //LA53
- {0, E_14, D_14, F_14}, //LA54
- {0, H_14, G_14, I_14}, //LA55
- {0, K_14, J_14, L_14}, //LA56
- {0, B_15, A_15, C_15}, //LA57
- {0, E_15, D_15, F_15}, //LA58
- {0, H_15, G_15, I_15}, //LA59
- {0, K_15, J_15, L_15}, //LA60
- {0, B_16, A_16, C_16}, //LA61
- {0, E_16, D_16, F_16}, //LA62
- {0, H_16, G_16, I_16}, //LA63
- {0, K_16, J_16, L_16}, //LA64
-};
-
-#elif defined(RGB_BACKLIGHT_NK65) || defined(RGB_BACKLIGHT_NEBULA68) || defined(RGB_BACKLIGHT_NK87) || defined(RGB_BACKLIGHT_KW_MEGA)
-#define ISSI_ADDR_1 IS31FL3733_I2C_ADDRESS_GND_GND
-#define ISSI_ADDR_2 IS31FL3733_I2C_ADDRESS_GND_SDA
-
-const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, B_1, A_1, C_1}, //LA1
- {0, E_1, D_1, F_1}, //LA2
- {0, H_1, G_1, I_1}, //LA3
- {0, K_1, J_1, L_1}, //LA4
- {0, B_2, A_2, C_2}, //LA5
- {0, E_2, D_2, F_2}, //LA6
- {0, H_2, G_2, I_2}, //LA7
- {0, K_2, J_2, L_2}, //LA8
- {0, B_3, A_3, C_3}, //LA9
- {0, E_3, D_3, F_3}, //LA10
- {0, H_3, G_3, I_3}, //LA11
- {0, K_3, J_3, L_3}, //LA12
- {0, B_4, A_4, C_4}, //LA13
- {0, E_4, D_4, F_4}, //LA14
- {0, H_4, G_4, I_4}, //LA15
- {0, K_4, J_4, L_4}, //LA16
- {0, B_5, A_5, C_5}, //LA17
- {0, E_5, D_5, F_5}, //LA18
- {0, H_5, G_5, I_5}, //LA19
- {0, K_5, J_5, L_5}, //LA20
- {0, B_6, A_6, C_6}, //LA21
- {0, E_6, D_6, F_6}, //LA22
- {0, H_6, G_6, I_6}, //LA23
- {0, K_6, J_6, L_6}, //LA24
- {0, B_7, A_7, C_7}, //LA25
- {0, E_7, D_7, F_7}, //LA26
- {0, H_7, G_7, I_7}, //LA27
- {0, K_7, J_7, L_7}, //LA28
- {0, B_8, A_8, C_8}, //LA29
- {0, E_8, D_8, F_8}, //LA30
- {0, H_8, G_8, I_8}, //LA31
- {0, K_8, J_8, L_8}, //LA32
- {0, B_9, A_9, C_9}, //LA33
- {0, E_9, D_9, F_9}, //LA34
- {0, H_9, G_9, I_9}, //LA35
- {0, K_9, J_9, L_9}, //LA36
- {0, B_10, A_10, C_10}, //LA37
- {0, E_10, D_10, F_10}, //LA38
- {0, H_10, G_10, I_10}, //LA39
- {0, K_10, J_10, L_10}, //LA40
- {0, B_11, A_11, C_11}, //LA41
- {0, E_11, D_11, F_11}, //LA42
- {0, H_11, G_11, I_11}, //LA43
- {0, K_11, J_11, L_11}, //LA44
- {0, B_12, A_12, C_12}, //LA45
- {0, E_12, D_12, F_12}, //LA46
- {0, H_12, G_12, I_12}, //LA47
- {0, K_12, J_12, L_12}, //LA48
- {0, B_13, A_13, C_13}, //LA49
- {0, E_13, D_13, F_13}, //LA50
- {0, H_13, G_13, I_13}, //LA51
- {0, K_13, J_13, L_13}, //LA52
- {0, B_14, A_14, C_14}, //LA53
- {0, E_14, D_14, F_14}, //LA54
- {0, H_14, G_14, I_14}, //LA55
- {0, K_14, J_14, L_14}, //LA56
- {0, B_15, A_15, C_15}, //LA57
- {0, E_15, D_15, F_15}, //LA58
- {0, H_15, G_15, I_15}, //LA59
- {0, K_15, J_15, L_15}, //LA60
- {0, B_16, A_16, C_16}, //LA61
- {0, E_16, D_16, F_16}, //LA62
- {0, H_16, G_16, I_16}, //LA63
- {0, K_16, J_16, L_16}, //LA64
-
- {1, B_1, A_1, C_1}, //LB1
- {1, E_1, D_1, F_1}, //LB2
- {1, H_1, G_1, I_1}, //LB3
- {1, K_1, J_1, L_1}, //LB4
- {1, B_2, A_2, C_2}, //LB5
- {1, E_2, D_2, F_2}, //LB6
- {1, H_2, G_2, I_2}, //LB7
- {1, K_2, J_2, L_2}, //LB8
- {1, B_3, A_3, C_3}, //LB9
- {1, E_3, D_3, F_3}, //LB10
- {1, H_3, G_3, I_3}, //LB11
- {1, K_3, J_3, L_3}, //LB12
- {1, B_4, A_4, C_4}, //LB13
- {1, E_4, D_4, F_4}, //LB14
- {1, H_4, G_4, I_4}, //LB15
- {1, K_4, J_4, L_4}, //LB16
- {1, B_5, A_5, C_5}, //LB17
- {1, E_5, D_5, F_5}, //LB18
- {1, H_5, G_5, I_5}, //LB19
- {1, K_5, J_5, L_5}, //LB20
- {1, B_6, A_6, C_6}, //LB21
- {1, E_6, D_6, F_6}, //LB22
- {1, H_6, G_6, I_6}, //LB23
- {1, K_6, J_6, L_6}, //LB24
- {1, B_7, A_7, C_7}, //LB25
- {1, E_7, D_7, F_7}, //LB26
- {1, H_7, G_7, I_7}, //LB27
- {1, K_7, J_7, L_7}, //LB28
- {1, B_8, A_8, C_8}, //LB29
- {1, E_8, D_8, F_8}, //LB30
- {1, H_8, G_8, I_8}, //LB31
- {1, K_8, J_8, L_8}, //LB32
- {1, B_9, A_9, C_9}, //LB33
- {1, E_9, D_9, F_9}, //LB34
- {1, H_9, G_9, I_9}, //LB35
- {1, K_9, J_9, L_9}, //LB36
- {1, B_10, A_10, C_10}, //LB37
- {1, E_10, D_10, F_10}, //LB38
- {1, H_10, G_10, I_10}, //LB39
- {1, K_10, J_10, L_10}, //LB40
- {1, B_11, A_11, C_11}, //LB41
- {1, E_11, D_11, F_11}, //LB42
- {1, H_11, G_11, I_11}, //LB43
- {1, K_11, J_11, L_11}, //LB44
- {1, B_12, A_12, C_12}, //LB45
- {1, E_12, D_12, F_12}, //LB46
- {1, H_12, G_12, I_12}, //LB47
- {1, K_12, J_12, L_12}, //LB48
- {1, B_13, A_13, C_13}, //LB49
- {1, E_13, D_13, F_13}, //LB50
- {1, H_13, G_13, I_13}, //LB51
- {1, K_13, J_13, L_13}, //LB52
- {1, B_14, A_14, C_14}, //LB53
- {1, E_14, D_14, F_14}, //LB54
- {1, H_14, G_14, I_14}, //LB55
- {1, K_14, J_14, L_14}, //LB56
- {1, B_15, A_15, C_15}, //LB57
- {1, E_15, D_15, F_15}, //LB58
- {1, H_15, G_15, I_15}, //LB59
- {1, K_15, J_15, L_15}, //LB60
- {1, B_16, A_16, C_16}, //LB61
- {1, E_16, D_16, F_16}, //LB62
- {1, H_16, G_16, I_16}, //LB63
- {1, K_16, J_16, L_16}, //LB64
-};
-
-#elif defined(RGB_BACKLIGHT_NEBULA12)
-#define ISSI_ADDR_1 IS31FL3731_I2C_ADDRESS_GND
-
-const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, C1_1, C3_2, C4_2}, //A1
- {0, C1_2, C2_2, C4_3}, //A2
- {0, C1_3, C2_3, C3_3}, //A3
- {0, C1_4, C2_4, C3_4}, //A4
- {0, C1_5, C2_5, C3_5}, //A5
- {0, C1_6, C2_6, C3_6}, //A6
- {0, C1_7, C2_7, C3_7}, //A7
- {0, C1_8, C2_8, C3_8}, //A8
- {0, C9_1, C8_1, C7_1}, //A9
- {0, C9_2, C8_2, C7_2}, //A10
- {0, C9_3, C8_3, C7_3}, //A11
- {0, C9_4, C8_4, C7_4}, //A12
- {0, C9_5, C8_5, C7_5}, //A13
- {0, C9_6, C8_6, C7_6}, //A14
- {0, C9_7, C8_7, C6_6}, //A15
- {0, C9_8, C7_7, C6_7}, //A16
-};
-
-#elif defined(RGB_BACKLIGHT_U80_A)
-// U80-A prototype uses 3 ISSI drivers
-#define ISSI_ADDR_1 IS31FL3731_I2C_ADDRESS_GND
-#define ISSI_ADDR_2 IS31FL3731_I2C_ADDRESS_SDA
-#define ISSI_ADDR_3 IS31FL3731_I2C_ADDRESS_SCL
-
-const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, C2_1, C3_1, C4_1}, // LA0
- {0, C1_1, C3_2, C4_2}, // LA1
- {0, C1_2, C2_2, C4_3}, // LA2
- {0, C1_3, C2_3, C3_3}, // LA3
- {0, C1_4, C2_4, C3_4}, // LA4
- {0, C1_5, C2_5, C3_5}, // LA5
- {0, C1_6, C2_6, C3_6}, // LA6
- {0, C1_7, C2_7, C3_7}, // LA7
- {0, C1_8, C2_8, C3_8}, // LA8
- {0, C9_1, C8_1, C7_1}, // LA9
- {0, C9_2, C8_2, C7_2}, // LA10
- {0, C9_3, C8_3, C7_3}, // LA11
- {0, C9_4, C8_4, C7_4}, // LA12
- {0, C9_5, C8_5, C7_5}, // LA13
- {0, C9_6, C8_6, C7_6}, // LA14
- {0, C9_7, C8_7, C6_6}, // LA15
- {0, C9_8, C7_7, C6_7}, // LA16
- {0, C8_8, C7_8, C6_8}, // LA17
-
- {0, C2_9, C3_9, C4_9}, // LB0
- {0, C1_9, C3_10, C4_10}, // LB1
- {0, C1_10, C2_10, C4_11}, // LB2
- {0, C1_11, C2_11, C3_11}, // LB3
- {0, C1_12, C2_12, C3_12}, // LB4
- {0, C1_13, C2_13, C3_13}, // LB5
- {0, C1_14, C2_14, C3_14}, // LB6
- {0, C1_15, C2_15, C3_15}, // LB7
- {0, C1_16, C2_16, C3_16}, // LB8
- {0, C9_9, C8_9, C7_9}, // LB9
- {0, C9_10, C8_10, C7_10}, // LB10
- {0, C9_11, C8_11, C7_11}, // LB11
- {0, C9_12, C8_12, C7_12}, // LB12
- {0, C9_13, C8_13, C7_13}, // LB13
- {0, C9_14, C8_14, C7_14}, // LB14
- {0, C9_15, C8_15, C6_14}, // LB15
- {0, C9_16, C7_15, C6_15}, // LB16
- {0, C8_16, C7_16, C6_16}, // LB17
-
- {1, C2_1, C3_1, C4_1}, // LC0
- {1, C1_1, C3_2, C4_2}, // LC1
- {1, C1_2, C2_2, C4_3}, // LC2
- {1, C1_3, C2_3, C3_3}, // LC3
- {1, C1_4, C2_4, C3_4}, // LC4
- {1, C1_5, C2_5, C3_5}, // LC5
- {1, C1_6, C2_6, C3_6}, // LC6
- {1, C1_7, C2_7, C3_7}, // LC7
- {1, C1_8, C2_8, C3_8}, // LC8
- {1, C9_1, C8_1, C7_1}, // LC9
- {1, C9_2, C8_2, C7_2}, // LC10
- {1, C9_3, C8_3, C7_3}, // LC11
- {1, C9_4, C8_4, C7_4}, // LC12
- {1, C9_5, C8_5, C7_5}, // LC13
- {1, C9_6, C8_6, C7_6}, // LC14
- {1, C9_7, C8_7, C6_6}, // LC15
- {1, C9_8, C7_7, C6_7}, // LC16
- {1, C8_8, C7_8, C6_8}, // LC17
-
- {1, C2_9, C3_9, C4_9}, // LD0
- {1, C1_9, C3_10, C4_10}, // LD1
- {1, C1_10, C2_10, C4_11}, // LD2
- {1, C1_11, C2_11, C3_11}, // LD3
- {1, C1_12, C2_12, C3_12}, // LD4
- {1, C1_13, C2_13, C3_13}, // LD5
- {1, C1_14, C2_14, C3_14}, // LD6
- {1, C1_15, C2_15, C3_15}, // LD7
- {1, C1_16, C2_16, C3_16}, // LD8
- {1, C9_9, C8_9, C7_9}, // LD9
- {1, C9_10, C8_10, C7_10}, // LD10
- {1, C9_11, C8_11, C7_11}, // LD11
- {1, C9_12, C8_12, C7_12}, // LD12
- {1, C9_13, C8_13, C7_13}, // LD13
- {1, C9_14, C8_14, C7_14}, // LD14
- {1, C9_15, C8_15, C6_14}, // LD15
- {1, C9_16, C7_15, C6_15}, // LD16
- {1, C8_16, C7_16, C6_16}, // LD17
-
- {2, C2_1, C3_1, C4_1}, // LE0
- {2, C1_1, C3_2, C4_2}, // LE1
- {2, C1_2, C2_2, C4_3}, // LE2
- {2, C1_3, C2_3, C3_3}, // LE3
- {2, C1_4, C2_4, C3_4}, // LE4
- {2, C1_5, C2_5, C3_5}, // LE5
- {2, C1_6, C2_6, C3_6}, // LE6
- {2, C1_7, C2_7, C3_7}, // LE7
- {2, C1_8, C2_8, C3_8}, // LE8
- {2, C9_1, C8_1, C7_1}, // LE9
- {2, C9_2, C8_2, C7_2}, // LE10
- {2, C9_3, C8_3, C7_3}, // LE11
- {2, C9_4, C8_4, C7_4}, // LE12
- {2, C9_5, C8_5, C7_5}, // LE13
- {2, C9_6, C8_6, C7_6}, // LE14
- {2, C9_7, C8_7, C6_6}, // LE15
- {2, C9_8, C7_7, C6_7}, // LE16
- {2, C8_8, C7_8, C6_8}, // LE17
-
- {2, C2_9, C3_9, C4_9}, // LF0
- {2, C1_9, C3_10, C4_10}, // LF1
- {2, C1_10, C2_10, C4_11}, // LF2
- {2, C1_11, C2_11, C3_11}, // LF3
- {2, C1_12, C2_12, C3_12}, // LF4
- {2, C1_13, C2_13, C3_13}, // LF5
- {2, C1_14, C2_14, C3_14}, // LF6
- {2, C1_15, C2_15, C3_15}, // LF7
- {2, C1_16, C2_16, C3_16}, // LF8
- {2, C9_9, C8_9, C7_9}, // LF9
- {2, C9_10, C8_10, C7_10}, // LF10
- {2, C9_11, C8_11, C7_11}, // LF11
- {2, C9_12, C8_12, C7_12}, // LF12
- {2, C9_13, C8_13, C7_13}, // LF13
- {2, C9_14, C8_14, C7_14}, // LF14
- {2, C9_15, C8_15, C6_14}, // LF15
- {2, C9_16, C7_15, C6_15}, // LF16
- {2, C8_16, C7_16, C6_16}, // LF17
-};
-#elif defined(RGB_BACKLIGHT_DAWN60)
-#define ISSI_ADDR_1 IS31FL3731_I2C_ADDRESS_GND
-#define ISSI_ADDR_2 IS31FL3731_I2C_ADDRESS_SDA
-
-const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, C1_1, C3_2, C4_2}, //A1
- {0, C1_2, C2_2, C4_3}, //A2
- {0, C1_3, C2_3, C3_3}, //A3
- {0, C1_4, C2_4, C3_4}, //A4
- {0, C1_5, C2_5, C3_5}, //A5
- {0, C1_6, C2_6, C3_6}, //A6
- {0, C1_7, C2_7, C3_7}, //A7
- {0, C1_8, C2_8, C3_8}, //A8
- {0, C9_1, C8_1, C7_1}, //A9
- {0, C9_2, C8_2, C7_2}, //A10
- {0, C9_3, C8_3, C7_3}, //A11
- {0, C9_4, C8_4, C7_4}, //A12
- {0, C9_5, C8_5, C7_5}, //A13
- {0, C9_6, C8_6, C7_6}, //A14
- {0, C9_7, C8_7, C6_6}, //A15
- {0, C9_8, C7_7, C6_7}, //A16
-
- {0, C1_9, C3_10, C4_10}, //B1
- {0, C1_10, C2_10, C4_11}, //B2
- {0, C1_11, C2_11, C3_11}, //B3
- {0, C1_12, C2_12, C3_12}, //B4
- {0, C1_13, C2_13, C3_13}, //B5
- {0, C1_14, C2_14, C3_14}, //B6
- {0, C1_15, C2_15, C3_15}, //B7
- {0, C1_16, C2_16, C3_16}, //B8
- {0, C9_9, C8_9, C7_9}, //B9
- {0, C9_10, C8_10, C7_10}, //B10
- {0, C9_11, C8_11, C7_11}, //B11
- {0, C9_12, C8_12, C7_12}, //B12
- {0, C9_13, C8_13, C7_13}, //B13
- {0, C9_14, C8_14, C7_14}, //B14
- {0, C9_15, C8_15, C6_14}, //B15
- {0, C9_16, C7_15, C6_15}, //B16
-
- {1, C1_1, C3_2, C4_2}, //C1
- {1, C1_2, C2_2, C4_3}, //C2
- {1, C1_3, C2_3, C3_3}, //C3
- {1, C1_4, C2_4, C3_4}, //C4
- {1, C1_5, C2_5, C3_5}, //C5
- {1, C1_6, C2_6, C3_6}, //C6
- {1, C1_7, C2_7, C3_7}, //C7
- {1, C1_8, C2_8, C3_8}, //C8
- {1, C9_1, C8_1, C7_1}, //C9
- {1, C9_2, C8_2, C7_2}, //C10
- {1, C9_3, C8_3, C7_3}, //C11
- {1, C9_4, C8_4, C7_4}, //C12
- {1, C9_5, C8_5, C7_5}, //C13
- {1, C9_6, C8_6, C7_6}, //C14
- {1, C9_7, C8_7, C6_6}, //C15
- {1, C9_8, C7_7, C6_7}, //C16
-
- {1, C1_9, C3_10, C4_10}, //D1
- {1, C1_10, C2_10, C4_11}, //D2
- {1, C1_11, C2_11, C3_11}, //D3
- {1, C1_12, C2_12, C3_12}, //D4
- {1, C1_13, C2_13, C3_13}, //D5
- {1, C1_14, C2_14, C3_14}, //D6
- {1, C1_15, C2_15, C3_15}, //D7
- {1, C1_16, C2_16, C3_16}, //D8
- {1, C9_9, C8_9, C7_9}, //D9
- {1, C9_10, C8_10, C7_10}, //D10
- {1, C9_11, C8_11, C7_11}, //D11
- {1, C9_12, C8_12, C7_12}, //D12
- {1, C9_13, C8_13, C7_13}, //D13
- {1, C9_14, C8_14, C7_14}, //D14
- {1, C9_15, C8_15, C6_14}, //D15
- {1, C9_16, C7_15, C6_15} //D16
-};
-#elif defined(RGB_BACKLIGHT_PORTICO)
-#define ISSI_ADDR_1 IS31FL3731_I2C_ADDRESS_GND
-#define ISSI_ADDR_2 IS31FL3731_I2C_ADDRESS_VCC
-
-const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- { 0, C2_1, C3_1, C4_1 },
- { 0, C1_1, C3_2, C4_2 },
- { 0, C1_2, C2_2, C4_3 },
- { 0, C1_3, C2_3, C3_3 },
- { 0, C1_4, C2_4, C3_4 },
- { 0, C1_5, C2_5, C3_5 },
- { 0, C1_6, C2_6, C3_6 },
- { 0, C1_7, C2_7, C3_7 },
- { 0, C1_8, C2_8, C3_8 },
- { 1, C2_1, C3_1, C4_1 },
- { 1, C1_1, C3_2, C4_2 },
- { 1, C1_2, C2_2, C4_3 },
- { 1, C1_3, C2_3, C3_3 },
- { 1, C1_4, C2_4, C3_4 },
- { 1, C1_5, C2_5, C3_5 },
-
- { 0, C9_1, C8_1, C7_1 },
- { 0, C9_2, C8_2, C7_2 },
- { 0, C9_3, C8_3, C7_3 },
- { 0, C9_4, C8_4, C7_4 },
- { 0, C9_5, C8_5, C7_5 },
- { 0, C9_6, C8_6, C7_6 },
- { 0, C9_7, C8_7, C6_6 },
- { 0, C9_8, C7_7, C6_7 },
- { 0, C8_8, C7_8, C6_8 },
- { 1, C9_1, C8_1, C7_1 },
- { 1, C9_2, C8_2, C7_2 },
- { 1, C9_3, C8_3, C7_3 },
- { 1, C9_4, C8_4, C7_4 },
- { 1, C9_5, C8_5, C7_5 },
- { 1, C9_6, C8_6, C7_6 },
-
- { 0, C1_9, C3_10, C4_10 },
- { 0, C1_10, C2_10, C4_11 },
- { 0, C1_11, C2_11, C3_11 },
- { 0, C1_12, C2_12, C3_12 },
- { 0, C1_13, C2_13, C3_13 },
- { 0, C1_14, C2_14, C3_14 },
- { 0, C1_15, C2_15, C3_15 },
- { 0, C1_16, C2_16, C3_16 },
- { 1, C1_10, C2_10, C4_11 },
- { 1, C1_11, C2_11, C3_11 },
- { 1, C1_12, C2_12, C3_12 },
- { 1, C1_13, C2_13, C3_13 },
- { 1, C1_14, C2_14, C3_14 },
- { 1, C9_7, C8_7, C6_6 },
-
- { 0, C2_9, C3_9, C4_9 },
- { 0, C9_12, C8_12, C7_12 },
- { 0, C9_13, C8_13, C7_13 },
- { 0, C9_14, C8_14, C7_14 },
- { 0, C9_15, C8_15, C6_14 },
- { 0, C9_16, C7_15, C6_15 },
- { 1, C2_9, C3_9, C4_9 },
- { 1, C1_9, C3_10, C4_10 },
- { 1, C9_9, C8_9, C7_9 },
- { 1, C9_10, C8_10, C7_10 },
- { 1, C9_11, C8_11, C7_11 },
- { 1, C9_14, C8_14, C7_14 },
- { 1, C1_15, C2_15, C3_15 },
- { 1, C1_16, C2_16, C3_16 },
-
- { 0, C9_9, C8_9, C7_9 },
- { 0, C9_10, C8_10, C7_10 },
- { 0, C9_11, C8_11, C7_11 },
- { 0, C8_16, C7_16, C6_16 },
- { 1, C9_12, C8_12, C7_12 },
- { 1, C9_13, C8_13, C7_13 },
- { 1, C9_15, C8_15, C6_14 },
- { 1, C9_16, C7_15, C6_15 },
- { 1, C8_16, C7_16, C6_16 }
-};
-
-#elif defined(RGB_BACKLIGHT_PORTICO75)
-#define ISSI_ADDR_1 IS31FL3741_I2C_ADDRESS_GND
-#define ISSI_ADDR_2
-
-const is31fl3741_led_t PROGMEM g_is31fl3741_leds[IS31FL3741_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, CS18_SW1, CS17_SW1, CS16_SW1},
- {0, CS18_SW2, CS17_SW2, CS16_SW2},
- {0, CS18_SW3, CS17_SW3, CS16_SW3},
- {0, CS18_SW4, CS17_SW4, CS16_SW4},
- {0, CS18_SW5, CS17_SW5, CS16_SW5},
- {0, CS18_SW6, CS17_SW6, CS16_SW6},
- {0, CS18_SW7, CS17_SW7, CS16_SW7},
- {0, CS18_SW8, CS17_SW8, CS16_SW8},
- {0, CS18_SW9, CS17_SW9, CS16_SW9},
-
- {0, CS21_SW1, CS20_SW1, CS19_SW1},
- {0, CS21_SW2, CS20_SW2, CS19_SW2},
- {0, CS21_SW3, CS20_SW3, CS19_SW3},
- {0, CS21_SW4, CS20_SW4, CS19_SW4},
- {0, CS21_SW5, CS20_SW5, CS19_SW5},
- {0, CS21_SW6, CS20_SW6, CS19_SW6}, //Encoder, NO_LED
-
- {0, CS15_SW1, CS14_SW1, CS13_SW1},
- {0, CS15_SW2, CS14_SW2, CS13_SW2},
- {0, CS15_SW3, CS14_SW3, CS13_SW3},
- {0, CS15_SW4, CS14_SW4, CS13_SW4},
- {0, CS15_SW5, CS14_SW5, CS13_SW5},
- {0, CS15_SW6, CS14_SW6, CS13_SW6},
- {0, CS15_SW7, CS14_SW7, CS13_SW7},
- {0, CS15_SW8, CS14_SW8, CS13_SW8},
- {0, CS15_SW9, CS14_SW9, CS13_SW9},
-
- {0, CS24_SW1, CS23_SW1, CS22_SW1},
- {0, CS24_SW2, CS23_SW2, CS22_SW2},
- {0, CS24_SW3, CS23_SW3, CS22_SW3},
- {0, CS24_SW4, CS23_SW4, CS22_SW4},
- {0, CS24_SW5, CS23_SW5, CS22_SW5},
- {0, CS24_SW6, CS23_SW6, CS22_SW6},
-
- {0, CS12_SW1, CS11_SW1, CS10_SW1},
- {0, CS12_SW2, CS11_SW2, CS10_SW2},
- {0, CS12_SW3, CS11_SW3, CS10_SW3},
- {0, CS12_SW4, CS11_SW4, CS10_SW4},
- {0, CS12_SW5, CS11_SW5, CS10_SW5},
- {0, CS12_SW6, CS11_SW6, CS10_SW6},
- {0, CS12_SW7, CS11_SW7, CS10_SW7},
- {0, CS12_SW8, CS11_SW8, CS10_SW8},
- {0, CS12_SW9, CS11_SW9, CS10_SW9},
-
- {0, CS27_SW1, CS26_SW1, CS25_SW1},
- {0, CS27_SW2, CS26_SW2, CS25_SW2},
- {0, CS27_SW3, CS26_SW3, CS25_SW3},
- {0, CS27_SW4, CS26_SW4, CS25_SW4},
- {0, CS27_SW5, CS26_SW5, CS25_SW5},
- {0, CS27_SW6, CS26_SW6, CS25_SW6},
-
- {0, CS9_SW1, CS8_SW1, CS7_SW1},
- {0, CS9_SW2, CS8_SW2, CS7_SW2},
- {0, CS9_SW3, CS8_SW3, CS7_SW3},
- {0, CS9_SW4, CS8_SW4, CS7_SW4},
- {0, CS9_SW5, CS8_SW5, CS7_SW5},
- {0, CS9_SW6, CS8_SW6, CS7_SW6},
- {0, CS9_SW7, CS8_SW7, CS7_SW7},
- {0, CS9_SW8, CS8_SW8, CS7_SW8},
- {0, CS9_SW9, CS8_SW9, CS7_SW9},
-
- {0, CS30_SW1, CS29_SW1, CS28_SW1},
- {0, CS30_SW2, CS29_SW2, CS28_SW2},
- {0, CS30_SW3, CS29_SW3, CS28_SW3},
- {0, CS30_SW4, CS29_SW4, CS28_SW4},
-
- {0, CS6_SW1, CS5_SW1, CS4_SW1},
- {0, CS6_SW2, CS5_SW2, CS4_SW2},
- {0, CS6_SW3, CS5_SW3, CS4_SW3},
- {0, CS6_SW4, CS5_SW4, CS4_SW4},
- {0, CS6_SW5, CS5_SW5, CS4_SW5},
- {0, CS6_SW6, CS5_SW6, CS4_SW6},
- {0, CS6_SW7, CS5_SW7, CS4_SW7},
- {0, CS6_SW8, CS5_SW8, CS4_SW8},
- {0, CS6_SW9, CS5_SW9, CS4_SW9},
-
- {0, CS33_SW1, CS32_SW1, CS31_SW1},
- {0, CS33_SW2, CS32_SW2, CS31_SW2},
- {0, CS33_SW3, CS32_SW3, CS31_SW3},
- {0, CS33_SW4, CS32_SW4, CS31_SW4},
-
- {0, CS3_SW1, CS2_SW1, CS1_SW1},
- {0, CS3_SW2, CS2_SW2, CS1_SW2},
- {0, CS3_SW3, CS2_SW3, CS1_SW3},
- {0, CS3_SW6, CS2_SW6, CS1_SW6},
- {0, CS3_SW8, CS2_SW8, CS1_SW8},
- {0, CS3_SW9, CS2_SW9, CS1_SW9},
-
- {0, CS36_SW1, CS35_SW1, CS34_SW1},
- {0, CS36_SW2, CS35_SW2, CS34_SW2},
- {0, CS36_SW3, CS35_SW3, CS34_SW3},
-
-/*UNDERGLOW*/
- {0, CS39_SW1, CS38_SW1, CS37_SW1},
- {0, CS39_SW2, CS38_SW2, CS37_SW2},
- {0, CS39_SW3, CS38_SW3, CS37_SW3},
- {0, CS39_SW4, CS38_SW4, CS37_SW4},
- {0, CS39_SW5, CS38_SW5, CS37_SW5},
- {0, CS39_SW6, CS38_SW6, CS37_SW6},
- {0, CS39_SW7, CS38_SW7, CS37_SW7},
- {0, CS39_SW8, CS38_SW8, CS37_SW8},
- {0, CS39_SW9, CS38_SW9, CS37_SW9},
-
- {0, CS36_SW4, CS35_SW4, CS34_SW4},
- {0, CS36_SW5, CS35_SW5, CS34_SW5},
- {0, CS36_SW6, CS35_SW6, CS34_SW6},
- {0, CS36_SW7, CS35_SW7, CS34_SW7},
- {0, CS36_SW8, CS35_SW8, CS34_SW8},
- {0, CS36_SW9, CS35_SW9, CS34_SW9},
-
- {0, CS33_SW5, CS32_SW5, CS31_SW5},
- {0, CS33_SW6, CS32_SW6, CS31_SW6},
- {0, CS33_SW7, CS32_SW7, CS31_SW7}
-};
-
-#elif defined(RGB_BACKLIGHT_M6_B)
-const is31fl3218_led_t PROGMEM g_is31fl3218_leds[IS31FL3218_LED_COUNT] = {
- {OUT1, OUT2, OUT3},
- {OUT4, OUT5, OUT6},
- {OUT7, OUT8, OUT9},
- {OUT10, OUT11, OUT12},
- {OUT13, OUT14, OUT15},
- {OUT16, OUT17, OUT18}
-};
-#elif defined(RGB_BACKLIGHT_M10_C)
-#define ISSI_ADDR_1 IS31FL3731_I2C_ADDRESS_GND
-#define ISSI_ADDR_2
-
-const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
- {0, C1_9, C3_10, C4_10}, // LB1
- {0, C1_10, C2_10, C4_11}, // LB2
- {0, C1_11, C2_11, C3_11}, // LB3
- {0, C1_12, C2_12, C3_12}, // LB4
- {0, C1_13, C2_13, C3_13}, // LB5
- {0, C1_14, C2_14, C3_14}, // LB6
- {0, C9_11, C8_11, C7_11}, // LB11
- {0, C9_12, C8_12, C7_12}, // LB12
- {0, C9_13, C8_13, C7_13}, // LB13
- {0, C9_14, C8_14, C7_14}, // LB14
- {0, C9_15, C8_15, C6_14}, // LB15
- {0, C9_16, C7_15, C6_15} // LB16
-};
-#else
-#define ISSI_ADDR_1 IS31FL3731_I2C_ADDRESS_GND
-#define ISSI_ADDR_2 IS31FL3731_I2C_ADDRESS_SDA
-
-const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, C2_1, C3_1, C4_1}, // LA0
- {0, C1_1, C3_2, C4_2}, // LA1
- {0, C1_2, C2_2, C4_3}, // LA2
- {0, C1_3, C2_3, C3_3}, // LA3
- {0, C1_4, C2_4, C3_4}, // LA4
- {0, C1_5, C2_5, C3_5}, // LA5
- {0, C1_6, C2_6, C3_6}, // LA6
- {0, C1_7, C2_7, C3_7}, // LA7
- {0, C1_8, C2_8, C3_8}, // LA8
- {0, C9_1, C8_1, C7_1}, // LA9
- {0, C9_2, C8_2, C7_2}, // LA10
- {0, C9_3, C8_3, C7_3}, // LA11
- {0, C9_4, C8_4, C7_4}, // LA12
- {0, C9_5, C8_5, C7_5}, // LA13
- {0, C9_6, C8_6, C7_6}, // LA14
- {0, C9_7, C8_7, C6_6}, // LA15
- {0, C9_8, C7_7, C6_7}, // LA16
- {0, C8_8, C7_8, C6_8}, // LA17
-
- {0, C2_9, C3_9, C4_9}, // LB0
- {0, C1_9, C3_10, C4_10}, // LB1
- {0, C1_10, C2_10, C4_11}, // LB2
- {0, C1_11, C2_11, C3_11}, // LB3
- {0, C1_12, C2_12, C3_12}, // LB4
- {0, C1_13, C2_13, C3_13}, // LB5
- {0, C1_14, C2_14, C3_14}, // LB6
- {0, C1_15, C2_15, C3_15}, // LB7
- {0, C1_16, C2_16, C3_16}, // LB8
- {0, C9_9, C8_9, C7_9}, // LB9
- {0, C9_10, C8_10, C7_10}, // LB10
- {0, C9_11, C8_11, C7_11}, // LB11
- {0, C9_12, C8_12, C7_12}, // LB12
- {0, C9_13, C8_13, C7_13}, // LB13
- {0, C9_14, C8_14, C7_14}, // LB14
- {0, C9_15, C8_15, C6_14}, // LB15
- {0, C9_16, C7_15, C6_15}, // LB16
- {0, C8_16, C7_16, C6_16}, // LB17
-
- {1, C2_1, C3_1, C4_1}, // LC0
- {1, C1_1, C3_2, C4_2}, // LC1
- {1, C1_2, C2_2, C4_3}, // LC2
- {1, C1_3, C2_3, C3_3}, // LC3
- {1, C1_4, C2_4, C3_4}, // LC4
- {1, C1_5, C2_5, C3_5}, // LC5
- {1, C1_6, C2_6, C3_6}, // LC6
- {1, C1_7, C2_7, C3_7}, // LC7
- {1, C1_8, C2_8, C3_8}, // LC8
- {1, C9_1, C8_1, C7_1}, // LC9
- {1, C9_2, C8_2, C7_2}, // LC10
- {1, C9_3, C8_3, C7_3}, // LC11
- {1, C9_4, C8_4, C7_4}, // LC12
- {1, C9_5, C8_5, C7_5}, // LC13
- {1, C9_6, C8_6, C7_6}, // LC14
- {1, C9_7, C8_7, C6_6}, // LC15
- {1, C9_8, C7_7, C6_7}, // LC16
- {1, C8_8, C7_8, C6_8}, // LC17
-
- {1, C2_9, C3_9, C4_9}, // LD0
- {1, C1_9, C3_10, C4_10}, // LD1
- {1, C1_10, C2_10, C4_11}, // LD2
- {1, C1_11, C2_11, C3_11}, // LD3
- {1, C1_12, C2_12, C3_12}, // LD4
- {1, C1_13, C2_13, C3_13}, // LD5
- {1, C1_14, C2_14, C3_14}, // LD6
- {1, C1_15, C2_15, C3_15}, // LD7
- {1, C1_16, C2_16, C3_16}, // LD8
- {1, C9_9, C8_9, C7_9}, // LD9
- {1, C9_10, C8_10, C7_10}, // LD10
- {1, C9_11, C8_11, C7_11}, // LD11
- {1, C9_12, C8_12, C7_12}, // LD12
- {1, C9_13, C8_13, C7_13}, // LD13
- {1, C9_14, C8_14, C7_14}, // LD14
- {1, C9_15, C8_15, C6_14}, // LD15
- {1, C9_16, C7_15, C6_15}, // LD16
- {1, C8_16, C7_16, C6_16}, // LD17
-};
-#endif
-
-
typedef struct Point {
uint8_t x;
uint8_t y;
@@ -1759,34 +980,34 @@ void backlight_update_pwm_buffers(void)
#if defined(RGB_BACKLIGHT_M6_B)
is31fl3218_update_pwm_buffers();
#elif defined(RGB_BACKLIGHT_PORTICO75)
- is31fl3741_update_pwm_buffers( ISSI_ADDR_1, 0 );
- is31fl3741_update_led_control_registers( ISSI_ADDR_1, 0 );
+ is31fl3741_update_pwm_buffers( IS31FL3741_I2C_ADDRESS_1, 0 );
+ is31fl3741_update_led_control_registers( IS31FL3741_I2C_ADDRESS_1, 0 );
#elif defined(RGB_BACKLIGHT_M10_C)
- is31fl3731_update_pwm_buffers( ISSI_ADDR_1, 0 );
- is31fl3731_update_led_control_registers( ISSI_ADDR_1, 0 );
+ is31fl3731_update_pwm_buffers( IS31FL3731_I2C_ADDRESS_1, 0 );
+ is31fl3731_update_led_control_registers( IS31FL3731_I2C_ADDRESS_1, 0 );
#elif defined(RGB_BACKLIGHT_HS60)
- is31fl3733_update_pwm_buffers( ISSI_ADDR_1, 0 );
- is31fl3733_update_led_control_registers( ISSI_ADDR_1, 0 );
+ is31fl3733_update_pwm_buffers( IS31FL3733_I2C_ADDRESS_1, 0 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_1, 0 );
#elif defined(RGB_BACKLIGHT_NK65) || defined(RGB_BACKLIGHT_NEBULA68) || defined(RGB_BACKLIGHT_NK87) || defined(RGB_BACKLIGHT_KW_MEGA)
- is31fl3733_update_pwm_buffers( ISSI_ADDR_1, 0 );
- is31fl3733_update_pwm_buffers( ISSI_ADDR_2, 1 );
- is31fl3733_update_led_control_registers( ISSI_ADDR_1, 0 );
- is31fl3733_update_led_control_registers( ISSI_ADDR_2, 1 );
+ is31fl3733_update_pwm_buffers( IS31FL3733_I2C_ADDRESS_1, 0 );
+ is31fl3733_update_pwm_buffers( IS31FL3733_I2C_ADDRESS_2, 1 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_1, 0 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_2, 1 );
#elif defined(RGB_BACKLIGHT_NEBULA12)
- is31fl3731_update_pwm_buffers( ISSI_ADDR_1, 0 );
- is31fl3731_update_led_control_registers( ISSI_ADDR_1, 0 );
+ is31fl3731_update_pwm_buffers( IS31FL3731_I2C_ADDRESS_1, 0 );
+ is31fl3731_update_led_control_registers( IS31FL3731_I2C_ADDRESS_1, 0 );
#elif defined(RGB_BACKLIGHT_U80_A)
static uint8_t driver = 0;
switch ( driver )
{
case 0:
- is31fl3731_update_pwm_buffers( ISSI_ADDR_1, 0 );
+ is31fl3731_update_pwm_buffers( IS31FL3731_I2C_ADDRESS_1, 0 );
break;
case 1:
- is31fl3731_update_pwm_buffers( ISSI_ADDR_2, 1 );
+ is31fl3731_update_pwm_buffers( IS31FL3731_I2C_ADDRESS_2, 1 );
break;
case 2:
- is31fl3731_update_pwm_buffers( ISSI_ADDR_3, 2 );
+ is31fl3731_update_pwm_buffers( IS31FL3731_I2C_ADDRESS_3, 2 );
break;
}
if ( ++driver > 2 )
@@ -1794,10 +1015,10 @@ void backlight_update_pwm_buffers(void)
driver = 0;
}
#else
- is31fl3731_update_pwm_buffers( ISSI_ADDR_1, 0 );
- is31fl3731_update_pwm_buffers( ISSI_ADDR_2, 1 );
- is31fl3731_update_led_control_registers( ISSI_ADDR_1, 0 );
- is31fl3731_update_led_control_registers( ISSI_ADDR_2, 1 );
+ is31fl3731_update_pwm_buffers( IS31FL3731_I2C_ADDRESS_1, 0 );
+ is31fl3731_update_pwm_buffers( IS31FL3731_I2C_ADDRESS_2, 1 );
+ is31fl3731_update_led_control_registers( IS31FL3731_I2C_ADDRESS_1, 0 );
+ is31fl3731_update_led_control_registers( IS31FL3731_I2C_ADDRESS_2, 1 );
#endif
}
@@ -2913,7 +2134,7 @@ void backlight_init_drivers(void)
// This actually updates the LED drivers
is31fl3218_update_led_control_registers();
#elif defined(RGB_BACKLIGHT_HS60)
- is31fl3733_init( ISSI_ADDR_1, IS31FL3733_SYNC_NONE );
+ is31fl3733_init( IS31FL3733_I2C_ADDRESS_1, IS31FL3733_SYNC_NONE );
for ( int index = 0; index < IS31FL3733_LED_COUNT; index++ )
{
@@ -2932,10 +2153,10 @@ void backlight_init_drivers(void)
is31fl3733_set_led_control_register( index, enabled, enabled, enabled );
}
// This actually updates the LED drivers
- is31fl3733_update_led_control_registers( ISSI_ADDR_1, 0 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_1, 0 );
#elif defined(RGB_BACKLIGHT_NK65)
- is31fl3733_init( ISSI_ADDR_1, IS31FL3733_SYNC_NONE );
- is31fl3733_init( ISSI_ADDR_2, IS31FL3733_SYNC_NONE );
+ is31fl3733_init( IS31FL3733_I2C_ADDRESS_1, IS31FL3733_SYNC_NONE );
+ is31fl3733_init( IS31FL3733_I2C_ADDRESS_2, IS31FL3733_SYNC_NONE );
for ( int index = 0; index < IS31FL3733_LED_COUNT; index++ )
{
@@ -2946,11 +2167,11 @@ void backlight_init_drivers(void)
}
is31fl3733_set_led_control_register( 7+64-1, 0, 1, 0 ); //Enable LB7 green enable for indicators
// This actually updates the LED drivers
- is31fl3733_update_led_control_registers( ISSI_ADDR_1, 0 );
- is31fl3733_update_led_control_registers( ISSI_ADDR_2, 1 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_1, 0 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_2, 1 );
#elif defined(RGB_BACKLIGHT_NK87)
- is31fl3733_init( ISSI_ADDR_1, IS31FL3733_SYNC_NONE );
- is31fl3733_init( ISSI_ADDR_2, IS31FL3733_SYNC_NONE );
+ is31fl3733_init( IS31FL3733_I2C_ADDRESS_1, IS31FL3733_SYNC_NONE );
+ is31fl3733_init( IS31FL3733_I2C_ADDRESS_2, IS31FL3733_SYNC_NONE );
for ( int index = 0; index < IS31FL3733_LED_COUNT; index++ )
{
@@ -2976,11 +2197,11 @@ void backlight_init_drivers(void)
}
is31fl3733_set_led_control_register( 48+64-1, 0, 0, 1 ); //Enable LB48 blue enable for indicators
// This actually updates the LED drivers
- is31fl3733_update_led_control_registers( ISSI_ADDR_1, 0 );
- is31fl3733_update_led_control_registers( ISSI_ADDR_2, 1 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_1, 0 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_2, 1 );
#elif defined(RGB_BACKLIGHT_NEBULA68)
- is31fl3733_init( ISSI_ADDR_1, IS31FL3733_SYNC_NONE );
- is31fl3733_init( ISSI_ADDR_2, IS31FL3733_SYNC_NONE );
+ is31fl3733_init( IS31FL3733_I2C_ADDRESS_1, IS31FL3733_SYNC_NONE );
+ is31fl3733_init( IS31FL3733_I2C_ADDRESS_2, IS31FL3733_SYNC_NONE );
for ( int index = 0; index < IS31FL3733_LED_COUNT; index++ )
{
@@ -2990,20 +2211,20 @@ void backlight_init_drivers(void)
is31fl3733_set_led_control_register( index, enabled, enabled, enabled );
}
// This actually updates the LED drivers
- is31fl3733_update_led_control_registers( ISSI_ADDR_1, 0 );
- is31fl3733_update_led_control_registers( ISSI_ADDR_2, 1 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_1, 0 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_2, 1 );
#elif defined(RGB_BACKLIGHT_PORTICO75)
- is31fl3741_init( ISSI_ADDR_1 );
+ is31fl3741_init( IS31FL3741_I2C_ADDRESS_1 );
bool enabled = true;
for ( int index = 0; index < IS31FL3741_LED_COUNT; index++ )
{
is31fl3741_set_led_control_register( index, enabled, enabled, enabled );
}
// This actually updates the LED drivers
- is31fl3741_update_led_control_registers( ISSI_ADDR_1, 0 );
+ is31fl3741_update_led_control_registers( IS31FL3741_I2C_ADDRESS_1, 0 );
#elif defined(RGB_BACKLIGHT_KW_MEGA)
- is31fl3733_init( ISSI_ADDR_1, IS31FL3733_SYNC_NONE );
- is31fl3733_init( ISSI_ADDR_2, IS31FL3733_SYNC_NONE );
+ is31fl3733_init( IS31FL3733_I2C_ADDRESS_1, IS31FL3733_SYNC_NONE );
+ is31fl3733_init( IS31FL3733_I2C_ADDRESS_2, IS31FL3733_SYNC_NONE );
for ( int index = 0; index < IS31FL3733_LED_COUNT; index++ )
{
@@ -3013,18 +2234,18 @@ void backlight_init_drivers(void)
is31fl3733_set_led_control_register( index, enabled, enabled, enabled );
}
// This actually updates the LED drivers
- is31fl3733_update_led_control_registers( ISSI_ADDR_1, 0 );
- is31fl3733_update_led_control_registers( ISSI_ADDR_2, 1 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_1, 0 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_2, 1 );
#else
// Init the #1 driver
- is31fl3731_init( ISSI_ADDR_1 );
+ is31fl3731_init( IS31FL3731_I2C_ADDRESS_1 );
// Init the #2 driver (if used)
#if !defined(RGB_BACKLIGHT_NEBULA12) && !defined(RGB_BACKLIGHT_M10_C)
- is31fl3731_init( ISSI_ADDR_2 );
+ is31fl3731_init( IS31FL3731_I2C_ADDRESS_2 );
#endif
// Init the #3 driver (if used)
#if defined(RGB_BACKLIGHT_U80_A)
- is31fl3731_init( ISSI_ADDR_3 );
+ is31fl3731_init( IS31FL3731_I2C_ADDRESS_3 );
#endif
// Experimental feature, not in configuration yet
@@ -3157,12 +2378,12 @@ void backlight_init_drivers(void)
}
// This actually updates the LED drivers
// TODO: refactor this to use DRIVER_COUNT
- is31fl3731_update_led_control_registers( ISSI_ADDR_1, 0 );
+ is31fl3731_update_led_control_registers( IS31FL3731_I2C_ADDRESS_1, 0 );
#if !defined(RGB_BACKLIGHT_NEBULA12) && !defined(RGB_BACKLIGHT_M10_C)
- is31fl3731_update_led_control_registers( ISSI_ADDR_2, 1 );
+ is31fl3731_update_led_control_registers( IS31FL3731_I2C_ADDRESS_2, 1 );
#endif
#if defined(RGB_BACKLIGHT_U80_A)
- is31fl3731_update_led_control_registers( ISSI_ADDR_3, 2 );
+ is31fl3731_update_led_control_registers( IS31FL3731_I2C_ADDRESS_3, 2 );
#endif
#endif
diff --git a/keyboards/wilba_tech/zeal60/zeal60.c b/keyboards/wilba_tech/zeal60/zeal60.c
index b8c2e2f83fe3..dd49ccabe99d 100644
--- a/keyboards/wilba_tech/zeal60/zeal60.c
+++ b/keyboards/wilba_tech/zeal60/zeal60.c
@@ -14,5 +14,93 @@
* along with this program. If not, see .
*/
#ifndef RGB_BACKLIGHT_ZEAL60
-#error RGB_BACKLIGHT_ZEAL60 not defined, you done goofed somehao, brah
+# error RGB_BACKLIGHT_ZEAL60 not defined, you done goofed somehao, brah
+#else
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_ZEAL60)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
#endif
diff --git a/keyboards/wilba_tech/zeal65/zeal65.c b/keyboards/wilba_tech/zeal65/zeal65.c
index 540c93080a1a..a4550031b340 100644
--- a/keyboards/wilba_tech/zeal65/zeal65.c
+++ b/keyboards/wilba_tech/zeal65/zeal65.c
@@ -14,5 +14,93 @@
* along with this program. If not, see .
*/
#ifndef RGB_BACKLIGHT_ZEAL65
-#error RGB_BACKLIGHT_ZEAL65 not defined, you done goofed somehao, brah
+# error RGB_BACKLIGHT_ZEAL65 not defined, you done goofed somehao, brah
+#else
+# include "drivers/led/issi/is31fl3731.h"
#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_ZEAL65)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
+#endif
\ No newline at end of file
diff --git a/keyboards/woodkeys/scarletbandana/rules.mk b/keyboards/woodkeys/scarletbandana/rules.mk
index 3de47dd4a0ec..3e736b56e5c9 100644
--- a/keyboards/woodkeys/scarletbandana/rules.mk
+++ b/keyboards/woodkeys/scarletbandana/rules.mk
@@ -9,5 +9,5 @@ COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = no # Enable N-Key Rollover
AUDIO_ENABLE = yes # Audio output
RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time.
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality, also set ISSI_ENABLE below for Miera
+BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
LTO_ENABLE = yes
diff --git a/keyboards/xelus/dawn60/rev1/rev1.c b/keyboards/xelus/dawn60/rev1/rev1.c
index 2d0b465bcc63..47ea0ffbaac3 100644
--- a/keyboards/xelus/dawn60/rev1/rev1.c
+++ b/keyboards/xelus/dawn60/rev1/rev1.c
@@ -14,5 +14,85 @@
* along with this program. If not, see .
*/
#ifndef RGB_BACKLIGHT_DAWN60
-#error RGB_BACKLIGHT_DAWN60 not defined, you done goofed somehao, brah
+# error RGB_BACKLIGHT_DAWN60 not defined, you done goofed somehao, brah
+#else
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_DAWN60)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C1_1, C3_2, C4_2}, //A1
+ {0, C1_2, C2_2, C4_3}, //A2
+ {0, C1_3, C2_3, C3_3}, //A3
+ {0, C1_4, C2_4, C3_4}, //A4
+ {0, C1_5, C2_5, C3_5}, //A5
+ {0, C1_6, C2_6, C3_6}, //A6
+ {0, C1_7, C2_7, C3_7}, //A7
+ {0, C1_8, C2_8, C3_8}, //A8
+ {0, C9_1, C8_1, C7_1}, //A9
+ {0, C9_2, C8_2, C7_2}, //A10
+ {0, C9_3, C8_3, C7_3}, //A11
+ {0, C9_4, C8_4, C7_4}, //A12
+ {0, C9_5, C8_5, C7_5}, //A13
+ {0, C9_6, C8_6, C7_6}, //A14
+ {0, C9_7, C8_7, C6_6}, //A15
+ {0, C9_8, C7_7, C6_7}, //A16
+
+ {0, C1_9, C3_10, C4_10}, //B1
+ {0, C1_10, C2_10, C4_11}, //B2
+ {0, C1_11, C2_11, C3_11}, //B3
+ {0, C1_12, C2_12, C3_12}, //B4
+ {0, C1_13, C2_13, C3_13}, //B5
+ {0, C1_14, C2_14, C3_14}, //B6
+ {0, C1_15, C2_15, C3_15}, //B7
+ {0, C1_16, C2_16, C3_16}, //B8
+ {0, C9_9, C8_9, C7_9}, //B9
+ {0, C9_10, C8_10, C7_10}, //B10
+ {0, C9_11, C8_11, C7_11}, //B11
+ {0, C9_12, C8_12, C7_12}, //B12
+ {0, C9_13, C8_13, C7_13}, //B13
+ {0, C9_14, C8_14, C7_14}, //B14
+ {0, C9_15, C8_15, C6_14}, //B15
+ {0, C9_16, C7_15, C6_15}, //B16
+
+ {1, C1_1, C3_2, C4_2}, //C1
+ {1, C1_2, C2_2, C4_3}, //C2
+ {1, C1_3, C2_3, C3_3}, //C3
+ {1, C1_4, C2_4, C3_4}, //C4
+ {1, C1_5, C2_5, C3_5}, //C5
+ {1, C1_6, C2_6, C3_6}, //C6
+ {1, C1_7, C2_7, C3_7}, //C7
+ {1, C1_8, C2_8, C3_8}, //C8
+ {1, C9_1, C8_1, C7_1}, //C9
+ {1, C9_2, C8_2, C7_2}, //C10
+ {1, C9_3, C8_3, C7_3}, //C11
+ {1, C9_4, C8_4, C7_4}, //C12
+ {1, C9_5, C8_5, C7_5}, //C13
+ {1, C9_6, C8_6, C7_6}, //C14
+ {1, C9_7, C8_7, C6_6}, //C15
+ {1, C9_8, C7_7, C6_7}, //C16
+
+ {1, C1_9, C3_10, C4_10}, //D1
+ {1, C1_10, C2_10, C4_11}, //D2
+ {1, C1_11, C2_11, C3_11}, //D3
+ {1, C1_12, C2_12, C3_12}, //D4
+ {1, C1_13, C2_13, C3_13}, //D5
+ {1, C1_14, C2_14, C3_14}, //D6
+ {1, C1_15, C2_15, C3_15}, //D7
+ {1, C1_16, C2_16, C3_16}, //D8
+ {1, C9_9, C8_9, C7_9}, //D9
+ {1, C9_10, C8_10, C7_10}, //D10
+ {1, C9_11, C8_11, C7_11}, //D11
+ {1, C9_12, C8_12, C7_12}, //D12
+ {1, C9_13, C8_13, C7_13}, //D13
+ {1, C9_14, C8_14, C7_14}, //D14
+ {1, C9_15, C8_15, C6_14}, //D15
+ {1, C9_16, C7_15, C6_15} //D16
+};
#endif