From 0bf72e4fe52c7458a0c1376647af2aa53901f6ee Mon Sep 17 00:00:00 2001 From: nopunin10did Date: Sat, 19 Nov 2022 14:35:35 -0500 Subject: [PATCH 1/3] [Keyboard] Add Jabberwocky v2 and reorganize (#19014) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- .../jabberwocky/keymaps/via/keymap.c | 46 ---- .../jabberwocky/{ => v1}/config.h | 0 .../jabberwocky/{ => v1}/info.json | 4 +- .../{ => v1}/keymaps/default/keymap.c | 8 +- .../{ => v1}/keymaps/nopunin10did/keymap.c | 13 +- .../jabberwocky/v1/keymaps/via/keymap.c | 46 ++++ .../nopunin10did => v1/keymaps/via}/rules.mk | 0 .../jabberwocky/{ => v1}/readme.md | 8 +- .../jabberwocky/{ => v1}/rules.mk | 0 .../jabberwocky/{jabberwocky.c => v1/v1.c} | 4 +- .../jabberwocky/{jabberwocky.h => v1/v1.h} | 6 +- .../nopunin10did/jabberwocky/v2/config.h | 50 ++++ .../nopunin10did/jabberwocky/v2/info.json | 257 ++++++++++++++++++ .../jabberwocky/v2/keymaps/default/keymap.c | 38 +++ .../v2/keymaps/nopunin10did/keymap.c | 51 ++++ .../jabberwocky/v2/keymaps/via/keymap.c | 46 ++++ .../jabberwocky/{ => v2}/keymaps/via/rules.mk | 0 .../nopunin10did/jabberwocky/v2/readme.md | 35 +++ .../nopunin10did/jabberwocky/v2/rules.mk | 19 ++ keyboards/nopunin10did/jabberwocky/v2/v2.c | 17 ++ keyboards/nopunin10did/jabberwocky/v2/v2.h | 65 +++++ 21 files changed, 647 insertions(+), 66 deletions(-) delete mode 100644 keyboards/nopunin10did/jabberwocky/keymaps/via/keymap.c rename keyboards/nopunin10did/jabberwocky/{ => v1}/config.h (100%) rename keyboards/nopunin10did/jabberwocky/{ => v1}/info.json (99%) rename keyboards/nopunin10did/jabberwocky/{ => v1}/keymaps/default/keymap.c (94%) rename keyboards/nopunin10did/jabberwocky/{ => v1}/keymaps/nopunin10did/keymap.c (92%) create mode 100644 keyboards/nopunin10did/jabberwocky/v1/keymaps/via/keymap.c rename keyboards/nopunin10did/jabberwocky/{keymaps/nopunin10did => v1/keymaps/via}/rules.mk (100%) rename keyboards/nopunin10did/jabberwocky/{ => v1}/readme.md (78%) rename keyboards/nopunin10did/jabberwocky/{ => v1}/rules.mk (100%) rename keyboards/nopunin10did/jabberwocky/{jabberwocky.c => v1/v1.c} (88%) rename keyboards/nopunin10did/jabberwocky/{jabberwocky.h => v1/v1.h} (97%) create mode 100644 keyboards/nopunin10did/jabberwocky/v2/config.h create mode 100644 keyboards/nopunin10did/jabberwocky/v2/info.json create mode 100644 keyboards/nopunin10did/jabberwocky/v2/keymaps/default/keymap.c create mode 100644 keyboards/nopunin10did/jabberwocky/v2/keymaps/nopunin10did/keymap.c create mode 100644 keyboards/nopunin10did/jabberwocky/v2/keymaps/via/keymap.c rename keyboards/nopunin10did/jabberwocky/{ => v2}/keymaps/via/rules.mk (100%) create mode 100644 keyboards/nopunin10did/jabberwocky/v2/readme.md create mode 100644 keyboards/nopunin10did/jabberwocky/v2/rules.mk create mode 100644 keyboards/nopunin10did/jabberwocky/v2/v2.c create mode 100644 keyboards/nopunin10did/jabberwocky/v2/v2.h diff --git a/keyboards/nopunin10did/jabberwocky/keymaps/via/keymap.c b/keyboards/nopunin10did/jabberwocky/keymaps/via/keymap.c deleted file mode 100644 index bf727c9b1f..0000000000 --- a/keyboards/nopunin10did/jabberwocky/keymaps/via/keymap.c +++ /dev/null @@ -1,46 +0,0 @@ -/* Copyright 2021 W. Alex Ronke, a.k.a. NoPunIn10Did (w.alex.ronke@gmail.com) - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -#include QMK_KEYBOARD_H - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -[0] = LAYOUT_rh_any( - -KC_ESC ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 , KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_PSCR,KC_SLCK,KC_INS ,KC_DEL ,KC_HOME,KC_END ,KC_PGUP,KC_PGDN, - KC_GRV ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS,KC_EQL ,KC_INT3,KC_BSPC, KC_NLCK,KC_PSLS,KC_PAST,KC_PAUS, - KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T , KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_LBRC,KC_RBRC,KC_BSLS, KC_P7 ,KC_P8 ,KC_P9 ,KC_PMNS, - KC_CAPS,KC_A ,KC_S ,KC_D ,KC_F ,KC_G , KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN,KC_QUOT,KC_NUHS,KC_ENT , KC_P4 ,KC_P5 ,KC_P6 ,KC_PPLS, -KC_LSFT,KC_NUBS,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,MO(1), MO(1), KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_INT1,KC_RSFT,KC_UP , KC_P1 ,KC_P2 ,KC_P3 ,KC_PENT, - KC_LCTL,KC_LGUI, KC_LALT,KC_MENU,KC_SPC , KC_SPC , KC_ALGR, KC_RGUI,KC_RCTL,KC_LEFT,KC_DOWN,KC_RGHT, KC_P0 ,KC_P0 ,KC_PDOT,KC_PENT), - - -[1] = LAYOUT_rh_any( -QK_BOOT ,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, - _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______, - _______,_______,_______,_______,QK_BOOT ,_______, _______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______, - _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______, -_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______, - _______,_______, _______,_______,_______, _______, _______, _______,_______,_______,_______,_______, _______,_______,_______,_______), - -[2] = LAYOUT_rh_any( -_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, - _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______, - _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______, - _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______, -_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______, - _______,_______, _______,_______,_______, _______, _______, _______,_______,_______,_______,_______, _______,_______,_______,_______), -}; diff --git a/keyboards/nopunin10did/jabberwocky/config.h b/keyboards/nopunin10did/jabberwocky/v1/config.h similarity index 100% rename from keyboards/nopunin10did/jabberwocky/config.h rename to keyboards/nopunin10did/jabberwocky/v1/config.h diff --git a/keyboards/nopunin10did/jabberwocky/info.json b/keyboards/nopunin10did/jabberwocky/v1/info.json similarity index 99% rename from keyboards/nopunin10did/jabberwocky/info.json rename to keyboards/nopunin10did/jabberwocky/v1/info.json index 7744716a13..8145f282d7 100644 --- a/keyboards/nopunin10did/jabberwocky/info.json +++ b/keyboards/nopunin10did/jabberwocky/v1/info.json @@ -1,7 +1,7 @@ { "keyboard_name": "Jabberwocky", "manufacturer": "NoPunIn10Did", - "url": "https://github.com/qmk/qmk_firmware/tree/master/keyboards/nopunin10did/railroad", + "url": "https://github.com/qmk/qmk_firmware/tree/master/keyboards/nopunin10did/jabberwocky/v1", "maintainer": "NoPunIn10Did", "usb": { "vid": "0x4E50", @@ -9,7 +9,7 @@ "device_version": "0.0.1" }, "layouts": { - "LAYOUT_rh_any": { + "LAYOUT_rh": { "layout": [ {"x":0.75, "y":0.25, "label":"Esc"}, {"x":2.25, "y":0.25, "label":"F1"}, diff --git a/keyboards/nopunin10did/jabberwocky/keymaps/default/keymap.c b/keyboards/nopunin10did/jabberwocky/v1/keymaps/default/keymap.c similarity index 94% rename from keyboards/nopunin10did/jabberwocky/keymaps/default/keymap.c rename to keyboards/nopunin10did/jabberwocky/v1/keymaps/default/keymap.c index 0fa6955d27..40481d717c 100644 --- a/keyboards/nopunin10did/jabberwocky/keymaps/default/keymap.c +++ b/keyboards/nopunin10did/jabberwocky/v1/keymaps/default/keymap.c @@ -18,17 +18,17 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[0] = LAYOUT_rh_any( +[0] = LAYOUT_rh( -KC_ESC ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 , KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_PSCR,KC_SLCK,KC_INS ,KC_DEL ,KC_HOME,KC_END ,KC_PGUP,KC_PGDN, - KC_GRV ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS,KC_EQL ,KC_BSPC,KC_BSPC, KC_NLCK,KC_PSLS,KC_PAST,KC_PMNS, +KC_ESC ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 , KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_PSCR,KC_SCRL,KC_INS ,KC_DEL ,KC_HOME,KC_END ,KC_PGUP,KC_PGDN, + KC_GRV ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS,KC_EQL ,KC_BSPC,KC_BSPC, KC_NUM ,KC_PSLS,KC_PAST,KC_PMNS, KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T , KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_LBRC,KC_RBRC,KC_BSLS, KC_P7 ,KC_P8 ,KC_P9 ,KC_PPLS, KC_CAPS,KC_A ,KC_S ,KC_D ,KC_F ,KC_G , KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN,KC_QUOT,KC_ENT ,KC_ENT , KC_P4 ,KC_P5 ,KC_P6 ,KC_PPLS, KC_LSFT,KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,MO(1), MO(1), KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_RSFT,KC_RSFT,KC_UP , KC_P1 ,KC_P2 ,KC_P3 ,KC_PENT, KC_LCTL,KC_LGUI, KC_LALT,KC_MENU,KC_SPC , KC_SPC , KC_ALGR, KC_RGUI,KC_RCTL,KC_LEFT,KC_DOWN,KC_RGHT, KC_P0 ,KC_P0 ,KC_PDOT,KC_PENT), -[1] = LAYOUT_rh_any( +[1] = LAYOUT_rh( QK_BOOT ,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,QK_BOOT ,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, diff --git a/keyboards/nopunin10did/jabberwocky/keymaps/nopunin10did/keymap.c b/keyboards/nopunin10did/jabberwocky/v1/keymaps/nopunin10did/keymap.c similarity index 92% rename from keyboards/nopunin10did/jabberwocky/keymaps/nopunin10did/keymap.c rename to keyboards/nopunin10did/jabberwocky/v1/keymaps/nopunin10did/keymap.c index 0ce0ba6156..2d579b39cb 100644 --- a/keyboards/nopunin10did/jabberwocky/keymaps/nopunin10did/keymap.c +++ b/keyboards/nopunin10did/jabberwocky/v1/keymaps/nopunin10did/keymap.c @@ -21,15 +21,16 @@ #define RWINEND RGUI_T(KC_END) #define RCTLEND RCTL_T(KC_END) #define LSHNUBS LSFT_T(KC_NUBS) -#define RSHF_RO RSFT_T(KC_RO) +#define RSHF_RO RSFT_T(KC_INT1) #define FN_CALC LT(1,KC_CALC) #define FN_MENU LT(1,KC_MENU) #define FN_PENT LT(1,KC_PENT) #define CTALDEL LCA(KC_DEL) +#define JPYEN KC_INT3 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[0] = LAYOUT_rh_any( +[0] = LAYOUT_rh( KC_ESC ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 , KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_HOME,KC_END ,KC_PGUP,KC_PGDN,KC_DEL ,KC_INS ,KC_PSCR,KC_BSPC, KC_GRV ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS,KC_EQL ,KC_BSPC,KC_BSPC, KC_EQL ,KC_PSLS,KC_PAST,KC_PMNS, @@ -39,11 +40,11 @@ KC_LSFT,KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,LSA_DEL,FN_CALC,KC_N , KC_LCTL,KC_LGUI, KC_LALT,FN_MENU,KC_SPC , RALTHOM, RALTHOM, RWINEND,RCTLEND,KC_LEFT,KC_DOWN,KC_RGHT, KC_P0 ,KC_P0 ,KC_PDOT,FN_PENT), -[1] = LAYOUT_rh_any( +[1] = LAYOUT_rh( QK_BOOT,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_F13 ,KC_F14 ,KC_F15 ,KC_F16 ,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, - XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, KC_NLCK,XXXXXXX,XXXXXXX,XXXXXXX, - XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,QK_BOOT,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_JYEN, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, - KC_CAPS,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,KC_SLCK,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, + XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, KC_NUM ,XXXXXXX,XXXXXXX,XXXXXXX, + XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,QK_BOOT,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,JPYEN , XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, + KC_CAPS,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,KC_SCRL,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, LSHNUBS,LSHNUBS,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_BRK ,CTALDEL,_______,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,RSHF_RO,RSHF_RO,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,_______, _______,_______, _______,_______,XXXXXXX, _______, _______, _______,_______,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,KC_PCMM,_______) }; diff --git a/keyboards/nopunin10did/jabberwocky/v1/keymaps/via/keymap.c b/keyboards/nopunin10did/jabberwocky/v1/keymaps/via/keymap.c new file mode 100644 index 0000000000..14ce6dd374 --- /dev/null +++ b/keyboards/nopunin10did/jabberwocky/v1/keymaps/via/keymap.c @@ -0,0 +1,46 @@ +/* Copyright 2021 W. Alex Ronke, a.k.a. NoPunIn10Did (w.alex.ronke@gmail.com) + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[0] = LAYOUT_lh( + +KC_HOME,KC_END ,KC_PGUP,KC_PGDN,KC_ESC ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 , KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_PSCR,KC_SCRL,KC_INS ,KC_DEL , +KC_NUM ,KC_PSLS,KC_PAST,KC_PMNS, KC_GRV ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS,KC_EQL ,KC_BSPC,KC_BSPC, +KC_P7 ,KC_P8 ,KC_P9 ,KC_PPLS, KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T , KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_LBRC,KC_RBRC,KC_BSLS, +KC_P4 ,KC_P5 ,KC_P6 ,KC_PPLS, KC_CAPS,KC_A ,KC_S ,KC_D ,KC_F ,KC_G , KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN,KC_QUOT,KC_ENT ,KC_ENT , +KC_P1 ,KC_P2 ,KC_P3 ,KC_PENT,KC_LSFT,KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,MO(1), MO(1), KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_RSFT,KC_RSFT,KC_UP , +KC_P0 ,KC_P0 ,KC_PDOT,KC_PENT, KC_LCTL,KC_LGUI, KC_LALT,KC_MENU,KC_SPC , KC_SPC , KC_ALGR, KC_RGUI,KC_RCTL,KC_LEFT,KC_DOWN,KC_RGHT) , + + +[1] = LAYOUT_lh( +_______,_______,_______,_______,QK_BOOT,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, +_______,_______,_______,_______, _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______, +_______,_______,_______,_______, _______,_______,_______,_______,QK_BOOT,_______, _______,_______,_______,_______,_______,_______,_______,_______, +_______,_______,_______,_______, _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______, +_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, +_______,_______,_______,_______, _______,_______, _______,_______,_______, _______, _______, _______,_______,_______,_______,_______) , + +[2] = LAYOUT_lh( +_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, +_______,_______,_______,_______, _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______, +_______,_______,_______,_______, _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______, +_______,_______,_______,_______, _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______, +_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, +_______,_______,_______,_______, _______,_______, _______,_______,_______, _______, _______, _______,_______,_______,_______,_______) +}; diff --git a/keyboards/nopunin10did/jabberwocky/keymaps/nopunin10did/rules.mk b/keyboards/nopunin10did/jabberwocky/v1/keymaps/via/rules.mk similarity index 100% rename from keyboards/nopunin10did/jabberwocky/keymaps/nopunin10did/rules.mk rename to keyboards/nopunin10did/jabberwocky/v1/keymaps/via/rules.mk diff --git a/keyboards/nopunin10did/jabberwocky/readme.md b/keyboards/nopunin10did/jabberwocky/v1/readme.md similarity index 78% rename from keyboards/nopunin10did/jabberwocky/readme.md rename to keyboards/nopunin10did/jabberwocky/v1/readme.md index 98c514caa8..8c845064de 100644 --- a/keyboards/nopunin10did/jabberwocky/readme.md +++ b/keyboards/nopunin10did/jabberwocky/v1/readme.md @@ -6,14 +6,16 @@ A full-size, columnar-staggered, Alice-style keyboard. The Jabberwocky comes in * Dexterous (with numpad on the right side, pictured above) * Sinister (with numpad on the left side) -Both the Dexterous and Sinister use the same firmware. The numpad and the four keys above it are simply transposed from the right to the left side of the board. +Both the v1 Dexterous and v1 Sinister use the same firmware. The numpad and the four keys above it are simply transposed from the right to the left side of the board. For more information, join the [NoPunIn10Key Discord](https://discord.gg/sku2Y6w). * Keyboard Maintainer: [Alex Ronke](https://nopunin10did.com/), also known as [NoPunIn10Did](https://github.com/NoPunIn10Did) -* Hardware Supported: Dexterous Jabberwocky and Sinister Jabberwocky (2021 March) +* Hardware Supported: Dexterous Jabberwocky and Sinister Jabberwocky v1 (2021 March) * Hardware Availability: Currently by request only +**The v1 firmware is not compatible with any of the second-generation v2 Jabberwocky PCBs. Please use the [v2 firmware](../v2/readme.md) instead.** + To reset the board into bootloader mode, do one of the following: * If loaded with the default layout, use Function-Escape or Function-R *(the function buttons are the 1u keys next to B and N)* @@ -23,6 +25,6 @@ To reset the board into bootloader mode, do one of the following: Make example for this keyboard (after setting up your build environment): - make nopunin10did/jabberwocky:default + make nopunin10did/jabberwocky/v1:default See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/nopunin10did/jabberwocky/rules.mk b/keyboards/nopunin10did/jabberwocky/v1/rules.mk similarity index 100% rename from keyboards/nopunin10did/jabberwocky/rules.mk rename to keyboards/nopunin10did/jabberwocky/v1/rules.mk diff --git a/keyboards/nopunin10did/jabberwocky/jabberwocky.c b/keyboards/nopunin10did/jabberwocky/v1/v1.c similarity index 88% rename from keyboards/nopunin10did/jabberwocky/jabberwocky.c rename to keyboards/nopunin10did/jabberwocky/v1/v1.c index daf85248c5..bea87aa889 100644 --- a/keyboards/nopunin10did/jabberwocky/jabberwocky.c +++ b/keyboards/nopunin10did/jabberwocky/v1/v1.c @@ -1,4 +1,4 @@ -/* Copyright 2021 W. Alex Ronke, a.k.a. NoPunIn10Did (w.alex.ronke@gmail.com) +/* Copyright 2022 W. Alex Ronke, a.k.a. NoPunIn10Did (w.alex.ronke@gmail.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -14,4 +14,4 @@ * along with this program. If not, see . */ -#include "jabberwocky.h" +#include "v1.h" diff --git a/keyboards/nopunin10did/jabberwocky/jabberwocky.h b/keyboards/nopunin10did/jabberwocky/v1/v1.h similarity index 97% rename from keyboards/nopunin10did/jabberwocky/jabberwocky.h rename to keyboards/nopunin10did/jabberwocky/v1/v1.h index 901b1e23ab..7abec1bf1a 100644 --- a/keyboards/nopunin10did/jabberwocky/jabberwocky.h +++ b/keyboards/nopunin10did/jabberwocky/v1/v1.h @@ -1,4 +1,4 @@ -/* Copyright 2021 W. Alex Ronke, a.k.a. NoPunIn10Did (w.alex.ronke@gmail.com) +/* Copyright 2022 W. Alex Ronke, a.k.a. NoPunIn10Did (w.alex.ronke@gmail.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -18,7 +18,7 @@ #include "quantum.h" -#define LAYOUT_rh_any( \ +#define LAYOUT_rh( \ K0007, K0101, K0100, K0201, K0200, K0301, K0300, K0400, K0401, K0500, K0501, K0600, K0601, K0700, K0701, K0000, K0001, K0800, K0801, K0900, K0901, \ K0004, K0102, K0103, K0202, K0203, K0302, K0402, K0403, K0502, K0503, K0602, K0603, K0702, K0703, K0002, K0802, K0803, K0902, K0903, \ K0006, K0104, K0105, K0204, K0205, K0304, K0404, K0405, K0504, K0505, K0604, K0605, K0704, K0705, K0804, K0805, K0904, K0905, \ @@ -41,7 +41,7 @@ { KC_NO, KC_NO, KC_NO, K0311, K0411, K0511, K0611, K0711, K0811, K0911 } \ } -#define LAYOUT_lh_any( \ +#define LAYOUT_lh( \ K0800, K0801, K0900, K0901, K0007, K0101, K0100, K0201, K0200, K0301, K0300, K0400, K0401, K0500, K0501, K0600, K0601, K0700, K0701, K0000, K0001, \ K0802, K0803, K0902, K0903, K0004, K0102, K0103, K0202, K0203, K0302, K0402, K0403, K0502, K0503, K0602, K0603, K0702, K0703, K0002, \ K0804, K0805, K0904, K0905, K0006, K0104, K0105, K0204, K0205, K0304, K0404, K0405, K0504, K0505, K0604, K0605, K0704, K0705, \ diff --git a/keyboards/nopunin10did/jabberwocky/v2/config.h b/keyboards/nopunin10did/jabberwocky/v2/config.h new file mode 100644 index 0000000000..b339209402 --- /dev/null +++ b/keyboards/nopunin10did/jabberwocky/v2/config.h @@ -0,0 +1,50 @@ +/* Copyright 2022 W. Alex Ronke, a.k.a. NoPunIn10Did (w.alex.ronke@gmail.com) + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#pragma once + +#include "config_common.h" + +/* key matrix size */ +#define MATRIX_ROWS 12 +#define MATRIX_COLS 10 + +/* key matrix pins */ +#define MATRIX_ROW_PINS { B2, B3, B1, D4, B4, D1, E6, B0, F0, F1, F4, F5 } +#define MATRIX_COL_PINS { D0, D2, D3, D5, B5, D7, F6, F7, C7, B6 } + +/* LED Configuration */ +#define BACKLIGHT_PINS {D6} +// To have all lights shine uniformly, add C6 and B7 to the list above, then undefine the constants below. +#define LED_NUM_LOCK_PIN C6 +#define LED_CAPS_LOCK_PIN B7 + +#define BACKLIGHT_LEVELS 6 + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE + +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE + +/* Reducing layer count to 3 for via support */ +#define DYNAMIC_KEYMAP_LAYER_COUNT 3 diff --git a/keyboards/nopunin10did/jabberwocky/v2/info.json b/keyboards/nopunin10did/jabberwocky/v2/info.json new file mode 100644 index 0000000000..10e6e28500 --- /dev/null +++ b/keyboards/nopunin10did/jabberwocky/v2/info.json @@ -0,0 +1,257 @@ +{ + "keyboard_name": "Jabberwocky", + "manufacturer": "NoPunIn10Did", + "url": "https://github.com/qmk/qmk_firmware/tree/master/keyboards/nopunin10did/jabberwocky/v2", + "maintainer": "NoPunIn10Did", + "usb": { + "vid": "0x4E50", + "pid": "0x4A57", + "device_version": "0.2.0" + }, + "layouts": { + "LAYOUT_lh": { + "layout": [ + {"x":0, "y":0.25, "label":"Home"}, + {"x":1, "y":0.25, "label":"End"}, + {"x":2, "y":0.25, "label":"PgUp"}, + {"x":3, "y":0.25, "label":"PgDn"}, + {"x":5, "y":0.25, "label":"Esc"}, + {"x":6.5, "y":0.25, "label":"F1"}, + {"x":7.5, "y":0.25, "label":"F2"}, + {"x":8.5, "y":0.25, "label":"F3"}, + {"x":9.5, "y":0.125, "label":"F4"}, + {"x":10.5, "y":0.25, "label":"F5"}, + {"x":11.5, "y":0.375, "label":"F6"}, + {"x":14.75, "y":0.375, "label":"F7"}, + {"x":15.75, "y":0.25, "label":"F8"}, + {"x":16.75, "y":0.125, "label":"F9"}, + {"x":17.75, "y":0.25, "label":"F10"}, + {"x":18.75, "y":0.25, "label":"F11"}, + {"x":19.75, "y":0.25, "label":"F12"}, + {"x":21, "y":0.25, "label":"Print"}, + {"x":22, "y":0.25, "label":"Scroll"}, + {"x":23, "y":0.25, "label":"Ins"}, + {"x":24, "y":0.25, "label":"Del"}, + + {"x":0, "y":1.5, "label":"NumLock"}, + {"x":1, "y":1.5, "label":"P-Div"}, + {"x":2, "y":1.5, "label":"P-Mult"}, + {"x":3, "y":1.5, "label":"P-Minus"}, + {"x":6.25, "y":1.5, "label":"Grave"}, + {"x":7.25, "y":1.5, "label":"1"}, + {"x":8.5, "y":1.5, "label":"2"}, + {"x":9.5, "y":1.375, "label":"3"}, + {"x":10.5, "y":1.5, "label":"4"}, + {"x":11.5, "y":1.625, "label":"5"}, + {"x":14.75, "y":1.625, "label":"6"}, + {"x":15.75, "y":1.5, "label":"7"}, + {"x":16.75, "y":1.375, "label":"8"}, + {"x":17.75, "y":1.5, "label":"9"}, + {"x":19, "y":1.5, "label":"0"}, + {"x":20, "y":1.5, "label":"Dash"}, + {"x":21, "y":1.5, "label":"Equals"}, + {"x":22, "y":1.5, "label":"Backspace"}, + {"x":23, "y":1.5, "label":"Backspace"}, + + {"x":0, "y":2.5, "label":"P-7"}, + {"x":1, "y":2.5, "label":"P-8"}, + {"x":2, "y":2.5, "label":"P-9"}, + {"x":3, "y":2.5, "label":"P-Plus"}, + {"x":5.5, "y":2.5, "w":1.5, "label":"Tab"}, + {"x":7, "y":2.5, "label":"Q"}, + {"x":8.5, "y":2.5, "label":"W"}, + {"x":9.5, "y":2.375, "label":"E"}, + {"x":10.5, "y":2.5, "label":"R"}, + {"x":11.5, "y":2.625, "label":"T"}, + {"x":14.75, "y":2.625, "label":"Y"}, + {"x":15.75, "y":2.5, "label":"U"}, + {"x":16.75, "y":2.375, "label":"I"}, + {"x":17.75, "y":2.5, "label":"O"}, + {"x":19.25, "y":2.5, "label":"P"}, + {"x":20.25, "y":2.5, "label":"L bracket"}, + {"x":21.25, "y":2.5, "label":"R bracket"}, + {"x":22.25, "y":2.5, "w":1.5, "label":"ANSI Backslash"}, + + {"x":0, "y":3.5, "label":"P-4"}, + {"x":1, "y":3.5, "label":"P-5"}, + {"x":2, "y":3.5, "label":"P-6"}, + {"x":3, "y":3.5, "label":"P-Plus"}, + {"x":5, "y":3.5, "w":1.75, "label":"Caps Lock"}, + {"x":6.75, "y":3.5, "label":"A"}, + {"x":8.5, "y":3.5, "label":"S"}, + {"x":9.5, "y":3.375, "label":"D"}, + {"x":10.5, "y":3.5, "label":"F"}, + {"x":11.5, "y":3.625, "label":"G"}, + {"x":14.75, "y":3.625, "label":"H"}, + {"x":15.75, "y":3.5, "label":"J"}, + {"x":16.75, "y":3.375, "label":"K"}, + {"x":17.75, "y":3.5, "label":"L"}, + {"x":19.5, "y":3.5, "label":"Semicolon"}, + {"x":20.5, "y":3.5, "label":"Quote"}, + {"x":21.5, "y":3.5, "label":"Non-US Hash"}, + {"x":22.5, "y":3.5, "w":1.25, "label":"Enter"}, + + {"x":0, "y":4.5, "label":"P-1"}, + {"x":1, "y":4.5, "label":"P-2"}, + {"x":2, "y":4.5, "label":"P-3"}, + {"x":3, "y":4.5, "label":"P-Enter"}, + {"x":4.25, "y":4.5, "w":1.25, "label":"Left Shift"}, + {"x":5.25, "y":4.5, "label":"Non-US Backslash"}, + {"x":6.25, "y":4.5, "label":"Z"}, + {"x":8.5, "y":4.5, "label":"X"}, + {"x":9.5, "y":4.375, "label":"C"}, + {"x":10.5, "y":4.5, "label":"V"}, + {"x":11.5, "y":4.625, "label":"B"}, + {"x":12.5, "y":4.625, "label":"Layer"}, + {"x":13.75, "y":4.625, "label":"Layer"}, + {"x":14.75, "y":4.625, "label":"N"}, + {"x":15.75, "y":4.5, "label":"M"}, + {"x":16.75, "y":4.375, "label":"Comma"}, + {"x":17.75, "y":4.5, "label":"Period"}, + {"x":19.75, "y":4.5, "label":"Slash"}, + {"x":20.75, "y":4.5, "label":"JIS Ro"}, + {"x":21.75, "y":4.5, "w":1.25, "label":"Right Shift"}, + {"x":23, "y":4.5, "label":"Up"}, + + {"x":0, "y":5.5, "label":"P-0"}, + {"x":1, "y":5.5, "label":"P-00"}, + {"x":2, "y":5.5, "label":"P-Decimal"}, + {"x":3, "y":5.5, "label":"P-Enter"}, + {"x":4.75, "y":5.5, "w":1.25, "label":"Left Ctrl"}, + {"x":6, "y":5.5, "w":1.25, "label":"Left GUI"}, + {"x":9, "y":5.5, "w":1.25, "label":"Left Alt"}, + {"x":10.25, "y":5.5, "w":1.25, "label":"Menu"}, + {"x":11.5, "y":5.625, "w":2, "label":"Space"}, + {"x":13.75, "y":5.625, "w":2.75, "label":"Space"}, + {"x":16.5, "y":5.5, "w":1.25, "label":"Right Alt"}, + {"x":19.5, "y":5.5, "w":1.25, "label":"Right GUI"}, + {"x":20.75, "y":5.5, "w":1.25, "label":"Right Ctrl"}, + {"x":22, "y":5.5, "label":"Left"}, + {"x":23, "y":5.5, "label":"Down"}, + {"x":24, "y":5.5, "label":"Right"} + ] + }, + "LAYOUT_rh": { + "layout": [ + {"x":0.75, "y":0.25, "label":"Esc"}, + {"x":2.25, "y":0.25, "label":"F1"}, + {"x":3.25, "y":0.25, "label":"F2"}, + {"x":4.25, "y":0.25, "label":"F3"}, + {"x":5.25, "y":0.125, "label":"F4"}, + {"x":6.25, "y":0.25, "label":"F5"}, + {"x":7.25, "y":0.375, "label":"F6"}, + {"x":10.5, "y":0.375, "label":"F7"}, + {"x":11.5, "y":0.25, "label":"F8"}, + {"x":12.5, "y":0.125, "label":"F9"}, + {"x":13.5, "y":0.25, "label":"F10"}, + {"x":14.5, "y":0.25, "label":"F11"}, + {"x":15.5, "y":0.25, "label":"F12"}, + {"x":16.75, "y":0.25, "label":"Print"}, + {"x":17.75, "y":0.25, "label":"Scroll"}, + {"x":18.75, "y":0.25, "label":"Ins"}, + {"x":19.75, "y":0.25, "label":"Del"}, + {"x":21, "y":0.25, "label":"Home"}, + {"x":22, "y":0.25, "label":"End"}, + {"x":23, "y":0.25, "label":"PgUp"}, + {"x":24, "y":0.25, "label":"PgDn"}, + + {"x":2, "y":1.5, "label":"Grave"}, + {"x":3, "y":1.5, "label":"1"}, + {"x":4.25, "y":1.5, "label":"2"}, + {"x":5.25, "y":1.375, "label":"3"}, + {"x":6.25, "y":1.5, "label":"4"}, + {"x":7.25, "y":1.625, "label":"5"}, + {"x":10.5, "y":1.625, "label":"6"}, + {"x":11.5, "y":1.5, "label":"7"}, + {"x":12.5, "y":1.375, "label":"8"}, + {"x":13.5, "y":1.5, "label":"9"}, + {"x":14.75, "y":1.5, "label":"0"}, + {"x":15.75, "y":1.5, "label":"Dash"}, + {"x":16.75, "y":1.5, "label":"Equals"}, + {"x":17.75, "y":1.5, "label":"Backspace"}, + {"x":18.75, "y":1.5, "label":"Backspace"}, + {"x":21, "y":1.5, "label":"NumLock"}, + {"x":22, "y":1.5, "label":"P-Div"}, + {"x":23, "y":1.5, "label":"P-Mult"}, + {"x":24, "y":1.5, "label":"P-Minus"}, + + {"x":1.25, "y":2.5, "w":1.5, "label":"Tab"}, + {"x":2.75, "y":2.5, "label":"Q"}, + {"x":4.25, "y":2.5, "label":"W"}, + {"x":5.25, "y":2.375, "label":"E"}, + {"x":6.25, "y":2.5, "label":"R"}, + {"x":7.25, "y":2.625, "label":"T"}, + {"x":10.5, "y":2.625, "label":"Y"}, + {"x":11.5, "y":2.5, "label":"U"}, + {"x":12.5, "y":2.375, "label":"I"}, + {"x":13.5, "y":2.5, "label":"O"}, + {"x":15, "y":2.5, "label":"P"}, + {"x":16, "y":2.5, "label":"L bracket"}, + {"x":17, "y":2.5, "label":"R bracket"}, + {"x":18, "y":2.5, "w":1.5, "label":"ANSI Backslash"}, + {"x":21, "y":2.5, "label":"P-7"}, + {"x":22, "y":2.5, "label":"P-8"}, + {"x":23, "y":2.5, "label":"P-9"}, + {"x":24, "y":2.5, "label":"P-Plus"}, + + {"x":0.75, "y":3.5, "w":1.75, "label":"Caps Lock"}, + {"x":2.5, "y":3.5, "label":"A"}, + {"x":4.25, "y":3.5, "label":"S"}, + {"x":5.25, "y":3.375, "label":"D"}, + {"x":6.25, "y":3.5, "label":"F"}, + {"x":7.25, "y":3.625, "label":"G"}, + {"x":10.5, "y":3.625, "label":"H"}, + {"x":11.5, "y":3.5, "label":"J"}, + {"x":12.5, "y":3.375, "label":"K"}, + {"x":13.5, "y":3.5, "label":"L"}, + {"x":15.25, "y":3.5, "label":"Semicolon"}, + {"x":16.25, "y":3.5, "label":"Quote"}, + {"x":17.25, "y":3.5, "label":"Non-US Hash"}, + {"x":18.25, "y":3.5, "w":1.25, "label":"Enter"}, + {"x":21, "y":3.5, "label":"P-4"}, + {"x":22, "y":3.5, "label":"P-5"}, + {"x":23, "y":3.5, "label":"P-6"}, + {"x":24, "y":3.5, "label":"P-Plus"}, + + {"x":0, "y":4.5, "w":1.25, "label":"Left Shift"}, + {"x":1.25, "y":4.5, "label":"Non-US Backslash"}, + {"x":2.25, "y":4.5, "label":"Z"}, + {"x":4.25, "y":4.5, "label":"X"}, + {"x":5.25, "y":4.375, "label":"C"}, + {"x":6.25, "y":4.5, "label":"V"}, + {"x":7.25, "y":4.625, "label":"B"}, + {"x":8.25, "y":4.625, "label":"Layer"}, + {"x":9.5, "y":4.625, "label":"Layer"}, + {"x":10.5, "y":4.625, "label":"N"}, + {"x":11.5, "y":4.5, "label":"M"}, + {"x":12.5, "y":4.375, "label":"Comma"}, + {"x":13.5, "y":4.5, "label":"Period"}, + {"x":15.5, "y":4.5, "label":"Slash"}, + {"x":16.5, "y":4.5, "label":"JIS Ro"}, + {"x":17.5, "y":4.5, "w":1.25, "label":"Right Shift"}, + {"x":18.75, "y":4.5, "label":"Up"}, + {"x":21, "y":4.5, "label":"P-1"}, + {"x":22, "y":4.5, "label":"P-2"}, + {"x":23, "y":4.5, "label":"P-3"}, + {"x":24, "y":4.5, "label":"P-Enter"}, + + {"x":0.5, "y":5.5, "w":1.25, "label":"Left Ctrl"}, + {"x":1.75, "y":5.5, "w":1.25, "label":"Left GUI"}, + {"x":4.75, "y":5.5, "w":1.25, "label":"Left Alt"}, + {"x":6, "y":5.5, "w":1.25, "label":"Menu"}, + {"x":7.25, "y":5.625, "w":2, "label":"Space"}, + {"x":9.5, "y":5.625, "w":2.75, "label":"Space"}, + {"x":12.25, "y":5.5, "w":1.25, "label":"Right Alt"}, + {"x":15.25, "y":5.5, "w":1.25, "label":"Right GUI"}, + {"x":16.5, "y":5.5, "w":1.25, "label":"Right Ctrl"}, + {"x":17.75, "y":5.5, "label":"Left"}, + {"x":18.75, "y":5.5, "label":"Down"}, + {"x":19.75, "y":5.5, "label":"Right"}, + {"x":21, "y":5.5, "label":"P-0"}, + {"x":22, "y":5.5, "label":"P-00"}, + {"x":23, "y":5.5, "label":"P-Decimal"}, + {"x":24, "y":5.5, "label":"P-Enter"} + ] + } + } +} diff --git a/keyboards/nopunin10did/jabberwocky/v2/keymaps/default/keymap.c b/keyboards/nopunin10did/jabberwocky/v2/keymaps/default/keymap.c new file mode 100644 index 0000000000..84fe9586ee --- /dev/null +++ b/keyboards/nopunin10did/jabberwocky/v2/keymaps/default/keymap.c @@ -0,0 +1,38 @@ +/* Copyright 2021 W. Alex Ronke, a.k.a. NoPunIn10Did (w.alex.ronke@gmail.com) + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[0] = LAYOUT_lh( + +KC_HOME,KC_END ,KC_PGUP,KC_PGDN, KC_ESC ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 , KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_PSCR,KC_SCRL,KC_INS ,KC_DEL , +KC_NUM ,KC_PSLS,KC_PAST,KC_PMNS, KC_GRV ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS,KC_EQL ,KC_BSPC,KC_BSPC, +KC_P7 ,KC_P8 ,KC_P9 ,KC_PPLS, KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T , KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_LBRC,KC_RBRC,KC_BSLS, +KC_P4 ,KC_P5 ,KC_P6 ,KC_PPLS, KC_CAPS,KC_A ,KC_S ,KC_D ,KC_F ,KC_G , KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN,KC_QUOT,KC_ENT ,KC_ENT , +KC_P1 ,KC_P2 ,KC_P3 ,KC_PENT, KC_LSFT,KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,MO(1), MO(1), KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_RSFT,KC_RSFT,KC_UP , +KC_P0 ,KC_P0 ,KC_PDOT,KC_PENT, KC_LCTL,KC_LGUI, KC_LALT,KC_APP ,KC_SPC , KC_SPC ,KC_ALGR, KC_RGUI,KC_RCTL,KC_LEFT,KC_DOWN,KC_RGHT), + + +[1] = LAYOUT_lh( +XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,QK_BOOT,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, +XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, +XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,QK_BOOT,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, +XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, +XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,_______,_______,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_PAUS,_______,_______,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,_______,_______,XXXXXXX, +XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, _______,_______, _______,XXXXXXX,XXXXXXX, XXXXXXX,_______, _______,_______,XXXXXXX,XXXXXXX,XXXXXXX) +}; diff --git a/keyboards/nopunin10did/jabberwocky/v2/keymaps/nopunin10did/keymap.c b/keyboards/nopunin10did/jabberwocky/v2/keymaps/nopunin10did/keymap.c new file mode 100644 index 0000000000..d7f4c95d48 --- /dev/null +++ b/keyboards/nopunin10did/jabberwocky/v2/keymaps/nopunin10did/keymap.c @@ -0,0 +1,51 @@ +/* Copyright 2021 W. Alex Ronke, a.k.a. NoPunIn10Did (w.alex.ronke@gmail.com) + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include QMK_KEYBOARD_H + +#define LSA_DEL LSA_T(KC_DEL) +#define RALTHOM RALT_T(KC_HOME) +#define SHAGHOM SAGR_T(KC_HOME) +#define RWINEND RGUI_T(KC_END) +#define RCTLEND RCTL_T(KC_END) +#define LSHNUBS LSFT_T(KC_NUBS) +#define RSHF_RO RSFT_T(KC_INT1) +#define FN_CALC LT(1,KC_CALC) +#define FN_MUTE LT(1,KC_F16) +#define FN_PENT LT(1,KC_PENT) +#define CTALDEL LCA(KC_DEL) +#define JPYEN KC_INT3 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[0] = LAYOUT_rh( + +KC_ESC ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 , KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_HOME,KC_END ,KC_PGUP,KC_PGDN,KC_DEL ,KC_INS ,KC_PSCR,KC_BSPC, + KC_GRV ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS,KC_EQL ,KC_BSPC,KC_BSPC, KC_EQL ,KC_PSLS,KC_PAST,KC_PMNS, + KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T , KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_LBRC,KC_RBRC,KC_BSLS, KC_P7 ,KC_P8 ,KC_P9 ,KC_PPLS, + KC_LCTL,KC_A ,KC_S ,KC_D ,KC_F ,KC_G , KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN,KC_QUOT,KC_ENT ,KC_ENT , KC_P4 ,KC_P5 ,KC_P6 ,KC_PPLS, +KC_LSFT,KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,LSA_DEL,FN_CALC,KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_RSFT,KC_RSFT,KC_UP , KC_P1 ,KC_P2 ,KC_P3 ,FN_PENT, + KC_LCTL,KC_LGUI, KC_LALT,FN_MUTE,KC_SPC , SHAGHOM, RALTHOM, RWINEND,RCTLEND,KC_LEFT,KC_DOWN,KC_RGHT, KC_P0 ,KC_P0 ,KC_PDOT,FN_PENT), + + +[1] = LAYOUT_rh( +QK_BOOT,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_F13 ,KC_F14 ,KC_F15 ,KC_F16 ,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, + XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, KC_NLCK,XXXXXXX,XXXXXXX,XXXXXXX, + XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,QK_BOOT,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,JPYEN , XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, + KC_CAPS,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,KC_SLCK,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, +LSHNUBS,LSHNUBS,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_BRK ,CTALDEL,_______,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,RSHF_RO,RSHF_RO,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,_______, + _______,_______, _______,_______,XXXXXXX, _______, _______, _______,_______,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,KC_PCMM,_______) +}; diff --git a/keyboards/nopunin10did/jabberwocky/v2/keymaps/via/keymap.c b/keyboards/nopunin10did/jabberwocky/v2/keymaps/via/keymap.c new file mode 100644 index 0000000000..5827bd963c --- /dev/null +++ b/keyboards/nopunin10did/jabberwocky/v2/keymaps/via/keymap.c @@ -0,0 +1,46 @@ +/* Copyright 2021 W. Alex Ronke, a.k.a. NoPunIn10Did (w.alex.ronke@gmail.com) + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[0] = LAYOUT_lh( + +KC_HOME,KC_END ,KC_PGUP,KC_PGDN,KC_ESC ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 , KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_PSCR,KC_SCRL,KC_INS ,KC_DEL , +KC_NUM ,KC_PSLS,KC_PAST,KC_PMNS, KC_GRV ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS,KC_EQL ,KC_BSPC,KC_BSPC, +KC_P7 ,KC_P8 ,KC_P9 ,KC_PPLS, KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T , KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_LBRC,KC_RBRC,KC_BSLS, +KC_P4 ,KC_P5 ,KC_P6 ,KC_PPLS, KC_CAPS,KC_A ,KC_S ,KC_D ,KC_F ,KC_G , KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN,KC_QUOT,KC_ENT ,KC_ENT , +KC_P1 ,KC_P2 ,KC_P3 ,KC_PENT,KC_LSFT,KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,MO(1), MO(1), KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_RSFT,KC_RSFT,KC_UP , +KC_P0 ,KC_P0 ,KC_PDOT,KC_PENT, KC_LCTL,KC_LGUI, KC_LALT,KC_APP ,KC_SPC , KC_SPC , KC_ALGR, KC_RGUI,KC_RCTL,KC_LEFT,KC_DOWN,KC_RGHT) , + + +[1] = LAYOUT_lh( +_______,_______,_______,_______,QK_BOOT,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, +_______,_______,_______,_______, _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______, +_______,_______,_______,_______, _______,_______,_______,_______,QK_BOOT,_______, _______,_______,_______,_______,_______,_______,_______,_______, +_______,_______,_______,_______, _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______, +_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, +_______,_______,_______,_______, _______,_______, _______,_______,_______, _______, _______, _______,_______,_______,_______,_______) , + +[2] = LAYOUT_lh( +_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, +_______,_______,_______,_______, _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______, +_______,_______,_______,_______, _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______, +_______,_______,_______,_______, _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______, +_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, +_______,_______,_______,_______, _______,_______, _______,_______,_______, _______, _______, _______,_______,_______,_______,_______) +}; diff --git a/keyboards/nopunin10did/jabberwocky/keymaps/via/rules.mk b/keyboards/nopunin10did/jabberwocky/v2/keymaps/via/rules.mk similarity index 100% rename from keyboards/nopunin10did/jabberwocky/keymaps/via/rules.mk rename to keyboards/nopunin10did/jabberwocky/v2/keymaps/via/rules.mk diff --git a/keyboards/nopunin10did/jabberwocky/v2/readme.md b/keyboards/nopunin10did/jabberwocky/v2/readme.md new file mode 100644 index 0000000000..a9e440fcd6 --- /dev/null +++ b/keyboards/nopunin10did/jabberwocky/v2/readme.md @@ -0,0 +1,35 @@ +# Jabberwocky Gen. 2 + +![Jabberwocky v2 CNC Edition](https://i.imgur.com/xfpl9H2h.jpg) + +A full-size, columnar-staggered, Alice-style keyboard. Specifically, this firmware is for the second generation (v2) of Jabberwocky PCBs, all of which use the same MCU (Atmega 32u4) and firmware. + +| PCB Variant | Numpad Side | Daughterboard | Soldered / Hotswap | In-switch LEDs | +| ------------- | ----------------- | ------------- | ------------------------- | --------------------- | +| Blue | Left (Sinister) | Elite C | Soldered (SMD DIY kit) | Caps & Num Indicators | +| Red | Right (Dexterous) | Elite C | Soldered (SMD DIY kit) | Caps & Num Indicators | +| Green\* | Left (Sinister) | Unified DB | Soldered (switches only) | Backlit + Indicators | +| Yellow | Right (Dexterous) | Unified DB | Soldered (switches only) | Backlit + Indicators | +| Black\* | Left (Sinister) | Unified DB | Hotswap Hybrid | None | +| White | Right (Dexterous) | Unified DB | Hotswap Hybrid | None | + +\* *Only the Green and Black PCBs will be compatible with the upcoming Sinister Jabberwocky CNC case.* + + +For more information, join the [NoPunIn10Key Discord](https://discord.gg/sku2Y6w). + +- Keyboard Maintainer: [Alex Ronke](https://nopunin10did.com/), also known as [NoPunIn10Did](https://github.com/NoPunIn10Did) +- Hardware Supported: Jabberwocky 2nd Generation PCBs +- Hardware Availability: Currently by request only + +To reset the board into bootloader mode, do one of the following: + +- If loaded with the default layout, use Function-Escape or Function-R *(the function buttons are the 1u keys next to B and N)* +- If using the Blue or Red PCBs, use the onboard Reset button on your Elite C +- If using any of the other PCBs, use the onboard Reset button on the PCB itself + +Make example for this keyboard (after setting up your build environment): + + make nopunin10did/jabberwocky/v2:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/nopunin10did/jabberwocky/v2/rules.mk b/keyboards/nopunin10did/jabberwocky/v2/rules.mk new file mode 100644 index 0000000000..9d065177d4 --- /dev/null +++ b/keyboards/nopunin10did/jabberwocky/v2/rules.mk @@ -0,0 +1,19 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality +BACKLIGHT_DRIVER = software # Software-driven backlight driver +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output diff --git a/keyboards/nopunin10did/jabberwocky/v2/v2.c b/keyboards/nopunin10did/jabberwocky/v2/v2.c new file mode 100644 index 0000000000..792093997b --- /dev/null +++ b/keyboards/nopunin10did/jabberwocky/v2/v2.c @@ -0,0 +1,17 @@ +/* Copyright 2022 W. Alex Ronke, a.k.a. NoPunIn10Did (w.alex.ronke@gmail.com) + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include "v2.h" diff --git a/keyboards/nopunin10did/jabberwocky/v2/v2.h b/keyboards/nopunin10did/jabberwocky/v2/v2.h new file mode 100644 index 0000000000..f319eb2240 --- /dev/null +++ b/keyboards/nopunin10did/jabberwocky/v2/v2.h @@ -0,0 +1,65 @@ +/* Copyright 2022 W. Alex Ronke, a.k.a. NoPunIn10Did (w.alex.ronke@gmail.com) + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#pragma once + +#include "quantum.h" + +#define LAYOUT_lh( \ + K0000, K0001, K0100, K0101, K0200, K0201, K0300, K0301, K0400, K0401, K0500, K0501, K0600, K0601, K0700, K0701, K0800, K0801, K0900, K0901, K0905, \ + K0002, K0003, K0102, K0103, K0203, K0302, K0303, K0402, K0403, K0502, K0503, K0602, K0603, K0702, K0703, K0802, K0803, K0902, K0903, \ + K0004, K0005, K0104, K0105, K0205, K0304, K0305, K0404, K0405, K0504, K0505, K0604, K0605, K0704, K0705, K0804, K0805, K0904, \ + K0006, K0007, K0106, K0107, K0207, K0306, K0307, K0406, K0407, K0506, K0507, K0606, K0607, K0706, K0707, K0806, K0807, K0907, \ + K0008, K0009, K0108, K0109, K0208, K0209, K0308, K0309, K0408, K0409, K0508, K0510, K0511, K0509, K0608, K0609, K0708, K0709, K0808, K0809, K0908, \ + K0010, K0011, K0110, K0111, K0211, K0310, K0311, K0410, K0411, K0610, K0611, K0711, K0810, K0811, K0910, K0911 \ +) \ +{ \ + { K0000, K0100, K0200, K0300, K0400, K0500, K0600, K0700, K0800, K0900 }, \ + { K0001, K0101, K0201, K0301, K0401, K0501, K0601, K0701, K0801, K0901 }, \ + { K0002, K0102, KC_NO, K0302, K0402, K0502, K0602, K0702, K0802, K0902 }, \ + { K0003, K0103, K0203, K0303, K0403, K0503, K0603, K0703, K0803, K0903 }, \ + { K0004, K0104, KC_NO, K0304, K0404, K0504, K0604, K0704, K0804, K0904 }, \ + { K0005, K0105, K0205, K0305, K0405, K0505, K0605, K0705, K0805, K0905 }, \ + { K0006, K0106, KC_NO, K0306, K0406, K0506, K0606, K0706, K0806, KC_NO }, \ + { K0007, K0107, K0207, K0307, K0407, K0507, K0607, K0707, K0807, K0907 }, \ + { K0008, K0108, K0208, K0308, K0408, K0508, K0608, K0708, K0808, K0908 }, \ + { K0009, K0109, K0209, K0309, K0409, K0509, K0609, K0709, K0809, KC_NO }, \ + { K0010, K0110, KC_NO, K0310, K0410, K0510, K0610, KC_NO, K0810, K0910 }, \ + { K0011, K0111, K0211, K0311, K0411, K0511, K0611, K0711, K0811, K0911 } \ +} + +#define LAYOUT_rh( \ + K0200, K0201, K0300, K0301, K0400, K0401, K0500, K0501, K0600, K0601, K0700, K0701, K0800, K0801, K0900, K0901, K0905, K0000, K0001, K0100, K0101, \ + K0203, K0302, K0303, K0402, K0403, K0502, K0503, K0602, K0603, K0702, K0703, K0802, K0803, K0902, K0903, K0002, K0003, K0102, K0103, \ + K0205, K0304, K0305, K0404, K0405, K0504, K0505, K0604, K0605, K0704, K0705, K0804, K0805, K0904, K0004, K0005, K0104, K0105, \ + K0207, K0306, K0307, K0406, K0407, K0506, K0507, K0606, K0607, K0706, K0707, K0806, K0807, K0907, K0006, K0007, K0106, K0107, \ + K0208, K0209, K0308, K0309, K0408, K0409, K0508, K0510, K0511, K0509, K0608, K0609, K0708, K0709, K0808, K0809, K0908, K0008, K0009, K0108, K0109, \ + K0211, K0310, K0311, K0410, K0411, K0610, K0611, K0711, K0810, K0811, K0910, K0911, K0010, K0011, K0110, K0111 \ +) \ +{ \ + { K0000, K0100, K0200, K0300, K0400, K0500, K0600, K0700, K0800, K0900 }, \ + { K0001, K0101, K0201, K0301, K0401, K0501, K0601, K0701, K0801, K0901 }, \ + { K0002, K0102, KC_NO, K0302, K0402, K0502, K0602, K0702, K0802, K0902 }, \ + { K0003, K0103, K0203, K0303, K0403, K0503, K0603, K0703, K0803, K0903 }, \ + { K0004, K0104, KC_NO, K0304, K0404, K0504, K0604, K0704, K0804, K0904 }, \ + { K0005, K0105, K0205, K0305, K0405, K0505, K0605, K0705, K0805, K0905 }, \ + { K0006, K0106, KC_NO, K0306, K0406, K0506, K0606, K0706, K0806, KC_NO }, \ + { K0007, K0107, K0207, K0307, K0407, K0507, K0607, K0707, K0807, K0907 }, \ + { K0008, K0108, K0208, K0308, K0408, K0508, K0608, K0708, K0808, K0908 }, \ + { K0009, K0109, K0209, K0309, K0409, K0509, K0609, K0709, K0809, KC_NO }, \ + { K0010, K0110, KC_NO, K0310, K0410, K0510, K0610, KC_NO, K0810, K0910 }, \ + { K0011, K0111, K0211, K0311, K0411, K0511, K0611, K0711, K0811, K0911 } \ +} From e16540795751c744a957ed3774eec99e587fd8db Mon Sep 17 00:00:00 2001 From: jels <66403163+Jels02@users.noreply.github.com> Date: Sun, 20 Nov 2022 05:43:59 +1000 Subject: [PATCH 2/3] [Keyboard] Add Boaty (#17378) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan Co-authored-by: Jels02 --- keyboards/jels/boaty/config.h | 23 +++++ keyboards/jels/boaty/info.json | 97 +++++++++++++++++++ keyboards/jels/boaty/keymaps/default/keymap.c | 47 +++++++++ keyboards/jels/boaty/keymaps/via/keymap.c | 47 +++++++++ keyboards/jels/boaty/keymaps/via/rules.mk | 1 + keyboards/jels/boaty/readme.md | 27 ++++++ keyboards/jels/boaty/rules.mk | 1 + 7 files changed, 243 insertions(+) create mode 100644 keyboards/jels/boaty/config.h create mode 100644 keyboards/jels/boaty/info.json create mode 100644 keyboards/jels/boaty/keymaps/default/keymap.c create mode 100644 keyboards/jels/boaty/keymaps/via/keymap.c create mode 100644 keyboards/jels/boaty/keymaps/via/rules.mk create mode 100644 keyboards/jels/boaty/readme.md create mode 100644 keyboards/jels/boaty/rules.mk diff --git a/keyboards/jels/boaty/config.h b/keyboards/jels/boaty/config.h new file mode 100644 index 0000000000..d78952f261 --- /dev/null +++ b/keyboards/jels/boaty/config.h @@ -0,0 +1,23 @@ + /* Copyright 2022 Joah Nelson (Jels) + * + * 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 . + */ + +#pragma once + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE + diff --git a/keyboards/jels/boaty/info.json b/keyboards/jels/boaty/info.json new file mode 100644 index 0000000000..43065a895a --- /dev/null +++ b/keyboards/jels/boaty/info.json @@ -0,0 +1,97 @@ +{ + "keyboard_name": "Boaty", + "manufacurer": "Jels", + "usb": { + "vid": "0x6A6B", + "pid": "0x000B", + "device_version": "1.0.0" + }, + "url": "", + "maintainer": "Jels", + "processor":"atmega328p", + "bootloader":"usbasploader", + "features": + { + "bootmagic": true, + "nkro": false, + "mousekey": false, + "extrakey": true, + "console": false, + "command": false, + "backlight": false + }, + "matrix_pins": { + "cols": [ "B1", "C0", "C1", "C2", "D4", "D1", "D0", "C5", "C4", "C3", "D5" ], + "rows": ["D6", "B0", "D7", "B5", "B3", "B4", "B2"] + }, + "diode_direction": "COL2ROW", + "layouts": { + "LAYOUT_all": { + "layout": [ + { "label": "Num Lock", "matrix": [2, 10], "x":6.75, "y": 0 }, + { "label": "-", "matrix": [1, 10], "x":6.75, "y": 1 }, + { "label": "*", "matrix": [1, 9], "x":7.75, "y": 1 }, + { "label": "7", "matrix": [0, 8], "x":6.75, "y": 2 }, + { "label": "8", "matrix": [0, 9], "x":7.75, "y": 2 }, + { "label": "9", "matrix": [0, 10], "x":8.75, "y": 2 }, + { "label": "4", "matrix": [0, 4], "x":6.75, "y": 3 }, + { "label": "5", "matrix": [0, 5], "x":7.75, "y": 3 }, + { "label": "6", "matrix": [0, 6], "x":8.75, "y": 3 }, + { "label": "+", "matrix": [0, 7], "x":9.75, "y": 3 }, + { "label": "1", "matrix": [1, 4], "x":6.75, "y": 4 }, + { "label": "2", "matrix": [1, 5], "x":7.75, "y": 4 }, + { "label": "3", "matrix": [1, 6], "x":8.75, "y": 4 }, + { "label": "Ent", "matrix": [1, 7], "x":9.75, "y": 4 }, + { "label": "/", "matrix": [1, 8], "x":10.75, "y": 4 }, + { "label": "0", "matrix": [2, 4], "x":6.75, "y": 5 }, + { "label": "00", "matrix": [2, 5], "x":7.75, "y": 5 }, + { "label": ".", "matrix": [2, 6], "x":8.75, "y": 5 }, + { "label": "Ent", "matrix": [2, 7], "x":9.75, "y": 5 }, + { "label": "=", "matrix": [2, 8], "x":10.75, "y": 5 }, + { "label": "Back", "matrix": [2, 9], "x":11.75, "y": 5 }, + { "label": "Esc", "matrix": [6, 0], "x":0, "y": 7.25 }, + { "label": "Tab", "matrix": [4, 0], "x":1, "y": 7.25 }, + { "label": "Q", "matrix": [5, 0], "x":2, "y": 7.25 }, + { "label": "W", "matrix": [5, 1], "x":3, "y": 7.25 }, + { "label": "E", "matrix": [5, 2], "x":4, "y": 7.25 }, + { "label": "R", "matrix": [5, 3], "x":5, "y": 7.25 }, + { "label": "T", "matrix": [5, 4], "x":6, "y": 7.25 }, + { "label": "Y", "matrix": [3, 5], "x":7, "y": 7.25 }, + { "label": "U", "matrix": [3, 6], "x":8, "y": 7.25 }, + { "label": "I", "matrix": [3, 7], "x":9, "y": 7.25 }, + { "label": "O", "matrix": [3, 8], "x":10, "y": 7.25 }, + { "label": "P", "matrix": [3, 9], "x":11, "y": 7.25 }, + { "label": "Back", "matrix": [3, 10], "x":12, "y": 7.25 }, + { "label": "Del", "matrix": [5, 10], "x":13, "y": 7.25 }, + { "label": "Caps", "matrix": [6, 1], "x":1, "y": 8.25 }, + { "label": "A", "matrix": [3, 0], "x":2, "y": 8.25 }, + { "label": "S", "matrix": [3, 1], "x":3, "y": 8.25 }, + { "label": "D", "matrix": [3, 2], "x":4, "y": 8.25 }, + { "label": "F", "matrix": [3, 3], "x":5, "y": 8.25 }, + { "label": "G", "matrix": [3, 4], "x":6, "y": 8.25 }, + { "label": "H", "matrix": [4, 5], "x":7, "y": 8.25 }, + { "label": "J", "matrix": [4, 6], "x":8, "y": 8.25 }, + { "label": "K", "matrix": [4, 7], "x":9, "y": 8.25 }, + { "label": "L", "matrix": [4, 8], "x":10, "y": 8.25 }, + { "label": ":", "matrix": [4, 9], "x":11, "y": 8.25 }, + { "label": "Enter", "matrix": [4, 10], "x":12, "y": 8.25 }, + { "label": "Shift", "matrix": [6, 2], "x":2, "y": 9.25 }, + { "label": "Z", "matrix": [4, 1], "x":3, "y": 9.25 }, + { "label": "X", "matrix": [4, 2], "x":4, "y": 9.25 }, + { "label": "C", "matrix": [4, 3], "x":5, "y": 9.25 }, + { "label": "V", "matrix": [4, 4], "x":6, "y": 9.25 }, + { "label": "B", "matrix": [5, 5], "x":7, "y": 9.25 }, + { "label": "N", "matrix": [5, 6], "x":8, "y": 9.25 }, + { "label": "M", "matrix": [5, 7], "x":9, "y": 9.25 }, + { "label": "<", "matrix": [5, 8], "x":10, "y": 9.25 }, + { "label": "Shift", "matrix": [5, 9], "x":11, "y": 9.25 }, + { "label": "Ctl", "matrix": [6, 3], "x":4, "y": 10.25 }, + { "label": "Alt", "matrix": [6, 4], "x":5, "y": 10.25 }, + { "matrix": [6, 6], "x":6, "y": 10.25 }, + { "matrix": [6, 7], "x":7, "y": 10.25 }, + { "label": "Alt", "matrix": [6, 8], "x":8, "y": 10.25 }, + { "label": "Ctl", "matrix": [6, 9], "x":9, "y": 10.25 } + ] + } + } +} diff --git a/keyboards/jels/boaty/keymaps/default/keymap.c b/keyboards/jels/boaty/keymaps/default/keymap.c new file mode 100644 index 0000000000..885056246d --- /dev/null +++ b/keyboards/jels/boaty/keymaps/default/keymap.c @@ -0,0 +1,47 @@ +/* Copyright 2022 Joah Nelson (jels) +* +* 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 . +*/ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +//base layer +[0] = LAYOUT_all( + KC_NUM, + KC_PAST, KC_PSLS, + KC_P7, KC_P8, KC_P9, + KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_P1, KC_P2, KC_P3, KC_PENT, KC_PPLS, + KC_P0, KC_P0, KC_PDOT, KC_PENT, KC_PMNS, KC_F1, + +KC_1, 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_DEL, + KC_1, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, + KC_1, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_RSFT, + KC_LCTL, KC_LALT, KC_SPC, KC_1, KC_RALT, KC_RCTL +), +[1] = LAYOUT_all( + KC_F2, + KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, +KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS +) +}; diff --git a/keyboards/jels/boaty/keymaps/via/keymap.c b/keyboards/jels/boaty/keymaps/via/keymap.c new file mode 100644 index 0000000000..f88a3774da --- /dev/null +++ b/keyboards/jels/boaty/keymaps/via/keymap.c @@ -0,0 +1,47 @@ +/* Copyright 2022 Joah Nelson (jels) +* +* 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 . +*/ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +//base layer +[0] = LAYOUT_all( + KC_NUM, + KC_PAST, KC_PSLS, + KC_P7, KC_P8, KC_P9, + KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_P1, KC_P2, KC_P3, KC_PENT, KC_PPLS, + KC_P0, KC_P0, KC_PDOT, KC_PENT, KC_PMNS, KC_F1, + +KC_ESC, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, KC_DEL, + 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_N, KC_M, KC_COMM, KC_RSFT, + KC_LCTL, KC_LALT, KC_SPC, MO(1), KC_RALT, KC_RCTL +), +[1] = LAYOUT_all( + KC_F2, + KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, +KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS +) +}; diff --git a/keyboards/jels/boaty/keymaps/via/rules.mk b/keyboards/jels/boaty/keymaps/via/rules.mk new file mode 100644 index 0000000000..036bd6d1c3 --- /dev/null +++ b/keyboards/jels/boaty/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes \ No newline at end of file diff --git a/keyboards/jels/boaty/readme.md b/keyboards/jels/boaty/readme.md new file mode 100644 index 0000000000..d5084b1098 --- /dev/null +++ b/keyboards/jels/boaty/readme.md @@ -0,0 +1,27 @@ +# Boaty + +![Boaty](https://i.imgur.com/6LEaYxSh.jpg) + +* Keyboard Maintainer: [jels](https://github.com/JoahNelson) +* Hardware Supported: Boaty +* Hardware Availabililty: Limited Group buy from: [jels](https://jels.au) + +Make example for this keyboard (after setting up your build environment): + + make jels/boaty:default + +Flashing example for this keyboard: + + make jels/boaty:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the leftmost key (ESC) and plug in the keyboard +* **USBASPLoader**: Press down the BOOT switch and plug in the keyboard +* **Keycode in layout**: Press the key mapped to `RESET` if it is available + +* **Exit Bootloader**: To exit the bootloader, press the RESET switch (Left of BOOT). diff --git a/keyboards/jels/boaty/rules.mk b/keyboards/jels/boaty/rules.mk new file mode 100644 index 0000000000..837f4bffb5 --- /dev/null +++ b/keyboards/jels/boaty/rules.mk @@ -0,0 +1 @@ +# This file is intentionally left blank From ede2b4155d3b6c1ea58b3d68f2dd5a50ccbdca48 Mon Sep 17 00:00:00 2001 From: Elliot Powell <32494740+e11i0t23@users.noreply.github.com> Date: Sat, 19 Nov 2022 21:39:16 +0000 Subject: [PATCH 3/3] [Keyboard] Add keebsforall freebird75 (#18653) Co-authored-by: Drashna Jaelre --- keyboards/keebsforall/freebird75/info.json | 463 ++++++++++++++++++ .../freebird75/keymaps/default/keymap.c | 17 + .../freebird75/keymaps/via/keymap.c | 44 ++ .../freebird75/keymaps/via/rules.mk | 1 + keyboards/keebsforall/freebird75/readme.md | 27 + keyboards/keebsforall/freebird75/rules.mk | 1 + 6 files changed, 553 insertions(+) create mode 100644 keyboards/keebsforall/freebird75/info.json create mode 100644 keyboards/keebsforall/freebird75/keymaps/default/keymap.c create mode 100644 keyboards/keebsforall/freebird75/keymaps/via/keymap.c create mode 100644 keyboards/keebsforall/freebird75/keymaps/via/rules.mk create mode 100644 keyboards/keebsforall/freebird75/readme.md create mode 100644 keyboards/keebsforall/freebird75/rules.mk diff --git a/keyboards/keebsforall/freebird75/info.json b/keyboards/keebsforall/freebird75/info.json new file mode 100644 index 0000000000..9088f2c0f3 --- /dev/null +++ b/keyboards/keebsforall/freebird75/info.json @@ -0,0 +1,463 @@ +{ + "manufacturer": "KeebsForAll", + "keyboard_name": "freebird75", + "maintainer": "Elliot Powell", + "bootloader": "atmel-dfu", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "command": false, + "console": false, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "matrix_pins": { + "cols": ["D0", "D1", "D2", "F7", "F6", "F5", "F4", "F1", "F0", "E6", "B0", "B1", "B2", "B3", "B7"], + "rows": ["C7", "C6", "B6", "B5", "B4", "D7"] + }, + "processor": "atmega32u4", + "url": "", + "usb": { + "device_version": "1.0.0", + "pid": "0x7575", + "vid": "0x6B66" + }, + "layouts": { + "LAYOUT": { + "layout": [ + { + "matrix": [0,0], + "x": 0, + "y": 0 + }, + { + "matrix": [0,1], + "x": 1.25, + "y": 0 + }, + { + "matrix": [0,2], + "x": 2.25, + "y": 0 + }, + { + "matrix": [0,3], + "x": 3.25, + "y": 0 + }, + { + "matrix": [0,4], + "x": 4.25, + "y": 0 + }, + { + "matrix": [0,5], + "x": 5.5, + "y": 0 + }, + { + "matrix": [0,6], + "x": 6.5, + "y": 0 + }, + { + "matrix": [0,7], + "x": 7.5, + "y": 0 + }, + { + "matrix": [0,8], + "x": 8.5, + "y": 0 + }, + { + "matrix": [0,9], + "x": 9.75, + "y": 0 + }, + { + "matrix": [0,10], + "x": 10.75, + "y": 0 + }, + { + "matrix": [0,11], + "x": 11.75, + "y": 0 + }, + { + "matrix": [0,12], + "x": 12.75, + "y": 0 + }, + { + "matrix": [0,13], + "x": 14, + "y": 0 + }, + { + "matrix": [0,14], + "x": 15.25, + "y": 0 + }, + { + "matrix": [1,0], + "x": 0, + "y": 1.25 + }, + { + "matrix": [1,1], + "x": 1, + "y": 1.25 + }, + { + "matrix": [1,2], + "x": 2, + "y": 1.25 + }, + { + "matrix": [1,3], + "x": 3, + "y": 1.25 + }, + { + "matrix": [1,4], + "x": 4, + "y": 1.25 + }, + { + "matrix": [1,5], + "x": 5, + "y": 1.25 + }, + { + "matrix": [1,6], + "x": 6, + "y": 1.25 + }, + { + "matrix": [1,7], + "x": 7, + "y": 1.25 + }, + { + "matrix": [1,8], + "x": 8, + "y": 1.25 + }, + { + "matrix": [1,9], + "x": 9, + "y": 1.25 + }, + { + "matrix": [1,10], + "x": 10, + "y": 1.25 + }, + { + "matrix": [1,11], + "x": 11, + "y": 1.25 + }, + { + "matrix": [1,12], + "x": 12, + "y": 1.25 + }, + { + "matrix": [1,13], + "x": 13, + "y": 1.25 + }, + { + "matrix": [4,14], + "x": 14, + "y": 1.25 + }, + { + "matrix": [1,14], + "x": 15.25, + "y": 1.25 + }, + { + "matrix": [2,0], + "x": 0, + "y": 2.25, + "w": 1.5 + }, + { + "matrix": [2,1], + "x": 1.5, + "y": 2.25 + }, + { + "matrix": [2,2], + "x": 2.5, + "y": 2.25 + }, + { + "matrix": [2,3], + "x": 3.5, + "y": 2.25 + }, + { + "matrix": [2,4], + "x": 4.5, + "y": 2.25 + }, + { + "matrix": [2,5], + "x": 5.5, + "y": 2.25 + }, + { + "matrix": [2,6], + "x": 6.5, + "y": 2.25 + }, + { + "matrix": [2,7], + "x": 7.5, + "y": 2.25 + }, + { + "matrix": [2,8], + "x": 8.5, + "y": 2.25 + }, + { + "matrix": [2,9], + "x": 9.5, + "y": 2.25 + }, + { + "matrix": [2,10], + "x": 10.5, + "y": 2.25 + }, + { + "matrix": [2,11], + "x": 11.5, + "y": 2.25 + }, + { + "matrix": [2,12], + "x": 12.5, + "y": 2.25 + }, + { + "matrix": [2,13], + "x": 13.5, + "y": 2.25, + "w": 1.5 + }, + { + "matrix": [2,14], + "x": 15.25, + "y": 2.25 + }, + { + "matrix": [3,0], + "x": 0, + "y": 3.25, + "w": 1.75 + }, + { + "matrix": [3,1], + "x": 1.75, + "y": 3.25 + }, + { + "matrix": [3,2], + "x": 2.75, + "y": 3.25 + }, + { + "matrix": [3,3], + "x": 3.75, + "y": 3.25 + }, + { + "matrix": [3,4], + "x": 4.75, + "y": 3.25 + }, + { + "matrix": [3,5], + "x": 5.75, + "y": 3.25 + }, + { + "matrix": [3,6], + "x": 6.75, + "y": 3.25 + }, + { + "matrix": [3,7], + "x": 7.75, + "y": 3.25 + }, + { + "matrix": [3,8], + "x": 8.75, + "y": 3.25 + }, + { + "matrix": [3,9], + "x": 9.75, + "y": 3.25 + }, + { + "matrix": [3,10], + "x": 10.75, + "y": 3.25 + }, + { + "matrix": [3,11], + "x": 11.75, + "y": 3.25 + }, + { + "matrix": [3,13], + "x": 12.75, + "y": 3.25, + "w": 2.25 + }, + { + "matrix": [3,14], + "x": 15.25, + "y": 3.25 + }, + { + "matrix": [4,0], + "x": 0, + "y": 4.25, + "w": 1.25 + }, + { + "matrix": [4,1], + "x": 1.25, + "y": 4.25 + }, + { + "matrix": [4,2], + "x": 2.25, + "y": 4.25 + }, + { + "matrix": [4,3], + "x": 3.25, + "y": 4.25 + }, + { + "matrix": [4,4], + "x": 4.25, + "y": 4.25 + }, + { + "matrix": [4,5], + "x": 5.25, + "y": 4.25 + }, + { + "matrix": [4,6], + "x": 6.25, + "y": 4.25 + }, + { + "matrix": [4,7], + "x": 7.25, + "y": 4.25 + }, + { + "matrix": [4,8], + "x": 8.25, + "y": 4.25 + }, + { + "matrix": [4,9], + "x": 9.25, + "y": 4.25 + }, + { + "matrix": [4,10], + "x": 10.25, + "y": 4.25 + }, + { + "matrix": [4,11], + "x": 11.25, + "y": 4.25 + }, + { + "matrix": [4,12], + "x": 12.25, + "y": 4.25, + "w": 1.75 + }, + { + "matrix": [4,13], + "x": 14.25, + "y": 4.5 + }, + { + "matrix": [5,0], + "x": 0, + "y": 5.25, + "w": 1.25 + }, + { + "matrix": [5,1], + "x": 1.25, + "y": 5.25, + "w": 1.25 + }, + { + "matrix": [5,2], + "x": 2.5, + "y": 5.25, + "w": 1.25 + }, + { + "matrix": [5,6], + "x": 3.75, + "y": 5.25, + "w": 6.25 + }, + { + "matrix": [5,9], + "x": 10, + "y": 5.25 + }, + { + "matrix": [5,10], + "x": 11, + "y": 5.25 + }, + { + "matrix": [5,11], + "x": 12, + "y": 5.25 + }, + { + "matrix": [5,12], + "x": 13.25, + "y": 5.5 + }, + { + "matrix": [5,13], + "x": 14.25, + "y": 5.5 + }, + { + "matrix": [5,14], + "x": 15.25, + "y": 5.5 + } + ] + + } + } +} diff --git a/keyboards/keebsforall/freebird75/keymaps/default/keymap.c b/keyboards/keebsforall/freebird75/keymaps/default/keymap.c new file mode 100644 index 0000000000..45540d525f --- /dev/null +++ b/keyboards/keebsforall/freebird75/keymaps/default/keymap.c @@ -0,0 +1,17 @@ +// Copyright 2022 Elliot Powell (@Elliot Powell) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* + */ + [0] = LAYOUT( + KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SCRL, + + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL, KC_HOME, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP, + KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT) +}; diff --git a/keyboards/keebsforall/freebird75/keymaps/via/keymap.c b/keyboards/keebsforall/freebird75/keymaps/via/keymap.c new file mode 100644 index 0000000000..9908b1f762 --- /dev/null +++ b/keyboards/keebsforall/freebird75/keymaps/via/keymap.c @@ -0,0 +1,44 @@ +// Copyright 2022 Elliot Powell (@Elliot Powell) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* + */ +[0] = LAYOUT( /* Base */ + KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SCRL, + + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL, KC_HOME, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP, + KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + +[1] = LAYOUT( /* Empty for dynamic keymaps */ + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + +[2] = LAYOUT( /* Empty for dynamic keymaps */ + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + +[3] = LAYOUT( /* Empty for dynamic keymaps */ + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) +}; diff --git a/keyboards/keebsforall/freebird75/keymaps/via/rules.mk b/keyboards/keebsforall/freebird75/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/keebsforall/freebird75/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/keebsforall/freebird75/readme.md b/keyboards/keebsforall/freebird75/readme.md new file mode 100644 index 0000000000..80be9266b0 --- /dev/null +++ b/keyboards/keebsforall/freebird75/readme.md @@ -0,0 +1,27 @@ +# Freebird 75 + +![fb75](https://i.imgur.com/fGRQZ2gh.jpg) + +The Freebird75 is the latest addition to the Freebird line at KeebsForAll, a series aiming to provide a set of good quality keyboards at an affordable price + +* Keyboard Maintainer: [Elliot Powell](https://github.com/e11i0t23) +* Hardware Supported: Freebird75 +* Hardware Availability: [KeebsForAll](https://keebsforall.com/products/freebird75) + +Make example for this keyboard (after setting up your build environment): + + qmk compile -kb keebsforall/freebird75 -km via + +Flashing example for this keyboard: + + qmk flash -kb keebsforall/freebird75 -km via + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available diff --git a/keyboards/keebsforall/freebird75/rules.mk b/keyboards/keebsforall/freebird75/rules.mk new file mode 100644 index 0000000000..6e7633bfe0 --- /dev/null +++ b/keyboards/keebsforall/freebird75/rules.mk @@ -0,0 +1 @@ +# This file intentionally left blank