aboutsummaryrefslogtreecommitdiff
path: root/keyboards/handwired
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/handwired')
-rw-r--r--keyboards/handwired/alcor_dactyl/config.h20
-rw-r--r--keyboards/handwired/colorlice/colorlice.c39
-rw-r--r--keyboards/handwired/colorlice/keyboard.json71
-rw-r--r--keyboards/handwired/dactyl_manuform_pi_pico/config.h3
-rw-r--r--keyboards/handwired/dygma/raise/ansi/ansi.c41
-rw-r--r--keyboards/handwired/dygma/raise/ansi/keyboard.json136
-rw-r--r--keyboards/handwired/dygma/raise/iso/iso.c39
-rw-r--r--keyboards/handwired/dygma/raise/iso/keyboard.json136
-rw-r--r--keyboards/handwired/hnah108/hnah108.c47
-rw-r--r--keyboards/handwired/hnah108/keyboard.json34
-rw-r--r--keyboards/handwired/hnah40rgb/hnah40rgb.c47
-rw-r--r--keyboards/handwired/hnah40rgb/keyboard.json52
-rw-r--r--keyboards/handwired/hnah40rgb/keymaps/ansi/config.h18
-rw-r--r--keyboards/handwired/onekey/nucleo_f446re/board.h3
-rw-r--r--keyboards/handwired/onekey/nucleo_f446re/mcuconf.h6
-rw-r--r--keyboards/handwired/onekey/nucleo_f446re/readme.md2
-rw-r--r--keyboards/handwired/orbweaver/keyboard.json25
-rw-r--r--keyboards/handwired/orbweaver/orbweaver.c53
-rw-r--r--keyboards/handwired/owlet60/matrix.c144
-rw-r--r--keyboards/handwired/symmetric70_proto/matrix_debug/matrix.c42
-rw-r--r--keyboards/handwired/symmetric70_proto/matrix_fast/matrix.c4
-rw-r--r--keyboards/handwired/tractyl_manuform/4x6_right/4x6_right.c33
-rw-r--r--keyboards/handwired/tractyl_manuform/4x6_right/keyboard.json56
23 files changed, 605 insertions, 446 deletions
diff --git a/keyboards/handwired/alcor_dactyl/config.h b/keyboards/handwired/alcor_dactyl/config.h
index 42c45acdbf..3da8cebf4d 100644
--- a/keyboards/handwired/alcor_dactyl/config.h
+++ b/keyboards/handwired/alcor_dactyl/config.h
@@ -3,26 +3,6 @@
#pragma once
-
-/*
- * Feature disable options
- * These options are also useful to firmware size reduction.
- */
-
-/* disable debug print */
-//#define NO_DEBUG
-
-/* disable print */
-//#define NO_PRINT
-
-/* disable action features */
-//#define NO_ACTION_LAYER
-//#define NO_ACTION_TAPPING
-//#define NO_ACTION_ONESHOT
-
-#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET
-#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 200U
-
#define SERIAL_USART_FULL_DUPLEX
#define SERIAL_USART_TX_PIN GP10
#define SERIAL_USART_RX_PIN GP9
diff --git a/keyboards/handwired/colorlice/colorlice.c b/keyboards/handwired/colorlice/colorlice.c
deleted file mode 100644
index 81e87d8c7a..0000000000
--- a/keyboards/handwired/colorlice/colorlice.c
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Copyright 2019 marhalloweenvt
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "quantum.h"
-
-#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 },
- { 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17, 16, NO_LED },
- { 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, NO_LED, 44, NO_LED },
- { 58, 57, 56, 55, 54, 53, NO_LED, 52, 51, 50, 49, 48, 47, 46, 45, NO_LED},
- { 59, NO_LED, 60, 61, 62, NO_LED, NO_LED,63, NO_LED, NO_LED, 64, 65,66,67, 68, NO_LED }
-}, {
- { 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 }, { 210, 0 }, { 224, 0 },
- { 224, 16 }, { 210, 16 }, { 195, 16 }, { 180, 16 }, { 165, 16 }, { 150, 16 }, { 135, 16 }, { 120, 16 }, { 90, 16 }, { 75, 16 }, { 60, 16 }, { 45, 16 }, { 30, 16 }, { 15, 16 }, { 0, 16 },
- { 0, 32 }, { 15, 32 }, { 30, 32 }, { 45, 32 }, { 60, 32 }, { 75, 32 }, { 90, 32 }, { 135, 32 }, { 150, 32 }, { 165, 32 }, { 180, 32 }, { 195, 32 }, { 210, 32 }, { 224, 32 },
- { 225, 48 }, { 224, 48 }, { 210, 48 }, { 195, 48 }, { 180, 48 }, { 165, 48 }, { 150, 48 }, { 135, 48 }, { 90, 48 }, { 75, 48 }, { 60, 48 }, { 45, 48 }, { 30, 48 }, { 15, 48 },
- { 15, 64 }, { 45, 64 }, { 75, 64 }, { 90, 64 }, { 150, 64 }, { 180, 64 }, { 210, 64 }, { 215, 64 }, { 220, 64 }, { 225, 64 }
-}, {
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
-} };
-#endif
diff --git a/keyboards/handwired/colorlice/keyboard.json b/keyboards/handwired/colorlice/keyboard.json
index b2606afb89..5780f012d5 100644
--- a/keyboards/handwired/colorlice/keyboard.json
+++ b/keyboards/handwired/colorlice/keyboard.json
@@ -57,6 +57,77 @@
"solid_multisplash": true
},
"driver": "ws2812",
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [0, 1], "x": 15, "y": 0, "flags": 1},
+ {"matrix": [0, 2], "x": 30, "y": 0, "flags": 1},
+ {"matrix": [0, 3], "x": 45, "y": 0, "flags": 1},
+ {"matrix": [0, 4], "x": 60, "y": 0, "flags": 1},
+ {"matrix": [0, 5], "x": 75, "y": 0, "flags": 1},
+ {"matrix": [0, 6], "x": 90, "y": 0, "flags": 1},
+ {"matrix": [0, 7], "x": 105, "y": 0, "flags": 1},
+ {"matrix": [0, 8], "x": 120, "y": 0, "flags": 1},
+ {"matrix": [0, 9], "x": 135, "y": 0, "flags": 1},
+ {"matrix": [0, 10], "x": 150, "y": 0, "flags": 1},
+ {"matrix": [0, 11], "x": 165, "y": 0, "flags": 1},
+ {"matrix": [0, 12], "x": 180, "y": 0, "flags": 1},
+ {"matrix": [0, 13], "x": 195, "y": 0, "flags": 1},
+ {"matrix": [0, 14], "x": 210, "y": 0, "flags": 1},
+ {"matrix": [0, 15], "x": 224, "y": 0, "flags": 1},
+ {"matrix": [1, 14], "x": 224, "y": 16, "flags": 1},
+ {"matrix": [1, 13], "x": 210, "y": 16, "flags": 4},
+ {"matrix": [1, 12], "x": 195, "y": 16, "flags": 4},
+ {"matrix": [1, 11], "x": 180, "y": 16, "flags": 4},
+ {"matrix": [1, 10], "x": 165, "y": 16, "flags": 4},
+ {"matrix": [1, 9], "x": 150, "y": 16, "flags": 4},
+ {"matrix": [1, 8], "x": 135, "y": 16, "flags": 4},
+ {"matrix": [1, 7], "x": 120, "y": 16, "flags": 4},
+ {"matrix": [1, 6], "x": 90, "y": 16, "flags": 4},
+ {"matrix": [1, 5], "x": 75, "y": 16, "flags": 4},
+ {"matrix": [1, 4], "x": 60, "y": 16, "flags": 4},
+ {"matrix": [1, 3], "x": 45, "y": 16, "flags": 4},
+ {"matrix": [1, 2], "x": 30, "y": 16, "flags": 4},
+ {"matrix": [1, 1], "x": 15, "y": 16, "flags": 4},
+ {"matrix": [1, 0], "x": 0, "y": 16, "flags": 1},
+ {"matrix": [2, 0], "x": 0, "y": 32, "flags": 1},
+ {"matrix": [2, 1], "x": 15, "y": 32, "flags": 4},
+ {"matrix": [2, 2], "x": 30, "y": 32, "flags": 4},
+ {"matrix": [2, 3], "x": 45, "y": 32, "flags": 4},
+ {"matrix": [2, 4], "x": 60, "y": 32, "flags": 4},
+ {"matrix": [2, 5], "x": 75, "y": 32, "flags": 4},
+ {"matrix": [2, 6], "x": 90, "y": 32, "flags": 4},
+ {"matrix": [2, 7], "x": 135, "y": 32, "flags": 4},
+ {"matrix": [2, 8], "x": 150, "y": 32, "flags": 4},
+ {"matrix": [2, 9], "x": 165, "y": 32, "flags": 4},
+ {"matrix": [2, 10], "x": 180, "y": 32, "flags": 4},
+ {"matrix": [2, 11], "x": 195, "y": 32, "flags": 4},
+ {"matrix": [2, 12], "x": 210, "y": 32, "flags": 4},
+ {"matrix": [2, 14], "x": 224, "y": 32, "flags": 1},
+ {"matrix": [3, 14], "x": 224, "y": 48, "flags": 1},
+ {"matrix": [3, 13], "x": 224, "y": 48, "flags": 4},
+ {"matrix": [3, 12], "x": 210, "y": 48, "flags": 4},
+ {"matrix": [3, 11], "x": 195, "y": 48, "flags": 4},
+ {"matrix": [3, 10], "x": 180, "y": 48, "flags": 4},
+ {"matrix": [3, 9], "x": 165, "y": 48, "flags": 4},
+ {"matrix": [3, 8], "x": 150, "y": 48, "flags": 4},
+ {"matrix": [3, 7], "x": 135, "y": 48, "flags": 4},
+ {"matrix": [3, 5], "x": 90, "y": 48, "flags": 4},
+ {"matrix": [3, 4], "x": 75, "y": 48, "flags": 4},
+ {"matrix": [3, 3], "x": 60, "y": 48, "flags": 4},
+ {"matrix": [3, 2], "x": 45, "y": 48, "flags": 4},
+ {"matrix": [3, 1], "x": 30, "y": 48, "flags": 4},
+ {"matrix": [3, 0], "x": 15, "y": 48, "flags": 1},
+ {"matrix": [4, 0], "x": 15, "y": 64, "flags": 1},
+ {"matrix": [4, 2], "x": 45, "y": 64, "flags": 1},
+ {"matrix": [4, 3], "x": 75, "y": 64, "flags": 1},
+ {"matrix": [4, 4], "x": 90, "y": 64, "flags": 1},
+ {"matrix": [4, 7], "x": 150, "y": 64, "flags": 1},
+ {"matrix": [4, 10], "x": 180, "y": 64, "flags": 1},
+ {"matrix": [4, 11], "x": 210, "y": 64, "flags": 1},
+ {"matrix": [4, 12], "x": 215, "y": 64, "flags": 1},
+ {"matrix": [4, 13], "x": 220, "y": 64, "flags": 1},
+ {"matrix": [4, 14], "x": 224, "y": 64, "flags": 1}
+ ],
"led_flush_limit": 26,
"led_process_limit": 4,
"sleep": true
diff --git a/keyboards/handwired/dactyl_manuform_pi_pico/config.h b/keyboards/handwired/dactyl_manuform_pi_pico/config.h
index c622149a4a..9b5e919b1b 100644
--- a/keyboards/handwired/dactyl_manuform_pi_pico/config.h
+++ b/keyboards/handwired/dactyl_manuform_pi_pico/config.h
@@ -2,8 +2,7 @@
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
-#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET
-#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 200U
+
#define SERIAL_USART_FULL_DUPLEX
#define SERIAL_USART_TX_PIN GP9
#define SERIAL_USART_RX_PIN GP8
diff --git a/keyboards/handwired/dygma/raise/ansi/ansi.c b/keyboards/handwired/dygma/raise/ansi/ansi.c
index 67b84c3bc8..de2b9dedf6 100644
--- a/keyboards/handwired/dygma/raise/ansi/ansi.c
+++ b/keyboards/handwired/dygma/raise/ansi/ansi.c
@@ -38,44 +38,3 @@ const uint8_t led_map[RGB_MATRIX_LED_COUNT] = {
34 + LPH, 35 + LPH, 36 + LPH, 37 + LPH, 38 + LPH, 39 + LPH, 40 + LPH, 41 + LPH, 42 + LPH, 43 + LPH, 44 + LPH, 45 + LPH, 46 + LPH, 47 + LPH, 48 + LPH, 49 + LPH, 50 + LPH, 51 + LPH,
52 + LPH, 53 + LPH, 54 + LPH, 55 + LPH, 56 + LPH, 57 + LPH, 58 + LPH, 59 + LPH, 60 + LPH, 61 + LPH, 62 + LPH, 63 + LPH, 64 + LPH, 65 + LPH, 0xff
};
-
-// taken from "key_led_map" and reformatted
-// ISO & ANSI (ANSI has no LED at 20, but this key can never be pressed so we can have just one map).
-led_config_t g_led_config = { {
- // left hand
- { 0 , 1 , 2 , 3 , 4 , 5 , 6 , NO_LED } ,
- { 7 , 8 , 9 , 10 , 11 , 12 , NO_LED , NO_LED } ,
- { 13 , 14 , 15 , 16 , 17 , 18 , NO_LED , NO_LED } ,
- { 19 , 20 , 21 , 22 , 23 , 24 , 25 , NO_LED } ,
- { 26 , 27 , 28 , 29 , 30 , NO_LED , 31 , 32 } ,
-
- // right hand
- { 33 , 34 , 35 , 36 , 37 , 38 , 39 , NO_LED } ,
- { 40 , 41 , 42 , 43 , 44 , 45 , 46 , 47 } ,
- { 48 , 49 , 50 , 51 , 52 , 53 , 54 , NO_LED } ,
- { 55 , 56 , 57 , 58 , 59 , 60 , NO_LED , NO_LED } ,
- { 61 , 62 , 63 , 64 , 65 , 66 , 67 , 68 }
- }, {
- // generated from the svg image of the keyboard, see create-led-config.js
- {82, 3}, {88, 3}, {94, 3}, {100, 3}, {106, 3}, {112, 3}, {118, 3}, {84, 10}, {91, 10}, {97, 10}, {103, 10}, {109, 10},
- {115, 10}, {84, 16}, {92, 16}, {98, 16}, {104, 16}, {110, 16}, {116, 16}, {85, 22},
- {0, 0},
- {94, 22}, {100, 22}, {106, 22}, {112, 22}, {118, 22}, {83, 28}, {90, 28}, {98, 28}, {106, 28}, {116, 28}, {111, 34},
- {118, 34}, {168, 3}, {159, 3}, {153, 3}, {147, 3}, {141, 3}, {135, 3}, {129, 3}, {168, 16}, {162, 10}, {156, 10},
- {150, 10}, {144, 10}, {139, 10}, {133, 10}, {127, 10}, {170, 10}, {159, 16}, {153, 16}, {147, 16}, {141, 16}, {135, 16},
- {129, 16}, {166, 22}, {154, 22}, {148, 22}, {142, 22}, {136, 22}, {130, 22}, {170, 28}, {163, 28}, {156, 28}, {149, 28},
- {140, 28}, {131, 28}, {136, 34}, {128, 34}, {78, 13}, {78, 6}, {80, 0}, {87, 0}, {95, 0}, {103, 0}, {111, 0}, {119, 0},
- {122, 3}, {121, 9}, {120, 15}, {122, 21}, {123, 27}, {123, 33}, {120, 38}, {116, 42}, {114, 48}, {112, 55}, {109, 61},
- {103, 64}, {96, 64}, {88, 64}, {81, 63}, {76, 60}, {75, 52}, {75, 46}, {74, 38}, {74, 32}, {75, 27}, {77, 21}, {175, 10},
- {175, 4}, {172, 0}, {164, 0}, {157, 0}, {149, 0}, {142, 0}, {134, 0}, {127, 0}, {123, 3}, {122, 8}, {122, 15}, {124, 21},
- {124, 27}, {124, 33}, {126, 38}, {131, 42}, {134, 48}, {135, 55}, {137, 61}, {143, 63}, {150, 63}, {158, 63}, {166, 63},
- {173, 63}, {177, 59}, {178, 49}, {179, 40}, {179, 31}, {177, 25}, {175, 20}, {175, 15}, {123, 54}
- }, {
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 0,
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 4
- }
-};
diff --git a/keyboards/handwired/dygma/raise/ansi/keyboard.json b/keyboards/handwired/dygma/raise/ansi/keyboard.json
index 9abe98fdfa..703ae91244 100644
--- a/keyboards/handwired/dygma/raise/ansi/keyboard.json
+++ b/keyboards/handwired/dygma/raise/ansi/keyboard.json
@@ -6,6 +6,142 @@
"rgb_matrix": true,
"raw": true
},
+ "rgb_matrix": {
+ "layout": [
+ {"matrix": [0, 0], "x": 82, "y": 3, "flags": 4},
+ {"matrix": [0, 1], "x": 88, "y": 3, "flags": 4},
+ {"matrix": [0, 2], "x": 94, "y": 3, "flags": 4},
+ {"matrix": [0, 3], "x": 100, "y": 3, "flags": 4},
+ {"matrix": [0, 4], "x": 106, "y": 3, "flags": 4},
+ {"matrix": [0, 5], "x": 112, "y": 3, "flags": 4},
+ {"matrix": [0, 6], "x": 118, "y": 3, "flags": 4},
+ {"matrix": [1, 0], "x": 84, "y": 10, "flags": 4},
+ {"matrix": [1, 1], "x": 91, "y": 10, "flags": 4},
+ {"matrix": [1, 2], "x": 97, "y": 10, "flags": 4},
+ {"matrix": [1, 3], "x": 103, "y": 10, "flags": 4},
+ {"matrix": [1, 4], "x": 109, "y": 10, "flags": 4},
+ {"matrix": [1, 5], "x": 115, "y": 10, "flags": 4},
+ {"matrix": [2, 0], "x": 84, "y": 16, "flags": 4},
+ {"matrix": [2, 1], "x": 92, "y": 16, "flags": 4},
+ {"matrix": [2, 2], "x": 98, "y": 16, "flags": 4},
+ {"matrix": [2, 3], "x": 104, "y": 16, "flags": 4},
+ {"matrix": [2, 4], "x": 110, "y": 16, "flags": 4},
+ {"matrix": [2, 5], "x": 116, "y": 16, "flags": 4},
+ {"matrix": [3, 0], "x": 85, "y": 22, "flags": 4},
+ {"matrix": [3, 1], "x": 0, "y": 0, "flags": 0},
+ {"matrix": [3, 2], "x": 94, "y": 22, "flags": 4},
+ {"matrix": [3, 3], "x": 100, "y": 22, "flags": 4},
+ {"matrix": [3, 4], "x": 106, "y": 22, "flags": 4},
+ {"matrix": [3, 5], "x": 112, "y": 22, "flags": 4},
+ {"matrix": [3, 6], "x": 118, "y": 22, "flags": 4},
+ {"matrix": [4, 0], "x": 83, "y": 28, "flags": 4},
+ {"matrix": [4, 1], "x": 90, "y": 28, "flags": 4},
+ {"matrix": [4, 2], "x": 98, "y": 28, "flags": 4},
+ {"matrix": [4, 3], "x": 106, "y": 28, "flags": 4},
+ {"matrix": [4, 4], "x": 116, "y": 28, "flags": 4},
+ {"matrix": [4, 6], "x": 111, "y": 34, "flags": 4},
+ {"matrix": [4, 7], "x": 118, "y": 34, "flags": 4},
+ {"matrix": [5, 0], "x": 168, "y": 3, "flags": 4},
+ {"matrix": [5, 1], "x": 159, "y": 3, "flags": 4},
+ {"matrix": [5, 2], "x": 153, "y": 3, "flags": 4},
+ {"matrix": [5, 3], "x": 147, "y": 3, "flags": 4},
+ {"matrix": [5, 4], "x": 141, "y": 3, "flags": 4},
+ {"matrix": [5, 5], "x": 135, "y": 3, "flags": 4},
+ {"matrix": [5, 6], "x": 129, "y": 3, "flags": 4},
+ {"matrix": [6, 0], "x": 168, "y": 16, "flags": 4},
+ {"matrix": [6, 1], "x": 162, "y": 10, "flags": 4},
+ {"matrix": [6, 2], "x": 156, "y": 10, "flags": 4},
+ {"matrix": [6, 3], "x": 150, "y": 10, "flags": 4},
+ {"matrix": [6, 4], "x": 144, "y": 10, "flags": 4},
+ {"matrix": [6, 5], "x": 139, "y": 10, "flags": 4},
+ {"matrix": [6, 6], "x": 133, "y": 10, "flags": 4},
+ {"matrix": [6, 7], "x": 127, "y": 10, "flags": 4},
+ {"matrix": [7, 0], "x": 170, "y": 10, "flags": 4},
+ {"matrix": [7, 1], "x": 159, "y": 16, "flags": 4},
+ {"matrix": [7, 2], "x": 153, "y": 16, "flags": 4},
+ {"matrix": [7, 3], "x": 147, "y": 16, "flags": 4},
+ {"matrix": [7, 4], "x": 141, "y": 16, "flags": 4},
+ {"matrix": [7, 5], "x": 135, "y": 16, "flags": 4},
+ {"matrix": [7, 6], "x": 129, "y": 16, "flags": 4},
+ {"matrix": [8, 0], "x": 166, "y": 22, "flags": 4},
+ {"matrix": [8, 1], "x": 154, "y": 22, "flags": 4},
+ {"matrix": [8, 2], "x": 148, "y": 22, "flags": 4},
+ {"matrix": [8, 3], "x": 142, "y": 22, "flags": 4},
+ {"matrix": [8, 4], "x": 136, "y": 22, "flags": 4},
+ {"matrix": [8, 5], "x": 130, "y": 22, "flags": 4},
+ {"matrix": [9, 0], "x": 170, "y": 28, "flags": 4},
+ {"matrix": [9, 1], "x": 163, "y": 28, "flags": 4},
+ {"matrix": [9, 2], "x": 156, "y": 28, "flags": 4},
+ {"matrix": [9, 3], "x": 149, "y": 28, "flags": 4},
+ {"matrix": [9, 4], "x": 140, "y": 28, "flags": 4},
+ {"matrix": [9, 5], "x": 131, "y": 28, "flags": 4},
+ {"matrix": [9, 6], "x": 136, "y": 34, "flags": 4},
+ {"matrix": [9, 7], "x": 128, "y": 34, "flags": 4},
+ {"x": 78, "y": 13, "flags": 2},
+ {"x": 78, "y": 6, "flags": 2},
+ {"x": 80, "y": 0, "flags": 2},
+ {"x": 87, "y": 0, "flags": 2},
+ {"x": 95, "y": 0, "flags": 2},
+ {"x": 103, "y": 0, "flags": 2},
+ {"x": 111, "y": 0, "flags": 2},
+ {"x": 119, "y": 0, "flags": 2},
+ {"x": 122, "y": 3, "flags": 2},
+ {"x": 121, "y": 9, "flags": 2},
+ {"x": 120, "y": 15, "flags": 2},
+ {"x": 122, "y": 21, "flags": 2},
+ {"x": 123, "y": 27, "flags": 2},
+ {"x": 123, "y": 33, "flags": 2},
+ {"x": 120, "y": 38, "flags": 2},
+ {"x": 116, "y": 42, "flags": 2},
+ {"x": 114, "y": 48, "flags": 2},
+ {"x": 112, "y": 55, "flags": 2},
+ {"x": 109, "y": 61, "flags": 2},
+ {"x": 103, "y": 64, "flags": 2},
+ {"x": 96, "y": 64, "flags": 2},
+ {"x": 88, "y": 64, "flags": 2},
+ {"x": 81, "y": 63, "flags": 2},
+ {"x": 76, "y": 60, "flags": 2},
+ {"x": 75, "y": 52, "flags": 2},
+ {"x": 75, "y": 46, "flags": 2},
+ {"x": 74, "y": 38, "flags": 2},
+ {"x": 74, "y": 32, "flags": 2},
+ {"x": 75, "y": 27, "flags": 2},
+ {"x": 77, "y": 21, "flags": 2},
+ {"x": 175, "y": 10, "flags": 2},
+ {"x": 175, "y": 4, "flags": 2},
+ {"x": 172, "y": 0, "flags": 2},
+ {"x": 164, "y": 0, "flags": 2},
+ {"x": 157, "y": 0, "flags": 2},
+ {"x": 149, "y": 0, "flags": 2},
+ {"x": 142, "y": 0, "flags": 2},
+ {"x": 134, "y": 0, "flags": 2},
+ {"x": 127, "y": 0, "flags": 2},
+ {"x": 123, "y": 3, "flags": 2},
+ {"x": 122, "y": 8, "flags": 2},
+ {"x": 122, "y": 15, "flags": 2},
+ {"x": 124, "y": 21, "flags": 2},
+ {"x": 124, "y": 27, "flags": 2},
+ {"x": 124, "y": 33, "flags": 2},
+ {"x": 126, "y": 38, "flags": 2},
+ {"x": 131, "y": 42, "flags": 2},
+ {"x": 134, "y": 48, "flags": 2},
+ {"x": 135, "y": 55, "flags": 2},
+ {"x": 137, "y": 61, "flags": 2},
+ {"x": 143, "y": 63, "flags": 2},
+ {"x": 150, "y": 63, "flags": 2},
+ {"x": 158, "y": 63, "flags": 2},
+ {"x": 166, "y": 63, "flags": 2},
+ {"x": 173, "y": 63, "flags": 2},
+ {"x": 177, "y": 59, "flags": 2},
+ {"x": 178, "y": 49, "flags": 2},
+ {"x": 179, "y": 40, "flags": 2},
+ {"x": 179, "y": 31, "flags": 2},
+ {"x": 177, "y": 25, "flags": 2},
+ {"x": 175, "y": 20, "flags": 2},
+ {"x": 175, "y": 15, "flags": 2},
+ {"x": 123, "y": 54, "flags": 4}
+ ]
+ },
"layouts": {
"LAYOUT_all": {
"layout": [
diff --git a/keyboards/handwired/dygma/raise/iso/iso.c b/keyboards/handwired/dygma/raise/iso/iso.c
index 9643af7b8c..247a9646df 100644
--- a/keyboards/handwired/dygma/raise/iso/iso.c
+++ b/keyboards/handwired/dygma/raise/iso/iso.c
@@ -38,42 +38,3 @@ const uint8_t led_map[RGB_MATRIX_LED_COUNT] = {
34 + LPH, 35 + LPH, 36 + LPH, 37 + LPH, 38 + LPH, 39 + LPH, 40 + LPH, 41 + LPH, 42 + LPH, 43 + LPH, 44 + LPH, 45 + LPH, 46 + LPH, 47 + LPH, 48 + LPH, 49 + LPH, 50 + LPH, 51 + LPH,
52 + LPH, 53 + LPH, 54 + LPH, 55 + LPH, 56 + LPH, 57 + LPH, 58 + LPH, 59 + LPH, 60 + LPH, 61 + LPH, 62 + LPH, 63 + LPH, 64 + LPH, 65 + LPH, 0xff
};
-
-// taken from "key_led_map" and reformatted
-// ISO & ANSI (ANSI has no LED at 20, but this key can never be pressed so we can have just one map).
-led_config_t g_led_config = { {
- // left hand
- { 0 , 1 , 2 , 3 , 4 , 5 , 6 , NO_LED } ,
- { 7 , 8 , 9 , 10 , 11 , 12 , NO_LED , NO_LED } ,
- { 13 , 14 , 15 , 16 , 17 , 18 , NO_LED , NO_LED } ,
- { 19 , 20 , 21 , 22 , 23 , 24 , 25 , NO_LED } ,
- { 26 , 27 , 28 , 29 , 30 , NO_LED , 31 , 32 } ,
-
- // right hand
- { 33 , 34 , 35 , 36 , 37 , 38 , 39 , NO_LED } ,
- { 40 , 41 , 42 , 43 , 44 , 45 , 46 , 47 } ,
- { 48 , 49 , 50 , 51 , 52 , 53 , 54 , NO_LED } ,
- { 55 , 56 , 57 , 58 , 59 , 60 , NO_LED , NO_LED } ,
- { 61 , 62 , 63 , 64 , 65 , 66 , 67 , 68 }
- }, {
- // generated from the svg image of the keyboard, see create-led-config.js
- {82, 3}, {88, 3}, {94, 3}, {100, 3}, {106, 3}, {112, 3}, {118, 3}, {84, 10}, {91, 10}, {97, 10}, {103, 10}, {109, 10},
- {115, 10}, {84, 16}, {92, 16}, {98, 16}, {104, 16}, {110, 16}, {116, 16}, {82, 22}, {88, 22}, {94, 22}, {100, 22},
- {106, 22}, {112, 22}, {118, 22}, {83, 28}, {90, 28}, {98, 28}, {106, 28}, {116, 28}, {111, 34}, {118, 34}, {168, 3},
- {159, 3}, {153, 3}, {147, 3}, {141, 3}, {135, 3}, {129, 3}, {170, 13}, {162, 10}, {156, 10}, {150, 10}, {144, 10},
- {139, 10}, {133, 10}, {127, 10}, {164, 16}, {158, 16}, {152, 16}, {146, 16}, {140, 16}, {134, 16}, {128, 16}, {166, 22},
- {154, 22}, {148, 22}, {142, 22}, {136, 22}, {130, 22}, {170, 28}, {163, 28}, {156, 28}, {149, 28}, {140, 28}, {131, 28},
- {136, 34}, {128, 34}, {78, 13}, {78, 6}, {80, 0}, {87, 0}, {95, 0}, {103, 0}, {111, 0}, {119, 0}, {122, 3}, {121, 9},
- {120, 15}, {122, 21}, {123, 27}, {123, 33}, {120, 38}, {116, 42}, {114, 48}, {112, 55}, {109, 61}, {103, 64}, {96, 64},
- {88, 64}, {81, 63}, {76, 60}, {75, 52}, {75, 46}, {74, 38}, {74, 32}, {75, 27}, {77, 21}, {175, 10}, {175, 4}, {172, 0},
- {164, 0}, {157, 0}, {149, 0}, {142, 0}, {134, 0}, {127, 0}, {123, 3}, {122, 8}, {122, 15}, {124, 21}, {124, 27}, {124, 33},
- {126, 38}, {131, 42}, {134, 48}, {135, 55}, {137, 61}, {143, 63}, {150, 63}, {158, 63}, {166, 63}, {173, 63}, {177, 59},
- {178, 49}, {179, 40}, {179, 31}, {177, 25}, {175, 20}, {175, 15}, {123, 54}
-
- }, {
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 4
- }
-};
diff --git a/keyboards/handwired/dygma/raise/iso/keyboard.json b/keyboards/handwired/dygma/raise/iso/keyboard.json
index 9abe98fdfa..057851bd8c 100644
--- a/keyboards/handwired/dygma/raise/iso/keyboard.json
+++ b/keyboards/handwired/dygma/raise/iso/keyboard.json
@@ -6,6 +6,142 @@
"rgb_matrix": true,
"raw": true
},
+ "rgb_matrix": {
+ "layout": [
+ {"matrix": [0, 0], "x": 82, "y": 3, "flags": 4},
+ {"matrix": [0, 1], "x": 88, "y": 3, "flags": 4},
+ {"matrix": [0, 2], "x": 94, "y": 3, "flags": 4},
+ {"matrix": [0, 3], "x": 100, "y": 3, "flags": 4},
+ {"matrix": [0, 4], "x": 106, "y": 3, "flags": 4},
+ {"matrix": [0, 5], "x": 112, "y": 3, "flags": 4},
+ {"matrix": [0, 6], "x": 118, "y": 3, "flags": 4},
+ {"matrix": [1, 0], "x": 84, "y": 10, "flags": 4},
+ {"matrix": [1, 1], "x": 91, "y": 10, "flags": 4},
+ {"matrix": [1, 2], "x": 97, "y": 10, "flags": 4},
+ {"matrix": [1, 3], "x": 103, "y": 10, "flags": 4},
+ {"matrix": [1, 4], "x": 109, "y": 10, "flags": 4},
+ {"matrix": [1, 5], "x": 115, "y": 10, "flags": 4},
+ {"matrix": [2, 0], "x": 84, "y": 16, "flags": 4},
+ {"matrix": [2, 1], "x": 92, "y": 16, "flags": 4},
+ {"matrix": [2, 2], "x": 98, "y": 16, "flags": 4},
+ {"matrix": [2, 3], "x": 104, "y": 16, "flags": 4},
+ {"matrix": [2, 4], "x": 110, "y": 16, "flags": 4},
+ {"matrix": [2, 5], "x": 116, "y": 16, "flags": 4},
+ {"matrix": [3, 0], "x": 82, "y": 22, "flags": 4},
+ {"matrix": [3, 1], "x": 88, "y": 22, "flags": 4},
+ {"matrix": [3, 2], "x": 94, "y": 22, "flags": 4},
+ {"matrix": [3, 3], "x": 100, "y": 22, "flags": 4},
+ {"matrix": [3, 4], "x": 106, "y": 22, "flags": 4},
+ {"matrix": [3, 5], "x": 112, "y": 22, "flags": 4},
+ {"matrix": [3, 6], "x": 118, "y": 22, "flags": 4},
+ {"matrix": [4, 0], "x": 83, "y": 28, "flags": 4},
+ {"matrix": [4, 1], "x": 90, "y": 28, "flags": 4},
+ {"matrix": [4, 2], "x": 98, "y": 28, "flags": 4},
+ {"matrix": [4, 3], "x": 106, "y": 28, "flags": 4},
+ {"matrix": [4, 4], "x": 116, "y": 28, "flags": 4},
+ {"matrix": [4, 6], "x": 111, "y": 34, "flags": 4},
+ {"matrix": [4, 7], "x": 118, "y": 34, "flags": 4},
+ {"matrix": [5, 0], "x": 168, "y": 3, "flags": 4},
+ {"matrix": [5, 1], "x": 159, "y": 3, "flags": 4},
+ {"matrix": [5, 2], "x": 153, "y": 3, "flags": 4},
+ {"matrix": [5, 3], "x": 147, "y": 3, "flags": 4},
+ {"matrix": [5, 4], "x": 141, "y": 3, "flags": 4},
+ {"matrix": [5, 5], "x": 135, "y": 3, "flags": 4},
+ {"matrix": [5, 6], "x": 129, "y": 3, "flags": 4},
+ {"matrix": [6, 0], "x": 170, "y": 13, "flags": 4},
+ {"matrix": [6, 1], "x": 162, "y": 10, "flags": 4},
+ {"matrix": [6, 2], "x": 156, "y": 10, "flags": 4},
+ {"matrix": [6, 3], "x": 150, "y": 10, "flags": 4},
+ {"matrix": [6, 4], "x": 144, "y": 10, "flags": 4},
+ {"matrix": [6, 5], "x": 139, "y": 10, "flags": 4},
+ {"matrix": [6, 6], "x": 133, "y": 10, "flags": 4},
+ {"matrix": [6, 7], "x": 127, "y": 10, "flags": 4},
+ {"matrix": [7, 0], "x": 164, "y": 16, "flags": 4},
+ {"matrix": [7, 1], "x": 158, "y": 16, "flags": 4},
+ {"matrix": [7, 2], "x": 152, "y": 16, "flags": 4},
+ {"matrix": [7, 3], "x": 146, "y": 16, "flags": 4},
+ {"matrix": [7, 4], "x": 140, "y": 16, "flags": 4},
+ {"matrix": [7, 5], "x": 134, "y": 16, "flags": 4},
+ {"matrix": [7, 6], "x": 128, "y": 16, "flags": 4},
+ {"matrix": [8, 0], "x": 166, "y": 22, "flags": 4},
+ {"matrix": [8, 1], "x": 154, "y": 22, "flags": 4},
+ {"matrix": [8, 2], "x": 148, "y": 22, "flags": 4},
+ {"matrix": [8, 3], "x": 142, "y": 22, "flags": 4},
+ {"matrix": [8, 4], "x": 136, "y": 22, "flags": 4},
+ {"matrix": [8, 5], "x": 130, "y": 22, "flags": 4},
+ {"matrix": [9, 0], "x": 170, "y": 28, "flags": 4},
+ {"matrix": [9, 1], "x": 163, "y": 28, "flags": 4},
+ {"matrix": [9, 2], "x": 156, "y": 28, "flags": 4},
+ {"matrix": [9, 3], "x": 149, "y": 28, "flags": 4},
+ {"matrix": [9, 4], "x": 140, "y": 28, "flags": 4},
+ {"matrix": [9, 5], "x": 131, "y": 28, "flags": 4},
+ {"matrix": [9, 6], "x": 136, "y": 34, "flags": 4},
+ {"matrix": [9, 7], "x": 128, "y": 34, "flags": 4},
+ {"x": 78, "y": 13, "flags": 2},
+ {"x": 78, "y": 6, "flags": 2},
+ {"x": 80, "y": 0, "flags": 2},
+ {"x": 87, "y": 0, "flags": 2},
+ {"x": 95, "y": 0, "flags": 2},
+ {"x": 103, "y": 0, "flags": 2},
+ {"x": 111, "y": 0, "flags": 2},
+ {"x": 119, "y": 0, "flags": 2},
+ {"x": 122, "y": 3, "flags": 2},
+ {"x": 121, "y": 9, "flags": 2},
+ {"x": 120, "y": 15, "flags": 2},
+ {"x": 122, "y": 21, "flags": 2},
+ {"x": 123, "y": 27, "flags": 2},
+ {"x": 123, "y": 33, "flags": 2},
+ {"x": 120, "y": 38, "flags": 2},
+ {"x": 116, "y": 42, "flags": 2},
+ {"x": 114, "y": 48, "flags": 2},
+ {"x": 112, "y": 55, "flags": 2},
+ {"x": 109, "y": 61, "flags": 2},
+ {"x": 103, "y": 64, "flags": 2},
+ {"x": 96, "y": 64, "flags": 2},
+ {"x": 88, "y": 64, "flags": 2},
+ {"x": 81, "y": 63, "flags": 2},
+ {"x": 76, "y": 60, "flags": 2},
+ {"x": 75, "y": 52, "flags": 2},
+ {"x": 75, "y": 46, "flags": 2},
+ {"x": 74, "y": 38, "flags": 2},
+ {"x": 74, "y": 32, "flags": 2},
+ {"x": 75, "y": 27, "flags": 2},
+ {"x": 77, "y": 21, "flags": 2},
+ {"x": 175, "y": 10, "flags": 2},
+ {"x": 175, "y": 4, "flags": 2},
+ {"x": 172, "y": 0, "flags": 2},
+ {"x": 164, "y": 0, "flags": 2},
+ {"x": 157, "y": 0, "flags": 2},
+ {"x": 149, "y": 0, "flags": 2},
+ {"x": 142, "y": 0, "flags": 2},
+ {"x": 134, "y": 0, "flags": 2},
+ {"x": 127, "y": 0, "flags": 2},
+ {"x": 123, "y": 3, "flags": 2},
+ {"x": 122, "y": 8, "flags": 2},
+ {"x": 122, "y": 15, "flags": 2},
+ {"x": 124, "y": 21, "flags": 2},
+ {"x": 124, "y": 27, "flags": 2},
+ {"x": 124, "y": 33, "flags": 2},
+ {"x": 126, "y": 38, "flags": 2},
+ {"x": 131, "y": 42, "flags": 2},
+ {"x": 134, "y": 48, "flags": 2},
+ {"x": 135, "y": 55, "flags": 2},
+ {"x": 137, "y": 61, "flags": 2},
+ {"x": 143, "y": 63, "flags": 2},
+ {"x": 150, "y": 63, "flags": 2},
+ {"x": 158, "y": 63, "flags": 2},
+ {"x": 166, "y": 63, "flags": 2},
+ {"x": 173, "y": 63, "flags": 2},
+ {"x": 177, "y": 59, "flags": 2},
+ {"x": 178, "y": 49, "flags": 2},
+ {"x": 179, "y": 40, "flags": 2},
+ {"x": 179, "y": 31, "flags": 2},
+ {"x": 177, "y": 25, "flags": 2},
+ {"x": 175, "y": 20, "flags": 2},
+ {"x": 175, "y": 15, "flags": 2},
+ {"x": 123, "y": 54, "flags": 4}
+ ]
+ },
"layouts": {
"LAYOUT_all": {
"layout": [
diff --git a/keyboards/handwired/hnah108/hnah108.c b/keyboards/handwired/hnah108/hnah108.c
deleted file mode 100644
index fde7b16564..0000000000
--- a/keyboards/handwired/hnah108/hnah108.c
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Copyright 2019 HnahKB
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "quantum.h"
-
-#ifdef RGB_MATRIX_ENABLE
-led_config_t g_led_config = {
- {
- // Key Matrix to LED Index
- { 18, 17, 16, NO_LED, 15, 14, NO_LED, NO_LED, 13, 12, NO_LED },
- { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED },
- { 19, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED },
- { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED },
- { 20, NO_LED, NO_LED, NO_LED, NO_LED, 24, NO_LED, NO_LED, 26, NO_LED, NO_LED },
- { 21, 22, 23, 25, 27, NO_LED, 28, 29, NO_LED, 0, 1 },
- { 11, 10, NO_LED, 9, NO_LED, 8, NO_LED, 7, 6, NO_LED, 5 },
- { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, 4 },
- { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, 3 },
- { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, 2 }
- }, {
- // LED Index to Physical Position
- { 0, 0 }, { 18, 0 }, { 37, 0 }, { 56, 0 }, { 74, 0 }, { 93, 0 }, { 112, 0 }, { 130, 0 }, { 149, 0 }, { 168, 0 }, { 186, 0 }, { 205, 0 }, { 224, 0 },
- { 0, 25 }, { 224, 25 },
- { 0, 51 }, { 224, 51 },
- { 0, 63 }, { 18, 63 }, { 37, 63 }, { 56, 63 }, { 74, 63 }, { 93, 63 }, { 112, 63 }, { 130, 63 }, { 149, 63 }, { 168, 63 }, { 186, 63 }, { 205, 63 }, { 224, 63 }
- }, {
- // LED Index to Flag
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1,
- 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
- }
-};
-#endif
diff --git a/keyboards/handwired/hnah108/keyboard.json b/keyboards/handwired/hnah108/keyboard.json
index a02a70173c..808fd9eb24 100644
--- a/keyboards/handwired/hnah108/keyboard.json
+++ b/keyboards/handwired/hnah108/keyboard.json
@@ -51,7 +51,39 @@
"solid_splash": true,
"solid_multisplash": true
},
- "driver": "ws2812"
+ "driver": "ws2812",
+ "layout": [
+ {"matrix": [5, 9], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [5, 10], "x": 18, "y": 0, "flags": 1},
+ {"matrix": [9, 10], "x": 37, "y": 0, "flags": 1},
+ {"matrix": [8, 10], "x": 56, "y": 0, "flags": 1},
+ {"matrix": [7, 10], "x": 74, "y": 0, "flags": 1},
+ {"matrix": [6, 10], "x": 93, "y": 0, "flags": 1},
+ {"matrix": [6, 8], "x": 112, "y": 0, "flags": 1},
+ {"matrix": [6, 7], "x": 130, "y": 0, "flags": 1},
+ {"matrix": [6, 5], "x": 149, "y": 0, "flags": 1},
+ {"matrix": [6, 3], "x": 168, "y": 0, "flags": 1},
+ {"matrix": [6, 1], "x": 186, "y": 0, "flags": 1},
+ {"matrix": [6, 0], "x": 205, "y": 0, "flags": 1},
+ {"matrix": [0, 9], "x": 224, "y": 0, "flags": 1},
+ {"matrix": [0, 8], "x": 0, "y": 25, "flags": 1},
+ {"matrix": [0, 5], "x": 224, "y": 25, "flags": 1},
+ {"matrix": [0, 4], "x": 0, "y": 51, "flags": 1},
+ {"matrix": [0, 2], "x": 224, "y": 51, "flags": 1},
+ {"matrix": [0, 1], "x": 0, "y": 63, "flags": 1},
+ {"matrix": [0, 0], "x": 18, "y": 63, "flags": 1},
+ {"matrix": [2, 0], "x": 37, "y": 63, "flags": 1},
+ {"matrix": [4, 0], "x": 56, "y": 63, "flags": 1},
+ {"matrix": [5, 0], "x": 74, "y": 63, "flags": 1},
+ {"matrix": [5, 1], "x": 93, "y": 63, "flags": 1},
+ {"matrix": [5, 2], "x": 112, "y": 63, "flags": 1},
+ {"matrix": [4, 5], "x": 130, "y": 63, "flags": 1},
+ {"matrix": [5, 3], "x": 149, "y": 63, "flags": 1},
+ {"matrix": [4, 8], "x": 168, "y": 63, "flags": 1},
+ {"matrix": [5, 4], "x": 186, "y": 63, "flags": 1},
+ {"matrix": [5, 6], "x": 205, "y": 63, "flags": 1},
+ {"matrix": [5, 7], "x": 224, "y": 63, "flags": 1}
+ ]
},
"features": {
"backlight": true,
diff --git a/keyboards/handwired/hnah40rgb/hnah40rgb.c b/keyboards/handwired/hnah40rgb/hnah40rgb.c
deleted file mode 100644
index 1f877975e5..0000000000
--- a/keyboards/handwired/hnah40rgb/hnah40rgb.c
+++ /dev/null
@@ -1,47 +0,0 @@
-#include "quantum.h"
-#ifdef RGB_MATRIX_ENABLE
-#if defined (ansi)
-led_config_t g_led_config = { {
- //Key Matrix to LED Index
- {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10},
- {22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12 },
- {23, 24, 25, 26, 27, 28, 29, 30, 31, NO_LED, 34},
- {43, 42, 41, NO_LED, NO_LED, NO_LED, 38, NO_LED, 36, 35, 11}
-}, {
- //LED Index to Physical Positon
- { 0, 0}, { 20, 0}, { 40, 0 }, { 61, 0 }, { 81, 0}, { 101, 0}, { 122, 0}, { 142, 0}, { 162, 0}, { 183, 0}, { 224, 0}, { 224, 0},
- {224, 21}, {183, 21}, {162,21 }, {142, 21}, {122,21}, { 101,21}, { 81 ,21}, { 61 ,21}, { 40 ,21}, { 20 ,21}, { 0 ,21},
- { 0, 42}, { 20, 42}, { 40,42 }, { 61, 42}, { 81,42}, { 101,42}, { 122,42}, { 142,42}, { 162,42}, { 183,42}, { 224,42},
- {224, 64}, {224, 64}, {181,64 }, {162, 64}, {122,64}, {101,64}, { 61,64}, { 40,64}, { 20,64}, { 0,64},
- { 0,64}, { 0,0}, { 224,10}, { 224,18}, { 224,30}, { 224,47},
-}, {
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1,
-} };
-
-#else
-led_config_t g_led_config = { {
- //Key Matrix to LED Index
- {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10},
- {22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12 },
- {23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 34},
- {43, 42, 41, NO_LED, 40, 39, 38, 37, 36, 35, 11}
-}, {
- //LED Index to Physical Positon
- { 0, 0}, { 20, 0}, { 40, 0 }, { 61, 0 }, { 81, 0}, { 101, 0}, { 122, 0}, { 142, 0}, { 162, 0}, { 183, 0}, { 224, 0}, { 224, 0},
- {224, 21}, {183, 21}, {162,21 }, {142, 21}, {122,21}, { 101,21}, { 81 ,21}, { 61 ,21}, { 40 ,21}, { 20 ,21}, { 0 ,21},
- { 0, 42}, { 20, 42}, { 40,42 }, { 61, 42}, { 81,42}, { 101,42}, { 122,42}, { 142,42}, { 162,42}, { 183,42}, { 224,42},
- {224, 64}, {224, 64}, {181,64 }, {162, 64}, {122,64}, {101,64}, { 61,64}, { 40,64}, { 20,64}, { 0,64},
- { 0,64}, { 0,0}, { 224,10}, { 224,18}, { 224,30}, { 224,47},
-}, {
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1,
-} };
-#endif
-#endif \ No newline at end of file
diff --git a/keyboards/handwired/hnah40rgb/keyboard.json b/keyboards/handwired/hnah40rgb/keyboard.json
index 6f13b70095..ec824ea14f 100644
--- a/keyboards/handwired/hnah40rgb/keyboard.json
+++ b/keyboards/handwired/hnah40rgb/keyboard.json
@@ -60,6 +60,58 @@
"animation": "cycle_pinwheel"
},
"driver": "ws2812",
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [0, 1], "x": 20, "y": 0, "flags": 4},
+ {"matrix": [0, 2], "x": 40, "y": 0, "flags": 4},
+ {"matrix": [0, 3], "x": 61, "y": 0, "flags": 4},
+ {"matrix": [0, 4], "x": 81, "y": 0, "flags": 4},
+ {"matrix": [0, 5], "x": 101, "y": 0, "flags": 4},
+ {"matrix": [0, 6], "x": 122, "y": 0, "flags": 4},
+ {"matrix": [0, 7], "x": 142, "y": 0, "flags": 4},
+ {"matrix": [0, 8], "x": 162, "y": 0, "flags": 4},
+ {"matrix": [0, 9], "x": 183, "y": 0, "flags": 4},
+ {"matrix": [0, 10], "x": 224, "y": 0, "flags": 4},
+ {"matrix": [3, 10], "x": 224, "y": 0, "flags": 1},
+ {"matrix": [1, 10], "x": 224, "y": 21, "flags": 1},
+ {"matrix": [1, 9], "x": 183, "y": 21, "flags": 4},
+ {"matrix": [1, 8], "x": 162, "y": 21, "flags": 4},
+ {"matrix": [1, 7], "x": 142, "y": 21, "flags": 4},
+ {"matrix": [1, 6], "x": 122, "y": 21, "flags": 4},
+ {"matrix": [1, 5], "x": 101, "y": 21, "flags": 4},
+ {"matrix": [1, 4], "x": 81, "y": 21, "flags": 4},
+ {"matrix": [1, 3], "x": 61, "y": 21, "flags": 4},
+ {"matrix": [1, 2], "x": 40, "y": 21, "flags": 4},
+ {"matrix": [1, 1], "x": 20, "y": 21, "flags": 4},
+ {"matrix": [1, 0], "x": 0, "y": 21, "flags": 1},
+ {"matrix": [2, 0], "x": 0, "y": 42, "flags": 1},
+ {"matrix": [2, 1], "x": 20, "y": 42, "flags": 4},
+ {"matrix": [2, 2], "x": 40, "y": 42, "flags": 4},
+ {"matrix": [2, 3], "x": 61, "y": 42, "flags": 4},
+ {"matrix": [2, 4], "x": 81, "y": 42, "flags": 4},
+ {"matrix": [2, 5], "x": 101, "y": 42, "flags": 4},
+ {"matrix": [2, 6], "x": 122, "y": 42, "flags": 4},
+ {"matrix": [2, 7], "x": 142, "y": 42, "flags": 4},
+ {"matrix": [2, 8], "x": 162, "y": 42, "flags": 4},
+ {"matrix": [2, 9], "x": 183, "y": 42, "flags": 4},
+ {"x": 224, "y": 42, "flags": 1},
+ {"matrix": [2, 10], "x": 224, "y": 64, "flags": 1},
+ {"matrix": [3, 9], "x": 224, "y": 64, "flags": 1},
+ {"matrix": [3, 8], "x": 181, "y": 64, "flags": 1},
+ {"matrix": [3, 7], "x": 162, "y": 64, "flags": 1},
+ {"matrix": [3, 6], "x": 122, "y": 64, "flags": 1},
+ {"matrix": [3, 5], "x": 101, "y": 64, "flags": 1},
+ {"matrix": [3, 4], "x": 61, "y": 64, "flags": 1},
+ {"matrix": [3, 2], "x": 40, "y": 64, "flags": 1},
+ {"matrix": [3, 1], "x": 20, "y": 64, "flags": 1},
+ {"matrix": [3, 0], "x": 0, "y": 64, "flags": 1},
+ {"x": 0, "y": 64, "flags": 1},
+ {"x": 0, "y": 0, "flags": 1},
+ {"x": 224, "y": 10, "flags": 1},
+ {"x": 224, "y": 18, "flags": 1},
+ {"x": 224, "y": 30, "flags": 1},
+ {"x": 224, "y": 47, "flags": 1}
+ ],
"max_brightness": 200,
"react_on_keyup": true
},
diff --git a/keyboards/handwired/hnah40rgb/keymaps/ansi/config.h b/keyboards/handwired/hnah40rgb/keymaps/ansi/config.h
deleted file mode 100644
index 66cd76a901..0000000000
--- a/keyboards/handwired/hnah40rgb/keymaps/ansi/config.h
+++ /dev/null
@@ -1,18 +0,0 @@
-/* Copyright 2019 HnahKB
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-#define ansi \ No newline at end of file
diff --git a/keyboards/handwired/onekey/nucleo_f446re/board.h b/keyboards/handwired/onekey/nucleo_f446re/board.h
index 0c5f4dde79..54c93c551a 100644
--- a/keyboards/handwired/onekey/nucleo_f446re/board.h
+++ b/keyboards/handwired/onekey/nucleo_f446re/board.h
@@ -4,6 +4,5 @@
#include_next <board.h>
-#undef STM32_HSECLK
-#define STM32_HSECLK 8000000U
+// Configure clocks to use onboard STLINKs MCO as HSE is not populated by default
#define STM32_HSE_BYPASS
diff --git a/keyboards/handwired/onekey/nucleo_f446re/mcuconf.h b/keyboards/handwired/onekey/nucleo_f446re/mcuconf.h
index 701d61d31d..ba463bf4f7 100644
--- a/keyboards/handwired/onekey/nucleo_f446re/mcuconf.h
+++ b/keyboards/handwired/onekey/nucleo_f446re/mcuconf.h
@@ -4,12 +4,6 @@
#include_next <mcuconf.h>
-#undef STM32_PLLM_VALUE
-#define STM32_PLLM_VALUE 4
-
-#undef STM32_PLLSAIM_VALUE
-#define STM32_PLLSAIM_VALUE 4
-
#undef STM32_ADC_USE_ADC1
#define STM32_ADC_USE_ADC1 TRUE
diff --git a/keyboards/handwired/onekey/nucleo_f446re/readme.md b/keyboards/handwired/onekey/nucleo_f446re/readme.md
index b0645b65fe..71a5e48184 100644
--- a/keyboards/handwired/onekey/nucleo_f446re/readme.md
+++ b/keyboards/handwired/onekey/nucleo_f446re/readme.md
@@ -1,4 +1,4 @@
-# STM32 Nucleo-L432 onekey
+# STM32 Nucleo-F446 onekey
To trigger keypress, short together pins *A0* and *A1*. Note that the pin numbering is relative to the MCU, so that A0 and A1 refer to PA0 and PA1 on the MCU (which are also labelled A0 and A1 on the board, but this isn't true for the other PAx pins).
diff --git a/keyboards/handwired/orbweaver/keyboard.json b/keyboards/handwired/orbweaver/keyboard.json
index 73baa9a21d..0061c79ba2 100644
--- a/keyboards/handwired/orbweaver/keyboard.json
+++ b/keyboards/handwired/orbweaver/keyboard.json
@@ -12,8 +12,29 @@
"rgb_matrix": true
},
"rgb_matrix": {
- "center_point": [40, 30],
- "driver": "is31fl3731"
+ "driver": "is31fl3731",
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 4},
+ {"x": 56, "y": 0, "flags": 4},
+ {"matrix": [0, 1], "x": 112, "y": 0, "flags": 4},
+ {"matrix": [0, 2], "x": 168, "y": 0, "flags": 4},
+ {"matrix": [0, 3], "x": 224, "y": 0, "flags": 4},
+ {"matrix": [0, 4], "x": 0, "y": 20, "flags": 4},
+ {"matrix": [1, 0], "x": 56, "y": 20, "flags": 4},
+ {"matrix": [1, 1], "x": 112, "y": 20, "flags": 4},
+ {"matrix": [1, 2], "x": 168, "y": 20, "flags": 4},
+ {"matrix": [1, 3], "x": 224, "y": 20, "flags": 4},
+ {"matrix": [1, 4], "x": 0, "y": 40, "flags": 4},
+ {"matrix": [2, 0], "x": 56, "y": 40, "flags": 4},
+ {"matrix": [2, 1], "x": 112, "y": 40, "flags": 4},
+ {"matrix": [2, 2], "x": 168, "y": 40, "flags": 4},
+ {"matrix": [2, 3], "x": 224, "y": 40, "flags": 4},
+ {"matrix": [2, 4], "x": 0, "y": 60, "flags": 4},
+ {"matrix": [3, 0], "x": 56, "y": 60, "flags": 4},
+ {"matrix": [3, 1], "x": 112, "y": 60, "flags": 4},
+ {"matrix": [3, 2], "x": 168, "y": 60, "flags": 4},
+ {"matrix": [3, 4], "x": 224, "y": 60, "flags": 4}
+ ]
},
"matrix_pins": {
"rows": ["GP4", "GP5", "GP6", "GP7", "GP8", "GP9"],
diff --git a/keyboards/handwired/orbweaver/orbweaver.c b/keyboards/handwired/orbweaver/orbweaver.c
index f89d1ca363..8c23818eea 100644
--- a/keyboards/handwired/orbweaver/orbweaver.c
+++ b/keyboards/handwired/orbweaver/orbweaver.c
@@ -15,10 +15,10 @@
//
// SPDX-License-Identifier: GPL-2.0-or-later
-// This IS31FL3731 configuration is for a Razer Orbweaver Chroma.
-// It was reverse-engineered by testing all possible Cx_y combinations (144 total),
+// This IS31FL3731 configuration is for a Razer Orbweaver Chroma.
+// It was reverse-engineered by testing all possible Cx_y combinations (144 total),
// and determining which ones addressed individual diodes (60 total). These were then
-// placed in order R-G-B, sweeping left to right, and then top to bottom.
+// placed in order R-G-B, sweeping left to right, and then top to bottom.
#include "rgb_matrix.h"
@@ -30,55 +30,24 @@ const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
* | | | B location
* | | | | */
{0, C9_1, C8_1, C7_1}, //top left key.
- {0, C9_2, C8_2, C7_2},
+ {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}, //top right key.
+ {0, C9_5, C8_5, C7_5}, //top right key.
{0, C9_6, C8_6, C7_6},
- {0, C9_7, C8_7, C6_6},
+ {0, C9_7, C8_7, C6_6},
{0, C9_8, C7_7, C6_7},
- {0, C1_8, C2_8, C3_8},
+ {0, C1_8, C2_8, C3_8},
{0, C1_7, C2_7, C3_7},
{0, C1_6, C2_6, C3_6},
- {0, C1_5, C2_5, C3_5},
- {0, C1_4, C2_4, C3_4},
- {0, C1_3, C2_3, C3_3},
+ {0, C1_5, C2_5, C3_5},
+ {0, C1_4, C2_4, C3_4},
+ {0, C1_3, C2_3, C3_3},
{0, C1_2, C2_2, C4_3},
{0, C1_1, C3_2, C4_2}, //lower left key
- {0, C9_9, C8_9, C7_9},
+ {0, C9_9, C8_9, C7_9},
{0, C9_10, C8_10, C7_10},
{0, C9_11, C8_11, C7_11},
{0, C9_12, C8_12, C7_12} //lower right key
};
-
-led_config_t g_led_config = {
- // Matrix location to LED index
- {
- { 0, 2, 3, 4, 5 },
- { 6, 7, 8, 9, 10 },
- { 11, 12, 13, 14, 15 },
- { 16, 17, 18, 19, 19 },
- { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED },
- { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }
- },
-
- // LED index to physical location
- {
- {0,0}, {20,0}, {40,0}, {60,0}, {80,0},
- {0,20}, {20,20}, {40,20}, {60,20}, {80,20},
- {0,40}, {20,40}, {40,40}, {60,40}, {80,40},
- {0,60}, {20,60}, {40,60}, {60,60}, {80,60}
- },
-
- // LED index to flags
- {
- 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4
- }
- };
-
-
-
diff --git a/keyboards/handwired/owlet60/matrix.c b/keyboards/handwired/owlet60/matrix.c
index 7ef5d66a9f..2017b4de85 100644
--- a/keyboards/handwired/owlet60/matrix.c
+++ b/keyboards/handwired/owlet60/matrix.c
@@ -29,82 +29,62 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "timer.h"
#if (MATRIX_COLS <= 8)
-# define print_matrix_header() print("\nr/c 01234567\n")
-# define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row))
+# define print_matrix_header() print("\nr/c 01234567\n")
+# define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row))
# define ROW_SHIFTER ((uint8_t)1)
#elif (MATRIX_COLS <= 16)
-# define print_matrix_header() print("\nr/c 0123456789ABCDEF\n")
-# define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row))
+# define print_matrix_header() print("\nr/c 0123456789ABCDEF\n")
+# define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row))
# define ROW_SHIFTER ((uint16_t)1)
#elif (MATRIX_COLS <= 32)
-# define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n")
-# define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row))
-# define ROW_SHIFTER ((uint32_t)1)
+# define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n")
+# define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row))
+# define ROW_SHIFTER ((uint32_t)1)
#endif
static const uint8_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS;
-static const uint8_t col_select_pins[3] = MATRIX_COL_SELECT_PINS;
-static const uint8_t dat_pin = MATRIX_COL_DATA_PIN;
+static const uint8_t col_select_pins[3] = MATRIX_COL_SELECT_PINS;
+static const uint8_t dat_pin = MATRIX_COL_DATA_PIN;
/* matrix state(1:on, 0:off) */
-static matrix_row_t raw_matrix[MATRIX_ROWS]; //raw values
-static matrix_row_t matrix[MATRIX_ROWS]; //raw values
+static matrix_row_t raw_matrix[MATRIX_ROWS]; // raw values
+static matrix_row_t matrix[MATRIX_ROWS]; // raw values
/* 2d array containing binary representation of its index */
static const uint8_t num_in_binary[8][3] = {
- {0, 0, 0},
- {0, 0, 1},
- {0, 1, 0},
- {0, 1, 1},
- {1, 0, 0},
- {1, 0, 1},
- {1, 1, 0},
- {1, 1, 1},
+ {0, 0, 0}, {0, 0, 1}, {0, 1, 0}, {0, 1, 1}, {1, 0, 0}, {1, 0, 1}, {1, 1, 0}, {1, 1, 1},
};
static void select_col_analog(uint8_t col);
static void mux_pin_control(const uint8_t binary[]);
-void debounce_init(uint8_t num_rows);
-void debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool changed);
+void debounce_init(void);
+void debounce(matrix_row_t raw[], matrix_row_t cooked[], bool changed);
+__attribute__((weak)) void matrix_init_user(void) {}
-__attribute__ ((weak))
-void matrix_init_user(void) {}
+__attribute__((weak)) void matrix_scan_user(void) {}
-__attribute__ ((weak))
-void matrix_scan_user(void) {}
-
-__attribute__ ((weak))
-void matrix_init_kb(void) {
- matrix_init_user();
+__attribute__((weak)) void matrix_init_kb(void) {
+ matrix_init_user();
}
-__attribute__ ((weak))
-void matrix_scan_kb(void) {
- matrix_scan_user();
+__attribute__((weak)) void matrix_scan_kb(void) {
+ matrix_scan_user();
}
-inline
-uint8_t matrix_rows(void)
-{
+inline uint8_t matrix_rows(void) {
return MATRIX_ROWS;
}
-inline
-uint8_t matrix_cols(void)
-{
+inline uint8_t matrix_cols(void) {
return MATRIX_COLS;
}
-inline
-bool matrix_is_on(uint8_t row, uint8_t col)
-{
- return (matrix[row] & ((matrix_row_t)1<<col));
+inline bool matrix_is_on(uint8_t row, uint8_t col) {
+ return (matrix[row] & ((matrix_row_t)1 << col));
}
-inline
-matrix_row_t matrix_get_row(uint8_t row)
-{
+inline matrix_row_t matrix_get_row(uint8_t row) {
// Matrix mask lets you disable switches in the returned matrix data. For example, if you have a
// switch blocker installed and the switch is always pressed.
#ifdef MATRIX_MASKED
@@ -114,48 +94,44 @@ matrix_row_t matrix_get_row(uint8_t row)
#endif
}
-void matrix_print(void)
-{
+void matrix_print(void) {
print_matrix_header();
for (uint8_t row = 0; row < MATRIX_ROWS; row++) {
- print_hex8(row); print(": ");
+ print_hex8(row);
+ print(": ");
print_matrix_row(row);
print("\n");
}
}
// uses standard row code
-static void select_row(uint8_t row)
-{
+static void select_row(uint8_t row) {
gpio_set_pin_output(row_pins[row]);
gpio_write_pin_low(row_pins[row]);
}
-static void unselect_row(uint8_t row)
-{
+static void unselect_row(uint8_t row) {
gpio_set_pin_input_high(row_pins[row]);
}
-static void unselect_rows(void)
-{
- for(uint8_t x = 0; x < MATRIX_ROWS; x++) {
+static void unselect_rows(void) {
+ for (uint8_t x = 0; x < MATRIX_ROWS; x++) {
gpio_set_pin_input_high(row_pins[x]);
}
}
-static void init_pins(void) { // still need some fixing, this might not work
- unselect_rows(); // with the loop
- /*
- for (uint8_t x = 0; x < MATRIX_COLS; x++) {
- gpio_set_pin_input_high(col_pins[x]);
- }
- */
- gpio_set_pin_input_high(dat_pin);
+static void init_pins(void) { // still need some fixing, this might not work
+ unselect_rows(); // with the loop
+ /*
+ for (uint8_t x = 0; x < MATRIX_COLS; x++) {
+ gpio_set_pin_input_high(col_pins[x]);
+ }
+ */
+ gpio_set_pin_input_high(dat_pin);
}
-static bool read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row)
-{
+static bool read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row) {
// Store last value of row prior to reading
matrix_row_t last_row_value = current_matrix[current_row];
@@ -167,15 +143,14 @@ static bool read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row)
wait_us(30);
// For each col...
- for(uint8_t col_index = 0; col_index < MATRIX_COLS; col_index++) {
-
+ for (uint8_t col_index = 0; col_index < MATRIX_COLS; col_index++) {
// Select the col pin to read (active low)
select_col_analog(col_index);
wait_us(30);
uint8_t pin_state = gpio_read_pin(dat_pin);
// Populate the matrix row with the state of the col pin
- current_matrix[current_row] |= pin_state ? 0 : (ROW_SHIFTER << col_index);
+ current_matrix[current_row] |= pin_state ? 0 : (ROW_SHIFTER << col_index);
}
// Unselect row
@@ -184,19 +159,17 @@ static bool read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row)
return (last_row_value != current_matrix[current_row]);
}
-
void matrix_init(void) {
-
// initialize key pins
init_pins();
// initialize matrix state: all keys off
- for (uint8_t i=0; i < MATRIX_ROWS; i++) {
+ for (uint8_t i = 0; i < MATRIX_ROWS; i++) {
raw_matrix[i] = 0;
- matrix[i] = 0;
+ matrix[i] = 0;
}
- debounce_init(MATRIX_ROWS);
+ debounce_init();
matrix_init_kb();
@@ -205,15 +178,14 @@ void matrix_init(void) {
}
// modified for per col read matrix scan
-uint8_t matrix_scan(void)
-{
+uint8_t matrix_scan(void) {
bool changed = false;
for (uint8_t current_row = 0; current_row < MATRIX_ROWS; current_row++) {
changed |= read_cols_on_row(raw_matrix, current_row);
}
- debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
+ debounce(raw_matrix, matrix, changed);
matrix_scan_kb();
return (uint8_t)changed;
@@ -231,7 +203,7 @@ uint8_t matrix_scan(void)
}
#endif
- debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
+ debounce(raw_matrix, matrix, changed);
matrix_scan_kb();
return (uint8_t)changed;
@@ -239,8 +211,7 @@ uint8_t matrix_scan(void)
*/
static void select_col_analog(uint8_t col) {
- switch(col) {
-
+ switch (col) {
case 0:
mux_pin_control(num_in_binary[0]);
break;
@@ -273,26 +244,23 @@ static void select_col_analog(uint8_t col) {
static void mux_pin_control(const uint8_t binary[]) {
// set pin0
gpio_set_pin_output(col_select_pins[0]);
- if(binary[2] == 0) {
+ if (binary[2] == 0) {
gpio_write_pin_low(col_select_pins[0]);
- }
- else {
+ } else {
gpio_write_pin_high(col_select_pins[0]);
}
// set pin1
gpio_set_pin_output(col_select_pins[1]);
- if(binary[1] == 0) {
+ if (binary[1] == 0) {
gpio_write_pin_low(col_select_pins[1]);
- }
- else {
+ } else {
gpio_write_pin_high(col_select_pins[1]);
}
// set pin2
gpio_set_pin_output(col_select_pins[2]);
- if(binary[0] == 0) {
+ if (binary[0] == 0) {
gpio_write_pin_low(col_select_pins[2]);
- }
- else {
+ } else {
gpio_write_pin_high(col_select_pins[2]);
}
}
diff --git a/keyboards/handwired/symmetric70_proto/matrix_debug/matrix.c b/keyboards/handwired/symmetric70_proto/matrix_debug/matrix.c
index fa9b6ef0fd..2fa06ec7ce 100644
--- a/keyboards/handwired/symmetric70_proto/matrix_debug/matrix.c
+++ b/keyboards/handwired/symmetric70_proto/matrix_debug/matrix.c
@@ -44,7 +44,7 @@ static pin_t direct_pins[MATRIX_ROWS][MATRIX_COLS] = DIRECT_PINS;
static const pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS;
static const pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS;
# ifdef MATRIX_MUL_SELECT
-static const pin_t col_sel[MATRIX_COLS] = MATRIX_MUL_SEL;
+static const pin_t col_sel[MATRIX_COLS] = MATRIX_MUL_SEL;
# endif
#endif
@@ -57,8 +57,8 @@ static const uint8_t delay_sel[] = {MATRIX_IO_DELAY_MULSEL};
#endif
/* matrix state(1:on, 0:off) */
-extern matrix_row_t raw_matrix[MATRIX_ROWS]; // raw values
-extern matrix_row_t matrix[MATRIX_ROWS]; // debounced values
+extern matrix_row_t raw_matrix[MATRIX_ROWS]; // raw values
+extern matrix_row_t matrix[MATRIX_ROWS]; // debounced values
static inline void gpio_atomic_set_pin_output_low(pin_t pin) {
ATOMIC_BLOCK_FORCEON {
@@ -68,7 +68,9 @@ static inline void gpio_atomic_set_pin_output_low(pin_t pin) {
}
static inline void gpio_atomic_set_pin_input_high(pin_t pin) {
- ATOMIC_BLOCK_FORCEON { gpio_set_pin_input_high(pin); }
+ ATOMIC_BLOCK_FORCEON {
+ gpio_set_pin_input_high(pin);
+ }
}
// matrix code
@@ -108,9 +110,13 @@ static bool read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row)
#elif defined(DIODE_DIRECTION)
# if (DIODE_DIRECTION == COL2ROW)
-static void select_row(uint8_t row) { gpio_atomic_set_pin_output_low(row_pins[row]); }
+static void select_row(uint8_t row) {
+ gpio_atomic_set_pin_output_low(row_pins[row]);
+}
-static void unselect_row(uint8_t row) { gpio_atomic_set_pin_input_high(row_pins[row]); }
+static void unselect_row(uint8_t row) {
+ gpio_atomic_set_pin_input_high(row_pins[row]);
+}
static void unselect_rows(void) {
for (uint8_t x = 0; x < MATRIX_ROWS; x++) {
@@ -153,7 +159,7 @@ static bool read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row)
// Unselect row
unselect_row(current_row);
# ifdef MATRIX_IO_DELAY_PORTS
- if (current_row_value) { // wait for col signal to go HIGH
+ if (current_row_value) { // wait for col signal to go HIGH
bool is_pressed;
do {
MATRIX_DEBUG_DELAY_START();
@@ -170,7 +176,7 @@ static bool read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row)
}
# endif
# ifdef MATRIX_IO_DELAY_ADAPTIVE
- if (current_row_value) { // wait for col signal to go HIGH
+ if (current_row_value) { // wait for col signal to go HIGH
for (uint8_t col_index = 0; col_index < MATRIX_COLS; col_index++) {
MATRIX_DEBUG_DELAY_START();
# ifdef MATRIX_MUL_SELECT
@@ -184,7 +190,7 @@ static bool read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row)
}
# endif
# ifdef MATRIX_IO_DELAY_ADAPTIVE2
- if (current_row_value) { // wait for col signal to go HIGH
+ if (current_row_value) { // wait for col signal to go HIGH
pin_t state;
do {
MATRIX_DEBUG_DELAY_START();
@@ -204,7 +210,7 @@ static bool read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row)
# endif
if (MATRIX_IO_DELAY_ALWAYS || current_row + 1 < MATRIX_ROWS) {
MATRIX_DEBUG_DELAY_START();
- matrix_output_unselect_delay(current_row, current_row_value != 0); // wait for col signal to go HIGH
+ matrix_output_unselect_delay(current_row, current_row_value != 0); // wait for col signal to go HIGH
MATRIX_DEBUG_DELAY_END();
}
@@ -218,9 +224,13 @@ static bool read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row)
# elif (DIODE_DIRECTION == ROW2COL)
-static void select_col(uint8_t col) { gpio_atomic_set_pin_output_low(col_pins[col]); }
+static void select_col(uint8_t col) {
+ gpio_atomic_set_pin_output_low(col_pins[col]);
+}
-static void unselect_col(uint8_t col) { gpio_atomic_set_pin_input_high(col_pins[col]); }
+static void unselect_col(uint8_t col) {
+ gpio_atomic_set_pin_input_high(col_pins[col]);
+}
static void unselect_cols(void) {
for (uint8_t x = 0; x < MATRIX_COLS; x++) {
@@ -237,7 +247,7 @@ static void init_pins(void) {
static bool read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col) {
bool matrix_changed = false;
- bool key_pressed = false;
+ bool key_pressed = false;
// Select col
select_col(current_col);
@@ -269,7 +279,7 @@ static bool read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col)
// Unselect col
unselect_col(current_col);
if (MATRIX_IO_DELAY_ALWAYS || current_col + 1 < MATRIX_COLS) {
- matrix_output_unselect_delay(current_col, key_pressed); // wait for col signal to go HIGH
+ matrix_output_unselect_delay(current_col, key_pressed); // wait for col signal to go HIGH
}
return matrix_changed;
@@ -292,7 +302,7 @@ void matrix_init(void) {
matrix[i] = 0;
}
- debounce_init(MATRIX_ROWS);
+ debounce_init();
matrix_init_kb();
}
@@ -317,7 +327,7 @@ uint8_t matrix_scan(void) {
MATRIX_DEBUG_GAP();
MATRIX_DEBUG_SCAN_START();
- debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
+ debounce(raw_matrix, matrix, changed);
MATRIX_DEBUG_SCAN_END();
MATRIX_DEBUG_GAP();
diff --git a/keyboards/handwired/symmetric70_proto/matrix_fast/matrix.c b/keyboards/handwired/symmetric70_proto/matrix_fast/matrix.c
index 842df65dbd..99ce2f2c2d 100644
--- a/keyboards/handwired/symmetric70_proto/matrix_fast/matrix.c
+++ b/keyboards/handwired/symmetric70_proto/matrix_fast/matrix.c
@@ -166,7 +166,7 @@ void matrix_init(void) {
matrix[i] = 0;
}
- debounce_init(MATRIX_ROWS);
+ debounce_init();
matrix_init_kb();
}
@@ -221,7 +221,7 @@ uint8_t matrix_scan(void) {
MATRIX_DEBUG_SCAN_END(); MATRIX_DEBUG_GAP(); MATRIX_DEBUG_SCAN_START();
// debounce raw_matrix[] to matrix[]
- debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
+ debounce(raw_matrix, matrix, changed);
MATRIX_DEBUG_SCAN_END(); MATRIX_DEBUG_GAP();
MATRIX_DEBUG_SCAN_START();
diff --git a/keyboards/handwired/tractyl_manuform/4x6_right/4x6_right.c b/keyboards/handwired/tractyl_manuform/4x6_right/4x6_right.c
index 298060bcb4..f678db94d8 100644
--- a/keyboards/handwired/tractyl_manuform/4x6_right/4x6_right.c
+++ b/keyboards/handwired/tractyl_manuform/4x6_right/4x6_right.c
@@ -16,39 +16,6 @@
#include "tractyl_manuform.h"
-#ifdef RGB_MATRIX_ENABLE
-led_config_t g_led_config = { {
- { 24, 23, 18, 17, 10, 9 },
- { 25, 22, 19, 16, 11, 8 },
- { 26, 21, 20, 15, 12, 7 },
- { NO_LED, NO_LED, NO_LED, 14, 13, 6 },
- { NO_LED, NO_LED, NO_LED, 14, 13, 6 },
- { 51, 50, 45, 44, 37, 36 },
- { 52, 49, 46, 43, 38, 35 },
- { 53, 48, 47, 42, 39, 34 },
- { NO_LED, NO_LED, NO_LED, 41, 40, 33 },
- { NO_LED, NO_LED, NO_LED, 41, 40, 33 }
-}, {
- { 85, 16 }, { 50, 13 }, { 16, 20 }, { 16, 38 }, { 50, 48 }, { 85, 52 }, { 95, 63 },
- { 85, 39 }, { 85, 21 }, { 85, 4 }, { 68, 2 }, { 68, 19 }, { 68, 37 }, { 80, 58 },
- { 60, 55 }, { 50, 35 }, { 50, 13 }, { 50, 0 }, { 33, 3 }, { 33, 20 }, { 33, 37 },
- { 16, 42 }, { 16, 24 }, { 16, 7 }, { 0, 7 }, { 0, 24 }, { 0, 41 }, { 139, 16 },
- { 174, 13 }, { 208, 20 }, { 208, 38 }, { 174, 48 }, { 139, 52 }, { 129, 63 }, { 139, 39 },
- { 139, 21 }, { 139, 4 }, { 156, 2 }, { 156, 19 }, { 156, 37 }, { 144, 58 }, { 164, 55 },
- { 174, 35 }, { 174, 13 }, { 174, 0 }, { 191, 3 }, { 191, 20 }, { 191, 37 }, { 208, 42 },
- { 208, 24 }, { 208, 7 }, { 224, 7 }, { 224, 24 }, { 224, 41 }
-}, {
- 2, 2, 2, 2, 2, 2, 1,
- 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 1, 1, 1, 2,
- 2, 2, 2, 2, 2, 1, 4,
- 4, 4, 4, 4, 4, 1, 1,
- 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 1, 1, 1
-} };
-#endif
-
#ifdef SWAP_HANDS_ENABLE
const keypos_t PROGMEM hand_swap_config[MATRIX_ROWS][MATRIX_COLS] = {
/* Left hand, matrix positions */
diff --git a/keyboards/handwired/tractyl_manuform/4x6_right/keyboard.json b/keyboards/handwired/tractyl_manuform/4x6_right/keyboard.json
index cc651bec95..8e5290006e 100644
--- a/keyboards/handwired/tractyl_manuform/4x6_right/keyboard.json
+++ b/keyboards/handwired/tractyl_manuform/4x6_right/keyboard.json
@@ -7,6 +7,62 @@
},
"rgb_matrix": {
"driver": "ws2812",
+ "layout": [
+ {"x": 85, "y": 16, "flags": 2},
+ {"x": 50, "y": 13, "flags": 2},
+ {"x": 16, "y": 20, "flags": 2},
+ {"x": 16, "y": 38, "flags": 2},
+ {"x": 50, "y": 48, "flags": 2},
+ {"x": 85, "y": 52, "flags": 2},
+ {"matrix": [4, 5], "x": 95, "y": 63, "flags": 1},
+ {"matrix": [2, 5], "x": 85, "y": 39, "flags": 4},
+ {"matrix": [1, 5], "x": 85, "y": 21, "flags": 4},
+ {"matrix": [0, 5], "x": 85, "y": 4, "flags": 4},
+ {"matrix": [0, 4], "x": 68, "y": 2, "flags": 4},
+ {"matrix": [1, 4], "x": 68, "y": 19, "flags": 4},
+ {"matrix": [2, 4], "x": 68, "y": 37, "flags": 4},
+ {"matrix": [4, 4], "x": 80, "y": 58, "flags": 1},
+ {"matrix": [4, 3], "x": 60, "y": 55, "flags": 1},
+ {"matrix": [2, 3], "x": 50, "y": 35, "flags": 4},
+ {"matrix": [1, 3], "x": 50, "y": 13, "flags": 4},
+ {"matrix": [0, 3], "x": 50, "y": 0, "flags": 4},
+ {"matrix": [0, 2], "x": 33, "y": 3, "flags": 4},
+ {"matrix": [1, 2], "x": 33, "y": 20, "flags": 4},
+ {"matrix": [2, 2], "x": 33, "y": 37, "flags": 4},
+ {"matrix": [2, 1], "x": 16, "y": 42, "flags": 4},
+ {"matrix": [1, 1], "x": 16, "y": 24, "flags": 4},
+ {"matrix": [0, 1], "x": 16, "y": 7, "flags": 4},
+ {"matrix": [0, 0], "x": 0, "y": 7, "flags": 1},
+ {"matrix": [1, 0], "x": 0, "y": 24, "flags": 1},
+ {"matrix": [2, 0], "x": 0, "y": 41, "flags": 1},
+ {"x": 139, "y": 16, "flags": 2},
+ {"x": 174, "y": 13, "flags": 2},
+ {"x": 208, "y": 20, "flags": 2},
+ {"x": 208, "y": 38, "flags": 2},
+ {"x": 174, "y": 48, "flags": 2},
+ {"x": 139, "y": 52, "flags": 2},
+ {"matrix": [9, 5], "x": 129, "y": 63, "flags": 1},
+ {"matrix": [7, 5], "x": 139, "y": 39, "flags": 4},
+ {"matrix": [6, 5], "x": 139, "y": 21, "flags": 4},
+ {"matrix": [5, 5], "x": 139, "y": 4, "flags": 4},
+ {"matrix": [5, 4], "x": 156, "y": 2, "flags": 4},
+ {"matrix": [6, 4], "x": 156, "y": 19, "flags": 4},
+ {"matrix": [7, 4], "x": 156, "y": 37, "flags": 4},
+ {"matrix": [9, 4], "x": 144, "y": 58, "flags": 1},
+ {"matrix": [9, 3], "x": 164, "y": 55, "flags": 1},
+ {"matrix": [7, 3], "x": 174, "y": 35, "flags": 4},
+ {"matrix": [6, 3], "x": 174, "y": 13, "flags": 4},
+ {"matrix": [5, 3], "x": 174, "y": 0, "flags": 4},
+ {"matrix": [5, 2], "x": 191, "y": 3, "flags": 4},
+ {"matrix": [6, 2], "x": 191, "y": 20, "flags": 4},
+ {"matrix": [7, 2], "x": 191, "y": 37, "flags": 4},
+ {"matrix": [7, 1], "x": 208, "y": 42, "flags": 4},
+ {"matrix": [6, 1], "x": 208, "y": 24, "flags": 4},
+ {"matrix": [5, 1], "x": 208, "y": 7, "flags": 4},
+ {"matrix": [5, 0], "x": 224, "y": 7, "flags": 1},
+ {"matrix": [6, 0], "x": 224, "y": 24, "flags": 1},
+ {"matrix": [7, 0], "x": 224, "y": 41, "flags": 1}
+ ],
"max_brightness": 80,
"sleep": true,
"split_count": [32, 30]