summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJack Sangdahl <jack@pngu.org>2025-09-09 03:08:42 -0600
committerGitHub <noreply@github.com>2025-09-09 10:08:42 +0100
commitff1900190c166d28f8d903ea7bf723658780d192 (patch)
tree0df8bca5cdc1290d36d378d11d2b119521c800aa
parent2818085d3fffb645e1835326104534ee94b03fdb (diff)
Migrate `g_led_config` to DD (NO) (#25621)
-rw-r--r--keyboards/nack/keyboard.json54
-rw-r--r--keyboards/nack/nack.c39
-rw-r--r--keyboards/ning/tiny_board/tb16_rgb/keyboard.json20
-rw-r--r--keyboards/ning/tiny_board/tb16_rgb/tb16_rgb.c31
-rw-r--r--keyboards/novelkeys/nk20/keyboard.json22
-rw-r--r--keyboards/novelkeys/nk20/nk20.c40
-rwxr-xr-xkeyboards/novelkeys/nk65b/keyboard.json70
-rwxr-xr-xkeyboards/novelkeys/nk65b/nk65b.c24
-rwxr-xr-xkeyboards/novelkeys/nk87b/keyboard.json89
-rw-r--r--keyboards/novelkeys/nk87b/nk87b.c27
-rw-r--r--keyboards/omkbd/runner3680/5x6_5x8/5x6_5x8.c52
-rw-r--r--keyboards/omkbd/runner3680/5x6_5x8/keyboard.json72
-rw-r--r--keyboards/owlab/voice65/hotswap/hotswap.c23
-rw-r--r--keyboards/owlab/voice65/hotswap/keyboard.json69
-rw-r--r--keyboards/owlab/voice65/soldered/keyboard.json73
-rw-r--r--keyboards/owlab/voice65/soldered/soldered.c23
16 files changed, 468 insertions, 260 deletions
diff --git a/keyboards/nack/keyboard.json b/keyboards/nack/keyboard.json
index cd08aac0af..2368786530 100644
--- a/keyboards/nack/keyboard.json
+++ b/keyboards/nack/keyboard.json
@@ -73,6 +73,60 @@
73 "val": 64 73 "val": 64
74 }, 74 },
75 "driver": "ws2812", 75 "driver": "ws2812",
76 "layout": [
77 {"matrix": [0, 0], "x": 0, "y": 0, "flags": 4},
78 {"matrix": [0, 1], "x": 19, "y": 0, "flags": 4},
79 {"matrix": [0, 2], "x": 38, "y": 0, "flags": 4},
80 {"matrix": [0, 3], "x": 57, "y": 0, "flags": 4},
81 {"matrix": [0, 4], "x": 76, "y": 0, "flags": 4},
82 {"matrix": [0, 5], "x": 95, "y": 0, "flags": 4},
83 {"matrix": [0, 6], "x": 114, "y": 0, "flags": 4},
84 {"matrix": [0, 7], "x": 133, "y": 0, "flags": 4},
85 {"matrix": [0, 8], "x": 152, "y": 0, "flags": 4},
86 {"matrix": [0, 9], "x": 171, "y": 0, "flags": 4},
87 {"matrix": [0, 10], "x": 190, "y": 0, "flags": 4},
88 {"matrix": [0, 11], "x": 209, "y": 0, "flags": 4},
89 {"matrix": [0, 12], "x": 223, "y": 0, "flags": 4},
90 {"matrix": [1, 0], "x": 0, "y": 21, "flags": 4},
91 {"matrix": [1, 1], "x": 19, "y": 21, "flags": 4},
92 {"matrix": [1, 2], "x": 38, "y": 21, "flags": 4},
93 {"matrix": [1, 3], "x": 57, "y": 21, "flags": 4},
94 {"matrix": [1, 4], "x": 76, "y": 21, "flags": 4},
95 {"matrix": [1, 5], "x": 95, "y": 21, "flags": 4},
96 {"matrix": [1, 6], "x": 114, "y": 21, "flags": 4},
97 {"matrix": [1, 7], "x": 133, "y": 21, "flags": 4},
98 {"matrix": [1, 8], "x": 152, "y": 21, "flags": 4},
99 {"matrix": [1, 9], "x": 171, "y": 21, "flags": 4},
100 {"matrix": [1, 10], "x": 190, "y": 21, "flags": 4},
101 {"matrix": [1, 11], "x": 209, "y": 21, "flags": 4},
102 {"matrix": [1, 12], "x": 223, "y": 21, "flags": 4},
103 {"matrix": [2, 0], "x": 0, "y": 42, "flags": 4},
104 {"matrix": [2, 1], "x": 19, "y": 42, "flags": 4},
105 {"matrix": [2, 2], "x": 38, "y": 42, "flags": 4},
106 {"matrix": [2, 3], "x": 57, "y": 42, "flags": 4},
107 {"matrix": [2, 4], "x": 76, "y": 42, "flags": 4},
108 {"matrix": [2, 5], "x": 95, "y": 42, "flags": 4},
109 {"matrix": [2, 6], "x": 114, "y": 42, "flags": 4},
110 {"matrix": [2, 7], "x": 133, "y": 42, "flags": 4},
111 {"matrix": [2, 8], "x": 152, "y": 42, "flags": 4},
112 {"matrix": [2, 9], "x": 171, "y": 42, "flags": 4},
113 {"matrix": [2, 10], "x": 190, "y": 42, "flags": 4},
114 {"matrix": [2, 11], "x": 209, "y": 42, "flags": 4},
115 {"matrix": [2, 12], "x": 223, "y": 42, "flags": 4},
116 {"matrix": [3, 0], "x": 0, "y": 63, "flags": 4},
117 {"matrix": [3, 1], "x": 19, "y": 63, "flags": 4},
118 {"matrix": [3, 2], "x": 38, "y": 63, "flags": 4},
119 {"matrix": [3, 3], "x": 57, "y": 63, "flags": 4},
120 {"matrix": [3, 4], "x": 76, "y": 63, "flags": 4},
121 {"matrix": [3, 5], "x": 95, "y": 63, "flags": 4},
122 {"matrix": [3, 6], "x": 114, "y": 63, "flags": 4},
123 {"matrix": [3, 7], "x": 133, "y": 63, "flags": 4},
124 {"matrix": [3, 8], "x": 152, "y": 63, "flags": 4},
125 {"matrix": [3, 9], "x": 171, "y": 63, "flags": 4},
126 {"matrix": [3, 10], "x": 190, "y": 63, "flags": 4},
127 {"matrix": [3, 11], "x": 209, "y": 63, "flags": 4},
128 {"matrix": [3, 12], "x": 223, "y": 63, "flags": 4}
129 ],
76 "hue_steps": 10, 130 "hue_steps": 10,
77 "sat_steps": 10, 131 "sat_steps": 10,
78 "val_steps": 10, 132 "val_steps": 10,
diff --git a/keyboards/nack/nack.c b/keyboards/nack/nack.c
deleted file mode 100644
index 27e029a9fd..0000000000
--- a/keyboards/nack/nack.c
+++ /dev/null
@@ -1,39 +0,0 @@
1/* Copyright 2020 farfalleflickan <farfalleflickan@gmail.com>
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include "quantum.h"
18
19#ifdef RGB_MATRIX_ENABLE
20 led_config_t g_led_config = { {
21 // Key Matrix to LED Index
22 { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 },
23 { 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25 },
24 { 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38 },
25 { 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51 }
26 }, {
27 // LED Index to Physical Position
28 { 0, 0 }, { 19, 0 }, { 38, 0 }, { 57, 0 }, { 76, 0 }, { 95, 0 }, { 114, 0 }, { 133, 0 }, { 152, 0 }, { 171, 0 }, { 190, 0 }, { 209, 0 }, { 223, 0 },
29 { 0, 21 }, { 19, 21 }, { 38, 21 }, { 57, 21 }, { 76, 21 }, { 95, 21 }, { 114, 21 }, { 133, 21 }, { 152, 21 }, { 171, 21 }, { 190, 21 }, { 209, 21 }, { 223, 21 },
30 { 0, 42 }, { 19, 42 }, { 38, 42 }, { 57, 42 }, { 76, 42 }, { 95, 42 }, { 114, 42 }, { 133, 42 }, { 152, 42 }, { 171, 42 }, { 190, 42 }, { 209, 42 }, { 223, 42 },
31 { 0, 63 }, { 19, 63 }, { 38, 63 }, { 57, 63 }, { 76, 63 }, { 95, 63 }, { 114, 63 }, { 133, 63 }, { 152, 63 }, { 171, 63 }, { 190, 63 }, { 209, 63 }, { 223, 63 }
32 }, {
33 // LED Index to Flag
34 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
35 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
36 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
37 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4
38 } };
39#endif
diff --git a/keyboards/ning/tiny_board/tb16_rgb/keyboard.json b/keyboards/ning/tiny_board/tb16_rgb/keyboard.json
index 9e99ef879a..104a4a84a6 100644
--- a/keyboards/ning/tiny_board/tb16_rgb/keyboard.json
+++ b/keyboards/ning/tiny_board/tb16_rgb/keyboard.json
@@ -20,7 +20,25 @@
20 "default": { 20 "default": {
21 "animation": "typing_heatmap" 21 "animation": "typing_heatmap"
22 }, 22 },
23 "driver": "ws2812" 23 "driver": "ws2812",
24 "layout": [
25 {"matrix": [0, 0], "x": 0, "y": 0, "flags": 4},
26 {"matrix": [0, 1], "x": 75, "y": 0, "flags": 4},
27 {"matrix": [0, 2], "x": 150, "y": 0, "flags": 4},
28 {"matrix": [0, 3], "x": 224, "y": 0, "flags": 4},
29 {"matrix": [1, 0], "x": 0, "y": 21, "flags": 4},
30 {"matrix": [1, 1], "x": 75, "y": 21, "flags": 4},
31 {"matrix": [1, 2], "x": 150, "y": 21, "flags": 4},
32 {"matrix": [1, 3], "x": 224, "y": 21, "flags": 4},
33 {"matrix": [2, 0], "x": 0, "y": 42, "flags": 4},
34 {"matrix": [2, 1], "x": 75, "y": 42, "flags": 4},
35 {"matrix": [2, 2], "x": 150, "y": 42, "flags": 4},
36 {"matrix": [2, 3], "x": 224, "y": 42, "flags": 4},
37 {"matrix": [3, 0], "x": 0, "y": 64, "flags": 4},
38 {"matrix": [3, 1], "x": 75, "y": 64, "flags": 4},
39 {"matrix": [3, 2], "x": 150, "y": 64, "flags": 4},
40 {"matrix": [3, 3], "x": 224, "y": 64, "flags": 4}
41 ]
24 }, 42 },
25 "matrix_pins": { 43 "matrix_pins": {
26 "cols": ["B6", "B1", "B3", "B2"], 44 "cols": ["B6", "B1", "B3", "B2"],
diff --git a/keyboards/ning/tiny_board/tb16_rgb/tb16_rgb.c b/keyboards/ning/tiny_board/tb16_rgb/tb16_rgb.c
deleted file mode 100644
index e7807be5e8..0000000000
--- a/keyboards/ning/tiny_board/tb16_rgb/tb16_rgb.c
+++ /dev/null
@@ -1,31 +0,0 @@
1/* Copyright 2023 Ning (@ningjx)
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include "quantum.h"
18
19led_config_t g_led_config = { {
20 { 0, 1, 2, 3 },
21 { 4, 5, 6, 7 },
22 { 8, 9, 10, 11 },
23 { 12, 13, 14, 15 }
24}, {
25 {0,0},{75,0},{150,0},{224,0},
26 {0,21},{75,21},{150,21},{224,21},
27 {0,42},{75,42},{150,42},{224,42},
28 {0,64},{75,64},{150,64},{224,64}
29}, {
30 4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4
31} };
diff --git a/keyboards/novelkeys/nk20/keyboard.json b/keyboards/novelkeys/nk20/keyboard.json
index f2728967b4..e2560e0c30 100644
--- a/keyboards/novelkeys/nk20/keyboard.json
+++ b/keyboards/novelkeys/nk20/keyboard.json
@@ -66,6 +66,28 @@
66 "solid_multisplash": true 66 "solid_multisplash": true
67 }, 67 },
68 "driver": "ws2812", 68 "driver": "ws2812",
69 "layout": [
70 {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
71 {"matrix": [0, 1], "x": 75, "y": 0, "flags": 1},
72 {"matrix": [0, 2], "x": 149, "y": 0, "flags": 1},
73 {"matrix": [1, 3], "x": 224, "y": 15, "flags": 1},
74 {"matrix": [1, 2], "x": 149, "y": 15, "flags": 1},
75 {"matrix": [1, 1], "x": 75, "y": 15, "flags": 1},
76 {"matrix": [1, 0], "x": 0, "y": 15, "flags": 1},
77 {"matrix": [2, 0], "x": 0, "y": 27, "flags": 4},
78 {"matrix": [2, 1], "x": 75, "y": 27, "flags": 4},
79 {"matrix": [2, 2], "x": 149, "y": 27, "flags": 4},
80 {"matrix": [2, 3], "x": 224, "y": 34, "flags": 1},
81 {"matrix": [3, 2], "x": 149, "y": 40, "flags": 4},
82 {"matrix": [3, 1], "x": 75, "y": 40, "flags": 4},
83 {"matrix": [3, 0], "x": 0, "y": 40, "flags": 4},
84 {"matrix": [4, 0], "x": 0, "y": 52, "flags": 4},
85 {"matrix": [4, 1], "x": 75, "y": 52, "flags": 4},
86 {"matrix": [4, 2], "x": 149, "y": 52, "flags": 4},
87 {"matrix": [4, 3], "x": 224, "y": 58, "flags": 1},
88 {"matrix": [5, 2], "x": 149, "y": 64, "flags": 4},
89 {"matrix": [5, 0], "x": 37, "y": 64, "flags": 4}
90 ],
69 "max_brightness": 210, 91 "max_brightness": 210,
70 "sleep": true 92 "sleep": true
71 }, 93 },
diff --git a/keyboards/novelkeys/nk20/nk20.c b/keyboards/novelkeys/nk20/nk20.c
deleted file mode 100644
index 23350e1037..0000000000
--- a/keyboards/novelkeys/nk20/nk20.c
+++ /dev/null
@@ -1,40 +0,0 @@
1/* Copyright 2022 Yiancar
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include "quantum.h"
18
19#ifdef RGB_MATRIX_ENABLE
20// clang-format off
21led_config_t g_led_config = { {
22 { 0, 1, 2, NO_LED },
23 { 6, 5, 4, 3 },
24 { 7, 8, 9, 10 },
25 { 13, 12, 11, NO_LED },
26 { 14, 15, 16, 17 },
27 { 19, NO_LED, 18, NO_LED },
28}, {
29 { 0,0 }, { 75,0 }, {149,0 }, {224,15 }, {149,15 }, { 75,15 }, { 0,15 }, { 0,27 }, { 75,27 }, {149,27 },
30 {224,34 }, {149,40 }, { 75,40 }, { 0,40 }, { 0,52 }, { 75,52 }, {149,52 }, {224,58 }, {149,64 }, { 37,64 }
31}, {
32 1, 1, 1,
33 1, 1, 1, 1,
34 4, 4, 4, 1,
35 4, 4, 4,
36 4, 4, 4, 1,
37 4, 4
38} };
39// clang-format on
40#endif
diff --git a/keyboards/novelkeys/nk65b/keyboard.json b/keyboards/novelkeys/nk65b/keyboard.json
index 0c2794c120..74204a4413 100755
--- a/keyboards/novelkeys/nk65b/keyboard.json
+++ b/keyboards/novelkeys/nk65b/keyboard.json
@@ -66,6 +66,76 @@
66 "solid_multisplash": true 66 "solid_multisplash": true
67 }, 67 },
68 "driver": "ws2812", 68 "driver": "ws2812",
69 "layout": [
70 {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
71 {"matrix": [0, 1], "x": 15, "y": 0, "flags": 4},
72 {"matrix": [0, 2], "x": 30, "y": 0, "flags": 4},
73 {"matrix": [0, 3], "x": 45, "y": 0, "flags": 4},
74 {"matrix": [0, 4], "x": 60, "y": 0, "flags": 4},
75 {"matrix": [0, 5], "x": 75, "y": 0, "flags": 4},
76 {"matrix": [0, 6], "x": 90, "y": 0, "flags": 4},
77 {"matrix": [0, 7], "x": 105, "y": 0, "flags": 4},
78 {"matrix": [0, 8], "x": 120, "y": 0, "flags": 4},
79 {"matrix": [0, 9], "x": 135, "y": 0, "flags": 4},
80 {"matrix": [0, 10], "x": 150, "y": 0, "flags": 4},
81 {"matrix": [0, 11], "x": 165, "y": 0, "flags": 4},
82 {"matrix": [0, 12], "x": 180, "y": 0, "flags": 4},
83 {"matrix": [0, 13], "x": 203, "y": 0, "flags": 1},
84 {"matrix": [0, 14], "x": 225, "y": 0, "flags": 1},
85 {"matrix": [1, 14], "x": 225, "y": 16, "flags": 1},
86 {"matrix": [2, 13], "x": 206, "y": 16, "flags": 4},
87 {"matrix": [1, 12], "x": 188, "y": 16, "flags": 4},
88 {"matrix": [1, 11], "x": 173, "y": 16, "flags": 4},
89 {"matrix": [1, 10], "x": 158, "y": 16, "flags": 4},
90 {"matrix": [1, 9], "x": 143, "y": 16, "flags": 4},
91 {"matrix": [1, 8], "x": 128, "y": 16, "flags": 4},
92 {"matrix": [1, 7], "x": 113, "y": 16, "flags": 4},
93 {"matrix": [1, 6], "x": 98, "y": 16, "flags": 4},
94 {"matrix": [1, 5], "x": 83, "y": 16, "flags": 4},
95 {"matrix": [1, 4], "x": 68, "y": 16, "flags": 4},
96 {"matrix": [1, 3], "x": 53, "y": 16, "flags": 4},
97 {"matrix": [1, 2], "x": 38, "y": 16, "flags": 4},
98 {"matrix": [1, 1], "x": 23, "y": 16, "flags": 4},
99 {"matrix": [1, 0], "x": 4, "y": 16, "flags": 1},
100 {"matrix": [2, 0], "x": 6, "y": 32, "flags": 1},
101 {"matrix": [2, 1], "x": 26, "y": 32, "flags": 4},
102 {"matrix": [2, 2], "x": 41, "y": 32, "flags": 4},
103 {"matrix": [2, 3], "x": 56, "y": 32, "flags": 4},
104 {"matrix": [2, 4], "x": 71, "y": 32, "flags": 4},
105 {"matrix": [2, 5], "x": 86, "y": 32, "flags": 4},
106 {"matrix": [2, 6], "x": 101, "y": 32, "flags": 4},
107 {"matrix": [2, 7], "x": 116, "y": 32, "flags": 4},
108 {"matrix": [2, 8], "x": 131, "y": 32, "flags": 4},
109 {"matrix": [2, 9], "x": 146, "y": 32, "flags": 4},
110 {"matrix": [2, 10], "x": 161, "y": 32, "flags": 4},
111 {"matrix": [2, 11], "x": 176, "y": 32, "flags": 4},
112 {"matrix": [2, 12], "x": 201, "y": 32, "flags": 1},
113 {"matrix": [2, 14], "x": 225, "y": 32, "flags": 1},
114 {"matrix": [3, 14], "x": 225, "y": 48, "flags": 1},
115 {"matrix": [3, 13], "x": 210, "y": 48, "flags": 1},
116 {"matrix": [3, 12], "x": 189, "y": 48, "flags": 1},
117 {"matrix": [3, 11], "x": 169, "y": 48, "flags": 4},
118 {"matrix": [3, 10], "x": 154, "y": 48, "flags": 4},
119 {"matrix": [3, 9], "x": 139, "y": 48, "flags": 4},
120 {"matrix": [3, 8], "x": 124, "y": 48, "flags": 4},
121 {"matrix": [3, 7], "x": 109, "y": 48, "flags": 4},
122 {"matrix": [3, 6], "x": 94, "y": 48, "flags": 4},
123 {"matrix": [3, 5], "x": 79, "y": 48, "flags": 4},
124 {"matrix": [3, 4], "x": 64, "y": 48, "flags": 4},
125 {"matrix": [3, 3], "x": 49, "y": 48, "flags": 4},
126 {"matrix": [3, 2], "x": 34, "y": 48, "flags": 4},
127 {"matrix": [3, 0], "x": 9, "y": 48, "flags": 1},
128 {"matrix": [4, 0], "x": 2, "y": 64, "flags": 1},
129 {"matrix": [4, 1], "x": 21, "y": 64, "flags": 1},
130 {"matrix": [4, 2], "x": 39, "y": 64, "flags": 1},
131 {"matrix": [4, 9], "x": 96, "y": 64, "flags": 4},
132 {"matrix": [4, 10], "x": 150, "y": 64, "flags": 1},
133 {"matrix": [4, 11], "x": 165, "y": 64, "flags": 1},
134 {"matrix": [4, 12], "x": 180, "y": 64, "flags": 1},
135 {"matrix": [4, 13], "x": 195, "y": 64, "flags": 1},
136 {"matrix": [4, 14], "x": 210, "y": 64, "flags": 1},
137 {"x": 225, "y": 64, "flags": 1}
138 ],
69 "max_brightness": 130, 139 "max_brightness": 130,
70 "sleep": true 140 "sleep": true
71 }, 141 },
diff --git a/keyboards/novelkeys/nk65b/nk65b.c b/keyboards/novelkeys/nk65b/nk65b.c
index 369bab262f..400ab35ef3 100755
--- a/keyboards/novelkeys/nk65b/nk65b.c
+++ b/keyboards/novelkeys/nk65b/nk65b.c
@@ -28,27 +28,3 @@ layer_state_t layer_state_set_kb(layer_state_t state) {
28 gpio_write_pin(B3, !layer_state_cmp(state, 2)); 28 gpio_write_pin(B3, !layer_state_cmp(state, 2));
29 return layer_state_set_user(state); 29 return layer_state_set_user(state);
30} 30}
31
32#ifdef RGB_MATRIX_ENABLE
33// clang-format off
34led_config_t g_led_config = { {
35 { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 },
36 { 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17, NO_LED, 15 },
37 { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 16, 43 },
38 { 57, NO_LED, 56, 55, 54, 53, 52, 51, 50, 49, 48, 47, 46, 45, 44 },
39 { 58, 59, 60, NO_LED, NO_LED, NO_LED, 61, NO_LED, NO_LED, 61, 62, 63, 64, 65, 66 }
40}, {
41 { 0,0 }, { 15,0 }, { 30,0 }, { 45,0 }, { 60,0 }, { 75,0 }, { 90,0 }, {105,0 }, {120,0 }, {135,0 }, {150,0 }, {165,0 }, {180,0 }, {203,0 },
42 {225,0 }, {225,16 }, {206,16 }, {188,16 }, {173,16 }, {158,16 }, {143,16 }, {128,16 }, {113,16 }, { 98,16 }, { 83,16 }, { 68,16 }, { 53,16 }, { 38,16 },
43 { 23,16 }, { 4,16 }, { 6,32 }, { 26,32 }, { 41,32 }, { 56,32 }, { 71,32 }, { 86,32 }, {101,32 }, {116,32 }, {131,32 }, {146,32 }, {161,32 }, {176,32 },
44 {201,32 }, {225,32 }, {225,48 }, {210,48 }, {189,48 }, {169,48 }, {154,48 }, {139,48 }, {124,48 }, {109,48 }, { 94,48 }, { 79,48 }, { 64,48 }, { 49,48 },
45 { 34,48 }, { 9,48 }, { 2,64 }, { 21,64 }, { 39,64 }, { 96,64 }, {150,64 }, {165,64 }, {180,64 }, {195,64 }, {210,64 }, {225,64 }
46}, {
47 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
48 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
49 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
50 1, 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
51 1, 1, 1, 4, 1, 1, 1, 1, 1, 1
52} };
53// clang-format on
54#endif
diff --git a/keyboards/novelkeys/nk87b/keyboard.json b/keyboards/novelkeys/nk87b/keyboard.json
index 563f502aae..2213dfa86d 100755
--- a/keyboards/novelkeys/nk87b/keyboard.json
+++ b/keyboards/novelkeys/nk87b/keyboard.json
@@ -66,6 +66,95 @@
66 "solid_multisplash": true 66 "solid_multisplash": true
67 }, 67 },
68 "driver": "ws2812", 68 "driver": "ws2812",
69 "layout": [
70 {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
71 {"matrix": [0, 1], "x": 16, "y": 0, "flags": 4},
72 {"matrix": [0, 2], "x": 29, "y": 0, "flags": 4},
73 {"matrix": [0, 3], "x": 42, "y": 0, "flags": 4},
74 {"matrix": [0, 4], "x": 55, "y": 0, "flags": 4},
75 {"matrix": [0, 5], "x": 71, "y": 0, "flags": 1},
76 {"matrix": [0, 6], "x": 84, "y": 0, "flags": 1},
77 {"matrix": [0, 7], "x": 97, "y": 0, "flags": 1},
78 {"matrix": [0, 8], "x": 110, "y": 0, "flags": 1},
79 {"matrix": [0, 9], "x": 127, "y": 0, "flags": 4},
80 {"matrix": [0, 10], "x": 140, "y": 0, "flags": 4},
81 {"matrix": [0, 11], "x": 153, "y": 0, "flags": 4},
82 {"matrix": [0, 12], "x": 166, "y": 0, "flags": 4},
83 {"matrix": [0, 13], "x": 182, "y": 0, "flags": 1},
84 {"matrix": [0, 14], "x": 198, "y": 0, "flags": 1},
85 {"matrix": [0, 15], "x": 211, "y": 0, "flags": 1},
86 {"matrix": [0, 16], "x": 224, "y": 0, "flags": 1},
87 {"matrix": [1, 16], "x": 224, "y": 15, "flags": 1},
88 {"matrix": [1, 15], "x": 211, "y": 15, "flags": 1},
89 {"matrix": [1, 14], "x": 198, "y": 15, "flags": 1},
90 {"matrix": [1, 13], "x": 175, "y": 15, "flags": 1},
91 {"matrix": [1, 12], "x": 156, "y": 15, "flags": 4},
92 {"matrix": [1, 11], "x": 143, "y": 15, "flags": 4},
93 {"matrix": [1, 10], "x": 130, "y": 15, "flags": 4},
94 {"matrix": [1, 9], "x": 117, "y": 15, "flags": 4},
95 {"matrix": [1, 8], "x": 104, "y": 15, "flags": 4},
96 {"matrix": [1, 7], "x": 91, "y": 15, "flags": 4},
97 {"matrix": [1, 6], "x": 78, "y": 15, "flags": 4},
98 {"matrix": [1, 5], "x": 65, "y": 15, "flags": 4},
99 {"matrix": [1, 4], "x": 52, "y": 15, "flags": 4},
100 {"matrix": [1, 3], "x": 39, "y": 15, "flags": 4},
101 {"matrix": [1, 2], "x": 26, "y": 15, "flags": 4},
102 {"matrix": [1, 1], "x": 13, "y": 15, "flags": 4},
103 {"matrix": [1, 0], "x": 0, "y": 15, "flags": 4},
104 {"matrix": [2, 0], "x": 3, "y": 27, "flags": 1},
105 {"matrix": [2, 1], "x": 19, "y": 27, "flags": 4},
106 {"matrix": [2, 2], "x": 32, "y": 27, "flags": 4},
107 {"matrix": [2, 3], "x": 45, "y": 27, "flags": 4},
108 {"matrix": [2, 4], "x": 58, "y": 27, "flags": 4},
109 {"matrix": [2, 5], "x": 71, "y": 27, "flags": 4},
110 {"matrix": [2, 6], "x": 84, "y": 27, "flags": 4},
111 {"matrix": [2, 7], "x": 97, "y": 27, "flags": 4},
112 {"matrix": [2, 8], "x": 110, "y": 27, "flags": 4},
113 {"matrix": [2, 9], "x": 123, "y": 27, "flags": 4},
114 {"matrix": [2, 10], "x": 136, "y": 27, "flags": 4},
115 {"matrix": [2, 11], "x": 149, "y": 27, "flags": 4},
116 {"matrix": [2, 12], "x": 162, "y": 27, "flags": 4},
117 {"matrix": [3, 12], "x": 179, "y": 27, "flags": 4},
118 {"matrix": [2, 14], "x": 198, "y": 27, "flags": 1},
119 {"matrix": [2, 15], "x": 211, "y": 27, "flags": 1},
120 {"matrix": [2, 16], "x": 224, "y": 27, "flags": 1},
121 {"matrix": [3, 13], "x": 174, "y": 40, "flags": 1},
122 {"matrix": [3, 11], "x": 153, "y": 40, "flags": 4},
123 {"matrix": [3, 10], "x": 140, "y": 40, "flags": 4},
124 {"matrix": [3, 9], "x": 127, "y": 40, "flags": 4},
125 {"matrix": [3, 8], "x": 114, "y": 40, "flags": 4},
126 {"matrix": [3, 7], "x": 101, "y": 40, "flags": 4},
127 {"matrix": [3, 6], "x": 88, "y": 40, "flags": 4},
128 {"matrix": [3, 5], "x": 75, "y": 40, "flags": 4},
129 {"matrix": [3, 4], "x": 62, "y": 40, "flags": 4},
130 {"matrix": [3, 3], "x": 49, "y": 40, "flags": 4},
131 {"matrix": [3, 2], "x": 36, "y": 40, "flags": 4},
132 {"matrix": [3, 1], "x": 23, "y": 40, "flags": 4},
133 {"matrix": [3, 0], "x": 5, "y": 40, "flags": 1},
134 {"matrix": [4, 0], "x": 8, "y": 52, "flags": 1},
135 {"matrix": [4, 2], "x": 29, "y": 52, "flags": 4},
136 {"matrix": [4, 3], "x": 42, "y": 52, "flags": 4},
137 {"matrix": [4, 4], "x": 55, "y": 52, "flags": 4},
138 {"matrix": [4, 5], "x": 68, "y": 52, "flags": 4},
139 {"matrix": [4, 6], "x": 81, "y": 52, "flags": 4},
140 {"matrix": [4, 7], "x": 94, "y": 52, "flags": 4},
141 {"matrix": [4, 8], "x": 107, "y": 52, "flags": 4},
142 {"matrix": [4, 9], "x": 120, "y": 52, "flags": 4},
143 {"matrix": [4, 10], "x": 133, "y": 52, "flags": 4},
144 {"matrix": [4, 11], "x": 146, "y": 52, "flags": 4},
145 {"matrix": [4, 12], "x": 170, "y": 52, "flags": 1},
146 {"matrix": [4, 15], "x": 211, "y": 52, "flags": 1},
147 {"matrix": [5, 16], "x": 224, "y": 64, "flags": 1},
148 {"matrix": [5, 15], "x": 211, "y": 64, "flags": 1},
149 {"matrix": [5, 14], "x": 198, "y": 64, "flags": 1},
150 {"matrix": [5, 13], "x": 179, "y": 64, "flags": 1},
151 {"matrix": [5, 12], "x": 162, "y": 64, "flags": 1},
152 {"matrix": [5, 11], "x": 146, "y": 64, "flags": 1},
153 {"matrix": [5, 6], "x": 91, "y": 64, "flags": 4},
154 {"matrix": [5, 2], "x": 36, "y": 64, "flags": 1},
155 {"matrix": [5, 1], "x": 19, "y": 64, "flags": 1},
156 {"matrix": [5, 0], "x": 3, "y": 64, "flags": 1}
157 ],
69 "max_brightness": 114, 158 "max_brightness": 114,
70 "sleep": true 159 "sleep": true
71 }, 160 },
diff --git a/keyboards/novelkeys/nk87b/nk87b.c b/keyboards/novelkeys/nk87b/nk87b.c
index 125b5d7404..9cd36e745f 100644
--- a/keyboards/novelkeys/nk87b/nk87b.c
+++ b/keyboards/novelkeys/nk87b/nk87b.c
@@ -29,30 +29,3 @@ layer_state_t layer_state_set_kb(layer_state_t state) {
29 gpio_write_pin(A4, !layer_state_cmp(state, 2)); 29 gpio_write_pin(A4, !layer_state_cmp(state, 2));
30 return layer_state_set_user(state); 30 return layer_state_set_user(state);
31} 31}
32
33#ifdef RGB_MATRIX_ENABLE
34// clang-format off
35led_config_t g_led_config = { {
36 { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 },
37 { 33, 32, 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17 },
38 { 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, NO_LED, 48, 49, 50 },
39 { 63, 62, 61, 60, 59, 58, 57, 56, 55, 54, 53, 52, 47, 51, NO_LED, NO_LED, NO_LED },
40 { 64, NO_LED, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, NO_LED, NO_LED, 76, NO_LED },
41 { 86, 85, 84, NO_LED, NO_LED, NO_LED, 83, NO_LED, NO_LED, NO_LED, NO_LED, 82, 81, 80, 79, 78, 77 },
42}, {
43 { 0,0 }, { 16,0 }, { 29,0 }, { 42,0 }, { 55,0 }, { 71,0 }, { 84,0 }, { 97,0 }, {110,0 }, {127,0 }, {140,0 }, {153,0 }, {166,0 }, {182,0 }, {198,0 }, {211,0 }, {224,0 },
44 {224,15 }, {211,15 }, {198,15 }, {175,15 }, {156,15 }, {143,15 }, {130,15 }, {117,15 }, {104,15 }, { 91,15 }, { 78,15 }, { 65,15 }, { 52,15 }, { 39,15 }, { 26,15 }, { 13,15 }, { 0,15 },
45 { 3,27 }, { 19,27 }, { 32,27 }, { 45,27 }, { 58,27 }, { 71,27 }, { 84,27 }, { 97,27 }, {110,27 }, {123,27 }, {136,27 }, {149,27 }, {162,27 }, {179,27 }, {198,27 }, {211,27 }, {224,27 },
46 {174,40 }, {153,40 }, {140,40 }, {127,40 }, {114,40 }, {101,40 }, { 88,40 }, { 75,40 }, { 62,40 }, { 49,40 }, { 36,40 }, { 23,40 }, { 5,40 }, { 8,52 }, { 29,52 }, { 42,52 }, { 55,52 },
47 { 68,52 }, { 81,52 }, { 94,52 }, {107,52 }, {120,52 }, {133,52 }, {146,52 }, {170,52 }, {211,52 }, {224,64 }, {211,64 }, {198,64 }, {179,64 }, {162,64 }, {146,64 }, { 91,64 }, { 36,64 },
48 { 19,64 }, { 3,64 }
49}, {
50 1, 4, 4, 4, 4, 1, 1, 1, 1, 4, 4, 4, 4, 1, 1, 1, 1,
51 1, 1, 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
52 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1,
53 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
54 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
55 1, 1, 1, 1, 1, 1, 4, 1, 1, 1
56} };
57// clang-format on
58#endif
diff --git a/keyboards/omkbd/runner3680/5x6_5x8/5x6_5x8.c b/keyboards/omkbd/runner3680/5x6_5x8/5x6_5x8.c
deleted file mode 100644
index 3fda310364..0000000000
--- a/keyboards/omkbd/runner3680/5x6_5x8/5x6_5x8.c
+++ /dev/null
@@ -1,52 +0,0 @@
1/* Copyright 2021 omkbd
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include "quantum.h"
18
19#ifdef RGB_MATRIX_ENABLE
20led_config_t g_led_config = { {
21 // Key Matrix to LED Index
22 { NO_LED, NO_LED, 5, 4, 3, 2, 1, 0 },
23 { NO_LED, NO_LED, 6, 7, 8, 9, 10, 11 },
24 { NO_LED, NO_LED, 17, 16, 15, 14, 13, 12 },
25 { NO_LED, NO_LED, 18, 19, 20, 21, 22, 23 },
26 { NO_LED, NO_LED, 29, 28, 27, 26, 25, 24 },
27 { 37, 36, 35, 34, 33, 32, 31, 30 },
28 { 38, 39, 40, 41, 42, 43, 44, 45 },
29 { 53, 52, 51, 50, 49, 48, 47, 46 },
30 { 54, 55, 56, 57, 58, 59, 60, 61 },
31 { 69, 68, 67, 66, 65, 64, 63, 62 }
32}, {
33 // LED Index to Physical Position
34 { 86, 0 }, { 69, 0 }, { 52, 0 }, { 34, 0 }, { 17, 0 }, { 0, 0 },
35 { 0, 16 }, { 17, 16 }, { 34, 16 }, { 52, 16 }, { 69, 16 }, { 86, 16 },
36 { 86, 32 }, { 69, 32 }, { 52, 32 }, { 34, 32 }, { 17, 32 }, { 0, 32 },
37 { 0, 48 }, { 17, 48 }, { 34, 48 }, { 52, 48 }, { 69, 48 }, { 86, 48 },
38 { 86, 64 }, { 69, 64 }, { 52, 64 }, { 34, 64 }, { 17, 64 }, { 0, 64 },
39 { 103, 0 }, { 121, 0 }, { 138, 0 }, { 155, 0 }, { 172, 0 }, { 190, 0 }, { 207, 0 }, { 224, 0 },
40 { 224, 16 }, { 207, 16 }, { 190, 16 }, { 172, 16 }, { 155, 16 }, { 138, 16 }, { 121, 16 }, { 103, 16 },
41 { 103, 32 }, { 121, 32 }, { 138, 32 }, { 155, 32 }, { 172, 32 }, { 190, 32 }, { 207, 32 }, { 224, 32 },
42 { 224, 48 }, { 207, 48 }, { 190, 48 }, { 172, 48 }, { 155, 48 }, { 138, 48 }, { 121, 48 }, { 103, 48 },
43 { 103, 64 }, { 121, 64 }, { 138, 64 }, { 155, 64 }, { 172, 64 }, { 190, 64 }, { 207, 64 }, { 224, 64 }
44}, {
45 // LED Index to Flag
46 LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL,
47 LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL,
48 LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL,
49 LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL,
50 LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL
51} };
52#endif
diff --git a/keyboards/omkbd/runner3680/5x6_5x8/keyboard.json b/keyboards/omkbd/runner3680/5x6_5x8/keyboard.json
index 2d912a1445..2033b0330d 100644
--- a/keyboards/omkbd/runner3680/5x6_5x8/keyboard.json
+++ b/keyboards/omkbd/runner3680/5x6_5x8/keyboard.json
@@ -15,6 +15,78 @@
15 }, 15 },
16 "rgb_matrix": { 16 "rgb_matrix": {
17 "driver": "ws2812", 17 "driver": "ws2812",
18 "layout": [
19 {"matrix": [0, 7], "x": 86, "y": 0, "flags": 255},
20 {"matrix": [0, 6], "x": 69, "y": 0, "flags": 255},
21 {"matrix": [0, 5], "x": 52, "y": 0, "flags": 255},
22 {"matrix": [0, 4], "x": 34, "y": 0, "flags": 255},
23 {"matrix": [0, 3], "x": 17, "y": 0, "flags": 255},
24 {"matrix": [0, 2], "x": 0, "y": 0, "flags": 255},
25 {"matrix": [1, 2], "x": 0, "y": 16, "flags": 255},
26 {"matrix": [1, 3], "x": 17, "y": 16, "flags": 255},
27 {"matrix": [1, 4], "x": 34, "y": 16, "flags": 255},
28 {"matrix": [1, 5], "x": 52, "y": 16, "flags": 255},
29 {"matrix": [1, 6], "x": 69, "y": 16, "flags": 255},
30 {"matrix": [1, 7], "x": 86, "y": 16, "flags": 255},
31 {"matrix": [2, 7], "x": 86, "y": 32, "flags": 255},
32 {"matrix": [2, 6], "x": 69, "y": 32, "flags": 255},
33 {"matrix": [2, 5], "x": 52, "y": 32, "flags": 255},
34 {"matrix": [2, 4], "x": 34, "y": 32, "flags": 255},
35 {"matrix": [2, 3], "x": 17, "y": 32, "flags": 255},
36 {"matrix": [2, 2], "x": 0, "y": 32, "flags": 255},
37 {"matrix": [3, 2], "x": 0, "y": 48, "flags": 255},
38 {"matrix": [3, 3], "x": 17, "y": 48, "flags": 255},
39 {"matrix": [3, 4], "x": 34, "y": 48, "flags": 255},
40 {"matrix": [3, 5], "x": 52, "y": 48, "flags": 255},
41 {"matrix": [3, 6], "x": 69, "y": 48, "flags": 255},
42 {"matrix": [3, 7], "x": 86, "y": 48, "flags": 255},
43 {"matrix": [4, 7], "x": 86, "y": 64, "flags": 255},
44 {"matrix": [4, 6], "x": 69, "y": 64, "flags": 255},
45 {"matrix": [4, 5], "x": 52, "y": 64, "flags": 255},
46 {"matrix": [4, 4], "x": 34, "y": 64, "flags": 255},
47 {"matrix": [4, 3], "x": 17, "y": 64, "flags": 255},
48 {"matrix": [4, 2], "x": 0, "y": 64, "flags": 255},
49 {"matrix": [5, 7], "x": 103, "y": 0, "flags": 255},
50 {"matrix": [5, 6], "x": 121, "y": 0, "flags": 255},
51 {"matrix": [5, 5], "x": 138, "y": 0, "flags": 255},
52 {"matrix": [5, 4], "x": 155, "y": 0, "flags": 255},
53 {"matrix": [5, 3], "x": 172, "y": 0, "flags": 255},
54 {"matrix": [5, 2], "x": 190, "y": 0, "flags": 255},
55 {"matrix": [5, 1], "x": 207, "y": 0, "flags": 255},
56 {"matrix": [5, 0], "x": 224, "y": 0, "flags": 255},
57 {"matrix": [6, 0], "x": 224, "y": 16, "flags": 255},
58 {"matrix": [6, 1], "x": 207, "y": 16, "flags": 255},
59 {"matrix": [6, 2], "x": 190, "y": 16, "flags": 255},
60 {"matrix": [6, 3], "x": 172, "y": 16, "flags": 255},
61 {"matrix": [6, 4], "x": 155, "y": 16, "flags": 255},
62 {"matrix": [6, 5], "x": 138, "y": 16, "flags": 255},
63 {"matrix": [6, 6], "x": 121, "y": 16, "flags": 255},
64 {"matrix": [6, 7], "x": 103, "y": 16, "flags": 255},
65 {"matrix": [7, 7], "x": 103, "y": 32, "flags": 255},
66 {"matrix": [7, 6], "x": 121, "y": 32, "flags": 255},
67 {"matrix": [7, 5], "x": 138, "y": 32, "flags": 255},
68 {"matrix": [7, 4], "x": 155, "y": 32, "flags": 255},
69 {"matrix": [7, 3], "x": 172, "y": 32, "flags": 255},
70 {"matrix": [7, 2], "x": 190, "y": 32, "flags": 255},
71 {"matrix": [7, 1], "x": 207, "y": 32, "flags": 255},
72 {"matrix": [7, 0], "x": 224, "y": 32, "flags": 255},
73 {"matrix": [8, 0], "x": 224, "y": 48, "flags": 255},
74 {"matrix": [8, 1], "x": 207, "y": 48, "flags": 255},
75 {"matrix": [8, 2], "x": 190, "y": 48, "flags": 255},
76 {"matrix": [8, 3], "x": 172, "y": 48, "flags": 255},
77 {"matrix": [8, 4], "x": 155, "y": 48, "flags": 255},
78 {"matrix": [8, 5], "x": 138, "y": 48, "flags": 255},
79 {"matrix": [8, 6], "x": 121, "y": 48, "flags": 255},
80 {"matrix": [8, 7], "x": 103, "y": 48, "flags": 255},
81 {"matrix": [9, 7], "x": 103, "y": 64, "flags": 255},
82 {"matrix": [9, 6], "x": 121, "y": 64, "flags": 255},
83 {"matrix": [9, 5], "x": 138, "y": 64, "flags": 255},
84 {"matrix": [9, 4], "x": 155, "y": 64, "flags": 255},
85 {"matrix": [9, 3], "x": 172, "y": 64, "flags": 255},
86 {"matrix": [9, 2], "x": 190, "y": 64, "flags": 255},
87 {"matrix": [9, 1], "x": 207, "y": 64, "flags": 255},
88 {"matrix": [9, 0], "x": 224, "y": 64, "flags": 255}
89 ],
18 "split_count": [30, 40] 90 "split_count": [30, 40]
19 }, 91 },
20 "matrix_pins": { 92 "matrix_pins": {
diff --git a/keyboards/owlab/voice65/hotswap/hotswap.c b/keyboards/owlab/voice65/hotswap/hotswap.c
index 79179d1661..ec27cf9b75 100644
--- a/keyboards/owlab/voice65/hotswap/hotswap.c
+++ b/keyboards/owlab/voice65/hotswap/hotswap.c
@@ -86,29 +86,6 @@ const is31fl3741_led_t PROGMEM g_is31fl3741_leds[IS31FL3741_LED_COUNT] = {
86 {0, SW5_CS39, SW5_CS38, SW5_CS37}, /* RGB65-dn- */ 86 {0, SW5_CS39, SW5_CS38, SW5_CS37}, /* RGB65-dn- */
87 {0, SW7_CS39, SW7_CS38, SW7_CS37}, /* RGB66-right- */ 87 {0, SW7_CS39, SW7_CS38, SW7_CS37}, /* RGB66-right- */
88}; 88};
89
90led_config_t g_led_config = { {
91 { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 },
92 { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 },
93 { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, NO_LED, 43 },
94 { 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, NO_LED, 56, 57 },
95 { 58, 59, 60, NO_LED, NO_LED, 61, NO_LED, NO_LED, NO_LED, 62, 63, 64, NO_LED, 65, 66 }
96}, {
97 { 0, 0 }, { 16, 0 }, { 32, 0 }, { 48, 0 }, { 64, 0 }, { 80, 0 }, { 96, 0 }, { 112, 0 }, { 128, 0 }, { 144, 0 }, { 160, 0 }, { 176, 0 }, { 192, 0 }, { 208, 0 }, { 224, 0 },
98 { 2, 16 }, { 18, 16 }, { 34, 16 }, { 50, 16 }, { 66, 16 }, { 82, 16 }, { 98, 16 }, { 114, 16 }, { 130, 16 }, { 146, 16 }, { 162, 16 }, { 178, 16 }, { 194, 16 }, { 210, 16 }, { 224, 16 },
99 { 4, 32 }, { 20, 32 }, { 36, 32 }, { 52, 32 }, { 68, 32 }, { 84, 32 }, { 100, 32 }, { 116, 32 }, { 132, 32 }, { 148, 32 }, { 164, 32 }, { 180, 32 }, { 196, 32 }, { 224, 32 },
100 { 8, 48 }, { 24, 48 }, { 40, 48 }, { 56, 48 }, { 72, 48 }, { 88, 48 }, { 104, 48 }, { 120, 48 }, { 136, 48 }, { 152, 48 }, { 168, 48 }, { 184, 48 }, { 208, 48 }, { 224, 48 },
101 { 2, 64 }, { 18, 64 }, { 34, 64 }, { 82, 64 }, { 146, 64 }, { 162, 64 }, { 178, 64 }, { 210, 64 }, { 224, 64 }
102}, {
103 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
104 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
105 0, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
106 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1,
107 1, 1, 1, 1, 1, 1, 1, 1, 1,
108 }
109};
110
111
112#endif 89#endif
113 90
114bool rgb_matrix_indicators_kb(void) { 91bool rgb_matrix_indicators_kb(void) {
diff --git a/keyboards/owlab/voice65/hotswap/keyboard.json b/keyboards/owlab/voice65/hotswap/keyboard.json
index 79ca2a57ed..e31a7b5e65 100644
--- a/keyboards/owlab/voice65/hotswap/keyboard.json
+++ b/keyboards/owlab/voice65/hotswap/keyboard.json
@@ -63,6 +63,75 @@
63 "val": 128 63 "val": 128
64 }, 64 },
65 "driver": "is31fl3741", 65 "driver": "is31fl3741",
66 "layout": [
67 {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
68 {"matrix": [0, 1], "x": 16, "y": 0, "flags": 4},
69 {"matrix": [0, 2], "x": 32, "y": 0, "flags": 4},
70 {"matrix": [0, 3], "x": 48, "y": 0, "flags": 4},
71 {"matrix": [0, 4], "x": 64, "y": 0, "flags": 4},
72 {"matrix": [0, 5], "x": 80, "y": 0, "flags": 4},
73 {"matrix": [0, 6], "x": 96, "y": 0, "flags": 4},
74 {"matrix": [0, 7], "x": 112, "y": 0, "flags": 4},
75 {"matrix": [0, 8], "x": 128, "y": 0, "flags": 4},
76 {"matrix": [0, 9], "x": 144, "y": 0, "flags": 4},
77 {"matrix": [0, 10], "x": 160, "y": 0, "flags": 4},
78 {"matrix": [0, 11], "x": 176, "y": 0, "flags": 4},
79 {"matrix": [0, 12], "x": 192, "y": 0, "flags": 4},
80 {"matrix": [0, 13], "x": 208, "y": 0, "flags": 1},
81 {"matrix": [0, 14], "x": 224, "y": 0, "flags": 1},
82 {"matrix": [1, 0], "x": 2, "y": 16, "flags": 1},
83 {"matrix": [1, 1], "x": 18, "y": 16, "flags": 4},
84 {"matrix": [1, 2], "x": 34, "y": 16, "flags": 4},
85 {"matrix": [1, 3], "x": 50, "y": 16, "flags": 4},
86 {"matrix": [1, 4], "x": 66, "y": 16, "flags": 4},
87 {"matrix": [1, 5], "x": 82, "y": 16, "flags": 4},
88 {"matrix": [1, 6], "x": 98, "y": 16, "flags": 4},
89 {"matrix": [1, 7], "x": 114, "y": 16, "flags": 4},
90 {"matrix": [1, 8], "x": 130, "y": 16, "flags": 4},
91 {"matrix": [1, 9], "x": 146, "y": 16, "flags": 4},
92 {"matrix": [1, 10], "x": 162, "y": 16, "flags": 4},
93 {"matrix": [1, 11], "x": 178, "y": 16, "flags": 4},
94 {"matrix": [1, 12], "x": 194, "y": 16, "flags": 4},
95 {"matrix": [1, 13], "x": 210, "y": 16, "flags": 4},
96 {"matrix": [1, 14], "x": 224, "y": 16, "flags": 1},
97 {"matrix": [2, 0], "x": 4, "y": 32, "flags": 0},
98 {"matrix": [2, 1], "x": 20, "y": 32, "flags": 4},
99 {"matrix": [2, 2], "x": 36, "y": 32, "flags": 4},
100 {"matrix": [2, 3], "x": 52, "y": 32, "flags": 4},
101 {"matrix": [2, 4], "x": 68, "y": 32, "flags": 4},
102 {"matrix": [2, 5], "x": 84, "y": 32, "flags": 4},
103 {"matrix": [2, 6], "x": 100, "y": 32, "flags": 4},
104 {"matrix": [2, 7], "x": 116, "y": 32, "flags": 4},
105 {"matrix": [2, 8], "x": 132, "y": 32, "flags": 4},
106 {"matrix": [2, 9], "x": 148, "y": 32, "flags": 4},
107 {"matrix": [2, 10], "x": 164, "y": 32, "flags": 4},
108 {"matrix": [2, 11], "x": 180, "y": 32, "flags": 4},
109 {"matrix": [2, 12], "x": 196, "y": 32, "flags": 1},
110 {"matrix": [2, 14], "x": 224, "y": 32, "flags": 1},
111 {"matrix": [3, 0], "x": 8, "y": 48, "flags": 1},
112 {"matrix": [3, 1], "x": 24, "y": 48, "flags": 4},
113 {"matrix": [3, 2], "x": 40, "y": 48, "flags": 4},
114 {"matrix": [3, 3], "x": 56, "y": 48, "flags": 4},
115 {"matrix": [3, 4], "x": 72, "y": 48, "flags": 4},
116 {"matrix": [3, 5], "x": 88, "y": 48, "flags": 4},
117 {"matrix": [3, 6], "x": 104, "y": 48, "flags": 4},
118 {"matrix": [3, 7], "x": 120, "y": 48, "flags": 4},
119 {"matrix": [3, 8], "x": 136, "y": 48, "flags": 4},
120 {"matrix": [3, 9], "x": 152, "y": 48, "flags": 4},
121 {"matrix": [3, 10], "x": 168, "y": 48, "flags": 4},
122 {"matrix": [3, 11], "x": 184, "y": 48, "flags": 1},
123 {"matrix": [3, 13], "x": 208, "y": 48, "flags": 1},
124 {"matrix": [3, 14], "x": 224, "y": 48, "flags": 1},
125 {"matrix": [4, 0], "x": 2, "y": 64, "flags": 1},
126 {"matrix": [4, 1], "x": 18, "y": 64, "flags": 1},
127 {"matrix": [4, 2], "x": 34, "y": 64, "flags": 1},
128 {"matrix": [4, 5], "x": 82, "y": 64, "flags": 1},
129 {"matrix": [4, 9], "x": 146, "y": 64, "flags": 1},
130 {"matrix": [4, 10], "x": 162, "y": 64, "flags": 1},
131 {"matrix": [4, 11], "x": 178, "y": 64, "flags": 1},
132 {"matrix": [4, 13], "x": 210, "y": 64, "flags": 1},
133 {"matrix": [4, 14], "x": 224, "y": 64, "flags": 1}
134 ],
66 "led_flush_limit": 26, 135 "led_flush_limit": 26,
67 "led_process_limit": 4, 136 "led_process_limit": 4,
68 "max_brightness": 200, 137 "max_brightness": 200,
diff --git a/keyboards/owlab/voice65/soldered/keyboard.json b/keyboards/owlab/voice65/soldered/keyboard.json
index edd79a064f..312b612561 100644
--- a/keyboards/owlab/voice65/soldered/keyboard.json
+++ b/keyboards/owlab/voice65/soldered/keyboard.json
@@ -63,6 +63,79 @@
63 "val": 128 63 "val": 128
64 }, 64 },
65 "driver": "is31fl3741", 65 "driver": "is31fl3741",
66 "layout": [
67 {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
68 {"matrix": [0, 1], "x": 15, "y": 0, "flags": 4},
69 {"matrix": [0, 2], "x": 30, "y": 0, "flags": 4},
70 {"matrix": [0, 3], "x": 45, "y": 0, "flags": 4},
71 {"matrix": [0, 4], "x": 60, "y": 0, "flags": 4},
72 {"matrix": [0, 5], "x": 75, "y": 0, "flags": 4},
73 {"matrix": [0, 6], "x": 90, "y": 0, "flags": 4},
74 {"matrix": [0, 7], "x": 105, "y": 0, "flags": 4},
75 {"matrix": [0, 8], "x": 120, "y": 0, "flags": 4},
76 {"matrix": [0, 9], "x": 135, "y": 0, "flags": 4},
77 {"matrix": [0, 10], "x": 150, "y": 0, "flags": 4},
78 {"matrix": [0, 11], "x": 165, "y": 0, "flags": 4},
79 {"matrix": [0, 12], "x": 180, "y": 0, "flags": 4},
80 {"matrix": [0, 13], "x": 195, "y": 0, "flags": 4},
81 {"matrix": [0, 14], "x": 209, "y": 0, "flags": 4},
82 {"matrix": [2, 13], "x": 224, "y": 0, "flags": 1},
83 {"matrix": [1, 0], "x": 2, "y": 16, "flags": 1},
84 {"matrix": [1, 1], "x": 18, "y": 16, "flags": 4},
85 {"matrix": [1, 2], "x": 34, "y": 16, "flags": 4},
86 {"matrix": [1, 3], "x": 50, "y": 16, "flags": 4},
87 {"matrix": [1, 4], "x": 66, "y": 16, "flags": 4},
88 {"matrix": [1, 5], "x": 82, "y": 16, "flags": 4},
89 {"matrix": [1, 6], "x": 98, "y": 16, "flags": 4},
90 {"matrix": [1, 7], "x": 114, "y": 16, "flags": 4},
91 {"matrix": [1, 8], "x": 130, "y": 16, "flags": 4},
92 {"matrix": [1, 9], "x": 146, "y": 16, "flags": 4},
93 {"matrix": [1, 10], "x": 162, "y": 16, "flags": 4},
94 {"matrix": [1, 11], "x": 178, "y": 16, "flags": 4},
95 {"matrix": [1, 12], "x": 194, "y": 16, "flags": 4},
96 {"matrix": [1, 13], "x": 208, "y": 16, "flags": 4},
97 {"matrix": [1, 14], "x": 224, "y": 16, "flags": 1},
98 {"matrix": [2, 0], "x": 2, "y": 32, "flags": 0},
99 {"matrix": [2, 1], "x": 20, "y": 32, "flags": 4},
100 {"matrix": [2, 2], "x": 36, "y": 32, "flags": 4},
101 {"matrix": [2, 3], "x": 52, "y": 32, "flags": 4},
102 {"matrix": [2, 4], "x": 68, "y": 32, "flags": 4},
103 {"matrix": [2, 5], "x": 84, "y": 32, "flags": 4},
104 {"matrix": [2, 6], "x": 100, "y": 32, "flags": 4},
105 {"matrix": [2, 7], "x": 116, "y": 32, "flags": 4},
106 {"matrix": [2, 8], "x": 132, "y": 32, "flags": 4},
107 {"matrix": [2, 9], "x": 148, "y": 32, "flags": 4},
108 {"matrix": [2, 10], "x": 164, "y": 32, "flags": 4},
109 {"matrix": [2, 11], "x": 180, "y": 32, "flags": 4},
110 {"matrix": [2, 12], "x": 202, "y": 32, "flags": 1},
111 {"matrix": [2, 14], "x": 224, "y": 32, "flags": 1},
112 {"matrix": [3, 0], "x": 0, "y": 48, "flags": 1},
113 {"matrix": [3, 1], "x": 16, "y": 48, "flags": 4},
114 {"matrix": [3, 2], "x": 32, "y": 48, "flags": 4},
115 {"matrix": [3, 3], "x": 48, "y": 48, "flags": 4},
116 {"matrix": [3, 4], "x": 64, "y": 48, "flags": 4},
117 {"matrix": [3, 5], "x": 80, "y": 48, "flags": 4},
118 {"matrix": [3, 6], "x": 96, "y": 48, "flags": 4},
119 {"matrix": [3, 7], "x": 112, "y": 48, "flags": 4},
120 {"matrix": [3, 8], "x": 128, "y": 48, "flags": 4},
121 {"matrix": [3, 9], "x": 144, "y": 48, "flags": 4},
122 {"matrix": [3, 10], "x": 160, "y": 48, "flags": 4},
123 {"matrix": [3, 11], "x": 176, "y": 48, "flags": 4},
124 {"matrix": [3, 12], "x": 192, "y": 48, "flags": 1},
125 {"matrix": [3, 13], "x": 208, "y": 48, "flags": 1},
126 {"matrix": [3, 14], "x": 224, "y": 48, "flags": 1},
127 {"matrix": [4, 0], "x": 0, "y": 64, "flags": 1},
128 {"matrix": [4, 1], "x": 20, "y": 64, "flags": 1},
129 {"matrix": [4, 2], "x": 40, "y": 64, "flags": 1},
130 {"matrix": [4, 3], "x": 60, "y": 64, "flags": 1},
131 {"matrix": [4, 4], "x": 95, "y": 64, "flags": 1},
132 {"matrix": [4, 6], "x": 132, "y": 64, "flags": 1},
133 {"matrix": [4, 9], "x": 152, "y": 64, "flags": 1},
134 {"matrix": [4, 10], "x": 172, "y": 64, "flags": 1},
135 {"matrix": [4, 11], "x": 192, "y": 64, "flags": 1},
136 {"matrix": [4, 12], "x": 208, "y": 64, "flags": 1},
137 {"matrix": [4, 14], "x": 224, "y": 64, "flags": 1}
138 ],
66 "led_flush_limit": 26, 139 "led_flush_limit": 26,
67 "led_process_limit": 4, 140 "led_process_limit": 4,
68 "max_brightness": 200, 141 "max_brightness": 200,
diff --git a/keyboards/owlab/voice65/soldered/soldered.c b/keyboards/owlab/voice65/soldered/soldered.c
index 23144914fe..5a47de96e8 100644
--- a/keyboards/owlab/voice65/soldered/soldered.c
+++ b/keyboards/owlab/voice65/soldered/soldered.c
@@ -90,29 +90,6 @@ const is31fl3741_led_t PROGMEM g_is31fl3741_leds[IS31FL3741_LED_COUNT] = {
90 {0, SW5_CS39, SW5_CS38, SW5_CS37}, /* RGB69-dn- */ 90 {0, SW5_CS39, SW5_CS38, SW5_CS37}, /* RGB69-dn- */
91 {0, SW5_CS27, SW5_CS26, SW5_CS25}, /* RGB70-right- */ 91 {0, SW5_CS27, SW5_CS26, SW5_CS25}, /* RGB70-right- */
92}; 92};
93
94led_config_t g_led_config = { {
95 { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 },
96 { 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30 },
97 { 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 15, 44 },
98 { 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59 },
99 { 60, 61, 62, 63, 64, NO_LED, 65, NO_LED, NO_LED, 66, 67, 68, 69, NO_LED, 70 }
100}, {
101 { 0, 0 }, { 15, 0 }, { 30, 0 }, { 45, 0 }, { 60, 0 }, { 75, 0 }, { 90, 0 }, { 105, 0 }, { 120, 0 }, { 135, 0 }, { 150, 0 }, { 165, 0}, { 180, 0}, { 195, 0 }, { 209, 0 }, { 224, 0 },
102 { 2, 16 }, { 18, 16 }, { 34, 16 }, { 50, 16 }, { 66, 16 }, { 82, 16 }, { 98, 16 }, { 114, 16 }, { 130, 16 }, { 146, 16 }, { 162, 16 }, { 178, 16 }, { 194, 16 }, { 208, 16 }, { 224, 16 },
103 { 2, 32 }, { 20, 32 }, { 36, 32 }, { 52, 32 }, { 68, 32 }, { 84, 32 }, { 100, 32 }, { 116, 32 }, { 132, 32 }, { 148, 32 }, { 164, 32 }, { 180, 32 }, { 202, 32 }, { 224, 32 },
104 { 0, 48 }, { 16, 48 }, { 32, 48 }, { 48, 48 }, { 64, 48 }, { 80, 48 }, { 96, 48 }, { 112, 48 }, { 128, 48 }, { 144, 48 }, { 160, 48 }, { 176, 48 }, { 192, 48 }, { 208, 48 }, { 224, 48 },
105 { 0, 64 }, { 20, 64 }, { 40, 64 }, { 60, 64 }, { 95, 64 }, { 132, 64 }, { 152, 64 }, { 172, 64 }, { 192, 64 }, { 208, 64 }, { 224, 64 }
106}, {
107 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
108 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
109 0, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
110 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1,
111 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
112 }
113};
114
115
116#endif 93#endif
117 94
118bool rgb_matrix_indicators_kb(void) { 95bool rgb_matrix_indicators_kb(void) {