From 228e90aa00d2938db447716bb580a9ea6a763e36 Mon Sep 17 00:00:00 2001 From: Peter Park Date: Tue, 3 Aug 2021 21:30:05 -0700 Subject: [PATCH 01/37] switchable keymap added --- keyboards/the_uni/keymaps/switchable/keymap.c | 87 +++++++++++++++++++ keyboards/the_uni/{ => pro_micro}/config.h | 0 keyboards/the_uni/pro_micro/pro_micro.c | 18 ++++ .../{the_uni.h => pro_micro/pro_micro.h} | 0 keyboards/the_uni/pro_micro/readme.md | 20 +++++ keyboards/the_uni/{ => pro_micro}/rules.mk | 0 keyboards/the_uni/readme.md | 17 ++-- keyboards/the_uni/usb_c/config.h | 52 +++++++++++ keyboards/the_uni/usb_c/readme.md | 20 +++++ keyboards/the_uni/usb_c/rules.mk | 21 +++++ .../the_uni/{the_uni.c => usb_c/usb_c.c} | 2 +- keyboards/the_uni/usb_c/usb_c.h | 30 +++++++ 12 files changed, 258 insertions(+), 9 deletions(-) create mode 100644 keyboards/the_uni/keymaps/switchable/keymap.c rename keyboards/the_uni/{ => pro_micro}/config.h (100%) create mode 100644 keyboards/the_uni/pro_micro/pro_micro.c rename keyboards/the_uni/{the_uni.h => pro_micro/pro_micro.h} (100%) create mode 100644 keyboards/the_uni/pro_micro/readme.md rename keyboards/the_uni/{ => pro_micro}/rules.mk (100%) create mode 100644 keyboards/the_uni/usb_c/config.h create mode 100644 keyboards/the_uni/usb_c/readme.md create mode 100644 keyboards/the_uni/usb_c/rules.mk rename keyboards/the_uni/{the_uni.c => usb_c/usb_c.c} (96%) create mode 100644 keyboards/the_uni/usb_c/usb_c.h diff --git a/keyboards/the_uni/keymaps/switchable/keymap.c b/keyboards/the_uni/keymaps/switchable/keymap.c new file mode 100644 index 000000000000..57b6c20d67cc --- /dev/null +++ b/keyboards/the_uni/keymaps/switchable/keymap.c @@ -0,0 +1,87 @@ +/* +Copyright 2021 Peter C. Park + +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 +#include "keymap_steno.h" + +enum uni_layers { + _QWERTY = 0 + ,_GEMINI + ,_LOWER + ,_RAISE + ,_CHOOSE +}; + +enum uni_keycodes { + GEMINI = SAFE_RANGE + ,QWERTY +}; + +#define RAISE MO(_RAISE) +#define LOWER MO(_LOWER) +#define CHOOSE MO(_CHOOSE) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_QWERTY] = LAYOUT( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + RAISE, KC_C, KC_V, KC_N, KC_M, LOWER), + + [_GEMINI] = LAYOUT( + STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , + STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , + RAISE, STN_A, STN_O, STN_E, STN_U, LOWER), + + [_RAISE] = LAYOUT( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, KC_LCMD, KC_LALT, KC_SPC, KC_LCTRL, CHOOSE), + + [_LOWER] = LAYOUT( + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + CHOOSE, KC_LCTRL, KC_SPC, KC_LALT, KC_LCMD, _______), + + [_CHOOSE] = LAYOUT( + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, XXXXXXX, QWERTY, GEMINI, XXXXXXX, _______), +}; + + + bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case GEMINI: + if (!record->event.pressed) { + set_single_persistent_default_layer(_GEMINI); + } + return false; + case QWERTY: + if (!record->event.pressed) { + set_single_persistent_default_layer(_QWERTY); + } + return false; + } + return true; + } + + void matrix_init_user() { + steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT + } + diff --git a/keyboards/the_uni/config.h b/keyboards/the_uni/pro_micro/config.h similarity index 100% rename from keyboards/the_uni/config.h rename to keyboards/the_uni/pro_micro/config.h diff --git a/keyboards/the_uni/pro_micro/pro_micro.c b/keyboards/the_uni/pro_micro/pro_micro.c new file mode 100644 index 000000000000..3d5b3b23bb47 --- /dev/null +++ b/keyboards/the_uni/pro_micro/pro_micro.c @@ -0,0 +1,18 @@ +/* +Copyright 2021 Peter C. Park + +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 "pro_micro.h" diff --git a/keyboards/the_uni/the_uni.h b/keyboards/the_uni/pro_micro/pro_micro.h similarity index 100% rename from keyboards/the_uni/the_uni.h rename to keyboards/the_uni/pro_micro/pro_micro.h diff --git a/keyboards/the_uni/pro_micro/readme.md b/keyboards/the_uni/pro_micro/readme.md new file mode 100644 index 000000000000..8f78a79b639d --- /dev/null +++ b/keyboards/the_uni/pro_micro/readme.md @@ -0,0 +1,20 @@ +# The Uni + +​ +![The Uni](https://raw.githubusercontent.com/petercpark/The_Uni/main/Pics/layout.png) +![The Uni Closeup](https://github.com/petercpark/The_Uni/blob/main/Pics/close-up-uni.jpg?raw=true) +​ +A compact unibody split ortholinear keyboard made specifically for stenography. +​ + +- Keyboard Maintainer: [Peter C. Park](https://github.com/petercpark) +- Link to Keyboard Files: [The_Uni](https://github.com/petercpark/The_Uni) +- Hardware Supported: + * The Uni v1 and v2 (pro_micro) +- Hardware Availability: [website](https://www.stenokeyboards.com) + ​ +Make examples for this keyboard (after setting up your build environment): + + make the_uni/pro_micro: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/the_uni/rules.mk b/keyboards/the_uni/pro_micro/rules.mk similarity index 100% rename from keyboards/the_uni/rules.mk rename to keyboards/the_uni/pro_micro/rules.mk diff --git a/keyboards/the_uni/readme.md b/keyboards/the_uni/readme.md index 730ea2483d1a..872831de4ca0 100644 --- a/keyboards/the_uni/readme.md +++ b/keyboards/the_uni/readme.md @@ -7,13 +7,14 @@ A compact unibody split ortholinear keyboard made specifically for stenography. - Keyboard Maintainer: [Peter C. Park](https://github.com/petercpark) - Link to Keyboard Files: [The_Uni](https://github.com/petercpark/The_Uni) -- Hardware Supported: The Uni v1 and v2 (pro micro or equivalent) +- Hardware Supported: + * The Uni v1 and v2 (pro_micro) + * The Uni v3 (usb_c) - Hardware Availability: [website](https://www.stenokeyboards.com) - -Make example for this keyboard (after setting up your build environment): - - make the_uni:default - -To enter the bootloader, short the rst and gnd pins with a conductive material such as a tweezer or a wire. Uni v2 will have reset pads next to the pro micro so you can short these pads to reset the pro micro. - + ​ +Make examples for this keyboard (after setting up your build environment): + + make the_uni/pro_micro:default + make the_uni/usb_c: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/the_uni/usb_c/config.h b/keyboards/the_uni/usb_c/config.h new file mode 100644 index 000000000000..3110c0d82181 --- /dev/null +++ b/keyboards/the_uni/usb_c/config.h @@ -0,0 +1,52 @@ +/* +Copyright 2021 Peter C. Park + +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" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x9000 +#define PRODUCT_ID 0x0001 +#define DEVICE_VER 0x0002 +#define MANUFACTURER stenokeyboards +#define PRODUCT The Uni + +/* key matrix size */ +#define MATRIX_ROWS 3 +#define MATRIX_COLS 11 + +/* key matrix pins */ +#define MATRIX_ROW_PINS { B7, D6, C7 } +#define MATRIX_COL_PINS { F0, F1, F4, F5, F6, D5, D3, D2, D1, D0, D4 } +#define UNUSED_PINS + +/* 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 + + +/*force the nkro if it does not work*/ +#define FORCE_NKRO diff --git a/keyboards/the_uni/usb_c/readme.md b/keyboards/the_uni/usb_c/readme.md new file mode 100644 index 000000000000..055bace25c7e --- /dev/null +++ b/keyboards/the_uni/usb_c/readme.md @@ -0,0 +1,20 @@ +# The Uni + +​ +![The Uni](https://raw.githubusercontent.com/petercpark/The_Uni/main/Pics/layout.png) +![The Uni Closeup](https://github.com/petercpark/The_Uni/blob/main/Pics/close-up-uni.jpg?raw=true) +​ +A compact unibody split ortholinear keyboard made specifically for stenography. +​ + +- Keyboard Maintainer: [Peter C. Park](https://github.com/petercpark) +- Link to Keyboard Files: [The_Uni](https://github.com/petercpark/The_Uni) +- Hardware Supported: + * The Uni v3 (usb_c) +- Hardware Availability: [website](https://www.stenokeyboards.com) + ​ +Make examples for this keyboard (after setting up your build environment): + + make the_uni/usb_c: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/the_uni/usb_c/rules.mk b/keyboards/the_uni/usb_c/rules.mk new file mode 100644 index 000000000000..1422818bbb7d --- /dev/null +++ b/keyboards/the_uni/usb_c/rules.mk @@ -0,0 +1,21 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader +BOOTLOADER = atmel-dfu + + +# Build Options +# comment out to disable the options. +# +BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend +NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no +FORCE_NKRO = yes +EXTRAKEY_ENABLE = no +MOUSEKEY_ENABLE = no # Mouse keys +STENO_ENABLE = yes diff --git a/keyboards/the_uni/the_uni.c b/keyboards/the_uni/usb_c/usb_c.c similarity index 96% rename from keyboards/the_uni/the_uni.c rename to keyboards/the_uni/usb_c/usb_c.c index b99b06830c63..e690d0a886d3 100644 --- a/keyboards/the_uni/the_uni.c +++ b/keyboards/the_uni/usb_c/usb_c.c @@ -15,4 +15,4 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -#include "the_uni.h" +#include "usb_c.h" diff --git a/keyboards/the_uni/usb_c/usb_c.h b/keyboards/the_uni/usb_c/usb_c.h new file mode 100644 index 000000000000..9371c3a241d6 --- /dev/null +++ b/keyboards/the_uni/usb_c/usb_c.h @@ -0,0 +1,30 @@ +/* +Copyright 2021 Peter C. Park + +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( \ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, \ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, \ + K202, K203, K204, K205, K206, K207 \ +) { \ + { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010 }, \ + { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110 }, \ + { KC_NO, KC_NO, K202, K203, K204, K205, K206, K207, KC_NO, KC_NO, KC_NO } \ +} From 8e3fc54b10b41bc3d966892436e702b791916c2c Mon Sep 17 00:00:00 2001 From: Peter Park Date: Thu, 12 Aug 2021 20:13:11 -0700 Subject: [PATCH 02/37] && git push fix error --- keyboards/the_uni/keymaps/default/keymap.c | 31 +++++------------ keyboards/the_uni/keymaps/qwerty/keymap.c | 33 ++++++------------- keyboards/the_uni/keymaps/switchable/keymap.c | 4 +-- 3 files changed, 20 insertions(+), 48 deletions(-) diff --git a/keyboards/the_uni/keymaps/default/keymap.c b/keyboards/the_uni/keymaps/default/keymap.c index 01674d948699..eb611e6a2210 100644 --- a/keyboards/the_uni/keymaps/default/keymap.c +++ b/keyboards/the_uni/keymaps/default/keymap.c @@ -36,41 +36,26 @@ enum uni_keycodes { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* [_QWERTY] = LAYOUT( - KC_Q, KC_W, KC_E, KC_R, LT(_CHOOSE, KC_T), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_Q, KC_W, KC_E, KC_R, LT(_CHOOSE, KC_T), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_1, KC_C, KC_V, KC_N, KC_M, KC_2), [_CHOOSE] = LAYOUT( - _______, _______, _______, _______, _______, PLOVER, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, PLOVER, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), */ [_PLOVER] = LAYOUT( - STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , - STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , + STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , + STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , STN_N1, STN_A, STN_O, STN_E, STN_U, STN_N2), }; -/* -switch (keycode) { bool process_record_user(uint16_t keycode, keyrecord_t *record) { - case PLOVER: - if (!record->event.pressed) { - layer_on(_PLOVER); - } - return false; - break; - case QWERTY: - if (!record->event.pressed) { - layer_on(_QWERTY); - } - return false; - break; - } - return true; + set_single_persistent_default_layer(_PLOVER); + return true; } -*/ void matrix_init_user() { steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT diff --git a/keyboards/the_uni/keymaps/qwerty/keymap.c b/keyboards/the_uni/keymaps/qwerty/keymap.c index 3eaac57f3dff..819f2f9f2342 100644 --- a/keyboards/the_uni/keymaps/qwerty/keymap.c +++ b/keyboards/the_uni/keymaps/qwerty/keymap.c @@ -35,42 +35,29 @@ enum uni_keycodes { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_QWERTY] = LAYOUT( - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_1, KC_C, KC_V, KC_N, KC_M, KC_2), /* [_CHOOSE] = LAYOUT( - _______, _______, _______, _______, _______, PLOVER, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, PLOVER, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), [_PLOVER] = LAYOUT( - STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , - STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , + STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , + STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , STN_N1, STN_A, STN_O, STN_E, STN_U, STN_N2), */ }; -/* -switch (keycode) { + + bool process_record_user(uint16_t keycode, keyrecord_t *record) { - case PLOVER: - if (!record->event.pressed) { - layer_on(_PLOVER); - } - return false; - break; - case QWERTY: - if (!record->event.pressed) { - layer_on(_QWERTY); - } - return false; - break; - } - return true; + set_single_persistent_default_layer(_QWERTY); + return true; } -*/ void matrix_init_user() { //steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT diff --git a/keyboards/the_uni/keymaps/switchable/keymap.c b/keyboards/the_uni/keymaps/switchable/keymap.c index 57b6c20d67cc..6a8598287348 100644 --- a/keyboards/the_uni/keymaps/switchable/keymap.c +++ b/keyboards/the_uni/keymaps/switchable/keymap.c @@ -51,12 +51,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_RAISE] = LAYOUT( KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - _______, KC_LCMD, KC_LALT, KC_SPC, KC_LCTRL, CHOOSE), + _______, KC_LCMD, KC_LSFT, KC_LALT, KC_LCTRL, CHOOSE), [_LOWER] = LAYOUT( KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - CHOOSE, KC_LCTRL, KC_SPC, KC_LALT, KC_LCMD, _______), + CHOOSE, KC_LCMD, KC_LSFT, KC_LALT, KC_LCTRL, _______), [_CHOOSE] = LAYOUT( XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, From dfbd5974f0d2b3e078c1292213522f8e7e4a539e Mon Sep 17 00:00:00 2001 From: Peter Park Date: Wed, 22 Sep 2021 17:17:36 -0700 Subject: [PATCH 03/37] add support for the Uni v3 and update some readmes --- keyboards/the_uni/keymaps/switchable/keymap.c | 87 ------------------- keyboards/the_uni/pro_micro/readme.md | 19 ++-- keyboards/the_uni/readme.md | 24 ++--- keyboards/the_uni/usb_c/readme.md | 23 ++--- 4 files changed, 28 insertions(+), 125 deletions(-) delete mode 100644 keyboards/the_uni/keymaps/switchable/keymap.c diff --git a/keyboards/the_uni/keymaps/switchable/keymap.c b/keyboards/the_uni/keymaps/switchable/keymap.c deleted file mode 100644 index 6a8598287348..000000000000 --- a/keyboards/the_uni/keymaps/switchable/keymap.c +++ /dev/null @@ -1,87 +0,0 @@ -/* -Copyright 2021 Peter C. Park - -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 -#include "keymap_steno.h" - -enum uni_layers { - _QWERTY = 0 - ,_GEMINI - ,_LOWER - ,_RAISE - ,_CHOOSE -}; - -enum uni_keycodes { - GEMINI = SAFE_RANGE - ,QWERTY -}; - -#define RAISE MO(_RAISE) -#define LOWER MO(_LOWER) -#define CHOOSE MO(_CHOOSE) - - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - - [_QWERTY] = LAYOUT( - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, - RAISE, KC_C, KC_V, KC_N, KC_M, LOWER), - - [_GEMINI] = LAYOUT( - STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , - STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , - RAISE, STN_A, STN_O, STN_E, STN_U, LOWER), - - [_RAISE] = LAYOUT( - KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, - KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - _______, KC_LCMD, KC_LSFT, KC_LALT, KC_LCTRL, CHOOSE), - - [_LOWER] = LAYOUT( - KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, - KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - CHOOSE, KC_LCMD, KC_LSFT, KC_LALT, KC_LCTRL, _______), - - [_CHOOSE] = LAYOUT( - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - _______, XXXXXXX, QWERTY, GEMINI, XXXXXXX, _______), -}; - - - bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case GEMINI: - if (!record->event.pressed) { - set_single_persistent_default_layer(_GEMINI); - } - return false; - case QWERTY: - if (!record->event.pressed) { - set_single_persistent_default_layer(_QWERTY); - } - return false; - } - return true; - } - - void matrix_init_user() { - steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT - } - diff --git a/keyboards/the_uni/pro_micro/readme.md b/keyboards/the_uni/pro_micro/readme.md index 8f78a79b639d..786510f70fba 100644 --- a/keyboards/the_uni/pro_micro/readme.md +++ b/keyboards/the_uni/pro_micro/readme.md @@ -1,20 +1,13 @@ # The Uni -​ -![The Uni](https://raw.githubusercontent.com/petercpark/The_Uni/main/Pics/layout.png) -![The Uni Closeup](https://github.com/petercpark/The_Uni/blob/main/Pics/close-up-uni.jpg?raw=true) -​ -A compact unibody split ortholinear keyboard made specifically for stenography. -​ - -- Keyboard Maintainer: [Peter C. Park](https://github.com/petercpark) +- Keyboard Maintainer: [Peter](https://github.com/petercpark) - Link to Keyboard Files: [The_Uni](https://github.com/petercpark/The_Uni) - Hardware Supported: - * The Uni v1 and v2 (pro_micro) -- Hardware Availability: [website](https://www.stenokeyboards.com) - ​ + - The Uni v1 and v2 (pro_micro) +- Hardware Availability: [https://www.stenokeyboards.com](https://www.stenokeyboards.com) + Make examples for this keyboard (after setting up your build environment): - + make the_uni/pro_micro: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/the_uni/readme.md b/keyboards/the_uni/readme.md index 872831de4ca0..55ab868c39e4 100644 --- a/keyboards/the_uni/readme.md +++ b/keyboards/the_uni/readme.md @@ -1,20 +1,24 @@ # The Uni -![The Uni](https://raw.githubusercontent.com/petercpark/The_Uni/main/Pics/layout.png) -![The Uni Closeup](https://github.com/petercpark/The_Uni/blob/main/Pics/close-up-uni.jpg?raw=true) +​ +![Layout](https://docs.stenokeyboards.com/images/uni-layout.png) +![The Uni v2](https://github.com/petercpark/The_Uni/blob/main/Pics/uni%20v2/uni-v2.JPG?raw=true) A compact unibody split ortholinear keyboard made specifically for stenography. -- Keyboard Maintainer: [Peter C. Park](https://github.com/petercpark) -- Link to Keyboard Files: [The_Uni](https://github.com/petercpark/The_Uni) +- Keyboard Maintainer: [Peter](https://github.com/petercpark) +- Link to Keyboard Files (pro_micro version): [https://github.com/petercpark/The_Uni](https://github.com/petercpark/The_Uni) - Hardware Supported: - * The Uni v1 and v2 (pro_micro) - * The Uni v3 (usb_c) -- Hardware Availability: [website](https://www.stenokeyboards.com) - ​ + + - The Uni v1 and v2 (pro_micro) + - The Uni v3 (usb_c) + +- Hardware Availability: [https://www.stenokeyboards.com](https://www.stenokeyboards.com) + Make examples for this keyboard (after setting up your build environment): - + make the_uni/pro_micro:default + make the_uni/usb_c: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/the_uni/usb_c/readme.md b/keyboards/the_uni/usb_c/readme.md index 055bace25c7e..b44890d81089 100644 --- a/keyboards/the_uni/usb_c/readme.md +++ b/keyboards/the_uni/usb_c/readme.md @@ -1,20 +1,13 @@ -# The Uni +# The Uni v3 Firmware -​ -![The Uni](https://raw.githubusercontent.com/petercpark/The_Uni/main/Pics/layout.png) -![The Uni Closeup](https://github.com/petercpark/The_Uni/blob/main/Pics/close-up-uni.jpg?raw=true) -​ -A compact unibody split ortholinear keyboard made specifically for stenography. -​ - -- Keyboard Maintainer: [Peter C. Park](https://github.com/petercpark) -- Link to Keyboard Files: [The_Uni](https://github.com/petercpark/The_Uni) +- Keyboard Maintainer: [Peter](https://github.com/petercpark) +- Link to Keyboard Files: Not Available - Hardware Supported: - * The Uni v3 (usb_c) -- Hardware Availability: [website](https://www.stenokeyboards.com) - ​ + - The Uni v3 (usb_c) +- Hardware Availability: [https://www.stenokeyboards.com](https://www.stenokeyboards.com) + Make examples for this keyboard (after setting up your build environment): - + make the_uni/usb_c: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). From 63873a54552cfb36d56fe29e085038b1b671d93b Mon Sep 17 00:00:00 2001 From: Peter Park Date: Thu, 23 Sep 2021 14:48:58 -0700 Subject: [PATCH 04/37] make changes based on pr suggestions --- keyboards/the_uni/keymaps/default/keymap.c | 24 +-------------------- keyboards/the_uni/keymaps/qwerty/keymap.c | 25 ---------------------- 2 files changed, 1 insertion(+), 48 deletions(-) diff --git a/keyboards/the_uni/keymaps/default/keymap.c b/keyboards/the_uni/keymaps/default/keymap.c index eb611e6a2210..f09bc4dc63f8 100644 --- a/keyboards/the_uni/keymaps/default/keymap.c +++ b/keyboards/the_uni/keymaps/default/keymap.c @@ -19,32 +19,11 @@ along with this program. If not, see . #include "keymap_steno.h" enum uni_layers { -/* - _QWERTY, - _CHOOSE, -*/ _PLOVER, }; -/* -enum uni_keycodes { - PLOVER, - QWERTY -}; -*/ - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -/* - [_QWERTY] = LAYOUT( - KC_Q, KC_W, KC_E, KC_R, LT(_CHOOSE, KC_T), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, - KC_1, KC_C, KC_V, KC_N, KC_M, KC_2), - - [_CHOOSE] = LAYOUT( - _______, _______, _______, _______, _______, PLOVER, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______), -*/ + [_PLOVER] = LAYOUT( STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , @@ -53,7 +32,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; bool process_record_user(uint16_t keycode, keyrecord_t *record) { - set_single_persistent_default_layer(_PLOVER); return true; } diff --git a/keyboards/the_uni/keymaps/qwerty/keymap.c b/keyboards/the_uni/keymaps/qwerty/keymap.c index 819f2f9f2342..74f703e5e904 100644 --- a/keyboards/the_uni/keymaps/qwerty/keymap.c +++ b/keyboards/the_uni/keymaps/qwerty/keymap.c @@ -20,42 +20,17 @@ along with this program. If not, see . enum uni_layers { _QWERTY, -/* - _CHOOSE, - _PLOVER, -*/ -}; - -/* -enum uni_keycodes { - PLOVER, - QWERTY }; -*/ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_QWERTY] = LAYOUT( KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_1, KC_C, KC_V, KC_N, KC_M, KC_2), -/* - - [_CHOOSE] = LAYOUT( - _______, _______, _______, _______, _______, PLOVER, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______), - [_PLOVER] = LAYOUT( - STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , - STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , - STN_N1, STN_A, STN_O, STN_E, STN_U, STN_N2), -*/ }; - - bool process_record_user(uint16_t keycode, keyrecord_t *record) { - set_single_persistent_default_layer(_QWERTY); return true; } From d7ee9382da71458af3b626c01ab6fcedbe4e255c Mon Sep 17 00:00:00 2001 From: Peter Park Date: Fri, 24 Sep 2021 14:19:35 -0700 Subject: [PATCH 05/37] Update keymap.c --- keyboards/the_uni/keymaps/default/keymap.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/keyboards/the_uni/keymaps/default/keymap.c b/keyboards/the_uni/keymaps/default/keymap.c index f09bc4dc63f8..4af7c2a71f48 100644 --- a/keyboards/the_uni/keymaps/default/keymap.c +++ b/keyboards/the_uni/keymaps/default/keymap.c @@ -31,10 +31,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; - bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; - } - void matrix_init_user() { steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT } From 7fab323075767813a29ef74c52bf610782130aa8 Mon Sep 17 00:00:00 2001 From: Peter Park Date: Fri, 24 Sep 2021 14:20:01 -0700 Subject: [PATCH 06/37] Update keymap.c --- keyboards/the_uni/keymaps/qwerty/keymap.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/keyboards/the_uni/keymaps/qwerty/keymap.c b/keyboards/the_uni/keymaps/qwerty/keymap.c index 74f703e5e904..999cc237f5e9 100644 --- a/keyboards/the_uni/keymaps/qwerty/keymap.c +++ b/keyboards/the_uni/keymaps/qwerty/keymap.c @@ -30,10 +30,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; - bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; - } - void matrix_init_user() { //steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT } From c86f83cdd3a89746a187329b103b8afee9b61fc0 Mon Sep 17 00:00:00 2001 From: Peter Park Date: Fri, 24 Sep 2021 14:26:26 -0700 Subject: [PATCH 07/37] Update readme.md --- keyboards/the_uni/usb_c/readme.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/keyboards/the_uni/usb_c/readme.md b/keyboards/the_uni/usb_c/readme.md index b44890d81089..23895db39fb6 100644 --- a/keyboards/the_uni/usb_c/readme.md +++ b/keyboards/the_uni/usb_c/readme.md @@ -6,6 +6,13 @@ - The Uni v3 (usb_c) - Hardware Availability: [https://www.stenokeyboards.com](https://www.stenokeyboards.com) +## Bootloader + +Enter the bootloader by: + +* **Physical reset button**: On the Uni v3, briefly press the button on the back of the PCB. +* **Reset Pads**: Uni v1 and v2 have pins/pads you must short instead (RST to GND). + Make examples for this keyboard (after setting up your build environment): make the_uni/usb_c:default From 595b047fefdf4f8a237b293bfe033dc429b36e0e Mon Sep 17 00:00:00 2001 From: Peter Park Date: Fri, 24 Sep 2021 14:27:11 -0700 Subject: [PATCH 08/37] Update keyboards/the_uni/usb_c/rules.mk Co-authored-by: Drashna Jaelre --- keyboards/the_uni/usb_c/rules.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/the_uni/usb_c/rules.mk b/keyboards/the_uni/usb_c/rules.mk index 1422818bbb7d..8926c3d3ffd5 100644 --- a/keyboards/the_uni/usb_c/rules.mk +++ b/keyboards/the_uni/usb_c/rules.mk @@ -8,7 +8,7 @@ BOOTLOADER = atmel-dfu # Build Options # comment out to disable the options. # -BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite CONSOLE_ENABLE = no # Console for debug COMMAND_ENABLE = no # Commands for debug and configuration SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend From b7ea98e407cac779a5af55525d9507277c175051 Mon Sep 17 00:00:00 2001 From: Peter Park Date: Mon, 12 Apr 2021 17:57:31 -0700 Subject: [PATCH 09/37] first commit --- keyboards/the_uni/config.h | 61 +++++++++++++++++++++++++++++++++++++ keyboards/the_uni/rules.mk | 58 +++++++++++++++++++++++++++++++++++ keyboards/the_uni/the_uni.c | 18 +++++++++++ keyboards/the_uni/the_uni.h | 32 +++++++++++++++++++ 4 files changed, 169 insertions(+) create mode 100644 keyboards/the_uni/config.h create mode 100644 keyboards/the_uni/rules.mk create mode 100644 keyboards/the_uni/the_uni.c create mode 100644 keyboards/the_uni/the_uni.h diff --git a/keyboards/the_uni/config.h b/keyboards/the_uni/config.h new file mode 100644 index 000000000000..db4151e3fd2e --- /dev/null +++ b/keyboards/the_uni/config.h @@ -0,0 +1,61 @@ +/* +Copyright 2021 Peter C. Park + +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" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x2353 +#define PRODUCT_ID 0x0001 +#define DEVICE_VER 0x0001 +#define MANUFACTURER stenokeyboards +#define PRODUCT The Uni +#define DESCRIPTION Used in conjunction with plover stenography + +/* key matrix size */ +#define MATRIX_ROWS 3 +#define MATRIX_COLS 11 + +/* key matrix pins */ +#define MATRIX_ROW_PINS { F4, B2, B6 } +#define MATRIX_COL_PINS { F5, F6, F7, B1, B3, B5, B4, E6, D7, C6, D4 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCING_DELAY 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 + +/* key combination for command */ +#define IS_COMMAND() ( \ + keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ +) + +/* prevent stuck modifiers */ +#define PREVENT_STUCK_MODIFIERS + +/*force the nkro if it does not work*/ +#define FORCE_NKRO + diff --git a/keyboards/the_uni/rules.mk b/keyboards/the_uni/rules.mk new file mode 100644 index 000000000000..91d981f7e4be --- /dev/null +++ b/keyboards/the_uni/rules.mk @@ -0,0 +1,58 @@ +# MCU name +MCU = atmega32u4 + +# Processor frequency. +# This will define a symbol, F_CPU, in all source code files equal to the +# processor frequency in Hz. You can then use this symbol in your source code to +# calculate timings. Do NOT tack on a 'UL' at the end, this will be done +# automatically to create a 32-bit value in your source code. +# +# This will be an integer division of F_USB below, as it is sourced by +# F_USB after it has run through any CPU prescalers. Note that this value +# does not *change* the processor frequency - it should merely be updated to +# reflect the processor speed set externally so that the code can use accurate +# software delays. +F_CPU = 16000000 + +# +# LUFA specific +# +# Target architecture (see library "Board Types" documentation). +ARCH = AVR8 + +# Input clock frequency. +# This will define a symbol, F_USB, in all source code files equal to the +# input clock frequency (before any prescaling is performed) in Hz. This value may +# differ from F_CPU if prescaling is used on the latter, and is required as the +# raw input clock is fed directly to the PLL sections of the AVR for high speed +# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL' +# at the end, this will be done automatically to create a 32-bit value in your +# source code. +# +# If no clock division is performed on the input clock inside the AVR (via the +# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU. +F_USB = $(F_CPU) + +# Interrupt driven control endpoint task(+60) +OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT + + +# Boot Section Size in *bytes* +OPT_DEFS += -DBOOTLOADER_SIZE=4096 + + +# Build Options +# comment out to disable the options. +# +BOOTMAGIC_ENABLE ?= yes # Virtual DIP switch configuration(+1000) +CONSOLE_ENABLE ?= no # Console for debug(+400) +COMMAND_ENABLE ?= no # Commands for debug and configuration +SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend +NKRO_ENABLE ?= yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +BACKLIGHT_ENABLE ?= no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE ?= no + +FORCE_NKRO = yes +EXTRAKEY_ENABLE = no +MOUSEKEY_ENABLE = no # Mouse keys(+4700) +STENO_ENABLE = yes # Additional protocols for Stenography(+1700), requires VIRTSER \ No newline at end of file diff --git a/keyboards/the_uni/the_uni.c b/keyboards/the_uni/the_uni.c new file mode 100644 index 000000000000..b99b06830c63 --- /dev/null +++ b/keyboards/the_uni/the_uni.c @@ -0,0 +1,18 @@ +/* +Copyright 2021 Peter C. Park + +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 "the_uni.h" diff --git a/keyboards/the_uni/the_uni.h b/keyboards/the_uni/the_uni.h new file mode 100644 index 000000000000..002af14cfa94 --- /dev/null +++ b/keyboards/the_uni/the_uni.h @@ -0,0 +1,32 @@ +/* +Copyright 2021 Peter C. Park + +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 +#define THE_UNI_H + +#include "quantum.h" + +#define KEYMAP( \ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, \ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, \ + K202, K203, K204, K205, K206, K207 \ +) { \ + { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010 }, \ + { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110 }, \ + { KC_NO, KC_NO, K202, K203, K204, K205, K206, K207, KC_NO, KC_NO, KC_NO } \ +} + From cdac2a97c76bafda713b83cb3e29912a5622b39b Mon Sep 17 00:00:00 2001 From: Peter Park Date: Wed, 21 Apr 2021 09:19:48 -0700 Subject: [PATCH 10/37] Apply suggestions from code review Co-authored-by: Drashna Jaelre --- keyboards/the_uni/config.h | 13 ++------ keyboards/the_uni/rules.mk | 59 +++++++------------------------------ keyboards/the_uni/the_uni.h | 2 -- 3 files changed, 13 insertions(+), 61 deletions(-) diff --git a/keyboards/the_uni/config.h b/keyboards/the_uni/config.h index db4151e3fd2e..ff965d7744e3 100644 --- a/keyboards/the_uni/config.h +++ b/keyboards/the_uni/config.h @@ -20,12 +20,11 @@ along with this program. If not, see . #include "config_common.h" /* USB Device descriptor parameter */ -#define VENDOR_ID 0x2353 +#define VENDOR_ID 0x9000 #define PRODUCT_ID 0x0001 #define DEVICE_VER 0x0001 #define MANUFACTURER stenokeyboards #define PRODUCT The Uni -#define DESCRIPTION Used in conjunction with plover stenography /* key matrix size */ #define MATRIX_ROWS 3 @@ -40,7 +39,7 @@ along with this program. If not, see . #define DIODE_DIRECTION COL2ROW /* Set 0 if debouncing isn't needed */ -#define DEBOUNCING_DELAY 5 +#define DEBOUNCE 5 /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ #define LOCKING_SUPPORT_ENABLE @@ -48,14 +47,6 @@ along with this program. If not, see . /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* key combination for command */ -#define IS_COMMAND() ( \ - keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ -) - -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS /*force the nkro if it does not work*/ #define FORCE_NKRO - diff --git a/keyboards/the_uni/rules.mk b/keyboards/the_uni/rules.mk index 91d981f7e4be..1422818bbb7d 100644 --- a/keyboards/the_uni/rules.mk +++ b/keyboards/the_uni/rules.mk @@ -1,58 +1,21 @@ # MCU name MCU = atmega32u4 -# Processor frequency. -# This will define a symbol, F_CPU, in all source code files equal to the -# processor frequency in Hz. You can then use this symbol in your source code to -# calculate timings. Do NOT tack on a 'UL' at the end, this will be done -# automatically to create a 32-bit value in your source code. -# -# This will be an integer division of F_USB below, as it is sourced by -# F_USB after it has run through any CPU prescalers. Note that this value -# does not *change* the processor frequency - it should merely be updated to -# reflect the processor speed set externally so that the code can use accurate -# software delays. -F_CPU = 16000000 - -# -# LUFA specific -# -# Target architecture (see library "Board Types" documentation). -ARCH = AVR8 - -# Input clock frequency. -# This will define a symbol, F_USB, in all source code files equal to the -# input clock frequency (before any prescaling is performed) in Hz. This value may -# differ from F_CPU if prescaling is used on the latter, and is required as the -# raw input clock is fed directly to the PLL sections of the AVR for high speed -# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL' -# at the end, this will be done automatically to create a 32-bit value in your -# source code. -# -# If no clock division is performed on the input clock inside the AVR (via the -# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU. -F_USB = $(F_CPU) - -# Interrupt driven control endpoint task(+60) -OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT - - -# Boot Section Size in *bytes* -OPT_DEFS += -DBOOTLOADER_SIZE=4096 +# Bootloader +BOOTLOADER = atmel-dfu # Build Options # comment out to disable the options. # -BOOTMAGIC_ENABLE ?= yes # Virtual DIP switch configuration(+1000) -CONSOLE_ENABLE ?= no # Console for debug(+400) -COMMAND_ENABLE ?= no # Commands for debug and configuration -SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend -NKRO_ENABLE ?= yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -BACKLIGHT_ENABLE ?= no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE ?= no - +BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend +NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no FORCE_NKRO = yes EXTRAKEY_ENABLE = no -MOUSEKEY_ENABLE = no # Mouse keys(+4700) -STENO_ENABLE = yes # Additional protocols for Stenography(+1700), requires VIRTSER \ No newline at end of file +MOUSEKEY_ENABLE = no # Mouse keys +STENO_ENABLE = yes diff --git a/keyboards/the_uni/the_uni.h b/keyboards/the_uni/the_uni.h index 002af14cfa94..2508cb09fc0c 100644 --- a/keyboards/the_uni/the_uni.h +++ b/keyboards/the_uni/the_uni.h @@ -16,7 +16,6 @@ along with this program. If not, see . */ #pragma once -#define THE_UNI_H #include "quantum.h" @@ -29,4 +28,3 @@ along with this program. If not, see . { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110 }, \ { KC_NO, KC_NO, K202, K203, K204, K205, K206, K207, KC_NO, KC_NO, KC_NO } \ } - From 1bb644904442b5612a5fb64e6e433efe9066e34c Mon Sep 17 00:00:00 2001 From: Peter Park Date: Thu, 6 May 2021 23:01:24 -0700 Subject: [PATCH 11/37] Apply suggestions from code review by ridingqwerty Co-authored-by: ridingqwerty --- keyboards/the_uni/the_uni.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/the_uni/the_uni.h b/keyboards/the_uni/the_uni.h index 2508cb09fc0c..9371c3a241d6 100644 --- a/keyboards/the_uni/the_uni.h +++ b/keyboards/the_uni/the_uni.h @@ -19,7 +19,7 @@ along with this program. If not, see . #include "quantum.h" -#define KEYMAP( \ +#define LAYOUT( \ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, \ K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, \ K202, K203, K204, K205, K206, K207 \ From 86488e31a697ef6e086ea068baf252c1f783a26f Mon Sep 17 00:00:00 2001 From: Peter Park Date: Tue, 3 Aug 2021 21:30:05 -0700 Subject: [PATCH 12/37] switchable keymap added --- keyboards/the_uni/config.h | 52 ----------- keyboards/the_uni/keymaps/switchable/keymap.c | 87 +++++++++++++++++++ keyboards/the_uni/pro_micro/rules.mk | 2 +- keyboards/the_uni/rules.mk | 21 ----- keyboards/the_uni/the_uni.c | 18 ---- keyboards/the_uni/the_uni.h | 30 ------- keyboards/the_uni/usb_c/rules.mk | 2 +- 7 files changed, 89 insertions(+), 123 deletions(-) delete mode 100644 keyboards/the_uni/config.h create mode 100644 keyboards/the_uni/keymaps/switchable/keymap.c delete mode 100644 keyboards/the_uni/rules.mk delete mode 100644 keyboards/the_uni/the_uni.c delete mode 100644 keyboards/the_uni/the_uni.h diff --git a/keyboards/the_uni/config.h b/keyboards/the_uni/config.h deleted file mode 100644 index ff965d7744e3..000000000000 --- a/keyboards/the_uni/config.h +++ /dev/null @@ -1,52 +0,0 @@ -/* -Copyright 2021 Peter C. Park - -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" - -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x9000 -#define PRODUCT_ID 0x0001 -#define DEVICE_VER 0x0001 -#define MANUFACTURER stenokeyboards -#define PRODUCT The Uni - -/* key matrix size */ -#define MATRIX_ROWS 3 -#define MATRIX_COLS 11 - -/* key matrix pins */ -#define MATRIX_ROW_PINS { F4, B2, B6 } -#define MATRIX_COL_PINS { F5, F6, F7, B1, B3, B5, B4, E6, D7, C6, D4 } -#define UNUSED_PINS - -/* 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 - - -/*force the nkro if it does not work*/ -#define FORCE_NKRO diff --git a/keyboards/the_uni/keymaps/switchable/keymap.c b/keyboards/the_uni/keymaps/switchable/keymap.c new file mode 100644 index 000000000000..57b6c20d67cc --- /dev/null +++ b/keyboards/the_uni/keymaps/switchable/keymap.c @@ -0,0 +1,87 @@ +/* +Copyright 2021 Peter C. Park + +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 +#include "keymap_steno.h" + +enum uni_layers { + _QWERTY = 0 + ,_GEMINI + ,_LOWER + ,_RAISE + ,_CHOOSE +}; + +enum uni_keycodes { + GEMINI = SAFE_RANGE + ,QWERTY +}; + +#define RAISE MO(_RAISE) +#define LOWER MO(_LOWER) +#define CHOOSE MO(_CHOOSE) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_QWERTY] = LAYOUT( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + RAISE, KC_C, KC_V, KC_N, KC_M, LOWER), + + [_GEMINI] = LAYOUT( + STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , + STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , + RAISE, STN_A, STN_O, STN_E, STN_U, LOWER), + + [_RAISE] = LAYOUT( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, KC_LCMD, KC_LALT, KC_SPC, KC_LCTRL, CHOOSE), + + [_LOWER] = LAYOUT( + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + CHOOSE, KC_LCTRL, KC_SPC, KC_LALT, KC_LCMD, _______), + + [_CHOOSE] = LAYOUT( + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, XXXXXXX, QWERTY, GEMINI, XXXXXXX, _______), +}; + + + bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case GEMINI: + if (!record->event.pressed) { + set_single_persistent_default_layer(_GEMINI); + } + return false; + case QWERTY: + if (!record->event.pressed) { + set_single_persistent_default_layer(_QWERTY); + } + return false; + } + return true; + } + + void matrix_init_user() { + steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT + } + diff --git a/keyboards/the_uni/pro_micro/rules.mk b/keyboards/the_uni/pro_micro/rules.mk index 36c52b6777ae..01252dcf589e 100644 --- a/keyboards/the_uni/pro_micro/rules.mk +++ b/keyboards/the_uni/pro_micro/rules.mk @@ -18,4 +18,4 @@ RGBLIGHT_ENABLE = no FORCE_NKRO = yes EXTRAKEY_ENABLE = no MOUSEKEY_ENABLE = no # Mouse keys -STENO_ENABLE = yes +STENO_ENABLE = yes diff --git a/keyboards/the_uni/rules.mk b/keyboards/the_uni/rules.mk deleted file mode 100644 index 1422818bbb7d..000000000000 --- a/keyboards/the_uni/rules.mk +++ /dev/null @@ -1,21 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader -BOOTLOADER = atmel-dfu - - -# Build Options -# comment out to disable the options. -# -BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration -CONSOLE_ENABLE = no # Console for debug -COMMAND_ENABLE = no # Commands for debug and configuration -SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend -NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = no -FORCE_NKRO = yes -EXTRAKEY_ENABLE = no -MOUSEKEY_ENABLE = no # Mouse keys -STENO_ENABLE = yes diff --git a/keyboards/the_uni/the_uni.c b/keyboards/the_uni/the_uni.c deleted file mode 100644 index b99b06830c63..000000000000 --- a/keyboards/the_uni/the_uni.c +++ /dev/null @@ -1,18 +0,0 @@ -/* -Copyright 2021 Peter C. Park - -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 "the_uni.h" diff --git a/keyboards/the_uni/the_uni.h b/keyboards/the_uni/the_uni.h deleted file mode 100644 index 9371c3a241d6..000000000000 --- a/keyboards/the_uni/the_uni.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -Copyright 2021 Peter C. Park - -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( \ - K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, \ - K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, \ - K202, K203, K204, K205, K206, K207 \ -) { \ - { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010 }, \ - { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110 }, \ - { KC_NO, KC_NO, K202, K203, K204, K205, K206, K207, KC_NO, KC_NO, KC_NO } \ -} diff --git a/keyboards/the_uni/usb_c/rules.mk b/keyboards/the_uni/usb_c/rules.mk index 8926c3d3ffd5..5cc422a11515 100644 --- a/keyboards/the_uni/usb_c/rules.mk +++ b/keyboards/the_uni/usb_c/rules.mk @@ -18,4 +18,4 @@ RGBLIGHT_ENABLE = no FORCE_NKRO = yes EXTRAKEY_ENABLE = no MOUSEKEY_ENABLE = no # Mouse keys -STENO_ENABLE = yes +STENO_ENABLE = yes From 3cea6795340028b4409308b5d3e649402a4e9c1b Mon Sep 17 00:00:00 2001 From: Peter Park Date: Thu, 12 Aug 2021 20:13:11 -0700 Subject: [PATCH 13/37] && git push fix error --- keyboards/the_uni/keymaps/switchable/keymap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/the_uni/keymaps/switchable/keymap.c b/keyboards/the_uni/keymaps/switchable/keymap.c index 57b6c20d67cc..6a8598287348 100644 --- a/keyboards/the_uni/keymaps/switchable/keymap.c +++ b/keyboards/the_uni/keymaps/switchable/keymap.c @@ -51,12 +51,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_RAISE] = LAYOUT( KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - _______, KC_LCMD, KC_LALT, KC_SPC, KC_LCTRL, CHOOSE), + _______, KC_LCMD, KC_LSFT, KC_LALT, KC_LCTRL, CHOOSE), [_LOWER] = LAYOUT( KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - CHOOSE, KC_LCTRL, KC_SPC, KC_LALT, KC_LCMD, _______), + CHOOSE, KC_LCMD, KC_LSFT, KC_LALT, KC_LCTRL, _______), [_CHOOSE] = LAYOUT( XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, From a456ceec2bf0838b371936a2dfe62d17b7c19991 Mon Sep 17 00:00:00 2001 From: Peter Park Date: Wed, 22 Sep 2021 17:17:36 -0700 Subject: [PATCH 14/37] add support for the Uni v3 and update some readmes --- keyboards/the_uni/keymaps/switchable/keymap.c | 87 ------------------- 1 file changed, 87 deletions(-) delete mode 100644 keyboards/the_uni/keymaps/switchable/keymap.c diff --git a/keyboards/the_uni/keymaps/switchable/keymap.c b/keyboards/the_uni/keymaps/switchable/keymap.c deleted file mode 100644 index 6a8598287348..000000000000 --- a/keyboards/the_uni/keymaps/switchable/keymap.c +++ /dev/null @@ -1,87 +0,0 @@ -/* -Copyright 2021 Peter C. Park - -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 -#include "keymap_steno.h" - -enum uni_layers { - _QWERTY = 0 - ,_GEMINI - ,_LOWER - ,_RAISE - ,_CHOOSE -}; - -enum uni_keycodes { - GEMINI = SAFE_RANGE - ,QWERTY -}; - -#define RAISE MO(_RAISE) -#define LOWER MO(_LOWER) -#define CHOOSE MO(_CHOOSE) - - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - - [_QWERTY] = LAYOUT( - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, - RAISE, KC_C, KC_V, KC_N, KC_M, LOWER), - - [_GEMINI] = LAYOUT( - STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , - STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , - RAISE, STN_A, STN_O, STN_E, STN_U, LOWER), - - [_RAISE] = LAYOUT( - KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, - KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - _______, KC_LCMD, KC_LSFT, KC_LALT, KC_LCTRL, CHOOSE), - - [_LOWER] = LAYOUT( - KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, - KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - CHOOSE, KC_LCMD, KC_LSFT, KC_LALT, KC_LCTRL, _______), - - [_CHOOSE] = LAYOUT( - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - _______, XXXXXXX, QWERTY, GEMINI, XXXXXXX, _______), -}; - - - bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case GEMINI: - if (!record->event.pressed) { - set_single_persistent_default_layer(_GEMINI); - } - return false; - case QWERTY: - if (!record->event.pressed) { - set_single_persistent_default_layer(_QWERTY); - } - return false; - } - return true; - } - - void matrix_init_user() { - steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT - } - From 429ebaaee061686a3d4726d8078284bd6daf4df6 Mon Sep 17 00:00:00 2001 From: Peter Park Date: Sat, 25 Sep 2021 16:53:38 -0700 Subject: [PATCH 15/37] update readmes for instructions to enter bootloader --- keyboards/the_uni/pro_micro/readme.md | 7 +++++++ keyboards/the_uni/readme.md | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/keyboards/the_uni/pro_micro/readme.md b/keyboards/the_uni/pro_micro/readme.md index 786510f70fba..d6b623156162 100644 --- a/keyboards/the_uni/pro_micro/readme.md +++ b/keyboards/the_uni/pro_micro/readme.md @@ -6,6 +6,13 @@ - The Uni v1 and v2 (pro_micro) - Hardware Availability: [https://www.stenokeyboards.com](https://www.stenokeyboards.com) +# Bootloader + +Enter the bootloader by: + +* **Physical reset button**: On the Uni v3, briefly press the button on the back of the PCB. +* **Reset Pads**: Uni v1 and v2 have pins/pads you must short instead (RST to GND). + Make examples for this keyboard (after setting up your build environment): make the_uni/pro_micro:default diff --git a/keyboards/the_uni/readme.md b/keyboards/the_uni/readme.md index 55ab868c39e4..cd1c99e43575 100644 --- a/keyboards/the_uni/readme.md +++ b/keyboards/the_uni/readme.md @@ -15,6 +15,13 @@ A compact unibody split ortholinear keyboard made specifically for stenography. - Hardware Availability: [https://www.stenokeyboards.com](https://www.stenokeyboards.com) +# Bootloader + +Enter the bootloader by: + +* **Physical reset button**: On the Uni v3, briefly press the button on the back of the PCB. +* **Reset Pads**: Uni v1 and v2 have pins/pads you must short instead (RST to GND). + Make examples for this keyboard (after setting up your build environment): make the_uni/pro_micro:default From 894d994f3c5c9fe7c1ba4b2697c801cd54727b35 Mon Sep 17 00:00:00 2001 From: Peter Park Date: Tue, 3 Aug 2021 21:30:05 -0700 Subject: [PATCH 16/37] switchable keymap added --- keyboards/the_uni/keymaps/switchable/keymap.c | 87 +++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 keyboards/the_uni/keymaps/switchable/keymap.c diff --git a/keyboards/the_uni/keymaps/switchable/keymap.c b/keyboards/the_uni/keymaps/switchable/keymap.c new file mode 100644 index 000000000000..57b6c20d67cc --- /dev/null +++ b/keyboards/the_uni/keymaps/switchable/keymap.c @@ -0,0 +1,87 @@ +/* +Copyright 2021 Peter C. Park + +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 +#include "keymap_steno.h" + +enum uni_layers { + _QWERTY = 0 + ,_GEMINI + ,_LOWER + ,_RAISE + ,_CHOOSE +}; + +enum uni_keycodes { + GEMINI = SAFE_RANGE + ,QWERTY +}; + +#define RAISE MO(_RAISE) +#define LOWER MO(_LOWER) +#define CHOOSE MO(_CHOOSE) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_QWERTY] = LAYOUT( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + RAISE, KC_C, KC_V, KC_N, KC_M, LOWER), + + [_GEMINI] = LAYOUT( + STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , + STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , + RAISE, STN_A, STN_O, STN_E, STN_U, LOWER), + + [_RAISE] = LAYOUT( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, KC_LCMD, KC_LALT, KC_SPC, KC_LCTRL, CHOOSE), + + [_LOWER] = LAYOUT( + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + CHOOSE, KC_LCTRL, KC_SPC, KC_LALT, KC_LCMD, _______), + + [_CHOOSE] = LAYOUT( + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, XXXXXXX, QWERTY, GEMINI, XXXXXXX, _______), +}; + + + bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case GEMINI: + if (!record->event.pressed) { + set_single_persistent_default_layer(_GEMINI); + } + return false; + case QWERTY: + if (!record->event.pressed) { + set_single_persistent_default_layer(_QWERTY); + } + return false; + } + return true; + } + + void matrix_init_user() { + steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT + } + From bef78730be33806cfd501a955680c181dd82fb9e Mon Sep 17 00:00:00 2001 From: Peter Park Date: Thu, 12 Aug 2021 20:13:11 -0700 Subject: [PATCH 17/37] && git push fix error --- keyboards/the_uni/keymaps/default/keymap.c | 17 ++++++++++++++++- keyboards/the_uni/keymaps/qwerty/keymap.c | 18 ++++++++++++++++++ keyboards/the_uni/keymaps/switchable/keymap.c | 4 ++-- 3 files changed, 36 insertions(+), 3 deletions(-) diff --git a/keyboards/the_uni/keymaps/default/keymap.c b/keyboards/the_uni/keymaps/default/keymap.c index 4af7c2a71f48..7e09e01973f3 100644 --- a/keyboards/the_uni/keymaps/default/keymap.c +++ b/keyboards/the_uni/keymaps/default/keymap.c @@ -23,7 +23,17 @@ enum uni_layers { }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - +/* + [_QWERTY] = LAYOUT( + KC_Q, KC_W, KC_E, KC_R, LT(_CHOOSE, KC_T), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_1, KC_C, KC_V, KC_N, KC_M, KC_2), + + [_CHOOSE] = LAYOUT( + _______, _______, _______, _______, _______, PLOVER, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______), +*/ [_PLOVER] = LAYOUT( STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , @@ -31,6 +41,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; + bool process_record_user(uint16_t keycode, keyrecord_t *record) { + set_single_persistent_default_layer(_PLOVER); + return true; + } + void matrix_init_user() { steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT } diff --git a/keyboards/the_uni/keymaps/qwerty/keymap.c b/keyboards/the_uni/keymaps/qwerty/keymap.c index 999cc237f5e9..d753a55707fe 100644 --- a/keyboards/the_uni/keymaps/qwerty/keymap.c +++ b/keyboards/the_uni/keymaps/qwerty/keymap.c @@ -27,9 +27,27 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_1, KC_C, KC_V, KC_N, KC_M, KC_2), +/* + + [_CHOOSE] = LAYOUT( + _______, _______, _______, _______, _______, PLOVER, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______), + [_PLOVER] = LAYOUT( + STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , + STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , + STN_N1, STN_A, STN_O, STN_E, STN_U, STN_N2), +*/ }; + + + bool process_record_user(uint16_t keycode, keyrecord_t *record) { + set_single_persistent_default_layer(_QWERTY); + return true; + } + void matrix_init_user() { //steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT } diff --git a/keyboards/the_uni/keymaps/switchable/keymap.c b/keyboards/the_uni/keymaps/switchable/keymap.c index 57b6c20d67cc..6a8598287348 100644 --- a/keyboards/the_uni/keymaps/switchable/keymap.c +++ b/keyboards/the_uni/keymaps/switchable/keymap.c @@ -51,12 +51,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_RAISE] = LAYOUT( KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - _______, KC_LCMD, KC_LALT, KC_SPC, KC_LCTRL, CHOOSE), + _______, KC_LCMD, KC_LSFT, KC_LALT, KC_LCTRL, CHOOSE), [_LOWER] = LAYOUT( KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - CHOOSE, KC_LCTRL, KC_SPC, KC_LALT, KC_LCMD, _______), + CHOOSE, KC_LCMD, KC_LSFT, KC_LALT, KC_LCTRL, _______), [_CHOOSE] = LAYOUT( XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, From 0a0aea18dc2f0ad374fc8462391b8ef9fa9276ba Mon Sep 17 00:00:00 2001 From: Peter Park Date: Wed, 22 Sep 2021 17:17:36 -0700 Subject: [PATCH 18/37] add support for the Uni v3 and update some readmes --- keyboards/the_uni/keymaps/switchable/keymap.c | 87 ------------------- keyboards/the_uni/pro_micro/readme.md | 7 -- keyboards/the_uni/readme.md | 7 -- keyboards/the_uni/usb_c/readme.md | 7 -- 4 files changed, 108 deletions(-) delete mode 100644 keyboards/the_uni/keymaps/switchable/keymap.c diff --git a/keyboards/the_uni/keymaps/switchable/keymap.c b/keyboards/the_uni/keymaps/switchable/keymap.c deleted file mode 100644 index 6a8598287348..000000000000 --- a/keyboards/the_uni/keymaps/switchable/keymap.c +++ /dev/null @@ -1,87 +0,0 @@ -/* -Copyright 2021 Peter C. Park - -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 -#include "keymap_steno.h" - -enum uni_layers { - _QWERTY = 0 - ,_GEMINI - ,_LOWER - ,_RAISE - ,_CHOOSE -}; - -enum uni_keycodes { - GEMINI = SAFE_RANGE - ,QWERTY -}; - -#define RAISE MO(_RAISE) -#define LOWER MO(_LOWER) -#define CHOOSE MO(_CHOOSE) - - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - - [_QWERTY] = LAYOUT( - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, - RAISE, KC_C, KC_V, KC_N, KC_M, LOWER), - - [_GEMINI] = LAYOUT( - STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , - STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , - RAISE, STN_A, STN_O, STN_E, STN_U, LOWER), - - [_RAISE] = LAYOUT( - KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, - KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - _______, KC_LCMD, KC_LSFT, KC_LALT, KC_LCTRL, CHOOSE), - - [_LOWER] = LAYOUT( - KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, - KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - CHOOSE, KC_LCMD, KC_LSFT, KC_LALT, KC_LCTRL, _______), - - [_CHOOSE] = LAYOUT( - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - _______, XXXXXXX, QWERTY, GEMINI, XXXXXXX, _______), -}; - - - bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case GEMINI: - if (!record->event.pressed) { - set_single_persistent_default_layer(_GEMINI); - } - return false; - case QWERTY: - if (!record->event.pressed) { - set_single_persistent_default_layer(_QWERTY); - } - return false; - } - return true; - } - - void matrix_init_user() { - steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT - } - diff --git a/keyboards/the_uni/pro_micro/readme.md b/keyboards/the_uni/pro_micro/readme.md index d6b623156162..786510f70fba 100644 --- a/keyboards/the_uni/pro_micro/readme.md +++ b/keyboards/the_uni/pro_micro/readme.md @@ -6,13 +6,6 @@ - The Uni v1 and v2 (pro_micro) - Hardware Availability: [https://www.stenokeyboards.com](https://www.stenokeyboards.com) -# Bootloader - -Enter the bootloader by: - -* **Physical reset button**: On the Uni v3, briefly press the button on the back of the PCB. -* **Reset Pads**: Uni v1 and v2 have pins/pads you must short instead (RST to GND). - Make examples for this keyboard (after setting up your build environment): make the_uni/pro_micro:default diff --git a/keyboards/the_uni/readme.md b/keyboards/the_uni/readme.md index cd1c99e43575..55ab868c39e4 100644 --- a/keyboards/the_uni/readme.md +++ b/keyboards/the_uni/readme.md @@ -15,13 +15,6 @@ A compact unibody split ortholinear keyboard made specifically for stenography. - Hardware Availability: [https://www.stenokeyboards.com](https://www.stenokeyboards.com) -# Bootloader - -Enter the bootloader by: - -* **Physical reset button**: On the Uni v3, briefly press the button on the back of the PCB. -* **Reset Pads**: Uni v1 and v2 have pins/pads you must short instead (RST to GND). - Make examples for this keyboard (after setting up your build environment): make the_uni/pro_micro:default diff --git a/keyboards/the_uni/usb_c/readme.md b/keyboards/the_uni/usb_c/readme.md index 23895db39fb6..b44890d81089 100644 --- a/keyboards/the_uni/usb_c/readme.md +++ b/keyboards/the_uni/usb_c/readme.md @@ -6,13 +6,6 @@ - The Uni v3 (usb_c) - Hardware Availability: [https://www.stenokeyboards.com](https://www.stenokeyboards.com) -## Bootloader - -Enter the bootloader by: - -* **Physical reset button**: On the Uni v3, briefly press the button on the back of the PCB. -* **Reset Pads**: Uni v1 and v2 have pins/pads you must short instead (RST to GND). - Make examples for this keyboard (after setting up your build environment): make the_uni/usb_c:default From 6f3a95aea5ae8858f7a67bafdc773d616748e79b Mon Sep 17 00:00:00 2001 From: Peter Park Date: Thu, 23 Sep 2021 14:48:58 -0700 Subject: [PATCH 19/37] make changes based on pr suggestions --- keyboards/the_uni/keymaps/default/keymap.c | 13 +------------ keyboards/the_uni/keymaps/qwerty/keymap.c | 14 -------------- 2 files changed, 1 insertion(+), 26 deletions(-) diff --git a/keyboards/the_uni/keymaps/default/keymap.c b/keyboards/the_uni/keymaps/default/keymap.c index 7e09e01973f3..f09bc4dc63f8 100644 --- a/keyboards/the_uni/keymaps/default/keymap.c +++ b/keyboards/the_uni/keymaps/default/keymap.c @@ -23,17 +23,7 @@ enum uni_layers { }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -/* - [_QWERTY] = LAYOUT( - KC_Q, KC_W, KC_E, KC_R, LT(_CHOOSE, KC_T), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, - KC_1, KC_C, KC_V, KC_N, KC_M, KC_2), - - [_CHOOSE] = LAYOUT( - _______, _______, _______, _______, _______, PLOVER, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______), -*/ + [_PLOVER] = LAYOUT( STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , @@ -42,7 +32,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; bool process_record_user(uint16_t keycode, keyrecord_t *record) { - set_single_persistent_default_layer(_PLOVER); return true; } diff --git a/keyboards/the_uni/keymaps/qwerty/keymap.c b/keyboards/the_uni/keymaps/qwerty/keymap.c index d753a55707fe..74f703e5e904 100644 --- a/keyboards/the_uni/keymaps/qwerty/keymap.c +++ b/keyboards/the_uni/keymaps/qwerty/keymap.c @@ -27,24 +27,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_1, KC_C, KC_V, KC_N, KC_M, KC_2), -/* - - [_CHOOSE] = LAYOUT( - _______, _______, _______, _______, _______, PLOVER, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______), - [_PLOVER] = LAYOUT( - STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , - STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , - STN_N1, STN_A, STN_O, STN_E, STN_U, STN_N2), -*/ }; - - bool process_record_user(uint16_t keycode, keyrecord_t *record) { - set_single_persistent_default_layer(_QWERTY); return true; } From b283962215cd084bca2dcc49fdac55e9bda7f0be Mon Sep 17 00:00:00 2001 From: Peter Park Date: Fri, 24 Sep 2021 14:19:35 -0700 Subject: [PATCH 20/37] Update keymap.c --- keyboards/the_uni/keymaps/default/keymap.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/keyboards/the_uni/keymaps/default/keymap.c b/keyboards/the_uni/keymaps/default/keymap.c index f09bc4dc63f8..4af7c2a71f48 100644 --- a/keyboards/the_uni/keymaps/default/keymap.c +++ b/keyboards/the_uni/keymaps/default/keymap.c @@ -31,10 +31,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; - bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; - } - void matrix_init_user() { steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT } From a025cbdbc30747c3fac7d8ca4da2ae02c5852d84 Mon Sep 17 00:00:00 2001 From: Peter Park Date: Fri, 24 Sep 2021 14:20:01 -0700 Subject: [PATCH 21/37] Update keymap.c --- keyboards/the_uni/keymaps/qwerty/keymap.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/keyboards/the_uni/keymaps/qwerty/keymap.c b/keyboards/the_uni/keymaps/qwerty/keymap.c index 74f703e5e904..999cc237f5e9 100644 --- a/keyboards/the_uni/keymaps/qwerty/keymap.c +++ b/keyboards/the_uni/keymaps/qwerty/keymap.c @@ -30,10 +30,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; - bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; - } - void matrix_init_user() { //steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT } From 2c2e57da7b48fd3f4d1794ec8b7254a0efc202b0 Mon Sep 17 00:00:00 2001 From: Peter Park Date: Fri, 24 Sep 2021 14:26:26 -0700 Subject: [PATCH 22/37] Update readme.md --- keyboards/the_uni/usb_c/readme.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/keyboards/the_uni/usb_c/readme.md b/keyboards/the_uni/usb_c/readme.md index b44890d81089..23895db39fb6 100644 --- a/keyboards/the_uni/usb_c/readme.md +++ b/keyboards/the_uni/usb_c/readme.md @@ -6,6 +6,13 @@ - The Uni v3 (usb_c) - Hardware Availability: [https://www.stenokeyboards.com](https://www.stenokeyboards.com) +## Bootloader + +Enter the bootloader by: + +* **Physical reset button**: On the Uni v3, briefly press the button on the back of the PCB. +* **Reset Pads**: Uni v1 and v2 have pins/pads you must short instead (RST to GND). + Make examples for this keyboard (after setting up your build environment): make the_uni/usb_c:default From 4e62cfd0b006e4b01395912e7c85fb40db970e0e Mon Sep 17 00:00:00 2001 From: Peter Park Date: Mon, 12 Apr 2021 17:57:31 -0700 Subject: [PATCH 23/37] first commit --- keyboards/the_uni/config.h | 61 +++++++++++++++++++++++++++++++++++++ keyboards/the_uni/rules.mk | 58 +++++++++++++++++++++++++++++++++++ keyboards/the_uni/the_uni.c | 18 +++++++++++ keyboards/the_uni/the_uni.h | 32 +++++++++++++++++++ 4 files changed, 169 insertions(+) create mode 100644 keyboards/the_uni/config.h create mode 100644 keyboards/the_uni/rules.mk create mode 100644 keyboards/the_uni/the_uni.c create mode 100644 keyboards/the_uni/the_uni.h diff --git a/keyboards/the_uni/config.h b/keyboards/the_uni/config.h new file mode 100644 index 000000000000..db4151e3fd2e --- /dev/null +++ b/keyboards/the_uni/config.h @@ -0,0 +1,61 @@ +/* +Copyright 2021 Peter C. Park + +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" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x2353 +#define PRODUCT_ID 0x0001 +#define DEVICE_VER 0x0001 +#define MANUFACTURER stenokeyboards +#define PRODUCT The Uni +#define DESCRIPTION Used in conjunction with plover stenography + +/* key matrix size */ +#define MATRIX_ROWS 3 +#define MATRIX_COLS 11 + +/* key matrix pins */ +#define MATRIX_ROW_PINS { F4, B2, B6 } +#define MATRIX_COL_PINS { F5, F6, F7, B1, B3, B5, B4, E6, D7, C6, D4 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCING_DELAY 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 + +/* key combination for command */ +#define IS_COMMAND() ( \ + keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ +) + +/* prevent stuck modifiers */ +#define PREVENT_STUCK_MODIFIERS + +/*force the nkro if it does not work*/ +#define FORCE_NKRO + diff --git a/keyboards/the_uni/rules.mk b/keyboards/the_uni/rules.mk new file mode 100644 index 000000000000..91d981f7e4be --- /dev/null +++ b/keyboards/the_uni/rules.mk @@ -0,0 +1,58 @@ +# MCU name +MCU = atmega32u4 + +# Processor frequency. +# This will define a symbol, F_CPU, in all source code files equal to the +# processor frequency in Hz. You can then use this symbol in your source code to +# calculate timings. Do NOT tack on a 'UL' at the end, this will be done +# automatically to create a 32-bit value in your source code. +# +# This will be an integer division of F_USB below, as it is sourced by +# F_USB after it has run through any CPU prescalers. Note that this value +# does not *change* the processor frequency - it should merely be updated to +# reflect the processor speed set externally so that the code can use accurate +# software delays. +F_CPU = 16000000 + +# +# LUFA specific +# +# Target architecture (see library "Board Types" documentation). +ARCH = AVR8 + +# Input clock frequency. +# This will define a symbol, F_USB, in all source code files equal to the +# input clock frequency (before any prescaling is performed) in Hz. This value may +# differ from F_CPU if prescaling is used on the latter, and is required as the +# raw input clock is fed directly to the PLL sections of the AVR for high speed +# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL' +# at the end, this will be done automatically to create a 32-bit value in your +# source code. +# +# If no clock division is performed on the input clock inside the AVR (via the +# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU. +F_USB = $(F_CPU) + +# Interrupt driven control endpoint task(+60) +OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT + + +# Boot Section Size in *bytes* +OPT_DEFS += -DBOOTLOADER_SIZE=4096 + + +# Build Options +# comment out to disable the options. +# +BOOTMAGIC_ENABLE ?= yes # Virtual DIP switch configuration(+1000) +CONSOLE_ENABLE ?= no # Console for debug(+400) +COMMAND_ENABLE ?= no # Commands for debug and configuration +SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend +NKRO_ENABLE ?= yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +BACKLIGHT_ENABLE ?= no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE ?= no + +FORCE_NKRO = yes +EXTRAKEY_ENABLE = no +MOUSEKEY_ENABLE = no # Mouse keys(+4700) +STENO_ENABLE = yes # Additional protocols for Stenography(+1700), requires VIRTSER \ No newline at end of file diff --git a/keyboards/the_uni/the_uni.c b/keyboards/the_uni/the_uni.c new file mode 100644 index 000000000000..b99b06830c63 --- /dev/null +++ b/keyboards/the_uni/the_uni.c @@ -0,0 +1,18 @@ +/* +Copyright 2021 Peter C. Park + +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 "the_uni.h" diff --git a/keyboards/the_uni/the_uni.h b/keyboards/the_uni/the_uni.h new file mode 100644 index 000000000000..002af14cfa94 --- /dev/null +++ b/keyboards/the_uni/the_uni.h @@ -0,0 +1,32 @@ +/* +Copyright 2021 Peter C. Park + +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 +#define THE_UNI_H + +#include "quantum.h" + +#define KEYMAP( \ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, \ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, \ + K202, K203, K204, K205, K206, K207 \ +) { \ + { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010 }, \ + { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110 }, \ + { KC_NO, KC_NO, K202, K203, K204, K205, K206, K207, KC_NO, KC_NO, KC_NO } \ +} + From 309c89d75dd96a39d7a85e493cc750d68f5d209e Mon Sep 17 00:00:00 2001 From: Peter Park Date: Wed, 21 Apr 2021 09:19:48 -0700 Subject: [PATCH 24/37] Apply suggestions from code review Co-authored-by: Drashna Jaelre --- keyboards/the_uni/config.h | 13 ++------ keyboards/the_uni/readme.md | 26 +++++++--------- keyboards/the_uni/rules.mk | 59 +++++++------------------------------ keyboards/the_uni/the_uni.h | 2 -- 4 files changed, 23 insertions(+), 77 deletions(-) diff --git a/keyboards/the_uni/config.h b/keyboards/the_uni/config.h index db4151e3fd2e..ff965d7744e3 100644 --- a/keyboards/the_uni/config.h +++ b/keyboards/the_uni/config.h @@ -20,12 +20,11 @@ along with this program. If not, see . #include "config_common.h" /* USB Device descriptor parameter */ -#define VENDOR_ID 0x2353 +#define VENDOR_ID 0x9000 #define PRODUCT_ID 0x0001 #define DEVICE_VER 0x0001 #define MANUFACTURER stenokeyboards #define PRODUCT The Uni -#define DESCRIPTION Used in conjunction with plover stenography /* key matrix size */ #define MATRIX_ROWS 3 @@ -40,7 +39,7 @@ along with this program. If not, see . #define DIODE_DIRECTION COL2ROW /* Set 0 if debouncing isn't needed */ -#define DEBOUNCING_DELAY 5 +#define DEBOUNCE 5 /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ #define LOCKING_SUPPORT_ENABLE @@ -48,14 +47,6 @@ along with this program. If not, see . /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* key combination for command */ -#define IS_COMMAND() ( \ - keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ -) - -/* prevent stuck modifiers */ -#define PREVENT_STUCK_MODIFIERS /*force the nkro if it does not work*/ #define FORCE_NKRO - diff --git a/keyboards/the_uni/readme.md b/keyboards/the_uni/readme.md index 55ab868c39e4..bc9cb28d9f8d 100644 --- a/keyboards/the_uni/readme.md +++ b/keyboards/the_uni/readme.md @@ -6,19 +6,13 @@ A compact unibody split ortholinear keyboard made specifically for stenography. -- Keyboard Maintainer: [Peter](https://github.com/petercpark) -- Link to Keyboard Files (pro_micro version): [https://github.com/petercpark/The_Uni](https://github.com/petercpark/The_Uni) -- Hardware Supported: - - - The Uni v1 and v2 (pro_micro) - - The Uni v3 (usb_c) - -- Hardware Availability: [https://www.stenokeyboards.com](https://www.stenokeyboards.com) - -Make examples for this keyboard (after setting up your build environment): - - make the_uni/pro_micro:default - - make the_uni/usb_c: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). +- Keyboard Maintainer: [Peter C. Park](https://github.com/petercpark) +- Link to Keyboard Files: [The_Uni](https://github.com/petercpark/The_Uni) +- Hardware Supported: The Uni v1 and v2 (pro micro or equivalent) +- Hardware Availability: [website](https://www.stenokeyboards.com) + ​ + Make example for this keyboard (after setting up your build environment): + ​To enter the bootloader, short the rst and gnd pins with a conductive material such as a tweezer or a wire. Uni v2 will have reset pads next to the pro micro so you can short these pads to reset the pro micro. + make the_uni: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/the_uni/rules.mk b/keyboards/the_uni/rules.mk index 91d981f7e4be..1422818bbb7d 100644 --- a/keyboards/the_uni/rules.mk +++ b/keyboards/the_uni/rules.mk @@ -1,58 +1,21 @@ # MCU name MCU = atmega32u4 -# Processor frequency. -# This will define a symbol, F_CPU, in all source code files equal to the -# processor frequency in Hz. You can then use this symbol in your source code to -# calculate timings. Do NOT tack on a 'UL' at the end, this will be done -# automatically to create a 32-bit value in your source code. -# -# This will be an integer division of F_USB below, as it is sourced by -# F_USB after it has run through any CPU prescalers. Note that this value -# does not *change* the processor frequency - it should merely be updated to -# reflect the processor speed set externally so that the code can use accurate -# software delays. -F_CPU = 16000000 - -# -# LUFA specific -# -# Target architecture (see library "Board Types" documentation). -ARCH = AVR8 - -# Input clock frequency. -# This will define a symbol, F_USB, in all source code files equal to the -# input clock frequency (before any prescaling is performed) in Hz. This value may -# differ from F_CPU if prescaling is used on the latter, and is required as the -# raw input clock is fed directly to the PLL sections of the AVR for high speed -# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL' -# at the end, this will be done automatically to create a 32-bit value in your -# source code. -# -# If no clock division is performed on the input clock inside the AVR (via the -# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU. -F_USB = $(F_CPU) - -# Interrupt driven control endpoint task(+60) -OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT - - -# Boot Section Size in *bytes* -OPT_DEFS += -DBOOTLOADER_SIZE=4096 +# Bootloader +BOOTLOADER = atmel-dfu # Build Options # comment out to disable the options. # -BOOTMAGIC_ENABLE ?= yes # Virtual DIP switch configuration(+1000) -CONSOLE_ENABLE ?= no # Console for debug(+400) -COMMAND_ENABLE ?= no # Commands for debug and configuration -SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend -NKRO_ENABLE ?= yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -BACKLIGHT_ENABLE ?= no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE ?= no - +BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend +NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no FORCE_NKRO = yes EXTRAKEY_ENABLE = no -MOUSEKEY_ENABLE = no # Mouse keys(+4700) -STENO_ENABLE = yes # Additional protocols for Stenography(+1700), requires VIRTSER \ No newline at end of file +MOUSEKEY_ENABLE = no # Mouse keys +STENO_ENABLE = yes diff --git a/keyboards/the_uni/the_uni.h b/keyboards/the_uni/the_uni.h index 002af14cfa94..2508cb09fc0c 100644 --- a/keyboards/the_uni/the_uni.h +++ b/keyboards/the_uni/the_uni.h @@ -16,7 +16,6 @@ along with this program. If not, see . */ #pragma once -#define THE_UNI_H #include "quantum.h" @@ -29,4 +28,3 @@ along with this program. If not, see . { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110 }, \ { KC_NO, KC_NO, K202, K203, K204, K205, K206, K207, KC_NO, KC_NO, KC_NO } \ } - From d07cc6529dd462734382a7f052ce52964e6f29e7 Mon Sep 17 00:00:00 2001 From: Peter Park Date: Thu, 6 May 2021 23:01:24 -0700 Subject: [PATCH 25/37] Apply suggestions from code review by ridingqwerty Co-authored-by: ridingqwerty --- keyboards/the_uni/the_uni.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/the_uni/the_uni.h b/keyboards/the_uni/the_uni.h index 2508cb09fc0c..9371c3a241d6 100644 --- a/keyboards/the_uni/the_uni.h +++ b/keyboards/the_uni/the_uni.h @@ -19,7 +19,7 @@ along with this program. If not, see . #include "quantum.h" -#define KEYMAP( \ +#define LAYOUT( \ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, \ K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, \ K202, K203, K204, K205, K206, K207 \ From 384f79399691cd54559033edb2af85f4100a8e3b Mon Sep 17 00:00:00 2001 From: Peter Park Date: Tue, 3 Aug 2021 21:30:05 -0700 Subject: [PATCH 26/37] switchable keymap added --- keyboards/the_uni/config.h | 52 ----------- keyboards/the_uni/keymaps/switchable/keymap.c | 87 +++++++++++++++++++ keyboards/the_uni/pro_micro/readme.md | 19 ++-- keyboards/the_uni/pro_micro/rules.mk | 4 +- keyboards/the_uni/readme.md | 13 +-- keyboards/the_uni/rules.mk | 21 ----- keyboards/the_uni/the_uni.c | 18 ---- keyboards/the_uni/the_uni.h | 30 ------- keyboards/the_uni/usb_c/readme.md | 30 +++---- keyboards/the_uni/usb_c/rules.mk | 2 +- 10 files changed, 126 insertions(+), 150 deletions(-) delete mode 100644 keyboards/the_uni/config.h create mode 100644 keyboards/the_uni/keymaps/switchable/keymap.c delete mode 100644 keyboards/the_uni/rules.mk delete mode 100644 keyboards/the_uni/the_uni.c delete mode 100644 keyboards/the_uni/the_uni.h diff --git a/keyboards/the_uni/config.h b/keyboards/the_uni/config.h deleted file mode 100644 index ff965d7744e3..000000000000 --- a/keyboards/the_uni/config.h +++ /dev/null @@ -1,52 +0,0 @@ -/* -Copyright 2021 Peter C. Park - -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" - -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x9000 -#define PRODUCT_ID 0x0001 -#define DEVICE_VER 0x0001 -#define MANUFACTURER stenokeyboards -#define PRODUCT The Uni - -/* key matrix size */ -#define MATRIX_ROWS 3 -#define MATRIX_COLS 11 - -/* key matrix pins */ -#define MATRIX_ROW_PINS { F4, B2, B6 } -#define MATRIX_COL_PINS { F5, F6, F7, B1, B3, B5, B4, E6, D7, C6, D4 } -#define UNUSED_PINS - -/* 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 - - -/*force the nkro if it does not work*/ -#define FORCE_NKRO diff --git a/keyboards/the_uni/keymaps/switchable/keymap.c b/keyboards/the_uni/keymaps/switchable/keymap.c new file mode 100644 index 000000000000..57b6c20d67cc --- /dev/null +++ b/keyboards/the_uni/keymaps/switchable/keymap.c @@ -0,0 +1,87 @@ +/* +Copyright 2021 Peter C. Park + +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 +#include "keymap_steno.h" + +enum uni_layers { + _QWERTY = 0 + ,_GEMINI + ,_LOWER + ,_RAISE + ,_CHOOSE +}; + +enum uni_keycodes { + GEMINI = SAFE_RANGE + ,QWERTY +}; + +#define RAISE MO(_RAISE) +#define LOWER MO(_LOWER) +#define CHOOSE MO(_CHOOSE) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_QWERTY] = LAYOUT( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + RAISE, KC_C, KC_V, KC_N, KC_M, LOWER), + + [_GEMINI] = LAYOUT( + STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , + STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , + RAISE, STN_A, STN_O, STN_E, STN_U, LOWER), + + [_RAISE] = LAYOUT( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, KC_LCMD, KC_LALT, KC_SPC, KC_LCTRL, CHOOSE), + + [_LOWER] = LAYOUT( + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + CHOOSE, KC_LCTRL, KC_SPC, KC_LALT, KC_LCMD, _______), + + [_CHOOSE] = LAYOUT( + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, XXXXXXX, QWERTY, GEMINI, XXXXXXX, _______), +}; + + + bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case GEMINI: + if (!record->event.pressed) { + set_single_persistent_default_layer(_GEMINI); + } + return false; + case QWERTY: + if (!record->event.pressed) { + set_single_persistent_default_layer(_QWERTY); + } + return false; + } + return true; + } + + void matrix_init_user() { + steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT + } + diff --git a/keyboards/the_uni/pro_micro/readme.md b/keyboards/the_uni/pro_micro/readme.md index 786510f70fba..8f78a79b639d 100644 --- a/keyboards/the_uni/pro_micro/readme.md +++ b/keyboards/the_uni/pro_micro/readme.md @@ -1,13 +1,20 @@ # The Uni -- Keyboard Maintainer: [Peter](https://github.com/petercpark) +​ +![The Uni](https://raw.githubusercontent.com/petercpark/The_Uni/main/Pics/layout.png) +![The Uni Closeup](https://github.com/petercpark/The_Uni/blob/main/Pics/close-up-uni.jpg?raw=true) +​ +A compact unibody split ortholinear keyboard made specifically for stenography. +​ + +- Keyboard Maintainer: [Peter C. Park](https://github.com/petercpark) - Link to Keyboard Files: [The_Uni](https://github.com/petercpark/The_Uni) - Hardware Supported: - - The Uni v1 and v2 (pro_micro) -- Hardware Availability: [https://www.stenokeyboards.com](https://www.stenokeyboards.com) - + * The Uni v1 and v2 (pro_micro) +- Hardware Availability: [website](https://www.stenokeyboards.com) + ​ Make examples for this keyboard (after setting up your build environment): - + make the_uni/pro_micro: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/the_uni/pro_micro/rules.mk b/keyboards/the_uni/pro_micro/rules.mk index 01252dcf589e..a499171eb619 100644 --- a/keyboards/the_uni/pro_micro/rules.mk +++ b/keyboards/the_uni/pro_micro/rules.mk @@ -1,14 +1,14 @@ # MCU name MCU = atmega32u4 -# Bootloader selection +# Bootloader BOOTLOADER = atmel-dfu # Build Options # comment out to disable the options. # -BOOTMAGIC_ENABLE = lite # Enable Bootmagic Lite +BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration CONSOLE_ENABLE = no # Console for debug COMMAND_ENABLE = no # Commands for debug and configuration SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/the_uni/readme.md b/keyboards/the_uni/readme.md index bc9cb28d9f8d..bc04dbf7b722 100644 --- a/keyboards/the_uni/readme.md +++ b/keyboards/the_uni/readme.md @@ -8,11 +8,14 @@ A compact unibody split ortholinear keyboard made specifically for stenography. - Keyboard Maintainer: [Peter C. Park](https://github.com/petercpark) - Link to Keyboard Files: [The_Uni](https://github.com/petercpark/The_Uni) -- Hardware Supported: The Uni v1 and v2 (pro micro or equivalent) +- Hardware Supported: + * The Uni v1 and v2 (pro_micro) + * The Uni v3 (usb_c) - Hardware Availability: [website](https://www.stenokeyboards.com) ​ - Make example for this keyboard (after setting up your build environment): - ​To enter the bootloader, short the rst and gnd pins with a conductive material such as a tweezer or a wire. Uni v2 will have reset pads next to the pro micro so you can short these pads to reset the pro micro. - make the_uni:default +Make examples for this keyboard (after setting up your build environment): + + make the_uni/pro_micro:default + make the_uni/usb_c: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). +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/the_uni/rules.mk b/keyboards/the_uni/rules.mk deleted file mode 100644 index 1422818bbb7d..000000000000 --- a/keyboards/the_uni/rules.mk +++ /dev/null @@ -1,21 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader -BOOTLOADER = atmel-dfu - - -# Build Options -# comment out to disable the options. -# -BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration -CONSOLE_ENABLE = no # Console for debug -COMMAND_ENABLE = no # Commands for debug and configuration -SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend -NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = no -FORCE_NKRO = yes -EXTRAKEY_ENABLE = no -MOUSEKEY_ENABLE = no # Mouse keys -STENO_ENABLE = yes diff --git a/keyboards/the_uni/the_uni.c b/keyboards/the_uni/the_uni.c deleted file mode 100644 index b99b06830c63..000000000000 --- a/keyboards/the_uni/the_uni.c +++ /dev/null @@ -1,18 +0,0 @@ -/* -Copyright 2021 Peter C. Park - -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 "the_uni.h" diff --git a/keyboards/the_uni/the_uni.h b/keyboards/the_uni/the_uni.h deleted file mode 100644 index 9371c3a241d6..000000000000 --- a/keyboards/the_uni/the_uni.h +++ /dev/null @@ -1,30 +0,0 @@ -/* -Copyright 2021 Peter C. Park - -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( \ - K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, \ - K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, \ - K202, K203, K204, K205, K206, K207 \ -) { \ - { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010 }, \ - { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110 }, \ - { KC_NO, KC_NO, K202, K203, K204, K205, K206, K207, KC_NO, KC_NO, KC_NO } \ -} diff --git a/keyboards/the_uni/usb_c/readme.md b/keyboards/the_uni/usb_c/readme.md index 23895db39fb6..055bace25c7e 100644 --- a/keyboards/the_uni/usb_c/readme.md +++ b/keyboards/the_uni/usb_c/readme.md @@ -1,20 +1,20 @@ -# The Uni v3 Firmware +# The Uni -- Keyboard Maintainer: [Peter](https://github.com/petercpark) -- Link to Keyboard Files: Not Available -- Hardware Supported: - - The Uni v3 (usb_c) -- Hardware Availability: [https://www.stenokeyboards.com](https://www.stenokeyboards.com) - -## Bootloader - -Enter the bootloader by: - -* **Physical reset button**: On the Uni v3, briefly press the button on the back of the PCB. -* **Reset Pads**: Uni v1 and v2 have pins/pads you must short instead (RST to GND). +​ +![The Uni](https://raw.githubusercontent.com/petercpark/The_Uni/main/Pics/layout.png) +![The Uni Closeup](https://github.com/petercpark/The_Uni/blob/main/Pics/close-up-uni.jpg?raw=true) +​ +A compact unibody split ortholinear keyboard made specifically for stenography. +​ +- Keyboard Maintainer: [Peter C. Park](https://github.com/petercpark) +- Link to Keyboard Files: [The_Uni](https://github.com/petercpark/The_Uni) +- Hardware Supported: + * The Uni v3 (usb_c) +- Hardware Availability: [website](https://www.stenokeyboards.com) + ​ Make examples for this keyboard (after setting up your build environment): - + make the_uni/usb_c: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/the_uni/usb_c/rules.mk b/keyboards/the_uni/usb_c/rules.mk index 5cc422a11515..a499171eb619 100644 --- a/keyboards/the_uni/usb_c/rules.mk +++ b/keyboards/the_uni/usb_c/rules.mk @@ -8,7 +8,7 @@ BOOTLOADER = atmel-dfu # Build Options # comment out to disable the options. # -BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration CONSOLE_ENABLE = no # Console for debug COMMAND_ENABLE = no # Commands for debug and configuration SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend From 43fcfdaf378e8540060575d7822bf9bbdb7cf960 Mon Sep 17 00:00:00 2001 From: Peter Park Date: Thu, 12 Aug 2021 20:13:11 -0700 Subject: [PATCH 27/37] && git push fix error --- keyboards/the_uni/keymaps/default/keymap.c | 17 ++++++++++++++++- keyboards/the_uni/keymaps/qwerty/keymap.c | 18 ++++++++++++++++++ keyboards/the_uni/keymaps/switchable/keymap.c | 4 ++-- 3 files changed, 36 insertions(+), 3 deletions(-) diff --git a/keyboards/the_uni/keymaps/default/keymap.c b/keyboards/the_uni/keymaps/default/keymap.c index 4af7c2a71f48..7e09e01973f3 100644 --- a/keyboards/the_uni/keymaps/default/keymap.c +++ b/keyboards/the_uni/keymaps/default/keymap.c @@ -23,7 +23,17 @@ enum uni_layers { }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - +/* + [_QWERTY] = LAYOUT( + KC_Q, KC_W, KC_E, KC_R, LT(_CHOOSE, KC_T), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_1, KC_C, KC_V, KC_N, KC_M, KC_2), + + [_CHOOSE] = LAYOUT( + _______, _______, _______, _______, _______, PLOVER, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______), +*/ [_PLOVER] = LAYOUT( STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , @@ -31,6 +41,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; + bool process_record_user(uint16_t keycode, keyrecord_t *record) { + set_single_persistent_default_layer(_PLOVER); + return true; + } + void matrix_init_user() { steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT } diff --git a/keyboards/the_uni/keymaps/qwerty/keymap.c b/keyboards/the_uni/keymaps/qwerty/keymap.c index 999cc237f5e9..d753a55707fe 100644 --- a/keyboards/the_uni/keymaps/qwerty/keymap.c +++ b/keyboards/the_uni/keymaps/qwerty/keymap.c @@ -27,9 +27,27 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_1, KC_C, KC_V, KC_N, KC_M, KC_2), +/* + + [_CHOOSE] = LAYOUT( + _______, _______, _______, _______, _______, PLOVER, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______), + [_PLOVER] = LAYOUT( + STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , + STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , + STN_N1, STN_A, STN_O, STN_E, STN_U, STN_N2), +*/ }; + + + bool process_record_user(uint16_t keycode, keyrecord_t *record) { + set_single_persistent_default_layer(_QWERTY); + return true; + } + void matrix_init_user() { //steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT } diff --git a/keyboards/the_uni/keymaps/switchable/keymap.c b/keyboards/the_uni/keymaps/switchable/keymap.c index 57b6c20d67cc..6a8598287348 100644 --- a/keyboards/the_uni/keymaps/switchable/keymap.c +++ b/keyboards/the_uni/keymaps/switchable/keymap.c @@ -51,12 +51,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_RAISE] = LAYOUT( KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - _______, KC_LCMD, KC_LALT, KC_SPC, KC_LCTRL, CHOOSE), + _______, KC_LCMD, KC_LSFT, KC_LALT, KC_LCTRL, CHOOSE), [_LOWER] = LAYOUT( KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - CHOOSE, KC_LCTRL, KC_SPC, KC_LALT, KC_LCMD, _______), + CHOOSE, KC_LCMD, KC_LSFT, KC_LALT, KC_LCTRL, _______), [_CHOOSE] = LAYOUT( XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, From 1d6e6e4a9ea4395c6d7606f0180b9eb6bab4f9ed Mon Sep 17 00:00:00 2001 From: Peter Park Date: Wed, 22 Sep 2021 17:17:36 -0700 Subject: [PATCH 28/37] add support for the Uni v3 and update some readmes --- keyboards/the_uni/keymaps/switchable/keymap.c | 87 ------------------- keyboards/the_uni/pro_micro/readme.md | 19 ++-- keyboards/the_uni/readme.md | 19 ++-- keyboards/the_uni/usb_c/readme.md | 23 ++--- 4 files changed, 25 insertions(+), 123 deletions(-) delete mode 100644 keyboards/the_uni/keymaps/switchable/keymap.c diff --git a/keyboards/the_uni/keymaps/switchable/keymap.c b/keyboards/the_uni/keymaps/switchable/keymap.c deleted file mode 100644 index 6a8598287348..000000000000 --- a/keyboards/the_uni/keymaps/switchable/keymap.c +++ /dev/null @@ -1,87 +0,0 @@ -/* -Copyright 2021 Peter C. Park - -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 -#include "keymap_steno.h" - -enum uni_layers { - _QWERTY = 0 - ,_GEMINI - ,_LOWER - ,_RAISE - ,_CHOOSE -}; - -enum uni_keycodes { - GEMINI = SAFE_RANGE - ,QWERTY -}; - -#define RAISE MO(_RAISE) -#define LOWER MO(_LOWER) -#define CHOOSE MO(_CHOOSE) - - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - - [_QWERTY] = LAYOUT( - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, - RAISE, KC_C, KC_V, KC_N, KC_M, LOWER), - - [_GEMINI] = LAYOUT( - STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , - STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , - RAISE, STN_A, STN_O, STN_E, STN_U, LOWER), - - [_RAISE] = LAYOUT( - KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, - KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - _______, KC_LCMD, KC_LSFT, KC_LALT, KC_LCTRL, CHOOSE), - - [_LOWER] = LAYOUT( - KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, - KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - CHOOSE, KC_LCMD, KC_LSFT, KC_LALT, KC_LCTRL, _______), - - [_CHOOSE] = LAYOUT( - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - _______, XXXXXXX, QWERTY, GEMINI, XXXXXXX, _______), -}; - - - bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case GEMINI: - if (!record->event.pressed) { - set_single_persistent_default_layer(_GEMINI); - } - return false; - case QWERTY: - if (!record->event.pressed) { - set_single_persistent_default_layer(_QWERTY); - } - return false; - } - return true; - } - - void matrix_init_user() { - steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT - } - diff --git a/keyboards/the_uni/pro_micro/readme.md b/keyboards/the_uni/pro_micro/readme.md index 8f78a79b639d..786510f70fba 100644 --- a/keyboards/the_uni/pro_micro/readme.md +++ b/keyboards/the_uni/pro_micro/readme.md @@ -1,20 +1,13 @@ # The Uni -​ -![The Uni](https://raw.githubusercontent.com/petercpark/The_Uni/main/Pics/layout.png) -![The Uni Closeup](https://github.com/petercpark/The_Uni/blob/main/Pics/close-up-uni.jpg?raw=true) -​ -A compact unibody split ortholinear keyboard made specifically for stenography. -​ - -- Keyboard Maintainer: [Peter C. Park](https://github.com/petercpark) +- Keyboard Maintainer: [Peter](https://github.com/petercpark) - Link to Keyboard Files: [The_Uni](https://github.com/petercpark/The_Uni) - Hardware Supported: - * The Uni v1 and v2 (pro_micro) -- Hardware Availability: [website](https://www.stenokeyboards.com) - ​ + - The Uni v1 and v2 (pro_micro) +- Hardware Availability: [https://www.stenokeyboards.com](https://www.stenokeyboards.com) + Make examples for this keyboard (after setting up your build environment): - + make the_uni/pro_micro: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/the_uni/readme.md b/keyboards/the_uni/readme.md index bc04dbf7b722..55ab868c39e4 100644 --- a/keyboards/the_uni/readme.md +++ b/keyboards/the_uni/readme.md @@ -6,16 +6,19 @@ A compact unibody split ortholinear keyboard made specifically for stenography. -- Keyboard Maintainer: [Peter C. Park](https://github.com/petercpark) -- Link to Keyboard Files: [The_Uni](https://github.com/petercpark/The_Uni) +- Keyboard Maintainer: [Peter](https://github.com/petercpark) +- Link to Keyboard Files (pro_micro version): [https://github.com/petercpark/The_Uni](https://github.com/petercpark/The_Uni) - Hardware Supported: - * The Uni v1 and v2 (pro_micro) - * The Uni v3 (usb_c) -- Hardware Availability: [website](https://www.stenokeyboards.com) - ​ + + - The Uni v1 and v2 (pro_micro) + - The Uni v3 (usb_c) + +- Hardware Availability: [https://www.stenokeyboards.com](https://www.stenokeyboards.com) + Make examples for this keyboard (after setting up your build environment): - + make the_uni/pro_micro:default + make the_uni/usb_c: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/the_uni/usb_c/readme.md b/keyboards/the_uni/usb_c/readme.md index 055bace25c7e..b44890d81089 100644 --- a/keyboards/the_uni/usb_c/readme.md +++ b/keyboards/the_uni/usb_c/readme.md @@ -1,20 +1,13 @@ -# The Uni +# The Uni v3 Firmware -​ -![The Uni](https://raw.githubusercontent.com/petercpark/The_Uni/main/Pics/layout.png) -![The Uni Closeup](https://github.com/petercpark/The_Uni/blob/main/Pics/close-up-uni.jpg?raw=true) -​ -A compact unibody split ortholinear keyboard made specifically for stenography. -​ - -- Keyboard Maintainer: [Peter C. Park](https://github.com/petercpark) -- Link to Keyboard Files: [The_Uni](https://github.com/petercpark/The_Uni) +- Keyboard Maintainer: [Peter](https://github.com/petercpark) +- Link to Keyboard Files: Not Available - Hardware Supported: - * The Uni v3 (usb_c) -- Hardware Availability: [website](https://www.stenokeyboards.com) - ​ + - The Uni v3 (usb_c) +- Hardware Availability: [https://www.stenokeyboards.com](https://www.stenokeyboards.com) + Make examples for this keyboard (after setting up your build environment): - + make the_uni/usb_c: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). From 5a0e3817886be6f1b3f34558d03126596e35915a Mon Sep 17 00:00:00 2001 From: Peter Park Date: Thu, 23 Sep 2021 14:48:58 -0700 Subject: [PATCH 29/37] make changes based on pr suggestions --- keyboards/the_uni/keymaps/default/keymap.c | 13 +------------ keyboards/the_uni/keymaps/qwerty/keymap.c | 14 -------------- 2 files changed, 1 insertion(+), 26 deletions(-) diff --git a/keyboards/the_uni/keymaps/default/keymap.c b/keyboards/the_uni/keymaps/default/keymap.c index 7e09e01973f3..f09bc4dc63f8 100644 --- a/keyboards/the_uni/keymaps/default/keymap.c +++ b/keyboards/the_uni/keymaps/default/keymap.c @@ -23,17 +23,7 @@ enum uni_layers { }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -/* - [_QWERTY] = LAYOUT( - KC_Q, KC_W, KC_E, KC_R, LT(_CHOOSE, KC_T), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, - KC_1, KC_C, KC_V, KC_N, KC_M, KC_2), - - [_CHOOSE] = LAYOUT( - _______, _______, _______, _______, _______, PLOVER, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______), -*/ + [_PLOVER] = LAYOUT( STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , @@ -42,7 +32,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; bool process_record_user(uint16_t keycode, keyrecord_t *record) { - set_single_persistent_default_layer(_PLOVER); return true; } diff --git a/keyboards/the_uni/keymaps/qwerty/keymap.c b/keyboards/the_uni/keymaps/qwerty/keymap.c index d753a55707fe..74f703e5e904 100644 --- a/keyboards/the_uni/keymaps/qwerty/keymap.c +++ b/keyboards/the_uni/keymaps/qwerty/keymap.c @@ -27,24 +27,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_1, KC_C, KC_V, KC_N, KC_M, KC_2), -/* - - [_CHOOSE] = LAYOUT( - _______, _______, _______, _______, _______, PLOVER, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______), - [_PLOVER] = LAYOUT( - STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , - STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , - STN_N1, STN_A, STN_O, STN_E, STN_U, STN_N2), -*/ }; - - bool process_record_user(uint16_t keycode, keyrecord_t *record) { - set_single_persistent_default_layer(_QWERTY); return true; } From 9a56f473cf52dd1cfb3407b2451a3215fceba4d6 Mon Sep 17 00:00:00 2001 From: Peter Park Date: Fri, 24 Sep 2021 14:19:35 -0700 Subject: [PATCH 30/37] Update keymap.c --- keyboards/the_uni/keymaps/default/keymap.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/keyboards/the_uni/keymaps/default/keymap.c b/keyboards/the_uni/keymaps/default/keymap.c index f09bc4dc63f8..4af7c2a71f48 100644 --- a/keyboards/the_uni/keymaps/default/keymap.c +++ b/keyboards/the_uni/keymaps/default/keymap.c @@ -31,10 +31,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; - bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; - } - void matrix_init_user() { steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT } From f8863f80167f8b9bb83f557c3dcfca42553ff2e8 Mon Sep 17 00:00:00 2001 From: Peter Park Date: Fri, 24 Sep 2021 14:20:01 -0700 Subject: [PATCH 31/37] Update keymap.c --- keyboards/the_uni/keymaps/qwerty/keymap.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/keyboards/the_uni/keymaps/qwerty/keymap.c b/keyboards/the_uni/keymaps/qwerty/keymap.c index 74f703e5e904..999cc237f5e9 100644 --- a/keyboards/the_uni/keymaps/qwerty/keymap.c +++ b/keyboards/the_uni/keymaps/qwerty/keymap.c @@ -30,10 +30,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; - bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; - } - void matrix_init_user() { //steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT } From cd77aa64e1979b0de945739236e2e24173ebcf99 Mon Sep 17 00:00:00 2001 From: Peter Park Date: Fri, 24 Sep 2021 14:26:26 -0700 Subject: [PATCH 32/37] Update readme.md --- keyboards/the_uni/usb_c/readme.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/keyboards/the_uni/usb_c/readme.md b/keyboards/the_uni/usb_c/readme.md index b44890d81089..23895db39fb6 100644 --- a/keyboards/the_uni/usb_c/readme.md +++ b/keyboards/the_uni/usb_c/readme.md @@ -6,6 +6,13 @@ - The Uni v3 (usb_c) - Hardware Availability: [https://www.stenokeyboards.com](https://www.stenokeyboards.com) +## Bootloader + +Enter the bootloader by: + +* **Physical reset button**: On the Uni v3, briefly press the button on the back of the PCB. +* **Reset Pads**: Uni v1 and v2 have pins/pads you must short instead (RST to GND). + Make examples for this keyboard (after setting up your build environment): make the_uni/usb_c:default From 90295c656d9eab42e1ad465e12fae04b3237ee55 Mon Sep 17 00:00:00 2001 From: Peter Park Date: Fri, 24 Sep 2021 14:27:11 -0700 Subject: [PATCH 33/37] Update keyboards/the_uni/usb_c/rules.mk Co-authored-by: Drashna Jaelre --- keyboards/the_uni/usb_c/rules.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/the_uni/usb_c/rules.mk b/keyboards/the_uni/usb_c/rules.mk index a499171eb619..5cc422a11515 100644 --- a/keyboards/the_uni/usb_c/rules.mk +++ b/keyboards/the_uni/usb_c/rules.mk @@ -8,7 +8,7 @@ BOOTLOADER = atmel-dfu # Build Options # comment out to disable the options. # -BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite CONSOLE_ENABLE = no # Console for debug COMMAND_ENABLE = no # Commands for debug and configuration SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend From be13b68beb30e8eaeebc549dfa1fe002081f87a7 Mon Sep 17 00:00:00 2001 From: Peter Park Date: Sat, 25 Sep 2021 16:53:38 -0700 Subject: [PATCH 34/37] update readmes for instructions to enter bootloader --- keyboards/the_uni/pro_micro/readme.md | 7 +++++++ keyboards/the_uni/readme.md | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/keyboards/the_uni/pro_micro/readme.md b/keyboards/the_uni/pro_micro/readme.md index 786510f70fba..d6b623156162 100644 --- a/keyboards/the_uni/pro_micro/readme.md +++ b/keyboards/the_uni/pro_micro/readme.md @@ -6,6 +6,13 @@ - The Uni v1 and v2 (pro_micro) - Hardware Availability: [https://www.stenokeyboards.com](https://www.stenokeyboards.com) +# Bootloader + +Enter the bootloader by: + +* **Physical reset button**: On the Uni v3, briefly press the button on the back of the PCB. +* **Reset Pads**: Uni v1 and v2 have pins/pads you must short instead (RST to GND). + Make examples for this keyboard (after setting up your build environment): make the_uni/pro_micro:default diff --git a/keyboards/the_uni/readme.md b/keyboards/the_uni/readme.md index 55ab868c39e4..cd1c99e43575 100644 --- a/keyboards/the_uni/readme.md +++ b/keyboards/the_uni/readme.md @@ -15,6 +15,13 @@ A compact unibody split ortholinear keyboard made specifically for stenography. - Hardware Availability: [https://www.stenokeyboards.com](https://www.stenokeyboards.com) +# Bootloader + +Enter the bootloader by: + +* **Physical reset button**: On the Uni v3, briefly press the button on the back of the PCB. +* **Reset Pads**: Uni v1 and v2 have pins/pads you must short instead (RST to GND). + Make examples for this keyboard (after setting up your build environment): make the_uni/pro_micro:default From cda1fada5c75acd56921ce99a13bf1f5cb5f13b0 Mon Sep 17 00:00:00 2001 From: Drashna Jael're Date: Sun, 10 Oct 2021 22:06:09 -0700 Subject: [PATCH 35/37] Additional fixes --- keyboards/the_uni/keymaps/default/keymap.c | 12 ++++++------ keyboards/the_uni/keymaps/qwerty/keymap.c | 15 +++++---------- keyboards/the_uni/pro_micro/rules.mk | 19 +++++++++---------- keyboards/the_uni/usb_c/rules.mk | 15 +++++++-------- 4 files changed, 27 insertions(+), 34 deletions(-) diff --git a/keyboards/the_uni/keymaps/default/keymap.c b/keyboards/the_uni/keymaps/default/keymap.c index 4af7c2a71f48..492c7a3c9422 100644 --- a/keyboards/the_uni/keymaps/default/keymap.c +++ b/keyboards/the_uni/keymaps/default/keymap.c @@ -19,18 +19,18 @@ along with this program. If not, see . #include "keymap_steno.h" enum uni_layers { - _PLOVER, + _PLOVER, }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_PLOVER] = LAYOUT( - STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , - STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , - STN_N1, STN_A, STN_O, STN_E, STN_U, STN_N2), + [_PLOVER] = LAYOUT( + STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR , + STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR , + STN_N1, STN_A, STN_O, STN_E, STN_U, STN_N2), }; void matrix_init_user() { - steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT + steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT } diff --git a/keyboards/the_uni/keymaps/qwerty/keymap.c b/keyboards/the_uni/keymaps/qwerty/keymap.c index 999cc237f5e9..b2f03a361353 100644 --- a/keyboards/the_uni/keymaps/qwerty/keymap.c +++ b/keyboards/the_uni/keymaps/qwerty/keymap.c @@ -16,20 +16,15 @@ along with this program. If not, see . */ #include QMK_KEYBOARD_H -//#include "keymap_steno.h" enum uni_layers { - _QWERTY, + _QWERTY, }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_QWERTY] = LAYOUT( - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, - KC_1, KC_C, KC_V, KC_N, KC_M, KC_2), + [_QWERTY] = LAYOUT( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_1, KC_C, KC_V, KC_N, KC_M, KC_2), }; - - void matrix_init_user() { - //steno_set_mode(STENO_MODE_GEMINI); // or STENO_MODE_BOLT - } diff --git a/keyboards/the_uni/pro_micro/rules.mk b/keyboards/the_uni/pro_micro/rules.mk index a499171eb619..4d07fe8428a5 100644 --- a/keyboards/the_uni/pro_micro/rules.mk +++ b/keyboards/the_uni/pro_micro/rules.mk @@ -2,20 +2,19 @@ MCU = atmega32u4 # Bootloader -BOOTLOADER = atmel-dfu - +BOOTLOADER = caterina # Build Options # comment out to disable the options. # -BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration -CONSOLE_ENABLE = no # Console for debug -COMMAND_ENABLE = no # Commands for debug and configuration -SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend -NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = no -FORCE_NKRO = yes +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite EXTRAKEY_ENABLE = no MOUSEKEY_ENABLE = no # Mouse keys +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend +NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no + STENO_ENABLE = yes diff --git a/keyboards/the_uni/usb_c/rules.mk b/keyboards/the_uni/usb_c/rules.mk index 5cc422a11515..dbb99ff74d1a 100644 --- a/keyboards/the_uni/usb_c/rules.mk +++ b/keyboards/the_uni/usb_c/rules.mk @@ -4,18 +4,17 @@ MCU = atmega32u4 # Bootloader BOOTLOADER = atmel-dfu - # Build Options # comment out to disable the options. # BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite -CONSOLE_ENABLE = no # Console for debug -COMMAND_ENABLE = no # Commands for debug and configuration -SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend -NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = no -FORCE_NKRO = yes EXTRAKEY_ENABLE = no MOUSEKEY_ENABLE = no # Mouse keys +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend +NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no + STENO_ENABLE = yes From 20d80e23f536f3f76fb4cf2d8c09389c80ef8b83 Mon Sep 17 00:00:00 2001 From: Peter Park Date: Mon, 11 Oct 2021 19:44:34 -0700 Subject: [PATCH 36/37] Apply suggestions from code review by fauxpark Co-authored-by: Ryan --- keyboards/the_uni/pro_micro/rules.mk | 12 +++++++----- keyboards/the_uni/usb_c/rules.mk | 12 +++++++----- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/keyboards/the_uni/pro_micro/rules.mk b/keyboards/the_uni/pro_micro/rules.mk index 4d07fe8428a5..a1f0ae9a4bad 100644 --- a/keyboards/the_uni/pro_micro/rules.mk +++ b/keyboards/the_uni/pro_micro/rules.mk @@ -5,16 +5,18 @@ MCU = atmega32u4 BOOTLOADER = caterina # Build Options -# comment out to disable the options. +# change yes to no to disable # BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite -EXTRAKEY_ENABLE = no MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = no # Audio control and System control CONSOLE_ENABLE = no # Console for debug COMMAND_ENABLE = no # Commands for debug and configuration +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend -NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +NKRO_ENABLE = yes # USB Nkey Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = no - +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output STENO_ENABLE = yes diff --git a/keyboards/the_uni/usb_c/rules.mk b/keyboards/the_uni/usb_c/rules.mk index dbb99ff74d1a..5fcc9ffafe23 100644 --- a/keyboards/the_uni/usb_c/rules.mk +++ b/keyboards/the_uni/usb_c/rules.mk @@ -5,16 +5,18 @@ MCU = atmega32u4 BOOTLOADER = atmel-dfu # Build Options -# comment out to disable the options. +# change yes to no to disable # BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite -EXTRAKEY_ENABLE = no MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = no # Audio control and System control CONSOLE_ENABLE = no # Console for debug COMMAND_ENABLE = no # Commands for debug and configuration +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend -NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +NKRO_ENABLE = yes # USB Nkey Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = no - +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output STENO_ENABLE = yes From 479ef4bf5ac1bcb9222cbdc324f1dd39b4236a5e Mon Sep 17 00:00:00 2001 From: Peter Park Date: Mon, 11 Oct 2021 22:11:59 -0700 Subject: [PATCH 37/37] Apply more suggestions from code review by fauxpark Co-authored-by: Ryan --- keyboards/the_uni/pro_micro/rules.mk | 2 +- keyboards/the_uni/usb_c/rules.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/the_uni/pro_micro/rules.mk b/keyboards/the_uni/pro_micro/rules.mk index a1f0ae9a4bad..1a595e91e422 100644 --- a/keyboards/the_uni/pro_micro/rules.mk +++ b/keyboards/the_uni/pro_micro/rules.mk @@ -1,7 +1,7 @@ # MCU name MCU = atmega32u4 -# Bootloader +# Bootloader selection BOOTLOADER = caterina # Build Options diff --git a/keyboards/the_uni/usb_c/rules.mk b/keyboards/the_uni/usb_c/rules.mk index 5fcc9ffafe23..e5d2f2e0422f 100644 --- a/keyboards/the_uni/usb_c/rules.mk +++ b/keyboards/the_uni/usb_c/rules.mk @@ -1,7 +1,7 @@ # MCU name MCU = atmega32u4 -# Bootloader +# Bootloader selection BOOTLOADER = atmel-dfu # Build Options