@@ -20,11 +20,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define RGBLED_NUM 16
-#define MATRIX_ROW_PINS { B0, B1, B2, B3, B4, B5, B6, B7 }
-#define MATRIX_COL_PINS { A0, A1, A2, A3, A4, A5, A6, A7, C7, C6, C5 }
-
-#define DIODE_DIRECTION COL2ROW
#define RGBLIGHT_EFFECT_BREATHING
#define RGBLIGHT_EFFECT_RAINBOW_MOOD
#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
@@ -8,6 +8,11 @@
"pid": "0x422D",
"device_version": "2.0.0"
},
+ "matrix_pins": {
+ "cols": ["A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "C7", "C6", "C5"],
+ "rows": ["B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7"]
+ },
+ "diode_direction": "COL2ROW",
"backlight": {
"pin": "D4"
@@ -15,16 +15,6 @@
*/
#pragma once
-/* key matrix pins
- */
-#define MATRIX_ROW_PINS { B1, B2, B3, C6, C7 }
-#define MATRIX_COL_PINS { E6, F0, F1, F4, F5, F6, F7, B6, B5, B4, D7, D6, D4, D5, D3 }
-/* COL2ROW or ROW2COL
/* IS31FL3731 driver address (for status LEDs)
* Using the default defines here, but using a custom implementation
@@ -7,6 +7,11 @@
"pid": "0xBFFA",
"device_version": "0.0.1"
+ "cols": ["E6", "F0", "F1", "F4", "F5", "F6", "F7", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3"],
+ "rows": ["B1", "B2", "B3", "C6", "C7"]
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
"community_layouts": ["alice", "alice_split_bs"],
@@ -25,11 +25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define MATRIX_ROWS 8
#define MATRIX_COLS 16
-// #define MATRIX_ROW_PINS { B0, B2, B4, B5, B6 }
-// #define MATRIX_COL_PINS { F5, B1, F0, F1, F4, B3, D7, D6, D4, D5, D3, D2, D1, D0 }
-//#define DIODE_DIRECTION
/*
* Feature disable options
* These options are also useful to firmware size reduction.
@@ -1,23 +0,0 @@
-/* Copyright 2021 Swiftrax <swiftrax@gmail.com>
- *
- * 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
-/* default pinout */
-#define MATRIX_ROW_PINS { D5, D3, D2, D1, D0 }
-#define MATRIX_COL_PINS { B4, B5, B6, C6, C7, F7, F6, F5, F4, F1, F0, E6, B0, B1, B2, B3 }
"pid": "0xE965",
+ "cols": ["B4", "B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0", "E6", "B0", "B1", "B2", "B3"],
+ "rows": ["D5", "D3", "D2", "D1", "D0"]
"community_layouts": ["65_ansi_blocker", "65_ansi_blocker_split_bs", "65_iso_blocker", "65_iso_blocker_split_bs"],
@@ -17,14 +17,6 @@
-/* key matrix pins */
-#define MATRIX_ROW_PINS { F7, F6, F5, F4, F1, F0 }
-#define MATRIX_COL_PINS { E6, B0, B1, B2, B3, B7, D2, D3, D5, D4, D6, D7, B4, B5, B6, E2 }
-/* COL2ROW or ROW2COL */
-#define DIODE_DIRECTION ROW2COL
#ifdef RGB_MATRIX_ENABLE
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200
"pid": "0x1226",
+ "cols": ["E6", "B0", "B1", "B2", "B3", "B7", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "E2"],
+ "rows": ["F7", "F6", "F5", "F4", "F1", "F0"]
+ "diode_direction": "ROW2COL",
"encoder": {
"rotary": [
{"pin_a": "C6", "pin_b": "C7", "resolution": 2}
@@ -17,13 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
- // 0 , 1 , 2 , 3 , 4 , 5
-#define MATRIX_ROW_PINS { B4, E6, D7, B5, C6, F6}
-#define MATRIX_COL_PINS { F7, B1, B3, B2, B6}
#ifdef RGBLIGHT_ENABLE
#define RGB_DI_PIN D4
"pid": "0x0002",
+ "cols": ["F7", "B1", "B3", "B2", "B6"],
+ "rows": ["B4", "E6", "D7", "B5", "C6", "F6"]
{"pin_a": "F4", "pin_b": "F5"}
@@ -1,27 +0,0 @@
-/*
-Copyright 2021 Swiftrax <swiftrax@gmail.com>
-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/>.
-*/
-// ROWS: Top to bottom, COLS: Left to right
-#define MATRIX_ROW_PINS { B5, B4, D7, D6, D4 }
-#define MATRIX_COL_PINS { D2, D1, D0, B7, B3, B2, F0, F1, F4, F5, F6, F7 }
"pid": "0xE96C",
+ "cols": ["D2", "D1", "D0", "B7", "B3", "B2", "F0", "F1", "F4", "F5", "F6", "F7"],
+ "rows": ["B5", "B4", "D7", "D6", "D4"]
{"pin_a": "D3", "pin_b": "D5"},
@@ -17,25 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
- * Keyboard Matrix Assignments
- * Change this to how you wired your keyboard
- * COLS: AVR pins used for columns, left to right
- * ROWS: AVR pins used for rows, top to bottom
- * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
- * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
- *å
-// Checked with Eagle Schematic
-#define MATRIX_ROW_PINS { B0, F4, F1, F7, F6, F5 }
-#define MATRIX_COL_PINS { F0, B1, B2, B3, B7, D0, D1, D2, D3, D5, D7, B4, B5, B6, C6 }
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
"pid": "0x0014",
+ "cols": ["F0", "B1", "B2", "B3", "B7", "D0", "D1", "D2", "D3", "D5", "D7", "B4", "B5", "B6", "C6"],
+ "rows": ["B0", "F4", "F1", "F7", "F6", "F5"]
"layouts": {
-#define MATRIX_ROW_PINS { F4, F1, F7, F6, F5 }
"pid": "0x0010",
+ "rows": ["F4", "F1", "F7", "F6", "F5"]
"indicators": {
"caps_lock": "C7"
-#define MATRIX_COL_PINS { B0, F0, B1, B2, B3, B7, D0, D1, D2, D3, D5, D7, B4, B5, B6, C6 }
"pid": "0x0015",
+ "cols": ["B0", "F0", "B1", "B2", "B3", "B7", "D0", "D1", "D2", "D3", "D5", "D7", "B4", "B5", "B6", "C6"],
"pid": "0x1001",
"pid": "0x0099",
"community_layouts": ["65_ansi"],
-#define MATRIX_ROW_PINS { F1, F0, F6, F5, F4 }
-#define MATRIX_COL_PINS { C7, B1, B2, B3, B7, D0, D1, D2, D3, D5, D4, D6, D7, B4, B5 }
"pid": "0x0001",
+ "cols": ["C7", "B1", "B2", "B3", "B7", "D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "B5"],
+ "rows": ["F1", "F0", "F6", "F5", "F4"]
"community_layouts": ["65_ansi_blocker"],
-#define MATRIX_ROW_PINS { B4, B5, B6, C0, E1, E0 }
-#define MATRIX_COL_PINS { F2, F3, F4, F5, F6, F7, A0, A1, A2, A3, A4, A5, A6, A7, D5, D6, D7 }
"pid": "0x0006",
+ "cols": ["F2", "F3", "F4", "F5", "F6", "F7", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "D5", "D6", "D7"],
+ "rows": ["B4", "B5", "B6", "C0", "E1", "E0"]
"caps_lock": "C4",
"scroll_lock": "C6"
"pid": "0x1012",
-#define MATRIX_COL_PINS { F0, B1, B2, B3, B7, D0, D1, D2, D3, D5, D7, B4, B5, B6 }
"pid": "0x1002",
+ "cols": ["F0", "B1", "B2", "B3", "B7", "D0", "D1", "D2", "D3", "D5", "D7", "B4", "B5", "B6"],
-#define MATRIX_ROW_PINS { F0, F1, F4, F5, F6 }
-#define MATRIX_COL_PINS { C7, C6, B6, B5, B4, D7, D6, D4, D5, D3, D2, B3, B2, B1 }
"pid": "0x1011",
+ "cols": ["C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "B3", "B2", "B1"],
+ "rows": ["F0", "F1", "F4", "F5", "F6"]
"community_layouts": ["60_ansi"],
-#define MATRIX_ROW_PINS { B5, B6, C0, E1, E0 }
"pid": "0x0020",
+ "rows": ["B5", "B6", "C0", "E1", "E0"]
"processor": "at90usb646",
"pid": "0x9001",
"pid": "0x1003",
"layout_aliases": {
"pid": "0x1022",
"pid": "0x1023",
"pid": "0x0017",
-#define MATRIX_ROW_PINS { B0, B1, C7, C6, B6 }
-#define MATRIX_COL_PINS { F7, F6, F5, F4, F1, F0, B2, B3, B7, B5, B4, D7, D6, D4, D5 }
"pid": "0x0024",
+ "cols": ["F7", "F6", "F5", "F4", "F1", "F0", "B2", "B3", "B7", "B5", "B4", "D7", "D6", "D4", "D5"],
+ "rows": ["B0", "B1", "C7", "C6", "B6"]
"pid": "0x1004",
"pid": "0x1005",
"community_layouts": ["60_ansi_arrow"],
-#define MATRIX_COL_PINS { C7, C6, B6, B5, B4, D7, D6, D4, D5, D3, D2, B3, B2, B1, D1 }
"pid": "0x1007",
+ "cols": ["C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "B3", "B2", "B1", "D1"],
@@ -17,14 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
-#define MATRIX_ROW_PINS { B5 }
-#define MATRIX_COL_PINS { B6 }
/* key combination for command */
#define IS_COMMAND() ( \
false \
"pid": "0xB195",
+ "cols": ["B6"],
+ "rows": ["B5"]
"bootloader": "caterina",
"debounce": 50,
@@ -17,23 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
-#define MATRIX_ROW_PINS { F1, F2, F3, F4, F5, F6 }
-#define MATRIX_COL_PINS { F7, C7, C6, C5, C4, C3, C2, C1, C0, E1, E0, D7, D6, D5, D4, D3, D2, D1, D0, B7 }
-/* COL2ROW, ROW2COL*/
"pid": "0x0000",
+ "cols": ["F7", "C7", "C6", "C5", "C4", "C3", "C2", "C1", "C0", "E1", "E0", "D7", "D6", "D5", "D4", "D3", "D2", "D1", "D0", "B7"],
+ "rows": ["F1", "F2", "F3", "F4", "F5", "F6"]
"processor": "at90usb1286",
@@ -1,13 +1,5 @@
-#define MATRIX_ROW_PINS { F6, B5, B4, E6, F7 }
-#define MATRIX_COL_PINS { D1, D0, D4, F5, F4 }
"pid": "0x6060",
+ "cols": ["D1", "D0", "D4", "F5", "F4"],
+ "rows": ["F6", "B5", "B4", "E6", "F7"]
-#define MATRIX_ROW_PINS { D1, D0, D4, C6, D7 }
-#define MATRIX_COL_PINS { F4, F5, F6, F7 }
"pid": "0x5350",
+ "cols": ["F4", "F5", "F6", "F7"],
+ "rows": ["D1", "D0", "D4", "C6", "D7"]
"community_layouts": ["ortho_5x4", "numpad_5x4"],
@@ -15,14 +15,6 @@
-#define MATRIX_ROW_PINS { D1, C6, D4, D0 }
-#define MATRIX_COL_PINS { F7, B1, D7, E6 }
+ "cols": ["F7", "B1", "D7", "E6"],
+ "rows": ["D1", "C6", "D4", "D0"]
"community_layouts": ["ortho_4x4"],
-#define MATRIX_ROW_PINS { F0, F1, F4, F5, F6, F7 }
-#define MATRIX_COL_PINS { C7, B6, B3, B5, B4, D7, D4, D5, D3, D2, D1, D0, B7, B0, B1, B2 }
+ "cols": ["C7", "B6", "B3", "B5", "B4", "D7", "D4", "D5", "D3", "D2", "D1", "D0", "B7", "B0", "B1", "B2"],
+ "rows": ["F0", "F1", "F4", "F5", "F6", "F7"]
-#define MATRIX_ROW_PINS { F4, F5, F6, F7, B1, B3, B2, B6 }
-#define MATRIX_COL_PINS { D3, D1, D0, D4, C6, D7, E6, B4, B5 }
-/* COL2ROW, ROW2COL */
+ "cols": ["D3", "D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5"],
+ "rows": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"]
"split": {
"soft_serial_pin": "D2"
@@ -16,23 +16,6 @@
-#define MATRIX_ROW_PINS { B3, B7, F0, F1, F4 }
-#define MATRIX_COL_PINS { B2, F5, F6, D0, D1, D2, D3, D5, D4, D6, D7, B4, B5, B6, C6, C7 }
"pid": "0x4C53",
+ "cols": ["B2", "F5", "F6", "D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7"],
+ "rows": ["B3", "B7", "F0", "F1", "F4"]
@@ -17,22 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
-#define MATRIX_ROW_PINS { C6, B6, B5, B4, D7, D6, D4, D5, D3, D2, D1, D0 }
-#define MATRIX_COL_PINS { F0, F1, F4, F5, F6, F7, C7, B0, B1 }
#define RGB_DI_PIN B3
#ifdef RGB_DI_PIN
#define RGBLED_NUM 0
"pid": "0x5647",
+ "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "B0", "B1"],
+ "rows": ["C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0"]
"pin": "B7",
"levels": 5
@@ -18,14 +18,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
-// wiring of each half
-#define MATRIX_ROW_PINS { D4, F5, F4, F1 }
-#define MATRIX_COL_PINS { B2, B3, D6, D7, B4, B5 }
-// #define MATRIX_COL_PINS { B6, B2, B3, B1, F7, F6 } //uncomment this line and comment line above if you need to reverse left-to-right key order
#define SELECT_SOFT_SERIAL_SPEED 1
// #define USE_I2C
#define SPLIT_USB_DETECT
+ "cols": ["B2", "B3", "D6", "D7", "B4", "B5"],
+ "rows": ["D4", "F5", "F4", "F1"]
{"pin_a": "B0", "pin_b": "D2"}
-#define MATRIX_ROW_PINS { D2, D3, D5, B7, F1}
-#define MATRIX_COL_PINS { F0, E6, B1, B2, B3, B0, D4, D6, D7, B4, B5, B6, C6, C7}
"device_version": "0.0.3"
+ "cols": ["F0", "E6", "B1", "B2", "B3", "B0", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7"],
+ "rows": ["D2", "D3", "D5", "B7", "F1"]
-#define MATRIX_ROW_PINS { B0, B1, B2, C7 }
-#define MATRIX_COL_PINS { F0, F1, F4, F5, F6, F7, C6, B6, B5, B4, D7, D6 }
"pid": "0x0005",
+ "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C6", "B6", "B5", "B4", "D7", "D6"],
+ "rows": ["B0", "B1", "B2", "C7"]
"layouts":{
-#define MATRIX_ROW_PINS { D1, D0, D3, B7, B6 }
-#define MATRIX_COL_PINS { F7, F6, F5, B3, B2, B1 }
//#define EE_HANDS
"pid": "0x1156",
"device_version": "1.0.0"
+ "cols": ["F7", "F6", "F5", "B3", "B2", "B1"],
+ "rows": ["D1", "D0", "D3", "B7", "B6"]
"pin": "B5",
"levels": 9
-#define MATRIX_ROW_PINS { D2, D1, D0, D3, B3 }
-#define MATRIX_COL_PINS { F5, F4, F1, F0, B0, F6, F7, C7, C6, B6, B5, B4, D7, D6, D4 }
#define RGB_DI_PIN E2
#define RGBLED_NUM 8
"pid": "0x0003",
+ "cols": ["F5", "F4", "F1", "F0", "B0", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"],
+ "rows": ["D2", "D1", "D0", "D3", "B3"]
-#define MATRIX_ROW_PINS { D0, D1, F0, F4, F1 }
-#define MATRIX_COL_PINS { B1, F5, F6, F7, C7, C6, B6, B5, B4, D7, D6, D4, D5, D3, D2, B0 }
#define RGBLED_NUM 6
"pid": "0x0004",
+ "cols": ["B1", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "B0"],
+ "rows": ["D0", "D1", "F0", "F4", "F1"]
-#define MATRIX_ROW_PINS { D2, D1, D0, D3, D5 }
+ "rows": ["D2", "D1", "D0", "D3", "D5"]
"levels": 4,
-#define MATRIX_COL_PINS { B0, F5, F6, F7, C7, C6, B6, B5, B4, D7, D6, D4, D5, D3, D2 }
+ "cols": ["B0", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2"],
"breathing": true
-// 0 1 2 3 4 5 6 7 8 9 A B C D E
-#define MATRIX_ROW_PINS { B1, B2, B3, B5, B6, B7, B0 }
-#define MATRIX_COL_PINS { A1, A2, A3, A4, A5, A6, A7, C7, C6, C5, C4, C3, C2, D7, A0 }
//#define RGBLIGHT_HUE_STEP 8
//#define RGBLIGHT_SAT_STEP 8
+ "cols": ["A1", "A2", "A3", "A4", "A5", "A6", "A7", "C7", "C6", "C5", "C4", "C3", "C2", "D7", "A0"],
+ "rows": ["B1", "B2", "B3", "B5", "B6", "B7", "B0"]
-#define MATRIX_ROW_PINS { D1, D0, B3, B0, B2, B1 }
-#define MATRIX_COL_PINS { F0, F1, F4, F5, F6, F7, C7, C6, B6, B5, B4, D7, D4, D6, D2, D3, D5 }
+ "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D4", "D6", "D2", "D3", "D5"],
+ "rows": ["D1", "D0", "B3", "B0", "B2", "B1"]
"pin": "B7"
@@ -16,14 +16,6 @@
-#define MATRIX_ROW_PINS { D3, D2, D1, D0, D4, C6, D7, E6, B4 }
-#define MATRIX_COL_PINS { B5, F4, F5, F6, F7, B1, B3, B2, B6 }
"pid": "0x350C",
+ "cols": ["B5", "F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"],
+ "rows": ["D3", "D2", "D1", "D0", "D4", "C6", "D7", "E6", "B4"]
@@ -1,26 +0,0 @@
- /*
- Copyright 2020 Lasse Küchenmeister
- 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/>.
-#define MATRIX_ROW_PINS { D3, D2, D1, D0, D4, C6, D7 }
-#define MATRIX_COL_PINS { E6, B4, B5, F4, F5, F6, F7, B1, B3 }
"pid": "0x5558",
+ "cols": ["E6", "B4", "B5", "F4", "F5", "F6", "F7", "B1", "B3"],
+ "rows": ["D3", "D2", "D1", "D0", "D4", "C6", "D7"]
@@ -1,14 +1,5 @@
-#define MATRIX_ROW_PINS { B1, F7, F6, F5, F4 }
-#define MATRIX_COL_PINS { B3, B2, B6, B5, B4, E6, D7, C6, D4, D0, D1, D3 }