restructure directories for new keyboard <3

This commit is contained in:
Frieder Schlesier 2023-09-02 13:04:16 +02:00
parent 527b3a08df
commit c739f81df2
13 changed files with 188 additions and 46 deletions

View File

@ -1,17 +1,25 @@
#+SETUPFILE:
#+TITLE: Keyboard Config README
#+TITLE: Keyboard Config
* Keyboard Config
Collection of configuration for my micro-controller based mechanical keyboard.
Alpha Layer based on Colemak, more specifically the [[https://colemakmods.github.io/mod-dh/keyboards.html#matrix-keyboards][mod-DH for Matrix]]
keyboard variant. This is modified for my personal environment with
i3wm + Emacs. Programming mainly takes place in VS Code.
since vim mode is great for navigation but not supported on enough
platforms, switching between nav and alpha layer is emulated on the
keyboard.
** Atreus with Kaleidoscope
[[https://shop.keyboard.io/collections/keyboardio-atreus/products/keyboardio-atreus][Keyboardio Atreus]] with Alpha Layer based on Colemak, more specifically the [[https://colemakmods.github.io/mod-dh/keyboards.html#matrix-keyboards][mod-DH for Matrix]] keyboard variant.
[[https://shop.keyboard.io/collections/keyboardio-atreus/products/keyboardio-atreus][Keyboardio Atreus]] with some hard-to-reach keys removed. Speciality:
both Ctrl keys are in the usual place and activated with the outer
edge of each hand. Tapped they are TAB and Enter, on hold they act as Ctrl keys
This is modified for my personal environment with i3wm + Spacemacs.
*** The Layout
[[./keyboard-layout-colemak-DHm.png]]
[[./atreus/keyboard-layout-colemak-DHm.png]]
- alpha and shift layers work normally
- SYMBOLS and numbers are activated with right thumb (blue)
@ -20,55 +28,21 @@ This is modified for my personal environment with i3wm + Spacemacs.
- mouse movement with WASD (QWERTY) keys when holding M
- some additional utility keys are activated on hold (german umlaute, Ctrl+C,V,X,Z)
- [[https://kaleidoscope.readthedocs.io/en/latest/quick_start.html][Kaleidoscope Quick Start]]
- blog article on customizing the Atreus for (german) developers: https://www.gettommy.com/posts/my-ergonomic-40-percent-keyboard-layout-for-german-developers/#where-to-go-from-here
- typing practise: https://www.keybr.com/
- typing speedtest with layout emulator: https://monkeytype.com/
- [[http://www.keyboard-layout-editor.com/][Keyboard Layout Editor]]
*** Build and run
**** first time setup
- ~git clone Kaleidoscope -d ${HOME}/projects/Kaleidoscope~
- ~sudo cp ${HOME}/projects/Kaleidoscope/etc/60-kaleidoscope.rules /etc/udev/rules.d/~
- ~sudo udevadm trigger~
- ~cd Kaleidoscope/plugins && git clone https://github.com/keyboardio/Kaleidoscope-Language~
**** after that just
- ~export KALEIDOSCOPE_DIR=${HOME}/projects/Kaleidoscope~
- ~cd ./colemak-dhm/ && make flash~
Instructions see [[./atreus/README.org]]
** Chocofi 36 with QMK
According to this issue [[https://github.com/pashutk/chocofi/issues/6][pashutk/chocofi#6 firmware?]] one should use ~crkbd~ config.
#+begin_src shell
cd ~/src
git clone
#+end_src
*** TODO maybe next time try to use docke
#+begin_src shell
docker pull ghcr.io/qmk/qmk_base_container:latest@sha256:fbfcad97eb05e0d92917681d86dbbf84747979ec8045624f98f4334d5aa1de2b
#+end_src
** TODO
- move numblock 0 somewhere else (e.g. left or 4)
- move numblock 0 somewhere else (e.g. left of 4)
- move PGUP/PGDOWN to from pinky to index
- move DEL, BKSPC (to NAv layer, e.g. J/K)
- find new places for TAB/Enter + Ctrl keys
- moving from Atreus to Chocofi
- # ` keys are gone!
- the =#= and =`= keys are gone!
- fully implement a sane extended layer like [[https://dreymar.colemak.org/layers-extend.html][this]]
- maybe figure out home-row-mods: https://precondition.github.io/home-row-mods#how-to-use-home-row-mods
- inspiration: https://alexschroeder.ch/wiki/Atreus
- +build+ get a real split keyboard (5x3 + 2x3 thumb)
- e.g. with PCBs from here: https://keycapsss.com/keyboard-parts/pcbs/53/crkbd-split-keyboard-pcb-corne-helidox?number=KC10022_CHOC_BK&c=6
*** Adjusted QWERTY Layer for gaming
[[./keyboard-layout-GW-gaming_draft.png]]

32
atreus/README.org Normal file
View File

@ -0,0 +1,32 @@
* Atreus
from keyboard.io flashed with Kaleidoscope firmware (by the lovely keyboardio folks)
** Build and run
- [[https://kaleidoscope.readthedocs.io/en/latest/quick_start.html][Kaleidoscope Quick Start]]
- blog article on customizing the Atreus for (german) developers:
(dead link)
https://www.gettommy.com/posts/my-ergonomic-40-percent-keyboard-layout-for-german-developers/#where-to-go-from-here
- typing practise: https://www.keybr.com/
- typing speedtest with layout emulator: https://monkeytype.com/
- [[http://www.keyboard-layout-editor.com/][Keyboard Layout Editor]]
**** first time setup
- ~git clone Kaleidoscope -d ${HOME}/projects/Kaleidoscope~
- ~sudo cp ${HOME}/projects/Kaleidoscope/etc/60-kaleidoscope.rules /etc/udev/rules.d/~
- ~sudo udevadm trigger~
- ~cd Kaleidoscope/plugins && git clone https://github.com/keyboardio/Kaleidoscope-Language~
**** after that just
- ~export KALEIDOSCOPE_DIR=${HOME}/projects/Kaleidoscope~
- ~cd ./colemak-dhm/ && make flash~
*** Adjusted QWERTY Layer for gaming
[[./keyboard-layout-GW-gaming_draft.png]]

View File

@ -213,8 +213,8 @@ void setup() {
)
//Qukey settings
Qukeys.setHoldTimeout(490);
Qukeys.setMaxIntervalForTapRepeat(100);
Qukeys.setHoldTimeout(390);
Qukeys.setMaxIntervalForTapRepeat(170);
Qukeys.setOverlapThreshold(80);
Kaleidoscope.setup();
SpaceCadet.disable();

View File

Before

Width:  |  Height:  |  Size: 87 KiB

After

Width:  |  Height:  |  Size: 87 KiB

View File

Before

Width:  |  Height:  |  Size: 143 KiB

After

Width:  |  Height:  |  Size: 143 KiB

28
chocify/README.org Normal file
View File

@ -0,0 +1,28 @@
* Chocofi 36 with QMK
** The keyboard
https://github.com/pashutk/chocofi/
I got a prebuilt one with hotswap and seapi picro presoldered and
added my choc v1 brown switches.
** The Keymap
image coming soon
** Setup
1. follow QMK initial setup (python venv with pip)
2. link this directory into =qmk_firmware/keyboards/crkbd/rev1/keymaps/choc_colemak_36=
3. compile and flash
assumes right usbc is connected
#+begin_src bash
cd ~/src/qmk_firmware/ && source env/bin/activate
qmk compile --keyboard=crkbd/rev1 --keymap=choc_colemak_36 -e CONVERT_TO=promicro_rp2040
sudo mount /dev/sdb? /mnt/
sudo cp crkbd_rev1_choc_colemak_36_promicro_rp2040.uf2 /mnt/
sudo umount /mnt
#+end_src

49
chocify/config.h Normal file
View File

@ -0,0 +1,49 @@
/*
This is the c configuration file for the keymap
Copyright 2012 Jun Wako <wakojun@gmail.com>
Copyright 2015 Jack Humbert
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
//#define USE_MATRIX_I2C
/* Select hand configuration */
//#define MASTER_LEFT
// #define MASTER_RIGHT
#define EE_HANDS
//#define QUICK_TAP_TERM 0
//#define TAPPING_TERM 100
#ifdef RGBLIGHT_ENABLE
#define RGBLIGHT_EFFECT_BREATHING
#define RGBLIGHT_EFFECT_RAINBOW_MOOD
#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
#define RGBLIGHT_EFFECT_SNAKE
#define RGBLIGHT_EFFECT_KNIGHT
#define RGBLIGHT_EFFECT_CHRISTMAS
#define RGBLIGHT_EFFECT_STATIC_GRADIENT
#define RGBLIGHT_EFFECT_RGB_TEST
#define RGBLIGHT_EFFECT_ALTERNATING
#define RGBLIGHT_EFFECT_TWINKLE
#define RGBLIGHT_LIMIT_VAL 120
#define RGBLIGHT_HUE_STEP 10
#define RGBLIGHT_SAT_STEP 17
#define RGBLIGHT_VAL_STEP 17
#endif

57
chocify/keymap.c Normal file
View File

@ -0,0 +1,57 @@
/*
Copyright 2019 @foostan
Copyright 2020 Drashna Jaelre <@drashna>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
todo
ctrl,shift, alt,
test better enter keys
https://docusaurus.qmk.fm/feature_layers/
use LT(layer, kc) - momentarily activates layer when held, and sends kc when tapped.
*/
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_split_3x6_3(
XXXXXXX, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_BSPC, XXXXXXX,
XXXXXXX, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, XXXXXXX,
XXXXXXX, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, XXXXXXX,
KC_TAB, MO(1), KC_SPC, KC_ENT, MO(2), KC_ESC
),
[1] = LAYOUT_split_3x6_3(
XXXXXXX, KC_1, KC_F7, KC_F8, KC_F9, KC_F10, KC_6, KC_HOME, KC_8, KC_END, KC_BSPC, XXXXXXX,
XXXXXXX, XXXXXXX, KC_F4, KC_F5, KC_F6, KC_F11, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_DEL, XXXXXXX,
XXXXXXX, XXXXXXX, KC_F1, KC_F2, KC_F3, KC_F12, XXXXXXX, KC_PGDN, KC_PGUP, XXXXXXX, XXXXXXX, XXXXXXX,
KC_LGUI, _______, KC_SPC, KC_ENT, MO(3), KC_RALT
),
[2] = LAYOUT_split_3x6_3(
KC_TAB, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_7, KC_8, KC_9, KC_PLUS, KC_BSPC,
KC_LCTL, KC_LT, KC_LCBR, KC_LPRN, KC_LBRC, XXXXXXX, KC_MINS, KC_4, KC_5, KC_6, KC_MINUS, KC_GRV,
KC_LSFT, KC_GT, KC_RCBR, KC_RPRN, KC_RBRC, XXXXXXX, KC_UNDS, KC_1, KC_2, KC_3, KC_PIPE, KC_TILD,
KC_LGUI, MO(3), KC_SPC, KC_ENT, _______, KC_RALT
),
[3] = LAYOUT_split_3x6_3(
QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
KC_LGUI, _______, KC_SPC, KC_ENT, _______, KC_RALT
)
};

2
chocify/rules.mk Normal file
View File

@ -0,0 +1,2 @@
MOUSEKEY_ENABLE = yes # Mouse keys