summaryrefslogtreecommitdiff
path: root/keyboards/cannonkeys
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/cannonkeys')
-rw-r--r--keyboards/cannonkeys/adelie/config.h23
-rw-r--r--keyboards/cannonkeys/adelie/info.json2
-rw-r--r--keyboards/cannonkeys/adelie/rules.mk6
-rw-r--r--keyboards/cannonkeys/aella/config.h11
-rw-r--r--keyboards/cannonkeys/aella/info.json2
-rw-r--r--keyboards/cannonkeys/aella/rules.mk6
-rw-r--r--keyboards/cannonkeys/an_c/config.h14
-rw-r--r--keyboards/cannonkeys/an_c/info.json8
-rw-r--r--keyboards/cannonkeys/an_c/rules.mk8
-rw-r--r--keyboards/cannonkeys/atlas/config.h10
-rw-r--r--keyboards/cannonkeys/atlas/info.json2
-rw-r--r--keyboards/cannonkeys/atlas/rules.mk6
-rw-r--r--keyboards/cannonkeys/atlas_alps/config.h9
-rw-r--r--keyboards/cannonkeys/atlas_alps/info.json3
-rw-r--r--keyboards/cannonkeys/atlas_alps/rules.mk8
-rw-r--r--keyboards/cannonkeys/balance/config.h19
-rw-r--r--keyboards/cannonkeys/balance/info.json12
-rw-r--r--keyboards/cannonkeys/balance/rules.mk6
-rw-r--r--keyboards/cannonkeys/brutalv2_1800/keymaps/default/keymap.c2
-rw-r--r--keyboards/cannonkeys/brutalv2_1800/keymaps/via/keymap.c2
-rw-r--r--keyboards/cannonkeys/brutalv2_65/config.h12
-rw-r--r--keyboards/cannonkeys/brutalv2_65/info.json6
-rw-r--r--keyboards/cannonkeys/brutalv2_65/rules.mk6
-rw-r--r--keyboards/cannonkeys/chimera65/config.h14
-rw-r--r--keyboards/cannonkeys/chimera65/info.json7
-rw-r--r--keyboards/cannonkeys/chimera65/rules.mk6
-rw-r--r--keyboards/cannonkeys/cloudline/config.h17
-rw-r--r--keyboards/cannonkeys/cloudline/info.json12
-rw-r--r--keyboards/cannonkeys/cloudline/rules.mk6
-rw-r--r--keyboards/cannonkeys/crin/config.h16
-rw-r--r--keyboards/cannonkeys/crin/info.json11
-rw-r--r--keyboards/cannonkeys/crin/rules.mk6
-rw-r--r--keyboards/cannonkeys/db60/config.h13
-rw-r--r--keyboards/cannonkeys/db60/db60.c1
-rw-r--r--keyboards/cannonkeys/db60/db60.h23
-rw-r--r--keyboards/cannonkeys/db60/hotswap/hotswap.h63
-rw-r--r--keyboards/cannonkeys/db60/hotswap/info.json320
-rw-r--r--keyboards/cannonkeys/db60/hotswap/rules.mk1
-rw-r--r--keyboards/cannonkeys/db60/info.json9
-rw-r--r--keyboards/cannonkeys/db60/j02/info.json468
-rw-r--r--keyboards/cannonkeys/db60/j02/j02.h77
-rw-r--r--keyboards/cannonkeys/db60/j02/rules.mk1
-rw-r--r--keyboards/cannonkeys/db60/rev2/info.json468
-rw-r--r--keyboards/cannonkeys/db60/rev2/rev2.h77
-rw-r--r--keyboards/cannonkeys/db60/rev2/rules.mk1
-rw-r--r--keyboards/cannonkeys/db60/rules.mk6
-rw-r--r--keyboards/cannonkeys/devastatingtkl/config.h14
-rw-r--r--keyboards/cannonkeys/devastatingtkl/info.json7
-rw-r--r--keyboards/cannonkeys/devastatingtkl/rules.mk6
-rw-r--r--keyboards/cannonkeys/ellipse/info.json1
-rw-r--r--keyboards/cannonkeys/gentoo/config.h12
-rw-r--r--keyboards/cannonkeys/gentoo/info.json6
-rw-r--r--keyboards/cannonkeys/gentoo/rules.mk6
-rw-r--r--keyboards/cannonkeys/gentoo_hs/config.h14
-rw-r--r--keyboards/cannonkeys/gentoo_hs/info.json6
-rw-r--r--keyboards/cannonkeys/gentoo_hs/rules.mk6
-rw-r--r--keyboards/cannonkeys/hoodrowg/config.h13
-rw-r--r--keyboards/cannonkeys/hoodrowg/info.json6
-rw-r--r--keyboards/cannonkeys/hoodrowg/rules.mk6
-rw-r--r--keyboards/cannonkeys/instant60/config.h14
-rw-r--r--keyboards/cannonkeys/instant60/info.json8
-rw-r--r--keyboards/cannonkeys/instant60/keymaps/tsangan/keymap.c16
-rw-r--r--keyboards/cannonkeys/instant60/rules.mk8
-rw-r--r--keyboards/cannonkeys/instant65/config.h14
-rw-r--r--keyboards/cannonkeys/instant65/info.json7
-rw-r--r--keyboards/cannonkeys/instant65/rules.mk6
-rw-r--r--keyboards/cannonkeys/iron165/config.h14
-rw-r--r--keyboards/cannonkeys/iron165/info.json7
-rw-r--r--keyboards/cannonkeys/iron165/rules.mk6
-rw-r--r--keyboards/cannonkeys/malicious_ergo/config.h22
-rw-r--r--keyboards/cannonkeys/malicious_ergo/info.json13
-rw-r--r--keyboards/cannonkeys/malicious_ergo/rules.mk6
-rw-r--r--keyboards/cannonkeys/moment/info.json1
-rwxr-xr-xkeyboards/cannonkeys/nearfield/config.h8
-rw-r--r--keyboards/cannonkeys/nearfield/info.json3
-rwxr-xr-xkeyboards/cannonkeys/nearfield/rules.mk6
-rw-r--r--keyboards/cannonkeys/obliterated75/config.h14
-rw-r--r--keyboards/cannonkeys/obliterated75/info.json7
-rw-r--r--keyboards/cannonkeys/obliterated75/rules.mk6
-rw-r--r--keyboards/cannonkeys/onyx/config.h14
-rw-r--r--keyboards/cannonkeys/onyx/info.json7
-rw-r--r--keyboards/cannonkeys/onyx/rules.mk6
-rw-r--r--keyboards/cannonkeys/ortho48/config.h14
-rw-r--r--keyboards/cannonkeys/ortho48/info.json8
-rw-r--r--keyboards/cannonkeys/ortho48/rules.mk9
-rw-r--r--keyboards/cannonkeys/ortho60/config.h14
-rw-r--r--keyboards/cannonkeys/ortho60/info.json8
-rw-r--r--keyboards/cannonkeys/ortho60/rules.mk9
-rw-r--r--keyboards/cannonkeys/ortho60v2/config.h23
-rw-r--r--keyboards/cannonkeys/ortho60v2/halconf.h23
-rw-r--r--keyboards/cannonkeys/ortho60v2/info.json104
-rw-r--r--keyboards/cannonkeys/ortho60v2/keymaps/default/keymap.c99
-rw-r--r--keyboards/cannonkeys/ortho60v2/keymaps/via/keymap.c53
-rw-r--r--keyboards/cannonkeys/ortho60v2/keymaps/via/rules.mk1
-rw-r--r--keyboards/cannonkeys/ortho60v2/mcuconf.h9
-rw-r--r--keyboards/cannonkeys/ortho60v2/ortho60v2.c31
-rw-r--r--keyboards/cannonkeys/ortho60v2/ortho60v2.h19
-rw-r--r--keyboards/cannonkeys/ortho60v2/readme.md22
-rw-r--r--keyboards/cannonkeys/ortho60v2/rules.mk2
-rw-r--r--keyboards/cannonkeys/ortho75/config.h17
-rw-r--r--keyboards/cannonkeys/ortho75/info.json13
-rw-r--r--keyboards/cannonkeys/ortho75/rules.mk9
-rw-r--r--keyboards/cannonkeys/practice60/config.h14
-rw-r--r--keyboards/cannonkeys/practice60/info.json8
-rw-r--r--keyboards/cannonkeys/practice60/rules.mk8
-rw-r--r--keyboards/cannonkeys/practice65/config.h14
-rw-r--r--keyboards/cannonkeys/practice65/info.json7
-rw-r--r--keyboards/cannonkeys/practice65/rules.mk6
-rw-r--r--keyboards/cannonkeys/rekt1800/config.h14
-rw-r--r--keyboards/cannonkeys/rekt1800/info.json7
-rw-r--r--keyboards/cannonkeys/rekt1800/rules.mk6
-rw-r--r--keyboards/cannonkeys/sagittarius/config.h18
-rw-r--r--keyboards/cannonkeys/sagittarius/info.json12
-rw-r--r--keyboards/cannonkeys/sagittarius/rules.mk6
-rw-r--r--keyboards/cannonkeys/satisfaction75/config.h20
-rw-r--r--keyboards/cannonkeys/satisfaction75/info.json13
-rw-r--r--keyboards/cannonkeys/satisfaction75/led.c2
-rw-r--r--keyboards/cannonkeys/satisfaction75/rules.mk7
-rw-r--r--keyboards/cannonkeys/satisfaction75/satisfaction75.c4
-rw-r--r--keyboards/cannonkeys/satisfaction75/satisfaction75.h2
-rw-r--r--keyboards/cannonkeys/satisfaction75/satisfaction_encoder.c10
-rw-r--r--keyboards/cannonkeys/satisfaction75/satisfaction_oled.c4
-rw-r--r--keyboards/cannonkeys/savage65/config.h14
-rw-r--r--keyboards/cannonkeys/savage65/info.json8
-rw-r--r--keyboards/cannonkeys/savage65/rules.mk8
-rw-r--r--keyboards/cannonkeys/serenity/info.json2
-rw-r--r--keyboards/cannonkeys/serenity/keymaps/default/keymap.c2
-rw-r--r--keyboards/cannonkeys/serenity/keymaps/via/keymap.c2
-rw-r--r--keyboards/cannonkeys/tmov2/config.h14
-rw-r--r--keyboards/cannonkeys/tmov2/info.json7
-rw-r--r--keyboards/cannonkeys/tmov2/keymaps/brandonschlack/keymap.c68
-rw-r--r--keyboards/cannonkeys/tmov2/rules.mk6
-rw-r--r--keyboards/cannonkeys/tsukuyomi/config.h14
-rw-r--r--keyboards/cannonkeys/tsukuyomi/info.json7
-rw-r--r--keyboards/cannonkeys/tsukuyomi/rules.mk6
-rw-r--r--keyboards/cannonkeys/vicious40/config.h14
-rw-r--r--keyboards/cannonkeys/vicious40/info.json7
-rw-r--r--keyboards/cannonkeys/vicious40/rules.mk6
138 files changed, 1438 insertions, 1538 deletions
diff --git a/keyboards/cannonkeys/adelie/config.h b/keyboards/cannonkeys/adelie/config.h
index 29358a2010..e5f6cbedab 100644
--- a/keyboards/cannonkeys/adelie/config.h
+++ b/keyboards/cannonkeys/adelie/config.h
@@ -17,11 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#include "config_common.h"
-
-/* key matrix size */
-#define MATRIX_ROWS 4
-#define MATRIX_COLS 15
/*
* Keyboard Matrix Assignments
@@ -57,27 +52,15 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
# define RGBLIGHT_EFFECT_RGB_TEST
# define RGBLIGHT_EFFECT_ALTERNATING
# define RGBLIGHT_EFFECT_TWINKLE
-/*== customize breathing effect ==*/
- /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/
-// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64
- /*==== use exp() and sin() ====*/
-// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7
-// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255
#endif
-/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
-#define DEBOUNCE 5
-
-/* define if matrix has ghost (lacks anti-ghosting diodes) */
-//#define MATRIX_HAS_GHOST
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
- * This is userful for the Windows task manager shortcut (ctrl+shift+esc).
+ * This is useful for the Windows task manager shortcut (ctrl+shift+esc).
*/
#define GRAVE_ESC_CTRL_OVERRIDE
@@ -97,8 +80,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
-/* Bootmagic Lite key configuration */
-// #define BOOTMAGIC_LITE_ROW 0
-// #define BOOTMAGIC_LITE_COLUMN 0
-
#define RGBLIGHT_LAYERS
diff --git a/keyboards/cannonkeys/adelie/info.json b/keyboards/cannonkeys/adelie/info.json
index d6f0abc952..d075dc199a 100644
--- a/keyboards/cannonkeys/adelie/info.json
+++ b/keyboards/cannonkeys/adelie/info.json
@@ -8,6 +8,8 @@
"pid": "0x0005",
"device_version": "0.0.1"
},
+ "processor": "atmega32u4",
+ "bootloader": "atmel-dfu",
"layouts": {
"LAYOUT_all": {
"layout": [
diff --git a/keyboards/cannonkeys/adelie/rules.mk b/keyboards/cannonkeys/adelie/rules.mk
index 3a2f2feb74..6d85e16f92 100644
--- a/keyboards/cannonkeys/adelie/rules.mk
+++ b/keyboards/cannonkeys/adelie/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = atmega32u4
-
-# Bootloader selection
-BOOTLOADER = atmel-dfu
-
# Build Options
# change yes to no to disable
#
diff --git a/keyboards/cannonkeys/aella/config.h b/keyboards/cannonkeys/aella/config.h
index 6cd08c9804..a03a1f3fb8 100644
--- a/keyboards/cannonkeys/aella/config.h
+++ b/keyboards/cannonkeys/aella/config.h
@@ -17,21 +17,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 6
-#define MATRIX_COLS 16
-
#define MATRIX_COL_PINS { A5, B0, B1, B2, B10, A9, C13, B9, B8, B7, B6, B5, B4, B3, A15, A14 }
#define MATRIX_ROW_PINS { A13, B12, B11, B14, A8, A7 }
#define DIODE_DIRECTION COL2ROW
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
diff --git a/keyboards/cannonkeys/aella/info.json b/keyboards/cannonkeys/aella/info.json
index edce8f88a6..1fc2da7d64 100644
--- a/keyboards/cannonkeys/aella/info.json
+++ b/keyboards/cannonkeys/aella/info.json
@@ -8,6 +8,8 @@
"pid": "0x0007",
"device_version": "0.0.1"
},
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_all": {
"layout": [{"x":0, "y":0}, {"x":1.25, "y":0}, {"x":2.25, "y":0}, {"x":3.25, "y":0}, {"x":4.25, "y":0}, {"x":5.5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.75, "y":0}, {"x":10.75, "y":0}, {"x":11.75, "y":0}, {"x":12.75, "y":0}, {"x":14, "y":0}, {"x":15, "y":0}, {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, {"x":3, "y":1}, {"x":4, "y":1}, {"x":5, "y":1}, {"x":6, "y":1}, {"x":7, "y":1}, {"x":8, "y":1}, {"x":9, "y":1}, {"x":10, "y":1}, {"x":11, "y":1}, {"x":12, "y":1}, {"x":13, "y":1}, {"x":14, "y":1}, {"x":15, "y":1}, {"x":0, "y":2, "w":1.5}, {"x":1.5, "y":2}, {"x":2.5, "y":2}, {"x":3.5, "y":2}, {"x":4.5, "y":2}, {"x":5.5, "y":2}, {"x":6.5, "y":2}, {"x":7.5, "y":2}, {"x":8.5, "y":2}, {"x":9.5, "y":2}, {"x":10.5, "y":2}, {"x":11.5, "y":2}, {"x":12.5, "y":2}, {"x":13.5, "y":2, "w":1.5}, {"x":15, "y":2}, {"x":0, "y":3, "w":1.75}, {"x":1.75, "y":3}, {"x":2.75, "y":3}, {"x":3.75, "y":3}, {"x":4.75, "y":3}, {"x":5.75, "y":3}, {"x":6.75, "y":3}, {"x":7.75, "y":3}, {"x":8.75, "y":3}, {"x":9.75, "y":3}, {"x":10.75, "y":3}, {"x":11.75, "y":3}, {"x":12.75, "y":3}, {"x":13.75, "y":3, "w":1.25}, {"x":15, "y":3}, {"x":0, "y":4, "w":1.25}, {"x":1.25, "y":4}, {"x":2.25, "y":4}, {"x":3.25, "y":4}, {"x":4.25, "y":4}, {"x":5.25, "y":4}, {"x":6.25, "y":4}, {"x":7.25, "y":4}, {"x":8.25, "y":4}, {"x":9.25, "y":4}, {"x":10.25, "y":4}, {"x":11.25, "y":4}, {"x":12.25, "y":4, "w":1.75}, {"x":14, "y":4}, {"x":15, "y":4}, {"x":0, "y":5, "w":1.5}, {"x":2.25, "y":5, "w":1.25}, {"x":3.5, "y":5, "w":6.25}, {"x":9.75, "y":5, "w":1.25}, {"x":11, "y":5, "w":1.25}, {"x":13, "y":5}, {"x":14, "y":5}, {"x":15, "y":5}]
diff --git a/keyboards/cannonkeys/aella/rules.mk b/keyboards/cannonkeys/aella/rules.mk
index 7b44b402d1..f56120695a 100644
--- a/keyboards/cannonkeys/aella/rules.mk
+++ b/keyboards/cannonkeys/aella/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
diff --git a/keyboards/cannonkeys/an_c/config.h b/keyboards/cannonkeys/an_c/config.h
index c0fe54cf3b..a6b9872268 100644
--- a/keyboards/cannonkeys/an_c/config.h
+++ b/keyboards/cannonkeys/an_c/config.h
@@ -17,27 +17,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 15
-
#define MATRIX_COL_PINS { B11, B10, B2, A9, A15, B3, B4, B5, B6, B7, B8, B9, C13, C14, C15 }
#define MATRIX_ROW_PINS { B1, B0, A7, A5, A4 }
#define DIODE_DIRECTION COL2ROW
-#define BACKLIGHT_PIN A6
#define BACKLIGHT_PWM_DRIVER PWMD3
#define BACKLIGHT_PWM_CHANNEL 1
#define BACKLIGHT_PAL_MODE 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/an_c/info.json b/keyboards/cannonkeys/an_c/info.json
index c18cde141f..0517bb09d3 100644
--- a/keyboards/cannonkeys/an_c/info.json
+++ b/keyboards/cannonkeys/an_c/info.json
@@ -8,6 +8,14 @@
"pid": "0xA00C",
"device_version": "0.0.1"
},
+ "backlight": {
+ "pin": "A6",
+ "levels": 6,
+ "breathing": true
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
+ "community_layouts": ["60_ansi", "60_tsangan_hhkb"],
"layouts": {
"LAYOUT_60_ansi": {
"layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":2.75}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"Ctrl", "x":13.75, "y":4, "w":1.25}]
diff --git a/keyboards/cannonkeys/an_c/rules.mk b/keyboards/cannonkeys/an_c/rules.mk
index e03a83f44c..8b82556130 100644
--- a/keyboards/cannonkeys/an_c/rules.mk
+++ b/keyboards/cannonkeys/an_c/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
@@ -20,7 +14,5 @@ BACKLIGHT_ENABLE = yes
RGBLIGHT_ENABLE = yes
WS2812_DRIVER = spi
-LAYOUTS = 60_ansi 60_tsangan_hhkb
-
# Enter lower-power sleep mode when on the ChibiOS idle thread
OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE
diff --git a/keyboards/cannonkeys/atlas/config.h b/keyboards/cannonkeys/atlas/config.h
index 4023b40bbf..9689ba3d22 100644
--- a/keyboards/cannonkeys/atlas/config.h
+++ b/keyboards/cannonkeys/atlas/config.h
@@ -17,20 +17,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 12
-
#define MATRIX_COL_PINS { A2, A1, A0, F1, F0, C15, C14, C13, B9, A15, A10, A9 }
#define MATRIX_ROW_PINS { A8, B14, B12, B4, B3 }
#define DIODE_DIRECTION COL2ROW
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
diff --git a/keyboards/cannonkeys/atlas/info.json b/keyboards/cannonkeys/atlas/info.json
index 70d8af6230..fbc4e94d83 100644
--- a/keyboards/cannonkeys/atlas/info.json
+++ b/keyboards/cannonkeys/atlas/info.json
@@ -8,6 +8,8 @@
"pid": "0xA7A5",
"device_version": "0.0.1"
},
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_ortho_5x12": {
"layout": [
diff --git a/keyboards/cannonkeys/atlas/rules.mk b/keyboards/cannonkeys/atlas/rules.mk
index b14bde0fb5..fa596a2fb8 100644
--- a/keyboards/cannonkeys/atlas/rules.mk
+++ b/keyboards/cannonkeys/atlas/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Build Options
# change yes to no to disable
#
diff --git a/keyboards/cannonkeys/atlas_alps/config.h b/keyboards/cannonkeys/atlas_alps/config.h
index b51b837654..9adbb67a2f 100644
--- a/keyboards/cannonkeys/atlas_alps/config.h
+++ b/keyboards/cannonkeys/atlas_alps/config.h
@@ -16,11 +16,6 @@
#pragma once
-#include "config_common.h"
-
-/* key matrix size */
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 12
/* key matrix pins */
#define MATRIX_ROW_PINS { B5, B4, D1, D7, D6 }
@@ -30,10 +25,6 @@
/* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/atlas_alps/info.json b/keyboards/cannonkeys/atlas_alps/info.json
index 889644a6ab..e1831be72a 100644
--- a/keyboards/cannonkeys/atlas_alps/info.json
+++ b/keyboards/cannonkeys/atlas_alps/info.json
@@ -8,6 +8,9 @@
"pid": "0xA7A5",
"device_version": "0.1.0"
},
+ "processor": "atmega32u4",
+ "bootloader": "atmel-dfu",
+ "community_layouts": ["ortho_5x12"],
"layouts": {
"LAYOUT_ortho_5x12": {
"layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"|", "x":11, "y":0}, {"label":"Tab", "x":0, "y":1}, {"label":"Q", "x":1, "y":1}, {"label":"W", "x":2, "y":1}, {"label":"E", "x":3, "y":1}, {"label":"R", "x":4, "y":1}, {"label":"T", "x":5, "y":1}, {"label":"Y", "x":6, "y":1}, {"label":"U", "x":7, "y":1}, {"label":"I", "x":8, "y":1}, {"label":"O", "x":9, "y":1}, {"label":"P", "x":10, "y":1}, {"label":"Back Space", "x":11, "y":1}, {"label":"Esc", "x":0, "y":2}, {"label":"A", "x":1, "y":2}, {"label":"S", "x":2, "y":2}, {"label":"D", "x":3, "y":2}, {"label":"F", "x":4, "y":2}, {"label":"G", "x":5, "y":2}, {"label":"H", "x":6, "y":2}, {"label":"J", "x":7, "y":2}, {"label":"K", "x":8, "y":2}, {"label":"L", "x":9, "y":2}, {"label":";", "x":10, "y":2}, {"label":"'", "x":11, "y":2}, {"label":"Shift", "x":0, "y":3}, {"label":"Z", "x":1, "y":3}, {"label":"X", "x":2, "y":3}, {"label":"C", "x":3, "y":3}, {"label":"V", "x":4, "y":3}, {"label":"B", "x":5, "y":3}, {"label":"N", "x":6, "y":3}, {"label":"M", "x":7, "y":3}, {"label":",", "x":8, "y":3}, {"label":".", "x":9, "y":3}, {"label":"/", "x":10, "y":3}, {"label":"Return", "x":11, "y":3}, {"label":"Caps Lock", "x":0, "y":4}, {"label":"Ctrl", "x":1, "y":4}, {"label":"Alt", "x":2, "y":4}, {"label":"Super", "x":3, "y":4}, {"label":"&dArr;", "x":4, "y":4}, {"x":5, "y":4}, {"x":6, "y":4}, {"label":"&uArr;", "x":7, "y":4}, {"label":"&larr;", "x":8, "y":4}, {"label":"&darr;", "x":9, "y":4}, {"label":"&uarr;", "x":10, "y":4}, {"label":"&rarr;", "x":11, "y":4}]
diff --git a/keyboards/cannonkeys/atlas_alps/rules.mk b/keyboards/cannonkeys/atlas_alps/rules.mk
index b2d2b4285f..b851d0ab39 100644
--- a/keyboards/cannonkeys/atlas_alps/rules.mk
+++ b/keyboards/cannonkeys/atlas_alps/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = atmega32u4
-
-# Bootloader selection
-BOOTLOADER = atmel-dfu
-
# Build Options
# change yes to no to disable
#
@@ -16,5 +10,3 @@ NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
-
-LAYOUTS = ortho_5x12
diff --git a/keyboards/cannonkeys/balance/config.h b/keyboards/cannonkeys/balance/config.h
index 618dd57621..5d93b09a27 100644
--- a/keyboards/cannonkeys/balance/config.h
+++ b/keyboards/cannonkeys/balance/config.h
@@ -17,34 +17,15 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 20
-
#define MATRIX_COL_PINS { B11, B10, B2, B1, B0, A7, A6, A5, A4, A3, A2, A1, F1, C15, B3, C14, C13, B9, B8, B7 }
#define MATRIX_ROW_PINS { B4, A15, A14, A0, F0 }
#define DIODE_DIRECTION COL2ROW
-#define LED_CAPS_LOCK_PIN B12
-#define LED_NUM_LOCK_PIN B14
-#define LED_PIN_ON_STATE 0
-
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define ENCODERS_PAD_A { B5 }
-#define ENCODERS_PAD_B { B6 }
-
-#define ENCODER_RESOLUTION 2
#define TAP_CODE_DELAY 25
#define DYNAMIC_KEYMAP_LAYER_COUNT 3
diff --git a/keyboards/cannonkeys/balance/info.json b/keyboards/cannonkeys/balance/info.json
index 3587ab7ea5..b9844e5295 100644
--- a/keyboards/cannonkeys/balance/info.json
+++ b/keyboards/cannonkeys/balance/info.json
@@ -8,6 +8,18 @@
"pid": "0xBA77",
"device_version": "0.0.1"
},
+ "encoder": {
+ "rotary": [
+ {"pin_a": "B5", "pin_b": "B6", "resolution": 2}
+ ]
+ },
+ "indicators": {
+ "caps_lock": "B12",
+ "num_lock": "B14",
+ "on_state": 0
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_all": {
"layout": [
diff --git a/keyboards/cannonkeys/balance/rules.mk b/keyboards/cannonkeys/balance/rules.mk
index e651d67c1e..aa1b707d43 100644
--- a/keyboards/cannonkeys/balance/rules.mk
+++ b/keyboards/cannonkeys/balance/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -p FFFF -v FFFF
diff --git a/keyboards/cannonkeys/brutalv2_1800/keymaps/default/keymap.c b/keyboards/cannonkeys/brutalv2_1800/keymaps/default/keymap.c
index 78607d6a60..83149576a5 100644
--- a/keyboards/cannonkeys/brutalv2_1800/keymaps/default/keymap.c
+++ b/keyboards/cannonkeys/brutalv2_1800/keymaps/default/keymap.c
@@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
BL_BRTG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- BL_INC, BL_DEC, BL_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ BL_UP, BL_DOWN, BL_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
)
};
diff --git a/keyboards/cannonkeys/brutalv2_1800/keymaps/via/keymap.c b/keyboards/cannonkeys/brutalv2_1800/keymaps/via/keymap.c
index 7b3aecc4e0..df3bc58bfc 100644
--- a/keyboards/cannonkeys/brutalv2_1800/keymaps/via/keymap.c
+++ b/keyboards/cannonkeys/brutalv2_1800/keymaps/via/keymap.c
@@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
BL_BRTG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- BL_INC, BL_DEC, BL_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ BL_UP, BL_DOWN, BL_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
diff --git a/keyboards/cannonkeys/brutalv2_65/config.h b/keyboards/cannonkeys/brutalv2_65/config.h
index 543ac8d550..14b14879d6 100644
--- a/keyboards/cannonkeys/brutalv2_65/config.h
+++ b/keyboards/cannonkeys/brutalv2_65/config.h
@@ -17,22 +17,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 15
-
#define MATRIX_COL_PINS { C13, C15, B13, B12, B11, B10, B2, B1, B0, A7, A6, A5, A4, A3, A2 }
#define MATRIX_ROW_PINS { C14, A1, B14, B15, A8 }
#define DIODE_DIRECTION COL2ROW
-#define LED_CAPS_LOCK_PIN B3
-#define LED_PIN_ON_STATE 0
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
diff --git a/keyboards/cannonkeys/brutalv2_65/info.json b/keyboards/cannonkeys/brutalv2_65/info.json
index 7edbbdf05c..000e541557 100644
--- a/keyboards/cannonkeys/brutalv2_65/info.json
+++ b/keyboards/cannonkeys/brutalv2_65/info.json
@@ -8,6 +8,12 @@
"pid": "0x0008",
"device_version": "0.0.1"
},
+ "indicators": {
+ "caps_lock": "B3",
+ "on_state": 0
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_all": {
"layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"Bksp", "x":13, "y":0}, {"label":"Del", "x":14, "y":0}, {"label":"Home", "x":15, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"End", "x":15, "y":1}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"PgUp", "x":15, "y":2}, {"label":"Shift", "x":0, "y":3, "w":1.25}, {"label":"|", "x":1.25, "y":3}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"label":"Up", "x":14, "y":3}, {"label":"PgDn", "x":15, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.25}, {"label":"Ctrl", "x":11.25, "y":4, "w":1.25}, {"label":"Left", "x":13, "y":4}, {"label":"Down", "x":14, "y":4}, {"label":"Right", "x":15, "y":4}]
diff --git a/keyboards/cannonkeys/brutalv2_65/rules.mk b/keyboards/cannonkeys/brutalv2_65/rules.mk
index 7b44b402d1..f56120695a 100644
--- a/keyboards/cannonkeys/brutalv2_65/rules.mk
+++ b/keyboards/cannonkeys/brutalv2_65/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
diff --git a/keyboards/cannonkeys/chimera65/config.h b/keyboards/cannonkeys/chimera65/config.h
index a8bc244b5c..26e04106ab 100644
--- a/keyboards/cannonkeys/chimera65/config.h
+++ b/keyboards/cannonkeys/chimera65/config.h
@@ -17,27 +17,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 16
-
#define MATRIX_COL_PINS { B11, B10, B2, B1, A5, A4, A3, A2, A1, F0, C15, C14, A9, A8, A10, B3 }
#define MATRIX_ROW_PINS { A13, A14, A15, C13, B8 }
#define DIODE_DIRECTION COL2ROW
-#define BACKLIGHT_PIN A6
#define BACKLIGHT_PWM_DRIVER PWMD3
#define BACKLIGHT_PWM_CHANNEL 1
#define BACKLIGHT_PAL_MODE 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/chimera65/info.json b/keyboards/cannonkeys/chimera65/info.json
index 3d68ba84d8..cdd07c3459 100644
--- a/keyboards/cannonkeys/chimera65/info.json
+++ b/keyboards/cannonkeys/chimera65/info.json
@@ -8,6 +8,13 @@
"pid": "0xC024",
"device_version": "0.0.1"
},
+ "backlight": {
+ "pin": "A6",
+ "levels": 6,
+ "breathing": true
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_default": {
"layout": [
diff --git a/keyboards/cannonkeys/chimera65/rules.mk b/keyboards/cannonkeys/chimera65/rules.mk
index c2cb86cc7d..09c801a849 100644
--- a/keyboards/cannonkeys/chimera65/rules.mk
+++ b/keyboards/cannonkeys/chimera65/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Build Options
# change yes to no to disable
#
diff --git a/keyboards/cannonkeys/cloudline/config.h b/keyboards/cannonkeys/cloudline/config.h
index b1064d6349..d7c7052163 100644
--- a/keyboards/cannonkeys/cloudline/config.h
+++ b/keyboards/cannonkeys/cloudline/config.h
@@ -3,30 +3,13 @@
#pragma once
-#define MATRIX_ROWS 6
-#define MATRIX_COLS 18
-
#define MATRIX_COL_PINS { B1, B2, B10, B11, B12, B14, A8, A9, A10, A3, B0, A2, A1, A7, A0, B4, B6, B7 }
#define MATRIX_ROW_PINS { A15, B3, B5, A4, A5, F1 }
#define DIODE_DIRECTION COL2ROW
-#define BACKLIGHT_PIN A6
#define BACKLIGHT_PWM_DRIVER PWMD3
#define BACKLIGHT_PWM_CHANNEL 1
#define BACKLIGHT_PAL_MODE 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-#define LED_CAPS_LOCK_PIN B9
-#define LED_SCROLL_LOCK_PIN F0
-#define LED_PIN_ON_STATE 0
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/cloudline/info.json b/keyboards/cannonkeys/cloudline/info.json
index 04624aa3b0..d5d8b817ea 100644
--- a/keyboards/cannonkeys/cloudline/info.json
+++ b/keyboards/cannonkeys/cloudline/info.json
@@ -8,6 +8,18 @@
"pid": "0x000A",
"device_version": "0.0.1"
},
+ "backlight": {
+ "pin": "A6",
+ "levels": 6,
+ "breathing": true
+ },
+ "indicators": {
+ "caps_lock": "B9",
+ "scroll_lock": "F0",
+ "on_state": 0
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_all": {
"layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1.25, "y":0}, {"label":"F2", "x":2.25, "y":0}, {"label":"F3", "x":3.25, "y":0}, {"label":"F4", "x":4.25, "y":0}, {"label":"F5", "x":5.5, "y":0}, {"label":"F6", "x":6.5, "y":0}, {"label":"F7", "x":7.5, "y":0}, {"label":"F8", "x":8.5, "y":0}, {"label":"F9", "x":9.75, "y":0}, {"label":"F10", "x":10.75, "y":0}, {"label":"F11", "x":11.75, "y":0}, {"label":"F12", "x":12.75, "y":0}, {"label":"F13", "x":14, "y":0}, {"label":"PrtSc", "x":15.25, "y":0}, {"label":"Scroll Lock", "x":16.25, "y":0}, {"label":"Pause", "x":17.25, "y":0}, {"label":"~", "x":0, "y":1.25}, {"label":"!", "x":1, "y":1.25}, {"label":"@", "x":2, "y":1.25}, {"label":"#", "x":3, "y":1.25}, {"label":"$", "x":4, "y":1.25}, {"label":"%", "x":5, "y":1.25}, {"label":"^", "x":6, "y":1.25}, {"label":"&", "x":7, "y":1.25}, {"label":"*", "x":8, "y":1.25}, {"label":"(", "x":9, "y":1.25}, {"label":")", "x":10, "y":1.25}, {"label":"_", "x":11, "y":1.25}, {"label":"+", "x":12, "y":1.25}, {"x":13, "y":1.25}, {"x":14, "y":1.25}, {"label":"Insert", "x":15.25, "y":1.25}, {"label":"Home", "x":16.25, "y":1.25}, {"label":"PgUp", "x":17.25, "y":1.25}, {"label":"Tab", "x":0, "y":2.25, "w":1.5}, {"label":"Q", "x":1.5, "y":2.25}, {"label":"W", "x":2.5, "y":2.25}, {"label":"E", "x":3.5, "y":2.25}, {"label":"R", "x":4.5, "y":2.25}, {"label":"T", "x":5.5, "y":2.25}, {"label":"Y", "x":6.5, "y":2.25}, {"label":"U", "x":7.5, "y":2.25}, {"label":"I", "x":8.5, "y":2.25}, {"label":"O", "x":9.5, "y":2.25}, {"label":"P", "x":10.5, "y":2.25}, {"label":"{", "x":11.5, "y":2.25}, {"label":"}", "x":12.5, "y":2.25}, {"label":"|", "x":13.5, "y":2.25, "w":1.5}, {"label":"Delete", "x":15.25, "y":2.25}, {"label":"End", "x":16.25, "y":2.25}, {"label":"PgDn", "x":17.25, "y":2.25}, {"label":"Caps Lock", "x":0, "y":3.25, "w":1.75}, {"label":"A", "x":1.75, "y":3.25}, {"label":"S", "x":2.75, "y":3.25}, {"label":"D", "x":3.75, "y":3.25}, {"label":"F", "x":4.75, "y":3.25}, {"label":"G", "x":5.75, "y":3.25}, {"label":"H", "x":6.75, "y":3.25}, {"label":"J", "x":7.75, "y":3.25}, {"label":"K", "x":8.75, "y":3.25}, {"label":"L", "x":9.75, "y":3.25}, {"label":":", "x":10.75, "y":3.25}, {"label":"\"", "x":11.75, "y":3.25}, {"x":12.75, "y":3.25}, {"label":"Enter", "x":13.75, "y":3.25, "w":1.25}, {"label":"Shift", "x":0, "y":4.25, "w":1.25}, {"x":1.25, "y":4.25}, {"label":"Z", "x":2.25, "y":4.25}, {"label":"X", "x":3.25, "y":4.25}, {"label":"C", "x":4.25, "y":4.25}, {"label":"V", "x":5.25, "y":4.25}, {"label":"B", "x":6.25, "y":4.25}, {"label":"N", "x":7.25, "y":4.25}, {"label":"M", "x":8.25, "y":4.25}, {"label":"<", "x":9.25, "y":4.25}, {"label":">", "x":10.25, "y":4.25}, {"label":"?", "x":11.25, "y":4.25}, {"label":"Shift", "x":12.25, "y":4.25, "w":1.75}, {"label":"Fn", "x":14, "y":4.25}, {"label":"\u2191", "x":16.25, "y":4.25}, {"label":"Ctrl", "x":0, "y":5.25, "w":1.5}, {"label":"Win", "x":1.5, "y":5.25}, {"label":"Alt", "x":2.5, "y":5.25, "w":1.5}, {"x":4, "y":5.25, "w":7}, {"label":"Alt", "x":11, "y":5.25, "w":1.5}, {"label":"Menu", "x":12.5, "y":5.25}, {"label":"Ctrl", "x":13.5, "y":5.25, "w":1.5}, {"label":"\u2190", "x":15.25, "y":5.25}, {"label":"\u2193", "x":16.25, "y":5.25}, {"label":"\u2192", "x":17.25, "y":5.25}]
diff --git a/keyboards/cannonkeys/cloudline/rules.mk b/keyboards/cannonkeys/cloudline/rules.mk
index 0d99007c16..2eaae2dc9b 100644
--- a/keyboards/cannonkeys/cloudline/rules.mk
+++ b/keyboards/cannonkeys/cloudline/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
diff --git a/keyboards/cannonkeys/crin/config.h b/keyboards/cannonkeys/crin/config.h
index 95c49efb09..c275e78f23 100644
--- a/keyboards/cannonkeys/crin/config.h
+++ b/keyboards/cannonkeys/crin/config.h
@@ -17,30 +17,14 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 18
-
#define MATRIX_COL_PINS { B0, C15, C14, A7, A5, C13, A4, A2, A1, A0, B9, B8, B7, A3, B6, B4, B3, A15 }
#define MATRIX_ROW_PINS { B11, B10, B2, F0, B5 }
#define DIODE_DIRECTION COL2ROW
-#define BACKLIGHT_PIN A6
#define BACKLIGHT_PWM_DRIVER PWMD3
#define BACKLIGHT_PWM_CHANNEL 1
#define BACKLIGHT_PAL_MODE 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-#define LED_CAPS_LOCK_PIN F1
-#define LED_PIN_ON_STATE 0
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/crin/info.json b/keyboards/cannonkeys/crin/info.json
index e3b70c34bc..6c6afa0f89 100644
--- a/keyboards/cannonkeys/crin/info.json
+++ b/keyboards/cannonkeys/crin/info.json
@@ -8,6 +8,17 @@
"pid": "0x0012",
"device_version": "0.0.1"
},
+ "backlight": {
+ "pin": "A6",
+ "levels": 6,
+ "breathing": true
+ },
+ "indicators": {
+ "caps_lock": "F1",
+ "on_state": 0
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
"layout_aliases": {
"LAYOUT_all": "LAYOUT"
},
diff --git a/keyboards/cannonkeys/crin/rules.mk b/keyboards/cannonkeys/crin/rules.mk
index 36c7523cb9..e58c511435 100644
--- a/keyboards/cannonkeys/crin/rules.mk
+++ b/keyboards/cannonkeys/crin/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
diff --git a/keyboards/cannonkeys/db60/config.h b/keyboards/cannonkeys/db60/config.h
index d2cbd7523d..9e034e7c12 100644
--- a/keyboards/cannonkeys/db60/config.h
+++ b/keyboards/cannonkeys/db60/config.h
@@ -17,27 +17,14 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 15
-
#define MATRIX_COL_PINS { B11, B10, B2, A9, A15, B3, B4, B5, B6, B7, B8, B9, C13, C14, C15 }
#define MATRIX_ROW_PINS { B1, B0, A7, A5, A4 }
#define DIODE_DIRECTION COL2ROW
-#define BACKLIGHT_PIN A6
#define BACKLIGHT_PWM_DRIVER PWMD3
#define BACKLIGHT_PWM_CHANNEL 1
#define BACKLIGHT_PAL_MODE 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/db60/db60.c b/keyboards/cannonkeys/db60/db60.c
deleted file mode 100644
index 25344360bc..0000000000
--- a/keyboards/cannonkeys/db60/db60.c
+++ /dev/null
@@ -1 +0,0 @@
-#include "db60.h"
diff --git a/keyboards/cannonkeys/db60/db60.h b/keyboards/cannonkeys/db60/db60.h
deleted file mode 100644
index b0d5105e9f..0000000000
--- a/keyboards/cannonkeys/db60/db60.h
+++ /dev/null
@@ -1,23 +0,0 @@
- /* Copyright 2021 Andrew Kannan
- *
- * 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/>.
- */
-
-#if defined(KEYBOARD_cannonkeys_db60_j02)
- #include "j02.h"
-#elif defined(KEYBOARD_cannonkeys_db60_hotswap)
- #include "hotswap.h"
-#else
- #include "rev2.h"
-#endif
diff --git a/keyboards/cannonkeys/db60/hotswap/hotswap.h b/keyboards/cannonkeys/db60/hotswap/hotswap.h
deleted file mode 100644
index 84e3528fd0..0000000000
--- a/keyboards/cannonkeys/db60/hotswap/hotswap.h
+++ /dev/null
@@ -1,63 +0,0 @@
- /* Copyright 2021 Andrew Kannan
- *
- * 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
-
-#include "quantum.h"
-
-#define KNO KC_NO
-
-#define LAYOUT_60_ansi( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0E, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2E, \
- K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \
- K40, K41, K42, K46, K4A, K4B, K4C, K4E \
-) { \
- { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, KNO, K0E}, \
- { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, KNO, K1E }, \
- { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, KNO, KNO, K2E }, \
- { K30, KNO, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, KNO, KNO }, \
- { K40, K41, K42, KNO, KNO, KNO, K46, KNO, KNO, KNO, K4A, K4B, K4C, KNO, K4E } \
-}
-
-#define LAYOUT_60_tsangan_hhkb( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2E, \
- K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3E,\
- K40, K41, K42, K46, K4B, K4C, K4E \
-) { \
- { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E}, \
- { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, KNO, K1E }, \
- { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, KNO, KNO, K2E }, \
- { K30, KNO, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, KNO, K3E }, \
- { K40, K41, K42, KNO, KNO, KNO, K46, KNO, KNO, KNO, KNO, K4B, K4C, KNO, K4E } \
-}
-
-#define LAYOUT_all( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E,\
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2E, \
- K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3E,\
- K40, K41, K42, K46, K4A, K4B, K4C, K4E \
-) { \
- { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E}, \
- { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, KNO, K1E }, \
- { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, KNO, K2E }, \
- { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, KNO, K3E }, \
- { K40, K41, K42, KNO, KNO, KNO, K46, KNO, KNO, KNO, K4A, K4B, K4C, KNO, K4E } \
-}
diff --git a/keyboards/cannonkeys/db60/hotswap/info.json b/keyboards/cannonkeys/db60/hotswap/info.json
index 61e94803a9..61a7ccb56c 100644
--- a/keyboards/cannonkeys/db60/hotswap/info.json
+++ b/keyboards/cannonkeys/db60/hotswap/info.json
@@ -3,144 +3,218 @@
"usb": {
"pid": "0xDB62"
},
+ "community_layouts": ["60_ansi", "60_tsangan_hhkb"],
"layouts": {
"LAYOUT_60_ansi": {
"layout": [
- {"label":"~", "x":0, "y":0},
- {"label":"!", "x":1, "y":0},
- {"label":"@", "x":2, "y":0},
- {"label":"#", "x":3, "y":0},
- {"label":"$", "x":4, "y":0},
- {"label":"%", "x":5, "y":0},
- {"label":"^", "x":6, "y":0},
- {"label":"&", "x":7, "y":0},
- {"label":"*", "x":8, "y":0},
- {"label":"(", "x":9, "y":0},
- {"label":")", "x":10, "y":0},
- {"label":"_", "x":11, "y":0},
- {"label":"+", "x":12, "y":0},
- {"label":"Backspace", "x":13, "y":0, "w":2},
+ {"x":0, "y":0, "matrix": [0, 0]},
+ {"x":1, "y":0, "matrix": [0, 1]},
+ {"x":2, "y":0, "matrix": [0, 2]},
+ {"x":3, "y":0, "matrix": [0, 3]},
+ {"x":4, "y":0, "matrix": [0, 4]},
+ {"x":5, "y":0, "matrix": [0, 5]},
+ {"x":6, "y":0, "matrix": [0, 6]},
+ {"x":7, "y":0, "matrix": [0, 7]},
+ {"x":8, "y":0, "matrix": [0, 8]},
+ {"x":9, "y":0, "matrix": [0, 9]},
+ {"x":10, "y":0, "matrix": [0, 10]},
+ {"x":11, "y":0, "matrix": [0, 11]},
+ {"x":12, "y":0, "matrix": [0, 12]},
+ {"x":13, "y":0, "w":2, "matrix": [0, 14]},
- {"label":"Tab", "x":0, "y":1, "w":1.5},
- {"label":"Q", "x":1.5, "y":1},
- {"label":"W", "x":2.5, "y":1},
- {"label":"E", "x":3.5, "y":1},
- {"label":"R", "x":4.5, "y":1},
- {"label":"T", "x":5.5, "y":1},
- {"label":"Y", "x":6.5, "y":1},
- {"label":"U", "x":7.5, "y":1},
- {"label":"I", "x":8.5, "y":1},
- {"label":"O", "x":9.5, "y":1},
- {"label":"P", "x":10.5, "y":1},
- {"label":"{", "x":11.5, "y":1},
- {"label":"}", "x":12.5, "y":1},
- {"label":"|", "x":13.5, "y":1, "w":1.5},
+ {"x":0, "y":1, "w":1.5, "matrix": [1, 0]},
+ {"x":1.5, "y":1, "matrix": [1, 1]},
+ {"x":2.5, "y":1, "matrix": [1, 2]},
+ {"x":3.5, "y":1, "matrix": [1, 3]},
+ {"x":4.5, "y":1, "matrix": [1, 4]},
+ {"x":5.5, "y":1, "matrix": [1, 5]},
+ {"x":6.5, "y":1, "matrix": [1, 6]},
+ {"x":7.5, "y":1, "matrix": [1, 7]},
+ {"x":8.5, "y":1, "matrix": [1, 8]},
+ {"x":9.5, "y":1, "matrix": [1, 9]},
+ {"x":10.5, "y":1, "matrix": [1, 10]},
+ {"x":11.5, "y":1, "matrix": [1, 11]},
+ {"x":12.5, "y":1, "matrix": [1, 12]},
+ {"x":13.5, "y":1, "w":1.5, "matrix": [1, 14]},
- {"label":"Caps Lock", "x":0, "y":2, "w":1.75},
- {"label":"A", "x":1.75, "y":2},
- {"label":"S", "x":2.75, "y":2},
- {"label":"D", "x":3.75, "y":2},
- {"label":"F", "x":4.75, "y":2},
- {"label":"G", "x":5.75, "y":2},
- {"label":"H", "x":6.75, "y":2},
- {"label":"J", "x":7.75, "y":2},
- {"label":"K", "x":8.75, "y":2},
- {"label":"L", "x":9.75, "y":2},
- {"label":":", "x":10.75, "y":2},
- {"label":"\"", "x":11.75, "y":2},
- {"label":"Enter", "x":12.75, "y":2, "w":2.25},
+ {"x":0, "y":2, "w":1.75, "matrix": [2, 0]},
+ {"x":1.75, "y":2, "matrix": [2, 1]},
+ {"x":2.75, "y":2, "matrix": [2, 2]},
+ {"x":3.75, "y":2, "matrix": [2, 3]},
+ {"x":4.75, "y":2, "matrix": [2, 4]},
+ {"x":5.75, "y":2, "matrix": [2, 5]},
+ {"x":6.75, "y":2, "matrix": [2, 6]},
+ {"x":7.75, "y":2, "matrix": [2, 7]},
+ {"x":8.75, "y":2, "matrix": [2, 8]},
+ {"x":9.75, "y":2, "matrix": [2, 9]},
+ {"x":10.75, "y":2, "matrix": [2, 10]},
+ {"x":11.75, "y":2, "matrix": [2, 11]},
+ {"x":12.75, "y":2, "w":2.25, "matrix": [2, 14]},
- {"label":"Shift", "x":0, "y":3, "w":2.25},
- {"label":"Z", "x":2.25, "y":3},
- {"label":"X", "x":3.25, "y":3},
- {"label":"C", "x":4.25, "y":3},
- {"label":"V", "x":5.25, "y":3},
- {"label":"B", "x":6.25, "y":3},
- {"label":"N", "x":7.25, "y":3},
- {"label":"M", "x":8.25, "y":3},
- {"label":"<", "x":9.25, "y":3},
- {"label":">", "x":10.25, "y":3},
- {"label":"?", "x":11.25, "y":3},
- {"label":"Shift", "x":12.25, "y":3, "w":2.75},
+ {"x":0, "y":3, "w":2.25, "matrix": [3, 0]},
+ {"x":2.25, "y":3, "matrix": [3, 2]},
+ {"x":3.25, "y":3, "matrix": [3, 3]},
+ {"x":4.25, "y":3, "matrix": [3, 4]},
+ {"x":5.25, "y":3, "matrix": [3, 5]},
+ {"x":6.25, "y":3, "matrix": [3, 6]},
+ {"x":7.25, "y":3, "matrix": [3, 7]},
+ {"x":8.25, "y":3, "matrix": [3, 8]},
+ {"x":9.25, "y":3, "matrix": [3, 9]},
+ {"x":10.25, "y":3, "matrix": [3, 10]},
+ {"x":11.25, "y":3, "matrix": [3, 11]},
+ {"x":12.25, "y":3, "w":2.75, "matrix": [3, 12]},
- {"label":"Ctrl", "x":0, "y":4, "w":1.25},
- {"label":"Win", "x":1.25, "y":4, "w":1.25},
- {"label":"Alt", "x":2.5, "y":4, "w":1.25},
- {"x":3.75, "y":4, "w":6.25},
- {"label":"Alt", "x":10, "y":4, "w":1.25},
- {"label":"Win", "x":11.25, "y":4, "w":1.25},
- {"label":"Menu", "x":12.5, "y":4, "w":1.25},
- {"label":"Ctrl", "x":13.75, "y":4, "w":1.25}
+ {"x":0, "y":4, "w":1.25, "matrix": [4, 0]},
+ {"x":1.25, "y":4, "w":1.25, "matrix": [4, 1]},
+ {"x":2.5, "y":4, "w":1.25, "matrix": [4, 2]},
+ {"x":3.75, "y":4, "w":6.25, "matrix": [4, 6]},
+ {"x":10, "y":4, "w":1.25, "matrix": [4, 10]},
+ {"x":11.25, "y":4, "w":1.25, "matrix": [4, 11]},
+ {"x":12.5, "y":4, "w":1.25, "matrix": [4, 12]},
+ {"x":13.75, "y":4, "w":1.25, "matrix": [4, 14]}
]
},
"LAYOUT_60_tsangan_hhkb": {
"layout": [
- {"label":"~", "x":0, "y":0},
- {"label":"!", "x":1, "y":0},
- {"label":"@", "x":2, "y":0},
- {"label":"#", "x":3, "y":0},
- {"label":"$", "x":4, "y":0},
- {"label":"%", "x":5, "y":0},
- {"label":"^", "x":6, "y":0},
- {"label":"&", "x":7, "y":0},
- {"label":"*", "x":8, "y":0},
- {"label":"(", "x":9, "y":0},
- {"label":")", "x":10, "y":0},
- {"label":"_", "x":11, "y":0},
- {"label":"+", "x":12, "y":0},
- {"x":13, "y":0},
- {"x":14, "y":0},
+ {"x":0, "y":0, "matrix": [0, 0]},
+ {"x":1, "y":0, "matrix": [0, 1]},
+ {"x":2, "y":0, "matrix": [0, 2]},
+ {"x":3, "y":0, "matrix": [0, 3]},
+ {"x":4, "y":0, "matrix": [0, 4]},
+ {"x":5, "y":0, "matrix": [0, 5]},
+ {"x":6, "y":0, "matrix": [0, 6]},
+ {"x":7, "y":0, "matrix": [0, 7]},
+ {"x":8, "y":0, "matrix": [0, 8]},
+ {"x":9, "y":0, "matrix": [0, 9]},
+ {"x":10, "y":0, "matrix": [0, 10]},
+ {"x":11, "y":0, "matrix": [0, 11]},
+ {"x":12, "y":0, "matrix": [0, 12]},
+ {"x":13, "y":0, "matrix": [0, 13]},
+ {"x":14, "y":0, "matrix": [0, 14]},
- {"label":"Tab", "x":0, "y":1, "w":1.5},
- {"label":"Q", "x":1.5, "y":1},
- {"label":"W", "x":2.5, "y":1},
- {"label":"E", "x":3.5, "y":1},
- {"label":"R", "x":4.5, "y":1},
- {"label":"T", "x":5.5, "y":1},
- {"label":"Y", "x":6.5, "y":1},
- {"label":"U", "x":7.5, "y":1},
- {"label":"I", "x":8.5, "y":1},
- {"label":"O", "x":9.5, "y":1},
- {"label":"P", "x":10.5, "y":1},
- {"label":"{", "x":11.5, "y":1},
- {"label":"}", "x":12.5, "y":1},
- {"label":"|", "x":13.5, "y":1, "w":1.5},
+ {"x":0, "y":1, "w":1.5, "matrix": [1, 0]},
+ {"x":1.5, "y":1, "matrix": [1, 1]},
+ {"x":2.5, "y":1, "matrix": [1, 2]},
+ {"x":3.5, "y":1, "matrix": [1, 3]},
+ {"x":4.5, "y":1, "matrix": [1, 4]},
+ {"x":5.5, "y":1, "matrix": [1, 5]},
+ {"x":6.5, "y":1, "matrix": [1, 6]},
+ {"x":7.5, "y":1, "matrix": [1, 7]},
+ {"x":8.5, "y":1, "matrix": [1, 8]},
+ {"x":9.5, "y":1, "matrix": [1, 9]},
+ {"x":10.5, "y":1, "matrix": [1, 10]},
+ {"x":11.5, "y":1, "matrix": [1, 11]},
+ {"x":12.5, "y":1, "matrix": [1, 12]},
+ {"x":13.5, "y":1, "w":1.5, "matrix": [1, 14]},
- {"label":"Caps Lock", "x":0, "y":2, "w":1.75},
- {"label":"A", "x":1.75, "y":2},
- {"label":"S", "x":2.75, "y":2},
- {"label":"D", "x":3.75, "y":2},
- {"label":"F", "x":4.75, "y":2},
- {"label":"G", "x":5.75, "y":2},
- {"label":"H", "x":6.75, "y":2},
- {"label":"J", "x":7.75, "y":2},
- {"label":"K", "x":8.75, "y":2},
- {"label":"L", "x":9.75, "y":2},
- {"label":":", "x":10.75, "y":2},
- {"label":"\"", "x":11.75, "y":2},
- {"label":"Enter", "x":12.75, "y":2, "w":2.25},
+ {"x":0, "y":2, "w":1.75, "matrix": [2, 0]},
+ {"x":1.75, "y":2, "matrix": [2, 1]},
+ {"x":2.75, "y":2, "matrix": [2, 2]},
+ {"x":3.75, "y":2, "matrix": [2, 3]},
+ {"x":4.75, "y":2, "matrix": [2, 4]},
+ {"x":5.75, "y":2, "matrix": [2, 5]},
+ {"x":6.75, "y":2, "matrix": [2, 6]},
+ {"x":7.75, "y":2, "matrix": [2, 7]},
+ {"x":8.75, "y":2, "matrix": [2, 8]},
+ {"x":9.75, "y":2, "matrix": [2, 9]},
+ {"x":10.75, "y":2, "matrix": [2, 10]},
+ {"x":11.75, "y":2, "matrix": [2, 11]},
+ {"x":12.75, "y":2, "w":2.25, "matrix": [2, 14]},
- {"label":"Shift", "x":0, "y":3, "w":2.25},
- {"label":"Z", "x":2.25, "y":3},
- {"label":"X", "x":3.25, "y":3},
- {"label":"C", "x":4.25, "y":3},
- {"label":"V", "x":5.25, "y":3},
- {"label":"B", "x":6.25, "y":3},
- {"label":"N", "x":7.25, "y":3},
- {"label":"M", "x":8.25, "y":3},
- {"label":"<", "x":9.25, "y":3},
- {"label":">", "x":10.25, "y":3},
- {"label":"?", "x":11.25, "y":3},
- {"label":"Shift", "x":12.25, "y":3, "w":1.75},
- {"x":14, "y":3},
+ {"x":0, "y":3, "w":2.25, "matrix": [3, 0]},
+ {"x":2.25, "y":3, "matrix": [3, 2]},
+ {"x":3.25, "y":3, "matrix": [3, 3]},
+ {"x":4.25, "y":3, "matrix": [3, 4]},
+ {"x":5.25, "y":3, "matrix": [3, 5]},
+ {"x":6.25, "y":3, "matrix": [3, 6]},
+ {"x":7.25, "y":3, "matrix": [3, 7]},
+ {"x":8.25, "y":3, "matrix": [3, 8]},
+ {"x":9.25, "y":3, "matrix": [3, 9]},
+ {"x":10.25, "y":3, "matrix": [3, 10]},
+ {"x":11.25, "y":3, "matrix": [3, 11]},
+ {"x":12.25, "y":3, "w":1.75, "matrix": [3, 12]},
+ {"x":14, "y":3, "matrix": [3, 14]},
- {"label":"Ctrl", "x":0, "y":4, "w":1.5},
- {"label":"Win", "x":1.5, "y":4},
- {"label":"Alt", "x":2.5, "y":4, "w":1.5},
- {"x":4, "y":4, "w":7},
- {"label":"Alt", "x":11, "y":4, "w":1.5},
- {"label":"Win", "x":12.5, "y":4},
- {"label":"Ctrl", "x":13.5, "y":4, "w":1.5}
+ {"x":0, "y":4, "w":1.5, "matrix": [4, 0]},
+ {"x":1.5, "y":4, "matrix": [4, 1]},
+ {"x":2.5, "y":4, "w":1.5, "matrix": [4, 2]},
+ {"x":4, "y":4, "w":7, "matrix": [4, 6]},
+ {"x":11, "y":4, "w":1.5, "matrix": [4, 11]},
+ {"x":12.5, "y":4, "matrix": [4, 12]},
+ {"x":13.5, "y":4, "w":1.5, "matrix": [4, 14]}
+ ]
+ },
+ "LAYOUT_all": {
+ "layout": [
+ {"x":0, "y":0, "matrix": [0, 0]},
+ {"x":1, "y":0, "matrix": [0, 1]},
+ {"x":2, "y":0, "matrix": [0, 2]},
+ {"x":3, "y":0, "matrix": [0, 3]},
+ {"x":4, "y":0, "matrix": [0, 4]},
+ {"x":5, "y":0, "matrix": [0, 5]},
+ {"x":6, "y":0, "matrix": [0, 6]},
+ {"x":7, "y":0, "matrix": [0, 7]},
+ {"x":8, "y":0, "matrix": [0, 8]},
+ {"x":9, "y":0, "matrix": [0, 9]},
+ {"x":10, "y":0, "matrix": [0, 10]},
+ {"x":11, "y":0, "matrix": [0, 11]},
+ {"x":12, "y":0, "matrix": [0, 12]},
+ {"x":13, "y":0, "matrix": [0, 13]},
+ {"x":14, "y":0, "matrix": [0, 14]},
+
+ {"x":0, "y":1, "w":1.5, "matrix": [1, 0]},
+ {"x":1.5, "y":1, "matrix": [1, 1]},
+ {"x":2.5, "y":1, "matrix": [1, 2]},
+ {"x":3.5, "y":1, "matrix": [1, 3]},
+ {"x":4.5, "y":1, "matrix": [1, 4]},
+ {"x":5.5, "y":1, "matrix": [1, 5]},
+ {"x":6.5, "y":1, "matrix": [1, 6]},
+ {"x":7.5, "y":1, "matrix": [1, 7]},
+ {"x":8.5, "y":1, "matrix": [1, 8]},
+ {"x":9.5, "y":1, "matrix": [1, 9]},
+ {"x":10.5, "y":1, "matrix": [1, 10]},
+ {"x":11.5, "y":1, "matrix": [1, 11]},
+ {"x":12.5, "y":1, "matrix": [1, 12]},
+ {"x":13.5, "y":1, "w":1.5, "matrix": [1, 14]},
+
+ {"x":0, "y":2, "w":1.75, "matrix": [2, 0]},
+ {"x":1.75, "y":2, "matrix": [2, 1]},
+ {"x":2.75, "y":2, "matrix": [2, 2]},
+ {"x":3.75, "y":2, "matrix": [2, 3]},
+ {"x":4.75, "y":2, "matrix": [2, 4]},
+ {"x":5.75, "y":2, "matrix": [2, 5]},
+ {"x":6.75, "y":2, "matrix": [2, 6]},
+ {"x":7.75, "y":2, "matrix": [2, 7]},
+ {"x":8.75, "y":2, "matrix": [2, 8]},
+ {"x":9.75, "y":2, "matrix": [2, 9]},
+ {"x":10.75, "y":2, "matrix": [2, 10]},
+ {"x":11.75, "y":2, "matrix": [2, 11]},
+ {"x":12.75, "y":2, "matrix": [2, 12]},
+ {"x":13.75, "y":2, "w":1.25, "matrix": [2, 14]},
+
+ {"x":0, "y":3, "w":1.25, "matrix": [3, 0]},
+ {"x":1.25, "y":3, "matrix": [3, 1]},
+ {"x":2.25, "y":3, "matrix": [3, 2]},
+ {"x":3.25, "y":3, "matrix": [3, 3]},
+ {"x":4.25, "y":3, "matrix": [3, 4]},
+ {"x":5.25, "y":3, "matrix": [3, 5]},
+ {"x":6.25, "y":3, "matrix": [3, 6]},
+ {"x":7.25, "y":3, "matrix": [3, 7]},
+ {"x":8.25, "y":3, "matrix": [3, 8]},
+ {"x":9.25, "y":3, "matrix": [3, 9]},
+ {"x":10.25, "y":3, "matrix": [3, 10]},
+ {"x":11.25, "y":3, "matrix": [3, 11]},
+ {"x":12.25, "y":3, "w":1.75, "matrix": [3, 12]},
+ {"x":14, "y":3, "matrix": [3, 14]},
+
+ {"x":0, "y":4, "w":1.25, "matrix": [4, 0]},
+ {"x":1.25, "y":4, "w":1.25, "matrix": [4, 1]},
+ {"x":2.5, "y":4, "w":1.25, "matrix": [4, 2]},
+ {"x":3.75, "y":4, "w":6.25, "matrix": [4, 6]},
+ {"x":10, "y":4, "w":1.25, "matrix": [4, 10]},
+ {"x":11.25, "y":4, "w":1.25, "matrix": [4, 11]},
+ {"x":12.5, "y":4, "w":1.25, "matrix": [4, 12]},
+ {"x":13.75, "y":4, "w":1.25, "matrix": [4, 14]}
]
}
}
diff --git a/keyboards/cannonkeys/db60/hotswap/rules.mk b/keyboards/cannonkeys/db60/hotswap/rules.mk
index b6e5c668f8..e69de29bb2 100644
--- a/keyboards/cannonkeys/db60/hotswap/rules.mk
+++ b/keyboards/cannonkeys/db60/hotswap/rules.mk
@@ -1 +0,0 @@
-LAYOUTS = 60_ansi 60_tsangan_hhkb
diff --git a/keyboards/cannonkeys/db60/info.json b/keyboards/cannonkeys/db60/info.json
index 9acffd83ed..5f4a94d367 100644
--- a/keyboards/cannonkeys/db60/info.json
+++ b/keyboards/cannonkeys/db60/info.json
@@ -5,5 +5,12 @@
"usb": {
"vid": "0xCA04",
"device_version": "0.0.1"
- }
+ },
+ "backlight": {
+ "pin": "A6",
+ "levels": 6,
+ "breathing": true
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu"
}
diff --git a/keyboards/cannonkeys/db60/j02/info.json b/keyboards/cannonkeys/db60/j02/info.json
index 462e243a81..a08f843483 100644
--- a/keyboards/cannonkeys/db60/j02/info.json
+++ b/keyboards/cannonkeys/db60/j02/info.json
@@ -3,214 +3,288 @@
"usb": {
"pid": "0xDB60"
},
+ "community_layouts": ["60_ansi", "60_tsangan_hhkb", "60_iso"],
"layouts": {
"LAYOUT_60_ansi": {
"layout": [
- {"label":"~", "x":0, "y":0},
- {"label":"!", "x":1, "y":0},
- {"label":"@", "x":2, "y":0},
- {"label":"#", "x":3, "y":0},
- {"label":"$", "x":4, "y":0},
- {"label":"%", "x":5, "y":0},
- {"label":"^", "x":6, "y":0},
- {"label":"&", "x":7, "y":0},
- {"label":"*", "x":8, "y":0},
- {"label":"(", "x":9, "y":0},
- {"label":")", "x":10, "y":0},
- {"label":"_", "x":11, "y":0},
- {"label":"+", "x":12, "y":0},
- {"label":"Backspace", "x":13, "y":0, "w":2},
-
- {"label":"Tab", "x":0, "y":1, "w":1.5},
- {"label":"Q", "x":1.5, "y":1},
- {"label":"W", "x":2.5, "y":1},
- {"label":"E", "x":3.5, "y":1},
- {"label":"R", "x":4.5, "y":1},
- {"label":"T", "x":5.5, "y":1},
- {"label":"Y", "x":6.5, "y":1},
- {"label":"U", "x":7.5, "y":1},
- {"label":"I", "x":8.5, "y":1},
- {"label":"O", "x":9.5, "y":1},
- {"label":"P", "x":10.5, "y":1},
- {"label":"{", "x":11.5, "y":1},
- {"label":"}", "x":12.5, "y":1},
- {"label":"|", "x":13.5, "y":1, "w":1.5},
-
- {"label":"Caps Lock", "x":0, "y":2, "w":1.75},
- {"label":"A", "x":1.75, "y":2},
- {"label":"S", "x":2.75, "y":2},
- {"label":"D", "x":3.75, "y":2},
- {"label":"F", "x":4.75, "y":2},
- {"label":"G", "x":5.75, "y":2},
- {"label":"H", "x":6.75, "y":2},
- {"label":"J", "x":7.75, "y":2},
- {"label":"K", "x":8.75, "y":2},
- {"label":"L", "x":9.75, "y":2},
- {"label":":", "x":10.75, "y":2},
- {"label":"\"", "x":11.75, "y":2},
- {"label":"Enter", "x":12.75, "y":2, "w":2.25},
-
- {"label":"Shift", "x":0, "y":3, "w":2.25},
- {"label":"Z", "x":2.25, "y":3},
- {"label":"X", "x":3.25, "y":3},
- {"label":"C", "x":4.25, "y":3},
- {"label":"V", "x":5.25, "y":3},
- {"label":"B", "x":6.25, "y":3},
- {"label":"N", "x":7.25, "y":3},
- {"label":"M", "x":8.25, "y":3},
- {"label":"<", "x":9.25, "y":3},
- {"label":">", "x":10.25, "y":3},
- {"label":"?", "x":11.25, "y":3},
- {"label":"Shift", "x":12.25, "y":3, "w":2.75},
-
- {"label":"Ctrl", "x":0, "y":4, "w":1.25},
- {"label":"Win", "x":1.25, "y":4, "w":1.25},
- {"label":"Alt", "x":2.5, "y":4, "w":1.25},
- {"x":3.75, "y":4, "w":6.25},
- {"label":"Alt", "x":10, "y":4, "w":1.25},
- {"label":"Win", "x":11.25, "y":4, "w":1.25},
- {"label":"Menu", "x":12.5, "y":4, "w":1.25},
- {"label":"Ctrl", "x":13.75, "y":4, "w":1.25}
+ {"x":0, "y":0, "matrix": [0, 0]},
+ {"x":1, "y":0, "matrix": [0, 1]},
+ {"x":2, "y":0, "matrix": [0, 2]},
+ {"x":3, "y":0, "matrix": [0, 3]},
+ {"x":4, "y":0, "matrix": [0, 4]},
+ {"x":5, "y":0, "matrix": [0, 5]},
+ {"x":6, "y":0, "matrix": [0, 6]},
+ {"x":7, "y":0, "matrix": [0, 7]},
+ {"x":8, "y":0, "matrix": [0, 8]},
+ {"x":9, "y":0, "matrix": [0, 9]},
+ {"x":10, "y":0, "matrix": [0, 10]},
+ {"x":11, "y":0, "matrix": [0, 11]},
+ {"x":12, "y":0, "matrix": [0, 12]},
+ {"x":13, "y":0, "w":2, "matrix": [0, 13]},
+
+ {"x":0, "y":1, "w":1.5, "matrix": [1, 0]},
+ {"x":1.5, "y":1, "matrix": [1, 1]},
+ {"x":2.5, "y":1, "matrix": [1, 2]},
+ {"x":3.5, "y":1, "matrix": [1, 3]},
+ {"x":4.5, "y":1, "matrix": [1, 4]},
+ {"x":5.5, "y":1, "matrix": [1, 5]},
+ {"x":6.5, "y":1, "matrix": [1, 6]},
+ {"x":7.5, "y":1, "matrix": [1, 7]},
+ {"x":8.5, "y":1, "matrix": [1, 8]},
+ {"x":9.5, "y":1, "matrix": [1, 9]},
+ {"x":10.5, "y":1, "matrix": [1, 10]},
+ {"x":11.5, "y":1, "matrix": [1, 11]},
+ {"x":12.5, "y":1, "matrix": [1, 12]},
+ {"x":13.5, "y":1, "w":1.5, "matrix": [1, 14]},
+
+ {"x":0, "y":2, "w":1.75, "matrix": [2, 0]},
+ {"x":1.75, "y":2, "matrix": [2, 1]},
+ {"x":2.75, "y":2, "matrix": [2, 2]},
+ {"x":3.75, "y":2, "matrix": [2, 3]},
+ {"x":4.75, "y":2, "matrix": [2, 4]},
+ {"x":5.75, "y":2, "matrix": [2, 5]},
+ {"x":6.75, "y":2, "matrix": [2, 6]},
+ {"x":7.75, "y":2, "matrix": [2, 7]},
+ {"x":8.75, "y":2, "matrix": [2, 8]},
+ {"x":9.75, "y":2, "matrix": [2, 9]},
+ {"x":10.75, "y":2, "matrix": [2, 10]},
+ {"x":11.75, "y":2, "matrix": [2, 11]},
+ {"x":12.75, "y":2, "w":2.25, "matrix": [2, 14]},
+
+ {"x":0, "y":3, "w":2.25, "matrix": [3, 0]},
+ {"x":2.25, "y":3, "matrix": [3, 2]},
+ {"x":3.25, "y":3, "matrix": [3, 3]},
+ {"x":4.25, "y":3, "matrix": [3, 4]},
+ {"x":5.25, "y":3, "matrix": [3, 5]},
+ {"x":6.25, "y":3, "matrix": [3, 6]},
+ {"x":7.25, "y":3, "matrix": [3, 7]},
+ {"x":8.25, "y":3, "matrix": [3, 8]},
+ {"x":9.25, "y":3, "matrix": [3, 9]},
+ {"x":10.25, "y":3, "matrix": [3, 10]},
+ {"x":11.25, "y":3, "matrix": [3, 11]},
+ {"x":12.25, "y":3, "w":2.75, "matrix": [3, 12]},
+
+ {"x":0, "y":4, "w":1.25, "matrix": [4, 0]},
+ {"x":1.25, "y":4, "w":1.25, "matrix": [4, 1]},
+ {"x":2.5, "y":4, "w":1.25, "matrix": [4, 2]},
+ {"x":3.75, "y":4, "w":6.25, "matrix": [4, 5]},
+ {"x":10, "y":4, "w":1.25, "matrix": [4, 10]},
+ {"x":11.25, "y":4, "w":1.25, "matrix": [4, 11]},
+ {"x":12.5, "y":4, "w":1.25, "matrix": [4, 12]},
+ {"x":13.75, "y":4, "w":1.25, "matrix": [4, 14]}
]
},
"LAYOUT_60_tsangan_hhkb": {
"layout": [
- {"label":"~", "x":0, "y":0},
- {"label":"!", "x":1, "y":0},
- {"label":"@", "x":2, "y":0},
- {"label":"#", "x":3, "y":0},
- {"label":"$", "x":4, "y":0},
- {"label":"%", "x":5, "y":0},
- {"label":"^", "x":6, "y":0},
- {"label":"&", "x":7, "y":0},
- {"label":"*", "x":8, "y":0},
- {"label":"(", "x":9, "y":0},
- {"label":")", "x":10, "y":0},
- {"label":"_", "x":11, "y":0},
- {"label":"+", "x":12, "y":0},
- {"x":13, "y":0},
- {"x":14, "y":0},
-
- {"label":"Tab", "x":0, "y":1, "w":1.5},
- {"label":"Q", "x":1.5, "y":1},
- {"label":"W", "x":2.5, "y":1},
- {"label":"E", "x":3.5, "y":1},
- {"label":"R", "x":4.5, "y":1},
- {"label":"T", "x":5.5, "y":1},
- {"label":"Y", "x":6.5, "y":1},
- {"label":"U", "x":7.5, "y":1},
- {"label":"I", "x":8.5, "y":1},
- {"label":"O", "x":9.5, "y":1},
- {"label":"P", "x":10.5, "y":1},
- {"label":"{", "x":11.5, "y":1},
- {"label":"}", "x":12.5, "y":1},
- {"label":"|", "x":13.5, "y":1, "w":1.5},
-
- {"label":"Caps Lock", "x":0, "y":2, "w":1.75},
- {"label":"A", "x":1.75, "y":2},
- {"label":"S", "x":2.75, "y":2},
- {"label":"D", "x":3.75, "y":2},
- {"label":"F", "x":4.75, "y":2},
- {"label":"G", "x":5.75, "y":2},
- {"label":"H", "x":6.75, "y":2},
- {"label":"J", "x":7.75, "y":2},
- {"label":"K", "x":8.75, "y":2},
- {"label":"L", "x":9.75, "y":2},
- {"label":":", "x":10.75, "y":2},
- {"label":"\"", "x":11.75, "y":2},
- {"label":"Enter", "x":12.75, "y":2, "w":2.25},
-
- {"label":"Shift", "x":0, "y":3, "w":2.25},
- {"label":"Z", "x":2.25, "y":3},
- {"label":"X", "x":3.25, "y":3},
- {"label":"C", "x":4.25, "y":3},
- {"label":"V", "x":5.25, "y":3},
- {"label":"B", "x":6.25, "y":3},
- {"label":"N", "x":7.25, "y":3},
- {"label":"M", "x":8.25, "y":3},
- {"label":"<", "x":9.25, "y":3},
- {"label":">", "x":10.25, "y":3},
- {"label":"?", "x":11.25, "y":3},
- {"label":"Shift", "x":12.25, "y":3, "w":1.75},
- {"x":14, "y":3},
-
- {"label":"Ctrl", "x":0, "y":4, "w":1.5},
- {"label":"Win", "x":1.5, "y":4},
- {"label":"Alt", "x":2.5, "y":4, "w":1.5},
- {"x":4, "y":4, "w":7},
- {"label":"Alt", "x":11, "y":4, "w":1.5},
- {"label":"Win", "x":12.5, "y":4},
- {"label":"Ctrl", "x":13.5, "y":4, "w":1.5}
+ {"x":0, "y":0, "matrix": [0, 0]},
+ {"x":1, "y":0, "matrix": [0, 1]},
+ {"x":2, "y":0, "matrix": [0, 2]},
+ {"x":3, "y":0, "matrix": [0, 3]},
+ {"x":4, "y":0, "matrix": [0, 4]},
+ {"x":5, "y":0, "matrix": [0, 5]},
+ {"x":6, "y":0, "matrix": [0, 6]},
+ {"x":7, "y":0, "matrix": [0, 7]},
+ {"x":8, "y":0, "matrix": [0, 8]},
+ {"x":9, "y":0, "matrix": [0, 9]},
+ {"x":10, "y":0, "matrix": [0, 10]},
+ {"x":11, "y":0, "matrix": [0, 11]},
+ {"x":12, "y":0, "matrix": [0, 12]},
+ {"x":13, "y":0, "matrix": [0, 13]},
+ {"x":14, "y":0, "matrix": [0, 14]},
+
+ {"x":0, "y":1, "w":1.5, "matrix": [1, 0]},
+ {"x":1.5, "y":1, "matrix": [1, 1]},
+ {"x":2.5, "y":1, "matrix": [1, 2]},
+ {"x":3.5, "y":1, "matrix": [1, 3]},
+ {"x":4.5, "y":1, "matrix": [1, 4]},
+ {"x":5.5, "y":1, "matrix": [1, 5]},
+ {"x":6.5, "y":1, "matrix": [1, 6]},
+ {"x":7.5, "y":1, "matrix": [1, 7]},
+ {"x":8.5, "y":1, "matrix": [1, 8]},
+ {"x":9.5, "y":1, "matrix": [1, 9]},
+ {"x":10.5, "y":1, "matrix": [1, 10]},
+ {"x":11.5, "y":1, "matrix": [1, 11]},
+ {"x":12.5, "y":1, "matrix": [1, 12]},
+ {"x":13.5, "y":1, "w":1.5, "matrix": [1, 14]},
+
+ {"x":0, "y":2, "w":1.75, "matrix": [2, 0]},
+ {"x":1.75, "y":2, "matrix": [2, 1]},
+ {"x":2.75, "y":2, "matrix": [2, 2]},
+ {"x":3.75, "y":2, "matrix": [2, 3]},
+ {"x":4.75, "y":2, "matrix": [2, 4]},
+ {"x":5.75, "y":2, "matrix": [2, 5]},
+ {"x":6.75, "y":2, "matrix": [2, 6]},
+ {"x":7.75, "y":2, "matrix": [2, 7]},
+ {"x":8.75, "y":2, "matrix": [2, 8]},
+ {"x":9.75, "y":2, "matrix": [2, 9]},
+ {"x":10.75, "y":2, "matrix": [2, 10]},
+ {"x":11.75, "y":2, "matrix": [2, 11]},
+ {"x":12.75, "y":2, "w":2.25, "matrix": [2, 14]},
+
+ {"x":0, "y":3, "w":2.25, "matrix": [3, 0]},
+ {"x":2.25, "y":3, "matrix": [3, 2]},
+ {"x":3.25, "y":3, "matrix": [3, 3]},
+ {"x":4.25, "y":3, "matrix": [3, 4]},
+ {"x":5.25, "y":3, "matrix": [3, 5]},
+ {"x":6.25, "y":3, "matrix": [3, 6]},
+ {"x":7.25, "y":3, "matrix": [3, 7]},
+ {"x":8.25, "y":3, "matrix": [3, 8]},
+ {"x":9.25, "y":3, "matrix": [3, 9]},
+ {"x":10.25, "y":3, "matrix": [3, 10]},
+ {"x":11.25, "y":3, "matrix": [3, 11]},
+ {"x":12.25, "y":3, "w":1.75, "matrix": [3, 12]},
+ {"x":14, "y":3, "matrix": [3, 14]},
+
+ {"x":0, "y":4, "w":1.5, "matrix": [4, 0]},
+ {"x":1.5, "y":4, "matrix": [4, 1]},
+ {"x":2.5, "y":4, "w":1.5, "matrix": [4, 2]},
+ {"x":4, "y":4, "w":7, "matrix": [4, 5]},
+ {"x":11, "y":4, "w":1.5, "matrix": [4, 11]},
+ {"x":12.5, "y":4, "matrix": [4, 12]},
+ {"x":13.5, "y":4, "w":1.5, "matrix": [4, 14]}
]
},
"LAYOUT_60_iso": {
"layout": [
- {"label":"\u00ac", "x":0, "y":0},
- {"label":"!", "x":1, "y":0},
- {"label":"\"", "x":2, "y":0},
- {"label":"\u00a3", "x":3, "y":0},
- {"label":"$", "x":4, "y":0},
- {"label":"%", "x":5, "y":0},
- {"label":"^", "x":6, "y":0},
- {"label":"&", "x":7, "y":0},
- {"label":"*", "x":8, "y":0},
- {"label":"(", "x":9, "y":0},
- {"label":")", "x":10, "y":0},
- {"label":"_", "x":11, "y":0},
- {"label":"+", "x":12, "y":0},
- {"label":"Backspace", "x":13, "y":0, "w":2},
-
- {"label":"Tab", "x":0, "y":1, "w":1.5},
- {"label":"Q", "x":1.5, "y":1},
- {"label":"W", "x":2.5, "y":1},
- {"label":"E", "x":3.5, "y":1},
- {"label":"R", "x":4.5, "y":1},
- {"label":"T", "x":5.5, "y":1},
- {"label":"Y", "x":6.5, "y":1},
- {"label":"U", "x":7.5, "y":1},
- {"label":"I", "x":8.5, "y":1},
- {"label":"O", "x":9.5, "y":1},
- {"label":"P", "x":10.5, "y":1},
- {"label":"{", "x":11.5, "y":1},
- {"label":"}", "x":12.5, "y":1},
-
- {"label":"Caps Lock", "x":0, "y":2, "w":1.75},
- {"label":"A", "x":1.75, "y":2},
- {"label":"S", "x":2.75, "y":2},
- {"label":"D", "x":3.75, "y":2},
- {"label":"F", "x":4.75, "y":2},
- {"label":"G", "x":5.75, "y":2},
- {"label":"H", "x":6.75, "y":2},
- {"label":"J", "x":7.75, "y":2},
- {"label":"K", "x":8.75, "y":2},
- {"label":"L", "x":9.75, "y":2},
- {"label":":", "x":10.75, "y":2},
- {"label":"@", "x":11.75, "y":2},
- {"label":"~", "x":12.75, "y":2},
- {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2},
-
- {"label":"Shift", "x":0, "y":3, "w":1.25},
- {"label":"|", "x":1.25, "y":3},
- {"label":"Z", "x":2.25, "y":3},
- {"label":"X", "x":3.25, "y":3},
- {"label":"C", "x":4.25, "y":3},
- {"label":"V", "x":5.25, "y":3},
- {"label":"B", "x":6.25, "y":3},
- {"label":"N", "x":7.25, "y":3},
- {"label":"M", "x":8.25, "y":3},
- {"label":"<", "x":9.25, "y":3},
- {"label":">", "x":10.25, "y":3},
- {"label":"?", "x":11.25, "y":3},
- {"label":"Shift", "x":12.25, "y":3, "w":2.75},
-
- {"label":"Ctrl", "x":0, "y":4, "w":1.25},
- {"label":"Win", "x":1.25, "y":4, "w":1.25},
- {"label":"Alt", "x":2.5, "y":4, "w":1.25},
- {"x":3.75, "y":4, "w":6.25},
- {"label":"AltGr", "x":10, "y":4, "w":1.25},
- {"label":"Win", "x":11.25, "y":4, "w":1.25},
- {"label":"Menu", "x":12.5, "y":4, "w":1.25},
- {"label":"Ctrl", "x":13.75, "y":4, "w":1.25}
+ {"x":0, "y":0, "matrix": [0, 0]},
+ {"x":1, "y":0, "matrix": [0, 1]},
+ {"x":2, "y":0, "matrix": [0, 2]},
+ {"x":3, "y":0, "matrix": [0, 3]},
+ {"x":4, "y":0, "matrix": [0, 4]},
+ {"x":5, "y":0, "matrix": [0, 5]},
+ {"x":6, "y":0, "matrix": [0, 6]},
+ {"x":7, "y":0, "matrix": [0, 7]},
+ {"x":8, "y":0, "matrix": [0, 8]},
+ {"x":9, "y":0, "matrix": [0, 9]},
+ {"x":10, "y":0, "matrix": [0, 10]},
+ {"x":11, "y":0, "matrix": [0, 11]},
+ {"x":12, "y":0, "matrix": [0, 12]},
+ {"x":13, "y":0, "w":2, "matrix": [0, 13]},
+
+ {"x":0, "y":1, "w":1.5, "matrix": [1, 0]},
+ {"x":1.5, "y":1, "matrix": [1, 1]},
+ {"x":2.5, "y":1, "matrix": [1, 2]},
+ {"x":3.5, "y":1, "matrix": [1, 3]},
+ {"x":4.5, "y":1, "matrix": [1, 4]},
+ {"x":5.5, "y":1, "matrix": [1, 5]},
+ {"x":6.5, "y":1, "matrix": [1, 6]},
+ {"x":7.5, "y":1, "matrix": [1, 7]},
+ {"x":8.5, "y":1, "matrix": [1, 8]},
+ {"x":9.5, "y":1, "matrix": [1, 9]},
+ {"x":10.5, "y":1, "matrix": [1, 10]},
+ {"x":11.5, "y":1, "matrix": [1, 11]},
+ {"x":12.5, "y":1, "matrix": [1, 12]},
+
+ {"x":0, "y":2, "w":1.75, "matrix": [2, 0]},
+ {"x":1.75, "y":2, "matrix": [2, 1]},
+ {"x":2.75, "y":2, "matrix": [2, 2]},
+ {"x":3.75, "y":2, "matrix": [2, 3]},
+ {"x":4.75, "y":2, "matrix": [2, 4]},
+ {"x":5.75, "y":2, "matrix": [2, 5]},
+ {"x":6.75, "y":2, "matrix": [2, 6]},
+ {"x":7.75, "y":2, "matrix": [2, 7]},
+ {"x":8.75, "y":2, "matrix": [2, 8]},
+ {"x":9.75, "y":2, "matrix": [2, 9]},
+ {"x":10.75, "y":2, "matrix": [2, 10]},
+ {"x":11.75, "y":2, "matrix": [2, 11]},
+ {"x":12.75, "y":2, "matrix": [2, 12]},
+ {"x":13.75, "y":1, "w":1.25, "h":2, "matrix": [2, 14]},
+
+ {"x":0, "y":3, "w":1.25, "matrix": [3, 0]},
+ {"x":1.25, "y":3, "matrix": [3, 1]},
+ {"x":2.25, "y":3, "matrix": [3, 2]},
+ {"x":3.25, "y":3, "matrix": [3, 3]},
+ {"x":4.25, "y":3, "matrix": [3, 4]},
+ {"x":5.25, "y":3, "matrix": [3, 5]},
+ {"x":6.25, "y":3, "matrix": [3, 6]},
+ {"x":7.25, "y":3, "matrix": [3, 7]},
+ {"x":8.25, "y":3, "matrix": [3, 8]},
+ {"x":9.25, "y":3, "matrix": [3, 9]},
+ {"x":10.25, "y":3, "matrix": [3, 10]},
+ {"x":11.25, "y":3, "matrix": [3, 11]},
+ {"x":12.25, "y":3, "w":2.75, "matrix": [3, 12]},
+
+ {"x":0, "y":4, "w":1.25, "matrix": [4, 0]},
+ {"x":1.25, "y":4, "w":1.25, "matrix": [4, 1]},
+ {"x":2.5, "y":4, "w":1.25, "matrix": [4, 2]},
+ {"x":3.75, "y":4, "w":6.25, "matrix": [4, 5]},
+ {"x":10, "y":4, "w":1.25, "matrix": [4, 10]},
+ {"x":11.25, "y":4, "w":1.25, "matrix": [4, 11]},
+ {"x":12.5, "y":4, "w":1.25, "matrix": [4, 12]},
+ {"x":13.75, "y":4, "w":1.25, "matrix": [4, 14]}
+ ]
+ },
+ "LAYOUT_all": {
+ "layout": [
+ {"x":0, "y":0, "matrix": [0, 0]},
+ {"x":1, "y":0, "matrix": [0, 1]},
+ {"x":2, "y":0, "matrix": [0, 2]},
+ {"x":3, "y":0, "matrix": [0, 3]},
+ {"x":4, "y":0, "matrix": [0, 4]},
+ {"x":5, "y":0, "matrix": [0, 5]},
+ {"x":6, "y":0, "matrix": [0, 6]},
+ {"x":7, "y":0, "matrix": [0, 7]},
+ {"x":8, "y":0, "matrix": [0, 8]},
+ {"x":9, "y":0, "matrix": [0, 9]},
+ {"x":10, "y":0, "matrix": [0, 10]},
+ {"x":11, "y":0, "matrix": [0, 11]},
+ {"x":12, "y":0, "matrix": [0, 12]},
+ {"x":13, "y":0, "matrix": [0, 13]},
+ {"x":14, "y":0, "matrix": [0, 14]},
+
+ {"x":0, "y":1, "w":1.5, "matrix": [1, 0]},
+ {"x":1.5, "y":1, "matrix": [1, 1]},
+ {"x":2.5, "y":1, "matrix": [1, 2]},
+ {"x":3.5, "y":1, "matrix": [1, 3]},
+ {"x":4.5, "y":1, "matrix": [1, 4]},
+ {"x":5.5, "y":1, "matrix": [1, 5]},
+ {"x":6.5, "y":1, "matrix": [1, 6]},
+ {"x":7.5, "y":1, "matrix": [1, 7]},
+ {"x":8.5, "y":1, "matrix": [1, 8]},
+ {"x":9.5, "y":1, "matrix": [1, 9]},
+ {"x":10.5, "y":1, "matrix": [1, 10]},
+ {"x":11.5, "y":1, "matrix": [1, 11]},
+ {"x":12.5, "y":1, "matrix": [1, 12]},
+ {"x":13.5, "y":1, "w":1.5, "matrix": [1, 14]},
+
+ {"x":0, "y":2, "w":1.75, "matrix": [2, 0]},
+ {"x":1.75, "y":2, "matrix": [2, 1]},
+ {"x":2.75, "y":2, "matrix": [2, 2]},
+ {"x":3.75, "y":2, "matrix": [2, 3]},
+ {"x":4.75, "y":2, "matrix": [2, 4]},
+ {"x":5.75, "y":2, "matrix": [2, 5]},
+ {"x":6.75, "y":2, "matrix": [2, 6]},
+ {"x":7.75, "y":2, "matrix": [2, 7]},
+ {"x":8.75, "y":2, "matrix": [2, 8]},
+ {"x":9.75, "y":2, "matrix": [2, 9]},
+ {"x":10.75, "y":2, "matrix": [2, 10]},
+ {"x":11.75, "y":2, "matrix": [2, 11]},
+ {"x":12.75, "y":2, "matrix": [2, 12]},
+ {"x":13.75, "y":2, "w":1.25, "matrix": [2, 14]},
+
+ {"x":0, "y":3, "w":1.25, "matrix": [3, 0]},
+ {"x":1.25, "y":3, "matrix": [3, 1]},
+ {"x":2.25, "y":3, "matrix": [3, 2]},
+ {"x":3.25, "y":3, "matrix": [3, 3]},
+ {"x":4.25, "y":3, "matrix": [3, 4]},
+ {"x":5.25, "y":3, "matrix": [3, 5]},
+ {"x":6.25, "y":3, "matrix": [3, 6]},
+ {"x":7.25, "y":3, "matrix": [3, 7]},
+ {"x":8.25, "y":3, "matrix": [3, 8]},
+ {"x":9.25, "y":3, "matrix": [3, 9]},
+ {"x":10.25, "y":3, "matrix": [3, 10]},
+ {"x":11.25, "y":3, "matrix": [3, 11]},
+ {"x":12.25, "y":3, "w":1.75, "matrix": [3, 12]},
+ {"x":14, "y":3, "matrix": [3, 14]},
+
+ {"x":0, "y":4, "w":1.25, "matrix": [4, 0]},
+ {"x":1.25, "y":4, "w":1.25, "matrix": [4, 1]},
+ {"x":2.5, "y":4, "w":1.25, "matrix": [4, 2]},
+ {"x":3.75, "y":4, "w":6.25, "matrix": [4, 5]},
+ {"x":10, "y":4, "w":1.25, "matrix": [4, 10]},
+ {"x":11.25, "y":4, "w":1.25, "matrix": [4, 11]},
+ {"x":12.5, "y":4, "w":1.25, "matrix": [4, 12]},
+ {"x":13.75, "y":4, "w":1.25, "matrix": [4, 14]}
]
}
}
diff --git a/keyboards/cannonkeys/db60/j02/j02.h b/keyboards/cannonkeys/db60/j02/j02.h
deleted file mode 100644
index 0b85456086..0000000000
--- a/keyboards/cannonkeys/db60/j02/j02.h
+++ /dev/null
@@ -1,77 +0,0 @@
- /* Copyright 2021 Andrew Kannan
- *
- * 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
-
-#include "quantum.h"
-
-#define KNO KC_NO
-
-#define LAYOUT_60_ansi( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2E, \
- K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \
- K40, K41, K42, K45, K4A, K4B, K4C, K4E \
-) { \
- { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, KNO}, \
- { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, KNO, K1E }, \
- { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, KNO, KNO, K2E }, \
- { K30, KNO, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, KNO, KNO }, \
- { K40, K41, K42, KNO, KNO, K45, KNO, KNO, KNO, KNO, K4A, K4B, K4C, KNO, K4E } \
-}
-
-#define LAYOUT_60_tsangan_hhkb( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2E, \
- K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3E,\
- K40, K41, K42, K45, K4B, K4C, K4E \
-) { \
- { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E}, \
- { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, KNO, K1E }, \
- { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, KNO, KNO, K2E }, \
- { K30, KNO, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, KNO, K3E }, \
- { K40, K41, K42, KNO, KNO, K45, KNO, KNO, KNO, KNO, KNO, K4B, K4C, KNO, K4E } \
-}
-
-#define LAYOUT_60_iso( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2E, \
- K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \
- K40, K41, K42, K45, K4A, K4B, K4C, K4E \
-) { \
- { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, KNO}, \
- { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, KNO, KNO }, \
- { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, KNO, K2E }, \
- { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, KNO, KNO }, \
- { K40, K41, K42, KNO, KNO, K45, KNO, KNO, KNO, KNO, K4A, K4B, K4C, KNO, K4E } \
-}
-
-#define LAYOUT_all( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E,\
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2E, \
- K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3E,\
- K40, K41, K42, K45, K4A, K4B, K4C, K4E \
-) { \
- { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E}, \
- { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, KNO, K1E }, \
- { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, KNO, K2E }, \
- { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, KNO, K3E }, \
- { K40, K41, K42, KNO, KNO, K45, KNO, KNO, KNO, KNO, K4A, K4B, K4C, KNO, K4E } \
-}
diff --git a/keyboards/cannonkeys/db60/j02/rules.mk b/keyboards/cannonkeys/db60/j02/rules.mk
index f53da9b051..e69de29bb2 100644
--- a/keyboards/cannonkeys/db60/j02/rules.mk
+++ b/keyboards/cannonkeys/db60/j02/rules.mk
@@ -1 +0,0 @@
-LAYOUTS = 60_ansi 60_tsangan_hhkb 60_iso
diff --git a/keyboards/cannonkeys/db60/rev2/info.json b/keyboards/cannonkeys/db60/rev2/info.json
index 3e012930c8..fb76e2d6c3 100644
--- a/keyboards/cannonkeys/db60/rev2/info.json
+++ b/keyboards/cannonkeys/db60/rev2/info.json
@@ -3,214 +3,288 @@
"usb": {
"pid": "0xDB61"
},
+ "community_layouts": ["60_ansi", "60_tsangan_hhkb", "60_iso"],
"layouts": {
"LAYOUT_60_ansi": {
"layout": [
- {"label":"~", "x":0, "y":0},
- {"label":"!", "x":1, "y":0},
- {"label":"@", "x":2, "y":0},
- {"label":"#", "x":3, "y":0},
- {"label":"$", "x":4, "y":0},
- {"label":"%", "x":5, "y":0},
- {"label":"^", "x":6, "y":0},
- {"label":"&", "x":7, "y":0},
- {"label":"*", "x":8, "y":0},
- {"label":"(", "x":9, "y":0},
- {"label":")", "x":10, "y":0},
- {"label":"_", "x":11, "y":0},
- {"label":"+", "x":12, "y":0},
- {"label":"Backspace", "x":13, "y":0, "w":2},
-
- {"label":"Tab", "x":0, "y":1, "w":1.5},
- {"label":"Q", "x":1.5, "y":1},
- {"label":"W", "x":2.5, "y":1},
- {"label":"E", "x":3.5, "y":1},
- {"label":"R", "x":4.5, "y":1},
- {"label":"T", "x":5.5, "y":1},
- {"label":"Y", "x":6.5, "y":1},
- {"label":"U", "x":7.5, "y":1},
- {"label":"I", "x":8.5, "y":1},
- {"label":"O", "x":9.5, "y":1},
- {"label":"P", "x":10.5, "y":1},
- {"label":"{", "x":11.5, "y":1},
- {"label":"}", "x":12.5, "y":1},
- {"label":"|", "x":13.5, "y":1, "w":1.5},
-
- {"label":"Caps Lock", "x":0, "y":2, "w":1.75},
- {"label":"A", "x":1.75, "y":2},
- {"label":"S", "x":2.75, "y":2},
- {"label":"D", "x":3.75, "y":2},
- {"label":"F", "x":4.75, "y":2},
- {"label":"G", "x":5.75, "y":2},
- {"label":"H", "x":6.75, "y":2},
- {"label":"J", "x":7.75, "y":2},
- {"label":"K", "x":8.75, "y":2},
- {"label":"L", "x":9.75, "y":2},
- {"label":":", "x":10.75, "y":2},
- {"label":"\"", "x":11.75, "y":2},
- {"label":"Enter", "x":12.75, "y":2, "w":2.25},
-
- {"label":"Shift", "x":0, "y":3, "w":2.25},
- {"label":"Z", "x":2.25, "y":3},
- {"label":"X", "x":3.25, "y":3},
- {"label":"C", "x":4.25, "y":3},
- {"label":"V", "x":5.25, "y":3},
- {"label":"B", "x":6.25, "y":3},
- {"label":"N", "x":7.25, "y":3},
- {"label":"M", "x":8.25, "y":3},
- {"label":"<", "x":9.25, "y":3},
- {"label":">", "x":10.25, "y":3},
- {"label":"?", "x":11.25, "y":3},
- {"label":"Shift", "x":12.25, "y":3, "w":2.75},
-
- {"label":"Ctrl", "x":0, "y":4, "w":1.25},
- {"label":"Win", "x":1.25, "y":4, "w":1.25},
- {"label":"Alt", "x":2.5, "y":4, "w":1.25},
- {"x":3.75, "y":4, "w":6.25},
- {"label":"Alt", "x":10, "y":4, "w":1.25},
- {"label":"Win", "x":11.25, "y":4, "w":1.25},
- {"label":"Menu", "x":12.5, "y":4, "w":1.25},
- {"label":"Ctrl", "x":13.75, "y":4, "w":1.25}
+ {"x":0, "y":0, "matrix": [0, 0]},
+ {"x":1, "y":0, "matrix": [0, 1]},
+ {"x":2, "y":0, "matrix": [0, 2]},
+ {"x":3, "y":0, "matrix": [0, 3]},
+ {"x":4, "y":0, "matrix": [0, 4]},
+ {"x":5, "y":0, "matrix": [0, 5]},
+ {"x":6, "y":0, "matrix": [0, 6]},
+ {"x":7, "y":0, "matrix": [0, 7]},
+ {"x":8, "y":0, "matrix": [0, 8]},
+ {"x":9, "y":0, "matrix": [0, 9]},
+ {"x":10, "y":0, "matrix": [0, 10]},
+ {"x":11, "y":0, "matrix": [0, 11]},
+ {"x":12, "y":0, "matrix": [0, 12]},
+ {"x":13, "y":0, "w":2, "matrix": [0, 13]},
+
+ {"x":0, "y":1, "w":1.5, "matrix": [1, 0]},
+ {"x":1.5, "y":1, "matrix": [1, 1]},
+ {"x":2.5, "y":1, "matrix": [1, 2]},
+ {"x":3.5, "y":1, "matrix": [1, 3]},
+ {"x":4.5, "y":1, "matrix": [1, 4]},
+ {"x":5.5, "y":1, "matrix": [1, 5]},
+ {"x":6.5, "y":1, "matrix": [1, 6]},
+ {"x":7.5, "y":1, "matrix": [1, 7]},
+ {"x":8.5, "y":1, "matrix": [1, 8]},
+ {"x":9.5, "y":1, "matrix": [1, 9]},
+ {"x":10.5, "y":1, "matrix": [1, 10]},
+ {"x":11.5, "y":1, "matrix": [1, 11]},
+ {"x":12.5, "y":1, "matrix": [1, 12]},
+ {"x":13.5, "y":1, "w":1.5, "matrix": [1, 14]},
+
+ {"x":0, "y":2, "w":1.75, "matrix": [2, 0]},
+ {"x":1.75, "y":2, "matrix": [2, 1]},
+ {"x":2.75, "y":2, "matrix": [2, 2]},
+ {"x":3.75, "y":2, "matrix": [2, 3]},
+ {"x":4.75, "y":2, "matrix": [2, 4]},
+ {"x":5.75, "y":2, "matrix": [2, 5]},
+ {"x":6.75, "y":2, "matrix": [2, 6]},
+ {"x":7.75, "y":2, "matrix": [2, 7]},
+ {"x":8.75, "y":2, "matrix": [2, 8]},
+ {"x":9.75, "y":2, "matrix": [2, 9]},
+ {"x":10.75, "y":2, "matrix": [2, 10]},
+ {"x":11.75, "y":2, "matrix": [2, 11]},
+ {"x":12.75, "y":2, "w":2.25, "matrix": [2, 14]},
+
+ {"x":0, "y":3, "w":2.25, "matrix": [3, 0]},
+ {"x":2.25, "y":3, "matrix": [3, 2]},
+ {"x":3.25, "y":3, "matrix": [3, 3]},
+ {"x":4.25, "y":3, "matrix": [3, 4]},
+ {"x":5.25, "y":3, "matrix": [3, 5]},
+ {"x":6.25, "y":3, "matrix": [3, 6]},
+ {"x":7.25, "y":3, "matrix": [3, 7]},
+ {"x":8.25, "y":3, "matrix": [3, 8]},
+ {"x":9.25, "y":3, "matrix": [3, 9]},
+ {"x":10.25, "y":3, "matrix": [3, 10]},
+ {"x":11.25, "y":3, "matrix": [3, 11]},
+ {"x":12.25, "y":3, "w":2.75, "matrix": [3, 12]},
+
+ {"x":0, "y":4, "w":1.25, "matrix": [4, 0]},
+ {"x":1.25, "y":4, "w":1.25, "matrix": [4, 1]},
+ {"x":2.5, "y":4, "w":1.25, "matrix": [4, 2]},
+ {"x":3.75, "y":4, "w":6.25, "matrix": [4, 6]},
+ {"x":10, "y":4, "w":1.25, "matrix": [4, 10]},
+ {"x":11.25, "y":4, "w":1.25, "matrix": [4, 11]},
+ {"x":12.5, "y":4, "w":1.25, "matrix": [4, 12]},
+ {"x":13.75, "y":4, "w":1.25, "matrix": [4, 14]}
]
},
"LAYOUT_60_tsangan_hhkb": {
"layout": [
- {"label":"~", "x":0, "y":0},
- {"label":"!", "x":1, "y":0},
- {"label":"@", "x":2, "y":0},
- {"label":"#", "x":3, "y":0},
- {"label":"$", "x":4, "y":0},
- {"label":"%", "x":5, "y":0},
- {"label":"^", "x":6, "y":0},
- {"label":"&", "x":7, "y":0},
- {"label":"*", "x":8, "y":0},
- {"label":"(", "x":9, "y":0},
- {"label":")", "x":10, "y":0},
- {"label":"_", "x":11, "y":0},
- {"label":"+", "x":12, "y":0},
- {"x":13, "y":0},
- {"x":14, "y":0},
-
- {"label":"Tab", "x":0, "y":1, "w":1.5},
- {"label":"Q", "x":1.5, "y":1},
- {"label":"W", "x":2.5, "y":1},
- {"label":"E", "x":3.5, "y":1},
- {"label":"R", "x":4.5, "y":1},
- {"label":"T", "x":5.5, "y":1},
- {"label":"Y", "x":6.5, "y":1},
- {"label":"U", "x":7.5, "y":1},
- {"label":"I", "x":8.5, "y":1},
- {"label":"O", "x":9.5, "y":1},
- {"label":"P", "x":10.5, "y":1},
- {"label":"{", "x":11.5, "y":1},
- {"label":"}", "x":12.5, "y":1},
- {"label":"|", "x":13.5, "y":1, "w":1.5},
-
- {"label":"Caps Lock", "x":0, "y":2, "w":1.75},
- {"label":"A", "x":1.75, "y":2},
- {"label":"S", "x":2.75, "y":2},
- {"label":"D", "x":3.75, "y":2},
- {"label":"F", "x":4.75, "y":2},
- {"label":"G", "x":5.75, "y":2},
- {"label":"H", "x":6.75, "y":2},
- {"label":"J", "x":7.75, "y":2},
- {"label":"K", "x":8.75, "y":2},
- {"label":"L", "x":9.75, "y":2},
- {"label":":", "x":10.75, "y":2},
- {"label":"\"", "x":11.75, "y":2},
- {"label":"Enter", "x":12.75, "y":2, "w":2.25},
-
- {"label":"Shift", "x":0, "y":3, "w":2.25},
- {"label":"Z", "x":2.25, "y":3},
- {"label":"X", "x":3.25, "y":3},
- {"label":"C", "x":4.25, "y":3},
- {"label":"V", "x":5.25, "y":3},
- {"label":"B", "x":6.25, "y":3},
- {"label":"N", "x":7.25, "y":3},
- {"label":"M", "x":8.25, "y":3},
- {"label":"<", "x":9.25, "y":3},
- {"label":">", "x":10.25, "y":3},
- {"label":"?", "x":11.25, "y":3},
- {"label":"Shift", "x":12.25, "y":3, "w":1.75},
- {"x":14, "y":3},
-
- {"label":"Ctrl", "x":0, "y":4, "w":1.5},
- {"label":"Win", "x":1.5, "y":4},
- {"label":"Alt", "x":2.5, "y":4, "w":1.5},
- {"x":4, "y":4, "w":7},
- {"label":"Alt", "x":11, "y":4, "w":1.5},
- {"label":"Win", "x":12.5, "y":4},
- {"label":"Ctrl", "x":13.5, "y":4, "w":1.5}
+ {"x":0, "y":0, "matrix": [0, 0]},
+ {"x":1, "y":0, "matrix": [0, 1]},
+ {"x":2, "y":0, "matrix": [0, 2]},
+ {"x":3, "y":0, "matrix": [0, 3]},
+ {"x":4, "y":0, "matrix": [0, 4]},
+ {"x":5, "y":0, "matrix": [0, 5]},
+ {"x":6, "y":0, "matrix": [0, 6]},
+ {"x":7, "y":0, "matrix": [0, 7]},
+ {"x":8, "y":0, "matrix": [0, 8]},
+ {"x":9, "y":0, "matrix": [0, 9]},
+ {"x":10, "y":0, "matrix": [0, 10]},
+ {"x":11, "y":0, "matrix": [0, 11]},
+ {"x":12, "y":0, "matrix": [0, 12]},
+ {"x":13, "y":0, "matrix": [0, 13]},
+ {"x":14, "y":0, "matrix": [0, 14]},
+
+ {"x":0, "y":1, "w":1.5, "matrix": [1, 0]},
+ {"x":1.5, "y":1, "matrix": [1, 1]},
+ {"x":2.5, "y":1, "matrix": [1, 2]},
+ {"x":3.5, "y":1, "matrix": [1, 3]},
+ {"x":4.5, "y":1, "matrix": [1, 4]},
+ {"x":5.5, "y":1, "matrix": [1, 5]},
+ {"x":6.5, "y":1, "matrix": [1, 6]},
+ {"x":7.5, "y":1, "matrix": [1, 7]},
+ {"x":8.5, "y":1, "matrix": [1, 8]},
+ {"x":9.5, "y":1, "matrix": [1, 9]},
+ {"x":10.5, "y":1, "matrix": [1, 10]},
+ {"x":11.5, "y":1, "matrix": [1, 11]},
+ {"x":12.5, "y":1, "matrix": [1, 12]},
+ {"x":13.5, "y":1, "w":1.5, "matrix": [1, 14]},
+
+ {"x":0, "y":2, "w":1.75, "matrix": [2, 0]},
+ {"x":1.75, "y":2, "matrix": [2, 1]},
+ {"x":2.75, "y":2, "matrix": [2, 2]},
+ {"x":3.75, "y":2, "matrix": [2, 3]},
+ {"x":4.75, "y":2, "matrix": [2, 4]},
+ {"x":5.75, "y":2, "matrix": [2, 5]},
+ {"x":6.75, "y":2, "matrix": [2, 6]},
+ {"x":7.75, "y":2, "matrix": [2, 7]},
+ {"x":8.75, "y":2, "matrix": [2, 8]},
+ {"x":9.75, "y":2, "matrix": [2, 9]},
+ {"x":10.75, "y":2, "matrix": [2, 10]},
+ {"x":11.75, "y":2, "matrix": [2, 11]},
+ {"x":12.75, "y":2, "w":2.25, "matrix": [2, 14]},
+
+ {"x":0, "y":3, "w":2.25, "matrix": [3, 0]},
+ {"x":2.25, "y":3, "matrix": [3, 2]},
+ {"x":3.25, "y":3, "matrix": [3, 3]},
+ {"x":4.25, "y":3, "matrix": [3, 4]},
+ {"x":5.25, "y":3, "matrix": [3, 5]},
+ {"x":6.25, "y":3, "matrix": [3, 6]},
+ {"x":7.25, "y":3, "matrix": [3, 7]},
+ {"x":8.25, "y":3, "matrix": [3, 8]},
+ {"x":9.25, "y":3, "matrix": [3, 9]},
+ {"x":10.25, "y":3, "matrix": [3, 10]},
+ {"x":11.25, "y":3, "matrix": [3, 11]},
+ {"x":12.25, "y":3, "w":1.75, "matrix": [3, 12]},
+ {"x":14, "y":3, "matrix": [3, 14]},
+
+ {"x":0, "y":4, "w":1.5, "matrix": [4, 0]},
+ {"x":1.5, "y":4, "matrix": [4, 1]},
+ {"x":2.5, "y":4, "w":1.5, "matrix": [4, 2]},
+ {"x":4, "y":4, "w":7, "matrix": [4, 6]},
+ {"x":11, "y":4, "w":1.5, "matrix": [4, 11]},
+ {"x":12.5, "y":4, "matrix": [4, 12]},
+ {"x":13.5, "y":4, "w":1.5, "matrix": [4, 14]}
]
},
"LAYOUT_60_iso": {
"layout": [
- {"label":"\u00ac", "x":0, "y":0},
- {"label":"!", "x":1, "y":0},
- {"label":"\"", "x":2, "y":0},
- {"label":"\u00a3", "x":3, "y":0},
- {"label":"$", "x":4, "y":0},
- {"label":"%", "x":5, "y":0},
- {"label":"^", "x":6, "y":0},
- {"label":"&", "x":7, "y":0},
- {"label":"*", "x":8, "y":0},
- {"label":"(", "x":9, "y":0},
- {"label":")", "x":10, "y":0},
- {"label":"_", "x":11, "y":0},
- {"label":"+", "x":12, "y":0},
- {"label":"Backspace", "x":13, "y":0, "w":2},
-
- {"label":"Tab", "x":0, "y":1, "w":1.5},
- {"label":"Q", "x":1.5, "y":1},
- {"label":"W", "x":2.5, "y":1},
- {"label":"E", "x":3.5, "y":1},
- {"label":"R", "x":4.5, "y":1},
- {"label":"T", "x":5.5, "y":1},
- {"label":"Y", "x":6.5, "y":1},
- {"label":"U", "x":7.5, "y":1},
- {"label":"I", "x":8.5, "y":1},
- {"label":"O", "x":9.5, "y":1},
- {"label":"P", "x":10.5, "y":1},
- {"label":"{", "x":11.5, "y":1},
- {"label":"}", "x":12.5, "y":1},
-
- {"label":"Caps Lock", "x":0, "y":2, "w":1.75},
- {"label":"A", "x":1.75, "y":2},
- {"label":"S", "x":2.75, "y":2},
- {"label":"D", "x":3.75, "y":2},
- {"label":"F", "x":4.75, "y":2},
- {"label":"G", "x":5.75, "y":2},
- {"label":"H", "x":6.75, "y":2},
- {"label":"J", "x":7.75, "y":2},
- {"label":"K", "x":8.75, "y":2},
- {"label":"L", "x":9.75, "y":2},
- {"label":":", "x":10.75, "y":2},
- {"label":"@", "x":11.75, "y":2},
- {"label":"~", "x":12.75, "y":2},
- {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2},
-
- {"label":"Shift", "x":0, "y":3, "w":1.25},
- {"label":"|", "x":1.25, "y":3},
- {"label":"Z", "x":2.25, "y":3},
- {"label":"X", "x":3.25, "y":3},
- {"label":"C", "x":4.25, "y":3},
- {"label":"V", "x":5.25, "y":3},
- {"label":"B", "x":6.25, "y":3},
- {"label":"N", "x":7.25, "y":3},
- {"label":"M", "x":8.25, "y":3},
- {"label":"<", "x":9.25, "y":3},
- {"label":">", "x":10.25, "y":3},
- {"label":"?", "x":11.25, "y":3},
- {"label":"Shift", "x":12.25, "y":3, "w":2.75},
-
- {"label":"Ctrl", "x":0, "y":4, "w":1.25},
- {"label":"Win", "x":1.25, "y":4, "w":1.25},
- {"label":"Alt", "x":2.5, "y":4, "w":1.25},
- {"x":3.75, "y":4, "w":6.25},
- {"label":"AltGr", "x":10, "y":4, "w":1.25},
- {"label":"Win", "x":11.25, "y":4, "w":1.25},
- {"label":"Menu", "x":12.5, "y":4, "w":1.25},
- {"label":"Ctrl", "x":13.75, "y":4, "w":1.25}
+ {"x":0, "y":0, "matrix": [0, 0]},
+ {"x":1, "y":0, "matrix": [0, 1]},
+ {"x":2, "y":0, "matrix": [0, 2]},
+ {"x":3, "y":0, "matrix": [0, 3]},
+ {"x":4, "y":0, "matrix": [0, 4]},
+ {"x":5, "y":0, "matrix": [0, 5]},
+ {"x":6, "y":0, "matrix": [0, 6]},
+ {"x":7, "y":0, "matrix": [0, 7]},
+ {"x":8, "y":0, "matrix": [0, 8]},
+ {"x":9, "y":0, "matrix": [0, 9]},
+ {"x":10, "y":0, "matrix": [0, 10]},
+ {"x":11, "y":0, "matrix": [0, 11]},
+ {"x":12, "y":0, "matrix": [0, 12]},
+ {"x":13, "y":0, "w":2, "matrix": [0, 13]},
+
+ {"x":0, "y":1, "w":1.5, "matrix": [1, 0]},
+ {"x":1.5, "y":1, "matrix": [1, 1]},
+ {"x":2.5, "y":1, "matrix": [1, 2]},
+ {"x":3.5, "y":1, "matrix": [1, 3]},
+ {"x":4.5, "y":1, "matrix": [1, 4]},
+ {"x":5.5, "y":1, "matrix": [1, 5]},
+ {"x":6.5, "y":1, "matrix": [1, 6]},
+ {"x":7.5, "y":1, "matrix": [1, 7]},
+ {"x":8.5, "y":1, "matrix": [1, 8]},
+ {"x":9.5, "y":1, "matrix": [1, 9]},
+ {"x":10.5, "y":1, "matrix": [1, 10]},
+ {"x":11.5, "y":1, "matrix": [1, 11]},
+ {"x":12.5, "y":1, "matrix": [1, 12]},
+
+ {"x":0, "y":2, "w":1.75, "matrix": [2, 0]},
+ {"x":1.75, "y":2, "matrix": [2, 1]},
+ {"x":2.75, "y":2, "matrix": [2, 2]},
+ {"x":3.75, "y":2, "matrix": [2, 3]},
+ {"x":4.75, "y":2, "matrix": [2, 4]},
+ {"x":5.75, "y":2, "matrix": [2, 5]},
+ {"x":6.75, "y":2, "matrix": [2, 6]},
+ {"x":7.75, "y":2, "matrix": [2, 7]},
+ {"x":8.75, "y":2, "matrix": [2, 8]},
+ {"x":9.75, "y":2, "matrix": [2, 9]},
+ {"x":10.75, "y":2, "matrix": [2, 10]},
+ {"x":11.75, "y":2, "matrix": [2, 11]},
+ {"x":12.75, "y":2, "matrix": [2, 12]},
+ {"x":13.75, "y":1, "w":1.25, "h":2, "matrix": [2, 14]},
+
+ {"x":0, "y":3, "w":1.25, "matrix": [3, 0]},
+ {"x":1.25, "y":3, "matrix": [3, 1]},
+ {"x":2.25, "y":3, "matrix": [3, 2]},
+ {"x":3.25, "y":3, "matrix": [3, 3]},
+ {"x":4.25, "y":3, "matrix": [3, 4]},
+ {"x":5.25, "y":3, "matrix": [3, 5]},
+ {"x":6.25, "y":3, "matrix": [3, 6]},
+ {"x":7.25, "y":3, "matrix": [3, 7]},
+ {"x":8.25, "y":3, "matrix": [3, 8]},
+ {"x":9.25, "y":3, "matrix": [3, 9]},
+ {"x":10.25, "y":3, "matrix": [3, 10]},
+ {"x":11.25, "y":3, "matrix": [3, 11]},
+ {"x":12.25, "y":3, "w":2.75, "matrix": [3, 12]},
+
+ {"x":0, "y":4, "w":1.25, "matrix": [4, 0]},
+ {"x":1.25, "y":4, "w":1.25, "matrix": [4, 1]},
+ {"x":2.5, "y":4, "w":1.25, "matrix": [4, 2]},
+ {"x":3.75, "y":4, "w":6.25, "matrix": [4, 6]},
+ {"x":10, "y":4, "w":1.25, "matrix": [4, 10]},
+ {"x":11.25, "y":4, "w":1.25, "matrix": [4, 11]},
+ {"x":12.5, "y":4, "w":1.25, "matrix": [4, 12]},
+ {"x":13.75, "y":4, "w":1.25, "matrix": [4, 14]}
+ ]
+ },
+ "LAYOUT_all": {
+ "layout": [
+ {"x":0, "y":0, "matrix": [0, 0]},
+ {"x":1, "y":0, "matrix": [0, 1]},
+ {"x":2, "y":0, "matrix": [0, 2]},
+ {"x":3, "y":0, "matrix": [0, 3]},
+ {"x":4, "y":0, "matrix": [0, 4]},
+ {"x":5, "y":0, "matrix": [0, 5]},
+ {"x":6, "y":0, "matrix": [0, 6]},
+ {"x":7, "y":0, "matrix": [0, 7]},
+ {"x":8, "y":0, "matrix": [0, 8]},
+ {"x":9, "y":0, "matrix": [0, 9]},
+ {"x":10, "y":0, "matrix": [0, 10]},
+ {"x":11, "y":0, "matrix": [0, 11]},
+ {"x":12, "y":0, "matrix": [0, 12]},
+ {"x":13, "y":0, "matrix": [0, 13]},
+ {"x":14, "y":0, "matrix": [0, 14]},
+
+ {"x":0, "y":1, "w":1.5, "matrix": [1, 0]},
+ {"x":1.5, "y":1, "matrix": [1, 1]},
+ {"x":2.5, "y":1, "matrix": [1, 2]},
+ {"x":3.5, "y":1, "matrix": [1, 3]},
+ {"x":4.5, "y":1, "matrix": [1, 4]},
+ {"x":5.5, "y":1, "matrix": [1, 5]},
+ {"x":6.5, "y":1, "matrix": [1, 6]},
+ {"x":7.5, "y":1, "matrix": [1, 7]},
+ {"x":8.5, "y":1, "matrix": [1, 8]},
+ {"x":9.5, "y":1, "matrix": [1, 9]},
+ {"x":10.5, "y":1, "matrix": [1, 10]},
+ {"x":11.5, "y":1, "matrix": [1, 11]},
+ {"x":12.5, "y":1, "matrix": [1, 12]},
+ {"x":13.5, "y":1, "w":1.5, "matrix": [1, 14]},
+
+ {"x":0, "y":2, "w":1.75, "matrix": [2, 0]},
+ {"x":1.75, "y":2, "matrix": [2, 1]},
+ {"x":2.75, "y":2, "matrix": [2, 2]},
+ {"x":3.75, "y":2, "matrix": [2, 3]},
+ {"x":4.75, "y":2, "matrix": [2, 4]},
+ {"x":5.75, "y":2, "matrix": [2, 5]},
+ {"x":6.75, "y":2, "matrix": [2, 6]},
+ {"x":7.75, "y":2, "matrix": [2, 7]},
+ {"x":8.75, "y":2, "matrix": [2, 8]},
+ {"x":9.75, "y":2, "matrix": [2, 9]},
+ {"x":10.75, "y":2, "matrix": [2, 10]},
+ {"x":11.75, "y":2, "matrix": [2, 11]},
+ {"x":12.75, "y":2, "matrix": [2, 12]},
+ {"x":13.75, "y":2, "w":1.25, "matrix": [2, 14]},
+
+ {"x":0, "y":3, "w":1.25, "matrix": [3, 0]},
+ {"x":1.25, "y":3, "matrix": [3, 1]},
+ {"x":2.25, "y":3, "matrix": [3, 2]},
+ {"x":3.25, "y":3, "matrix": [3, 3]},
+ {"x":4.25, "y":3, "matrix": [3, 4]},
+ {"x":5.25, "y":3, "matrix": [3, 5]},
+ {"x":6.25, "y":3, "matrix": [3, 6]},
+ {"x":7.25, "y":3, "matrix": [3, 7]},
+ {"x":8.25, "y":3, "matrix": [3, 8]},
+ {"x":9.25, "y":3, "matrix": [3, 9]},
+ {"x":10.25, "y":3, "matrix": [3, 10]},
+ {"x":11.25, "y":3, "matrix": [3, 11]},
+ {"x":12.25, "y":3, "w":1.75, "matrix": [3, 12]},
+ {"x":14, "y":3, "matrix": [3, 14]},
+
+ {"x":0, "y":4, "w":1.25, "matrix": [4, 0]},
+ {"x":1.25, "y":4, "w":1.25, "matrix": [4, 1]},
+ {"x":2.5, "y":4, "w":1.25, "matrix": [4, 2]},
+ {"x":3.75, "y":4, "w":6.25, "matrix": [4, 6]},
+ {"x":10, "y":4, "w":1.25, "matrix": [4, 10]},
+ {"x":11.25, "y":4, "w":1.25, "matrix": [4, 11]},
+ {"x":12.5, "y":4, "w":1.25, "matrix": [4, 12]},
+ {"x":13.75, "y":4, "w":1.25, "matrix": [4, 14]}
]
}
}
diff --git a/keyboards/cannonkeys/db60/rev2/rev2.h b/keyboards/cannonkeys/db60/rev2/rev2.h
deleted file mode 100644
index 6740e70ee3..0000000000
--- a/keyboards/cannonkeys/db60/rev2/rev2.h
+++ /dev/null
@@ -1,77 +0,0 @@
- /* Copyright 2021 Andrew Kannan
- *
- * 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
-
-#include "quantum.h"
-
-#define KNO KC_NO
-
-#define LAYOUT_60_ansi( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2E, \
- K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \
- K40, K41, K42, K46, K4A, K4B, K4C, K4E \
-) { \
- { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, KNO}, \
- { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, KNO, K1E }, \
- { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, KNO, KNO, K2E }, \
- { K30, KNO, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, KNO, KNO }, \
- { K40, K41, K42, KNO, KNO, KNO, K46, KNO, KNO, KNO, K4A, K4B, K4C, KNO, K4E } \
-}
-
-#define LAYOUT_60_tsangan_hhkb( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2E, \
- K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3E,\
- K40, K41, K42, K46, K4B, K4C, K4E \
-) { \
- { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E}, \
- { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, KNO, K1E }, \
- { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, KNO, KNO, K2E }, \
- { K30, KNO, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, KNO, K3E }, \
- { K40, K41, K42, KNO, KNO, KNO, K46, KNO, KNO, KNO, KNO, K4B, K4C, KNO, K4E } \
-}
-
-#define LAYOUT_60_iso( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2E, \
- K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \
- K40, K41, K42, K46, K4A, K4B, K4C, K4E \
-) { \
- { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, KNO}, \
- { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, KNO, KNO }, \
- { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, KNO, K2E }, \
- { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, KNO, KNO }, \
- { K40, K41, K42, KNO, KNO, KNO, K46, KNO, KNO, KNO, K4A, K4B, K4C, KNO, K4E } \
-}
-
-#define LAYOUT_all( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E,\
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2E, \
- K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3E,\
- K40, K41, K42, K46, K4A, K4B, K4C, K4E \
-) { \
- { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E}, \
- { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, KNO, K1E }, \
- { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, KNO, K2E }, \
- { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, KNO, K3E }, \
- { K40, K41, K42, KNO, KNO, KNO, K46, KNO, KNO, KNO, K4A, K4B, K4C, KNO, K4E } \
-}
diff --git a/keyboards/cannonkeys/db60/rev2/rules.mk b/keyboards/cannonkeys/db60/rev2/rules.mk
index f53da9b051..e69de29bb2 100644
--- a/keyboards/cannonkeys/db60/rev2/rules.mk
+++ b/keyboards/cannonkeys/db60/rev2/rules.mk
@@ -1 +0,0 @@
-LAYOUTS = 60_ansi 60_tsangan_hhkb 60_iso
diff --git a/keyboards/cannonkeys/db60/rules.mk b/keyboards/cannonkeys/db60/rules.mk
index 91a8974c0c..56e7b05c52 100644
--- a/keyboards/cannonkeys/db60/rules.mk
+++ b/keyboards/cannonkeys/db60/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
diff --git a/keyboards/cannonkeys/devastatingtkl/config.h b/keyboards/cannonkeys/devastatingtkl/config.h
index aeaf30a461..cd6fa15243 100644
--- a/keyboards/cannonkeys/devastatingtkl/config.h
+++ b/keyboards/cannonkeys/devastatingtkl/config.h
@@ -17,27 +17,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define MATRIX_ROWS 6
-#define MATRIX_COLS 18
-
#define MATRIX_COL_PINS { B1, B2, B10, B11, B12, B14, A8, A9, A10, A3, B0, A2, A1, A7, A0, B4, B6, B7 }
#define MATRIX_ROW_PINS { A15, B3, B5, A4, A5, F1 }
#define DIODE_DIRECTION COL2ROW
-
-#define BACKLIGHT_PIN A6
#define BACKLIGHT_PWM_DRIVER PWMD3
#define BACKLIGHT_PWM_CHANNEL 1
#define BACKLIGHT_PAL_MODE 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/devastatingtkl/info.json b/keyboards/cannonkeys/devastatingtkl/info.json
index 2c7c2eeb0b..557b53817b 100644
--- a/keyboards/cannonkeys/devastatingtkl/info.json
+++ b/keyboards/cannonkeys/devastatingtkl/info.json
@@ -8,6 +8,13 @@
"pid": "0xDE57",
"device_version": "0.0.1"
},
+ "backlight": {
+ "pin": "A6",
+ "levels": 6,
+ "breathing": true
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_all": {
"layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1.25, "y":0}, {"label":"F2", "x":2.25, "y":0}, {"label":"F3", "x":3.25, "y":0}, {"label":"F4", "x":4.25, "y":0}, {"label":"F5", "x":5.5, "y":0}, {"label":"F6", "x":6.5, "y":0}, {"label":"F7", "x":7.5, "y":0}, {"label":"F8", "x":8.5, "y":0}, {"label":"F9", "x":9.75, "y":0}, {"label":"F10", "x":10.75, "y":0}, {"label":"F11", "x":11.75, "y":0}, {"label":"F12", "x":12.75, "y":0}, {"x":14, "y":0}, {"label":"PrtSc", "x":15.25, "y":0}, {"label":"Scroll Lock", "x":16.25, "y":0}, {"label":"Pause", "x":17.25, "y":0}, {"label":"~", "x":0, "y":1.25}, {"label":"!", "x":1, "y":1.25}, {"label":"@", "x":2, "y":1.25}, {"label":"#", "x":3, "y":1.25}, {"label":"$", "x":4, "y":1.25}, {"label":"%", "x":5, "y":1.25}, {"label":"^", "x":6, "y":1.25}, {"label":"&", "x":7, "y":1.25}, {"label":"*", "x":8, "y":1.25}, {"label":"(", "x":9, "y":1.25}, {"label":")", "x":10, "y":1.25}, {"label":"_", "x":11, "y":1.25}, {"label":"+", "x":12, "y":1.25}, {"x":13, "y":1.25}, {"x":14, "y":1.25}, {"label":"Insert", "x":15.25, "y":1.25}, {"label":"Home", "x":16.25, "y":1.25}, {"label":"PgUp", "x":17.25, "y":1.25}, {"label":"Tab", "x":0, "y":2.25, "w":1.5}, {"label":"Q", "x":1.5, "y":2.25}, {"label":"W", "x":2.5, "y":2.25}, {"label":"E", "x":3.5, "y":2.25}, {"label":"R", "x":4.5, "y":2.25}, {"label":"T", "x":5.5, "y":2.25}, {"label":"Y", "x":6.5, "y":2.25}, {"label":"U", "x":7.5, "y":2.25}, {"label":"I", "x":8.5, "y":2.25}, {"label":"O", "x":9.5, "y":2.25}, {"label":"P", "x":10.5, "y":2.25}, {"label":"{", "x":11.5, "y":2.25}, {"label":"}", "x":12.5, "y":2.25}, {"label":"|", "x":13.5, "y":2.25, "w":1.5}, {"label":"Delete", "x":15.25, "y":2.25}, {"label":"End", "x":16.25, "y":2.25}, {"label":"PgDn", "x":17.25, "y":2.25}, {"label":"Caps Lock", "x":0, "y":3.25, "w":1.75}, {"label":"A", "x":1.75, "y":3.25}, {"label":"S", "x":2.75, "y":3.25}, {"label":"D", "x":3.75, "y":3.25}, {"label":"F", "x":4.75, "y":3.25}, {"label":"G", "x":5.75, "y":3.25}, {"label":"H", "x":6.75, "y":3.25}, {"label":"J", "x":7.75, "y":3.25}, {"label":"K", "x":8.75, "y":3.25}, {"label":"L", "x":9.75, "y":3.25}, {"label":":", "x":10.75, "y":3.25}, {"label":"\"", "x":11.75, "y":3.25}, {"x":12.75, "y":3.25}, {"x":13.75, "y":3.25, "w":1.25}, {"label":"Shift", "x":0, "y":4.25, "w":1.25}, {"x":1.25, "y":4.25}, {"label":"Z", "x":2.25, "y":4.25}, {"label":"X", "x":3.25, "y":4.25}, {"label":"C", "x":4.25, "y":4.25}, {"label":"V", "x":5.25, "y":4.25}, {"label":"B", "x":6.25, "y":4.25}, {"label":"N", "x":7.25, "y":4.25}, {"label":"M", "x":8.25, "y":4.25}, {"label":"<", "x":9.25, "y":4.25}, {"label":">", "x":10.25, "y":4.25}, {"label":"?", "x":11.25, "y":4.25}, {"label":"Shift", "x":12.25, "y":4.25, "w":1.75}, {"x":14, "y":4.25}, {"label":"\u2191", "x":16.25, "y":4.25}, {"label":"Ctrl", "x":0, "y":5.25, "w":1.25}, {"label":"Win", "x":1.25, "y":5.25, "w":1.25}, {"label":"Alt", "x":2.5, "y":5.25, "w":1.25}, {"x":3.75, "y":5.25, "w":6.25}, {"label":"Alt", "x":10, "y":5.25, "w":1.25}, {"label":"Fn", "x":11.25, "y":5.25, "w":1.25}, {"label":"Menu", "x":12.5, "y":5.25, "w":1.25}, {"label":"Ctrl", "x":13.75, "y":5.25, "w":1.25}, {"label":"\u2190", "x":15.25, "y":5.25}, {"label":"\u2193", "x":16.25, "y":5.25}, {"label":"\u2192", "x":17.25, "y":5.25}]
diff --git a/keyboards/cannonkeys/devastatingtkl/rules.mk b/keyboards/cannonkeys/devastatingtkl/rules.mk
index 440b77bd26..8b82556130 100644
--- a/keyboards/cannonkeys/devastatingtkl/rules.mk
+++ b/keyboards/cannonkeys/devastatingtkl/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
diff --git a/keyboards/cannonkeys/ellipse/info.json b/keyboards/cannonkeys/ellipse/info.json
index 68ded154b1..7788b893bf 100644
--- a/keyboards/cannonkeys/ellipse/info.json
+++ b/keyboards/cannonkeys/ellipse/info.json
@@ -19,7 +19,6 @@
},
"backlight": {
"breathing": true,
- "breathing_period": 5,
"levels": 15,
"pin": "A6"
},
diff --git a/keyboards/cannonkeys/gentoo/config.h b/keyboards/cannonkeys/gentoo/config.h
index 543ac8d550..14b14879d6 100644
--- a/keyboards/cannonkeys/gentoo/config.h
+++ b/keyboards/cannonkeys/gentoo/config.h
@@ -17,22 +17,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 15
-
#define MATRIX_COL_PINS { C13, C15, B13, B12, B11, B10, B2, B1, B0, A7, A6, A5, A4, A3, A2 }
#define MATRIX_ROW_PINS { C14, A1, B14, B15, A8 }
#define DIODE_DIRECTION COL2ROW
-#define LED_CAPS_LOCK_PIN B3
-#define LED_PIN_ON_STATE 0
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
diff --git a/keyboards/cannonkeys/gentoo/info.json b/keyboards/cannonkeys/gentoo/info.json
index 357554d9fc..6b0c9399be 100644
--- a/keyboards/cannonkeys/gentoo/info.json
+++ b/keyboards/cannonkeys/gentoo/info.json
@@ -8,6 +8,12 @@
"pid": "0x000F",
"device_version": "0.0.1"
},
+ "indicators": {
+ "caps_lock": "B3",
+ "on_state": 0
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_all": {
"layout": [
diff --git a/keyboards/cannonkeys/gentoo/rules.mk b/keyboards/cannonkeys/gentoo/rules.mk
index 7b44b402d1..f56120695a 100644
--- a/keyboards/cannonkeys/gentoo/rules.mk
+++ b/keyboards/cannonkeys/gentoo/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
diff --git a/keyboards/cannonkeys/gentoo_hs/config.h b/keyboards/cannonkeys/gentoo_hs/config.h
index 9703c0b1b0..8c83fe3fc6 100644
--- a/keyboards/cannonkeys/gentoo_hs/config.h
+++ b/keyboards/cannonkeys/gentoo_hs/config.h
@@ -17,29 +17,15 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 15
-
#define MATRIX_COL_PINS { A8, C13, B9, B8, B7, B6, B5, B4, B3, A7, A5, A4, A3, A2, A1 }
#define MATRIX_ROW_PINS { A14, A15, A0, B1, B0 }
#define DIODE_DIRECTION COL2ROW
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define LED_CAPS_LOCK_PIN B14
-#define LED_PIN_ON_STATE 0
-
-
/*
* Feature disable options
* These options are also useful to firmware size reduction.
diff --git a/keyboards/cannonkeys/gentoo_hs/info.json b/keyboards/cannonkeys/gentoo_hs/info.json
index e20f6e6e39..8595a321b2 100644
--- a/keyboards/cannonkeys/gentoo_hs/info.json
+++ b/keyboards/cannonkeys/gentoo_hs/info.json
@@ -8,6 +8,12 @@
"pid": "0x0010",
"device_version": "0.0.1"
},
+ "indicators": {
+ "caps_lock": "B14",
+ "on_state": 0
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_default": {
"layout": [
diff --git a/keyboards/cannonkeys/gentoo_hs/rules.mk b/keyboards/cannonkeys/gentoo_hs/rules.mk
index b34d15f4b5..5b983f1f26 100644
--- a/keyboards/cannonkeys/gentoo_hs/rules.mk
+++ b/keyboards/cannonkeys/gentoo_hs/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
diff --git a/keyboards/cannonkeys/hoodrowg/config.h b/keyboards/cannonkeys/hoodrowg/config.h
index d537eca59f..103faf39f9 100644
--- a/keyboards/cannonkeys/hoodrowg/config.h
+++ b/keyboards/cannonkeys/hoodrowg/config.h
@@ -17,10 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#include "config_common.h"
-
-#define MATRIX_ROWS 12
-#define MATRIX_COLS 9
#define MATRIX_COL_PINS { B5, B4, D7, F5, F6, F7, F4, D2, D0 }
#define MATRIX_ROW_PINS { E6, B7, B0, B1, F1, F0, C6, C7, D4, D6, D5, D3 }
@@ -39,15 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define RGBLIGHT_EFFECT_ALTERNATING
#define RGBLIGHT_EFFECT_TWINKLE
-#define LED_CAPS_LOCK_PIN B6
-#define LED_SCROLL_LOCK_PIN B2
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
diff --git a/keyboards/cannonkeys/hoodrowg/info.json b/keyboards/cannonkeys/hoodrowg/info.json
index 10fed32dbf..4d0adb731a 100644
--- a/keyboards/cannonkeys/hoodrowg/info.json
+++ b/keyboards/cannonkeys/hoodrowg/info.json
@@ -8,6 +8,12 @@
"pid": "0x0006",
"device_version": "0.0.1"
},
+ "indicators": {
+ "caps_lock": "B6",
+ "scroll_lock": "B2"
+ },
+ "processor": "atmega32u4",
+ "bootloader": "atmel-dfu",
"layouts": {
"LAYOUT_all": {
"layout": [
diff --git a/keyboards/cannonkeys/hoodrowg/rules.mk b/keyboards/cannonkeys/hoodrowg/rules.mk
index e25598e1d7..b483118606 100644
--- a/keyboards/cannonkeys/hoodrowg/rules.mk
+++ b/keyboards/cannonkeys/hoodrowg/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = atmega32u4
-
-# Bootloader
-BOOTLOADER = atmel-dfu
-
# Build Options
# change yes to no to disable
#
diff --git a/keyboards/cannonkeys/instant60/config.h b/keyboards/cannonkeys/instant60/config.h
index f04f63fb5a..8e7158765d 100644
--- a/keyboards/cannonkeys/instant60/config.h
+++ b/keyboards/cannonkeys/instant60/config.h
@@ -17,27 +17,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 15
-
#define MATRIX_COL_PINS { B2, B10, B11, A9, A15, B3, B4, B5, B6, B7, B8, B9, C13, C14, C15 }
#define MATRIX_ROW_PINS { B1, B0, A7, A5, A4 }
#define DIODE_DIRECTION COL2ROW
-#define BACKLIGHT_PIN A6
#define BACKLIGHT_PWM_DRIVER PWMD3
#define BACKLIGHT_PWM_CHANNEL 1
#define BACKLIGHT_PAL_MODE 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/instant60/info.json b/keyboards/cannonkeys/instant60/info.json
index 0b4d600e09..56f5126d0d 100644
--- a/keyboards/cannonkeys/instant60/info.json
+++ b/keyboards/cannonkeys/instant60/info.json
@@ -8,6 +8,14 @@
"pid": "0x1600",
"device_version": "0.0.1"
},
+ "backlight": {
+ "pin": "A6",
+ "levels": 6,
+ "breathing": true
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
+ "community_layouts": ["60_ansi", "60_tsangan_hhkb"],
"layouts": {
"LAYOUT_60_ansi": {
"layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":2.75}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"Ctrl", "x":13.75, "y":4, "w":1.25}]
diff --git a/keyboards/cannonkeys/instant60/keymaps/tsangan/keymap.c b/keyboards/cannonkeys/instant60/keymaps/tsangan/keymap.c
index a2ebb9a0c2..211e767eec 100644
--- a/keyboards/cannonkeys/instant60/keymaps/tsangan/keymap.c
+++ b/keyboards/cannonkeys/instant60/keymaps/tsangan/keymap.c
@@ -31,18 +31,18 @@ enum custom_keycodes {
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT_60_tsangan_hhkb(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_DEL, \
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC, \
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(_FN1),\
+ QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_DEL,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(_FN1),
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL
),
[_FN1] = LAYOUT_60_tsangan_hhkb(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, _______,\
- RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- BL_UP, BL_DOWN, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,\
+ KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, _______,
+ RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ BL_UP, BL_DOWN, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, QK_BOOT
)
};
diff --git a/keyboards/cannonkeys/instant60/rules.mk b/keyboards/cannonkeys/instant60/rules.mk
index e03a83f44c..8b82556130 100644
--- a/keyboards/cannonkeys/instant60/rules.mk
+++ b/keyboards/cannonkeys/instant60/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
@@ -20,7 +14,5 @@ BACKLIGHT_ENABLE = yes
RGBLIGHT_ENABLE = yes
WS2812_DRIVER = spi
-LAYOUTS = 60_ansi 60_tsangan_hhkb
-
# Enter lower-power sleep mode when on the ChibiOS idle thread
OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE
diff --git a/keyboards/cannonkeys/instant65/config.h b/keyboards/cannonkeys/instant65/config.h
index ad40a62e7f..5afccde3a7 100644
--- a/keyboards/cannonkeys/instant65/config.h
+++ b/keyboards/cannonkeys/instant65/config.h
@@ -17,27 +17,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 15
-
#define MATRIX_COL_PINS { A8, C13, B9, B8, B7, B6, B5, B4, B3, A7, A5, A4, A3, A2, A1 }
#define MATRIX_ROW_PINS { A14, A15, A0, B1, B0 }
#define DIODE_DIRECTION COL2ROW
-#define BACKLIGHT_PIN A6
#define BACKLIGHT_PWM_DRIVER PWMD3
#define BACKLIGHT_PWM_CHANNEL 1
#define BACKLIGHT_PAL_MODE 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/instant65/info.json b/keyboards/cannonkeys/instant65/info.json
index 8274aacce1..eedb9bd5c7 100644
--- a/keyboards/cannonkeys/instant65/info.json
+++ b/keyboards/cannonkeys/instant65/info.json
@@ -8,6 +8,13 @@
"pid": "0x1565",
"device_version": "0.0.1"
},
+ "backlight": {
+ "pin": "A6",
+ "levels": 6,
+ "breathing": true
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_default": {
"layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"x":15, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"x":15, "y":1}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"x":15, "y":2}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"x":15, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.25}, {"label":"Ctrl", "x":11.25, "y":4, "w":1.25}, {"x":13, "y":4}, {"x":14, "y":4}, {"x":15, "y":4}]
diff --git a/keyboards/cannonkeys/instant65/rules.mk b/keyboards/cannonkeys/instant65/rules.mk
index 0d99007c16..2eaae2dc9b 100644
--- a/keyboards/cannonkeys/instant65/rules.mk
+++ b/keyboards/cannonkeys/instant65/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
diff --git a/keyboards/cannonkeys/iron165/config.h b/keyboards/cannonkeys/iron165/config.h
index 3ba33e96e5..eb7011b349 100644
--- a/keyboards/cannonkeys/iron165/config.h
+++ b/keyboards/cannonkeys/iron165/config.h
@@ -17,27 +17,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 16
-
#define MATRIX_COL_PINS { A5, B10, A3, A2, B0, A8, C13, B9, B8, B7, B6, B5, B4, B3, A15, A14 }
#define MATRIX_ROW_PINS { B12, B13, B14, B15, A1 }
#define DIODE_DIRECTION COL2ROW
-#define BACKLIGHT_PIN A6
#define BACKLIGHT_PWM_DRIVER PWMD3
#define BACKLIGHT_PWM_CHANNEL 1
#define BACKLIGHT_PAL_MODE 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/iron165/info.json b/keyboards/cannonkeys/iron165/info.json
index 843302efd2..b0ad19785c 100644
--- a/keyboards/cannonkeys/iron165/info.json
+++ b/keyboards/cannonkeys/iron165/info.json
@@ -8,6 +8,13 @@
"pid": "0x5165",
"device_version": "0.0.1"
},
+ "backlight": {
+ "pin": "A6",
+ "levels": 6,
+ "breathing": true
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_default": {
"layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"x":15, "y":1}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"x":12.75, "y":2}, {"label":"Enter", "x":13.75, "y":2, "w":1.25}, {"x":15, "y":2}, {"x":0, "y":3, "w":1.25}, {"x":1.25, "y":3}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"x":15, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.25}, {"label":"Ctrl", "x":11.25, "y":4, "w":1.25}, {"x":13, "y":4}, {"x":14, "y":4}, {"x":15, "y":4}]
diff --git a/keyboards/cannonkeys/iron165/rules.mk b/keyboards/cannonkeys/iron165/rules.mk
index c2cb86cc7d..09c801a849 100644
--- a/keyboards/cannonkeys/iron165/rules.mk
+++ b/keyboards/cannonkeys/iron165/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Build Options
# change yes to no to disable
#
diff --git a/keyboards/cannonkeys/malicious_ergo/config.h b/keyboards/cannonkeys/malicious_ergo/config.h
index 1f9eecf119..57fa0cf7c3 100644
--- a/keyboards/cannonkeys/malicious_ergo/config.h
+++ b/keyboards/cannonkeys/malicious_ergo/config.h
@@ -19,27 +19,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 17
-
#define MATRIX_COL_PINS { B1, B0, A7, A1, A5, A4, A3, A10, B9, B8, B7, B6, B5, B4, B3, A15, A14 }
#define MATRIX_ROW_PINS { B2, B10, B11, A2, A0 }
#define DIODE_DIRECTION COL2ROW
-#define BACKLIGHT_PIN A6
#define BACKLIGHT_PWM_DRIVER PWMD3
#define BACKLIGHT_PWM_CHANNEL 1
#define BACKLIGHT_PAL_MODE 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
@@ -63,14 +49,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
-// Indicator LEDs
-#define LED_CAPS_LOCK_PIN A8
-#define LED_NUM_LOCK_PIN A9
-#define LED_SCROLL_LOCK_PIN B12
-#define LED_PIN_ON_STATE 0
-
-
-
// 2 bits for 4 layout options
#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2
diff --git a/keyboards/cannonkeys/malicious_ergo/info.json b/keyboards/cannonkeys/malicious_ergo/info.json
index b6ec458917..9058e07878 100644
--- a/keyboards/cannonkeys/malicious_ergo/info.json
+++ b/keyboards/cannonkeys/malicious_ergo/info.json
@@ -8,6 +8,19 @@
"pid": "0x0009",
"device_version": "0.0.1"
},
+ "backlight": {
+ "pin": "A6",
+ "levels": 6,
+ "breathing": true
+ },
+ "indicators": {
+ "caps_lock": "A8",
+ "num_lock": "A9",
+ "scroll_lock": "B12",
+ "on_state": 0
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_default": {
"layout": [{"x":0.5, "y":0}, {"x":1.75, "y":0}, {"x":2.75, "y":0}, {"x":3.75, "y":0}, {"x":4.75, "y":0}, {"x":5.75, "y":0}, {"x":6.75, "y":0}, {"x":7.75, "y":0}, {"x":9.75, "y":0}, {"x":10.75, "y":0}, {"x":11.75, "y":0}, {"x":12.75, "y":0}, {"x":13.75, "y":0}, {"x":14.75, "y":0}, {"x":15.75, "y":0}, {"x":16.75, "y":0}, {"x":18, "y":0}, {"x":0.25, "y":1}, {"x":1.5, "y":1, "w":1.5}, {"x":3, "y":1}, {"x":4, "y":1}, {"x":5, "y":1}, {"x":6, "y":1}, {"x":7, "y":1}, {"x":9.5, "y":1}, {"x":10.5, "y":1}, {"x":11.5, "y":1}, {"x":12.5, "y":1}, {"x":13.5, "y":1}, {"x":14.5, "y":1}, {"x":15.5, "y":1}, {"x":16.5, "y":1, "w":1.5}, {"x":18.25, "y":1}, {"x":0, "y":2}, {"x":1.375, "y":2, "w":1.75}, {"x":3.125, "y":2}, {"x":4.13, "y":2}, {"x":5.13, "y":2}, {"x":6.13, "y":2}, {"x":7.13, "y":2}, {"x":9.88, "y":2}, {"x":10.88, "y":2}, {"x":11.88, "y":2}, {"x":12.88, "y":2}, {"x":13.88, "y":2}, {"x":14.88, "y":2}, {"x":15.88, "y":2, "w":2.25}, {"x":18.5, "y":2}, {"x":1.25, "y":3, "w":2.25}, {"x":3.5, "y":3}, {"x":4.5, "y":3}, {"x":5.5, "y":3}, {"x":6.5, "y":3}, {"x":7.5, "y":3}, {"x":9.5, "y":3}, {"x":10.5, "y":3}, {"x":11.5, "y":3}, {"x":12.5, "y":3}, {"x":13.5, "y":3}, {"x":14.5, "y":3}, {"x":15.5, "y":3, "w":1.75}, {"x":17.25, "y":3}, {"x":1.5, "y":4, "w":1.5}, {"x":4.25, "y":4, "w":1.5}, {"x":5.75, "y":4, "w":2}, {"x":7.75, "y":4, "w":1.25}, {"x":9.5, "y":4, "w":2.75}, {"x":12.25, "y":4, "w":1.5}, {"x":14.25, "y":4, "w":1.5}, {"x":16.25, "y":4}, {"x":17.25, "y":4}, {"x":18.25, "y":4}]
diff --git a/keyboards/cannonkeys/malicious_ergo/rules.mk b/keyboards/cannonkeys/malicious_ergo/rules.mk
index 0d99007c16..2eaae2dc9b 100644
--- a/keyboards/cannonkeys/malicious_ergo/rules.mk
+++ b/keyboards/cannonkeys/malicious_ergo/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
diff --git a/keyboards/cannonkeys/moment/info.json b/keyboards/cannonkeys/moment/info.json
index 2ac2028dfa..462c42d9b6 100644
--- a/keyboards/cannonkeys/moment/info.json
+++ b/keyboards/cannonkeys/moment/info.json
@@ -19,7 +19,6 @@
},
"backlight": {
"breathing": true,
- "breathing_period": 5,
"levels": 15,
"pin": "A6"
},
diff --git a/keyboards/cannonkeys/nearfield/config.h b/keyboards/cannonkeys/nearfield/config.h
index a275a6213c..5c989ba3f3 100755
--- a/keyboards/cannonkeys/nearfield/config.h
+++ b/keyboards/cannonkeys/nearfield/config.h
@@ -17,11 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#include "config_common.h"
-
-/* key matrix size */
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 16
/* key matrix pins */
#define MATRIX_ROW_PINS { B4, D2, D4, D6, D7 }
@@ -29,6 +24,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 0
diff --git a/keyboards/cannonkeys/nearfield/info.json b/keyboards/cannonkeys/nearfield/info.json
index ffd1bf6ac6..83550cbd36 100644
--- a/keyboards/cannonkeys/nearfield/info.json
+++ b/keyboards/cannonkeys/nearfield/info.json
@@ -8,6 +8,9 @@
"pid":"0x0002",
"device_version":"0.0.1"
},
+ "processor": "atmega32u4",
+ "bootloader": "atmel-dfu",
+ "debounce": 0,
"layouts":{
"LAYOUT_all":{
"layout":[
diff --git a/keyboards/cannonkeys/nearfield/rules.mk b/keyboards/cannonkeys/nearfield/rules.mk
index 476cf49f27..3b6a1809db 100755
--- a/keyboards/cannonkeys/nearfield/rules.mk
+++ b/keyboards/cannonkeys/nearfield/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = atmega32u4
-
-# Bootloader selection
-BOOTLOADER = atmel-dfu
-
# Build Options
# change yes to no to disable
#
diff --git a/keyboards/cannonkeys/obliterated75/config.h b/keyboards/cannonkeys/obliterated75/config.h
index 3069e751bd..6d2ab14c6b 100644
--- a/keyboards/cannonkeys/obliterated75/config.h
+++ b/keyboards/cannonkeys/obliterated75/config.h
@@ -17,27 +17,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 6
-#define MATRIX_COLS 16
-
#define MATRIX_COL_PINS { A5, B10, A3, A2, B0, A9, C13, B9, B8, B7, B6, B5, B4, B3, A15, A14 }
#define MATRIX_ROW_PINS { A13, B12, B11, B14, A8, A1 }
#define DIODE_DIRECTION COL2ROW
-#define BACKLIGHT_PIN A6
#define BACKLIGHT_PWM_DRIVER PWMD3
#define BACKLIGHT_PWM_CHANNEL 1
#define BACKLIGHT_PAL_MODE 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/obliterated75/info.json b/keyboards/cannonkeys/obliterated75/info.json
index beda41b9a0..30ea22bd74 100644
--- a/keyboards/cannonkeys/obliterated75/info.json
+++ b/keyboards/cannonkeys/obliterated75/info.json
@@ -8,6 +8,13 @@
"pid": "0x0B75",
"device_version": "0.0.1"
},
+ "backlight": {
+ "pin": "A6",
+ "levels": 6,
+ "breathing": true
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_all": {
"layout": [{"x":0, "y":0}, {"x":1.5, "y":0}, {"x":2.5, "y":0}, {"x":3.5, "y":0}, {"x":4.5, "y":0}, {"x":6, "y":0}, {"x":7, "y":0}, {"x":8, "y":0}, {"x":9, "y":0}, {"x":10.5, "y":0}, {"x":11.5, "y":0}, {"x":12.5, "y":0}, {"x":13.5, "y":0}, {"x":15, "y":0}, {"label":"~", "x":0, "y":1.25}, {"label":"!", "x":1, "y":1.25}, {"label":"@", "x":2, "y":1.25}, {"label":"#", "x":3, "y":1.25}, {"label":"$", "x":4, "y":1.25}, {"label":"%", "x":5, "y":1.25}, {"label":"^", "x":6, "y":1.25}, {"label":"&", "x":7, "y":1.25}, {"label":"*", "x":8, "y":1.25}, {"label":"(", "x":9, "y":1.25}, {"label":")", "x":10, "y":1.25}, {"label":"_", "x":11, "y":1.25}, {"label":"+", "x":12, "y":1.25}, {"x":13, "y":1.25}, {"x":14, "y":1.25}, {"x":15, "y":1.25}, {"label":"Tab", "x":0, "y":2.25, "w":1.5}, {"label":"Q", "x":1.5, "y":2.25}, {"label":"W", "x":2.5, "y":2.25}, {"label":"E", "x":3.5, "y":2.25}, {"label":"R", "x":4.5, "y":2.25}, {"label":"T", "x":5.5, "y":2.25}, {"label":"Y", "x":6.5, "y":2.25}, {"label":"U", "x":7.5, "y":2.25}, {"label":"I", "x":8.5, "y":2.25}, {"label":"O", "x":9.5, "y":2.25}, {"label":"P", "x":10.5, "y":2.25}, {"label":"{", "x":11.5, "y":2.25}, {"label":"}", "x":12.5, "y":2.25}, {"label":"|", "x":13.5, "y":2.25, "w":1.5}, {"x":15, "y":2.25}, {"label":"Caps Lock", "x":0, "y":3.25, "w":1.75}, {"label":"A", "x":1.75, "y":3.25}, {"label":"S", "x":2.75, "y":3.25}, {"label":"D", "x":3.75, "y":3.25}, {"label":"F", "x":4.75, "y":3.25}, {"label":"G", "x":5.75, "y":3.25}, {"label":"H", "x":6.75, "y":3.25}, {"label":"J", "x":7.75, "y":3.25}, {"label":"K", "x":8.75, "y":3.25}, {"label":"L", "x":9.75, "y":3.25}, {"label":":", "x":10.75, "y":3.25}, {"label":"\"", "x":11.75, "y":3.25}, {"x":12.75, "y":3.25}, {"label":"Enter", "x":13.75, "y":3.25, "w":1.25}, {"x":15, "y":3.25}, {"x":0, "y":4.25, "w":1.25}, {"x":1.25, "y":4.25}, {"label":"Z", "x":2.25, "y":4.25}, {"label":"X", "x":3.25, "y":4.25}, {"label":"C", "x":4.25, "y":4.25}, {"label":"V", "x":5.25, "y":4.25}, {"label":"B", "x":6.25, "y":4.25}, {"label":"N", "x":7.25, "y":4.25}, {"label":"M", "x":8.25, "y":4.25}, {"label":"<", "x":9.25, "y":4.25}, {"label":">", "x":10.25, "y":4.25}, {"label":"?", "x":11.25, "y":4.25}, {"label":"Shift", "x":12.25, "y":4.25, "w":1.75}, {"x":14, "y":4.25}, {"x":15, "y":4.25}, {"label":"Ctrl", "x":0, "y":5.25, "w":1.25}, {"label":"Win", "x":1.25, "y":5.25, "w":1.25}, {"label":"Alt", "x":2.5, "y":5.25, "w":1.25}, {"x":3.75, "y":5.25, "w":6.25}, {"label":"Alt", "x":10, "y":5.25, "w":1.25}, {"label":"Ctrl", "x":11.25, "y":5.25, "w":1.25}, {"x":13, "y":5.25}, {"x":14, "y":5.25}, {"x":15, "y":5.25}]
diff --git a/keyboards/cannonkeys/obliterated75/rules.mk b/keyboards/cannonkeys/obliterated75/rules.mk
index 0d99007c16..2eaae2dc9b 100644
--- a/keyboards/cannonkeys/obliterated75/rules.mk
+++ b/keyboards/cannonkeys/obliterated75/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
diff --git a/keyboards/cannonkeys/onyx/config.h b/keyboards/cannonkeys/onyx/config.h
index a07fdc9f2b..3c95a53960 100644
--- a/keyboards/cannonkeys/onyx/config.h
+++ b/keyboards/cannonkeys/onyx/config.h
@@ -17,27 +17,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 19
-
#define MATRIX_COL_PINS { B1, B0, C15, C14, A7, A5, C13, A4, A2, A1, A0, B9, B8, B7, A3, B6, B4, B3, A15 }
#define MATRIX_ROW_PINS { B11, B10, B2, F0, B5 }
#define DIODE_DIRECTION COL2ROW
-
-#define BACKLIGHT_PIN A6
#define BACKLIGHT_PWM_DRIVER PWMD3
#define BACKLIGHT_PWM_CHANNEL 1
#define BACKLIGHT_PAL_MODE 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/onyx/info.json b/keyboards/cannonkeys/onyx/info.json
index 2b60c7f15f..a4e1a69c9c 100644
--- a/keyboards/cannonkeys/onyx/info.json
+++ b/keyboards/cannonkeys/onyx/info.json
@@ -8,6 +8,13 @@
"pid": "0x0003",
"device_version": "0.0.1"
},
+ "backlight": {
+ "pin": "A6",
+ "levels": 6,
+ "breathing": true
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_all": {
"layout": [
diff --git a/keyboards/cannonkeys/onyx/rules.mk b/keyboards/cannonkeys/onyx/rules.mk
index 36c7523cb9..e58c511435 100644
--- a/keyboards/cannonkeys/onyx/rules.mk
+++ b/keyboards/cannonkeys/onyx/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
diff --git a/keyboards/cannonkeys/ortho48/config.h b/keyboards/cannonkeys/ortho48/config.h
index e8cad24bf1..5c864541c7 100644
--- a/keyboards/cannonkeys/ortho48/config.h
+++ b/keyboards/cannonkeys/ortho48/config.h
@@ -17,26 +17,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 4
-#define MATRIX_COLS 12
-
#define MATRIX_COL_PINS { B11, B10, B1, B0, A7, A6, A5, B14, A15, A0, C15, C14}
#define MATRIX_ROW_PINS { B12, C13, A2, A1 }
#define DIODE_DIRECTION COL2ROW
-#define BACKLIGHT_PIN A8
#define BACKLIGHT_PWM_DRIVER PWMD1
#define BACKLIGHT_PWM_CHANNEL 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/ortho48/info.json b/keyboards/cannonkeys/ortho48/info.json
index 66b1d1f50e..ba7f1dbdd4 100644
--- a/keyboards/cannonkeys/ortho48/info.json
+++ b/keyboards/cannonkeys/ortho48/info.json
@@ -8,6 +8,14 @@
"pid": "0x4F48",
"device_version": "0.0.1"
},
+ "backlight": {
+ "pin": "A8",
+ "levels": 6,
+ "breathing": true
+ },
+ "processor": "STM32F103",
+ "bootloader": "stm32duino",
+ "community_layouts": ["ortho_4x12"],
"layouts": {
"LAYOUT_ortho_4x12": {
"layout": [
diff --git a/keyboards/cannonkeys/ortho48/rules.mk b/keyboards/cannonkeys/ortho48/rules.mk
index 46b5bf7c4d..f7dee7ff20 100644
--- a/keyboards/cannonkeys/ortho48/rules.mk
+++ b/keyboards/cannonkeys/ortho48/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F103
-
-# Bootloader selection
-BOOTLOADER = stm32duino
-
# Build Options
# change yes to no to disable
#
@@ -18,8 +12,5 @@ RGBLIGHT_ENABLE = yes
SLEEP_LED_ENABLE = yes
WS2812_DRIVER = spi
-LAYOUTS = ortho_4x12
-
-
# Enter lower-power sleep mode when on the ChibiOS idle thread
OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE
diff --git a/keyboards/cannonkeys/ortho60/config.h b/keyboards/cannonkeys/ortho60/config.h
index e1c2dfb409..f9c6596a9f 100644
--- a/keyboards/cannonkeys/ortho60/config.h
+++ b/keyboards/cannonkeys/ortho60/config.h
@@ -17,26 +17,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 12
-
#define MATRIX_COL_PINS { B11, B10, B1, B0, A7, A6, A5, A4, A3, A2, A1, A0 }
#define MATRIX_ROW_PINS { B3, B4, B5, B6, B7 }
#define DIODE_DIRECTION COL2ROW
-#define BACKLIGHT_PIN A8
#define BACKLIGHT_PWM_DRIVER PWMD1
#define BACKLIGHT_PWM_CHANNEL 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/ortho60/info.json b/keyboards/cannonkeys/ortho60/info.json
index 1a4d036a69..8426955dae 100644
--- a/keyboards/cannonkeys/ortho60/info.json
+++ b/keyboards/cannonkeys/ortho60/info.json
@@ -8,6 +8,14 @@
"pid": "0x4F60",
"device_version": "0.0.1"
},
+ "backlight": {
+ "pin": "A8",
+ "levels": 6,
+ "breathing": true
+ },
+ "processor": "STM32F103",
+ "bootloader": "stm32duino",
+ "community_layouts": ["ortho_5x12"],
"layouts": {
"LAYOUT_ortho_5x12": {
"layout": [
diff --git a/keyboards/cannonkeys/ortho60/rules.mk b/keyboards/cannonkeys/ortho60/rules.mk
index ee4390309c..f7dee7ff20 100644
--- a/keyboards/cannonkeys/ortho60/rules.mk
+++ b/keyboards/cannonkeys/ortho60/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F103
-
-# Bootloader selection
-BOOTLOADER = stm32duino
-
# Build Options
# change yes to no to disable
#
@@ -18,8 +12,5 @@ RGBLIGHT_ENABLE = yes
SLEEP_LED_ENABLE = yes
WS2812_DRIVER = spi
-LAYOUTS = ortho_5x12
-
-
# Enter lower-power sleep mode when on the ChibiOS idle thread
OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE
diff --git a/keyboards/cannonkeys/ortho60v2/config.h b/keyboards/cannonkeys/ortho60v2/config.h
new file mode 100644
index 0000000000..2af75a1715
--- /dev/null
+++ b/keyboards/cannonkeys/ortho60v2/config.h
@@ -0,0 +1,23 @@
+/*
+Copyright 2022 CannonKeys
+
+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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET // Activates the double-tap behavior
+#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 200U // Timeout window in ms in which the double tap can occur.
+
+#define BACKLIGHT_PWM_DRIVER PWMD6
+#define BACKLIGHT_PWM_CHANNEL RP2040_PWM_CHANNEL_A
diff --git a/keyboards/cannonkeys/ortho60v2/halconf.h b/keyboards/cannonkeys/ortho60v2/halconf.h
new file mode 100644
index 0000000000..cef26f106c
--- /dev/null
+++ b/keyboards/cannonkeys/ortho60v2/halconf.h
@@ -0,0 +1,23 @@
+ /*
+ * Copyright Andrew Kannan 2022
+ *
+ * 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 HAL_USE_PWM TRUE
+
+#include_next <halconf.h>
diff --git a/keyboards/cannonkeys/ortho60v2/info.json b/keyboards/cannonkeys/ortho60v2/info.json
new file mode 100644
index 0000000000..03e1a28f30
--- /dev/null
+++ b/keyboards/cannonkeys/ortho60v2/info.json
@@ -0,0 +1,104 @@
+{
+ "keyboard_name": "Ortho60 v2",
+ "maintainer": "awkannan",
+ "manufacturer": "CannonKeys",
+ "processor": "RP2040",
+ "bootloader": "rp2040",
+ "usb": {
+ "vid": "0xCA04",
+ "pid": "0x0019",
+ "device_version": "0.0.1"
+ },
+ "url": "https://cannonkeys.com",
+ "diode_direction": "COL2ROW",
+ "matrix_pins": {
+ "cols": ["GP7", "GP6", "GP5", "GP4", "GP3", "GP2", "GP1", "GP0", "GP13", "GP24", "GP23", "GP22"],
+ "rows": ["GP27", "GP18", "GP19", "GP25", "GP26"]
+ },
+ "features": {
+ "bootmagic": true,
+ "command": false,
+ "console": false,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "backlight": true,
+ "encoder": true
+ },
+ "encoder": {
+ "rotary": [
+ { "pin_a": "GP28", "pin_b": "GP29" }
+ ]
+ },
+ "backlight": {
+ "breathing": true,
+ "levels": 15,
+ "pin": "GP12"
+ },
+ "layouts": {
+ "LAYOUT_ortho_5x12": {
+ "layout": [
+ { "label": "`", "matrix": [0, 0], "x": 0.0, "y": 0.0 },
+ { "label": "1", "matrix": [0, 1], "x": 1.0, "y": 0.0 },
+ { "label": "2", "matrix": [0, 2], "x": 2.0, "y": 0.0 },
+ { "label": "3", "matrix": [0, 3], "x": 3.0, "y": 0.0 },
+ { "label": "4", "matrix": [0, 4], "x": 4.0, "y": 0.0 },
+ { "label": "5", "matrix": [0, 5], "x": 5.0, "y": 0.0 },
+ { "label": "6", "matrix": [0, 6], "x": 6.0, "y": 0.0 },
+ { "label": "7", "matrix": [0, 7], "x": 7.0, "y": 0.0 },
+ { "label": "8", "matrix": [0, 8], "x": 8.0, "y": 0.0 },
+ { "label": "9", "matrix": [0, 9], "x": 9.0, "y": 0.0 },
+ { "label": "0", "matrix": [0, 10], "x": 10.0, "y": 0.0 },
+ { "label": "Del", "matrix": [0, 11], "x": 11.0, "y": 0.0 },
+ { "label": "Tab", "matrix": [1, 0], "x": 0.0, "y": 1.0 },
+ { "label": "Q", "matrix": [1, 1], "x": 1.0, "y": 1.0 },
+ { "label": "W", "matrix": [1, 2], "x": 2.0, "y": 1.0 },
+ { "label": "E", "matrix": [1, 3], "x": 3.0, "y": 1.0 },
+ { "label": "R", "matrix": [1, 4], "x": 4.0, "y": 1.0 },
+ { "label": "T", "matrix": [1, 5], "x": 5.0, "y": 1.0 },
+ { "label": "Y", "matrix": [1, 6], "x": 6.0, "y": 1.0 },
+ { "label": "U", "matrix": [1, 7], "x": 7.0, "y": 1.0 },
+ { "label": "I", "matrix": [1, 8], "x": 8.0, "y": 1.0 },
+ { "label": "O", "matrix": [1, 9], "x": 9.0, "y": 1.0 },
+ { "label": "P", "matrix": [1, 10], "x": 10.0, "y": 1.0 },
+ { "label": "Back Space", "matrix": [1, 11], "x": 11.0, "y": 1.0 },
+ { "label": "Esc", "matrix": [2, 0], "x": 0.0, "y": 2.0 },
+ { "label": "A", "matrix": [2, 1], "x": 1.0, "y": 2.0 },
+ { "label": "S", "matrix": [2, 2], "x": 2.0, "y": 2.0 },
+ { "label": "D", "matrix": [2, 3], "x": 3.0, "y": 2.0 },
+ { "label": "F", "matrix": [2, 4], "x": 4.0, "y": 2.0 },
+ { "label": "G", "matrix": [2, 5], "x": 5.0, "y": 2.0 },
+ { "label": "H", "matrix": [2, 6], "x": 6.0, "y": 2.0 },
+ { "label": "J", "matrix": [2, 7], "x": 7.0, "y": 2.0 },
+ { "label": "K", "matrix": [2, 8], "x": 8.0, "y": 2.0 },
+ { "label": "L", "matrix": [2, 9], "x": 9.0, "y": 2.0 },
+ { "label": ";", "matrix": [2, 10], "x": 10.0, "y": 2.0 },
+ { "label": "'", "matrix": [2, 11], "x": 11.0, "y": 2.0 },
+ { "label": "Shift", "matrix": [3, 0], "x": 0.0, "y": 3.0 },
+ { "label": "Z", "matrix": [3, 1], "x": 1.0, "y": 3.0 },
+ { "label": "X", "matrix": [3, 2], "x": 2.0, "y": 3.0 },
+ { "label": "C", "matrix": [3, 3], "x": 3.0, "y": 3.0 },
+ { "label": "V", "matrix": [3, 4], "x": 4.0, "y": 3.0 },
+ { "label": "B", "matrix": [3, 5], "x": 5.0, "y": 3.0 },
+ { "label": "N", "matrix": [3, 6], "x": 6.0, "y": 3.0 },
+ { "label": "M", "matrix": [3, 7], "x": 7.0, "y": 3.0 },
+ { "label": ",", "matrix": [3, 8], "x": 8.0, "y": 3.0 },
+ { "label": ".", "matrix": [3, 9], "x": 9.0, "y": 3.0 },
+ { "label": "/", "matrix": [3, 10], "x": 10.0, "y": 3.0 },
+ { "label": "Return", "matrix": [3, 11], "x": 11.0, "y": 3.0 },
+ { "matrix": [4, 0], "x": 0.0, "y": 4.0 },
+ { "label": "Ctrl", "matrix": [4, 1], "x": 1.0, "y": 4.0 },
+ { "label": "Alt", "matrix": [4, 2], "x": 2.0, "y": 4.0 },
+ { "label": "Super", "matrix": [4, 3], "x": 3.0, "y": 4.0 },
+ { "label": "Lower", "matrix": [4, 4], "x": 4.0, "y": 4.0 },
+ { "matrix": [4, 5], "x": 5.0, "y": 4.0 },
+ { "matrix": [4, 6], "x": 6.0, "y": 4.0 },
+ { "label": "Raise", "matrix": [4, 7], "x": 7.0, "y": 4.0 },
+ { "label": "&larr;", "matrix": [4, 8], "x": 8.0, "y": 4.0 },
+ { "label": "&darr;", "matrix": [4, 9], "x": 9.0, "y": 4.0 },
+ { "label": "&uarr;", "matrix": [4, 10], "x": 10.0, "y": 4.0 },
+ { "label": "&rarr;", "matrix": [4, 11], "x": 11.0, "y": 4.0 }
+ ]
+ }
+ }
+}
diff --git a/keyboards/cannonkeys/ortho60v2/keymaps/default/keymap.c b/keyboards/cannonkeys/ortho60v2/keymaps/default/keymap.c
new file mode 100644
index 0000000000..b6bd8b24ba
--- /dev/null
+++ b/keyboards/cannonkeys/ortho60v2/keymaps/default/keymap.c
@@ -0,0 +1,99 @@
+/*
+Copyright 2012,2013 Jun Wako <wakojun@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/>.
+*/
+#include QMK_KEYBOARD_H
+
+
+// Each layer gets a name for readability, which is then used in the keymap matrix below.
+// The underscores don't mean anything - you can have a layer called STUFF or any other name.
+// Layer names don't all need to be of the same length, obviously, and you can also skip them
+// entirely and just use numbers.
+enum custom_layers {
+ _BASE,
+ _RAISE,
+ _LOWER,
+};
+
+enum custom_keycodes {
+ QWERTY = SAFE_RANGE,
+ LOWER,
+ RAISE
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+/* Qwerty
+ * ,-----------------------------------------------------------------------------------.
+ * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Tab | Q | W | E | R | T | Y | U | I | O | P | Del |
+ * |------+------+------+------+------+-------------+------+------+------+------+------|
+ * | Esc | A | S | D | F | G | H | J | K | L | ; | " |
+ * |------+------+------+------+------+------|------+------+------+------+------+------|
+ * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
+ * `-----------------------------------------------------------------------------------'
+ */
+[_BASE] = LAYOUT_ortho_5x12(
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL,
+ KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
+ BL_TOGG, KC_LCTL, KC_LALT, KC_LGUI, MO(_LOWER), KC_SPC, KC_SPC, MO(_RAISE), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
+),
+/* Lower
+ * ,-----------------------------------------------------------------------------------.
+ * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
+ * |------+------+------+------+------+-------------+------+------+------+------+------|
+ * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del |
+ * |------+------+------+------+------+-------------+------+------+------+------+------|
+ * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
+ * |------+------+------+------+------+------|------+------+------+------+------+------|
+ * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | Next | Vol- | Vol+ | Play |
+ * `-----------------------------------------------------------------------------------'
+ */
+[_LOWER] = LAYOUT_ortho_5x12(
+ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
+ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
+ KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
+ _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),KC_HOME, KC_END, _______,
+ QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
+),
+
+/* Raise
+ * ,-----------------------------------------------------------------------------------.
+ * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del |
+ * |------+------+------+------+------+-------------+------+------+------+------+------|
+ * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
+ * |------+------+------+------+------+------|------+------+------+------+------+------|
+ * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | Next | Vol- | Vol+ | Play |
+ * `-----------------------------------------------------------------------------------'
+ */
+[_RAISE] = LAYOUT_ortho_5x12(
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
+ KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
+ _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
+ RGB_TOG, RGB_MOD, BL_UP, BL_DOWN, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
+)
+};
diff --git a/keyboards/cannonkeys/ortho60v2/keymaps/via/keymap.c b/keyboards/cannonkeys/ortho60v2/keymaps/via/keymap.c
new file mode 100644
index 0000000000..04accef9a1
--- /dev/null
+++ b/keyboards/cannonkeys/ortho60v2/keymaps/via/keymap.c
@@ -0,0 +1,53 @@
+/*
+Copyright 2012,2013 Jun Wako <wakojun@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/>.
+*/
+#include QMK_KEYBOARD_H
+
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+[0] = LAYOUT_ortho_5x12(
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL,
+ KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
+ BL_TOGG, KC_LCTL, KC_LALT, KC_LGUI, MO(1), KC_SPC, KC_SPC, MO(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
+),
+
+[1] = LAYOUT_ortho_5x12(
+ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
+ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
+ KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
+ _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),KC_HOME, KC_END, _______,
+ QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
+),
+
+[2] = LAYOUT_ortho_5x12(
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
+ KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
+ _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
+ RGB_TOG, RGB_MOD, BL_UP, BL_DOWN, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
+),
+
+[3] = LAYOUT_ortho_5x12(
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+)
+};
diff --git a/keyboards/cannonkeys/ortho60v2/keymaps/via/rules.mk b/keyboards/cannonkeys/ortho60v2/keymaps/via/rules.mk
new file mode 100644
index 0000000000..1e5b99807c
--- /dev/null
+++ b/keyboards/cannonkeys/ortho60v2/keymaps/via/rules.mk
@@ -0,0 +1 @@
+VIA_ENABLE = yes
diff --git a/keyboards/cannonkeys/ortho60v2/mcuconf.h b/keyboards/cannonkeys/ortho60v2/mcuconf.h
new file mode 100644
index 0000000000..75a6bb41ec
--- /dev/null
+++ b/keyboards/cannonkeys/ortho60v2/mcuconf.h
@@ -0,0 +1,9 @@
+// Copyright 2022 Andrew Kannan
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#pragma once
+
+#include_next <mcuconf.h>
+
+#undef RP_PWM_USE_PWM6
+#define RP_PWM_USE_PWM6 TRUE
diff --git a/keyboards/cannonkeys/ortho60v2/ortho60v2.c b/keyboards/cannonkeys/ortho60v2/ortho60v2.c
new file mode 100644
index 0000000000..0fc9239ee8
--- /dev/null
+++ b/keyboards/cannonkeys/ortho60v2/ortho60v2.c
@@ -0,0 +1,31 @@
+/*
+Copyright 2022 CannonKeys
+
+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 "ortho60v2.h"
+
+#ifdef ENCODER_ENABLE
+bool encoder_update_kb(uint8_t index, bool clockwise) {
+ if (!encoder_update_user(index, clockwise)) {
+ return false;
+ }
+ if (clockwise) {
+ tap_code_delay(KC_VOLU, 10);
+ } else {
+ tap_code_delay(KC_VOLD, 10);
+ }
+ return true;
+}
+#endif
diff --git a/keyboards/cannonkeys/ortho60v2/ortho60v2.h b/keyboards/cannonkeys/ortho60v2/ortho60v2.h
new file mode 100644
index 0000000000..a9ca3d7e47
--- /dev/null
+++ b/keyboards/cannonkeys/ortho60v2/ortho60v2.h
@@ -0,0 +1,19 @@
+/*
+Copyright 2022 CannonKeys
+
+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
+
+#include "quantum.h"
diff --git a/keyboards/cannonkeys/ortho60v2/readme.md b/keyboards/cannonkeys/ortho60v2/readme.md
new file mode 100644
index 0000000000..e02e0f0914
--- /dev/null
+++ b/keyboards/cannonkeys/ortho60v2/readme.md
@@ -0,0 +1,22 @@
+# Ortho60 v2
+
+A 5x12 Ortholinear keyboard powered by an onboard RP2040
+
+* Keyboard Maintainer: [Andrew Kannan](https://github.com/awkannan1)
+* Hardware Supported: RP2040
+* Hardware Availability: [CannonKeys](https://cannonkeys.com)
+
+Make example for this keyboard (after setting up your build environment):
+
+ make cannonkeys/ortho60v2:default
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
+
+
+## Bootloader
+
+Enter the bootloader in 3 ways:
+
+* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
+* **Physical reset button**: Swap the boot switch on the back of the PCB to "1" and hit the reset button. Or double tap the reset button quickly while the boot switch is set to "0".
+* **Keycode in layout**: Press the key mapped to `RESET` if it is available
diff --git a/keyboards/cannonkeys/ortho60v2/rules.mk b/keyboards/cannonkeys/ortho60v2/rules.mk
new file mode 100644
index 0000000000..59f8593f18
--- /dev/null
+++ b/keyboards/cannonkeys/ortho60v2/rules.mk
@@ -0,0 +1,2 @@
+EEPROM_DRIVER = wear_leveling
+WEAR_LEVELING_DRIVER = rp2040_flash
diff --git a/keyboards/cannonkeys/ortho75/config.h b/keyboards/cannonkeys/ortho75/config.h
index 196c1d2f0d..5246778d13 100644
--- a/keyboards/cannonkeys/ortho75/config.h
+++ b/keyboards/cannonkeys/ortho75/config.h
@@ -17,29 +17,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 15
-
#define MATRIX_COL_PINS { B11, B10, B1, B0, A7, A6, A5, B14, A15, A0, C15, C14, B7, B6, B5 }
#define MATRIX_ROW_PINS { B12, C13, A2, A1, A3 }
#define DIODE_DIRECTION COL2ROW
-#define BACKLIGHT_PIN A8
#define BACKLIGHT_PWM_DRIVER PWMD1
#define BACKLIGHT_PWM_CHANNEL 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-#define ENCODERS_PAD_A { B9 }
-#define ENCODERS_PAD_B { B8 }
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/ortho75/info.json b/keyboards/cannonkeys/ortho75/info.json
index 3cf6f3e74e..751eeb5297 100644
--- a/keyboards/cannonkeys/ortho75/info.json
+++ b/keyboards/cannonkeys/ortho75/info.json
@@ -8,6 +8,19 @@
"pid": "0x6464",
"device_version": "0.0.1"
},
+ "encoder": {
+ "rotary": [
+ {"pin_a": "B9", "pin_b": "B8"}
+ ]
+ },
+ "backlight": {
+ "pin": "A8",
+ "levels": 6,
+ "breathing": true
+ },
+ "processor": "STM32F103",
+ "bootloader": "stm32duino",
+ "community_layouts": ["ortho_5x15"],
"layouts": {
"LAYOUT_ortho_5x15": {
"layout": [
diff --git a/keyboards/cannonkeys/ortho75/rules.mk b/keyboards/cannonkeys/ortho75/rules.mk
index 60b1a69199..ee4421ed3a 100644
--- a/keyboards/cannonkeys/ortho75/rules.mk
+++ b/keyboards/cannonkeys/ortho75/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F103
-
-# Bootloader selection
-BOOTLOADER = stm32duino
-
# Build Options
# change yes to no to disable
#
@@ -19,8 +13,5 @@ SLEEP_LED_ENABLE = yes
WS2812_DRIVER = spi
ENCODER_ENABLE = yes
-LAYOUTS = ortho_5x15
-
-
# Enter lower-power sleep mode when on the ChibiOS idle thread
OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE
diff --git a/keyboards/cannonkeys/practice60/config.h b/keyboards/cannonkeys/practice60/config.h
index c73eb7813c..287b1484e9 100644
--- a/keyboards/cannonkeys/practice60/config.h
+++ b/keyboards/cannonkeys/practice60/config.h
@@ -17,26 +17,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 14
-
#define MATRIX_COL_PINS { B11, B10, B1, B0, A7, A6, A5, A4, A3, A2, A1, A0, C15, C14 }
#define MATRIX_ROW_PINS { B3, B4, B5, B6, B7 }
#define DIODE_DIRECTION COL2ROW
-#define BACKLIGHT_PIN A8
#define BACKLIGHT_PWM_DRIVER PWMD1
#define BACKLIGHT_PWM_CHANNEL 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/practice60/info.json b/keyboards/cannonkeys/practice60/info.json
index e84e2bb635..a25485038b 100644
--- a/keyboards/cannonkeys/practice60/info.json
+++ b/keyboards/cannonkeys/practice60/info.json
@@ -8,6 +8,14 @@
"pid": "0x6060",
"device_version": "0.0.1"
},
+ "backlight": {
+ "pin": "A8",
+ "levels": 6,
+ "breathing": true
+ },
+ "processor": "STM32F103",
+ "bootloader": "stm32duino",
+ "community_layouts": ["60_ansi"],
"layouts": {
"LAYOUT_60_ansi": {
"layout": [
diff --git a/keyboards/cannonkeys/practice60/rules.mk b/keyboards/cannonkeys/practice60/rules.mk
index 423c4d15b1..07f7d949d9 100644
--- a/keyboards/cannonkeys/practice60/rules.mk
+++ b/keyboards/cannonkeys/practice60/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F103
-
-# Bootloader selection
-BOOTLOADER = stm32duino
-
# Build Options
# change yes to no to disable
#
@@ -18,8 +12,6 @@ RGBLIGHT_ENABLE = yes
SLEEP_LED_ENABLE = yes
WS2812_DRIVER = spi
-LAYOUTS = 60_ansi
-
DEFAULT_FOLDER = cannonkeys/practice60
diff --git a/keyboards/cannonkeys/practice65/config.h b/keyboards/cannonkeys/practice65/config.h
index 30baf12283..ac3f193da9 100644
--- a/keyboards/cannonkeys/practice65/config.h
+++ b/keyboards/cannonkeys/practice65/config.h
@@ -17,26 +17,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 16
-
#define MATRIX_COL_PINS { B8, B0, A0, B5, B10, B9, A6, B12, A7, A5, A4, A3, A2, A1, B13, B14 }
#define MATRIX_ROW_PINS { B4, B11, B1, B7, B6 }
#define DIODE_DIRECTION COL2ROW
-#define BACKLIGHT_PIN A8
#define BACKLIGHT_PWM_DRIVER PWMD1
#define BACKLIGHT_PWM_CHANNEL 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/practice65/info.json b/keyboards/cannonkeys/practice65/info.json
index 95fdd75190..17e548a825 100644
--- a/keyboards/cannonkeys/practice65/info.json
+++ b/keyboards/cannonkeys/practice65/info.json
@@ -8,6 +8,13 @@
"pid": "0x6565",
"device_version": "0.0.1"
},
+ "backlight": {
+ "pin": "A8",
+ "levels": 6,
+ "breathing": true
+ },
+ "processor": "STM32F103",
+ "bootloader": "stm32duino",
"layouts": {
"LAYOUT_default": {
"layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"x":15, "y":1}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"x":15, "y":2}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"x":15, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"x":10, "y":4}, {"x":11, "y":4}, {"x":12, "y":4}, {"x":13, "y":4}, {"x":14, "y":4}, {"x":15, "y":4}]
diff --git a/keyboards/cannonkeys/practice65/rules.mk b/keyboards/cannonkeys/practice65/rules.mk
index a644ef6371..f7dee7ff20 100644
--- a/keyboards/cannonkeys/practice65/rules.mk
+++ b/keyboards/cannonkeys/practice65/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F103
-
-# Bootloader selection
-BOOTLOADER = stm32duino
-
# Build Options
# change yes to no to disable
#
diff --git a/keyboards/cannonkeys/rekt1800/config.h b/keyboards/cannonkeys/rekt1800/config.h
index 7e69838272..37d156feb9 100644
--- a/keyboards/cannonkeys/rekt1800/config.h
+++ b/keyboards/cannonkeys/rekt1800/config.h
@@ -17,27 +17,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 6
-#define MATRIX_COLS 19
-
#define MATRIX_COL_PINS { B12, A14, A15, B3, B4, B5, B6, B7, B8, B9, A7, B0, B1, B2, B10, A3, A4, A5, C15 }
#define MATRIX_ROW_PINS { C13, C14, A0, A1, A2, B11 }
#define DIODE_DIRECTION COL2ROW
-#define BACKLIGHT_PIN A6
#define BACKLIGHT_PWM_DRIVER PWMD3
#define BACKLIGHT_PWM_CHANNEL 1
#define BACKLIGHT_PAL_MODE 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/rekt1800/info.json b/keyboards/cannonkeys/rekt1800/info.json
index 7e9202a81d..e68f214427 100644
--- a/keyboards/cannonkeys/rekt1800/info.json
+++ b/keyboards/cannonkeys/rekt1800/info.json
@@ -8,6 +8,13 @@
"pid": "0x2377",
"device_version": "0.0.1"
},
+ "backlight": {
+ "pin": "A6",
+ "levels": 6,
+ "breathing": true
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_all": {
"layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1.25, "y":0}, {"label":"F2", "x":2.25, "y":0}, {"label":"F3", "x":3.25, "y":0}, {"label":"F4", "x":4.25, "y":0}, {"label":"F5", "x":5.5, "y":0}, {"label":"F6", "x":6.5, "y":0}, {"label":"F7", "x":7.5, "y":0}, {"label":"F8", "x":8.5, "y":0}, {"label":"F9", "x":9.75, "y":0}, {"label":"F10", "x":10.75, "y":0}, {"label":"F11", "x":11.75, "y":0}, {"label":"F12", "x":12.75, "y":0}, {"x":14, "y":0}, {"label":"PrtSc", "x":15.5, "y":0}, {"label":"Scroll Lock", "x":16.5, "y":0}, {"label":"Pause", "x":17.5, "y":0}, {"x":18.5, "y":0}, {"label":"~", "x":0, "y":1.25}, {"label":"!", "x":1, "y":1.25}, {"label":"@", "x":2, "y":1.25}, {"label":"#", "x":3, "y":1.25}, {"label":"$", "x":4, "y":1.25}, {"label":"%", "x":5, "y":1.25}, {"label":"^", "x":6, "y":1.25}, {"label":"&", "x":7, "y":1.25}, {"label":"*", "x":8, "y":1.25}, {"label":"(", "x":9, "y":1.25}, {"label":")", "x":10, "y":1.25}, {"label":"_", "x":11, "y":1.25}, {"label":"+", "x":12, "y":1.25}, {"x":13, "y":1.25}, {"x":14, "y":1.25}, {"label":"Insert", "x":15.5, "y":1.25}, {"label":"Home", "x":16.5, "y":1.25}, {"label":"PgUp", "x":17.5, "y":1.25}, {"x":18.5, "y":1.25}, {"label":"Tab", "x":0, "y":2.25, "w":1.5}, {"label":"Q", "x":1.5, "y":2.25}, {"label":"W", "x":2.5, "y":2.25}, {"label":"E", "x":3.5, "y":2.25}, {"label":"R", "x":4.5, "y":2.25}, {"label":"T", "x":5.5, "y":2.25}, {"label":"Y", "x":6.5, "y":2.25}, {"label":"U", "x":7.5, "y":2.25}, {"label":"I", "x":8.5, "y":2.25}, {"label":"O", "x":9.5, "y":2.25}, {"label":"P", "x":10.5, "y":2.25}, {"label":"{", "x":11.5, "y":2.25}, {"label":"}", "x":12.5, "y":2.25}, {"label":"|", "x":13.5, "y":2.25, "w":1.5}, {"label":"Delete", "x":15.5, "y":2.25}, {"label":"End", "x":16.5, "y":2.25}, {"label":"PgDn", "x":17.5, "y":2.25}, {"x":18.5, "y":2.25}, {"label":"Caps Lock", "x":0, "y":3.25, "w":1.75}, {"label":"A", "x":1.75, "y":3.25}, {"label":"S", "x":2.75, "y":3.25}, {"label":"D", "x":3.75, "y":3.25}, {"label":"F", "x":4.75, "y":3.25}, {"label":"G", "x":5.75, "y":3.25}, {"label":"H", "x":6.75, "y":3.25}, {"label":"J", "x":7.75, "y":3.25}, {"label":"K", "x":8.75, "y":3.25}, {"label":"L", "x":9.75, "y":3.25}, {"label":":", "x":10.75, "y":3.25}, {"label":"\"", "x":11.75, "y":3.25}, {"x":12.75, "y":3.25}, {"label":"Enter", "x":13.75, "y":3.25, "w":1.25}, {"x":15.5, "y":3.25}, {"x":16.5, "y":3.25}, {"x":17.5, "y":3.25}, {"x":18.5, "y":3.25}, {"label":"Shift", "x":0, "y":4.25, "w":1.25}, {"x":1.25, "y":4.25}, {"label":"Z", "x":2.25, "y":4.25}, {"label":"X", "x":3.25, "y":4.25}, {"label":"C", "x":4.25, "y":4.25}, {"label":"V", "x":5.25, "y":4.25}, {"label":"B", "x":6.25, "y":4.25}, {"label":"N", "x":7.25, "y":4.25}, {"label":"M", "x":8.25, "y":4.25}, {"label":"<", "x":9.25, "y":4.25}, {"label":">", "x":10.25, "y":4.25}, {"label":"?", "x":11.25, "y":4.25}, {"label":"Shift", "x":12.25, "y":4.25, "w":1.75}, {"label":"\u2191", "x":14.25, "y":4.5}, {"x":15.5, "y":4.25}, {"x":16.5, "y":4.25}, {"x":17.5, "y":4.25}, {"x":18.5, "y":4.25, "h":2}, {"label":"Ctrl", "x":0, "y":5.25, "w":1.25}, {"label":"Alt", "x":1.25, "y":5.25, "w":1.25}, {"label":"Alt", "x":2.5, "y":5.25, "w":1.25}, {"x":3.75, "y":5.25, "w":6.25}, {"label":"Alt", "x":10, "y":5.25, "w":1.5}, {"label":"Ctrl", "x":11.5, "y":5.25, "w":1.5}, {"label":"\u2190", "x":13.25, "y":5.5}, {"label":"\u2193", "x":14.25, "y":5.5}, {"label":"\u2192", "x":15.25, "y":5.5}, {"x":16.5, "y":5.25}, {"x":17.5, "y":5.25}]
diff --git a/keyboards/cannonkeys/rekt1800/rules.mk b/keyboards/cannonkeys/rekt1800/rules.mk
index b983f36c85..32e7be7370 100644
--- a/keyboards/cannonkeys/rekt1800/rules.mk
+++ b/keyboards/cannonkeys/rekt1800/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
diff --git a/keyboards/cannonkeys/sagittarius/config.h b/keyboards/cannonkeys/sagittarius/config.h
index b9a10edf49..5edf9fdeb9 100644
--- a/keyboards/cannonkeys/sagittarius/config.h
+++ b/keyboards/cannonkeys/sagittarius/config.h
@@ -17,31 +17,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 10
-#define MATRIX_COLS 16
-
#define MATRIX_COL_PINS { A7, A5, A4, A3, A2, A1, A0, B5, A13, B2, B1, B0, B9, B8, B7, B6 }
#define MATRIX_ROW_PINS { B10, B14, A8, A9, A10, C13, C14, C15, F0, F1 }
#define DIODE_DIRECTION COL2ROW
-#define LED_NUM_LOCK_PIN B4
-#define LED_CAPS_LOCK_PIN B3
-#define LED_SCROLL_LOCK_PIN A15
-
-#define BACKLIGHT_PIN A6
#define BACKLIGHT_PWM_DRIVER PWMD3
#define BACKLIGHT_PWM_CHANNEL 1
#define BACKLIGHT_PAL_MODE 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/sagittarius/info.json b/keyboards/cannonkeys/sagittarius/info.json
index 64db3c34e0..2b25ee6b98 100644
--- a/keyboards/cannonkeys/sagittarius/info.json
+++ b/keyboards/cannonkeys/sagittarius/info.json
@@ -8,6 +8,18 @@
"pid": "0x0001",
"device_version": "0.0.1"
},
+ "backlight": {
+ "pin": "A6",
+ "levels": 6,
+ "breathing": true
+ },
+ "indicators": {
+ "caps_lock": "B3",
+ "num_lock": "B4",
+ "scroll_lock": "A15"
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_default": {
"layout": [{"x":0, "y":0}, {"x":1.5, "y":0}, {"x":2.5, "y":0}, {"x":3.5, "y":0}, {"x":4.5, "y":0}, {"x":5.5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":10.75, "y":0}, {"x":11.75, "y":0}, {"x":12.75, "y":0}, {"x":13.75, "y":0}, {"x":14.75, "y":0}, {"x":15.75, "y":0}, {"x":16.75, "y":0}, {"x":17.75, "y":0}, {"x":0, "y":1}, {"x":1.5, "y":1, "w":1.5}, {"x":3, "y":1}, {"x":4, "y":1}, {"x":5, "y":1}, {"x":6, "y":1}, {"x":7, "y":1}, {"x":10.75, "y":1}, {"x":11.75, "y":1}, {"x":12.75, "y":1}, {"x":13.75, "y":1}, {"x":14.75, "y":1}, {"x":15.75, "y":1}, {"x":16.75, "y":1}, {"x":17.75, "y":1, "w":1.5}, {"x":0, "y":2}, {"x":1.5, "y":2, "w":1.75}, {"x":3.25, "y":2}, {"x":4.25, "y":2}, {"x":5.25, "y":2}, {"x":6.25, "y":2}, {"x":7.25, "y":2}, {"x":11, "y":2}, {"x":12, "y":2}, {"x":13, "y":2}, {"x":14, "y":2}, {"x":15, "y":2}, {"x":16, "y":2}, {"x":17, "y":2}, {"x":18, "y":2, "w":1.25}, {"x":19.25, "y":2}, {"x":0, "y":3}, {"x":1.5, "y":3, "w":1.25}, {"x":2.75, "y":3}, {"x":3.75, "y":3}, {"x":4.75, "y":3}, {"x":5.75, "y":3}, {"x":6.75, "y":3}, {"x":7.75, "y":3}, {"x":11, "y":3}, {"x":12, "y":3}, {"x":13, "y":3}, {"x":14, "y":3}, {"x":15, "y":3}, {"x":16, "y":3, "w":1.25}, {"x":17.25, "y":3}, {"x":18.25, "y":3}, {"x":1.5, "y":4, "w":1.25}, {"x":2.75, "y":4, "w":1.25}, {"x":5.5, "y":4}, {"x":6.5, "y":4, "w":2.25}, {"x":11, "y":4, "w":1.75}, {"x":12.75, "y":4}, {"x":16.25, "y":4}, {"x":17.25, "y":4}, {"x":18.25, "y":4}]
diff --git a/keyboards/cannonkeys/sagittarius/rules.mk b/keyboards/cannonkeys/sagittarius/rules.mk
index 0d99007c16..2eaae2dc9b 100644
--- a/keyboards/cannonkeys/sagittarius/rules.mk
+++ b/keyboards/cannonkeys/sagittarius/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
diff --git a/keyboards/cannonkeys/satisfaction75/config.h b/keyboards/cannonkeys/satisfaction75/config.h
index a650a362c0..ac9548dd27 100644
--- a/keyboards/cannonkeys/satisfaction75/config.h
+++ b/keyboards/cannonkeys/satisfaction75/config.h
@@ -23,27 +23,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* LSE clock */
#define STM32_LSECLK 32768
-/* key matrix size */
-#define MATRIX_ROWS 6
-#define MATRIX_COLS 16
-
#define MATRIX_COL_PINS { B1, B2, B10, B11, B12, B13, B14, A8, A9, A10, B0, A7, A5, B5, A15, A1 }
#define MATRIX_ROW_PINS { B3, B4, A0, A2, A4, A3 }
#define DIODE_DIRECTION COL2ROW
-#define ENCODERS_PAD_A { B9 }
-#define ENCODERS_PAD_B { B8 }
-
-#define ENCODER_RESOLUTION 2
-
-//LEDS A6, RGB B15
-#define BACKLIGHT_LEVELS 24
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
// I2C config
#define I2C_DRIVER I2CD1
#define I2C1_SCL_PIN B6
@@ -56,9 +39,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define I2C1_TIMINGR_SCLH 0x03U
#define I2C1_TIMINGR_SCLL 0x09U
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
diff --git a/keyboards/cannonkeys/satisfaction75/info.json b/keyboards/cannonkeys/satisfaction75/info.json
index 692715124d..9bf8459b1a 100644
--- a/keyboards/cannonkeys/satisfaction75/info.json
+++ b/keyboards/cannonkeys/satisfaction75/info.json
@@ -7,5 +7,16 @@
"vid": "0xCA04",
"pid": "0x57F5",
"device_version": "0.0.1"
- }
+ },
+ "encoder": {
+ "rotary": [
+ {"pin_a": "B9", "pin_b": "B8", "resolution": 2}
+ ]
+ },
+ "backlight": {
+ "levels": 24,
+ "breathing": true
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu"
}
diff --git a/keyboards/cannonkeys/satisfaction75/led.c b/keyboards/cannonkeys/satisfaction75/led.c
index 39ff4d784d..68bfc99d2e 100644
--- a/keyboards/cannonkeys/satisfaction75/led.c
+++ b/keyboards/cannonkeys/satisfaction75/led.c
@@ -19,6 +19,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "led_custom.h"
#include "satisfaction75.h"
+#define BREATHING_PERIOD 6
+
static void breathing_callback(PWMDriver *pwmp);
static PWMConfig pwmCFG = {
diff --git a/keyboards/cannonkeys/satisfaction75/rules.mk b/keyboards/cannonkeys/satisfaction75/rules.mk
index 4cf5e4b157..9f6480ee0e 100644
--- a/keyboards/cannonkeys/satisfaction75/rules.mk
+++ b/keyboards/cannonkeys/satisfaction75/rules.mk
@@ -1,10 +1,3 @@
-# MCU name
-MCU = STM32F072
-BOARD = GENERIC_STM32_F072XB
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
diff --git a/keyboards/cannonkeys/satisfaction75/satisfaction75.c b/keyboards/cannonkeys/satisfaction75/satisfaction75.c
index 13b44b85db..ce870c49af 100644
--- a/keyboards/cannonkeys/satisfaction75/satisfaction75.c
+++ b/keyboards/cannonkeys/satisfaction75/satisfaction75.c
@@ -361,11 +361,11 @@ void custom_config_reset(void){
eeprom_update_byte((uint8_t*)EEPROM_ENABLED_ENCODER_MODES, 0x1F);
}
-void backlight_config_save(){
+void backlight_config_save(void){
eeprom_update_byte((uint8_t*)EEPROM_CUSTOM_BACKLIGHT, kb_backlight_config.raw);
}
-void custom_config_load(){
+void custom_config_load(void){
kb_backlight_config.raw = eeprom_read_byte((uint8_t*)EEPROM_CUSTOM_BACKLIGHT);
#ifdef DYNAMIC_KEYMAP_ENABLE
oled_mode = eeprom_read_byte((uint8_t*)EEPROM_DEFAULT_OLED);
diff --git a/keyboards/cannonkeys/satisfaction75/satisfaction75.h b/keyboards/cannonkeys/satisfaction75/satisfaction75.h
index ec852eef6c..9e28bb32a1 100644
--- a/keyboards/cannonkeys/satisfaction75/satisfaction75.h
+++ b/keyboards/cannonkeys/satisfaction75/satisfaction75.h
@@ -25,7 +25,7 @@ typedef union {
// Start these at the USER code range in VIA
enum my_keycodes {
- ENC_PRESS = USER00,
+ ENC_PRESS = QK_KB_0,
CLOCK_SET,
OLED_TOGG
};
diff --git a/keyboards/cannonkeys/satisfaction75/satisfaction_encoder.c b/keyboards/cannonkeys/satisfaction75/satisfaction_encoder.c
index c40815a8d8..c8bb999df4 100644
--- a/keyboards/cannonkeys/satisfaction75/satisfaction_encoder.c
+++ b/keyboards/cannonkeys/satisfaction75/satisfaction_encoder.c
@@ -1,7 +1,7 @@
#include "satisfaction75.h"
#include "eeprom.h"
-void pre_encoder_mode_change(){
+void pre_encoder_mode_change(void){
if(encoder_mode == ENC_MODE_CLOCK_SET){
RTCDateTime timespec;
timespec.year = year_config;
@@ -16,7 +16,7 @@ void pre_encoder_mode_change(){
}
}
-void post_encoder_mode_change(){
+void post_encoder_mode_change(void){
if(encoder_mode == ENC_MODE_CLOCK_SET){
hour_config = (last_minute / 60);
minute_config = last_minute % 60;
@@ -86,7 +86,7 @@ void update_time_config(int8_t increment){
}
}
-uint16_t handle_encoder_clockwise(){
+uint16_t handle_encoder_clockwise(void){
uint16_t mapped_code = 0;
switch(encoder_mode){
default:
@@ -130,7 +130,7 @@ uint16_t handle_encoder_clockwise(){
return mapped_code;
}
-uint16_t handle_encoder_ccw(){
+uint16_t handle_encoder_ccw(void){
uint16_t mapped_code = 0;
switch(encoder_mode){
default:
@@ -175,7 +175,7 @@ uint16_t handle_encoder_ccw(){
return mapped_code;
}
-uint16_t handle_encoder_press(){
+uint16_t handle_encoder_press(void){
uint16_t mapped_code = 0;
switch(encoder_mode){
case ENC_MODE_VOLUME:
diff --git a/keyboards/cannonkeys/satisfaction75/satisfaction_oled.c b/keyboards/cannonkeys/satisfaction75/satisfaction_oled.c
index 1e8465387c..0fd69ca59b 100644
--- a/keyboards/cannonkeys/satisfaction75/satisfaction_oled.c
+++ b/keyboards/cannonkeys/satisfaction75/satisfaction_oled.c
@@ -168,7 +168,7 @@ static char* get_date(void) {
return date_str;
}
-void draw_default() {
+void draw_default(void) {
oled_write_P(PSTR("LAYER "), false);
oled_write_char(get_highest_layer(layer_state) + 0x30, true);
@@ -220,7 +220,7 @@ void draw_default() {
draw_line_v(71, 0, 8);
}
-void draw_clock() {
+void draw_clock(void) {
oled_set_cursor(0, 0);
oled_write(get_date(), false);
oled_set_cursor(0, 2);
diff --git a/keyboards/cannonkeys/savage65/config.h b/keyboards/cannonkeys/savage65/config.h
index bdbe0535b5..79414a9a78 100644
--- a/keyboards/cannonkeys/savage65/config.h
+++ b/keyboards/cannonkeys/savage65/config.h
@@ -17,27 +17,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 16
-
#define MATRIX_COL_PINS { A5, B10, A3, A2, B0, A9, C13, B9, B8, B7, B6, B5, B4, B3, A15, A14 }
#define MATRIX_ROW_PINS { B12, B11, B14, A8, A1 }
#define DIODE_DIRECTION COL2ROW
-#define BACKLIGHT_PIN A6
#define BACKLIGHT_PWM_DRIVER PWMD3
#define BACKLIGHT_PWM_CHANNEL 1
#define BACKLIGHT_PAL_MODE 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/savage65/info.json b/keyboards/cannonkeys/savage65/info.json
index 1fb0e0c58e..1aa34de891 100644
--- a/keyboards/cannonkeys/savage65/info.json
+++ b/keyboards/cannonkeys/savage65/info.json
@@ -8,6 +8,14 @@
"pid": "0x5A65",
"device_version": "0.0.1"
},
+ "backlight": {
+ "pin": "A6",
+ "levels": 6,
+ "breathing": true
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
+ "community_layouts": ["65_ansi_blocker", "65_ansi_blocker_split_bs", "65_ansi_blocker_tsangan", "65_iso_blocker"],
"layouts": {
"LAYOUT_default": {
"layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"x":15, "y":1}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"x":12.75, "y":2}, {"label":"Enter", "x":13.75, "y":2, "w":1.25}, {"x":15, "y":2}, {"x":0, "y":3, "w":1.25}, {"x":1.25, "y":3}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"x":15, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.25}, {"label":"Ctrl", "x":11.25, "y":4, "w":1.25}, {"x":13, "y":4}, {"x":14, "y":4}, {"x":15, "y":4}]
diff --git a/keyboards/cannonkeys/savage65/rules.mk b/keyboards/cannonkeys/savage65/rules.mk
index 4e43a2f56f..8b82556130 100644
--- a/keyboards/cannonkeys/savage65/rules.mk
+++ b/keyboards/cannonkeys/savage65/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
@@ -22,5 +16,3 @@ WS2812_DRIVER = spi
# Enter lower-power sleep mode when on the ChibiOS idle thread
OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE
-
-LAYOUTS = 65_ansi_blocker 65_ansi_blocker_split_bs 65_ansi_blocker_tsangan 65_iso_blocker
diff --git a/keyboards/cannonkeys/serenity/info.json b/keyboards/cannonkeys/serenity/info.json
index 281defab6e..9672161bfc 100644
--- a/keyboards/cannonkeys/serenity/info.json
+++ b/keyboards/cannonkeys/serenity/info.json
@@ -21,14 +21,12 @@
"backlight": true,
"rgblight": true
},
- "debounce": 5,
"matrix_pins": {
"cols": ["B1", "B2", "B10", "B11", "B12", "B14", "A8", "A9", "A10", "A3", "B0", "A2", "A1", "A7", "A0", "B4", "B6", "B7"],
"rows": ["A15", "B3", "B5", "A4", "A5", "F1"]
},
"backlight": {
"breathing": true,
- "breathing_period": 5,
"levels": 15,
"pin": "A6"
},
diff --git a/keyboards/cannonkeys/serenity/keymaps/default/keymap.c b/keyboards/cannonkeys/serenity/keymaps/default/keymap.c
index f142a629dc..b10cd49483 100644
--- a/keyboards/cannonkeys/serenity/keymaps/default/keymap.c
+++ b/keyboards/cannonkeys/serenity/keymaps/default/keymap.c
@@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
[_FN1] = LAYOUT_all(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, KC_TRNS, BL_TOGG, BL_DEC, BL_INC,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, KC_TRNS, BL_TOGG, BL_DOWN, BL_UP,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
diff --git a/keyboards/cannonkeys/serenity/keymaps/via/keymap.c b/keyboards/cannonkeys/serenity/keymaps/via/keymap.c
index bd79ecc05f..519fc82dda 100644
--- a/keyboards/cannonkeys/serenity/keymaps/via/keymap.c
+++ b/keyboards/cannonkeys/serenity/keymaps/via/keymap.c
@@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
[_FN1] = LAYOUT_all(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, KC_TRNS, BL_TOGG, BL_DEC, BL_INC,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, KC_TRNS, BL_TOGG, BL_DOWN, BL_UP,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
diff --git a/keyboards/cannonkeys/tmov2/config.h b/keyboards/cannonkeys/tmov2/config.h
index 715c35d2d9..8722ba8d54 100644
--- a/keyboards/cannonkeys/tmov2/config.h
+++ b/keyboards/cannonkeys/tmov2/config.h
@@ -17,27 +17,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 4
-#define MATRIX_COLS 16
-
#define MATRIX_COL_PINS { B14, A14, B1, C13, C14, C15, F0, F1, B9, B8, B7, B6, B5, B4, B3, A15 }
#define MATRIX_ROW_PINS { A10, A9, A8, B12 }
#define DIODE_DIRECTION COL2ROW
-#define BACKLIGHT_PIN A6
#define BACKLIGHT_PWM_DRIVER PWMD3
#define BACKLIGHT_PWM_CHANNEL 1
#define BACKLIGHT_PAL_MODE 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/tmov2/info.json b/keyboards/cannonkeys/tmov2/info.json
index 4552b612d0..bdb6cd7453 100644
--- a/keyboards/cannonkeys/tmov2/info.json
+++ b/keyboards/cannonkeys/tmov2/info.json
@@ -8,6 +8,13 @@
"pid": "0x70F2",
"device_version": "0.0.1"
},
+ "backlight": {
+ "pin": "A6",
+ "levels": 6,
+ "breathing": true
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_default": {
"layout": [{"x":0, "y":0}, {"label":"Tab", "x":1.25, "y":0, "w":1.5}, {"label":"Q", "x":2.75, "y":0}, {"label":"W", "x":3.75, "y":0}, {"label":"E", "x":4.75, "y":0}, {"label":"R", "x":5.75, "y":0}, {"label":"T", "x":6.75, "y":0}, {"label":"Y", "x":7.75, "y":0}, {"label":"U", "x":8.75, "y":0}, {"label":"I", "x":9.75, "y":0}, {"label":"O", "x":10.75, "y":0}, {"label":"P", "x":11.75, "y":0}, {"label":"{", "x":12.75, "y":0}, {"label":"}", "x":13.75, "y":0}, {"label":"Backspace", "x":14.75, "y":0}, {"x":0, "y":1}, {"label":"Caps Lock", "x":1.25, "y":1, "w":1.75}, {"label":"A", "x":3, "y":1}, {"label":"S", "x":4, "y":1}, {"label":"D", "x":5, "y":1}, {"label":"F", "x":6, "y":1}, {"label":"G", "x":7, "y":1}, {"label":"H", "x":8, "y":1}, {"label":"J", "x":9, "y":1}, {"label":"K", "x":10, "y":1}, {"label":"L", "x":11, "y":1}, {"label":":", "x":12, "y":1}, {"label":"\"", "x":13, "y":1}, {"label":"Enter", "x":14, "y":1, "w":1.75}, {"x":0, "y":2}, {"label":"Shift", "x":1.25, "y":2, "w":1.25}, {"label":"ISO \\", "x":2.5, "y":2}, {"label":"Z", "x":3.5, "y":2}, {"label":"X", "x":4.5, "y":2}, {"label":"C", "x":5.5, "y":2}, {"label":"V", "x":6.5, "y":2}, {"label":"B", "x":7.5, "y":2}, {"label":"N", "x":8.5, "y":2}, {"label":"M", "x":9.5, "y":2}, {"label":"<", "x":10.5, "y":2}, {"label":">", "x":11.5, "y":2}, {"label":"?", "x":12.5, "y":2}, {"label":"Shift", "x":13.5, "y":2, "w":1.25}, {"x":14.75, "y":2}, {"x":0, "y":3}, {"label":"Win", "x":3.25, "y":3}, {"label":"Alt", "x":4.25, "y":3, "w":1.5}, {"x":5.75, "y":3, "w":2.25}, {"x":8, "y":3, "w":2.75}, {"label":"Alt", "x":10.75, "y":3, "w":1.5}, {"label":"Menu", "x":12.25, "y":3}]
diff --git a/keyboards/cannonkeys/tmov2/keymaps/brandonschlack/keymap.c b/keyboards/cannonkeys/tmov2/keymaps/brandonschlack/keymap.c
index 5a72f71959..2a95402863 100644
--- a/keyboards/cannonkeys/tmov2/keymaps/brandonschlack/keymap.c
+++ b/keyboards/cannonkeys/tmov2/keymaps/brandonschlack/keymap.c
@@ -48,10 +48,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* └───┴┴┴┴┴┴┴┴┴┴┴───┴─────┴────────┴──────────┴─────┴───┴┴┴┴┴┴┴┴┴┴┘
*/
[_BASE] = LAYOUT_default(
- KC_ESC, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC, \
- KC_PGUP, HY_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
- KC_PGDN, KC_LSFT, XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, PLY_FN1, \
- KC_END, KC_LOPT, KC_LCMD, SPC_RAI, SPC_RAI, KC_RCMD, KC_RCTL \
+ KC_ESC, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
+ KC_PGUP, HY_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_PGDN, KC_LSFT, XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, PLY_FN1,
+ KC_END, KC_LOPT, KC_LCMD, SPC_RAI, SPC_RAI, KC_RCMD, KC_RCTL
),
/**
* Reeder
@@ -65,11 +65,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* │ N │││││││││││   │     │        │          │     │   │││││││││││
* └───┴┴┴┴┴┴┴┴┴┴┴───┴─────┴────────┴──────────┴─────┴───┴┴┴┴┴┴┴┴┴┴┘
*/
- [_REEDER] = LAYOUT_default( \
- KC_P, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- KC_K, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- KC_J, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- KC_N, _______, _______, _______, _______, _______, _______ \
+ [_REEDER] = LAYOUT_default(
+ KC_P, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_K, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_J, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_N, _______, _______, _______, _______, _______, _______
),
/**
* Nav
@@ -83,11 +83,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* │ ← │││││││││││   │     │        │          │     │   │││││││││││
* └───┴┴┴┴┴┴┴┴┴┴┴───┴─────┴────────┴──────────┴─────┴───┴┴┴┴┴┴┴┴┴┴┘
*/
- [_NAV] = LAYOUT_default( \
- KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- KC_DOWN, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- KC_LEFT, _______, _______, _______, _______, _______, _______ \
+ [_NAV] = LAYOUT_default(
+ KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_DOWN, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_LEFT, _______, _______, _______, _______, _______, _______
),
/**
* Mouse
@@ -101,11 +101,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* │WhD│││││││││││   │     │        │          │     │   │││││││││││
* └───┴┴┴┴┴┴┴┴┴┴┴───┴─────┴────────┴──────────┴─────┴───┴┴┴┴┴┴┴┴┴┴┘
*/
- [_MOUSE] = LAYOUT_default( \
- MC_WH_U, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- KC_DOWN, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- MC_WH_D, _______, _______, _______, _______, _______, _______ \
+ [_MOUSE] = LAYOUT_default(
+ MC_WH_U, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_DOWN, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ MC_WH_D, _______, _______, _______, _______, _______, _______
),
/**
* Lower
@@ -119,11 +119,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* │Prv│││││││││││   │     │        │          │     │   │││││││││││
* └───┴┴┴┴┴┴┴┴┴┴┴───┴─────┴────────┴──────────┴─────┴───┴┴┴┴┴┴┴┴┴┴┘
*/
- [_LOWER] = LAYOUT_default( \
- KC_MNXT, KC_DEL, KC_BRMD, KC_BRMU, MC_MSSN, MC_LHPD, _______, _______, _______, _______, _______, _______, KC_UP, KC_MUTE, MC_SLPD, \
- KC_VOLU, HY_CAPS, _______, _______, NXT_WIN, PRV_TAB, MC_BACK, MC_FWRD, NXT_TAB, _______, _______, KC_LEFT, KC_RGHT, KC_MPLY, \
- KC_VOLD, _______, XXXXXXX, _______, _______, _______, PX_AFLL, OP_AFLL, _______, _______, _______, _______, KC_DOWN, _______, _______, \
- KC_MPRV, _______, _______, _______, _______, _______, _______ \
+ [_LOWER] = LAYOUT_default(
+ KC_MNXT, KC_DEL, KC_BRMD, KC_BRMU, MC_MSSN, MC_LHPD, _______, _______, _______, _______, _______, _______, KC_UP, KC_MUTE, MC_SLPD,
+ KC_VOLU, HY_CAPS, _______, _______, NXT_WIN, PRV_TAB, MC_BACK, MC_FWRD, NXT_TAB, _______, _______, KC_LEFT, KC_RGHT, KC_MPLY,
+ KC_VOLD, _______, XXXXXXX, _______, _______, _______, PX_AFLL, OP_AFLL, _______, _______, _______, _______, KC_DOWN, _______, _______,
+ KC_MPRV, _______, _______, _______, _______, _______, _______
),
/**
@@ -138,11 +138,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* │End│││││││││││   │     │        │          │     │   │││││││││││
* └───┴┴┴┴┴┴┴┴┴┴┴───┴─────┴────────┴──────────┴─────┴───┴┴┴┴┴┴┴┴┴┴┘
*/
- [_RAISE] = LAYOUT_default( \
- KC_HOME, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, _______, \
- KC_PGUP, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, _______, _______, _______, _______, \
- KC_PGDN, _______, XXXXXXX, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, KC_BSLS, _______, _______, \
- KC_END, _______, _______, _______, _______, _______, _______ \
+ [_RAISE] = LAYOUT_default(
+ KC_HOME, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, _______,
+ KC_PGUP, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, _______, _______, _______, _______,
+ KC_PGDN, _______, XXXXXXX, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, KC_BSLS, _______, _______,
+ KC_END, _______, _______, _______, _______, _______, _______
),
/**
* Adjust
@@ -156,11 +156,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* │Mse│││││││││││   │     │        │          │     │   │││││││││││
* └───┴┴┴┴┴┴┴┴┴┴┴───┴─────┴────────┴──────────┴─────┴───┴┴┴┴┴┴┴┴┴┴┘
*/
- [_ADJUST] = LAYOUT_default( \
- TG_BASE, QM_MAKE, _______, _______, EE_CLR, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- TG_REDR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- TG_NAV, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- TG_MOUS, _______, _______, _______, _______, _______, _______ \
+ [_ADJUST] = LAYOUT_default(
+ TG_BASE, QM_MAKE, _______, _______, EE_CLR, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ TG_REDR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ TG_NAV, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ TG_MOUS, _______, _______, _______, _______, _______, _______
),
};
diff --git a/keyboards/cannonkeys/tmov2/rules.mk b/keyboards/cannonkeys/tmov2/rules.mk
index 440b77bd26..8b82556130 100644
--- a/keyboards/cannonkeys/tmov2/rules.mk
+++ b/keyboards/cannonkeys/tmov2/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
diff --git a/keyboards/cannonkeys/tsukuyomi/config.h b/keyboards/cannonkeys/tsukuyomi/config.h
index 57b3b8053f..8987acd837 100644
--- a/keyboards/cannonkeys/tsukuyomi/config.h
+++ b/keyboards/cannonkeys/tsukuyomi/config.h
@@ -17,27 +17,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 5
-#define MATRIX_COLS 17
-
#define MATRIX_COL_PINS { A7, A5, B10, A3, A2, B0, A9, C13, B9, B8, B7, B6, B5, B4, B3, A15, A14 }
#define MATRIX_ROW_PINS { B12, B11, B14, A8, A1 }
#define DIODE_DIRECTION COL2ROW
-#define BACKLIGHT_PIN A6
#define BACKLIGHT_PWM_DRIVER PWMD3
#define BACKLIGHT_PWM_CHANNEL 1
#define BACKLIGHT_PAL_MODE 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/tsukuyomi/info.json b/keyboards/cannonkeys/tsukuyomi/info.json
index 1a4e74539a..fb5b22e5b7 100644
--- a/keyboards/cannonkeys/tsukuyomi/info.json
+++ b/keyboards/cannonkeys/tsukuyomi/info.json
@@ -8,6 +8,13 @@
"pid": "0x0002",
"device_version": "0.0.1"
},
+ "backlight": {
+ "pin": "A6",
+ "levels": 6,
+ "breathing": true
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_default": {
"layout": [{"label":"Esc", "x":0, "y":0}, {"label":"~", "x":1.25, "y":0}, {"label":"!", "x":2.25, "y":0}, {"label":"@", "x":3.25, "y":0}, {"label":"#", "x":4.25, "y":0}, {"label":"$", "x":5.25, "y":0}, {"label":"%", "x":6.25, "y":0}, {"label":"^", "x":7.25, "y":0}, {"label":"&", "x":8.25, "y":0}, {"label":"*", "x":9.25, "y":0}, {"label":"(", "x":10.25, "y":0}, {"label":")", "x":11.25, "y":0}, {"label":"_", "x":12.25, "y":0}, {"label":"+", "x":13.25, "y":0}, {"x":14.25, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":0, "y":1}, {"label":"Tab", "x":1.25, "y":1, "w":1.5}, {"label":"Q", "x":2.75, "y":1}, {"label":"W", "x":3.75, "y":1}, {"label":"E", "x":4.75, "y":1}, {"label":"R", "x":5.75, "y":1}, {"label":"T", "x":6.75, "y":1}, {"label":"Y", "x":7.75, "y":1}, {"label":"U", "x":8.75, "y":1}, {"label":"I", "x":9.75, "y":1}, {"label":"O", "x":10.75, "y":1}, {"label":"P", "x":11.75, "y":1}, {"label":"{", "x":12.75, "y":1}, {"label":"}", "x":13.75, "y":1}, {"label":"|", "x":14.75, "y":1, "w":1.5}, {"x":16.25, "y":1}, {"x":0, "y":2}, {"label":"Caps Lock", "x":1.25, "y":2, "w":1.75}, {"label":"A", "x":3, "y":2}, {"label":"S", "x":4, "y":2}, {"label":"D", "x":5, "y":2}, {"label":"F", "x":6, "y":2}, {"label":"G", "x":7, "y":2}, {"label":"H", "x":8, "y":2}, {"label":"J", "x":9, "y":2}, {"label":"K", "x":10, "y":2}, {"label":"L", "x":11, "y":2}, {"label":":", "x":12, "y":2}, {"label":"\"", "x":13, "y":2}, {"x":14, "y":2}, {"label":"Enter", "x":15, "y":2, "w":1.25}, {"x":16.25, "y":2}, {"x":0, "y":3}, {"x":1.25, "y":3, "w":1.25}, {"x":2.5, "y":3}, {"label":"Z", "x":3.5, "y":3}, {"label":"X", "x":4.5, "y":3}, {"label":"C", "x":5.5, "y":3}, {"label":"V", "x":6.5, "y":3}, {"label":"B", "x":7.5, "y":3}, {"label":"N", "x":8.5, "y":3}, {"label":"M", "x":9.5, "y":3}, {"label":"<", "x":10.5, "y":3}, {"label":">", "x":11.5, "y":3}, {"label":"?", "x":12.5, "y":3}, {"label":"Shift", "x":13.5, "y":3, "w":1.75}, {"x":15.25, "y":3}, {"x":16.25, "y":3}, {"x":0, "y":4}, {"label":"Ctrl", "x":1.25, "y":4, "w":1.25}, {"label":"Win", "x":2.5, "y":4, "w":1.25}, {"label":"Alt", "x":3.75, "y":4, "w":1.25}, {"x":5, "y":4, "w":6.25}, {"label":"Alt", "x":11.25, "y":4, "w":1.25}, {"label":"Ctrl", "x":12.5, "y":4, "w":1.25}, {"x":14.25, "y":4}, {"x":15.25, "y":4}, {"x":16.25, "y":4}]
diff --git a/keyboards/cannonkeys/tsukuyomi/rules.mk b/keyboards/cannonkeys/tsukuyomi/rules.mk
index 0d99007c16..2eaae2dc9b 100644
--- a/keyboards/cannonkeys/tsukuyomi/rules.mk
+++ b/keyboards/cannonkeys/tsukuyomi/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
diff --git a/keyboards/cannonkeys/vicious40/config.h b/keyboards/cannonkeys/vicious40/config.h
index 4b8786163d..d989d427ff 100644
--- a/keyboards/cannonkeys/vicious40/config.h
+++ b/keyboards/cannonkeys/vicious40/config.h
@@ -17,27 +17,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 4
-#define MATRIX_COLS 12
-
#define MATRIX_COL_PINS { B0, A7, A5, B1, B2, B10, B11, A9, B6, B7, B8, B9 }
#define MATRIX_ROW_PINS { A15, B3, B4, B5 }
#define DIODE_DIRECTION COL2ROW
-#define BACKLIGHT_PIN A6
#define BACKLIGHT_PWM_DRIVER PWMD3
#define BACKLIGHT_PWM_CHANNEL 1
#define BACKLIGHT_PAL_MODE 1
-#define BACKLIGHT_LEVELS 6
-#define BACKLIGHT_BREATHING
-#define BREATHING_PERIOD 6
-
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-/* Set 0 if debouncing isn't needed */
-#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/cannonkeys/vicious40/info.json b/keyboards/cannonkeys/vicious40/info.json
index db6081773b..384343b8e9 100644
--- a/keyboards/cannonkeys/vicious40/info.json
+++ b/keyboards/cannonkeys/vicious40/info.json
@@ -8,6 +8,13 @@
"pid": "0x0004",
"device_version": "0.0.1"
},
+ "backlight": {
+ "pin": "A6",
+ "levels": 6,
+ "breathing": true
+ },
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_default": {
"layout": [{"label":"Esc", "x":0, "y":0}, {"label":"Q", "x":1, "y":0}, {"label":"W", "x":2, "y":0}, {"label":"E", "x":3, "y":0}, {"label":"R", "x":4, "y":0}, {"label":"T", "x":5, "y":0}, {"label":"Y", "x":6, "y":0}, {"label":"U", "x":7, "y":0}, {"label":"I", "x":8, "y":0}, {"label":"O", "x":9, "y":0}, {"label":"P", "x":10, "y":0}, {"label":"Backspace", "x":11, "y":0, "w":1.75}, {"label":"Tab", "x":0, "y":1, "w":1.25}, {"label":"A", "x":1.25, "y":1}, {"label":"S", "x":2.25, "y":1}, {"label":"D", "x":3.25, "y":1}, {"label":"F", "x":4.25, "y":1}, {"label":"G", "x":5.25, "y":1}, {"label":"H", "x":6.25, "y":1}, {"label":"J", "x":7.25, "y":1}, {"label":"K", "x":8.25, "y":1}, {"label":"L", "x":9.25, "y":1}, {"label":":", "x":10.25, "y":1}, {"label":"Enter", "x":11.25, "y":1, "w":1.5}, {"label":"Shift", "x":0, "y":2, "w":1.75}, {"label":"Z", "x":1.75, "y":2}, {"label":"X", "x":2.75, "y":2}, {"label":"C", "x":3.75, "y":2}, {"label":"V", "x":4.75, "y":2}, {"label":"B", "x":5.75, "y":2}, {"label":"N", "x":6.75, "y":2}, {"label":"M", "x":7.75, "y":2}, {"label":"<", "x":8.75, "y":2}, {"label":">", "x":9.75, "y":2}, {"label":"Up", "x":10.75, "y":2}, {"label":"?", "x":11.75, "y":2}, {"label":"Ctrl", "x":0, "y":3}, {"label":"Super", "x":1, "y":3}, {"label":"Alt", "x":2, "y":3}, {"label":"Space", "x":3, "y":3, "w":2.25}, {"label":"Space", "x":5.25, "y":3, "w":1.25}, {"label":"Space", "x":6.5, "y":3, "w":2.75}, {"label":"Left", "x":9.75, "y":3}, {"label":"Down", "x":10.75, "y":3}, {"label":"Right", "x":11.75, "y":3}]
diff --git a/keyboards/cannonkeys/vicious40/rules.mk b/keyboards/cannonkeys/vicious40/rules.mk
index c78e8a1e7b..df23201719 100644
--- a/keyboards/cannonkeys/vicious40/rules.mk
+++ b/keyboards/cannonkeys/vicious40/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = STM32F072
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -p FFFF -v FFFF