diff options
Diffstat (limited to 'keyboards/handwired')
202 files changed, 824 insertions, 566 deletions
diff --git a/keyboards/handwired/108key_trackpoint/config.h b/keyboards/handwired/108key_trackpoint/config.h index 2ff8a9a115..703cd93e64 100644 --- a/keyboards/handwired/108key_trackpoint/config.h +++ b/keyboards/handwired/108key_trackpoint/config.h @@ -43,7 +43,6 @@ #define MATRIX_ROW_PINS { B0, B1, B2, B3, B4, B5, B6, B7 } #define MATRIX_COL_PINS { C0, C1, C2, C3, C4, C5, C6, C7, D0, D1, F0, D3, D4, F1, D6, D7, E0, E1, E2, E3, E4, E5, E6 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/2x5keypad/config.h b/keyboards/handwired/2x5keypad/config.h index f53879f19a..00c4ac1ab4 100644 --- a/keyboards/handwired/2x5keypad/config.h +++ b/keyboards/handwired/2x5keypad/config.h @@ -9,7 +9,6 @@ /* key matrix pins */ #define MATRIX_ROW_PINS { B3, B2 } #define MATRIX_COL_PINS { D4, C6, D7, E6, B4 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/3dp660/config.h b/keyboards/handwired/3dp660/config.h index 8a8fe8ea30..eaae958e4d 100644 --- a/keyboards/handwired/3dp660/config.h +++ b/keyboards/handwired/3dp660/config.h @@ -29,7 +29,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define MATRIX_ROW_PINS { B0, B1, B2, B3, B7 } #define MATRIX_COL_PINS { D2, D3, C6, C7, D5, D4, D7, B4, B5, B6, F7, F6, F5, F4, F1 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/412_64/config.h b/keyboards/handwired/412_64/config.h index de6d79e0a9..b32afc2033 100644 --- a/keyboards/handwired/412_64/config.h +++ b/keyboards/handwired/412_64/config.h @@ -20,7 +20,6 @@ */ #define MATRIX_ROW_PINS { D3, F4, F5, F6, F7, B1, B3, B2 } #define MATRIX_COL_PINS { B0, D2, D0, D1, D4, C6, D7, E6 } -#define UNUSED_PINS { B4, B5, B6, B7, C7, F0, F1 } /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/42/config.h b/keyboards/handwired/42/config.h index 34c9a0500c..5ec89cce84 100644 --- a/keyboards/handwired/42/config.h +++ b/keyboards/handwired/42/config.h @@ -18,7 +18,6 @@ */ #define MATRIX_COL_PINS { F5, F6, F7, F0, F1, F4, B6, B5, D7, C7, D6, B7 } #define MATRIX_ROW_PINS { D2, D3, D0, D1 } -#define UNUSED_PINS /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/6key/config.h b/keyboards/handwired/6key/config.h index efa24db048..b7d983d75f 100644 --- a/keyboards/handwired/6key/config.h +++ b/keyboards/handwired/6key/config.h @@ -25,7 +25,6 @@ /* pin-out */ #define MATRIX_ROW_PINS { B4, D0 } #define MATRIX_COL_PINS { D3, D2, D1 } -#define UNUSED_PINS /* dip switch */ #define DIP_SWITCH_PINS { C6 } diff --git a/keyboards/handwired/6macro/config.h b/keyboards/handwired/6macro/config.h index 7fe3be6556..1e8c296855 100644 --- a/keyboards/handwired/6macro/config.h +++ b/keyboards/handwired/6macro/config.h @@ -26,7 +26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. /* pinout - DON'T CHANGE */ #define MATRIX_ROW_PINS { B3, B4 } #define MATRIX_COL_PINS { B0, B1, B2 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/aek64/config.h b/keyboards/handwired/aek64/config.h index 8bb20b7fdf..784eeb1298 100644 --- a/keyboards/handwired/aek64/config.h +++ b/keyboards/handwired/aek64/config.h @@ -26,7 +26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. // Originally made for a Teensy 2++ #define MATRIX_COL_PINS { F0, E6, E7, B0, B1, B2, B3, B4, B5, B6, D3, D0, D1, D2 } #define MATRIX_ROW_PINS { E0, E1, C0, C1, C2 } -#define UNUSED_PINS #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/amigopunk/config.h b/keyboards/handwired/amigopunk/config.h index b6e79d05f2..c6f1a99537 100644 --- a/keyboards/handwired/amigopunk/config.h +++ b/keyboards/handwired/amigopunk/config.h @@ -25,7 +25,6 @@ /* Key matrix pins */ #define MATRIX_ROW_PINS { C0, C1, C2, C3, C4, C5 } #define MATRIX_COL_PINS { B6, B5, B4, B3, B2, B1, B0, E7, E6, F0, F1, F2, F3, F4, F5, F6, F7 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/angel/config.h b/keyboards/handwired/angel/config.h index ffa5110fe5..ce1bf11ed6 100644 --- a/keyboards/handwired/angel/config.h +++ b/keyboards/handwired/angel/config.h @@ -30,7 +30,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { B6, B2, B5, B4 } #define MATRIX_COL_PINS { D3, D2, D1, D0, D4, C6, D7, E6, B3, B1, F7, F6, F5 } -#define UNUSED_PINS #define DIODE_DIRECTION COL2ROW // https://docs.qmk.fm/using-qmk/software-features/tap_hold diff --git a/keyboards/handwired/aplx2/config.h b/keyboards/handwired/aplx2/config.h index d1ec168038..cbe0ef91ba 100644 --- a/keyboards/handwired/aplx2/config.h +++ b/keyboards/handwired/aplx2/config.h @@ -26,7 +26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. /* pin-out */ #define MATRIX_ROW_PINS { D1 } #define MATRIX_COL_PINS { B5, D3 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/aranck/config.h b/keyboards/handwired/aranck/config.h index 8517852270..1b9a0b2419 100644 --- a/keyboards/handwired/aranck/config.h +++ b/keyboards/handwired/aranck/config.h @@ -37,7 +37,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. { D3, D2, D1, D0 } #define MATRIX_COL_PINS \ { C6, D7, E6, B4, B6, B2, B3, B1, F7, F6, F5, F4 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/arrow_pad/config.h b/keyboards/handwired/arrow_pad/config.h index 436b37f8a0..9615075121 100644 --- a/keyboards/handwired/arrow_pad/config.h +++ b/keyboards/handwired/arrow_pad/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { F0, F1, F4, F5, F6, F7 } #define MATRIX_COL_PINS { B0, B1, B2, B3 } -#define UNUSED_PINS #define BACKLIGHT_PIN B7 diff --git a/keyboards/handwired/arrow_pad/keymaps/pad_21/config.h b/keyboards/handwired/arrow_pad/keymaps/pad_21/config.h index 550bfd183f..1f07965555 100644 --- a/keyboards/handwired/arrow_pad/keymaps/pad_21/config.h +++ b/keyboards/handwired/arrow_pad/keymaps/pad_21/config.h @@ -43,7 +43,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { D3, D5 } #define MATRIX_COL_PINS { F0, F1, F4, F5, F6, F7, B6, B5, B4, D7, D4 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION ROW2COL diff --git a/keyboards/handwired/arrow_pad/keymaps/pad_24/config.h b/keyboards/handwired/arrow_pad/keymaps/pad_24/config.h index 51d3b9080b..4bc89f5ce7 100644 --- a/keyboards/handwired/arrow_pad/keymaps/pad_24/config.h +++ b/keyboards/handwired/arrow_pad/keymaps/pad_24/config.h @@ -43,7 +43,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { F0, F1, F4, F5, F6, F7 } #define MATRIX_COL_PINS { B0, B1, B2, B3 } -#define UNUSED_PINS #define BACKLIGHT_PIN B7 diff --git a/keyboards/handwired/atreus50/config.h b/keyboards/handwired/atreus50/config.h index c7365fe20c..f433427ab0 100644 --- a/keyboards/handwired/atreus50/config.h +++ b/keyboards/handwired/atreus50/config.h @@ -26,7 +26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. /* Planck PCB default pin-out */ #define MATRIX_ROW_PINS { D3, D2, D1, D0 } #define MATRIX_COL_PINS { D4, D7, E6, B4, B5, B6, B2, B3, B1, F7, F6, F5, F4 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/axon/config.h b/keyboards/handwired/axon/config.h index e4ace3ba4e..50be74b882 100644 --- a/keyboards/handwired/axon/config.h +++ b/keyboards/handwired/axon/config.h @@ -26,7 +26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. /* key matrix pins */ #define MATRIX_ROW_PINS { D5, D6, D4, D0 } #define MATRIX_COL_PINS { B0, D7, B1, B2, C0, C1, C2, C3, C4, C5, D1 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/baredev/rev1/info.json b/keyboards/handwired/baredev/rev1/info.json index 6292817538..d35e3644ba 100644 --- a/keyboards/handwired/baredev/rev1/info.json +++ b/keyboards/handwired/baredev/rev1/info.json @@ -9,13 +9,6 @@ "term": 175 }, "matrix_pins": { - "unused": [ - "F1", - "F4", - "F5", - "F6", - "F7" - ], "cols": [ "B6", "B7", @@ -703,4 +696,4 @@ ] } } -}
\ No newline at end of file +} diff --git a/keyboards/handwired/battleship_gamepad/config.h b/keyboards/handwired/battleship_gamepad/config.h index 92ad57d178..25389c0245 100644 --- a/keyboards/handwired/battleship_gamepad/config.h +++ b/keyboards/handwired/battleship_gamepad/config.h @@ -25,7 +25,6 @@ /* key matrix pins */ #define MATRIX_ROW_PINS { B6, B2, B3, B1, F7 } #define MATRIX_COL_PINS { D1, D0, D4, C6, D7, E6, B4, B5 } -#define UNUSED_PINS /* joystick configuration */ #define JOYSTICK_BUTTON_COUNT 25 diff --git a/keyboards/handwired/bolek/config.h b/keyboards/handwired/bolek/config.h index 33fbf59ac1..b6cbea8f39 100644 --- a/keyboards/handwired/bolek/config.h +++ b/keyboards/handwired/bolek/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { F4, F5, F6, B5, D3, D2, D1, B4 } #define MATRIX_COL_PINS { B6, B2, B3, B1, F7, E6, D7, C6, D0, D4 } -#define UNUSED_PINS /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/bstk100/config.h b/keyboards/handwired/bstk100/config.h index 2c79452943..c51031b2b5 100644 --- a/keyboards/handwired/bstk100/config.h +++ b/keyboards/handwired/bstk100/config.h @@ -36,7 +36,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { B6, B2, B3, B1, F7 } #define MATRIX_COL_PINS { B5, B4, E6, D7, C6 } -#define UNUSED_PINS /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/cans12er/config.h b/keyboards/handwired/cans12er/config.h index 117474691a..240a2a5da9 100644 --- a/keyboards/handwired/cans12er/config.h +++ b/keyboards/handwired/cans12er/config.h @@ -9,7 +9,6 @@ /* key matrix pins */ #define MATRIX_ROW_PINS { F7, B1, B3 } #define MATRIX_COL_PINS { D0, D4, C6, D7 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION ROW2COL diff --git a/keyboards/handwired/chiron/config.h b/keyboards/handwired/chiron/config.h index 7b72988431..52bb89519b 100644 --- a/keyboards/handwired/chiron/config.h +++ b/keyboards/handwired/chiron/config.h @@ -27,7 +27,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. // Pro Micro Pins A3, A2, A1, A0, 15, 14, 16 #define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2 } -#define UNUSED_PINS // Pro Micro Pins RX1 #define SPLIT_HAND_PIN D2 diff --git a/keyboards/handwired/cmd60/config.h b/keyboards/handwired/cmd60/config.h index 4927762d8e..433aabc5b7 100644 --- a/keyboards/handwired/cmd60/config.h +++ b/keyboards/handwired/cmd60/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { F0, F4, F5, F6, F7 } #define MATRIX_COL_PINS { B0, B1, B2, B3, B7, D0, D1, D2, D3, C6, D7, B4, B5, B6 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/co60/rev1/config.h b/keyboards/handwired/co60/rev1/config.h index ea2dfadffd..e018e0cd8d 100644 --- a/keyboards/handwired/co60/rev1/config.h +++ b/keyboards/handwired/co60/rev1/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { D0, D1, D2, D3, D5 } #define MATRIX_COL_PINS { F0, F1, E6, C7, C6, B6, D4, B1, B2, B5, B4, D7, D6, B3, B0 } -#define UNUSED_PINS /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/co60/rev7/config.h b/keyboards/handwired/co60/rev7/config.h index 9475280267..150da56dc6 100644 --- a/keyboards/handwired/co60/rev7/config.h +++ b/keyboards/handwired/co60/rev7/config.h @@ -27,7 +27,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { A8, A2, B13, B2, B10 } #define MATRIX_COL_PINS { A10, A9, A3, A4, A5, A6, B0, B1, A15, B3, B4, B5, C13, C14, C15 } -#define UNUSED_PINS /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/colorlice/config.h b/keyboards/handwired/colorlice/config.h index 41d87f6c71..a941ea493d 100644 --- a/keyboards/handwired/colorlice/config.h +++ b/keyboards/handwired/colorlice/config.h @@ -26,7 +26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. /* key matrix pins */ #define MATRIX_ROW_PINS { D0, D1, D2, D3, D5 } #define MATRIX_COL_PINS { F0, F1, F4, F5, F6, F7, C7, B6, B5, B4, D7, D6, D4, E6, B0, B3 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/concertina/64key/config.h b/keyboards/handwired/concertina/64key/config.h index 1b09c403f6..cb897ba109 100644 --- a/keyboards/handwired/concertina/64key/config.h +++ b/keyboards/handwired/concertina/64key/config.h @@ -23,7 +23,6 @@ #define MATRIX_ROW_PINS { D1, D0, D4, C6, D7, E6, B4, B5 } #define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2, B6 } -#define UNUSED_PINS { D3, D2 } /* LEDs are not used in the standard 64key configuration. */ #define RGB_DI_PIN D3 diff --git a/keyboards/handwired/curiosity/config.h b/keyboards/handwired/curiosity/config.h index 35bfef4794..4cd00d8b2d 100644 --- a/keyboards/handwired/curiosity/config.h +++ b/keyboards/handwired/curiosity/config.h @@ -26,7 +26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. /* key matrix pins */ #define MATRIX_ROW_PINS { D0, F7, F6, F5 } #define MATRIX_COL_PINS { D3, D4, F4, C6, D7, E6, B5, B4, B1, B3, B2, B6 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/d48/config.h b/keyboards/handwired/d48/config.h index 6b6ae5ce3f..47ae30a98f 100644 --- a/keyboards/handwired/d48/config.h +++ b/keyboards/handwired/d48/config.h @@ -10,7 +10,6 @@ #define MATRIX_ROW_PINS { B8, B9, B1, B2, B4 } #define MATRIX_COL_PINS { A2, B0, A7, A8, A13, A14, B12, B11, B10, B15, B14, B13 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/dactyl_left/config.h b/keyboards/handwired/dactyl_left/config.h index cce0d050a7..c10096e590 100644 --- a/keyboards/handwired/dactyl_left/config.h +++ b/keyboards/handwired/dactyl_left/config.h @@ -37,7 +37,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. { F0, F1, F4, F5, F6, F7 } #define MATRIX_COL_PINS \ { D0, B7, B3, B2, B1, B0 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/daishi/config.h b/keyboards/handwired/daishi/config.h index 09a5897f7a..e02c7c889c 100644 --- a/keyboards/handwired/daishi/config.h +++ b/keyboards/handwired/daishi/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { D6, D7, E0, E1, C0, C1, C2 } #define MATRIX_COL_PINS { E6, E7, E3, B0, B1, B2, A6, A5, A4, A3, A2, A1, A0, F7, F6, F5, F4, F3 } -#define UNUSED_PINS /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/dc/mc/001/config.h b/keyboards/handwired/dc/mc/001/config.h index db03889cc1..b6d6f60dfc 100644 --- a/keyboards/handwired/dc/mc/001/config.h +++ b/keyboards/handwired/dc/mc/001/config.h @@ -30,7 +30,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. { \ { B4, B0, B1, B2, B3 } \ } -#define UNUSED_PINS /* RE_CHANNEL_A = _BV(6), diff --git a/keyboards/handwired/dqz11n1g/config.h b/keyboards/handwired/dqz11n1g/config.h index fbfdeb30ae..3bd8123426 100644 --- a/keyboards/handwired/dqz11n1g/config.h +++ b/keyboards/handwired/dqz11n1g/config.h @@ -31,7 +31,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. /* Column read via SPI (shift register) */ /* #define MATRIX_COL_PINS { } */ -#define UNUSED_PINS #define LED_CAPS_LOCK_PIN F7 /* A0 */ #define LED_NUM_LOCK_PIN F5 /*A2 */ diff --git a/keyboards/handwired/eagleii/config.h b/keyboards/handwired/eagleii/config.h index c17635caf1..2007137d84 100644 --- a/keyboards/handwired/eagleii/config.h +++ b/keyboards/handwired/eagleii/config.h @@ -6,6 +6,5 @@ #define MATRIX_COLS 12 #define MATRIX_ROW_PINS { D0, B5, F1, B2, F7, F6, D4, D7, B4, B7, F5, B0 } #define MATRIX_COL_PINS { D2, C6, E6, D5, B3, D3, D1, C7, F0, B6, B1, F4 } -#define UNUSED_PINS #define DIODE_DIRECTION COL2ROW #define DEBOUNCE 5 diff --git a/keyboards/handwired/ergocheap/config.h b/keyboards/handwired/ergocheap/config.h index 136ba9d81c..9d99463961 100644 --- a/keyboards/handwired/ergocheap/config.h +++ b/keyboards/handwired/ergocheap/config.h @@ -40,6 +40,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. /* Set 0 if debouncing isn't needed */ #define DEBOUNCE 5 #define TAPPING_TERM 500 +#define PERMISSIVE_HOLD /* * Feature disable options diff --git a/keyboards/handwired/evk/v1_3/config.h b/keyboards/handwired/evk/v1_3/config.h index a280c49f3b..9a2192ec44 100644 --- a/keyboards/handwired/evk/v1_3/config.h +++ b/keyboards/handwired/evk/v1_3/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. { B0, B1, B2, B3, B7, D0 } #define MATRIX_COL_PINS \ { D1, D2, D3, C6, C7, F0, F1, F4, F5, F6, F7, B6, B5, B4, D7, D6 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION ROW2COL // the positive current flows into the rows and then out of the columns negative. diff --git a/keyboards/handwired/fc200rt_qmk/config.h b/keyboards/handwired/fc200rt_qmk/config.h index d0b9fc2cab..1ac044e8b2 100644 --- a/keyboards/handwired/fc200rt_qmk/config.h +++ b/keyboards/handwired/fc200rt_qmk/config.h @@ -25,7 +25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define MATRIX_ROW_PINS { B0, B1, B2, B3, E6, B7, D0, D1 } #define MATRIX_COL_PINS { D2, D3, C6, C7, D5, D4, D6, D7, B4, B5, B6, F7, F6, F5, F4, F1 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION ROW2COL diff --git a/keyboards/handwired/fivethirteen/config.h b/keyboards/handwired/fivethirteen/config.h index 8f392c35d0..9b5af88e57 100644 --- a/keyboards/handwired/fivethirteen/config.h +++ b/keyboards/handwired/fivethirteen/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { F6, F7, B6, B5, B4 } #define MATRIX_COL_PINS { B0, B1, B2, B3, F0, D0, D1, D2, D3, C6, C7, D6, D7 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/floorboard/config.h b/keyboards/handwired/floorboard/config.h index 84b748d520..2f071df7bd 100644 --- a/keyboards/handwired/floorboard/config.h +++ b/keyboards/handwired/floorboard/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { A2, A1, A0, B8 } #define MATRIX_COL_PINS { B7, B6, B5, B4, B3, B2, B1, B9, B0, B15, B14, B13 } -#define UNUSED_PINS { B10, B11, B12, A14, A13, A4, A5, A6, A7, A8, A15, A10, A9 } /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/frankie_macropad/config.h b/keyboards/handwired/frankie_macropad/config.h index 823be87688..883807239b 100644 --- a/keyboards/handwired/frankie_macropad/config.h +++ b/keyboards/handwired/frankie_macropad/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { B0, B1, B2 } #define MATRIX_COL_PINS { B3, B4, B5, B6 } -#define UNUSED_PINS /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/frenchdev/keymaps/default/keymap.c b/keyboards/handwired/frenchdev/keymaps/default/keymap.c index 2d917b412e..11463a0162 100644 --- a/keyboards/handwired/frenchdev/keymaps/default/keymap.c +++ b/keyboards/handwired/frenchdev/keymaps/default/keymap.c @@ -209,7 +209,7 @@ void press_underscore(void) { uint8_t old_layer=_BASE; void matrix_scan_user(void) { - uint8_t layer = biton32(layer_state); + uint8_t layer = get_highest_layer(layer_state); frenchdev_led_1_off(); frenchdev_led_2_off(); diff --git a/keyboards/handwired/fruity60/config.h b/keyboards/handwired/fruity60/config.h index a3a1e2beb8..b21e752d85 100644 --- a/keyboards/handwired/fruity60/config.h +++ b/keyboards/handwired/fruity60/config.h @@ -27,7 +27,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. { B6, B5, D7, C6, D0, D1 } #define MATRIX_COL_PINS \ { F7, F6, F5, F4, F1, F0, D2, D3, B7, D6, C7 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/gamenum/config.h b/keyboards/handwired/gamenum/config.h index 480f6f73aa..eb9efef846 100644 --- a/keyboards/handwired/gamenum/config.h +++ b/keyboards/handwired/gamenum/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { B6, B2, B3, B1, F7 } #define MATRIX_COL_PINS { D7, E6, B4, B5 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION ROW2COL diff --git a/keyboards/handwired/hacked_motospeed/config.h b/keyboards/handwired/hacked_motospeed/config.h index ee781012b1..690e96365c 100644 --- a/keyboards/handwired/hacked_motospeed/config.h +++ b/keyboards/handwired/hacked_motospeed/config.h @@ -39,7 +39,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. // ER DR CR BR AR FR FL AL BL CL DL EL #define MATRIX_COL_PINS { F7, F6, F5, F4, F3, F2, E0, E1, C0, C1, C2, C3 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/heisenberg/config.h b/keyboards/handwired/heisenberg/config.h index 7aa147b4e4..84224a4514 100644 --- a/keyboards/handwired/heisenberg/config.h +++ b/keyboards/handwired/heisenberg/config.h @@ -37,7 +37,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. { D3, D2, D1, D0 } #define MATRIX_COL_PINS \ { C6, D7, E6, B4, B6, B2, B3, B1, F7, F6, F5, F4 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/hexon38/config.h b/keyboards/handwired/hexon38/config.h index cd818ca2bc..b6529b3ddf 100644 --- a/keyboards/handwired/hexon38/config.h +++ b/keyboards/handwired/hexon38/config.h @@ -11,7 +11,6 @@ /* key matrix pins */ #define MATRIX_ROW_PINS { B0, F0, B2, F4 } #define MATRIX_COL_PINS { C6, D3, D2, D1, D0, B7, F6, F7, B6, B5, B4, D7 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION ROW2COL diff --git a/keyboards/handwired/hillside/0_1/0_1.c b/keyboards/handwired/hillside/0_1/0_1.c deleted file mode 100644 index ee096f18a7..0000000000 --- a/keyboards/handwired/hillside/0_1/0_1.c +++ /dev/null @@ -1,4 +0,0 @@ -// Copyright 2021 Michael McCoyd (@mmccoyd) -// SPDX-License-Identifier: GPL-2.0-or-later - -#include "0_1.h" diff --git a/keyboards/handwired/hillside/0_1/keymaps/default/keymap.json b/keyboards/handwired/hillside/0_1/keymaps/default/keymap.json deleted file mode 100644 index 5c672f8b8b..0000000000 --- a/keyboards/handwired/hillside/0_1/keymaps/default/keymap.json +++ /dev/null @@ -1,101 +0,0 @@ -{ "version": 1, - "notes": "", - "documentation": "\"This file is a QMK Configurator export. You can import this at <https://config.qmk.fm>. It can also be used directly with QMK's source code.\n\nTo setup your QMK environment check out the tutorial: <https://docs.qmk.fm/#/newbs>\n\nYou can convert this file to a keymap.c using this command: `qmk json2c {keymap}`\n\nYou can compile this keymap using this command: `qmk compile {keymap}`\"\n", - "keyboard": "handwired/hillside/0_1", - "keymap": "default", - "layout": "LAYOUT", - "layers": [ - ["KC_TAB" , "KC_Q" , "KC_W" , "KC_E" , "KC_R" , "KC_T", - "KC_Y" , "KC_U" , "KC_I" , "KC_O" , "KC_P" , "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_ENT", - - "KC_LSFT", "KC_Z" , "KC_X" , "KC_C" , "KC_V" , "KC_B" , "KC_GRV", - "KC_ESC" , "KC_N" , "KC_M" , "KC_COMM" , "KC_DOT" , "KC_SLSH" , "KC_RSFT", - - "KC_LCTL", "KC_LGUI" , "KC_LALT" , "MO(5)" , "MO(3)", - "MO(4)" , "KC_SPC" , "KC_LALT" , "KC_RGUI" , "KC_QUOT" - - ], - ["KC_TAB" , "KC_QUOT" , "KC_COMM" , "KC_DOT" , "KC_P" , "KC_Y", - "KC_F" , "KC_G" , "KC_C" , "KC_R" , "KC_L" , "KC_BSPC", - - "KC_CAPS", "KC_A" , "KC_O" , "KC_E" , "KC_U" , "KC_I", - "KC_D" , "KC_H" , "KC_T" , "KC_N" , "KC_S" , "KC_ENT", - - "KC_LSFT", "KC_SCLN" , "KC_Q" , "KC_J" , "KC_K" , "KC_X" , "KC_GRV", - "KC_ESC" , "KC_B" , "KC_M" , "KC_W" , "KC_V" , "KC_Z" , "KC_RSFT", - - "KC_LCTL", "KC_LGUI" , "KC_LALT" , "MO(5)" , "MO(3)", - "MO(4)" , "KC_SPC" , "KC_LALT" , "KC_RGUI" , "KC_SLSH" - - ], - ["KC_TAB" , "KC_Q" , "KC_W" , "KC_F" , "KC_P" , "KC_B", - "KC_J" , "KC_L" , "KC_U" , "KC_Y" , "KC_SCLN" , "KC_BSPC", - - "KC_CAPS", "KC_A" , "KC_R" , "KC_S" , "KC_T" , "KC_G", - "KC_M" , "KC_N" , "KC_E" , "KC_I" , "KC_O" , "KC_ENT", - - "KC_LSFT", "KC_Z" , "KC_X" , "KC_C" , "KC_D" , "KC_V" , "KC_GRV", - "KC_ESC" , "KC_K" , "KC_H" , "KC_COMM" , "KC_DOT" , "KC_SLSH" , "KC_RSFT", - - "KC_LCTL", "KC_LGUI" , "KC_LALT" , "MO(5)" , "MO(3)", - "MO(4)" , "KC_SPC" , "KC_LALT" , "KC_RGUI" , "KC_QUOT" - - ], - ["KC_NO" , "KC_INS" , "KC_NO" , "KC_NO" , "KC_NO" , "KC_VOLU", - "KC_PGUP", "KC_HOME" , "KC_NO" , "KC_END" , "KC_NO" , "KC_DEL", - - "KC_NO" , "KC_LGUI" , "KC_LALT" , "KC_LCTL" , "KC_LSFT" , "KC_VOLD", - "KC_PGDN", "KC_LEFT" , "KC_UP" , "KC_RGHT" , "KC_NO" , "KC_TRNS", - - "KC_LSFT", "LCTL(KC_Z)" , "LCTL(KC_X)" , "LCTL(KC_C)", "LCTL(KC_V)" , "LCTL(KC_Y)", "KC_MUTE", - "KC_ESC" , "OSM(MOD_RALT)", "LCTL(KC_LEFT)", "KC_DOWN" , "LCTL(KC_RGHT)", "KC_APP" , "KC_TRNS", - - "KC_TRNS", "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_TRNS", - "MO(6)" , "KC_BSPC" , "KC_TRNS" , "KC_TRNS" , "KC_RCTL" - - ], - ["KC_F11" , "KC_EXLM" , "KC_AT" , "KC_HASH" , "KC_DLR" , "KC_PERC", - "KC_CIRC", "KC_AMPR" , "KC_ASTR" , "KC_LPRN" , "KC_RPRN" , "KC_TRNS", - - "KC_F12" , "KC_F1" , "KC_F2" , "KC_F3" , "KC_F4" , "KC_F5", - "KC_PIPE", "KC_LSFT" , "KC_LCTL" , "KC_LALT" , "KC_LGUI" , "KC_TRNS", - - "KC_LSFT", "KC_F6" , "KC_F7" , "KC_F8" , "KC_F9" , "KC_F10" , "KC_PSCR", - "KC_ESC" , "KC_BSLS" , "KC_LBRC" , "KC_RBRC" , "KC_LCBR" , "KC_RCBR" , "KC_TRNS", - - "KC_TRNS", "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "MO(6)", - "KC_TRNS", "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_RCTL" - - ], - ["KC_TAB" , "KC_MINS" , "KC_PLUS" , "KC_EQL" , "KC_SLSH" , "KC_ASTR", - "KC_COMM", "KC_7" , "KC_8" , "KC_9" , "KC_NO" , "KC_TRNS", - - "KC_NO" , "KC_LGUI" , "KC_LALT" , "KC_LCTL" , "KC_LSFT" , "KC_NO", - "KC_0" , "KC_1" , "KC_2" , "KC_3" , "KC_UNDS" , "KC_TRNS", - - "KC_TRNS", "KC_NO" , "KC_NO" , "KC_NO" , "KC_NO" , "KC_NO" , "KC_NO", - "KC_NO" , "KC_DOT" , "KC_4" , "KC_5" , "KC_6" , "KC_NO" , "KC_TRNS", - - "KC_TRNS", "KC_TRNS" , "KC_TRNS" , "KC_TRNS" , "KC_NO", - "KC_NO" , "KC_BSPC" , "KC_TRNS" , "KC_TRNS" , "KC_RCTL" - - ], - ["KC_NO" , "DF(0)" , "DF(1)" , "DF(2)" , "AG_SWAP" , "AG_NORM", - "KC_NO" , "KC_NO" , "KC_NO" , "KC_NO" , "KC_NO" , "KC_NO", - - "KC_NO" , "KC_NO" , "KC_NO" , "KC_NO" , "CL_SWAP" , "CL_NORM", - "RGB_MOD", "RGB_VAI" , "RGB_HUI" , "RGB_SAI" , "KC_NO" , "KC_NO", - - "QK_BOOT", "KC_NO" , "KC_NO" , "KC_NO" , "KC_NO" , "KC_NO" , "KC_NO", - "RGB_TOG", "RGB_RMOD" , "RGB_VAD" , "RGB_HUD" , "RGB_SAD" , "KC_NO" , "KC_NO", - - "KC_NO" , "KC_NO" , "KC_NO" , "KC_NO" , "KC_TRNS", - "KC_TRNS", "KC_NO" , "KC_NO" , "KC_NO" , "KC_NO" - - ] - ], - "author": "@mmccoyd" -} diff --git a/keyboards/handwired/hillside/0_1/keymaps/default/readme.md b/keyboards/handwired/hillside/0_1/keymaps/default/readme.md deleted file mode 100644 index 1890d5808c..0000000000 --- a/keyboards/handwired/hillside/0_1/keymaps/default/readme.md +++ /dev/null @@ -1,212 +0,0 @@ -# Default Keymap - -This default keymap follows many of the norms seen in non-programmable keyboards - to ease initial use of the Hillside keyboard. -It is a starting point for you to tweak over time to better suit _your_ preferences. -You can easily customize it with the - [QMK configurator](https://config.qmk.fm/#/hillside/0_1/LAYOUT) - or with the [via firmware](https://caniusevia.com). - -Some of its key features are: -- A mostly standard base layer with letters, some symbols, shift, modifier and delete keys - in the expected places for non-programmable keyboards. -- QWERTY, Colemak-DH and Dvorak options for the letter and symbol layout. -- Comfortable modifier and function or symbol combinations on the non-base layers - using modifiers on the home row of the navigation/edit, symbol/function and number-pad layers. -- Word navigation and cut/copy/paste keys on the navigation layer. -- A slightly optimized number pad with the more frequently used numbers on the home row. - -We've deliberately omitted some features: -- Combos: because the online configuration tools do not handle them - and because they would add to the initial learning curve, - as helpful to a keymap as a light sprinkling of combos can be. -- Multi-function mod-tap keys, auto shift capitalization and auto-exit modes such as CAPWORD or NUMWORD: - as they may be too large a step for someone new to programmable keyboards. - -## Base Layer - -``` -| TAB | Q | W | E | R | T |---------------------------| Y | U | I | O | P | BKSPC | -| CAPS | A | S | D | F | G |---------------------------| H | J | K | L | ; | ENTER | -| SHIFT | Z | X | C | V | B | ~ |---------------| ESC | N | M | , | . | / | SHIFT | ---------------|CTRL |-----| GUI | ALT | Num | Nav |---| Sym |SPACE| ALT | GUI |-----| ' |-------------- -``` - -The base layer provides a very standard key layout: - -- Return, Tab, backspace and shift keys in the outer columns. -- Alt/option and win/command keys on both thumbs, with the location swappable for windows or mac. -- A space key on the right thumb. - -The differences from a standard layout are: - -- There are three additional "shift" keys - to access the navigation/editing, symbol/function, and number layers. -- Esc and `~ are above the thumbs. -- The Menu and AltGr keys are on a layer. - -The default layout is QWERTY with alternatives of Dvorak and Colemak-DH -and the alt/option and win/command key locations are swappable for windows or mac. - -<details> -<summary>Details of Dvorak and Colemak-DH</summary> -The Dvorak and Colemak-DH base layers - have identical non-alpha and non-symbol keys as the QWERTY base layer. -In the Dvorak layout, the symbol key in the bottom row is the "/?" symbols - so that the same 12 symbols are taken care of on the base layer. - -``` -Dvorak -| TAB | ' | , | . | P | Y |---------------------------| F | G | C | R | L | BKSPC | -| CAPS | A | O | E | U | I |---------------------------| D | H | T | N | S | ENTER | -| SHIFT | ; | Q | J | K | X | ~ |---------------| ESC | B | M | W | V | Z | SHIFT | ---------------|CTRL |-----| GUI | ALT | Num | Nav |---| Sym |SPACE| ALT | GUI |-----| / |-------------- - -Colemak-DH -| TAB | Q | W | F | P | B |---------------------------| J | L | U | Y | ; | BKSPC | -| CAPS | A | R | S | T | G |---------------------------| M | N | E | I | O | ENTER | -| SHIFT | Z | X | C | D | V | ~ |---------------| ESC | K | H | , | . | / | SHIFT | ---------------|CTRL |-----| GUI | ALT | Num | Nav |---| Sym |SPACE| ALT | GUI |-----| ' |-------------- -``` -</details> - -## Navigation, Editing and Media Layer - -``` -| | INS | | | |VOL+ |---------------------------|PG_UP|HOME | | END| | DEL | -| | GUI | ALT |CTRL |SHIFT|VOL- |---------------------------|PG_DN|LEFT | UP |RIGHT| | ENTER | -| SHIFT |UNDO | CUT |COPY |PASTE|REDO |MUTE |---------------| ESC |RALT |WORDL|DOWN |WORDR|MENU | SHIFT | ---------------|CTRL |-----| GUI | ALT | Num | *** |---| Adj |BSPC | ALT | GUI |-----|CTRL |-------------- -``` -Holding down the Nav key accesses a navigation and editing layer: - -- Navigation arrows are on and below the right home row in a cross pattern. - This feels more natural for a column stagger keyboard than an inverted T. - The keys below that move left or right by a word. - Home, end, and page up/down are beside them. -- Modifiers in the left home row make it easier to use the arrows - to select text with the shift key or move between desktops or tabs. -- Editing keys appear on the lower left. - The edit keys, modifiers and arrows make it easy to move text around without leaving the layer. -- Delete is in the upper right, and a backspace key is on the thumb. -- The base layer modifiers and escape are in the same spots as on the base layer, - and a right-hand control key is added. -- Media volume and play keys are on the left, accessible with one hand. -- Menu and AltGr keys fill out the layer. -- A few keys do nothing and are available for more user-specific needs. - -## Symbol and Function Layer - -``` -| F11 | ! | @ | # | $ | % |---------------------------| ^ | & | * | ( | ) | BSPC | -| F12 | F1 | F2 | F3 | F4 | F5 |---------------------------| | |SHIFT|CTRL | ALT | GUI | ENTER | -| SHIFT | F6 | F7 | F8 | F9 | F10 |PRTSC|---------------| ESC | \ | [ | ] | { | } | SHIFT | ---------------|CTRL |-----| GUI | ALT | Num | Adj |---| *** |SPACE| ALT | GUI |-----|CTRL |-------------- -``` -Holding down the Sym key accesses a layer of symbol and function keys: - -- The symbols usually found on the number keys are in the top row. - If desired, you can use these positions for other things, - as the symbols are also accessible from the number pad layer with the shift key. -- Several more symbols appear on the right. -- The function keys are on the left, beginning with two rows of five. -- A row of modifiers in the home row allows the comfortable creation of any modifier and function key combination. -- The base layer modifier and escape keys are still available, as is a right-hand control key. - -## Number Pad and Algebraic Layer -``` -| TAB | - | + | = | / | * |---------------------------| . | 7 | 8 | 9 | | BSPC | -| | GUI | ALT |CTRL |SHIFT| |---------------------------| 0 | 1 | 2 | 3 | _ | ENTER | -| SHIFT | | | | | | |---------------| ESC | , | 4 | 5 | 6 | | SHIFT | ---------------|CTRL |-----| GUI | ALT | *** | |---| |BSPC | ALT | GUI |-----|CTRL |-------------- -``` -Holding down the Num key accesses a number pad and arithmetic symbols: - -- The number pad has the lowest numbers swapped into the home row as these are the most commonly used. -- A row of modifiers in the home row allows the comfortable creation of any modifier and number combination. -- Symbols commonly used with numbers fill out the layer - and can be combined with the home row mods or the existing base layer modifiers on the right hand. -- Several keys remain unused and await more user-specific needs. - - -## Adjust Layer -``` -| |QWERT|DVORK|COLMK|AG_SWAP|AG_NORM|-----------------------| | | | | | | -| | | | |CTR_S|CTR_N|---------------------------|MOD+ |BRI+ |HUE+ |SAT+ | | | -| QK_BOOT | | | | | | |--------------|RGBTOG|MOD- |BRI- |HUE- |SAT- | | | ---------------| |-----| | | | *** |---| *** | | | |-----| |-------------- -``` -Simultaneously holding down the Nav and Sym keys enables keys to adjust various keyboard settings: - -- The base layer can be set to QWERTY, Colemak-DH or Dvorak, - but the keyboard reverts to QWERTY each time it is plugged in. -- Alt/option and GUI/command can be swapped for mac users or restored to the windows norm. - This setting persists over power loss. -- The backlight LEDs can be enabled, disabled, and controlled. - These settings also persist over power loss. - - -## Make it Yours - -If you are coming from a traditional keyboard, - with a row-staggered layout and a large set of physical keys, - learning to use a column staggered (ergo) and layer-based keyboard, - which uses layers instead of finger reaches to access numbers, symbols and functions, - will be an adjustment for your muscle memory and your mental keyboard map. -This default layout tries to simplify that adjustment by keeping things in the expected spots when possible. - -Yet this layout is only a decent compromise and is not optimal for each user. - -The online configurator makes it easy to tweak this layout to your needs. -You can add additional layers or completely switch around what these do. - -Some changes you might consider making: -- Put some of your most-used key combinations on the unused keys on the navigation layer. -- If you are on a mac, switch the editing and word navigation keys from ctrl-x to cmd-x. -- Change the shift keys to one-shot shift keys, - where pressing and releasing them shifts the next key pressed. - That is much easier on your hands than holding them down. - Yet, they can still be held as usual if desired. -- Instead of holding down the thumb key to keep the symbol layer active, - you could use a one-shot layer key. - One-shot modifiers are likely less stress on your hands and may even be faster. - You would still be able to hold it down instead. -- Instead of holding down the key for the number pad layer, - you could make it a layer toggle, like caps lock is a capitalization toggle key. - -Here are some other keymaps for inspiration and ideas: -- The [Ferris default](https://github.com/qmk/qmk_firmware/tree/master/keyboards/ferris/keymaps/default) uses more advanced features as it has far fewer keys to work with. -- The [Miryoku](https://github.com/manna-harbour/miryoku/tree/master/docs/reference) keymap ensures that all modifiers are comfortably available with each character key. -- The [Kyria default](https://github.com/qmk/qmk_firmware/tree/master/keyboards/splitkb/kyria/keymaps/default) has different keymap choices and a couple more keys. - -A good metaphor is to think of your keymap as a bonsai tree that you tweak slightly over time - in response to ideas of how it might serve you better. - - -## Why no keymap.c - -Via and the online configurator provide straightforward visual ways to work with a simple layout, - and both use a .json keymap format. -So this default ```keymap.json``` was created with the online configurator - and formatted for easier reading and editing. - -If you wish, you can edit the ```keymap.json``` directly in a text editor, optionally use the below ```json2hill.py``` to restore the spacing, and then compile and flash it. - -Or, you can use the graphical configurator to edit the keymap. To do that: - -- Open the [QMK configurator](https://config.qmk.fm/#/handwired/hillside/LAYOUT) -- Using the green up arrow button, load the keymap from ```qmk_firmware/keyboards/handwired/hillside/keymaps/default/keymap.json``` -- Make the changes you wish to the layout -- Save the keymap using the green down arrow button. -- Copy those changes back into your QMK repository and reformat for easy reading using the format script: -``` -./keyboards/handwired/hillside/0_1/keymaps/json2hill.py --input <Your download directory>/default.json > ./keyboards/handwired/hillside/0_1/keymaps/default/keymap.json -``` - You may need to make that script executable with ```chmod +x```. After your keymap is safely copied and formated, you may want to remove the keymap from your download directory so later downloads will automatically receive the same file name. - -After either method of editing, compile and flash the keymap as usual. - -You can combine a .json based keymap with more advanced features specified in .c files - with a bit more complexity. -For example, see -[pierrec83's Kyria map](https://github.com/qmk/qmk_firmware/tree/master/keyboards/splitkb/kyria/keymaps/pierrec83). diff --git a/keyboards/handwired/hillside/48/48.c b/keyboards/handwired/hillside/48/48.c new file mode 100644 index 0000000000..a1d2c2f6e4 --- /dev/null +++ b/keyboards/handwired/hillside/48/48.c @@ -0,0 +1,4 @@ +// Copyright 2022 Michael McCoyd (@mmccoyd) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "48.h" diff --git a/keyboards/handwired/hillside/0_1/0_1.h b/keyboards/handwired/hillside/48/48.h index 0aeefdf630..65e1aaee30 100644 --- a/keyboards/handwired/hillside/0_1/0_1.h +++ b/keyboards/handwired/hillside/48/48.h @@ -1,4 +1,4 @@ -// Copyright 2021 Michael McCoyd (@mmccoyd) +// Copyright 2022 Michael McCoyd (@mmccoyd) // SPDX-License-Identifier: GPL-2.0-or-later #pragma once diff --git a/keyboards/handwired/hillside/0_1/config.h b/keyboards/handwired/hillside/48/config.h index c83b23d0e8..c83b23d0e8 100644 --- a/keyboards/handwired/hillside/0_1/config.h +++ b/keyboards/handwired/hillside/48/config.h diff --git a/keyboards/handwired/hillside/0_1/info.json b/keyboards/handwired/hillside/48/info.json index 7e128d5191..2325c2d8d3 100644 --- a/keyboards/handwired/hillside/0_1/info.json +++ b/keyboards/handwired/hillside/48/info.json @@ -2,7 +2,7 @@ "manufacturer": "mmccoyd", "maintainer": "mmccoyd", - "keyboard_name": "Hillside", + "keyboard_name": "Hillside48", "url": "http://github.com/mmccoyd/hillside/", "tags": ["split", "column stagger", "choc v1", "choc spaced" ], @@ -44,7 +44,7 @@ "LAYOUT": { "layout": [ - {"label": "Tab", "x": 0, "y": 0.93}, + {"label": "`", "x": 0, "y": 0.93}, {"label": "Q", "x": 1, "y": 0.93}, {"label": "W", "x": 2, "y": 0.31}, {"label": "E", "x": 3, "y": 0}, @@ -59,7 +59,7 @@ {"label": "Backspace", "x": 14.5, "y": 0.93}, - {"label": "Ctrl", "x": 0, "y": 1.93}, + {"label": "Tab", "x": 0, "y": 1.93}, {"label": "A", "x": 1, "y": 1.93}, {"label": "S", "x": 2, "y": 1.31}, {"label": "D", "x": 3, "y": 1}, @@ -71,7 +71,7 @@ {"label": "K", "x": 11.5, "y": 1}, {"label": "L", "x": 12.5, "y": 1.31}, {"label": ";", "x": 13.5, "y": 1.93}, - {"label": "'", "x": 14.5, "y": 1.93}, + {"label": "Enter", "x": 14.5, "y": 1.93}, {"label": "Shift", "x": 0, "y": 2.93}, @@ -80,9 +80,9 @@ {"label": "C", "x": 3, "y": 2}, {"label": "V", "x": 4, "y": 2.28}, {"label": "B", "x": 5, "y": 2.42}, - {"label": "`", "x": 6, "y": 2.78}, + {"label": "Esc", "x": 6, "y": 2.78}, - {"label": "Esc", "x": 8.5, "y": 2.78}, + {"label": "Caps", "x": 8.5, "y": 2.78}, {"label": "N", "x": 9.5, "y": 2.42}, {"label": "M", "x": 10.5, "y": 2.28}, {"label": ",", "x": 11.5, "y": 2}, @@ -91,18 +91,18 @@ {"label": "Shift", "x": 14.5, "y": 2.93}, - {"label": "Enter", "x": 2, "y": 3.31}, + {"label": "Ctrl", "x": 2, "y": 3.31}, {"label": "Gui", "x": 3.5, "y": 3.28}, {"label": "Alt", "x": 4.5, "y": 3.42}, - {"label": "Num", "x": 5.5, "y": 3.78}, - {"label": "Nav", "x": 6.5, "y": 4.14}, + {"label": "Sym", "x": 5.5, "y": 3.78}, + {"label": "Shift", "x": 6.5, "y": 4.14}, - {"label": "Sym", "x": 8, "y": 4.14}, + {"label": "Nav", "x": 8, "y": 4.14}, {"label": "Space", "x": 9, "y": 3.78}, {"label": "Alt", "x": 10, "y": 3.42}, {"label": "Gui", "x": 11, "y": 3.28}, - {"label": "App", "x": 12.5, "y": 3.31} + {"label": "'", "x": 12.5, "y": 3.31} ] } } diff --git a/keyboards/handwired/hillside/48/keymaps/default/config.h b/keyboards/handwired/hillside/48/keymaps/default/config.h new file mode 100644 index 0000000000..1f71d42e67 --- /dev/null +++ b/keyboards/handwired/hillside/48/keymaps/default/config.h @@ -0,0 +1,9 @@ +// Copyright 2022 Michael McCoyd (@mmccoyd) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +// Some boards have issues detecting handedness using the vbus voltage, +// such as Elite-C v3, but not v3.1 on, and apparently some ProMicro boards. +// For those boards, use usb detection instead. +// #define SPLIT_USB_DETECT diff --git a/keyboards/handwired/hillside/48/keymaps/default/keymap.json b/keyboards/handwired/hillside/48/keymaps/default/keymap.json new file mode 100644 index 0000000000..364ab726a0 --- /dev/null +++ b/keyboards/handwired/hillside/48/keymaps/default/keymap.json @@ -0,0 +1,88 @@ +{ "version": 1, + "notes": "", + "documentation": "\"This file is a QMK Configurator export. You can import this at <https://config.qmk.fm>. It can also be used directly with QMK's source code.\n\nTo setup your QMK environment check out the tutorial: <https://docs.qmk.fm/#/newbs>\n\nYou can convert this file to a keymap.c using this command: `qmk json2c {keymap}`\n\nYou can compile this keymap using this command: `qmk compile {keymap}`\"\n", + "keyboard": "handwired/hillside/48", + "keymap": "default", + "layout": "LAYOUT", + "layers": [ + ["KC_GRV" , "KC_Q" , "KC_W" , "KC_E" , "KC_R" , "KC_T", + "KC_Y" , "KC_U" , "KC_I" , "KC_O" , "KC_P" , "KC_BSPC", + + "KC_TAB" , "KC_A" , "KC_S" , "KC_D" , "KC_F" , "KC_G", + "KC_H" , "KC_J" , "KC_K" , "KC_L" , "KC_SCLN" , "KC_ENT", + + "KC_LSFT" , "KC_Z" , "KC_X" , "KC_C" , "KC_V" , "KC_B" , "KC_ESC", + "CAPS_WORD" , "KC_N" , "KC_M" , "KC_COMM", "KC_DOT" , "KC_SLSH" , "KC_RSFT", + + "KC_LCTL" , "KC_LGUI" , "KC_LALT", "MO(3)" , "OSM(MOD_LSFT)", + "MO(4)" , "KC_SPC" , "KC_LALT", "KC_RGUI", "KC_QUOT" + + ], + ["KC_GRV" , "KC_QUOT" , "KC_COMM", "KC_DOT" , "KC_P" , "KC_Y", + "KC_F" , "KC_G" , "KC_C" , "KC_R" , "KC_L" , "KC_BSPC", + + "KC_TAB" , "KC_A" , "KC_O" , "KC_E" , "KC_U" , "KC_I", + "KC_D" , "KC_H" , "KC_T" , "KC_N" , "KC_S" , "KC_ENT", + + "KC_LSFT" , "KC_SCLN" , "KC_Q" , "KC_J" , "KC_K" , "KC_X" , "KC_ESC", + "CAPS_WORD" , "KC_B" , "KC_M" , "KC_W" , "KC_V" , "KC_Z" , "KC_RSFT", + + "KC_LCTL" , "KC_LGUI" , "KC_LALT", "MO(3)" , "OSM(MOD_LSFT)", + "MO(4)" , "KC_SPC" , "KC_LALT", "KC_RGUI", "KC_SLSH" + + ], + ["KC_GRV" , "KC_Q" , "KC_W" , "KC_F" , "KC_P" , "KC_B", + "KC_J" , "KC_L" , "KC_U" , "KC_Y" , "KC_SCLN" , "KC_BSPC", + + "KC_TAB" , "KC_A" , "KC_R" , "KC_S" , "KC_T" , "KC_G", + "KC_M" , "KC_N" , "KC_E" , "KC_I" , "KC_O" , "KC_ENT", + + "KC_LSFT" , "KC_Z" , "KC_X" , "KC_C" , "KC_D" , "KC_V" , "KC_ESC", + "CAPS_WORD" , "KC_K" , "KC_H" , "KC_COMM", "KC_DOT" , "KC_SLSH" , "KC_RSFT", + + "KC_LCTL" , "KC_LGUI" , "KC_LALT", "MO(3)" , "OSM(MOD_LSFT)", + "MO(4)" , "KC_SPC" , "KC_LALT", "KC_RGUI", "KC_QUOT" + + ], + ["KC_HOME" , "KC_EXLM" , "KC_AT" , "KC_HASH", "KC_DLR" , "KC_PERC", + "KC_CIRC" , "KC_AMPR" , "KC_ASTR", "KC_LPRN", "KC_RPRN" , "KC_DEL", + + "KC_END" , "KC_LGUI" , "KC_LALT", "KC_LCTL", "KC_LSFT" , "KC_INS", + "KC_LBRC" , "KC_RBRC" , "KC_MINS", "KC_EQL" , "KC_BSLS" , "KC_TRNS", + + "KC_LSFT" , "KC_NO" , "KC_VOLD", "KC_MUTE", "KC_VOLU" , "KC_MPLY" , "OSM(MOD_RALT)", + "KC_APP" , "KC_LCBR" , "KC_RCBR", "KC_UNDS", "KC_PLUS" , "KC_PIPE" , "KC_TRNS", + + "KC_TRNS" , "KC_TRNS" , "KC_TRNS", "KC_TRNS", "OSM(MOD_LSFT)", + "MO(5)" , "KC_TRNS" , "KC_TRNS", "KC_TRNS", "KC_RCTL" + + ], + ["LCTL(KC_X)", "KC_1" , "KC_2" , "KC_3" , "KC_4" , "KC_5", + "KC_6" , "KC_7" , "KC_8" , "KC_9" , "KC_0" , "KC_BSPC", + + "LCTL(KC_C)", "KC_LEFT" , "KC_DOWN", "KC_UP" , "KC_RGHT" , "LCTL(KC_V)", + "KC_PGUP" , "KC_RSFT" , "KC_RCTL", "KC_LALT", "KC_RGUI" , "KC_PGDN", + + "KC_LSFT" , "KC_F1" , "KC_F2" , "KC_F3" , "KC_F4" , "KC_F5" , "LCTL(KC_Z)", + "LCTL(KC_Y)", "KC_F6" , "KC_F7" , "KC_F8" , "KC_F9" , "KC_F10" , "KC_TRNS", + + "KC_TRNS" , "KC_TRNS" , "KC_TRNS", "MO(5)" , "KC_TRNS", + "KC_TRNS" , "KC_TRNS" , "KC_TRNS", "KC_TRNS", "KC_RCTL" + + ], + ["KC_NO" , "DF(0)" , "DF(1)" , "DF(2)" , "AG_SWAP" , "CG_SWAP", + "KC_NO" , "KC_F11" , "KC_F12" , "KC_PSCR", "KC_NO" , "KC_NO", + + "KC_NO" , "KC_NO" , "KC_NO" , "KC_NO" , "AG_NORM" , "CG_NORM", + "RGB_MOD" , "RGB_VAI" , "RGB_HUI", "RGB_SAI", "KC_NO" , "KC_NO", + + "KC_NO" , "KC_LGUI" , "KC_LALT", "KC_LCTL", "KC_LSFT" , "KC_NO" , "KC_NO", + "RGB_TOG" , "RGB_RMOD", "RGB_VAD", "RGB_HUD", "RGB_SAD" , "KC_NO" , "QK_BOOT", + + "KC_NO" , "KC_NO" , "KC_NO" , "KC_TRNS", "KC_NO", + "KC_TRNS" , "KC_NO" , "KC_NO" , "KC_NO" , "KC_NO" + + ] + ], + "author": "@mmccoyd" +} diff --git a/keyboards/handwired/hillside/48/keymaps/default/readme.md b/keyboards/handwired/hillside/48/keymaps/default/readme.md new file mode 100644 index 0000000000..9bf294eff0 --- /dev/null +++ b/keyboards/handwired/hillside/48/keymaps/default/readme.md @@ -0,0 +1,159 @@ +# Default Keymap + +For easier initial use, this keymap follows the layout of more standard keyboards where possible. It is a starting point for you to tweak over time to suit your preferences better. You can easily customize it with the [QMK configurator](https://config.qmk.fm/#/handwired/hillside/48/LAYOUT). + +Some of its key features are: +- Numbers and symbols along the top row of their layers for familiarity. +- Comfortable combination of modifier and function or symbol on the non-base layers + using modifiers on the home row of the symbol and number/function layers. +- A layer with both navigation and editing keys allows document editing without leaving the layer. +- QWERTY, Colemak-DH and Dvorak base layer options. + +## Base Layer + +``` +| ` | Q | W | E | R | T |---------------------------| Y | U | I | O | P | BKSPC | +| TAB | A | S | D | F | G |---------------------------| H | J | K | L | ; | ENTER | +| SHIFT | Z | X | C | V | B | ESC |---------------|CAPS | N | M | , | . | / | SHIFT | +--------------|CTRL |-----| GUI | ALT | Sym |SHIFT|---| Nav |SPACE| ALT | GUI |-----| ' |-------------- +``` + +The base layer provides a very standard key layout with five differences: + +- Numbers, functions and most symbols are accessed with number and symbol shift keys. +- Escape is on the left thumb. +- The left thumb has a shift key that affects the next key pressed. So to get 'A', press and release the thumb shift key, press 'a'. You can also hold the key down, and it will work like a standard shift key. There are still standard shift keys at either end of the keyboard. +- The right upper thumb turns on a mode that capitalizes all letters until something other than a letter, digit, dash, underscore, delete or backspace is typed. The caps word mode also times out after five seconds of no key presses. +- The Menu and AltGr keys are on a layer. + +The default layout is QWERTY with alternatives of Dvorak and Colemak-DH, and the alt/option and the win/command key locations are swappable for windows or mac. + + +<details> +<summary>Details of Dvorak and Colemak-DH</summary> +The Dvorak and Colemak-DH base layers + have identical non-alpha and non-symbol keys as the QWERTY base layer. + +``` +Dvorak +| ` | ' | , | . | P | Y |---------------------------| F | G | C | R | L | BKSPC | +| TAB | A | O | E | U | I |---------------------------| D | H | T | N | S | ENTER | +| SHIFT | ; | Q | J | K | X | ESC |---------------|CAPS | B | M | W | V | Z | SHIFT | +--------------|CTRL |-----| GUI | ALT | Sym |SHIFT|---| Nav |SPACE| ALT | GUI |-----| / |-------------- + +Colemak-DH +| ` | Q | W | F | P | B |---------------------------| J | L | U | Y | ; | BKSPC | +| TAB | A | R | S | T | G |---------------------------| M | N | E | I | O | ENTER | +| SHIFT | Z | X | C | D | V | ESC |---------------|CAPS | K | H | , | . | / | SHIFT | +--------------|CTRL |-----| GUI | ALT | Sym |SHIFT|---| Nav |SPACE| ALT | GUI |-----| ' |-------------- +``` +</details> + +## Symbol and Media Layer + +``` +| HOME | ! | @ | # | $ | % |---------------------------| ^ | & | * | ( | ) | DEL | +| END | GUI | ALT |CTRL |SHIFT| INS |---------------------------| [ | ] | - | = | \ | ENTER | +| SHIFT | |VOL- |MUTE |VOL+ |PLAY |OSM ALT |------------|MENU | { | } | _ | + | | | SHIFT | +--------------|CTRL |-----| GUI | ALT | *** |SHIFT|---| Adj |SPACE| ALT | GUI |-----|CTRL |-------------- +``` +Holding down the SYM key accesses the symbol layer: + +- The symbols not present on the base layer are along the top row and right side, similar to a full-size keyboard. +- Duplicates of the modifier keys are along the left home keys. This allows a very comfortable combination of any set of modifiers plus a key on the right side of the board. +- Forward delete is on the upper right, taking backspace's place. +- The Windows OS application menu key is on the upper right thumb. +- The AltGr key affects the next key pressed so that it can combine with a key on any layer. It changes the meaning of the next key pressed after the AltGr key is pressed and released. For example, to do AltGr-h: press SYM, press and release AltGr, release SYM, press and release h. + +## Navigation, Editing, Number and Function Layer + +``` +| CUT | 1 | 2 | 3 | 4 | 5 |---------------------------| 6 | 7 | 8 | 9 | 0 | BSPC | +| COPY |LEFT |DOWN | UP |RIGHT|PASTE|---------------------------|PG_UP|SHIFT|CTRL | ALT | GUI | PG_DN | +| SHIFT | F1 | F2 | F3 | F4 | F5 |UNDO |---------------|REDO | F6 | F7 | F8 | F9 | F10 | SHIFT | +--------------|CTRL |-----| GUI | ALT | Adj |SHIFT|---| *** |SPACE| ALT | GUI |-----|CTRL |-------------- +``` +Holding down the Nav/Edit key accesses the navigation, editing, number and function layer: + +- Numbers are along the top row, and function keys are on the bottom row. +- The arrow keys on the left can be combined with the home row modifiers on the right to easily move around and select text, which can then be cut, copied and pasted. + + +## Adjust Layer +``` +| |QWERT|DVORK|COLMK|AG_SWAP|CTR_SWAP|----------------------| | F11 | F12 |PR_SCR| | | +| | | | |AG_NORM|CTR_NORM|----------------------|MOD+ |BRI+ |HUE+ |SAT+ | | | +| | GUI | ALT |CTRL |SHIFT| | |--------------|RGBTOG|MOD- |BRI- |HUE- |SAT- | | BOOT | +--------------| |-----| | | *** | |---| *** | | | |-----| |-------------- +``` +Simultaneously holding down the Sym and Nav/Edit keys enables keys to adjust keyboard settings: + +- The base layer can be set to QWERTY, Colemak-DH or Dvorak, although the keyboard reverts to QWERTY each time it is plugged in. +- Alt/option and GUI/command can be swapped for mac users or restored to the windows norm. +- The backlight LEDs can be enabled, disabled, and controlled. +- BOOT allows loading new firmware, such as for keymap changes. +- The remaining Fn keys are here with modifiers to use with them. + +## Make it Yours + +If you are coming from a traditional keyboard, + with a row-staggered layout and a large set of physical keys, + learning to use a column staggered (ergo) and layer-based keyboard, + which uses layers instead of finger reaches to access numbers, symbols and functions, + will be an adjustment for your muscle memory and your mental keyboard map. +This default layout tries to simplify that adjustment by keeping things in the expected spots when possible. + +Yet this layout is only a decent compromise and is not optimal for each user. +The online configurator makes it easy to tweak this layout to your needs. +You can add additional layers or completely switch around what these do. + +A good metaphor is to think of your keymap as a bonsai tree that you tweak slightly over time + in response to ideas of how it might serve you better. + +Some changes you might consider making: +- If you are on a mac, switch the editing keys from ctrl-x to cmd-x. +- Change the shift keys to one-shot shift keys, + where pressing and releasing them shifts the next key pressed. + That is much easier on your hands than holding them down. + Yet, they can still be held as usual if desired. +- Instead of holding down the thumb key to keep the symbol layer active, + you could use a one-shot layer key. + One-shot modifiers are likely less stress on your hands and may even be faster. + You would still be able to hold it down instead. + +Here are some other keymaps for inspiration and ideas: +- The [Ferris default](https://github.com/qmk/qmk_firmware/tree/master/keyboards/ferris/keymaps/default) uses more advanced features as it has far fewer keys. +- The [Miryoku](https://github.com/manna-harbour/miryoku/tree/master/docs/reference) keymap ensures that all modifiers are comfortably available with each character key. +- The [Kyria default](https://github.com/qmk/qmk_firmware/tree/master/keyboards/splitkb/kyria/keymaps/default) has different keymap choices and a couple more keys. + + + +## Why no keymap.c + +The online configurator provides a straightforward visual way to work with a simple layout + and uses a .json keymap format. +So this default ```keymap.json``` was created with the online configurator + and formatted for easier reading and editing. + +If you wish, you can edit the ```keymap.json``` directly in a text editor, optionally use the below ```json2hill48.py``` to restore the spacing, and then compile and flash it. + +Or, you can use the graphical configurator to edit the keymap. To do that: + +- Open the [QMK configurator](https://config.qmk.fm/#/handwired/hillside/48/LAYOUT) +- Using the green up arrow button, load the keymap from ```qmk_firmware/keyboards/handwired/hillside/48/keymaps/default/keymap.json``` +- Make the changes you wish to the layout +- Save the keymap using the green down arrow button. +- Copy those changes back into your QMK repository and reformat for easy reading using the format script: +``` +./keyboards/handwired/hillside/48/keymaps/json2hill48.py \ + --input <Your download directory>/default.json \ + > ./keyboards/handwired/hillside/48/keymaps/default/keymap.json +``` + You may need to make that script executable with ```chmod +x```. After your keymap is safely copied and formatted, you may want to remove the keymap from your download directory so later downloads will automatically receive the same file name. + +After either method of editing, compile and flash the keymap as usual. + +You can combine a .json based keymap with more advanced features specified in .c files + with a bit more complexity. +For example, see +[pierrec83's Kyria map](https://github.com/qmk/qmk_firmware/tree/master/keyboards/splitkb/kyria/keymaps/pierrec83).
\ No newline at end of file diff --git a/keyboards/handwired/hillside/48/keymaps/default/rules.mk b/keyboards/handwired/hillside/48/keymaps/default/rules.mk new file mode 100644 index 0000000000..4711d2ff74 --- /dev/null +++ b/keyboards/handwired/hillside/48/keymaps/default/rules.mk @@ -0,0 +1 @@ +CAPS_WORD_ENABLE = yes diff --git a/keyboards/handwired/hillside/0_1/keymaps/json2hill.py b/keyboards/handwired/hillside/48/keymaps/json2hill48.py index a9971c0d78..c4fb5b1037 100755 --- a/keyboards/handwired/hillside/0_1/keymaps/json2hill.py +++ b/keyboards/handwired/hillside/48/keymaps/json2hill48.py @@ -1,9 +1,9 @@ #!/usr/bin/env python3 -# Copyright 2020-2021 Pierre Viseu Chevalier, Michael McCoyd (@pierrechevalier83, @mmccoyd) +# Copyright 2020-2022 Pierre Viseu Chevalier, Michael McCoyd (@pierrechevalier83, @mmccoyd) # SPDX-License-Identifier: GPL-2.0-or-later -"""Pretty print keymap json in more readable row/side organized format.""" +"""Pretty print keymap json in more readable row/side organized format, based on ROW_SIZES.""" import argparse import json @@ -28,14 +28,20 @@ For example, for one layer: ], """ -indent_level=4 # number of spaces of initial indent per output line +# The structure of the keymap. Tuples describing row sizes. +# (<Keys upto and including (one-indexed) keycount x> <are in half rows of y>) +ROW_SIZES = [(24, 6), + (38, 7), + (48, 5), + ] + +### +### Below here should not need to changed for different keyboards +### -# The structure of the keymap -# [[Endpoint of sides with identical widths, side width, mapping to column],...] -KEYS_TO_COL = [[24, 6, lambda n: n % 6], - [38, 7, lambda n: (n - 24) % 7], - [48, 5, lambda n: (n - 38) % 5]] -LAST_KEY = KEYS_TO_COL[-1][0] - 1 +LAST_KEY = ROW_SIZES[-1][0] - 1 + +indent_level=4 # number of spaces of initial indent per output line def parse_cli(): parser = argparse.ArgumentParser(description='Hillside keymap formatter') @@ -54,12 +60,15 @@ class Column(NamedTuple): def get_col(key_index): """Return Column for key_index.""" - for keys, num_cols, col_fn in KEYS_TO_COL: - if key_index < keys: - col_num = col_fn(key_index) - return Column(col_num, + index_prior = 0 # index of last key in rows of the prior size + for keys_upto, num_cols in ROW_SIZES: # For row sizes from top + if key_index < keys_upto: # Find range key_index is in + col_num = (key_index - index_prior) % num_cols + return Column(col_num, # Return column plus side and row ends flags ends_side=col_num == num_cols - 1, - ends_row=(keys - 1 - key_index) % (2 * num_cols) == 0) + ends_row=(keys_upto - 1 - key_index) % + (2 * num_cols) == 0) + index_prior = keys_upto # Big O: row ranges * keys, but range is small def format_layers(layers): formatted = indent_level * " " + "\"layers\": [\n" @@ -133,4 +142,5 @@ def main(): keymap_json = json.loads(args.input.read()) print(format_keymap(keymap_json)) -main() +if __name__ == "__main__": + main() diff --git a/keyboards/handwired/hillside/0_1/keymaps/via/keymap.json b/keyboards/handwired/hillside/48/keymaps/via/keymap.json index a015f0241c..b4848a72ee 100644 --- a/keyboards/handwired/hillside/0_1/keymaps/via/keymap.json +++ b/keyboards/handwired/hillside/48/keymaps/via/keymap.json @@ -1,6 +1,6 @@ { "version": 1, "notes": "", - "keyboard": "handwired/hillside/0_1", + "keyboard": "handwired/hillside/48", "keymap": "via", "layout": "LAYOUT", "layers": [ diff --git a/keyboards/handwired/hillside/0_1/readme.md b/keyboards/handwired/hillside/48/readme.md index f1ff0f8506..ec6dffc0f2 100644 --- a/keyboards/handwired/hillside/0_1/readme.md +++ b/keyboards/handwired/hillside/48/readme.md @@ -2,7 +2,7 @@ ![hillside](https://imgur.com/XW0rX13.png) -[Hillside](https://github.com/mmccoyd/hillside) +[Hillside 48](https://github.com/mmccoyd/hillside) is a split ergonomic keyboard with 3x6+4+2 choc-spaced keys with aggressive column stagger, a longer thumb arc and a breakoff outer-pinky column. @@ -13,11 +13,11 @@ Make example for this keyboard (after setting up your build environment): - make handwired/hillside/0_1:default + make handwired/hillside/48:default Flashing example for this keyboard: - make handwired/hillside/0_1:default:flash + make handwired/hillside/48:default:flash ## Bootloader diff --git a/keyboards/handwired/hillside/0_1/rules.mk b/keyboards/handwired/hillside/48/rules.mk index 2501147ea8..2501147ea8 100644 --- a/keyboards/handwired/hillside/0_1/rules.mk +++ b/keyboards/handwired/hillside/48/rules.mk diff --git a/keyboards/handwired/hnah108/config.h b/keyboards/handwired/hnah108/config.h index d430e008dd..825edd40ca 100644 --- a/keyboards/handwired/hnah108/config.h +++ b/keyboards/handwired/hnah108/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { F7, F6, F5, F4, F1, C7, B4, B5, B6, C6 } #define MATRIX_COL_PINS { F0, E6, B0, D0, D1, D2, D3, D5, D4, D6, D7 } -#define UNUSED_PINS /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/hnah40/config.h b/keyboards/handwired/hnah40/config.h index 8080cf1138..6d4e8f7d33 100644 --- a/keyboards/handwired/hnah40/config.h +++ b/keyboards/handwired/hnah40/config.h @@ -34,7 +34,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { B4, B5, B3, D4 } #define MATRIX_COL_PINS { B0, D7, D6, D5, B2, B1, C0, C1, C2, C3, D1 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/ibm122m/config.h b/keyboards/handwired/ibm122m/config.h index 9c9b7a09a9..e9f99eaba3 100644 --- a/keyboards/handwired/ibm122m/config.h +++ b/keyboards/handwired/ibm122m/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_COL_PINS { E6, B7, D0, D1, D2, D3, D4, D5, D6, D7, E0, E1, C0, C1, C2, C3, C4, C5, C7, F1 } #define MATRIX_ROW_PINS { F0, B5, B4, B3, B2, B1, B0, E7 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION ROW2COL diff --git a/keyboards/handwired/jn68m/config.h b/keyboards/handwired/jn68m/config.h index 2a0f34cab1..cabfebbfcd 100644 --- a/keyboards/handwired/jn68m/config.h +++ b/keyboards/handwired/jn68m/config.h @@ -26,7 +26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. /* key matrix pins */ #define MATRIX_ROW_PINS { B0, B1, D5, D3, D2 } #define MATRIX_COL_PINS { F0, F1, F4, F5, F6, F7, C7, C6, B6, B5, B4, D7, D6, D4, E6, D1 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/jopr/config.h b/keyboards/handwired/jopr/config.h index 484415752b..5625f99521 100644 --- a/keyboards/handwired/jopr/config.h +++ b/keyboards/handwired/jopr/config.h @@ -9,7 +9,6 @@ /* key matrix pins */ #define MATRIX_ROW_PINS { D0, D6, D2, D4, D3, D5, D7, C6, B6, F5 } #define MATRIX_COL_PINS { B3, B2, B1, B0, F7, E6, F6, B5, C7, B4, D1 } -#define UNUSED_PINS { B7 } /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/jot50/config.h b/keyboards/handwired/jot50/config.h index 5d3c6773e1..d3ce848df6 100644 --- a/keyboards/handwired/jot50/config.h +++ b/keyboards/handwired/jot50/config.h @@ -9,7 +9,6 @@ /* pro_micro pin-out */ #define MATRIX_ROW_PINS { D7, E6, B4, B6, B2 } #define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, D3, D2, D1, D0, D4, C6 } -#define UNUSED_PINS /* leds */ #define BACKLIGHT_LEVELS 3 diff --git a/keyboards/handwired/jotanck/config.h b/keyboards/handwired/jotanck/config.h index f1ae28b9dc..9468505c44 100644 --- a/keyboards/handwired/jotanck/config.h +++ b/keyboards/handwired/jotanck/config.h @@ -9,7 +9,6 @@ /* pro_micro pin-out */ #define MATRIX_ROW_PINS { D7, E6, B6, B2 } #define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, D3, D2, D1, D0, D4, C6 } -#define UNUSED_PINS /* leds */ #define JOTANCK_LEDS diff --git a/keyboards/handwired/jotpad16/config.h b/keyboards/handwired/jotpad16/config.h index 0afe9be035..b0e3ebcf8c 100644 --- a/keyboards/handwired/jotpad16/config.h +++ b/keyboards/handwired/jotpad16/config.h @@ -9,7 +9,6 @@ /* pro_micro pin-out */ #define MATRIX_ROW_PINS { B6, B2, D2, D3 } #define MATRIX_COL_PINS { E6, D7, B3, B1 } -#define UNUSED_PINS /* leds */ #define JOTPAD16_LEDS diff --git a/keyboards/handwired/jtallbean/split_65/config.h b/keyboards/handwired/jtallbean/split_65/config.h index acca0a265a..e3c08722e2 100644 --- a/keyboards/handwired/jtallbean/split_65/config.h +++ b/keyboards/handwired/jtallbean/split_65/config.h @@ -37,7 +37,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define MATRIX_COL_PINS { C6, B5, B4, D7, D6, D4, D2, D3, B7 } // B7 is not actually used, but it is needed since # of entries must equal 9 #define MATRIX_ROW_PINS_RIGHT { E6, F0, F1, F7, D7 } #define MATRIX_COL_PINS_RIGHT { B4, B5, B6, C6, C7, D4, D6, D3, D2 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/k_numpad17/config.h b/keyboards/handwired/k_numpad17/config.h index fd412cb723..ebe38b9d31 100644 --- a/keyboards/handwired/k_numpad17/config.h +++ b/keyboards/handwired/k_numpad17/config.h @@ -29,7 +29,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define MATRIX_ROW_PINS { D1, D4, C6, D7, E6 } #define MATRIX_COL_PINS { B2, B1, F6 , F4 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/kbod/config.h b/keyboards/handwired/kbod/config.h index 0200f5e180..44046dcfa1 100644 --- a/keyboards/handwired/kbod/config.h +++ b/keyboards/handwired/kbod/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { C6, D7, E6, B4, B5, B6, B7, D6 } #define MATRIX_COL_PINS { D0, D1, F0, F1, F4, F5, F6, F7 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/kbod/keymaps/default/keymap.c b/keyboards/handwired/kbod/keymaps/default/keymap.c index 333f8a769f..0ffc3e9d97 100644 --- a/keyboards/handwired/kbod/keymaps/default/keymap.c +++ b/keyboards/handwired/kbod/keymaps/default/keymap.c @@ -89,7 +89,7 @@ void matrix_init_user(void) { } void matrix_scan_user(void) { - uint8_t layer = biton32(layer_state); + uint8_t layer = get_highest_layer(layer_state); if (layer) { PORTC |= _BV(PC7); } else { diff --git a/keyboards/handwired/lagrange/config.h b/keyboards/handwired/lagrange/config.h index 0b9638178d..14a5767272 100644 --- a/keyboards/handwired/lagrange/config.h +++ b/keyboards/handwired/lagrange/config.h @@ -30,7 +30,6 @@ #define MATRIX_COL_PINS { B4, B5, D7, B6, C6, D6 } #define MATRIX_ROW_PINS_RIGHT { B5, B4, D7, B6, C6, D6, D4 } #define MATRIX_COL_PINS_RIGHT { C7, F7, F6, F5, F4, F1 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION ROW2COL diff --git a/keyboards/handwired/leftynumpad/config.h b/keyboards/handwired/leftynumpad/config.h index 33dc93fc0e..e05ceae098 100644 --- a/keyboards/handwired/leftynumpad/config.h +++ b/keyboards/handwired/leftynumpad/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { D1, D0, D4, C6, D7 } #define MATRIX_COL_PINS { E6, B4, B5, B6, B2 } -#define UNUSED_PINS {D3, D2, B0, D5, B3, B1, F7, F6, F5, F4 } /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/lemonpad/config.h b/keyboards/handwired/lemonpad/config.h index 32ccfda88a..7db499aba4 100644 --- a/keyboards/handwired/lemonpad/config.h +++ b/keyboards/handwired/lemonpad/config.h @@ -37,7 +37,6 @@ { E6, D7, C6 }, \ { B4, B5, D4 } \ } -#define UNUSED_PINS //#define BACKLIGHT_PIN B7 //#define BACKLIGHT_LEVELS 3 diff --git a/keyboards/handwired/lovelive9/config.h b/keyboards/handwired/lovelive9/config.h index 7453fb0202..42974d48a5 100644 --- a/keyboards/handwired/lovelive9/config.h +++ b/keyboards/handwired/lovelive9/config.h @@ -13,7 +13,6 @@ #define DIODE_DIRECTION COL2ROW -#define UNUSED_PINS /* ws2812 RGB LED */ #define RGB_DI_PIN D3 diff --git a/keyboards/handwired/m40/5x5_macropad/config.h b/keyboards/handwired/m40/5x5_macropad/config.h index 935bc3992c..fb9938c9d6 100644 --- a/keyboards/handwired/m40/5x5_macropad/config.h +++ b/keyboards/handwired/m40/5x5_macropad/config.h @@ -21,7 +21,6 @@ */ #define MATRIX_ROW_PINS { B5, B4, E6, D7, C6 } #define MATRIX_COL_PINS { B6, B2, B3, B1, F7 } -#define UNUSED_PINS /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/macroboard/config.h b/keyboards/handwired/macroboard/config.h index 91f2b6a6a7..0d2aba2a38 100644 --- a/keyboards/handwired/macroboard/config.h +++ b/keyboards/handwired/macroboard/config.h @@ -33,7 +33,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) * */ -#define UNUSED_PINS #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/macroboard/f411/config.h b/keyboards/handwired/macroboard/f411/config.h index d0d88f0c9e..31cb5fa11b 100644 --- a/keyboards/handwired/macroboard/f411/config.h +++ b/keyboards/handwired/macroboard/f411/config.h @@ -21,7 +21,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define MATRIX_ROW_PINS { A15, B3, B4, B5, B7 } #define MATRIX_COL_PINS { B12, B13, B14, B15, A8, A10 } -#define UNUSED_PINS #define AUDIO_INIT_DELAY #define AUDIO_PIN B10 diff --git a/keyboards/handwired/magicforce61/config.h b/keyboards/handwired/magicforce61/config.h index 7cf32ea0ed..ab24503ea0 100644 --- a/keyboards/handwired/magicforce61/config.h +++ b/keyboards/handwired/magicforce61/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { D0, D1, D2, D3, D4 } #define MATRIX_COL_PINS { B5, B4, B3, B2, B1, B0, E7, E6, F0, F1, F2, F3, F4, F5 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/magicforce68/config.h b/keyboards/handwired/magicforce68/config.h index d53c51a01a..7eab860061 100644 --- a/keyboards/handwired/magicforce68/config.h +++ b/keyboards/handwired/magicforce68/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { F0, F1, F4, F5, F6 } #define MATRIX_COL_PINS { B2, B0, D3, D2, D1, D0, D4, C6, D7, E6, B4, B5, B6, B7, D6 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/marauder/config.h b/keyboards/handwired/marauder/config.h index fdc269fb7f..a3165c480d 100644 --- a/keyboards/handwired/marauder/config.h +++ b/keyboards/handwired/marauder/config.h @@ -36,7 +36,7 @@ #define MATRIX_COL_PINS { B6, B2, B3, B1, F7, F6, F5, F4, B0 } #define DIODE_DIRECTION COL2ROW #define LAYER_STATE_8BIT -#define QMK_KEYS_PER_SCAN 12 // moar gaming code + #define RGB_DI_PIN D3 #ifdef RGB_DI_PIN #define RGBLED_NUM 7 diff --git a/keyboards/handwired/mechboards_micropad/config.h b/keyboards/handwired/mechboards_micropad/config.h index 923428df56..659bed03e2 100644 --- a/keyboards/handwired/mechboards_micropad/config.h +++ b/keyboards/handwired/mechboards_micropad/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { B6 } #define MATRIX_COL_PINS { B2, B3, B1, F7 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/meck_tkl/blackpill_f401/config.h b/keyboards/handwired/meck_tkl/blackpill_f401/config.h index cca2eac3a9..eff5d5d81f 100644 --- a/keyboards/handwired/meck_tkl/blackpill_f401/config.h +++ b/keyboards/handwired/meck_tkl/blackpill_f401/config.h @@ -7,8 +7,6 @@ { B15, A8, A9, B14, A15, B3 } #define MATRIX_COL_PINS \ { B4, B5, B6, B7, B8, B9, A1, A2, A3, A4, A5, A6, A7, B0, B1, A0, B10 } -#define UNUSED_PINS \ - { A10, A11, A12, B2, B12, C14, C15 } #define LED_CAPS_LOCK_PIN C13 #define LED_PIN_ON_STATE 0 diff --git a/keyboards/handwired/minorca/config.h b/keyboards/handwired/minorca/config.h index 0707e7a8ec..4c27d9da4d 100644 --- a/keyboards/handwired/minorca/config.h +++ b/keyboards/handwired/minorca/config.h @@ -26,7 +26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. /* MinOrca PCB default pin-out */ #define MATRIX_COL_PINS { D4, D6, D7, B4, B5, B6, F7, F6, F5, F4, F1, F0 } #define MATRIX_ROW_PINS { B0, B1, B2, B3 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/mutepad/config.h b/keyboards/handwired/mutepad/config.h index bf030bce4b..bc763fc29d 100644 --- a/keyboards/handwired/mutepad/config.h +++ b/keyboards/handwired/mutepad/config.h @@ -23,7 +23,6 @@ { F6 } #define MATRIX_COL_PINS \ { B1, B3, B2, B6 } -#define UNUSED_PINS /* encoder support */ #define ENCODERS_PAD_A \ diff --git a/keyboards/handwired/nicekey/config.h b/keyboards/handwired/nicekey/config.h index 702bdaacf7..4cb41fc431 100644 --- a/keyboards/handwired/nicekey/config.h +++ b/keyboards/handwired/nicekey/config.h @@ -25,7 +25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define MATRIX_COL_PINS { C6 } #define MATRIX_ROW_PINS { B6 } -#define UNUSED_PINS #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/novem/config.h b/keyboards/handwired/novem/config.h index a442f493e2..81fe2d877f 100644 --- a/keyboards/handwired/novem/config.h +++ b/keyboards/handwired/novem/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { E6, B4, B5 } #define MATRIX_COL_PINS { B3, B2, B6 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/nozbe_macro/config.h b/keyboards/handwired/nozbe_macro/config.h index 289e5afcfe..fe69a0833a 100644 --- a/keyboards/handwired/nozbe_macro/config.h +++ b/keyboards/handwired/nozbe_macro/config.h @@ -28,7 +28,6 @@ { B0 } #define MATRIX_COL_PINS \ { D1, D0, D4, C6 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/numpad20/config.h b/keyboards/handwired/numpad20/config.h index 4690cce003..0651b524f8 100644 --- a/keyboards/handwired/numpad20/config.h +++ b/keyboards/handwired/numpad20/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { F6, B1, B3, B6, B5 } #define MATRIX_COL_PINS { D1, D0, F5, F4 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/oem_ansi_fullsize/config.h b/keyboards/handwired/oem_ansi_fullsize/config.h index 6d2ca75e9b..0ba0cb3897 100644 --- a/keyboards/handwired/oem_ansi_fullsize/config.h +++ b/keyboards/handwired/oem_ansi_fullsize/config.h @@ -42,7 +42,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. { C3, C2, C1, C0, E1, E0, D7, E6, D5, D4, D3, D2, D1, D0, B7, B0, B1, B2, B3, B4, B5, F6 } // C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD CE CF CG CH CI CJ CK CL -#define UNUSED_PINS /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/onekey/blackpill_f401/config.h b/keyboards/handwired/onekey/blackpill_f401/config.h index 467a2df729..2554e2207c 100644 --- a/keyboards/handwired/onekey/blackpill_f401/config.h +++ b/keyboards/handwired/onekey/blackpill_f401/config.h @@ -20,7 +20,6 @@ #define MATRIX_COL_PINS { B0 } #define MATRIX_ROW_PINS { A7 } -#define UNUSED_PINS #define BACKLIGHT_PIN A0 #define BACKLIGHT_PWM_DRIVER PWMD5 diff --git a/keyboards/handwired/onekey/blackpill_f411/config.h b/keyboards/handwired/onekey/blackpill_f411/config.h index 7447ef6e4c..9e9737fbf5 100644 --- a/keyboards/handwired/onekey/blackpill_f411/config.h +++ b/keyboards/handwired/onekey/blackpill_f411/config.h @@ -20,7 +20,6 @@ #define MATRIX_COL_PINS { B0 } #define MATRIX_ROW_PINS { A7 } -#define UNUSED_PINS #define BACKLIGHT_PIN A0 #define BACKLIGHT_PWM_DRIVER PWMD5 diff --git a/keyboards/handwired/onekey/blackpill_f411_tinyuf2/config.h b/keyboards/handwired/onekey/blackpill_f411_tinyuf2/config.h index defc092733..f4b589c6d2 100755 --- a/keyboards/handwired/onekey/blackpill_f411_tinyuf2/config.h +++ b/keyboards/handwired/onekey/blackpill_f411_tinyuf2/config.h @@ -20,7 +20,6 @@ #define MATRIX_COL_PINS { B0 } #define MATRIX_ROW_PINS { A7 } -#define UNUSED_PINS #define BACKLIGHT_PIN A0 #define BACKLIGHT_PWM_DRIVER PWMD5 diff --git a/keyboards/handwired/onekey/bluepill/config.h b/keyboards/handwired/onekey/bluepill/config.h index ba043fc8c1..0f85ad91c7 100644 --- a/keyboards/handwired/onekey/bluepill/config.h +++ b/keyboards/handwired/onekey/bluepill/config.h @@ -20,7 +20,6 @@ #define MATRIX_COL_PINS { B0 } #define MATRIX_ROW_PINS { A7 } -#define UNUSED_PINS #define BACKLIGHT_PIN A0 #define BACKLIGHT_PWM_DRIVER PWMD2 diff --git a/keyboards/handwired/onekey/bluepill_f103c6/board.h b/keyboards/handwired/onekey/bluepill_f103c6/board.h new file mode 100644 index 0000000000..4889f351a6 --- /dev/null +++ b/keyboards/handwired/onekey/bluepill_f103c6/board.h @@ -0,0 +1,6 @@ +// Copyright 2022 Sergey Vlasov (@sigprof) +// SPDX-License-Identifier: GPL-2.0-or-later +#include_next <board.h> + +#undef STM32F103xB +#define STM32F103x6 diff --git a/keyboards/handwired/onekey/bluepill_f103c6/config.h b/keyboards/handwired/onekey/bluepill_f103c6/config.h new file mode 100644 index 0000000000..e53aa63292 --- /dev/null +++ b/keyboards/handwired/onekey/bluepill_f103c6/config.h @@ -0,0 +1,40 @@ +/* Copyright 2019 + * + * 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 "config_common.h" + +#define PRODUCT Onekey Bluepill STM32F103C6 + +#define MATRIX_COL_PINS { B0 } +#define MATRIX_ROW_PINS { A7 } +#define UNUSED_PINS + +#define BACKLIGHT_PIN A0 +#define BACKLIGHT_PWM_DRIVER PWMD2 +#define BACKLIGHT_PWM_CHANNEL 1 + +#define RGB_DI_PIN A1 + +#define ADC_PIN A0 + +// This code does not fit into the really small flash of STM32F103x6 together +// with CONSOLE_ENABLE=yes, and the debugging console is probably more +// important for the "okeney" testing firmware. In a real firmware you may be +// able to use these features if you keep the debugging console disabled. +#define NO_ACTION_LAYER +#define NO_ACTION_TAPPING diff --git a/keyboards/handwired/onekey/bluepill_f103c6/halconf.h b/keyboards/handwired/onekey/bluepill_f103c6/halconf.h new file mode 100644 index 0000000000..923b4e52d2 --- /dev/null +++ b/keyboards/handwired/onekey/bluepill_f103c6/halconf.h @@ -0,0 +1,26 @@ +/* Copyright 2020 QMK + * + * 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/>. + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/handwired/onekey/bluepill/halconf.h -r platforms/chibios/common/configs/halconf.h` + */ + +#pragma once + +#define HAL_USE_PWM TRUE + +#include_next <halconf.h> diff --git a/keyboards/handwired/onekey/bluepill_f103c6/mcuconf.h b/keyboards/handwired/onekey/bluepill_f103c6/mcuconf.h new file mode 100644 index 0000000000..5e94a97e21 --- /dev/null +++ b/keyboards/handwired/onekey/bluepill_f103c6/mcuconf.h @@ -0,0 +1,30 @@ +/* Copyright 2020 QMK + * + * 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/>. + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/handwired/onekey/bluepill/mcuconf.h -r platforms/chibios/STM32_F103_STM32DUINO/configs/mcuconf.h` + */ + +#pragma once + +#include_next <mcuconf.h> + +#undef STM32_PWM_USE_TIM2 +#define STM32_PWM_USE_TIM2 TRUE + +#undef STM32_SPI_USE_SPI2 +#define STM32_SPI_USE_SPI2 FALSE diff --git a/keyboards/handwired/onekey/bluepill_f103c6/readme.md b/keyboards/handwired/onekey/bluepill_f103c6/readme.md new file mode 100644 index 0000000000..65ba9b0d4f --- /dev/null +++ b/keyboards/handwired/onekey/bluepill_f103c6/readme.md @@ -0,0 +1,7 @@ +# STM32F103C6xx Bluepill onekey + +* Supported hardware: Bluepill boards with the STM32F103C**6**xx chips + +Note that STM32F103C6xx chips have only 32 KiB of flash and 10 KiB of RAM, and the stm32duino bootloader occupies 8 KiB of flash, leaving only 24 KiB for the firmware, therefore the capabilities of this board are severely restricted in comparison to proper Bluepill boards with STM32F103CBxx or STM32F103C8xx chips (128 or 64 KiB of flash and 20 KiB of RAM). You may need to disable many features in the QMK firmware to bring its compiled size below 24 KiB. Please avoid designing new keyboards with these MCUs unless you are stuck with some hardware that you already have and don't want to just throw away. + +To trigger keypress, short together pins *B0* and *A7*. diff --git a/keyboards/handwired/onekey/bluepill_f103c6/rules.mk b/keyboards/handwired/onekey/bluepill_f103c6/rules.mk new file mode 100644 index 0000000000..f2280a1a59 --- /dev/null +++ b/keyboards/handwired/onekey/bluepill_f103c6/rules.mk @@ -0,0 +1,27 @@ +# MCU name +MCU = STM32F103 + +# Bootloader selection +# Cannot use `BOOTLOADER = stm32duino` due to the need to override +# `MCU_LDSCRIPT`, therefore all parameters need to be specified here manually. +OPT_DEFS += -DBOOTLOADER_STM32DUINO +MCU_LDSCRIPT = STM32F103x6_stm32duino_bootloader +BOARD = STM32_F103_STM32DUINO +BOOTLOADER_TYPE = stm32duino +DFU_ARGS = -d 1EAF:0003 -a 2 -R +DFU_SUFFIX_ARGS = -v 1EAF -p 0003 + +# Enter lower-power sleep mode when on the ChibiOS idle thread +OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE + +# LTO is required to fit the firmware into the available 24K of flash +LTO_ENABLE = yes + +# Disable some features which still don't fit into flash even with LTO +MOUSEKEY_ENABLE = no +NKRO_ENABLE = no + +# EEPROM emulation not supported yet (need to implement a proper firmware size +# check first, otherwise the chance of the EEPROM backing store overwriting +# some part of the firmware code is really high). +EEPROM_DRIVER = transient diff --git a/keyboards/handwired/onekey/config.h b/keyboards/handwired/onekey/config.h index 26ad3c95e0..f1ce6d9491 100644 --- a/keyboards/handwired/onekey/config.h +++ b/keyboards/handwired/onekey/config.h @@ -36,6 +36,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define LOCKING_RESYNC_ENABLE #define TAPPING_TERM 500 +#define PERMISSIVE_HOLD /* * Feature disable options diff --git a/keyboards/handwired/onekey/elite_c/config.h b/keyboards/handwired/onekey/elite_c/config.h index 02c81ce743..83eded68de 100644 --- a/keyboards/handwired/onekey/elite_c/config.h +++ b/keyboards/handwired/onekey/elite_c/config.h @@ -20,7 +20,6 @@ #define MATRIX_COL_PINS { F4 } #define MATRIX_ROW_PINS { F5 } -#define UNUSED_PINS #define BACKLIGHT_PIN B6 @@ -28,3 +27,6 @@ #define RGB_CI_PIN B1 #define ADC_PIN F6 + +#define QMK_WAITING_TEST_BUSY_PIN F6 +#define QMK_WAITING_TEST_YIELD_PIN F7 diff --git a/keyboards/handwired/onekey/evb_wb32f3g71/config.h b/keyboards/handwired/onekey/evb_wb32f3g71/config.h index 4668809198..722aa59821 100644 --- a/keyboards/handwired/onekey/evb_wb32f3g71/config.h +++ b/keyboards/handwired/onekey/evb_wb32f3g71/config.h @@ -6,4 +6,3 @@ #define MATRIX_COL_PINS { B12 } #define MATRIX_ROW_PINS { B13 } -#define UNUSED_PINS diff --git a/keyboards/handwired/onekey/evb_wb32fq95/config.h b/keyboards/handwired/onekey/evb_wb32fq95/config.h index 4668809198..722aa59821 100644 --- a/keyboards/handwired/onekey/evb_wb32fq95/config.h +++ b/keyboards/handwired/onekey/evb_wb32fq95/config.h @@ -6,4 +6,3 @@ #define MATRIX_COL_PINS { B12 } #define MATRIX_ROW_PINS { B13 } -#define UNUSED_PINS diff --git a/keyboards/handwired/onekey/kb2040/config.h b/keyboards/handwired/onekey/kb2040/config.h new file mode 100644 index 0000000000..24a7d3a3eb --- /dev/null +++ b/keyboards/handwired/onekey/kb2040/config.h @@ -0,0 +1,29 @@ +// Copyright 2022 Stefan Kerkmann +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +#define PRODUCT Onekey Raspberry Pi RP2040 +#define MATRIX_COL_PINS \ + { GP4 } +#define MATRIX_ROW_PINS \ + { GP5 } +#define DEBUG_MATRIX_SCAN_RATE + +#define QMK_WAITING_TEST_BUSY_PIN GP8 +#define QMK_WAITING_TEST_YIELD_PIN GP9 + +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP25 +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U + +#define RGB_DI_PIN A1 + +// settings for the oled keyboard demo with Adafruit 0.91" OLED display on the Stemma QT port +#define OLED_DISPLAY_128X32 +#define I2C_DRIVER I2CD1 +#define I2C1_SDA_PIN GP12 +#define I2C1_SCL_PIN GP13 + diff --git a/keyboards/handwired/onekey/kb2040/mcuconf.h b/keyboards/handwired/onekey/kb2040/mcuconf.h new file mode 100644 index 0000000000..57e58e14d7 --- /dev/null +++ b/keyboards/handwired/onekey/kb2040/mcuconf.h @@ -0,0 +1,24 @@ +/* Copyright 2020 QMK + * + * 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_next <mcuconf.h> + +#undef RP_I2C_USE_I2C0 +#define RP_I2C_USE_I2C0 TRUE + +#undef RP_I2C_USE_I2C1 +#define RP_I2C_USE_I2C1 TRUE diff --git a/keyboards/handwired/onekey/kb2040/readme.md b/keyboards/handwired/onekey/kb2040/readme.md new file mode 100644 index 0000000000..54ea25a6a5 --- /dev/null +++ b/keyboards/handwired/onekey/kb2040/readme.md @@ -0,0 +1,10 @@ +# Adafruit KB2040 onekey with OLED + +To trigger keypress, short together pins *GP4* and *GP5*. + +Double-tap reset to enter bootloader mode. Copy the built uf2 file to the device by dragging the file to the new USB disk. + +## Supported Hardware + +* [Adafruit KB2040 - RP2040 Kee Boar](https://www.adafruit.com/product/5302) +* Optional [128x32 OLED display on the Stemma QT port](https://www.adafruit.com/product/4440) diff --git a/keyboards/handwired/onekey/kb2040/rules.mk b/keyboards/handwired/onekey/kb2040/rules.mk new file mode 100644 index 0000000000..624b331bf8 --- /dev/null +++ b/keyboards/handwired/onekey/kb2040/rules.mk @@ -0,0 +1,9 @@ +# MCU name +MCU = RP2040 +BOOTLOADER = rp2040 + +OLED_ENABLE = yes +OLED_DRIVER = SSD1306 + +OPT_DEFS += -DHAL_USE_I2C=TRUE + diff --git a/keyboards/handwired/onekey/keymaps/chibios_waiting_test/config.h b/keyboards/handwired/onekey/keymaps/chibios_waiting_test/config.h new file mode 100644 index 0000000000..0c75fa3044 --- /dev/null +++ b/keyboards/handwired/onekey/keymaps/chibios_waiting_test/config.h @@ -0,0 +1,12 @@ +// Copyright 2022 Stefan Kerkmann +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#if !defined(QMK_WAITING_TEST_BUSY_PIN) +# define QMK_WAITING_TEST_BUSY_PIN A8 +#endif + +#if !defined(QMK_WAITING_TEST_YIELD_PIN) +# define QMK_WAITING_TEST_YIELD_PIN A9 +#endif diff --git a/keyboards/handwired/onekey/keymaps/chibios_waiting_test/keymap.c b/keyboards/handwired/onekey/keymaps/chibios_waiting_test/keymap.c new file mode 100644 index 0000000000..ecf67d3b3c --- /dev/null +++ b/keyboards/handwired/onekey/keymaps/chibios_waiting_test/keymap.c @@ -0,0 +1,47 @@ +// Copyright 2022 Stefan Kerkmann +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {LAYOUT_ortho_1x1(KC_A)}; + +#if defined(__AVR__) +# pragma message "AVR uses polled waiting by default, running theses tests will not show any difference" +static inline void chThdSleepMicroseconds(uint32_t us) { + wait_us(us); +} +#endif + +void keyboard_post_init_user(void) { + setPinOutput(QMK_WAITING_TEST_BUSY_PIN); + setPinOutput(QMK_WAITING_TEST_YIELD_PIN); +} + +static inline void wait_us_polling_with_strobe(uint32_t us) { + writePinHigh(QMK_WAITING_TEST_BUSY_PIN); + wait_us(us); + writePinLow(QMK_WAITING_TEST_BUSY_PIN); +} + +static inline void wait_us_yield_with_strobe(uint32_t us) { + writePinHigh(QMK_WAITING_TEST_YIELD_PIN); + chThdSleepMicroseconds(us); + writePinLow(QMK_WAITING_TEST_YIELD_PIN); +} + +static const uint32_t waiting_values[] = {0, 1, 5, 10, 25, 50, 100, 150, 200, 500, 1000}; + +void housekeeping_task_user(void) { + static uint32_t last_bench = 0; + if (timer_elapsed32(last_bench) > 500) { + for (int i = 0; i < (sizeof(waiting_values) / sizeof(waiting_values[0])); i++) { + wait_us_polling_with_strobe(waiting_values[i]); + wait_us(10); + } + for (int i = 0; i < (sizeof(waiting_values) / sizeof(waiting_values[0])); i++) { + wait_us_yield_with_strobe(waiting_values[i]); + wait_us(10); + } + last_bench = timer_read32(); + } +} diff --git a/keyboards/handwired/onekey/nucleo_l432kc/config.h b/keyboards/handwired/onekey/nucleo_l432kc/config.h index 2deb30c34c..b6b36c4cee 100644 --- a/keyboards/handwired/onekey/nucleo_l432kc/config.h +++ b/keyboards/handwired/onekey/nucleo_l432kc/config.h @@ -6,7 +6,6 @@ #define MATRIX_COL_PINS { A2 } #define MATRIX_ROW_PINS { A1 } -#define UNUSED_PINS #define BACKLIGHT_PIN B8 #define BACKLIGHT_PWM_DRIVER PWMD4 diff --git a/keyboards/handwired/onekey/onekey.c b/keyboards/handwired/onekey/onekey.c index cbd67012ce..a29f9ea6d0 100644 --- a/keyboards/handwired/onekey/onekey.c +++ b/keyboards/handwired/onekey/onekey.c @@ -1 +1,12 @@ +// Copyright 2022 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + #include "onekey.h" + +void keyboard_post_init_kb(void) { + debug_enable = true; + debug_matrix = true; + debug_keyboard = true; + debug_mouse = true; + keyboard_post_init_user(); +} diff --git a/keyboards/handwired/onekey/promicro/config.h b/keyboards/handwired/onekey/promicro/config.h index 02c81ce743..83eded68de 100644 --- a/keyboards/handwired/onekey/promicro/config.h +++ b/keyboards/handwired/onekey/promicro/config.h @@ -20,7 +20,6 @@ #define MATRIX_COL_PINS { F4 } #define MATRIX_ROW_PINS { F5 } -#define UNUSED_PINS #define BACKLIGHT_PIN B6 @@ -28,3 +27,6 @@ #define RGB_CI_PIN B1 #define ADC_PIN F6 + +#define QMK_WAITING_TEST_BUSY_PIN F6 +#define QMK_WAITING_TEST_YIELD_PIN F7 diff --git a/keyboards/handwired/onekey/proton_c/config.h b/keyboards/handwired/onekey/proton_c/config.h index a42672c616..6e8e28edb4 100644 --- a/keyboards/handwired/onekey/proton_c/config.h +++ b/keyboards/handwired/onekey/proton_c/config.h @@ -20,7 +20,6 @@ #define MATRIX_COL_PINS { A2 } #define MATRIX_ROW_PINS { A1 } -#define UNUSED_PINS #define BACKLIGHT_PIN B8 #define BACKLIGHT_PWM_DRIVER PWMD4 diff --git a/keyboards/handwired/onekey/rp2040/config.h b/keyboards/handwired/onekey/rp2040/config.h new file mode 100644 index 0000000000..f4e45a8981 --- /dev/null +++ b/keyboards/handwired/onekey/rp2040/config.h @@ -0,0 +1,22 @@ +// Copyright 2022 Stefan Kerkmann +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +#define PRODUCT Onekey Raspberry Pi RP2040 +#define MATRIX_COL_PINS \ + { GP4 } +#define MATRIX_ROW_PINS \ + { GP5 } +#define DEBUG_MATRIX_SCAN_RATE + +#define QMK_WAITING_TEST_BUSY_PIN GP8 +#define QMK_WAITING_TEST_YIELD_PIN GP9 + +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP25 +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U + +#define RGB_DI_PIN A1 diff --git a/keyboards/handwired/onekey/rp2040/readme.md b/keyboards/handwired/onekey/rp2040/readme.md new file mode 100644 index 0000000000..9014479f8d --- /dev/null +++ b/keyboards/handwired/onekey/rp2040/readme.md @@ -0,0 +1,12 @@ +# Raspberry Pi 2040 onekey + +To trigger keypress, short together pins *GP4* and *GP5*. + +Double-tap reset to enter bootloader mode. Copy the built uf2 file to the device by dragging the file to the new USB disk. + +## Supported Hardware + +* Raspberry Pi Pico +* SparkFun Pro Micro - RP2040 +* Adafruit KB2040 - RP2040 Kee Boar +* ...and many more RP2040 based development boards diff --git a/keyboards/handwired/onekey/rp2040/rules.mk b/keyboards/handwired/onekey/rp2040/rules.mk new file mode 100644 index 0000000000..646402d0bb --- /dev/null +++ b/keyboards/handwired/onekey/rp2040/rules.mk @@ -0,0 +1,3 @@ +# MCU name +MCU = RP2040 +BOOTLOADER = rp2040 diff --git a/keyboards/handwired/onekey/sipeed_longan_nano/config.h b/keyboards/handwired/onekey/sipeed_longan_nano/config.h index 1825b936d8..6f97baf57f 100644 --- a/keyboards/handwired/onekey/sipeed_longan_nano/config.h +++ b/keyboards/handwired/onekey/sipeed_longan_nano/config.h @@ -22,7 +22,6 @@ { B0 } #define MATRIX_ROW_PINS \ { A7 } -#define UNUSED_PINS #define BACKLIGHT_PIN A1 /* Green LED. */ #define BACKLIGHT_PWM_DRIVER PWMD5 /* GD32 numbering scheme starts from 0, TIMER4 on GD32 boards is TIMER5 on STM32 boards. */ diff --git a/keyboards/handwired/onekey/stm32f0_disco/config.h b/keyboards/handwired/onekey/stm32f0_disco/config.h index 105a0ea4b1..373f1c943a 100644 --- a/keyboards/handwired/onekey/stm32f0_disco/config.h +++ b/keyboards/handwired/onekey/stm32f0_disco/config.h @@ -20,7 +20,6 @@ #define MATRIX_COL_PINS { B4 } #define MATRIX_ROW_PINS { B5 } -#define UNUSED_PINS #define BACKLIGHT_PIN C8 #define BACKLIGHT_PWM_DRIVER PWMD3 diff --git a/keyboards/handwired/onekey/stm32f405_feather/config.h b/keyboards/handwired/onekey/stm32f405_feather/config.h index 77546e7b41..ea9f409640 100644 --- a/keyboards/handwired/onekey/stm32f405_feather/config.h +++ b/keyboards/handwired/onekey/stm32f405_feather/config.h @@ -20,4 +20,3 @@ #define MATRIX_COL_PINS { C2 } #define MATRIX_ROW_PINS { C3 } -#define UNUSED_PINS diff --git a/keyboards/handwired/onekey/teensy_2/config.h b/keyboards/handwired/onekey/teensy_2/config.h index 167373cd39..fb775a06b0 100644 --- a/keyboards/handwired/onekey/teensy_2/config.h +++ b/keyboards/handwired/onekey/teensy_2/config.h @@ -20,10 +20,12 @@ #define MATRIX_COL_PINS { F4 } #define MATRIX_ROW_PINS { F5 } -#define UNUSED_PINS #define BACKLIGHT_PIN B6 #define RGB_DI_PIN F6 #define ADC_PIN F6 + +#define QMK_WAITING_TEST_BUSY_PIN F6 +#define QMK_WAITING_TEST_YIELD_PIN F7 diff --git a/keyboards/handwired/onekey/teensy_2pp/config.h b/keyboards/handwired/onekey/teensy_2pp/config.h index 167373cd39..fb775a06b0 100644 --- a/keyboards/handwired/onekey/teensy_2pp/config.h +++ b/keyboards/handwired/onekey/teensy_2pp/config.h @@ -20,10 +20,12 @@ #define MATRIX_COL_PINS { F4 } #define MATRIX_ROW_PINS { F5 } -#define UNUSED_PINS #define BACKLIGHT_PIN B6 #define RGB_DI_PIN F6 #define ADC_PIN F6 + +#define QMK_WAITING_TEST_BUSY_PIN F6 +#define QMK_WAITING_TEST_YIELD_PIN F7 diff --git a/keyboards/handwired/onekey/teensy_32/config.h b/keyboards/handwired/onekey/teensy_32/config.h index 1a730a6d46..3444cca67f 100644 --- a/keyboards/handwired/onekey/teensy_32/config.h +++ b/keyboards/handwired/onekey/teensy_32/config.h @@ -21,7 +21,6 @@ #define MATRIX_COL_PINS { D5 } #define MATRIX_ROW_PINS { B2 } -#define UNUSED_PINS // i2c_master defines #define I2C1_SCL_PIN B0 // A2 on pinout = B0 diff --git a/keyboards/handwired/onekey/teensy_35/chconf.h b/keyboards/handwired/onekey/teensy_35/chconf.h new file mode 100644 index 0000000000..ee8312c526 --- /dev/null +++ b/keyboards/handwired/onekey/teensy_35/chconf.h @@ -0,0 +1,28 @@ +/* Copyright 2020 QMK + * + * 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/>. + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/handwired/onekey/teensy_35/chconf.h -r platforms/chibios/common/configs/chconf.h` + */ + +#pragma once + +#define CH_CFG_ST_TIMEDELTA 0 + +#define CH_CFG_TIME_QUANTUM 20 + +#include_next <chconf.h> diff --git a/keyboards/handwired/onekey/teensy_35/config.h b/keyboards/handwired/onekey/teensy_35/config.h new file mode 100644 index 0000000000..18eebcaffd --- /dev/null +++ b/keyboards/handwired/onekey/teensy_35/config.h @@ -0,0 +1,31 @@ +/* Copyright 2019 + * + * 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 + +// TODO: including this causes "error: expected identifier before '(' token" errors +//#include "config_common.h" + +#define PRODUCT Onekey Teensy 3.5 + +#define MATRIX_COL_PINS { D5 } // 20/A6 +#define MATRIX_ROW_PINS { B2 } // 19/A5 + +// i2c_master defines +#define I2C1_SCL_PIN B0 // 16/A2 on pinout +#define I2C1_SDA_PIN B1 // 17/A3 on pinout +#define I2C1_SCL_PAL_MODE PAL_MODE_ALTERNATIVE_2 +#define I2C1_SDA_PAL_MODE PAL_MODE_ALTERNATIVE_2 diff --git a/keyboards/handwired/onekey/teensy_35/halconf.h b/keyboards/handwired/onekey/teensy_35/halconf.h new file mode 100644 index 0000000000..6ac756d0f2 --- /dev/null +++ b/keyboards/handwired/onekey/teensy_35/halconf.h @@ -0,0 +1,28 @@ +/* Copyright 2020 QMK + * + * 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/>. + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/handwired/onekey/teensy_35/halconf.h -r platforms/chibios/common/configs/halconf.h` + */ + +#pragma once + +#define HAL_USE_SERIAL TRUE + +#define SERIAL_USB_BUFFERS_SIZE 256 + +#include_next <halconf.h> diff --git a/keyboards/handwired/onekey/teensy_35/mcuconf.h b/keyboards/handwired/onekey/teensy_35/mcuconf.h new file mode 100644 index 0000000000..dc508eee7d --- /dev/null +++ b/keyboards/handwired/onekey/teensy_35/mcuconf.h @@ -0,0 +1,50 @@ +/* + ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +#ifndef _MCUCONF_H_ +#define _MCUCONF_H_ + +#define K60x_MCUCONF + +/* + * HAL driver system settings. + */ + +/* Select the MCU clocking mode below by enabling the appropriate block. */ + +/* PEE mode - 120MHz system clock driven by external crystal. */ +#define KINETIS_MCG_MODE KINETIS_MCG_MODE_PEE +#define KINETIS_PLLCLK_FREQUENCY 120000000UL // 120 MHz (RUN) +#define KINETIS_SYSCLK_FREQUENCY KINETIS_PLLCLK_FREQUENCY +#define KINETIS_BUSCLK_FREQUENCY 60000000UL +#define KINETIS_FLASHCLK_FREQUENCY 24000000UL // 24 MHz (RUN) + +#define KINETIS_CLKDIV1_OUTDIV1 1 // -> 0 +#define KINETIS_CLKDIV1_OUTDIV2 2 // -> 1 +#define KINETIS_CLKDIV1_OUTDIV4 5 // -> 4 + +/* + * SERIAL driver system settings. + */ +#define KINETIS_SERIAL_USE_UART0 TRUE + +/* + * USB driver settings + */ +#define KINETIS_USB_USE_USB0 TRUE +#define KINETIS_USB_USB0_IRQ_PRIORITY 5 + +#endif /* _MCUCONF_H_ */ diff --git a/keyboards/handwired/onekey/teensy_35/rules.mk b/keyboards/handwired/onekey/teensy_35/rules.mk new file mode 100644 index 0000000000..8ebefd03f5 --- /dev/null +++ b/keyboards/handwired/onekey/teensy_35/rules.mk @@ -0,0 +1,8 @@ +# MCU name +MCU = MK64FX512 + +# Bootloader selection +BOOTLOADER = halfkay + +# Enter lower-power sleep mode when on the ChibiOS idle thread +OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE diff --git a/keyboards/handwired/onekey/teensy_lc/config.h b/keyboards/handwired/onekey/teensy_lc/config.h index 1a730a6d46..3444cca67f 100644 --- a/keyboards/handwired/onekey/teensy_lc/config.h +++ b/keyboards/handwired/onekey/teensy_lc/config.h @@ -21,7 +21,6 @@ #define MATRIX_COL_PINS { D5 } #define MATRIX_ROW_PINS { B2 } -#define UNUSED_PINS // i2c_master defines #define I2C1_SCL_PIN B0 // A2 on pinout = B0 diff --git a/keyboards/handwired/ortho5x13/config.h b/keyboards/handwired/ortho5x13/config.h index c16cf77cd4..f88d2b7002 100644 --- a/keyboards/handwired/ortho5x13/config.h +++ b/keyboards/handwired/ortho5x13/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { D3, D2, D1, D0, D4 } #define MATRIX_COL_PINS { C6, D7, E6, B4, B5, B6, B2, B3, B1, F7, F6, F5, F4 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/ortho5x14/config.h b/keyboards/handwired/ortho5x14/config.h index 0be408cbf4..e74a645870 100644 --- a/keyboards/handwired/ortho5x14/config.h +++ b/keyboards/handwired/ortho5x14/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { F0, F1, C7, D5, B7 } #define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2, B4, E6, D7, C6, D4, D0, D1 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/ortho5x14/keymaps/2u/keymap.c b/keyboards/handwired/ortho5x14/keymaps/2u/keymap.c index 70a96fac9d..d785825332 100644 --- a/keyboards/handwired/ortho5x14/keymaps/2u/keymap.c +++ b/keyboards/handwired/ortho5x14/keymaps/2u/keymap.c @@ -343,9 +343,9 @@ qk_tap_dance_action_t tap_dance_actions[] = { [TD_PGUP_HOME] = ACTION_TAP_DANCE_DOUBLE(KC_PGUP, KC_HOME), [TD_PGDN_END] = ACTION_TAP_DANCE_DOUBLE(KC_PGDN, KC_END), - [TD_Q_LrALT] = ACTION_TAP_DANCE_DUAL_ROLE(KC_Q, _ALT), - [TD_R_LrKey] = ACTION_TAP_DANCE_DUAL_ROLE(KC_R, _RAISE), - [TD_T_LrMS] = ACTION_TAP_DANCE_DUAL_ROLE(KC_T, _MOUSE), + [TD_Q_LrALT] = ACTION_TAP_DANCE_LAYER_MOVE(KC_Q, _ALT), + [TD_R_LrKey] = ACTION_TAP_DANCE_LAYER_MOVE(KC_R, _RAISE), + [TD_T_LrMS] = ACTION_TAP_DANCE_LAYER_MOVE(KC_T, _MOUSE), [TD_SHIFT_CAPS] = ACTION_TAP_DANCE_FN_ADVANCED(NULL,lshift_finished, lshift_reset), [TD_SPC_ENT] = ACTION_TAP_DANCE_DOUBLE(KC_SPACE, KC_ENT), diff --git a/keyboards/handwired/ortho5x14/keymaps/split1/keymap.c b/keyboards/handwired/ortho5x14/keymaps/split1/keymap.c index b152503aaf..3734510f8c 100644 --- a/keyboards/handwired/ortho5x14/keymaps/split1/keymap.c +++ b/keyboards/handwired/ortho5x14/keymaps/split1/keymap.c @@ -279,9 +279,9 @@ qk_tap_dance_action_t tap_dance_actions[] = { [TD_PGUP_HOME] = ACTION_TAP_DANCE_DOUBLE(KC_PGUP, KC_HOME), [TD_PGDN_END] = ACTION_TAP_DANCE_DOUBLE(KC_PGUP, KC_END), - [TD_Q_LrALT] = ACTION_TAP_DANCE_DUAL_ROLE(KC_Q, _ALT), - [TD_R_LrKey] = ACTION_TAP_DANCE_DUAL_ROLE(KC_R, _RAISE), - [TD_T_LrMS] = ACTION_TAP_DANCE_DUAL_ROLE(KC_T, _MOUSE), + [TD_Q_LrALT] = ACTION_TAP_DANCE_LAYER_MOVE(KC_Q, _ALT), + [TD_R_LrKey] = ACTION_TAP_DANCE_LAYER_MOVE(KC_R, _RAISE), + [TD_T_LrMS] = ACTION_TAP_DANCE_LAYER_MOVE(KC_T, _MOUSE), [TD_SHIFT_CAPS] = ACTION_TAP_DANCE_FN_ADVANCED(NULL,lshift_finished, lshift_reset), [TD_SPC_ENT] = ACTION_TAP_DANCE_DOUBLE(KC_SPACE, KC_ENT), diff --git a/keyboards/handwired/ortho_brass/config.h b/keyboards/handwired/ortho_brass/config.h index 694b93c4ee..8b546c04c0 100644 --- a/keyboards/handwired/ortho_brass/config.h +++ b/keyboards/handwired/ortho_brass/config.h @@ -27,8 +27,6 @@ { D3, D2, D1, D0 } #define MATRIX_COL_PINS \ { F4, F7, F5, F1, C7, F0, B1, B0, F6, B6, B2, B3 } -#define UNUSED_PINS \ - { B0, B1, B2, F0, F1, F4, D4, D5, E6 } /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/ortho_brass/keymaps/default/keymap.c b/keyboards/handwired/ortho_brass/keymaps/default/keymap.c index 948a7bd1bc..f32529b6a7 100644 --- a/keyboards/handwired/ortho_brass/keymaps/default/keymap.c +++ b/keyboards/handwired/ortho_brass/keymaps/default/keymap.c @@ -162,7 +162,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_ortho_4x12_1x2uC( _______, QK_BOOT, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, PLOVER, _______, - _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, TERM_ON, TERM_OFF, _______, _______, _______, + _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) diff --git a/keyboards/handwired/p65rgb/config.h b/keyboards/handwired/p65rgb/config.h index 44e2a1b5da..abb5efc284 100644 --- a/keyboards/handwired/p65rgb/config.h +++ b/keyboards/handwired/p65rgb/config.h @@ -26,7 +26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. /* key matrix pins */ #define MATRIX_ROW_PINS { C7, C6, B6, B5, D5 } #define MATRIX_COL_PINS { E6, F0, F1, F4, F5, F6, F7, B0, B1, B2, B3, B7, D0, D1, D2, D3, D7 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/pilcrow/config.h b/keyboards/handwired/pilcrow/config.h index 3667d46296..c846dd387a 100644 --- a/keyboards/handwired/pilcrow/config.h +++ b/keyboards/handwired/pilcrow/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { B4, F7, B1, B3 } #define MATRIX_COL_PINS { D4, C6, D7, E6, F5, F6, B6, B2, F4, B5} -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/pill60/blackpill_f401/config.h b/keyboards/handwired/pill60/blackpill_f401/config.h index d56ba94ea4..7de8654319 100644 --- a/keyboards/handwired/pill60/blackpill_f401/config.h +++ b/keyboards/handwired/pill60/blackpill_f401/config.h @@ -20,5 +20,3 @@ { A8, B2, B1, B15, A10, A0, A1, A2, A3, A4, A5, A6, A7, B0 } #define MATRIX_ROW_PINS \ { B4, B3, A15, B13, B5 } -#define UNUSED_PINS \ - { A9, A11, A12, C13, C14, C15, B10 } diff --git a/keyboards/handwired/pill60/blackpill_f411/config.h b/keyboards/handwired/pill60/blackpill_f411/config.h index b106c2d290..7de8654319 100644 --- a/keyboards/handwired/pill60/blackpill_f411/config.h +++ b/keyboards/handwired/pill60/blackpill_f411/config.h @@ -20,6 +20,3 @@ { A8, B2, B1, B15, A10, A0, A1, A2, A3, A4, A5, A6, A7, B0 } #define MATRIX_ROW_PINS \ { B4, B3, A15, B13, B5 } -#define UNUSED_PINS \ - { A9, A11, A12, C13, C14, C15, B10 } - diff --git a/keyboards/handwired/pill60/bluepill/config.h b/keyboards/handwired/pill60/bluepill/config.h index f68f518b97..1ba5ff2069 100644 --- a/keyboards/handwired/pill60/bluepill/config.h +++ b/keyboards/handwired/pill60/bluepill/config.h @@ -20,5 +20,3 @@ { A8, B11, B10, B15, A10, A1, A2, A3, A4, A5, A6, A7, B0, B1 } #define MATRIX_ROW_PINS \ { B4, B3, A15, B13, B5 } -#define UNUSED_PINS \ - { A0, A9, A11, A12, C13, C14, C15 } diff --git a/keyboards/handwired/postageboard/mini/config.h b/keyboards/handwired/postageboard/mini/config.h index c32c79dd85..e245460161 100644 --- a/keyboards/handwired/postageboard/mini/config.h +++ b/keyboards/handwired/postageboard/mini/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { D5 } #define MATRIX_COL_PINS { E6, B3, B7 } -#define UNUSED_PINS { D0, D1, D2, D3, D4, D6, D7, B4, B5, B6, C6, C7, B2, B1, B0, F7, F6, F5, F4, F1, F0 } /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/postageboard/r1/config.h b/keyboards/handwired/postageboard/r1/config.h index 466955154c..631a479455 100644 --- a/keyboards/handwired/postageboard/r1/config.h +++ b/keyboards/handwired/postageboard/r1/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { B6 } #define MATRIX_COL_PINS { B7, C6, C7 } -#define UNUSED_PINS { D4, D6, D7, B4, B5, D5, D3, D2, D1, D0, B2, B3, F0, F1, F4, F5, F6, F7, E6, B0, B1 } /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/prime_exl/config.h b/keyboards/handwired/prime_exl/config.h index bb68ab28a1..88919b934e 100644 --- a/keyboards/handwired/prime_exl/config.h +++ b/keyboards/handwired/prime_exl/config.h @@ -26,7 +26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. /* Keyboard Matrix Assignments */ #define MATRIX_ROW_PINS { B1, E6, D5, D6, B4, D7, D4, F1, F0, B0 } #define MATRIX_COL_PINS { D0, B3, B2, D1, D2, D3, F7, F6, F5 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/prime_exl/keymaps/via/keymap.c b/keyboards/handwired/prime_exl/keymaps/via/keymap.c index 0e6802996d..b5b616d55b 100644 --- a/keyboards/handwired/prime_exl/keymaps/via/keymap.c +++ b/keyboards/handwired/prime_exl/keymaps/via/keymap.c @@ -87,7 +87,7 @@ void led_set_user(uint8_t usb_led) { //function for layer indicator LED layer_state_t layer_state_set_user(layer_state_t state) { - if (biton32(state) == 1) { + if (get_highest_layer(state) == 1) { writePinHigh(C6); } else { writePinLow(C6); diff --git a/keyboards/handwired/prime_exl_plus/config.h b/keyboards/handwired/prime_exl_plus/config.h index 6b02ea50f4..46b235f9ee 100644 --- a/keyboards/handwired/prime_exl_plus/config.h +++ b/keyboards/handwired/prime_exl_plus/config.h @@ -26,7 +26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. /* Keyboard Matrix Assignments */ #define MATRIX_ROW_PINS { D2, D6, B4, F1, E6, F0, F4, B5, D7, D3 } #define MATRIX_COL_PINS { F5, F6, F7, C7, C6, B6, B7, B3, D1, D0 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/prkl30/feather/config.h b/keyboards/handwired/prkl30/feather/config.h index e54944ccc6..bbed6c0b0b 100644 --- a/keyboards/handwired/prkl30/feather/config.h +++ b/keyboards/handwired/prkl30/feather/config.h @@ -28,7 +28,6 @@ #define ENCODERS_PAD_A { F7 } #define ENCODERS_PAD_B { F6 } #define ENCODER_RESOLUTION 4 -#define UNUSED_PINS /* RGB Light Configuration */ diff --git a/keyboards/handwired/prkl30/promicro/config.h b/keyboards/handwired/prkl30/promicro/config.h index fd1c3dbe34..9f7c4f4f9a 100644 --- a/keyboards/handwired/prkl30/promicro/config.h +++ b/keyboards/handwired/prkl30/promicro/config.h @@ -28,7 +28,6 @@ #define ENCODERS_PAD_A { D3 } #define ENCODERS_PAD_B { D2 } #define ENCODER_RESOLUTION 4 -#define UNUSED_PINS /* RGB Light Configuration */ diff --git a/keyboards/handwired/promethium/config.h b/keyboards/handwired/promethium/config.h index 73fffcc45f..a447a70abd 100644 --- a/keyboards/handwired/promethium/config.h +++ b/keyboards/handwired/promethium/config.h @@ -30,7 +30,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. { F5, F6, F7, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN } #define TRACKPOINT_PINS \ { B7, B6, D7 } -#define UNUSED_PINS /* * Keyboard Matrix Assignments diff --git a/keyboards/handwired/promethium/keymaps/default/keymap.c b/keyboards/handwired/promethium/keymaps/default/keymap.c index 1903b2f9ba..77f83361e6 100644 --- a/keyboards/handwired/promethium/keymaps/default/keymap.c +++ b/keyboards/handwired/promethium/keymaps/default/keymap.c @@ -529,7 +529,7 @@ void led_reset(void) { } void led_set_default_layer_indicator(void) { - uint8_t default_layer = biton32(default_layer_state); + uint8_t default_layer = get_highest_layer(default_layer_state); if (default_layer == _QWERTY) { rgbsps_set(LED_IND_QWERTY, THEME_COLOR_QWERTY); rgbsps_set(LED_IND_ALT, COLOR_BLANK); @@ -553,7 +553,7 @@ void led_set_layer_indicator(void) { rgbsps_set(LED_IND_GREEK, COLOR_BLANK); rgbsps_set(LED_IND_EMOJI, COLOR_BLANK); - uint8_t layer = biton32(layer_state); + uint8_t layer = get_highest_layer(layer_state); if (oldlayer == layer) { return; } @@ -1014,7 +1014,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { lshift = keyboard_report->mods & MOD_BIT(KC_LSFT); rshift = keyboard_report->mods & MOD_BIT(KC_RSFT); - layer = biton32(layer_state); + layer = get_highest_layer(layer_state); #ifdef DOUBLESPACE_LAYER_ENABLE // double-space: send space immediately if any other key depressed before space is released diff --git a/keyboards/handwired/promethium/keymaps/priyadi/config.h b/keyboards/handwired/promethium/keymaps/priyadi/config.h index 0630fd43e3..1e5e8906ed 100644 --- a/keyboards/handwired/promethium/keymaps/priyadi/config.h +++ b/keyboards/handwired/promethium/keymaps/priyadi/config.h @@ -2,12 +2,6 @@ #define PRIYADI_PROMETHIUM -/* bootmagic salt key */ -#define BOOTMAGIC_KEY_SALT KC_ESC - -/* skip bootmagic and eeconfig */ -#define BOOTMAGIC_KEY_SKIP KC_SPACE - #define RGBSPS_ENABLE #define RGBSPS_DEMO_ENABLE diff --git a/keyboards/handwired/promethium/keymaps/priyadi/keymap.c b/keyboards/handwired/promethium/keymaps/priyadi/keymap.c index 94b505aa2c..faa096ce08 100644 --- a/keyboards/handwired/promethium/keymaps/priyadi/keymap.c +++ b/keyboards/handwired/promethium/keymaps/priyadi/keymap.c @@ -532,7 +532,7 @@ void led_reset(void) { } void led_set_default_layer_indicator(void) { - uint8_t default_layer = biton32(default_layer_state); + uint8_t default_layer = get_highest_layer(default_layer_state); if (default_layer == _QWERTY) { rgbsps_set(LED_IND_QWERTY, THEME_COLOR_QWERTY); rgbsps_set(LED_IND_ALT, COLOR_BLANK); @@ -556,7 +556,7 @@ void led_set_layer_indicator(void) { rgbsps_set(LED_IND_GREEK, COLOR_BLANK); rgbsps_set(LED_IND_EMOJI, COLOR_BLANK); - uint8_t layer = biton32(layer_state); + uint8_t layer = get_highest_layer(layer_state); if (oldlayer == layer) { return; } @@ -989,7 +989,7 @@ void process_doublespace(bool pressed, bool *isactive, bool *otheractive, bool * } #endif -uint32_t layer_state_set_kb(uint32_t state) +layer_state_t layer_state_set_kb(layer_state_t state) { // turn on punc layer if both fun & num are on if ((state & ((1UL<<_NUM) | (1UL<<_FUN))) == ((1UL<<_NUM) | (1UL<<_FUN))) { @@ -1017,7 +1017,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { lshift = keyboard_report->mods & MOD_BIT(KC_LSFT); rshift = keyboard_report->mods & MOD_BIT(KC_RSFT); - layer = biton32(layer_state); + layer = get_highest_layer(layer_state); #ifdef DOUBLESPACE_LAYER_ENABLE // double-space: send space immediately if any other key depressed before space is released diff --git a/keyboards/handwired/pteron/config.h b/keyboards/handwired/pteron/config.h index 81141a3ebf..5d26b9f430 100644 --- a/keyboards/handwired/pteron/config.h +++ b/keyboards/handwired/pteron/config.h @@ -9,7 +9,6 @@ /* key matrix pins */ #define MATRIX_ROW_PINS { D7, E6, B4, B5, B6 } #define MATRIX_COL_PINS { F4, F6, F5, F7, B1, B3, C6, D4, D0, D1, D2, D3 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION ROW2COL diff --git a/keyboards/handwired/pteron38/config.h b/keyboards/handwired/pteron38/config.h index 95eaa86e3b..a877d8dfa3 100644 --- a/keyboards/handwired/pteron38/config.h +++ b/keyboards/handwired/pteron38/config.h @@ -25,7 +25,6 @@ /* key matrix pins */ #define MATRIX_ROW_PINS { E6, B4, B5, B6 } #define MATRIX_COL_PINS { F6, F5, F7, B1, B3, C6, D4, D0, D1, D2 } -#define UNUSED_PINS { D7, F4, D3 } /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/pteron44/config.h b/keyboards/handwired/pteron44/config.h index d28e6c3b36..517d498eaa 100644 --- a/keyboards/handwired/pteron44/config.h +++ b/keyboards/handwired/pteron44/config.h @@ -25,7 +25,6 @@ /* key matrix pins */ #define MATRIX_ROW_PINS { E6, B4, B5, B6 } #define MATRIX_COL_PINS { F4, F6, F5, F7, B1, B3, C6, D4, D0, D1, D2, D3 } -#define UNUSED_PINS { D7 } /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/retro_refit/config.h b/keyboards/handwired/retro_refit/config.h index 22eea072d4..89e6fc9595 100644 --- a/keyboards/handwired/retro_refit/config.h +++ b/keyboards/handwired/retro_refit/config.h @@ -26,7 +26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. // See note in retro_refit.h for an explanation of how this matrix is wired up #define MATRIX_ROW_PINS { D4, D7, B4, B5, B6, F7, F6, F5, F4, F1, F0 } #define MATRIX_COL_PINS { B0, B1, B2, B3, D2, D3, C7, D5 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/riblee_f401/config.h b/keyboards/handwired/riblee_f401/config.h index 3437f3c7b9..ed0ff636f1 100644 --- a/keyboards/handwired/riblee_f401/config.h +++ b/keyboards/handwired/riblee_f401/config.h @@ -23,7 +23,6 @@ #define MATRIX_ROW_PINS { A6, A5, A4, A3, A2 } #define MATRIX_COL_PINS { B10, B1, B0, B15, A8, B3, B4, B5, B6, B7, B8, B9 } -#define UNUSED_PINS #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/riblee_f401/keymaps/default/keymap.c b/keyboards/handwired/riblee_f401/keymaps/default/keymap.c index 6892c0fb49..bee4de5ede 100644 --- a/keyboards/handwired/riblee_f401/keymaps/default/keymap.c +++ b/keyboards/handwired/riblee_f401/keymaps/default/keymap.c @@ -158,7 +158,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT_ortho_5x12( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, - _______, QK_BOOT, DEBUG, _______, _______, _______, _______, TERM_ON, TERM_OFF,_______, _______, KC_DEL, + _______, QK_BOOT, DEBUG, _______, _______, _______, _______, _______, _______,_______, _______, KC_DEL, _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, LCG_SWP, LCG_NRM, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/handwired/riblee_f411/config.h b/keyboards/handwired/riblee_f411/config.h index 35d51754d2..6cf4b6370a 100644 --- a/keyboards/handwired/riblee_f411/config.h +++ b/keyboards/handwired/riblee_f411/config.h @@ -23,7 +23,6 @@ #define MATRIX_ROW_PINS { A6, A5, A4, A3, A2 } #define MATRIX_COL_PINS { B10, B1, B0, B15, A8, B3, B4, B5, B14, A0, B8, B9 } -#define UNUSED_PINS { A1, A7, B2, B11, B12, B13 } #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/riblee_f411/keymaps/default/keymap.c b/keyboards/handwired/riblee_f411/keymaps/default/keymap.c index 2e9485d6b9..ff7e1117b8 100644 --- a/keyboards/handwired/riblee_f411/keymaps/default/keymap.c +++ b/keyboards/handwired/riblee_f411/keymaps/default/keymap.c @@ -158,7 +158,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT_ortho_5x12( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, - _______, QK_BOOT, DEBUG, _______, _______, _______, _______, TERM_ON, TERM_OFF,_______, _______, KC_DEL, + _______, QK_BOOT, DEBUG, _______, _______, _______, _______, _______, _______,_______, _______, KC_DEL, _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, LCG_SWP, LCG_NRM, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/handwired/rs60/config.h b/keyboards/handwired/rs60/config.h index 60553af596..506b0bff0d 100644 --- a/keyboards/handwired/rs60/config.h +++ b/keyboards/handwired/rs60/config.h @@ -23,7 +23,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. /* key matrix pins */ #define MATRIX_ROW_PINS { B5, B6, B4, B2, E6 } #define MATRIX_COL_PINS { C6, D4, D0, D1, D2, D3, F4, F5, F6, F7, B1, B3} -#define UNUSED_PINS { } #define QMK_ESC_OUTPUT C6 #define QMK_ESC_INPUT B4 diff --git a/keyboards/handwired/rs60/keymaps/default/keymap.c b/keyboards/handwired/rs60/keymaps/default/keymap.c index 6b311a7ebb..6d5dc4a32a 100644 --- a/keyboards/handwired/rs60/keymaps/default/keymap.c +++ b/keyboards/handwired/rs60/keymaps/default/keymap.c @@ -155,7 +155,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT_ortho_5x12( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, - _______, QK_BOOT, DEBUG, _______, _______, _______, _______, TERM_ON, TERM_OFF,_______, _______, KC_DEL, + _______, QK_BOOT, DEBUG, _______, _______, _______, _______, _______, _______,_______, _______, KC_DEL, _______, _______, _______, _______, _______, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/handwired/selene/config.h b/keyboards/handwired/selene/config.h index be61d7da23..25603183a7 100644 --- a/keyboards/handwired/selene/config.h +++ b/keyboards/handwired/selene/config.h @@ -23,7 +23,6 @@ #define MATRIX_ROW_PINS { B10, B9, B15, B14, B13, B8} #define MATRIX_COL_PINS { A9, A10, B11, B7, B6, B5, B4, B3, B2, B1, B0, C14, A4, A5, A6, A7, A8, A15, A13, A14, B12 } -#define UNUSED_PINS #define RGB_DI_PIN A3 #define RGBLED_NUM 50 diff --git a/keyboards/handwired/sick68/config.h b/keyboards/handwired/sick68/config.h index 846f50a87a..79ce50ba8b 100644 --- a/keyboards/handwired/sick68/config.h +++ b/keyboards/handwired/sick68/config.h @@ -37,7 +37,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. { D3, D2, D1, D0, D4 } #define MATRIX_COL_PINS \ { C6, D7, E6, B4, B5, B0, D5, B6, B2, B3, B1, F7, F6, F5, F4 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/sick_pad/config.h b/keyboards/handwired/sick_pad/config.h index bc563be4f1..7f8df32c06 100644 --- a/keyboards/handwired/sick_pad/config.h +++ b/keyboards/handwired/sick_pad/config.h @@ -25,7 +25,6 @@ /* key matrix pins */ #define MATRIX_ROW_PINS { B0, B1, B2, B3, B4 } #define MATRIX_COL_PINS { B9, B15, B14, B13 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/slash/config.h b/keyboards/handwired/slash/config.h index 325b3b5cfd..f3c92e6dd2 100644 --- a/keyboards/handwired/slash/config.h +++ b/keyboards/handwired/slash/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { C7, D6, B7, B6, B5, D7, C6, D0 } #define MATRIX_COL_PINS { D2, F0, F1, F4, F5, F6, F7, D3 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/snatchpad/config.h b/keyboards/handwired/snatchpad/config.h index dce9776dcd..188135b4d6 100644 --- a/keyboards/handwired/snatchpad/config.h +++ b/keyboards/handwired/snatchpad/config.h @@ -21,7 +21,6 @@ */ #define MATRIX_ROW_PINS { F4, F5, F6 } #define MATRIX_COL_PINS { B1, B3, B2 } -#define UNUSED_PINS /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/space_oddity/config.h b/keyboards/handwired/space_oddity/config.h index b4825cf1a2..0c8e86704e 100644 --- a/keyboards/handwired/space_oddity/config.h +++ b/keyboards/handwired/space_oddity/config.h @@ -15,7 +15,6 @@ /* key matrix pins */ #define MATRIX_ROW_PINS { F4, F5, F6, F7, B1, B3 } #define MATRIX_COL_PINS { B2, B6, B5, B4, E6, D7, C6, D4, D0, D1, D2, D3 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/steamvan/rev1/config.h b/keyboards/handwired/steamvan/rev1/config.h index acccb1e7c6..2a33f1fc13 100644 --- a/keyboards/handwired/steamvan/rev1/config.h +++ b/keyboards/handwired/steamvan/rev1/config.h @@ -27,7 +27,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { A6, A5, A4, A3 } #define MATRIX_COL_PINS { A9, A8, B15, B14, B13, A10, B9, B6, B5, B4, B3, A15 } -#define UNUSED_PINS /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/sticc14/config.h b/keyboards/handwired/sticc14/config.h index 962c9e0356..19ae8d1dbf 100644 --- a/keyboards/handwired/sticc14/config.h +++ b/keyboards/handwired/sticc14/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { F4, F5, F6, F7, B1 } #define MATRIX_COL_PINS { B6, B2, B3 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/symmetric70_proto/promicro/config.h b/keyboards/handwired/symmetric70_proto/promicro/config.h index d0126a0b81..48ef0cbdb5 100644 --- a/keyboards/handwired/symmetric70_proto/promicro/config.h +++ b/keyboards/handwired/symmetric70_proto/promicro/config.h @@ -41,7 +41,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. +-----------------+ ***************************************/ -#define UNUSED_PINS /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/symmetric70_proto/proton_c/config.h b/keyboards/handwired/symmetric70_proto/proton_c/config.h index 5f1880d3fc..040575ef55 100644 --- a/keyboards/handwired/symmetric70_proto/proton_c/config.h +++ b/keyboards/handwired/symmetric70_proto/proton_c/config.h @@ -49,7 +49,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. +-----------------+ ***************************************/ -#define UNUSED_PINS /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/symmetry60/config.h b/keyboards/handwired/symmetry60/config.h index 22cb401e8d..17ea91745b 100644 --- a/keyboards/handwired/symmetry60/config.h +++ b/keyboards/handwired/symmetry60/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { D0, D1, D2, D3, D5 } #define MATRIX_COL_PINS { F0, F1, F4, F5, F6, F7, C7, B6, B5, B4, D7, D6, D4, E6 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/t111/config.h b/keyboards/handwired/t111/config.h index 6cd9616165..691bc7d121 100644 --- a/keyboards/handwired/t111/config.h +++ b/keyboards/handwired/t111/config.h @@ -28,7 +28,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define MATRIX_COL_PINS { B15, B11, B10, B1, B0, A10, A9, A7, A6, A5, A4, A8, B13, B14 } /* 0 1 2 3 4 5 6 7 8 9 A B C D*/ -#define UNUSED_PINS /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION ROW2COL diff --git a/keyboards/handwired/tennie/config.h b/keyboards/handwired/tennie/config.h index 4659804169..e59f7efbe1 100644 --- a/keyboards/handwired/tennie/config.h +++ b/keyboards/handwired/tennie/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { C6, D4, D0} #define MATRIX_COL_PINS { D7, E6, B4, B5 } -#define UNUSED_PINS { B1, B2, B3, B6, F4, F5, F6, F7, D1} /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/terminus_mini/config.h b/keyboards/handwired/terminus_mini/config.h index a2c843a79f..4dec0f1341 100644 --- a/keyboards/handwired/terminus_mini/config.h +++ b/keyboards/handwired/terminus_mini/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { B5, B4, D7, D6 } #define MATRIX_COL_PINS { B0, D0, D5, B6, D4, C7, F7, F6, F5, F4, F1, F0 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/terminus_mini/keymaps/default/keymap.c b/keyboards/handwired/terminus_mini/keymaps/default/keymap.c index 8062aa711f..8d0631072f 100644 --- a/keyboards/handwired/terminus_mini/keymaps/default/keymap.c +++ b/keyboards/handwired/terminus_mini/keymaps/default/keymap.c @@ -193,7 +193,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( - _______, _______, _______, _______, _______, QK_BOOT, _______, TERM_ON, TERM_OFF, _______, _______, KC_DEL, + _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/handwired/trackpoint/config.h b/keyboards/handwired/trackpoint/config.h index 97bb0b905f..a4b468faef 100644 --- a/keyboards/handwired/trackpoint/config.h +++ b/keyboards/handwired/trackpoint/config.h @@ -43,7 +43,6 @@ #define MATRIX_COL_PINS { F1, F4, F5 } #define MATRIX_ROW_PINS { F0 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/tractyl_manuform/4x6_right/config.h b/keyboards/handwired/tractyl_manuform/4x6_right/config.h index ab46bc5276..5bfb17ee31 100644 --- a/keyboards/handwired/tractyl_manuform/4x6_right/config.h +++ b/keyboards/handwired/tractyl_manuform/4x6_right/config.h @@ -85,7 +85,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* PMW3360 Settings */ -#define PMW3360_CS_PIN B0 +/* PMW33XX Settings */ +#define PMW33XX_CS_PIN B0 #define POINTING_DEVICE_RIGHT diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/elite_c/config.h b/keyboards/handwired/tractyl_manuform/5x6_right/elite_c/config.h index d8d36e824c..ab72957b5c 100644 --- a/keyboards/handwired/tractyl_manuform/5x6_right/elite_c/config.h +++ b/keyboards/handwired/tractyl_manuform/5x6_right/elite_c/config.h @@ -47,5 +47,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define ENCODERS_PAD_B \ { C7 } -/* PMW3360 Settings */ -#define PMW3360_CS_PIN B6 +/* PMW33XX Settings */ +#define PMW33XX_CS_PIN B6 diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/f303/config.h b/keyboards/handwired/tractyl_manuform/5x6_right/f303/config.h index f9a44587b0..bf7f2c7605 100644 --- a/keyboards/handwired/tractyl_manuform/5x6_right/f303/config.h +++ b/keyboards/handwired/tractyl_manuform/5x6_right/f303/config.h @@ -25,9 +25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. { B0, B1, B2, B3, B4, B5 } #define MATRIX_ROW_PINS \ { B10, B11, B12, A14, A13, A15 } - -#define UNUSED_PINS \ - { A0, A2, A7, A8 } // B2 used for BOOT1, has internal pull down? // A9 has internal pull-down // A11 and A12 are used for USB sense. DO NOT USE. @@ -99,6 +96,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. // #define DEBUG_EEPROM_OUTPUT /* pmw3360 config */ -#define PMW3360_CS_PIN B9 -#define PMW3360_SPI_MODE 3 -#define PMW3360_SPI_DIVISOR 8 +#define PMW33XX_CS_PIN B9 +#define PMW33XX_SPI_DIVISOR 8 diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/f411/config.h b/keyboards/handwired/tractyl_manuform/5x6_right/f411/config.h index 5f0350810c..b31f450553 100644 --- a/keyboards/handwired/tractyl_manuform/5x6_right/f411/config.h +++ b/keyboards/handwired/tractyl_manuform/5x6_right/f411/config.h @@ -26,9 +26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define MATRIX_ROW_PINS \ { B12, B13, B14, B15, A8, A10 } -#define UNUSED_PINS \ - { C15 } - #define DIODE_DIRECTION COL2ROW // #define USB_VBUS_PIN B10 // doesn't seem to work for me on one of my controllers... */ @@ -102,7 +99,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define EXTERNAL_EEPROM_SPI_CLOCK_DIVISOR 64 /* pmw3360 config */ -#define PMW3360_CS_PIN B0 -#define PMW3360_SPI_MODE 3 -#define PMW3360_SPI_DIVISOR 64 -#define PMW3360_FIRMWARE_UPLOAD_FAST +#define PMW33XX_CS_PIN B0 diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/teensy2pp/config.h b/keyboards/handwired/tractyl_manuform/5x6_right/teensy2pp/config.h index 442d474920..6eb3186332 100644 --- a/keyboards/handwired/tractyl_manuform/5x6_right/teensy2pp/config.h +++ b/keyboards/handwired/tractyl_manuform/5x6_right/teensy2pp/config.h @@ -51,5 +51,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define ENCODERS_PAD_B \ { D4 } -/* PMW3360 Settings */ -#define PMW3360_CS_PIN B0 +/* PMW33XX Settings */ +#define PMW33XX_CS_PIN B0 diff --git a/keyboards/handwired/tractyl_manuform/tractyl_manuform.c b/keyboards/handwired/tractyl_manuform/tractyl_manuform.c index 0ae49b6397..d3e2e02975 100644 --- a/keyboards/handwired/tractyl_manuform/tractyl_manuform.c +++ b/keyboards/handwired/tractyl_manuform/tractyl_manuform.c @@ -159,10 +159,8 @@ void charybdis_set_pointer_dragscroll_enabled(bool enable) { maybe_update_pointing_device_cpi(&g_charybdis_config); } -void pointing_device_init_kb(void) { maybe_update_pointing_device_cpi(&g_charybdis_config); } - # ifndef CONSTRAIN_HID -# define CONSTRAIN_HID(value) ((value) < -127 ? -127 : ((value) > 127 ? 127 : (value))) +# define CONSTRAIN_HID(value) ((value) < XY_REPORT_MIN ? XY_REPORT_MIN : ((value) > XY_REPORT_MAX ? XY_REPORT_MAX : (value))) # endif // !CONSTRAIN_HID /** @@ -249,17 +247,17 @@ static bool has_shift_mod(void) { */ __attribute__((unused)) static void debug_charybdis_config_to_console(charybdis_config_t* config) { # ifdef CONSOLE_ENABLE - dprintf("(charybdis) process_record_kb: config = {\n" - "\traw = 0x%04X,\n" - "\t{\n" - "\t\tis_dragscroll_enabled=%b\n" - "\t\tis_sniping_enabled=%b\n" - "\t\tdefault_dpi=0x%02X (%ld)\n" - "\t\tsniping_dpi=0x%01X (%ld)\n" - "\t}\n" - "}\n", - config->raw, config->is_dragscroll_enabled, config->is_sniping_enabled, config->pointer_default_dpi, get_pointer_default_dpi(config), config->pointer_sniping_dpi, get_pointer_sniping_dpi(config)); -# endif // CONSOLE_ENABLE + IGNORE_FORMAT_WARNING(dprintf("(charybdis) process_record_kb: config = {\n" + "\traw = 0x%04X,\n" + "\t{\n" + "\t\tis_dragscroll_enabled=%b\n" + "\t\tis_sniping_enabled=%b\n" + "\t\tdefault_dpi=0x%02X (%ld)\n" + "\t\tsniping_dpi=0x%01X (%ld)\n" + "\t}\n" + "}\n", + config->raw, config->is_dragscroll_enabled, config->is_sniping_enabled, config->pointer_default_dpi, get_pointer_default_dpi(config), config->pointer_sniping_dpi, get_pointer_sniping_dpi(config))); +# endif // CONSOLE_ENABLE } bool process_record_kb(uint16_t keycode, keyrecord_t* record) { @@ -339,6 +337,7 @@ void charybdis_config_sync_handler(uint8_t initiator2target_buffer_size, const v } void keyboard_post_init_kb(void) { + maybe_update_pointing_device_cpi(&g_charybdis_config); transaction_register_rpc(RPC_ID_KB_CONFIG_SYNC, charybdis_config_sync_handler); keyboard_post_init_user(); diff --git a/keyboards/handwired/traveller/config.h b/keyboards/handwired/traveller/config.h index ef68263c06..82de3bc0ba 100644 --- a/keyboards/handwired/traveller/config.h +++ b/keyboards/handwired/traveller/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { D0, D1, D3, D2 } #define MATRIX_COL_PINS { B5, D6, B7, B6, F6, B1, B3, F7, B4, E6, D7, C6, D4 } -#define UNUSED_PINS /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/traveller/keymaps/default/keymap.c b/keyboards/handwired/traveller/keymaps/default/keymap.c index 288acbe108..2cd57db35f 100644 --- a/keyboards/handwired/traveller/keymaps/default/keymap.c +++ b/keyboards/handwired/traveller/keymaps/default/keymap.c @@ -219,7 +219,7 @@ void LayerLEDSet(uint8_t layr) { uint8_t old_layer = _QW; void matrix_scan_user(void) { - uint8_t layer = biton32(layer_state); + uint8_t layer = get_highest_layer(layer_state); if (old_layer != layer) { LayerLEDSet(layer); diff --git a/keyboards/handwired/tritium_numpad/config.h b/keyboards/handwired/tritium_numpad/config.h index 73c0201e03..7fee66e04f 100644 --- a/keyboards/handwired/tritium_numpad/config.h +++ b/keyboards/handwired/tritium_numpad/config.h @@ -27,7 +27,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define MATRIX_ROW_PINS { D1, D0, D4, C6, D7, E6 } #define MATRIX_COL_PINS { F4, F6, B1, B2 } -#define UNUSED_PINS #define LED_NUM_LOCK_PIN D5 #define LED_PIN_ON_STATE 0 diff --git a/keyboards/handwired/tritium_numpad/keymaps/blu/keymap.c b/keyboards/handwired/tritium_numpad/keymaps/blu/keymap.c index b618675295..50bbf232b5 100644 --- a/keyboards/handwired/tritium_numpad/keymaps/blu/keymap.c +++ b/keyboards/handwired/tritium_numpad/keymaps/blu/keymap.c @@ -9,7 +9,7 @@ void keyboard_pre_init_user(void) layer_state_t layer_state_set_user(layer_state_t state) { // Switch layer LED accordingly - switch (biton32(state)) { + switch (get_highest_layer(state)) { case 0: writePinHigh(B0); break; diff --git a/keyboards/handwired/twadlee/tp69/config.h b/keyboards/handwired/twadlee/tp69/config.h index 0af5afa517..dd69394916 100644 --- a/keyboards/handwired/twadlee/tp69/config.h +++ b/keyboards/handwired/twadlee/tp69/config.h @@ -36,7 +36,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define MATRIX_ROW_PINS { B2, B1, B0, C0, D1, D0, D3, D4, D2, C3 } /* 20 21 18 0 1 3 4 5 */ #define MATRIX_COL_PINS { D5, D6, A4, B16, B17, A1, A2, D7 } -#define UNUSED_PINS /* for trackpoint: C1 (22) C2 (23) */ diff --git a/keyboards/handwired/unicomp_mini_m/config.h b/keyboards/handwired/unicomp_mini_m/config.h index 78b42577d8..77e2d1c7ea 100644 --- a/keyboards/handwired/unicomp_mini_m/config.h +++ b/keyboards/handwired/unicomp_mini_m/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { F7, F6, F5, F4, F3, F2, F1, F0, E6, E7, B0, B1 } #define MATRIX_COL_PINS { C7, C6, C5, C4, C3, C2, C1, C0, E1, E0, D7, B7, D5, D4, D3, D2 } -#define UNUSED_PINS #define LED_PIN_ON_STATE 0 #define LED_NUM_LOCK_PIN B6 diff --git a/keyboards/handwired/uthol/rev1/config.h b/keyboards/handwired/uthol/rev1/config.h index dea45c7698..89115c5aee 100644 --- a/keyboards/handwired/uthol/rev1/config.h +++ b/keyboards/handwired/uthol/rev1/config.h @@ -22,4 +22,3 @@ /* Uthol PCB default pin-out */ #define MATRIX_ROW_PINS { D1, D0, D4, C6, D7 } #define MATRIX_COL_PINS { D3, B6, B2, B3, B1, F7, F6, F5, F4, B5, B4, D2 } -#define UNUSED_PINS diff --git a/keyboards/handwired/uthol/rev2/config.h b/keyboards/handwired/uthol/rev2/config.h index c7ae53c20b..6fccc3047d 100644 --- a/keyboards/handwired/uthol/rev2/config.h +++ b/keyboards/handwired/uthol/rev2/config.h @@ -22,7 +22,6 @@ /* Uthol PCB default pin-out */ #define MATRIX_ROW_PINS { B1, F7, F6, F5, F4 } #define MATRIX_COL_PINS { D3, D2, D1, D0, D4, C6, D7, B5, B4, B6, B2, B3 } -#define UNUSED_PINS //RGB Stuff #define RGB_DI_PIN E6 diff --git a/keyboards/handwired/uthol/rev3/config.h b/keyboards/handwired/uthol/rev3/config.h index 87f3935e65..14da0d8a60 100644 --- a/keyboards/handwired/uthol/rev3/config.h +++ b/keyboards/handwired/uthol/rev3/config.h @@ -26,7 +26,6 @@ #define MATRIX_ROW_PINS \ { A4, A3, A2, A1, A0 } -#define UNUSED_PINS // Encoder config #define ENCODERS_PAD_A \ @@ -53,6 +52,7 @@ #define LOCKING_RESYNC_ENABLE #define TAPPING_TERM 500 +#define PERMISSIVE_HOLD // RGB Stuff #define RGB_DI_PIN B0 diff --git a/keyboards/handwired/videowriter/config.h b/keyboards/handwired/videowriter/config.h index ad54ca3c13..8bb4835e3d 100644 --- a/keyboards/handwired/videowriter/config.h +++ b/keyboards/handwired/videowriter/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { D7, C6, D1, D0, D4, D2, D3, E6, B4, B5 } #define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2, B6 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/wabi/config.h b/keyboards/handwired/wabi/config.h index 63068c6bc0..f78413445a 100644 --- a/keyboards/handwired/wabi/config.h +++ b/keyboards/handwired/wabi/config.h @@ -35,7 +35,6 @@ diode) #define MATRIX_ROW_PINS { D5, F5, F6, F7, B0 } #define MATRIX_COL_PINS { F4, F1, F0, E6, B3, B7, D0, D1, D2, D3, D4, D6, D7, B5 } -#define UNUSED_PINS { B1, B2, C7, C6, B6, B4 } /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/woodpad/config.h b/keyboards/handwired/woodpad/config.h index 163f7db6ae..16290df805 100644 --- a/keyboards/handwired/woodpad/config.h +++ b/keyboards/handwired/woodpad/config.h @@ -35,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { D1, D0, D4, C6, D7 } #define MATRIX_COL_PINS { B1, B3, B2, B6 } -#define UNUSED_PINS /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/xealous/config.h b/keyboards/handwired/xealous/config.h index 5c1469b1f0..2502b4d196 100644 --- a/keyboards/handwired/xealous/config.h +++ b/keyboards/handwired/xealous/config.h @@ -29,7 +29,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. //#define DEBUG_MATRIX_SCAN_RATE //Use this to determine scan-rate. #define FORCE_NKRO -#define QMK_KEYS_PER_SCAN 4 //if we press four keys simultaneously, lets process them simultaneously... #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/xealousbrown/config.h b/keyboards/handwired/xealousbrown/config.h index c9093342c4..37d424b01e 100644 --- a/keyboards/handwired/xealousbrown/config.h +++ b/keyboards/handwired/xealousbrown/config.h @@ -43,7 +43,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #define MATRIX_ROW_PINS { D3, D2, D1, D0, D4 } #define MATRIX_COL_PINS { C6, D7, E6, B4, B5, B6, B2, B3, B1, F7, F6, F5, F4 } -#define UNUSED_PINS { } /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/z150/config.h b/keyboards/handwired/z150/config.h index 5f0a321db6..96bda8c8d8 100644 --- a/keyboards/handwired/z150/config.h +++ b/keyboards/handwired/z150/config.h @@ -25,7 +25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define MATRIX_ROW_PINS { B13, B14, B15, A8, A9, A3, A10, A1, A2, A15, A0 } #define MATRIX_COL_PINS { B11, B10, B1, B0, A7, A6, A5, A4 } -#define UNUSED_PINS #define NUM_LOCK_LED_PIN B5 #define SCROLL_LOCK_LED_PIN B4 diff --git a/keyboards/handwired/zergo/config.h b/keyboards/handwired/zergo/config.h index 9ede839248..8453b8efc9 100644 --- a/keyboards/handwired/zergo/config.h +++ b/keyboards/handwired/zergo/config.h @@ -26,7 +26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. /* key matrix pins */ #define MATRIX_ROW_PINS { B1, D7, C3, D6, D5, D4 } #define MATRIX_COL_PINS { C7, C6, C5, C4, C2, C1, B7, D3, D2, B6, B5, B4, B3, B2 } -#define UNUSED_PINS { A0, A1, A2, A3, A4, A5, A6, A7, B0, C0, E0, E1, E4, E5, F0, F1, F2, F3, F4, F5, F6, F7 } /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW |