From 1399bfcbe588124d1aa00f3f42e279f0cdf07bfc Mon Sep 17 00:00:00 2001 From: Zackarias Montell Date: Fri, 5 Nov 2021 12:59:22 +0100 Subject: [PATCH 01/21] Added handwired directory and started to reverse engineer keyboard --- keyboards/planck/handwired/config.h | 46 ++++ keyboards/planck/handwired/info.json | 114 +++++++++ .../keymaps/wholteza-colemak-se/keymap.c | 241 ++++++++++++++++++ .../keymaps/wholteza-colemak-se/readme.md | 3 + keyboards/planck/handwired/readme.md | 28 ++ .../planck/handwired/reverse-engineering.md | 53 ++++ keyboards/planck/handwired/rules.mk | 43 ++++ keyboards/planck/handwired/thk.c | 18 ++ keyboards/planck/handwired/thk.h | 49 ++++ 9 files changed, 595 insertions(+) create mode 100644 keyboards/planck/handwired/config.h create mode 100644 keyboards/planck/handwired/info.json create mode 100644 keyboards/planck/handwired/keymaps/wholteza-colemak-se/keymap.c create mode 100644 keyboards/planck/handwired/keymaps/wholteza-colemak-se/readme.md create mode 100644 keyboards/planck/handwired/readme.md create mode 100644 keyboards/planck/handwired/reverse-engineering.md create mode 100644 keyboards/planck/handwired/rules.mk create mode 100644 keyboards/planck/handwired/thk.c create mode 100644 keyboards/planck/handwired/thk.h diff --git a/keyboards/planck/handwired/config.h b/keyboards/planck/handwired/config.h new file mode 100644 index 00000000000..384134e479a --- /dev/null +++ b/keyboards/planck/handwired/config.h @@ -0,0 +1,46 @@ +/* + * Copyright 2018 Jack Humbert + * Copyright 2021 Erovia + +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" +#define DEVICE_VER 0x0000 +#undef PRODUCT +#define PRODUCT Planck Handwired +#define PRODUCT_ID 0x25A7 + +// THK has a different pin-out +#undef MATRIX_ROW_PINS +#undef MATRIX_COL_PINS + +#define MATRIX_ROW_PINS { A7, A6, A5, A4 } +#define MATRIX_COL_PINS { D7, C2, C3, C4, C5, C6, C7, A3, A2, A1, A0, B0 } + +#define ENCODERS_PAD_A { B4, B2 } +#define ENCODERS_PAD_B { B3, B1 } + +#define TAPPING_TOGGLE 3 + +#define DIP_SWITCH_PINS { D0, D1, D4, D6 } + +// THK uses D5 for audio +#undef AUDIO_PIN +#define AUDIO_PIN D5 + +// VUSB D- port +#define USB_CFG_DMINUS_BIT 3 diff --git a/keyboards/planck/handwired/info.json b/keyboards/planck/handwired/info.json new file mode 100644 index 00000000000..70e1f0bd071 --- /dev/null +++ b/keyboards/planck/handwired/info.json @@ -0,0 +1,114 @@ +{ + "keyboard_name": "Planck THK", + "maintainer": "Erovia", + "url": "https://olkb.com/planck", + "layout_aliases": { + "LAYOUT_planck_grid": "LAYOUT_ortho_4x12", + "LAYOUT_planck_mit": "LAYOUT_planck_1x2uC" + }, + "layouts": { + "LAYOUT_ortho_4x12": { + "layout": [ + { "label": "k00", "matrix": [0, 0], "w": 1, "x": 0, "y": 0 }, + { "label": "k01", "matrix": [0, 1], "w": 1, "x": 1, "y": 0 }, + { "label": "k02", "matrix": [0, 2], "w": 1, "x": 2, "y": 0 }, + { "label": "k03", "matrix": [0, 3], "w": 1, "x": 3, "y": 0 }, + { "label": "k04", "matrix": [0, 4], "w": 1, "x": 4, "y": 0 }, + { "label": "k05", "matrix": [0, 5], "w": 1, "x": 5, "y": 0 }, + { "label": "k06", "matrix": [0, 6], "w": 1, "x": 6, "y": 0 }, + { "label": "k07", "matrix": [0, 7], "w": 1, "x": 7, "y": 0 }, + { "label": "k08", "matrix": [0, 8], "w": 1, "x": 8, "y": 0 }, + { "label": "k09", "matrix": [0, 9], "w": 1, "x": 9, "y": 0 }, + { "label": "k0a", "matrix": [0, 10], "w": 1, "x": 10, "y": 0 }, + { "label": "k0b", "matrix": [0, 11], "w": 1, "x": 11, "y": 0 }, + { "label": "k10", "matrix": [1, 0], "w": 1, "x": 0, "y": 1 }, + { "label": "k11", "matrix": [1, 1], "w": 1, "x": 1, "y": 1 }, + { "label": "k12", "matrix": [1, 2], "w": 1, "x": 2, "y": 1 }, + { "label": "k13", "matrix": [1, 3], "w": 1, "x": 3, "y": 1 }, + { "label": "k14", "matrix": [1, 4], "w": 1, "x": 4, "y": 1 }, + { "label": "k15", "matrix": [1, 5], "w": 1, "x": 5, "y": 1 }, + { "label": "k16", "matrix": [1, 6], "w": 1, "x": 6, "y": 1 }, + { "label": "k17", "matrix": [1, 7], "w": 1, "x": 7, "y": 1 }, + { "label": "k18", "matrix": [1, 8], "w": 1, "x": 8, "y": 1 }, + { "label": "k19", "matrix": [1, 9], "w": 1, "x": 9, "y": 1 }, + { "label": "k1a", "matrix": [1, 10], "w": 1, "x": 10, "y": 1 }, + { "label": "k1b", "matrix": [1, 11], "w": 1, "x": 11, "y": 1 }, + { "label": "k20", "matrix": [2, 0], "w": 1, "x": 0, "y": 2 }, + { "label": "k21", "matrix": [2, 1], "w": 1, "x": 1, "y": 2 }, + { "label": "k22", "matrix": [2, 2], "w": 1, "x": 2, "y": 2 }, + { "label": "k23", "matrix": [2, 3], "w": 1, "x": 3, "y": 2 }, + { "label": "k24", "matrix": [2, 4], "w": 1, "x": 4, "y": 2 }, + { "label": "k25", "matrix": [2, 5], "w": 1, "x": 5, "y": 2 }, + { "label": "k26", "matrix": [2, 6], "w": 1, "x": 6, "y": 2 }, + { "label": "k27", "matrix": [2, 7], "w": 1, "x": 7, "y": 2 }, + { "label": "k28", "matrix": [2, 8], "w": 1, "x": 8, "y": 2 }, + { "label": "k29", "matrix": [2, 9], "w": 1, "x": 9, "y": 2 }, + { "label": "k2a", "matrix": [2, 10], "w": 1, "x": 10, "y": 2 }, + { "label": "k2b", "matrix": [2, 11], "w": 1, "x": 11, "y": 2 }, + { "label": "k30", "matrix": [3, 0], "w": 1, "x": 0, "y": 3 }, + { "label": "k31", "matrix": [3, 1], "w": 1, "x": 1, "y": 3 }, + { "label": "k32", "matrix": [3, 2], "w": 1, "x": 2, "y": 3 }, + { "label": "k33", "matrix": [3, 3], "w": 1, "x": 3, "y": 3 }, + { "label": "k34", "matrix": [3, 4], "w": 1, "x": 4, "y": 3 }, + { "label": "k35", "matrix": [3, 5], "w": 1, "x": 5, "y": 3 }, + { "label": "k36", "matrix": [3, 6], "w": 1, "x": 6, "y": 3 }, + { "label": "k37", "matrix": [3, 7], "w": 1, "x": 7, "y": 3 }, + { "label": "k38", "matrix": [3, 8], "w": 1, "x": 8, "y": 3 }, + { "label": "k39", "matrix": [3, 9], "w": 1, "x": 9, "y": 3 }, + { "label": "k3a", "matrix": [3, 10], "w": 1, "x": 10, "y": 3 }, + { "label": "k3b", "matrix": [3, 11], "w": 1, "x": 11, "y": 3 } + ] + }, + "LAYOUT_planck_1x2uC": { + "layout": [ + { "label": "k00", "matrix": [0, 0], "w": 1, "x": 0, "y": 0 }, + { "label": "k01", "matrix": [0, 1], "w": 1, "x": 1, "y": 0 }, + { "label": "k02", "matrix": [0, 2], "w": 1, "x": 2, "y": 0 }, + { "label": "k03", "matrix": [0, 3], "w": 1, "x": 3, "y": 0 }, + { "label": "k04", "matrix": [0, 4], "w": 1, "x": 4, "y": 0 }, + { "label": "k05", "matrix": [0, 5], "w": 1, "x": 5, "y": 0 }, + { "label": "k06", "matrix": [0, 6], "w": 1, "x": 6, "y": 0 }, + { "label": "k07", "matrix": [0, 7], "w": 1, "x": 7, "y": 0 }, + { "label": "k08", "matrix": [0, 8], "w": 1, "x": 8, "y": 0 }, + { "label": "k09", "matrix": [0, 9], "w": 1, "x": 9, "y": 0 }, + { "label": "k0a", "matrix": [0, 10], "w": 1, "x": 10, "y": 0 }, + { "label": "k0b", "matrix": [0, 11], "w": 1, "x": 11, "y": 0 }, + { "label": "k10", "matrix": [1, 0], "w": 1, "x": 0, "y": 1 }, + { "label": "k11", "matrix": [1, 1], "w": 1, "x": 1, "y": 1 }, + { "label": "k12", "matrix": [1, 2], "w": 1, "x": 2, "y": 1 }, + { "label": "k13", "matrix": [1, 3], "w": 1, "x": 3, "y": 1 }, + { "label": "k14", "matrix": [1, 4], "w": 1, "x": 4, "y": 1 }, + { "label": "k15", "matrix": [1, 5], "w": 1, "x": 5, "y": 1 }, + { "label": "k16", "matrix": [1, 6], "w": 1, "x": 6, "y": 1 }, + { "label": "k17", "matrix": [1, 7], "w": 1, "x": 7, "y": 1 }, + { "label": "k18", "matrix": [1, 8], "w": 1, "x": 8, "y": 1 }, + { "label": "k19", "matrix": [1, 9], "w": 1, "x": 9, "y": 1 }, + { "label": "k1a", "matrix": [1, 10], "w": 1, "x": 10, "y": 1 }, + { "label": "k1b", "matrix": [1, 11], "w": 1, "x": 11, "y": 1 }, + { "label": "k20", "matrix": [2, 0], "w": 1, "x": 0, "y": 2 }, + { "label": "k21", "matrix": [2, 1], "w": 1, "x": 1, "y": 2 }, + { "label": "k22", "matrix": [2, 2], "w": 1, "x": 2, "y": 2 }, + { "label": "k23", "matrix": [2, 3], "w": 1, "x": 3, "y": 2 }, + { "label": "k24", "matrix": [2, 4], "w": 1, "x": 4, "y": 2 }, + { "label": "k25", "matrix": [2, 5], "w": 1, "x": 5, "y": 2 }, + { "label": "k26", "matrix": [2, 6], "w": 1, "x": 6, "y": 2 }, + { "label": "k27", "matrix": [2, 7], "w": 1, "x": 7, "y": 2 }, + { "label": "k28", "matrix": [2, 8], "w": 1, "x": 8, "y": 2 }, + { "label": "k29", "matrix": [2, 9], "w": 1, "x": 9, "y": 2 }, + { "label": "k2a", "matrix": [2, 10], "w": 1, "x": 10, "y": 2 }, + { "label": "k2b", "matrix": [2, 11], "w": 1, "x": 11, "y": 2 }, + { "label": "k30", "matrix": [3, 0], "w": 1, "x": 0, "y": 3 }, + { "label": "k31", "matrix": [3, 1], "w": 1, "x": 1, "y": 3 }, + { "label": "k32", "matrix": [3, 2], "w": 1, "x": 2, "y": 3 }, + { "label": "k33", "matrix": [3, 3], "w": 1, "x": 3, "y": 3 }, + { "label": "k34", "matrix": [3, 4], "w": 1, "x": 4, "y": 3 }, + { "label": "k35", "matrix": [3, 6], "w": 2, "x": 5, "y": 3 }, + { "label": "k37", "matrix": [3, 7], "w": 1, "x": 7, "y": 3 }, + { "label": "k38", "matrix": [3, 8], "w": 1, "x": 8, "y": 3 }, + { "label": "k39", "matrix": [3, 9], "w": 1, "x": 9, "y": 3 }, + { "label": "k3a", "matrix": [3, 10], "w": 1, "x": 10, "y": 3 }, + { "label": "k3b", "matrix": [3, 11], "w": 1, "x": 11, "y": 3 } + ] + } + } +} diff --git a/keyboards/planck/handwired/keymaps/wholteza-colemak-se/keymap.c b/keyboards/planck/handwired/keymaps/wholteza-colemak-se/keymap.c new file mode 100644 index 00000000000..ae2420250e4 --- /dev/null +++ b/keyboards/planck/handwired/keymaps/wholteza-colemak-se/keymap.c @@ -0,0 +1,241 @@ +/* Copyright 2015-2017 Jack Humbert + * Copyright 2021 Erovia + * + * 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 + +enum planck_layers { + _QWERTY, + _COLEMAK, + _DVORAK, + _LOWER, + _RAISE, + _ADJUST +}; + +enum planck_keycodes { + QWERTY = SAFE_RANGE, + COLEMAK, + DVORAK, + THK, +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Esc | A | S | D | F | G | H | J | K | L | ; | " | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | THK | Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_QWERTY] = LAYOUT_planck_grid( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , + THK, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT +), + +/* Colemak + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Esc | A | R | S | T | D | H | N | E | I | O | " | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | K | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | THK | Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_COLEMAK] = LAYOUT_planck_grid( + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC, + KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , + THK, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT +), + +/* Dvorak + * ,-----------------------------------------------------------------------------------. + * | Tab | " | , | . | P | Y | F | G | C | R | L | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Esc | A | O | E | U | I | D | H | T | N | S | / | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Shift| ; | Q | J | K | X | B | M | W | V | Z |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | THK | Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_DVORAK] = LAYOUT_planck_grid( + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC, + KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH, + KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_ENT , + THK, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT +), + +/* Lower + * ,-----------------------------------------------------------------------------------. + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_LOWER] = LAYOUT_planck_grid( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY +), + +/* Raise + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |Pg Up |Pg Dn | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_RAISE] = LAYOUT_planck_grid( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY +), + +/* Adjust (Lower + Raise) + * ,-----------------------------------------------------------------------------------. + * | | Reset|Debug | | | | | | | | | Del | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | |AGnorm|AGswap|Qwerty|Colemk|Dvorak| | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | |TermOn|TermOf| | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[_ADJUST] = LAYOUT_planck_grid( + _______, RESET, DEBUG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL , + _______, _______, _______, _______, _______, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, + _______, _______, _______, _______, _______, _______, _______, TERM_ON, TERM_OFF, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +) + +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case QWERTY: + if (record->event.pressed) { + set_single_persistent_default_layer(_QWERTY); + } + return false; + case COLEMAK: + if (record->event.pressed) { + set_single_persistent_default_layer(_COLEMAK); + } + return false; + case DVORAK: + if (record->event.pressed) { + set_single_persistent_default_layer(_DVORAK); + } + return false; + case THK: + if (record->event.pressed) { + SEND_STRING("Pretty cool keyboard, eh?"); + } + return false; + } + return true; +} + +bool encoder_mode = false; + +bool encoder_update_user(uint8_t index, bool clockwise) { + if (index == 0) { /* First encoder */ + if (clockwise) { + #ifdef MOUSEKEY_ENABLE + tap_code(KC_MS_WH_DOWN); + #else + tap_code(KC_PGDN); + #endif + } else { + #ifdef MOUSEKEY_ENABLE + tap_code(KC_MS_WH_UP); + #else + tap_code(KC_PGUP); + #endif + } + } else if (index == 1) { /* Second encoder */ + if (clockwise) { + if (encoder_mode) { + tap_code(KC_RGHT); + } else { + tap_code_delay(KC_VOLU, 60); + } + } else { + if (encoder_mode) { + tap_code(KC_LEFT); + } else { + tap_code_delay(KC_VOLD, 60); + } + } + } + return true; +} + +bool dip_switch_update_user(uint8_t index, bool active) { + switch (index) { + case 0: { + if (active) { + layer_on(_ADJUST); + } else { + layer_off(_ADJUST); + } + } + break; + case 1: + if (active) { + encoder_mode = true; + } else { + encoder_mode = false; + } + break; + case 2: + SEND_STRING("QMK is the best thing ever"); + break; + case 3: + SEND_STRING("This is a Planck THK"); + break; + } + return true; +} diff --git a/keyboards/planck/handwired/keymaps/wholteza-colemak-se/readme.md b/keyboards/planck/handwired/keymaps/wholteza-colemak-se/readme.md new file mode 100644 index 00000000000..bae51e067fe --- /dev/null +++ b/keyboards/planck/handwired/keymaps/wholteza-colemak-se/readme.md @@ -0,0 +1,3 @@ +# Keymap specifically for the Planck T.H.K. + +Based on the `default` Planck keymap. diff --git a/keyboards/planck/handwired/readme.md b/keyboards/planck/handwired/readme.md new file mode 100644 index 00000000000..d9dde740173 --- /dev/null +++ b/keyboards/planck/handwired/readme.md @@ -0,0 +1,28 @@ +# Planck Through Hole Kit + +![THK](https://i.imgur.com/Fj8X0TDl.jpg) + +The OG 4x12, through-hole, ortho board. + +[Buildlog](https://erovia.github.io/posts/thk/) + +* Keyboard Maintainer: [Erovia](https://github.com/Erovia) +* Hardware Supported: [Planck THK](https://github.com/olkb/planck_thk) +* Hardware Availability: The hardware was released under GPLv3, see link above. + +Make example for this keyboard (after setting up your build environment): + + make planck/thk:thk + +Flashing example for this keyboard: + + make planck/thk:thk:flash + +**Reset**: With [the recommended bootloader](https://github.com/Erovia/planck_thk_usbasploader) a single press on the RESET button. + +## Audio + +The board has rudimental [audio](https://docs.qmk.fm/#/feature_audio) support. +As it can cause the USB connection to crash, likely due the mcu not being able to keep up with the USB's strict timing requirements, it's is disabled for the `thk` keymap. + +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/planck/handwired/reverse-engineering.md b/keyboards/planck/handwired/reverse-engineering.md new file mode 100644 index 00000000000..52c7b1323bc --- /dev/null +++ b/keyboards/planck/handwired/reverse-engineering.md @@ -0,0 +1,53 @@ +## TEENSY 2 PINOUT + +_Columns may be in reverse order here_ + +| **COL/ROW** | **PIN** | +| ----------- | ------- | +| **C1** | C7 | +| **C2** | D6 | +| **C3** | D7 | +| **C4** | B4 | +| **C5** | B5 | +| **C6** | B6 | +| **C7** | F7 | +| **C8** | F6 | +| **C9** | F5 | +| **C10** | F4 | +| **C11** | F1 | +| **C12** | F0 | +| **R0** | E6 | +| **R1** | B3 | +| **R2** | D1 | +| **R3** | D0 | + +## LAYERS + +### BASE - done + +| **#** | **C1** | **C2** | **C3** | **C4** | **C5** | **C6** | **C7** | **C8** | **C9** | **C10** | **C11** | **C12** | +| ------ | ------- | ------ | ------ | ------ | ----------- | ------ | ------ | ----------- | ------ | ---------- | -------- | --------- | +| **R1** | TAB | Q | W | E | R | T | Y | U | I | O | P | Å | +| **R2** | ESC | A | S | D | F | G | H | J | K | L | Ö | Ä | +| **R3** | L_SHIFT | Z | X | C | V | B | N | M | , | . | - | BACKSPACE | +| **R4** | L_CTRL | < | META | L_ALT | LAYER_LOWER | SPACE | NONE | LAYER_RAISE | ALT_GR | ARROW_DOWN | ARROW_UP | RETURN | + +### LOWER + +| **#** | **C1** | **C2** | **C3** | **C4** | **C5** | **C6** | **C7** | **C8** | **C9** | **C10** | **C11** | **C12** | +| ------ | ------------ | ------ | ------ | ------ | ----------- | ------ | ------ | ----------- | ------ | ---------- | -------- | --------- | +| **R1** | SE_PARAGRAPH | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | + | +| **R2** | ESC | A | S | D | F | G | H | J | K | L | Ö | Ä | +| **R3** | L_SHIFT | Z | X | C | V | B | N | M | , | . | - | BACKSPACE | +| **R4** | L_CTRL | < | META | L_ALT | LAYER_LOWER | SPACE | NONE | LAYER_RAISE | ALT_GR | ARROW_DOWN | ARROW_UP | RETURN | + +### RAISE + +| **#** | **C1** | **C2** | **C3** | **C4** | **C5** | **C6** | **C7** | **C8** | **C9** | **C10** | **C11** | **C12** | +| ------ | ------- | ------ | ------ | ------ | ----------- | ------ | ------ | ----------- | ------ | ---------- | -------- | --------- | +| **R1** | TAB | Q | W | E | R | T | Y | U | I | O | P | Å | +| **R2** | ESC | A | S | D | F | G | H | J | K | L | Ö | Ä | +| **R3** | L_SHIFT | Z | X | C | V | B | N | M | , | . | - | BACKSPACE | +| **R4** | L_CTRL | < | META | L_ALT | LAYER_LOWER | SPACE | NONE | LAYER_RAISE | ALT_GR | ARROW_DOWN | ARROW_UP | RETURN | + +§§§§§21111234567890+ diff --git a/keyboards/planck/handwired/rules.mk b/keyboards/planck/handwired/rules.mk new file mode 100644 index 00000000000..0095bba5a88 --- /dev/null +++ b/keyboards/planck/handwired/rules.mk @@ -0,0 +1,43 @@ +# Copyright 2021 Erovia +# +# 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 . + +# MCU name +MCU = atmega32a + +# Processor frequency +F_CPU = 16000000 + +# Bootloader selection +BOOTLOADER = usbasploader + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = lite # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend +# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +NKRO_ENABLE = no # USB Nkey Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes +DIP_SWITCH_ENABLE = yes + +LAYOUTS = ortho_4x12 planck_mit diff --git a/keyboards/planck/handwired/thk.c b/keyboards/planck/handwired/thk.c new file mode 100644 index 00000000000..e9912fcbb34 --- /dev/null +++ b/keyboards/planck/handwired/thk.c @@ -0,0 +1,18 @@ +/* Copyright 2018 Jack Humbert + * Copyright 2021 Erovia + * + * 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 "thk.h" diff --git a/keyboards/planck/handwired/thk.h b/keyboards/planck/handwired/thk.h new file mode 100644 index 00000000000..6cbbf7262c2 --- /dev/null +++ b/keyboards/planck/handwired/thk.h @@ -0,0 +1,49 @@ +/* Copyright 2018 Jack Humbert + * Copyright 2021 Erovia + * + * 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 "planck.h" + +#define LAYOUT_planck_1x2uC( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ + k30, k31, k32, k33, k34, k35, k37, k38, k39, k3a, k3b \ +) \ +{ \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b }, \ + { k30, k31, k32, k33, k34, k35, k35, k37, k38, k39, k3a, k3b } \ +} + +#define LAYOUT_ortho_4x12( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b \ +) \ +{ \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b } \ +} + +#define LAYOUT_planck_mit LAYOUT_planck_1x2uC +#define LAYOUT_planck_grid LAYOUT_ortho_4x12 From 0876f916fc2553f585893293ffda0b4091606597 Mon Sep 17 00:00:00 2001 From: Zackarias Montell Date: Fri, 5 Nov 2021 22:02:45 +0100 Subject: [PATCH 02/21] Added idea --- keyboards/planck/handwired/reverse-engineering.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/keyboards/planck/handwired/reverse-engineering.md b/keyboards/planck/handwired/reverse-engineering.md index 52c7b1323bc..477eb362d02 100644 --- a/keyboards/planck/handwired/reverse-engineering.md +++ b/keyboards/planck/handwired/reverse-engineering.md @@ -23,6 +23,9 @@ _Columns may be in reverse order here_ ## LAYERS +new layer lower = arrow keys + numbers + F1-12 +new layer raise = symbols + ### BASE - done | **#** | **C1** | **C2** | **C3** | **C4** | **C5** | **C6** | **C7** | **C8** | **C9** | **C10** | **C11** | **C12** | From ed7779bf7ace0319938a2162835d60592e647293 Mon Sep 17 00:00:00 2001 From: Zackarias Montell Date: Sat, 6 Nov 2021 10:18:01 +0100 Subject: [PATCH 03/21] Added handwired planck with my layout --- keyboards/handwired/planck/config.h | 58 +++++ keyboards/handwired/planck/kb.c | 1 + keyboards/handwired/planck/kb.h | 21 ++ .../planck/keymaps/wholteza/README.md | 1 + .../planck/keymaps/wholteza/keymap.c | 145 +++++++++++ keyboards/handwired/planck/readme.md | 81 ++++++ keyboards/handwired/planck/rules.mk | 56 ++++ keyboards/planck/handwired/config.h | 46 ---- keyboards/planck/handwired/info.json | 114 --------- .../keymaps/wholteza-colemak-se/keymap.c | 241 ------------------ .../keymaps/wholteza-colemak-se/readme.md | 3 - keyboards/planck/handwired/readme.md | 28 -- .../planck/handwired/reverse-engineering.md | 56 ---- keyboards/planck/handwired/rules.mk | 43 ---- keyboards/planck/handwired/thk.c | 18 -- keyboards/planck/handwired/thk.h | 49 ---- 16 files changed, 363 insertions(+), 598 deletions(-) create mode 100644 keyboards/handwired/planck/config.h create mode 100644 keyboards/handwired/planck/kb.c create mode 100644 keyboards/handwired/planck/kb.h create mode 100644 keyboards/handwired/planck/keymaps/wholteza/README.md create mode 100644 keyboards/handwired/planck/keymaps/wholteza/keymap.c create mode 100644 keyboards/handwired/planck/readme.md create mode 100644 keyboards/handwired/planck/rules.mk delete mode 100644 keyboards/planck/handwired/config.h delete mode 100644 keyboards/planck/handwired/info.json delete mode 100644 keyboards/planck/handwired/keymaps/wholteza-colemak-se/keymap.c delete mode 100644 keyboards/planck/handwired/keymaps/wholteza-colemak-se/readme.md delete mode 100644 keyboards/planck/handwired/readme.md delete mode 100644 keyboards/planck/handwired/reverse-engineering.md delete mode 100644 keyboards/planck/handwired/rules.mk delete mode 100644 keyboards/planck/handwired/thk.c delete mode 100644 keyboards/planck/handwired/thk.h diff --git a/keyboards/handwired/planck/config.h b/keyboards/handwired/planck/config.h new file mode 100644 index 00000000000..1e9818232dd --- /dev/null +++ b/keyboards/handwired/planck/config.h @@ -0,0 +1,58 @@ +#ifndef CONFIG_H +#define CONFIG_H + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x6060 +#define DEVICE_VER 0x0001 +#define MANUFACTURER qmkbuilder +#define PRODUCT keyboard +#define DESCRIPTION Keyboard + +/* key matrix size */ +#define MATRIX_ROWS 4 +#define MATRIX_COLS 12 + +/* key matrix pins */ +#define MATRIX_ROW_PINS { E6, B3, D1, D0 } +#define MATRIX_COL_PINS {C7, D6, D7, B4, B5, B6, F7, F6, F5, F4, F1, F0} +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* number of backlight levels */ + +#ifdef BACKLIGHT_PIN +#define BACKLIGHT_LEVELS 0 +#endif + +/* 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 + + +#ifdef RGB_DI_PIN +#define RGBLIGHT_ANIMATIONS +#define RGBLED_NUM 0 +#define RGBLIGHT_HUE_STEP 8 +#define RGBLIGHT_SAT_STEP 8 +#define RGBLIGHT_VAL_STEP 8 +#endif + +#endif diff --git a/keyboards/handwired/planck/kb.c b/keyboards/handwired/planck/kb.c new file mode 100644 index 00000000000..e5e00a32962 --- /dev/null +++ b/keyboards/handwired/planck/kb.c @@ -0,0 +1 @@ +#include "kb.h" diff --git a/keyboards/handwired/planck/kb.h b/keyboards/handwired/planck/kb.h new file mode 100644 index 00000000000..55d080fea75 --- /dev/null +++ b/keyboards/handwired/planck/kb.h @@ -0,0 +1,21 @@ +#ifndef KB_H +#define KB_H + +#include "quantum.h" + +#define LAYOUT_planck_1x2uC( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ + k30, k31, k32, k33, k34, k35, k37, k38, k39, k3a, k3b \ +) \ +{ \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b }, \ + { k30, k31, k32, k33, k34, k35, k35, k37, k38, k39, k3a, k3b } \ +} + +#define LAYOUT LAYOUT_planck_1x2uC + +#endif diff --git a/keyboards/handwired/planck/keymaps/wholteza/README.md b/keyboards/handwired/planck/keymaps/wholteza/README.md new file mode 100644 index 00000000000..cf3582cc8f2 --- /dev/null +++ b/keyboards/handwired/planck/keymaps/wholteza/README.md @@ -0,0 +1 @@ +Wholteza's handwired planck layout diff --git a/keyboards/handwired/planck/keymaps/wholteza/keymap.c b/keyboards/handwired/planck/keymaps/wholteza/keymap.c new file mode 100644 index 00000000000..bb0f435f094 --- /dev/null +++ b/keyboards/handwired/planck/keymaps/wholteza/keymap.c @@ -0,0 +1,145 @@ +#include "kb.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + KEYMAP( + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, + KC_BSPC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, + KC_LCTL, LCTL(KC_LSFT), KC_LGUI, KC_LALT, MO(1), KC_SPC, MO(2), KC_LALT, KC_LGUI, LCTL(KC_LSFT), KC_LCTL), + + KEYMAP( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_TRNS, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, LSFT(KC_NUHS), LSFT(KC_NUBS), KC_HOME, KC_END, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY), + + KEYMAP( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY), + + KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + + KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + + KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + + KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + + KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + + KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + + KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + + KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + + KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + + KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + + KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + + KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + + KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) + +}; + +void matrix_init_user(void) { +} + +void matrix_scan_user(void) { +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + return true; +} + +void led_set_user(uint8_t usb_led) { + + if (usb_led & (1 << USB_LED_NUM_LOCK)) { + + } else { + + } + + if (usb_led & (1 << USB_LED_CAPS_LOCK)) { + + } else { + + } + + if (usb_led & (1 << USB_LED_SCROLL_LOCK)) { + + } else { + + } + + if (usb_led & (1 << USB_LED_COMPOSE)) { + + } else { + + } + + if (usb_led & (1 << USB_LED_KANA)) { + + } else { + + } + +} diff --git a/keyboards/handwired/planck/readme.md b/keyboards/handwired/planck/readme.md new file mode 100644 index 00000000000..6374ee1addd --- /dev/null +++ b/keyboards/handwired/planck/readme.md @@ -0,0 +1,81 @@ +# Plank Handwired + +![plank handwired](https://i.imgur.com/khseWs7.jpeg) +![plank handwired](https://i.imgur.com/Y1XIjRK.jpeg) + +A compact 40% (12x4) ortholinear keyboard kit sold by OLKB before they developed the rev1 PCB. + +Keyboard Maintainer: [Wholteza](https://github.com/wholteza) +Hardware Supported: [Teensy 2.0](https://www.pjrc.com/store/teensy.html) + +Make example for this keyboard (after setting up your build environment): + + qmk compile -kb handwired/planck -km wholteza + +See the [newbs build environment setup](https://docs.qmk.fm/#/newbs_getting_started). + +## Teensy pinout + +Can be changed in the `config.h` + +Where `C0` and `R0` is **top left** if looking at the wiring of your keyboard (upside down). + +| **COL/ROW** | **PIN** | +| ----------- | ------- | +| **C0** | F0 | +| **C1** | F1 | +| **C2** | F4 | +| **C3** | F5 | +| **C4** | F6 | +| **C5** | F7 | +| **C6** | B6 | +| **C7** | B5 | +| **C8** | B4 | +| **C9** | D7 | +| **C10** | D6 | +| **C11** | C7 | +| **R0** | E6 | +| **R1** | B3 | +| **R2** | D1 | +| **R3** | D0 | + +## LAYERS + +new layer lower = arrow keys + numbers + F1-12 +new layer raise = symbols + +### BASE - done + +| **#** | **C0** | **C1** | **C2** | **C3** | **C4** | **C5** | **C6** | **C7** | **C8** | **C9** | **C10** | **C11** | +| ------ | ------- | ------ | ------ | ------ | ---------------- | ------ | ------ | ---------------- | ------ | ---------- | -------- | --------- | +| **R0** | TAB | Q | W | E | R | T | Y | U | I | O | P | Å | +| **R1** | ESC | A | S | D | F | G | H | J | K | L | Ö | Ä | +| **R2** | L_SHIFT | Z | X | C | V | B | N | M | , | . | - | BACKSPACE | +| **R3** | L_CTRL | < | META | L_ALT | LAYER_HOLD_LOWER | SPACE | NONE | LAYER_HOLD_RAISE | ALT_GR | ARROW_DOWN | ARROW_UP | RETURN | + +### LOWER - done + +| **#** | **C0** | **C1** | **C2** | **C3** | **C4** | **C5** | **C6** | **C7** | **C8** | **C9** | **C10** | **C11** | +| ------ | ------------ | ------------ | ---------- | ----------- | ---------------- | ---------------- | ---------- | ----------------- | ------ | -------- | ------- | ------------ | +| **R0** | SE_PARAGRAPH | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | + | +| **R1** | ESC | A | ARROW_UP | D | F | MOUSE_LEFT_CLICK | MOUSE_UP | MOUSE_RIGHT_CLICK | K | BACKTICK | UMLAUT | SINGLE_QUOTE | +| **R2** | L_SHIFT | ARROW_LEFT | ARROW_DOWN | ARROW_RIGHT | V | MOUSE_LEFT | MOUSE_DOWN | MOUSE_RIGHT | , | . | - | BACKSPACE | +| **R3** | L_CTRL | SINGLE_QUOTE | META | L_ALT | LAYER_HOLD_LOWER | SPACE | NONE | LAYER_HOLD_RAISE | ALT_GR | VOL_DOWN | VOL_UP | VOL_MUTE | + +### RAISE + +| **#** | **C0** | **C1** | **C2** | **C3** | **C4** | **C5** | **C6** | **C7** | **C8** | **C9** | **C10** | **C11** | +| ------ | ------------ | ------ | ------ | ------ | ---------------- | -------- | ------------------- | ---------------- | ------ | ------ | ----------------- | ------------ | +| **R0** | SE_PARAGRAPH | F1 | F2 | F3 | F4 | PRNT_SCR | LAYER_TOGGLE_ARROWS | PAUSE_BREAK | NUM_7 | NUM_8 | NUM_9 | NUM_LOCK | +| **R1** | ESC | F5 | F6 | F7 | F8 | INSERT | HOME | PAGE_UP | NUM_4 | NUM_5 | NUM_6 | SINGLE_QUOTE | +| **R2** | L_SHIFT | F9 | F10 | F11 | F12 | DELETE | END | PAGE_DOWN | NUM_1 | NUM_2 | NUM_3 | BACKSPACE | +| **R3** | L_CTRL | < | META | L_ALT | LAYER_HOLD_LOWER | SPACE | NONE | LAYER_HOLD_RAISE | NUM_0 | . | MEDIA_TOGGLE_PLAY | RETURN | + +### ARROWS - done + +| **#** | **C0** | **C1** | **C2** | **C3** | **C4** | **C5** | **C6** | **C7** | **C8** | **C9** | **C10** | **C11** | +| ------ | ------- | ------ | ------ | ------ | ---------------- | ------ | ------ | ---------------- | ---------- | ---------- | ----------- | --------- | +| **R0** | TAB | Q | W | E | R | T | Y | U | I | O | P | Å | +| **R1** | ESC | A | S | D | F | G | H | J | K | ARROW_UP | Ö | Ä | +| **R2** | L_SHIFT | Z | X | C | V | B | N | M | ARROW_LEFT | ARROW_DOWN | ARROW_RIGHT | BACKSPACE | +| **R3** | L_CTRL | < | META | L_ALT | LAYER_HOLD_LOWER | SPACE | NONE | LAYER_HOLD_RAISE | ALT_GR | ARROW_DOWN | ARROW_UP | RETURN | diff --git a/keyboards/handwired/planck/rules.mk b/keyboards/handwired/planck/rules.mk new file mode 100644 index 00000000000..1f8e943be7f --- /dev/null +++ b/keyboards/handwired/planck/rules.mk @@ -0,0 +1,56 @@ +# 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) +MOUSEKEY_ENABLE ?= yes # Mouse keys(+4700) +EXTRAKEY_ENABLE ?= yes # Audio control and System control(+450) +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 +AUDIO_ENABLE ?= no +RGBLIGHT_ENABLE ?= no \ No newline at end of file diff --git a/keyboards/planck/handwired/config.h b/keyboards/planck/handwired/config.h deleted file mode 100644 index 384134e479a..00000000000 --- a/keyboards/planck/handwired/config.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright 2018 Jack Humbert - * Copyright 2021 Erovia - -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" -#define DEVICE_VER 0x0000 -#undef PRODUCT -#define PRODUCT Planck Handwired -#define PRODUCT_ID 0x25A7 - -// THK has a different pin-out -#undef MATRIX_ROW_PINS -#undef MATRIX_COL_PINS - -#define MATRIX_ROW_PINS { A7, A6, A5, A4 } -#define MATRIX_COL_PINS { D7, C2, C3, C4, C5, C6, C7, A3, A2, A1, A0, B0 } - -#define ENCODERS_PAD_A { B4, B2 } -#define ENCODERS_PAD_B { B3, B1 } - -#define TAPPING_TOGGLE 3 - -#define DIP_SWITCH_PINS { D0, D1, D4, D6 } - -// THK uses D5 for audio -#undef AUDIO_PIN -#define AUDIO_PIN D5 - -// VUSB D- port -#define USB_CFG_DMINUS_BIT 3 diff --git a/keyboards/planck/handwired/info.json b/keyboards/planck/handwired/info.json deleted file mode 100644 index 70e1f0bd071..00000000000 --- a/keyboards/planck/handwired/info.json +++ /dev/null @@ -1,114 +0,0 @@ -{ - "keyboard_name": "Planck THK", - "maintainer": "Erovia", - "url": "https://olkb.com/planck", - "layout_aliases": { - "LAYOUT_planck_grid": "LAYOUT_ortho_4x12", - "LAYOUT_planck_mit": "LAYOUT_planck_1x2uC" - }, - "layouts": { - "LAYOUT_ortho_4x12": { - "layout": [ - { "label": "k00", "matrix": [0, 0], "w": 1, "x": 0, "y": 0 }, - { "label": "k01", "matrix": [0, 1], "w": 1, "x": 1, "y": 0 }, - { "label": "k02", "matrix": [0, 2], "w": 1, "x": 2, "y": 0 }, - { "label": "k03", "matrix": [0, 3], "w": 1, "x": 3, "y": 0 }, - { "label": "k04", "matrix": [0, 4], "w": 1, "x": 4, "y": 0 }, - { "label": "k05", "matrix": [0, 5], "w": 1, "x": 5, "y": 0 }, - { "label": "k06", "matrix": [0, 6], "w": 1, "x": 6, "y": 0 }, - { "label": "k07", "matrix": [0, 7], "w": 1, "x": 7, "y": 0 }, - { "label": "k08", "matrix": [0, 8], "w": 1, "x": 8, "y": 0 }, - { "label": "k09", "matrix": [0, 9], "w": 1, "x": 9, "y": 0 }, - { "label": "k0a", "matrix": [0, 10], "w": 1, "x": 10, "y": 0 }, - { "label": "k0b", "matrix": [0, 11], "w": 1, "x": 11, "y": 0 }, - { "label": "k10", "matrix": [1, 0], "w": 1, "x": 0, "y": 1 }, - { "label": "k11", "matrix": [1, 1], "w": 1, "x": 1, "y": 1 }, - { "label": "k12", "matrix": [1, 2], "w": 1, "x": 2, "y": 1 }, - { "label": "k13", "matrix": [1, 3], "w": 1, "x": 3, "y": 1 }, - { "label": "k14", "matrix": [1, 4], "w": 1, "x": 4, "y": 1 }, - { "label": "k15", "matrix": [1, 5], "w": 1, "x": 5, "y": 1 }, - { "label": "k16", "matrix": [1, 6], "w": 1, "x": 6, "y": 1 }, - { "label": "k17", "matrix": [1, 7], "w": 1, "x": 7, "y": 1 }, - { "label": "k18", "matrix": [1, 8], "w": 1, "x": 8, "y": 1 }, - { "label": "k19", "matrix": [1, 9], "w": 1, "x": 9, "y": 1 }, - { "label": "k1a", "matrix": [1, 10], "w": 1, "x": 10, "y": 1 }, - { "label": "k1b", "matrix": [1, 11], "w": 1, "x": 11, "y": 1 }, - { "label": "k20", "matrix": [2, 0], "w": 1, "x": 0, "y": 2 }, - { "label": "k21", "matrix": [2, 1], "w": 1, "x": 1, "y": 2 }, - { "label": "k22", "matrix": [2, 2], "w": 1, "x": 2, "y": 2 }, - { "label": "k23", "matrix": [2, 3], "w": 1, "x": 3, "y": 2 }, - { "label": "k24", "matrix": [2, 4], "w": 1, "x": 4, "y": 2 }, - { "label": "k25", "matrix": [2, 5], "w": 1, "x": 5, "y": 2 }, - { "label": "k26", "matrix": [2, 6], "w": 1, "x": 6, "y": 2 }, - { "label": "k27", "matrix": [2, 7], "w": 1, "x": 7, "y": 2 }, - { "label": "k28", "matrix": [2, 8], "w": 1, "x": 8, "y": 2 }, - { "label": "k29", "matrix": [2, 9], "w": 1, "x": 9, "y": 2 }, - { "label": "k2a", "matrix": [2, 10], "w": 1, "x": 10, "y": 2 }, - { "label": "k2b", "matrix": [2, 11], "w": 1, "x": 11, "y": 2 }, - { "label": "k30", "matrix": [3, 0], "w": 1, "x": 0, "y": 3 }, - { "label": "k31", "matrix": [3, 1], "w": 1, "x": 1, "y": 3 }, - { "label": "k32", "matrix": [3, 2], "w": 1, "x": 2, "y": 3 }, - { "label": "k33", "matrix": [3, 3], "w": 1, "x": 3, "y": 3 }, - { "label": "k34", "matrix": [3, 4], "w": 1, "x": 4, "y": 3 }, - { "label": "k35", "matrix": [3, 5], "w": 1, "x": 5, "y": 3 }, - { "label": "k36", "matrix": [3, 6], "w": 1, "x": 6, "y": 3 }, - { "label": "k37", "matrix": [3, 7], "w": 1, "x": 7, "y": 3 }, - { "label": "k38", "matrix": [3, 8], "w": 1, "x": 8, "y": 3 }, - { "label": "k39", "matrix": [3, 9], "w": 1, "x": 9, "y": 3 }, - { "label": "k3a", "matrix": [3, 10], "w": 1, "x": 10, "y": 3 }, - { "label": "k3b", "matrix": [3, 11], "w": 1, "x": 11, "y": 3 } - ] - }, - "LAYOUT_planck_1x2uC": { - "layout": [ - { "label": "k00", "matrix": [0, 0], "w": 1, "x": 0, "y": 0 }, - { "label": "k01", "matrix": [0, 1], "w": 1, "x": 1, "y": 0 }, - { "label": "k02", "matrix": [0, 2], "w": 1, "x": 2, "y": 0 }, - { "label": "k03", "matrix": [0, 3], "w": 1, "x": 3, "y": 0 }, - { "label": "k04", "matrix": [0, 4], "w": 1, "x": 4, "y": 0 }, - { "label": "k05", "matrix": [0, 5], "w": 1, "x": 5, "y": 0 }, - { "label": "k06", "matrix": [0, 6], "w": 1, "x": 6, "y": 0 }, - { "label": "k07", "matrix": [0, 7], "w": 1, "x": 7, "y": 0 }, - { "label": "k08", "matrix": [0, 8], "w": 1, "x": 8, "y": 0 }, - { "label": "k09", "matrix": [0, 9], "w": 1, "x": 9, "y": 0 }, - { "label": "k0a", "matrix": [0, 10], "w": 1, "x": 10, "y": 0 }, - { "label": "k0b", "matrix": [0, 11], "w": 1, "x": 11, "y": 0 }, - { "label": "k10", "matrix": [1, 0], "w": 1, "x": 0, "y": 1 }, - { "label": "k11", "matrix": [1, 1], "w": 1, "x": 1, "y": 1 }, - { "label": "k12", "matrix": [1, 2], "w": 1, "x": 2, "y": 1 }, - { "label": "k13", "matrix": [1, 3], "w": 1, "x": 3, "y": 1 }, - { "label": "k14", "matrix": [1, 4], "w": 1, "x": 4, "y": 1 }, - { "label": "k15", "matrix": [1, 5], "w": 1, "x": 5, "y": 1 }, - { "label": "k16", "matrix": [1, 6], "w": 1, "x": 6, "y": 1 }, - { "label": "k17", "matrix": [1, 7], "w": 1, "x": 7, "y": 1 }, - { "label": "k18", "matrix": [1, 8], "w": 1, "x": 8, "y": 1 }, - { "label": "k19", "matrix": [1, 9], "w": 1, "x": 9, "y": 1 }, - { "label": "k1a", "matrix": [1, 10], "w": 1, "x": 10, "y": 1 }, - { "label": "k1b", "matrix": [1, 11], "w": 1, "x": 11, "y": 1 }, - { "label": "k20", "matrix": [2, 0], "w": 1, "x": 0, "y": 2 }, - { "label": "k21", "matrix": [2, 1], "w": 1, "x": 1, "y": 2 }, - { "label": "k22", "matrix": [2, 2], "w": 1, "x": 2, "y": 2 }, - { "label": "k23", "matrix": [2, 3], "w": 1, "x": 3, "y": 2 }, - { "label": "k24", "matrix": [2, 4], "w": 1, "x": 4, "y": 2 }, - { "label": "k25", "matrix": [2, 5], "w": 1, "x": 5, "y": 2 }, - { "label": "k26", "matrix": [2, 6], "w": 1, "x": 6, "y": 2 }, - { "label": "k27", "matrix": [2, 7], "w": 1, "x": 7, "y": 2 }, - { "label": "k28", "matrix": [2, 8], "w": 1, "x": 8, "y": 2 }, - { "label": "k29", "matrix": [2, 9], "w": 1, "x": 9, "y": 2 }, - { "label": "k2a", "matrix": [2, 10], "w": 1, "x": 10, "y": 2 }, - { "label": "k2b", "matrix": [2, 11], "w": 1, "x": 11, "y": 2 }, - { "label": "k30", "matrix": [3, 0], "w": 1, "x": 0, "y": 3 }, - { "label": "k31", "matrix": [3, 1], "w": 1, "x": 1, "y": 3 }, - { "label": "k32", "matrix": [3, 2], "w": 1, "x": 2, "y": 3 }, - { "label": "k33", "matrix": [3, 3], "w": 1, "x": 3, "y": 3 }, - { "label": "k34", "matrix": [3, 4], "w": 1, "x": 4, "y": 3 }, - { "label": "k35", "matrix": [3, 6], "w": 2, "x": 5, "y": 3 }, - { "label": "k37", "matrix": [3, 7], "w": 1, "x": 7, "y": 3 }, - { "label": "k38", "matrix": [3, 8], "w": 1, "x": 8, "y": 3 }, - { "label": "k39", "matrix": [3, 9], "w": 1, "x": 9, "y": 3 }, - { "label": "k3a", "matrix": [3, 10], "w": 1, "x": 10, "y": 3 }, - { "label": "k3b", "matrix": [3, 11], "w": 1, "x": 11, "y": 3 } - ] - } - } -} diff --git a/keyboards/planck/handwired/keymaps/wholteza-colemak-se/keymap.c b/keyboards/planck/handwired/keymaps/wholteza-colemak-se/keymap.c deleted file mode 100644 index ae2420250e4..00000000000 --- a/keyboards/planck/handwired/keymaps/wholteza-colemak-se/keymap.c +++ /dev/null @@ -1,241 +0,0 @@ -/* Copyright 2015-2017 Jack Humbert - * Copyright 2021 Erovia - * - * 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 - -enum planck_layers { - _QWERTY, - _COLEMAK, - _DVORAK, - _LOWER, - _RAISE, - _ADJUST -}; - -enum planck_keycodes { - QWERTY = SAFE_RANGE, - COLEMAK, - DVORAK, - THK, -}; - -#define LOWER MO(_LOWER) -#define RAISE MO(_RAISE) - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -/* Qwerty - * ,-----------------------------------------------------------------------------------. - * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | Esc | A | S | D | F | G | H | J | K | L | ; | " | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | THK | Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | - * `-----------------------------------------------------------------------------------' - */ -[_QWERTY] = LAYOUT_planck_grid( - KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, - KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , - THK, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT -), - -/* Colemak - * ,-----------------------------------------------------------------------------------. - * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Bksp | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | Esc | A | R | S | T | D | H | N | E | I | O | " | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | Shift| Z | X | C | V | B | K | M | , | . | / |Enter | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | THK | Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | - * `-----------------------------------------------------------------------------------' - */ -[_COLEMAK] = LAYOUT_planck_grid( - KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC, - KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , - THK, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT -), - -/* Dvorak - * ,-----------------------------------------------------------------------------------. - * | Tab | " | , | . | P | Y | F | G | C | R | L | Bksp | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | Esc | A | O | E | U | I | D | H | T | N | S | / | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | Shift| ; | Q | J | K | X | B | M | W | V | Z |Enter | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | THK | Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | - * `-----------------------------------------------------------------------------------' - */ -[_DVORAK] = LAYOUT_planck_grid( - KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC, - KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH, - KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_ENT , - THK, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT -), - -/* Lower - * ,-----------------------------------------------------------------------------------. - * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | Next | Vol- | Vol+ | Play | - * `-----------------------------------------------------------------------------------' - */ -[_LOWER] = LAYOUT_planck_grid( - KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, - KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, - _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______, - _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY -), - -/* Raise - * ,-----------------------------------------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |Pg Up |Pg Dn | | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | Next | Vol- | Vol+ | Play | - * `-----------------------------------------------------------------------------------' - */ -[_RAISE] = LAYOUT_planck_grid( - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, - KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, - _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______, - _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY -), - -/* Adjust (Lower + Raise) - * ,-----------------------------------------------------------------------------------. - * | | Reset|Debug | | | | | | | | | Del | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | |AGnorm|AGswap|Qwerty|Colemk|Dvorak| | | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | |TermOn|TermOf| | | | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | | | | | - * `-----------------------------------------------------------------------------------' - */ -[_ADJUST] = LAYOUT_planck_grid( - _______, RESET, DEBUG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL , - _______, _______, _______, _______, _______, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, - _______, _______, _______, _______, _______, _______, _______, TERM_ON, TERM_OFF, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ -) - -}; - -layer_state_t layer_state_set_user(layer_state_t state) { - return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); -} - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QWERTY: - if (record->event.pressed) { - set_single_persistent_default_layer(_QWERTY); - } - return false; - case COLEMAK: - if (record->event.pressed) { - set_single_persistent_default_layer(_COLEMAK); - } - return false; - case DVORAK: - if (record->event.pressed) { - set_single_persistent_default_layer(_DVORAK); - } - return false; - case THK: - if (record->event.pressed) { - SEND_STRING("Pretty cool keyboard, eh?"); - } - return false; - } - return true; -} - -bool encoder_mode = false; - -bool encoder_update_user(uint8_t index, bool clockwise) { - if (index == 0) { /* First encoder */ - if (clockwise) { - #ifdef MOUSEKEY_ENABLE - tap_code(KC_MS_WH_DOWN); - #else - tap_code(KC_PGDN); - #endif - } else { - #ifdef MOUSEKEY_ENABLE - tap_code(KC_MS_WH_UP); - #else - tap_code(KC_PGUP); - #endif - } - } else if (index == 1) { /* Second encoder */ - if (clockwise) { - if (encoder_mode) { - tap_code(KC_RGHT); - } else { - tap_code_delay(KC_VOLU, 60); - } - } else { - if (encoder_mode) { - tap_code(KC_LEFT); - } else { - tap_code_delay(KC_VOLD, 60); - } - } - } - return true; -} - -bool dip_switch_update_user(uint8_t index, bool active) { - switch (index) { - case 0: { - if (active) { - layer_on(_ADJUST); - } else { - layer_off(_ADJUST); - } - } - break; - case 1: - if (active) { - encoder_mode = true; - } else { - encoder_mode = false; - } - break; - case 2: - SEND_STRING("QMK is the best thing ever"); - break; - case 3: - SEND_STRING("This is a Planck THK"); - break; - } - return true; -} diff --git a/keyboards/planck/handwired/keymaps/wholteza-colemak-se/readme.md b/keyboards/planck/handwired/keymaps/wholteza-colemak-se/readme.md deleted file mode 100644 index bae51e067fe..00000000000 --- a/keyboards/planck/handwired/keymaps/wholteza-colemak-se/readme.md +++ /dev/null @@ -1,3 +0,0 @@ -# Keymap specifically for the Planck T.H.K. - -Based on the `default` Planck keymap. diff --git a/keyboards/planck/handwired/readme.md b/keyboards/planck/handwired/readme.md deleted file mode 100644 index d9dde740173..00000000000 --- a/keyboards/planck/handwired/readme.md +++ /dev/null @@ -1,28 +0,0 @@ -# Planck Through Hole Kit - -![THK](https://i.imgur.com/Fj8X0TDl.jpg) - -The OG 4x12, through-hole, ortho board. - -[Buildlog](https://erovia.github.io/posts/thk/) - -* Keyboard Maintainer: [Erovia](https://github.com/Erovia) -* Hardware Supported: [Planck THK](https://github.com/olkb/planck_thk) -* Hardware Availability: The hardware was released under GPLv3, see link above. - -Make example for this keyboard (after setting up your build environment): - - make planck/thk:thk - -Flashing example for this keyboard: - - make planck/thk:thk:flash - -**Reset**: With [the recommended bootloader](https://github.com/Erovia/planck_thk_usbasploader) a single press on the RESET button. - -## Audio - -The board has rudimental [audio](https://docs.qmk.fm/#/feature_audio) support. -As it can cause the USB connection to crash, likely due the mcu not being able to keep up with the USB's strict timing requirements, it's is disabled for the `thk` keymap. - -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/planck/handwired/reverse-engineering.md b/keyboards/planck/handwired/reverse-engineering.md deleted file mode 100644 index 477eb362d02..00000000000 --- a/keyboards/planck/handwired/reverse-engineering.md +++ /dev/null @@ -1,56 +0,0 @@ -## TEENSY 2 PINOUT - -_Columns may be in reverse order here_ - -| **COL/ROW** | **PIN** | -| ----------- | ------- | -| **C1** | C7 | -| **C2** | D6 | -| **C3** | D7 | -| **C4** | B4 | -| **C5** | B5 | -| **C6** | B6 | -| **C7** | F7 | -| **C8** | F6 | -| **C9** | F5 | -| **C10** | F4 | -| **C11** | F1 | -| **C12** | F0 | -| **R0** | E6 | -| **R1** | B3 | -| **R2** | D1 | -| **R3** | D0 | - -## LAYERS - -new layer lower = arrow keys + numbers + F1-12 -new layer raise = symbols - -### BASE - done - -| **#** | **C1** | **C2** | **C3** | **C4** | **C5** | **C6** | **C7** | **C8** | **C9** | **C10** | **C11** | **C12** | -| ------ | ------- | ------ | ------ | ------ | ----------- | ------ | ------ | ----------- | ------ | ---------- | -------- | --------- | -| **R1** | TAB | Q | W | E | R | T | Y | U | I | O | P | Å | -| **R2** | ESC | A | S | D | F | G | H | J | K | L | Ö | Ä | -| **R3** | L_SHIFT | Z | X | C | V | B | N | M | , | . | - | BACKSPACE | -| **R4** | L_CTRL | < | META | L_ALT | LAYER_LOWER | SPACE | NONE | LAYER_RAISE | ALT_GR | ARROW_DOWN | ARROW_UP | RETURN | - -### LOWER - -| **#** | **C1** | **C2** | **C3** | **C4** | **C5** | **C6** | **C7** | **C8** | **C9** | **C10** | **C11** | **C12** | -| ------ | ------------ | ------ | ------ | ------ | ----------- | ------ | ------ | ----------- | ------ | ---------- | -------- | --------- | -| **R1** | SE_PARAGRAPH | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | + | -| **R2** | ESC | A | S | D | F | G | H | J | K | L | Ö | Ä | -| **R3** | L_SHIFT | Z | X | C | V | B | N | M | , | . | - | BACKSPACE | -| **R4** | L_CTRL | < | META | L_ALT | LAYER_LOWER | SPACE | NONE | LAYER_RAISE | ALT_GR | ARROW_DOWN | ARROW_UP | RETURN | - -### RAISE - -| **#** | **C1** | **C2** | **C3** | **C4** | **C5** | **C6** | **C7** | **C8** | **C9** | **C10** | **C11** | **C12** | -| ------ | ------- | ------ | ------ | ------ | ----------- | ------ | ------ | ----------- | ------ | ---------- | -------- | --------- | -| **R1** | TAB | Q | W | E | R | T | Y | U | I | O | P | Å | -| **R2** | ESC | A | S | D | F | G | H | J | K | L | Ö | Ä | -| **R3** | L_SHIFT | Z | X | C | V | B | N | M | , | . | - | BACKSPACE | -| **R4** | L_CTRL | < | META | L_ALT | LAYER_LOWER | SPACE | NONE | LAYER_RAISE | ALT_GR | ARROW_DOWN | ARROW_UP | RETURN | - -§§§§§21111234567890+ diff --git a/keyboards/planck/handwired/rules.mk b/keyboards/planck/handwired/rules.mk deleted file mode 100644 index 0095bba5a88..00000000000 --- a/keyboards/planck/handwired/rules.mk +++ /dev/null @@ -1,43 +0,0 @@ -# Copyright 2021 Erovia -# -# 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 . - -# MCU name -MCU = atmega32a - -# Processor frequency -F_CPU = 16000000 - -# Bootloader selection -BOOTLOADER = usbasploader - -# Build Options -# change yes to no to disable -# -BOOTMAGIC_ENABLE = lite # Enable Bootmagic Lite -MOUSEKEY_ENABLE = yes # Mouse keys -EXTRAKEY_ENABLE = yes # Audio control and System control -CONSOLE_ENABLE = no # Console for debug -COMMAND_ENABLE = no # Commands for debug and configuration -# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE -SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend -# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -NKRO_ENABLE = no # USB Nkey Rollover -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow -AUDIO_ENABLE = no # Audio output -ENCODER_ENABLE = yes -DIP_SWITCH_ENABLE = yes - -LAYOUTS = ortho_4x12 planck_mit diff --git a/keyboards/planck/handwired/thk.c b/keyboards/planck/handwired/thk.c deleted file mode 100644 index e9912fcbb34..00000000000 --- a/keyboards/planck/handwired/thk.c +++ /dev/null @@ -1,18 +0,0 @@ -/* Copyright 2018 Jack Humbert - * Copyright 2021 Erovia - * - * 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 "thk.h" diff --git a/keyboards/planck/handwired/thk.h b/keyboards/planck/handwired/thk.h deleted file mode 100644 index 6cbbf7262c2..00000000000 --- a/keyboards/planck/handwired/thk.h +++ /dev/null @@ -1,49 +0,0 @@ -/* Copyright 2018 Jack Humbert - * Copyright 2021 Erovia - * - * 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 "planck.h" - -#define LAYOUT_planck_1x2uC( \ - k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ - k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ - k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ - k30, k31, k32, k33, k34, k35, k37, k38, k39, k3a, k3b \ -) \ -{ \ - { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b }, \ - { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b }, \ - { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b }, \ - { k30, k31, k32, k33, k34, k35, k35, k37, k38, k39, k3a, k3b } \ -} - -#define LAYOUT_ortho_4x12( \ - k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ - k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ - k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ - k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b \ -) \ -{ \ - { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b }, \ - { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b }, \ - { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b }, \ - { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b } \ -} - -#define LAYOUT_planck_mit LAYOUT_planck_1x2uC -#define LAYOUT_planck_grid LAYOUT_ortho_4x12 From e778f0e90bb1fcb40a7dcbea9842ed3a9ac9f9f0 Mon Sep 17 00:00:00 2001 From: Zackarias Montell Date: Sat, 6 Nov 2021 10:33:59 +0100 Subject: [PATCH 04/21] Worked on my layout --- .../handwired/planck/keymaps/wholteza/keymap.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/keyboards/handwired/planck/keymaps/wholteza/keymap.c b/keyboards/handwired/planck/keymaps/wholteza/keymap.c index bb0f435f094..500994d2ed8 100644 --- a/keyboards/handwired/planck/keymaps/wholteza/keymap.c +++ b/keyboards/handwired/planck/keymaps/wholteza/keymap.c @@ -9,16 +9,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, LCTL(KC_LSFT), KC_LGUI, KC_LALT, MO(1), KC_SPC, MO(2), KC_LALT, KC_LGUI, LCTL(KC_LSFT), KC_LCTL), KEYMAP( - KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_TRNS, - KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, - KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, LSFT(KC_NUHS), LSFT(KC_NUBS), KC_HOME, KC_END, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY), + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_F12, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), KEYMAP( - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, - KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, - KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY), + KC_ESC, KC_EXLM, KC_AT, KC_DLR, KC_TILD, KC_CIRC, KC_LCBR, KC_LBRC, KC_RBRC, KC_RCBR, KC_LABK, KC_TRNS, + KC_DEL, KC_TRNS, KC_DQUO, KC_HASH, KC_PERC, KC_QUOT, KC_SLSH, KC_LPRN, KC_RPRN, KC_EQL, KC_RABK, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_ASTR, KC_BSLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AMPR, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_PIPE), KEYMAP( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, @@ -100,6 +100,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; + void matrix_init_user(void) { } From ecccc0dd014a255dd878aa27ac679677a30903fb Mon Sep 17 00:00:00 2001 From: Zackarias Montell Date: Sat, 6 Nov 2021 17:13:49 +0100 Subject: [PATCH 05/21] Finalized layout and readme --- .../planck/keymaps/wholteza/README.md | 52 ++++++++- .../planck/keymaps/wholteza/keymap.c | 107 ++++-------------- keyboards/handwired/planck/readme.md | 41 ------- 3 files changed, 70 insertions(+), 130 deletions(-) diff --git a/keyboards/handwired/planck/keymaps/wholteza/README.md b/keyboards/handwired/planck/keymaps/wholteza/README.md index cf3582cc8f2..8eb5ce030aa 100644 --- a/keyboards/handwired/planck/keymaps/wholteza/README.md +++ b/keyboards/handwired/planck/keymaps/wholteza/README.md @@ -1 +1,51 @@ -Wholteza's handwired planck layout +[Wholteza](https://github.com/wholteza)'s handwired planck layout + +This is a swedish layout using [colemak-se](https://github.com/motform/colemak-se) and a symbols layer tailored towards developers. + +In addition to using colemak-se it also has backspace in place of caps lock to reduce the need of moving your hands. + +## LAYERS + +### Base + +``` +| # | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | +| --- | --------- | ---------------- | ---- | ----- | ----------- | ----- | --- | ----------- | ----- | ---- | ---------------- | ------- | +| 1 | Tab | Q | W | F | P | G | J | L | U | Y | Ö | Å | +| 2 | Backspace | A | R | S | T | D | H | N | E | I | O | Ä | +| 3 | L Shift | Z | X | C | V | B | K | M | , | . | - | L Shift | +| 4 | L Ctrl | L Shift + L Ctrl | Meta | L Alt | Layer Lower | SPACE | | Layer Raise | Enter | Meta | L Shift + L Ctrl | L Ctrl | +``` + +### Lower + +``` +| # | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | +| --- | ------ | --- | ---------- | -------- | ---------- | ----------- | ---- | ----------- | --------- | ------- | --- | --- | +| 1 | Escape | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | + | +| 2 | | | Arrow Left | Arrow Up | Arrow Down | Arrow Right | Home | End | Page Down | Page Up | | F12 | +| 3 | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | +| 4 | | | | | | | | Layer Extra | | | | | +``` + +### Raise + +``` +| # | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | +| --- | ------ | --- | --- | --- | --- | --- | --- | --- | --- | ----------- | --------- | --- | +| 1 | Delete | ! | @ | $ | ~ | ^ | { | [ | ] | } | < | | +| 2 | | | " | # | % | ' | / | ( | ) | = | > | | +| 3 | | | | | | \* | \ | ` | | | | & | +| 4 | | | | | | | | | | Volume Down | Volume Up | \| | +``` + +### Extras + +``` +| # | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | +| --- | ------------ | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | +| 1 | | | | | | | | | | | | | +| 2 | Reset Teensy | | | | | | | | | | | | +| 3 | | | | | | | | | | | | | +| 4 | | | | | | | | | | | | | +``` diff --git a/keyboards/handwired/planck/keymaps/wholteza/keymap.c b/keyboards/handwired/planck/keymaps/wholteza/keymap.c index 500994d2ed8..cbad461174a 100644 --- a/keyboards/handwired/planck/keymaps/wholteza/keymap.c +++ b/keyboards/handwired/planck/keymaps/wholteza/keymap.c @@ -1,103 +1,34 @@ #include "kb.h" +#include "keymap_swedish.h" const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - + // COLEMAK KEYMAP( - KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, - KC_BSPC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, - KC_LCTL, LCTL(KC_LSFT), KC_LGUI, KC_LALT, MO(1), KC_SPC, MO(2), KC_LALT, KC_LGUI, LCTL(KC_LSFT), KC_LCTL), + KC_TAB, SE_Q, SE_W, SE_F, SE_P, SE_G, SE_J, SE_L, SE_U, SE_Y, SE_ODIA, SE_ARNG, + KC_BSPC, SE_A, SE_R, SE_S, SE_T, SE_D, SE_H, SE_N, SE_E, SE_I, SE_O, SE_ADIA, + KC_LSFT, SE_Z, SE_X, SE_C, SE_V, SE_B, SE_K, SE_M, SE_COMM, SE_DOT, SE_MINS, KC_LSFT, + KC_LCTL, LCTL(KC_LSFT), KC_LGUI, KC_LALT, MO(1), KC_SPC, MO(2), KC_ENT, KC_LGUI, LCTL(KC_LSFT), KC_LCTL), + // LOWER KEYMAP( - KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, - KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_F12, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + KC_ESC, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS, + KC_TRNS, KC_TRNS, KC_LEFT , KC_UP, KC_DOWN, KC_RIGHT, KC_HOME, KC_END, KC_PGDN, KC_PGUP, KC_TRNS, KC_F12, + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(3), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + // RAISE KEYMAP( - KC_ESC, KC_EXLM, KC_AT, KC_DLR, KC_TILD, KC_CIRC, KC_LCBR, KC_LBRC, KC_RBRC, KC_RCBR, KC_LABK, KC_TRNS, - KC_DEL, KC_TRNS, KC_DQUO, KC_HASH, KC_PERC, KC_QUOT, KC_SLSH, KC_LPRN, KC_RPRN, KC_EQL, KC_RABK, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_ASTR, KC_BSLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AMPR, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_PIPE), + KC_DEL, SE_EXLM, SE_AT, SE_DLR, SE_TILD, SE_CIRC, SE_LCBR, SE_LBRC, SE_RBRC, SE_RCBR, SE_LABK, KC_TRNS, + KC_TRNS, KC_TRNS, SE_DQUO, SE_HASH, SE_PERC, SE_QUOT, SE_SLSH, SE_LPRN, SE_RPRN, SE_EQL, SE_RABK, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, SE_ASTR, SE_BSLS, SE_GRV, KC_TRNS, KC_TRNS, KC_TRNS, SE_AMPR, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, SE_PIPE), + // EXTRAS KEYMAP( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - KEYMAP( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - KEYMAP( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - KEYMAP( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - KEYMAP( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - KEYMAP( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - KEYMAP( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - KEYMAP( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - KEYMAP( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - KEYMAP( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - KEYMAP( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - KEYMAP( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - KEYMAP( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) - + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) }; diff --git a/keyboards/handwired/planck/readme.md b/keyboards/handwired/planck/readme.md index 6374ee1addd..323f857229e 100644 --- a/keyboards/handwired/planck/readme.md +++ b/keyboards/handwired/planck/readme.md @@ -38,44 +38,3 @@ Where `C0` and `R0` is **top left** if looking at the wiring of your keyboard (u | **R1** | B3 | | **R2** | D1 | | **R3** | D0 | - -## LAYERS - -new layer lower = arrow keys + numbers + F1-12 -new layer raise = symbols - -### BASE - done - -| **#** | **C0** | **C1** | **C2** | **C3** | **C4** | **C5** | **C6** | **C7** | **C8** | **C9** | **C10** | **C11** | -| ------ | ------- | ------ | ------ | ------ | ---------------- | ------ | ------ | ---------------- | ------ | ---------- | -------- | --------- | -| **R0** | TAB | Q | W | E | R | T | Y | U | I | O | P | Å | -| **R1** | ESC | A | S | D | F | G | H | J | K | L | Ö | Ä | -| **R2** | L_SHIFT | Z | X | C | V | B | N | M | , | . | - | BACKSPACE | -| **R3** | L_CTRL | < | META | L_ALT | LAYER_HOLD_LOWER | SPACE | NONE | LAYER_HOLD_RAISE | ALT_GR | ARROW_DOWN | ARROW_UP | RETURN | - -### LOWER - done - -| **#** | **C0** | **C1** | **C2** | **C3** | **C4** | **C5** | **C6** | **C7** | **C8** | **C9** | **C10** | **C11** | -| ------ | ------------ | ------------ | ---------- | ----------- | ---------------- | ---------------- | ---------- | ----------------- | ------ | -------- | ------- | ------------ | -| **R0** | SE_PARAGRAPH | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | + | -| **R1** | ESC | A | ARROW_UP | D | F | MOUSE_LEFT_CLICK | MOUSE_UP | MOUSE_RIGHT_CLICK | K | BACKTICK | UMLAUT | SINGLE_QUOTE | -| **R2** | L_SHIFT | ARROW_LEFT | ARROW_DOWN | ARROW_RIGHT | V | MOUSE_LEFT | MOUSE_DOWN | MOUSE_RIGHT | , | . | - | BACKSPACE | -| **R3** | L_CTRL | SINGLE_QUOTE | META | L_ALT | LAYER_HOLD_LOWER | SPACE | NONE | LAYER_HOLD_RAISE | ALT_GR | VOL_DOWN | VOL_UP | VOL_MUTE | - -### RAISE - -| **#** | **C0** | **C1** | **C2** | **C3** | **C4** | **C5** | **C6** | **C7** | **C8** | **C9** | **C10** | **C11** | -| ------ | ------------ | ------ | ------ | ------ | ---------------- | -------- | ------------------- | ---------------- | ------ | ------ | ----------------- | ------------ | -| **R0** | SE_PARAGRAPH | F1 | F2 | F3 | F4 | PRNT_SCR | LAYER_TOGGLE_ARROWS | PAUSE_BREAK | NUM_7 | NUM_8 | NUM_9 | NUM_LOCK | -| **R1** | ESC | F5 | F6 | F7 | F8 | INSERT | HOME | PAGE_UP | NUM_4 | NUM_5 | NUM_6 | SINGLE_QUOTE | -| **R2** | L_SHIFT | F9 | F10 | F11 | F12 | DELETE | END | PAGE_DOWN | NUM_1 | NUM_2 | NUM_3 | BACKSPACE | -| **R3** | L_CTRL | < | META | L_ALT | LAYER_HOLD_LOWER | SPACE | NONE | LAYER_HOLD_RAISE | NUM_0 | . | MEDIA_TOGGLE_PLAY | RETURN | - -### ARROWS - done - -| **#** | **C0** | **C1** | **C2** | **C3** | **C4** | **C5** | **C6** | **C7** | **C8** | **C9** | **C10** | **C11** | -| ------ | ------- | ------ | ------ | ------ | ---------------- | ------ | ------ | ---------------- | ---------- | ---------- | ----------- | --------- | -| **R0** | TAB | Q | W | E | R | T | Y | U | I | O | P | Å | -| **R1** | ESC | A | S | D | F | G | H | J | K | ARROW_UP | Ö | Ä | -| **R2** | L_SHIFT | Z | X | C | V | B | N | M | ARROW_LEFT | ARROW_DOWN | ARROW_RIGHT | BACKSPACE | -| **R3** | L_CTRL | < | META | L_ALT | LAYER_HOLD_LOWER | SPACE | NONE | LAYER_HOLD_RAISE | ALT_GR | ARROW_DOWN | ARROW_UP | RETURN | From f3d87065fa7980ce4b499c82a1f2bb3d1f243de7 Mon Sep 17 00:00:00 2001 From: Zackarias Montell Date: Sat, 6 Nov 2021 17:22:56 +0100 Subject: [PATCH 06/21] Renamed files --- keyboards/handwired/planck/config.h | 15 ++++++++ keyboards/handwired/planck/kb.c | 1 - keyboards/handwired/planck/kb.h | 21 ----------- .../planck/keymaps/wholteza/keymap.c | 17 ++++++++- keyboards/handwired/planck/planck.c | 17 +++++++++ keyboards/handwired/planck/planck.h | 36 +++++++++++++++++++ 6 files changed, 84 insertions(+), 23 deletions(-) delete mode 100644 keyboards/handwired/planck/kb.c delete mode 100644 keyboards/handwired/planck/kb.h create mode 100644 keyboards/handwired/planck/planck.c create mode 100644 keyboards/handwired/planck/planck.h diff --git a/keyboards/handwired/planck/config.h b/keyboards/handwired/planck/config.h index 1e9818232dd..29d96e809aa 100644 --- a/keyboards/handwired/planck/config.h +++ b/keyboards/handwired/planck/config.h @@ -1,3 +1,18 @@ +/* Copyright 2021 Wholteza + * + * 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 . + */ #ifndef CONFIG_H #define CONFIG_H diff --git a/keyboards/handwired/planck/kb.c b/keyboards/handwired/planck/kb.c deleted file mode 100644 index e5e00a32962..00000000000 --- a/keyboards/handwired/planck/kb.c +++ /dev/null @@ -1 +0,0 @@ -#include "kb.h" diff --git a/keyboards/handwired/planck/kb.h b/keyboards/handwired/planck/kb.h deleted file mode 100644 index 55d080fea75..00000000000 --- a/keyboards/handwired/planck/kb.h +++ /dev/null @@ -1,21 +0,0 @@ -#ifndef KB_H -#define KB_H - -#include "quantum.h" - -#define LAYOUT_planck_1x2uC( \ - k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ - k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ - k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ - k30, k31, k32, k33, k34, k35, k37, k38, k39, k3a, k3b \ -) \ -{ \ - { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b }, \ - { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b }, \ - { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b }, \ - { k30, k31, k32, k33, k34, k35, k35, k37, k38, k39, k3a, k3b } \ -} - -#define LAYOUT LAYOUT_planck_1x2uC - -#endif diff --git a/keyboards/handwired/planck/keymaps/wholteza/keymap.c b/keyboards/handwired/planck/keymaps/wholteza/keymap.c index cbad461174a..36d7438ded1 100644 --- a/keyboards/handwired/planck/keymaps/wholteza/keymap.c +++ b/keyboards/handwired/planck/keymaps/wholteza/keymap.c @@ -1,4 +1,19 @@ -#include "kb.h" +/* Copyright 2021 Wholteza + * + * 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 "planck.h" #include "keymap_swedish.h" const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { diff --git a/keyboards/handwired/planck/planck.c b/keyboards/handwired/planck/planck.c new file mode 100644 index 00000000000..43a7c7d67c9 --- /dev/null +++ b/keyboards/handwired/planck/planck.c @@ -0,0 +1,17 @@ +/* Copyright 2021 Wholteza + * + * 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 "planck.h" + diff --git a/keyboards/handwired/planck/planck.h b/keyboards/handwired/planck/planck.h new file mode 100644 index 00000000000..72acc315b10 --- /dev/null +++ b/keyboards/handwired/planck/planck.h @@ -0,0 +1,36 @@ +/* Copyright 2021 Wholteza + * + * 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 . + */ +#ifndef PLANCK_H +#define PLANCK_H + +#include "quantum.h" + +#define LAYOUT_planck_1x2uC( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ + k30, k31, k32, k33, k34, k35, k37, k38, k39, k3a, k3b \ +) \ +{ \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b }, \ + { k30, k31, k32, k33, k34, k35, k35, k37, k38, k39, k3a, k3b } \ +} + +#define LAYOUT LAYOUT_planck_1x2uC + +#endif From eb7818344fe9cdd968b0377488e1327633179135 Mon Sep 17 00:00:00 2001 From: Zackarias Montell Date: Sun, 7 Nov 2021 09:23:34 +0100 Subject: [PATCH 07/21] Changes according to contribution checklist --- keyboards/handwired/planck/config.h | 42 +++------ keyboards/handwired/planck/info.json | 5 + .../handwired/planck/keymaps/default/config.h | 28 ++++++ .../handwired/planck/keymaps/default/keymap.c | 93 +++++++++++++++++++ .../planck/keymaps/default/readme.md | 3 + .../planck/keymaps/wholteza/README.md | 51 ---------- .../planck/keymaps/wholteza/config.h | 28 ++++++ .../planck/keymaps/wholteza/keymap.c | 4 +- .../planck/keymaps/wholteza/readme.md | 5 + keyboards/handwired/planck/planck.h | 4 +- keyboards/handwired/planck/readme.md | 22 ++++- keyboards/handwired/planck/rules.mk | 39 +------- 12 files changed, 199 insertions(+), 125 deletions(-) create mode 100644 keyboards/handwired/planck/info.json create mode 100644 keyboards/handwired/planck/keymaps/default/config.h create mode 100644 keyboards/handwired/planck/keymaps/default/keymap.c create mode 100644 keyboards/handwired/planck/keymaps/default/readme.md delete mode 100644 keyboards/handwired/planck/keymaps/wholteza/README.md create mode 100644 keyboards/handwired/planck/keymaps/wholteza/config.h create mode 100644 keyboards/handwired/planck/keymaps/wholteza/readme.md diff --git a/keyboards/handwired/planck/config.h b/keyboards/handwired/planck/config.h index 29d96e809aa..f2c2674c428 100644 --- a/keyboards/handwired/planck/config.h +++ b/keyboards/handwired/planck/config.h @@ -13,39 +13,32 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ -#ifndef CONFIG_H +#pragma once #define CONFIG_H #include "config_common.h" /* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x6060 -#define DEVICE_VER 0x0001 -#define MANUFACTURER qmkbuilder -#define PRODUCT keyboard -#define DESCRIPTION Keyboard +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x6060 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Handwired +#define PRODUCT Planck /* key matrix size */ #define MATRIX_ROWS 4 #define MATRIX_COLS 12 -/* key matrix pins */ -#define MATRIX_ROW_PINS { E6, B3, D1, D0 } -#define MATRIX_COL_PINS {C7, D6, D7, B4, B5, B6, F7, F6, F5, F4, F1, F0} -#define UNUSED_PINS - -/* COL2ROW or ROW2COL */ -#define DIODE_DIRECTION COL2ROW +/* Row and column pins are defined in keymap config.h since they can be unique per handwireing */ /* number of backlight levels */ #ifdef BACKLIGHT_PIN -#define BACKLIGHT_LEVELS 0 +# define BACKLIGHT_LEVELS 0 #endif /* 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 @@ -54,20 +47,15 @@ #define LOCKING_RESYNC_ENABLE /* key combination for command */ -#define IS_COMMAND() ( \ - keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ -) +#define IS_COMMAND() (keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT))) /* prevent stuck modifiers */ #define PREVENT_STUCK_MODIFIERS - #ifdef RGB_DI_PIN -#define RGBLIGHT_ANIMATIONS -#define RGBLED_NUM 0 -#define RGBLIGHT_HUE_STEP 8 -#define RGBLIGHT_SAT_STEP 8 -#define RGBLIGHT_VAL_STEP 8 -#endif - +# define RGBLIGHT_ANIMATIONS +# define RGBLED_NUM 0 +# define RGBLIGHT_HUE_STEP 8 +# define RGBLIGHT_SAT_STEP 8 +# define RGBLIGHT_VAL_STEP 8 #endif diff --git a/keyboards/handwired/planck/info.json b/keyboards/handwired/planck/info.json new file mode 100644 index 00000000000..1687a211e08 --- /dev/null +++ b/keyboards/handwired/planck/info.json @@ -0,0 +1,5 @@ +{ + "keyboard_name": "Planck", + "url": "https://blog.roastpotatoes.co/guide/2015/11/04/how-to-handwire-a-planck/", + "maintainer": "Wholteza " +} diff --git a/keyboards/handwired/planck/keymaps/default/config.h b/keyboards/handwired/planck/keymaps/default/config.h new file mode 100644 index 00000000000..18f28dfa64c --- /dev/null +++ b/keyboards/handwired/planck/keymaps/default/config.h @@ -0,0 +1,28 @@ + +/* Copyright 2021 Wholteza + * + * 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 +/* Place overrides here */ + +/* key matrix pins */ +#define MATRIX_ROW_PINS \ + { E6, B3, D1, D0 } +#define MATRIX_COL_PINS \ + { C7, D6, D7, B4, B5, B6, F7, F6, F5, F4, F1, F0 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/planck/keymaps/default/keymap.c b/keyboards/handwired/planck/keymaps/default/keymap.c new file mode 100644 index 00000000000..fa1493fff9b --- /dev/null +++ b/keyboards/handwired/planck/keymaps/default/keymap.c @@ -0,0 +1,93 @@ +/* Copyright 2021 Wholteza + * + * 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 "planck.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + // QWERTY + KEYMAP( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , + MO(3), KC_LCTL, KC_LALT, KC_LGUI, MO(1), KC_SPC, MO(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT), + + // LOWER + KEYMAP( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______, + _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY +), + + // RAISE + KEYMAP( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______, + _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY +), + // EXTRAS + KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS +) +}; + + +void matrix_init_user(void) { +} + +void matrix_scan_user(void) { +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + return true; +} + +void led_set_user(uint8_t usb_led) { + + if (usb_led & (1 << USB_LED_NUM_LOCK)) { + + } else { + + } + + if (usb_led & (1 << USB_LED_CAPS_LOCK)) { + + } else { + + } + + if (usb_led & (1 << USB_LED_SCROLL_LOCK)) { + + } else { + + } + + if (usb_led & (1 << USB_LED_COMPOSE)) { + + } else { + + } + + if (usb_led & (1 << USB_LED_KANA)) { + + } else { + + } + +} diff --git a/keyboards/handwired/planck/keymaps/default/readme.md b/keyboards/handwired/planck/keymaps/default/readme.md new file mode 100644 index 00000000000..fdfa831d420 --- /dev/null +++ b/keyboards/handwired/planck/keymaps/default/readme.md @@ -0,0 +1,3 @@ +# The Default Planck Layout + +Maintained by [Wholteza](https://github.com/wholteza). diff --git a/keyboards/handwired/planck/keymaps/wholteza/README.md b/keyboards/handwired/planck/keymaps/wholteza/README.md deleted file mode 100644 index 8eb5ce030aa..00000000000 --- a/keyboards/handwired/planck/keymaps/wholteza/README.md +++ /dev/null @@ -1,51 +0,0 @@ -[Wholteza](https://github.com/wholteza)'s handwired planck layout - -This is a swedish layout using [colemak-se](https://github.com/motform/colemak-se) and a symbols layer tailored towards developers. - -In addition to using colemak-se it also has backspace in place of caps lock to reduce the need of moving your hands. - -## LAYERS - -### Base - -``` -| # | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | -| --- | --------- | ---------------- | ---- | ----- | ----------- | ----- | --- | ----------- | ----- | ---- | ---------------- | ------- | -| 1 | Tab | Q | W | F | P | G | J | L | U | Y | Ö | Å | -| 2 | Backspace | A | R | S | T | D | H | N | E | I | O | Ä | -| 3 | L Shift | Z | X | C | V | B | K | M | , | . | - | L Shift | -| 4 | L Ctrl | L Shift + L Ctrl | Meta | L Alt | Layer Lower | SPACE | | Layer Raise | Enter | Meta | L Shift + L Ctrl | L Ctrl | -``` - -### Lower - -``` -| # | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | -| --- | ------ | --- | ---------- | -------- | ---------- | ----------- | ---- | ----------- | --------- | ------- | --- | --- | -| 1 | Escape | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | + | -| 2 | | | Arrow Left | Arrow Up | Arrow Down | Arrow Right | Home | End | Page Down | Page Up | | F12 | -| 3 | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | -| 4 | | | | | | | | Layer Extra | | | | | -``` - -### Raise - -``` -| # | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | -| --- | ------ | --- | --- | --- | --- | --- | --- | --- | --- | ----------- | --------- | --- | -| 1 | Delete | ! | @ | $ | ~ | ^ | { | [ | ] | } | < | | -| 2 | | | " | # | % | ' | / | ( | ) | = | > | | -| 3 | | | | | | \* | \ | ` | | | | & | -| 4 | | | | | | | | | | Volume Down | Volume Up | \| | -``` - -### Extras - -``` -| # | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | -| --- | ------------ | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | -| 1 | | | | | | | | | | | | | -| 2 | Reset Teensy | | | | | | | | | | | | -| 3 | | | | | | | | | | | | | -| 4 | | | | | | | | | | | | | -``` diff --git a/keyboards/handwired/planck/keymaps/wholteza/config.h b/keyboards/handwired/planck/keymaps/wholteza/config.h new file mode 100644 index 00000000000..18f28dfa64c --- /dev/null +++ b/keyboards/handwired/planck/keymaps/wholteza/config.h @@ -0,0 +1,28 @@ + +/* Copyright 2021 Wholteza + * + * 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 +/* Place overrides here */ + +/* key matrix pins */ +#define MATRIX_ROW_PINS \ + { E6, B3, D1, D0 } +#define MATRIX_COL_PINS \ + { C7, D6, D7, B4, B5, B6, F7, F6, F5, F4, F1, F0 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/planck/keymaps/wholteza/keymap.c b/keyboards/handwired/planck/keymaps/wholteza/keymap.c index 36d7438ded1..b596a853eb2 100644 --- a/keyboards/handwired/planck/keymaps/wholteza/keymap.c +++ b/keyboards/handwired/planck/keymaps/wholteza/keymap.c @@ -19,14 +19,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // COLEMAK KEYMAP( - KC_TAB, SE_Q, SE_W, SE_F, SE_P, SE_G, SE_J, SE_L, SE_U, SE_Y, SE_ODIA, SE_ARNG, + KC_ESC, SE_Q, SE_W, SE_F, SE_P, SE_G, SE_J, SE_L, SE_U, SE_Y, SE_ODIA, SE_ARNG, KC_BSPC, SE_A, SE_R, SE_S, SE_T, SE_D, SE_H, SE_N, SE_E, SE_I, SE_O, SE_ADIA, KC_LSFT, SE_Z, SE_X, SE_C, SE_V, SE_B, SE_K, SE_M, SE_COMM, SE_DOT, SE_MINS, KC_LSFT, KC_LCTL, LCTL(KC_LSFT), KC_LGUI, KC_LALT, MO(1), KC_SPC, MO(2), KC_ENT, KC_LGUI, LCTL(KC_LSFT), KC_LCTL), // LOWER KEYMAP( - KC_ESC, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS, + KC_TAB, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS, KC_TRNS, KC_TRNS, KC_LEFT , KC_UP, KC_DOWN, KC_RIGHT, KC_HOME, KC_END, KC_PGDN, KC_PGUP, KC_TRNS, KC_F12, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(3), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/handwired/planck/keymaps/wholteza/readme.md b/keyboards/handwired/planck/keymaps/wholteza/readme.md new file mode 100644 index 00000000000..5028ac2bdbc --- /dev/null +++ b/keyboards/handwired/planck/keymaps/wholteza/readme.md @@ -0,0 +1,5 @@ +[Wholteza](https://github.com/wholteza)'s handwired planck layout + +This is a swedish layout using [colemak-se](https://github.com/motform/colemak-se) and a symbols layer tailored towards developers. + +In addition to using colemak-se it also has backspace in place of caps lock to reduce the need of moving your hands. diff --git a/keyboards/handwired/planck/planck.h b/keyboards/handwired/planck/planck.h index 72acc315b10..7bd0a9d4f23 100644 --- a/keyboards/handwired/planck/planck.h +++ b/keyboards/handwired/planck/planck.h @@ -13,7 +13,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ -#ifndef PLANCK_H +#pragma once #define PLANCK_H #include "quantum.h" @@ -32,5 +32,3 @@ } #define LAYOUT LAYOUT_planck_1x2uC - -#endif diff --git a/keyboards/handwired/planck/readme.md b/keyboards/handwired/planck/readme.md index 323f857229e..61f42067e31 100644 --- a/keyboards/handwired/planck/readme.md +++ b/keyboards/handwired/planck/readme.md @@ -1,24 +1,36 @@ # Plank Handwired ![plank handwired](https://i.imgur.com/khseWs7.jpeg) -![plank handwired](https://i.imgur.com/Y1XIjRK.jpeg) A compact 40% (12x4) ortholinear keyboard kit sold by OLKB before they developed the rev1 PCB. Keyboard Maintainer: [Wholteza](https://github.com/wholteza) Hardware Supported: [Teensy 2.0](https://www.pjrc.com/store/teensy.html) +Hardware Availability: [PJRC](https://www.pjrc.com/store/teensy.html) Make example for this keyboard (after setting up your build environment): - qmk compile -kb handwired/planck -km wholteza + make planck/rev4:default -See the [newbs build environment setup](https://docs.qmk.fm/#/newbs_getting_started). +Flashing example for this keyboard: + + make planck/rev4:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +- **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +- **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +- **Keycode in layout**: Press the key mapped to `RESET` if it is available ## Teensy pinout Can be changed in the `config.h` -Where `C0` and `R0` is **top left** if looking at the wiring of your keyboard (upside down). +Where `C0` and `R0` is **top left** when looking at the wiring of your keyboard (upside down). | **COL/ROW** | **PIN** | | ----------- | ------- | @@ -38,3 +50,5 @@ Where `C0` and `R0` is **top left** if looking at the wiring of your keyboard (u | **R1** | B3 | | **R2** | D1 | | **R3** | D0 | + +neiorsnteioarstn diff --git a/keyboards/handwired/planck/rules.mk b/keyboards/handwired/planck/rules.mk index 1f8e943be7f..dfde71452bf 100644 --- a/keyboards/handwired/planck/rules.mk +++ b/keyboards/handwired/planck/rules.mk @@ -1,46 +1,9 @@ # 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. # @@ -53,4 +16,4 @@ 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 AUDIO_ENABLE ?= no -RGBLIGHT_ENABLE ?= no \ No newline at end of file +RGBLIGHT_ENABLE ?= no From c81a119efb9a3f54451eaf650cd063ee3a898b38 Mon Sep 17 00:00:00 2001 From: Zackarias Montell Date: Sun, 7 Nov 2021 09:50:53 +0100 Subject: [PATCH 08/21] Changes according to contribution guidelines Moved pinout definition to layout dir Formatted C files and made layout consistant --- .../handwired/planck/keymaps/default/keymap.c | 17 ++++++------ .../planck/keymaps/default/readme.md | 25 +++++++++++++++++ .../planck/keymaps/wholteza/keymap.c | 12 ++++++--- .../planck/keymaps/wholteza/readme.md | 25 +++++++++++++++++ keyboards/handwired/planck/readme.md | 27 ------------------- 5 files changed, 67 insertions(+), 39 deletions(-) diff --git a/keyboards/handwired/planck/keymaps/default/keymap.c b/keyboards/handwired/planck/keymaps/default/keymap.c index fa1493fff9b..6408447bda3 100644 --- a/keyboards/handwired/planck/keymaps/default/keymap.c +++ b/keyboards/handwired/planck/keymaps/default/keymap.c @@ -21,30 +21,31 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , - MO(3), KC_LCTL, KC_LALT, KC_LGUI, MO(1), KC_SPC, MO(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT), + MO(3), KC_LCTL, KC_LALT, KC_LGUI, MO(1), KC_SPC, MO(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT + ), // LOWER KEYMAP( KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, - _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______, - _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY -), + KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + ), // RAISE KEYMAP( KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, - _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______, - _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY -), + KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + ), // EXTRAS KEYMAP( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS -) + ) }; diff --git a/keyboards/handwired/planck/keymaps/default/readme.md b/keyboards/handwired/planck/keymaps/default/readme.md index fdfa831d420..d005d512a0e 100644 --- a/keyboards/handwired/planck/keymaps/default/readme.md +++ b/keyboards/handwired/planck/keymaps/default/readme.md @@ -1,3 +1,28 @@ # The Default Planck Layout Maintained by [Wholteza](https://github.com/wholteza). + +## Teensy pinout + +Can be changed in the `config.h` + +Where `C0` and `R0` is **top left** when looking at the wiring of your keyboard (upside down). + +| **COL/ROW** | **PIN** | +| ----------- | ------- | +| **C0** | F0 | +| **C1** | F1 | +| **C2** | F4 | +| **C3** | F5 | +| **C4** | F6 | +| **C5** | F7 | +| **C6** | B6 | +| **C7** | B5 | +| **C8** | B4 | +| **C9** | D7 | +| **C10** | D6 | +| **C11** | C7 | +| **R0** | E6 | +| **R1** | B3 | +| **R2** | D1 | +| **R3** | D0 | diff --git a/keyboards/handwired/planck/keymaps/wholteza/keymap.c b/keyboards/handwired/planck/keymaps/wholteza/keymap.c index b596a853eb2..d0ac942ff42 100644 --- a/keyboards/handwired/planck/keymaps/wholteza/keymap.c +++ b/keyboards/handwired/planck/keymaps/wholteza/keymap.c @@ -22,28 +22,32 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_ESC, SE_Q, SE_W, SE_F, SE_P, SE_G, SE_J, SE_L, SE_U, SE_Y, SE_ODIA, SE_ARNG, KC_BSPC, SE_A, SE_R, SE_S, SE_T, SE_D, SE_H, SE_N, SE_E, SE_I, SE_O, SE_ADIA, KC_LSFT, SE_Z, SE_X, SE_C, SE_V, SE_B, SE_K, SE_M, SE_COMM, SE_DOT, SE_MINS, KC_LSFT, - KC_LCTL, LCTL(KC_LSFT), KC_LGUI, KC_LALT, MO(1), KC_SPC, MO(2), KC_ENT, KC_LGUI, LCTL(KC_LSFT), KC_LCTL), + KC_LCTL, LCTL(KC_LSFT), KC_LGUI, KC_LALT, MO(1), KC_SPC, MO(2), KC_ENT, KC_LGUI, LCTL(KC_LSFT), KC_LCTL + ), // LOWER KEYMAP( KC_TAB, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS, KC_TRNS, KC_TRNS, KC_LEFT , KC_UP, KC_DOWN, KC_RIGHT, KC_HOME, KC_END, KC_PGDN, KC_PGUP, KC_TRNS, KC_F12, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(3), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(3), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), // RAISE KEYMAP( KC_DEL, SE_EXLM, SE_AT, SE_DLR, SE_TILD, SE_CIRC, SE_LCBR, SE_LBRC, SE_RBRC, SE_RCBR, SE_LABK, KC_TRNS, KC_TRNS, KC_TRNS, SE_DQUO, SE_HASH, SE_PERC, SE_QUOT, SE_SLSH, SE_LPRN, SE_RPRN, SE_EQL, SE_RABK, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, SE_ASTR, SE_BSLS, SE_GRV, KC_TRNS, KC_TRNS, KC_TRNS, SE_AMPR, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, SE_PIPE), + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, SE_PIPE + ), // EXTRAS KEYMAP( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) }; diff --git a/keyboards/handwired/planck/keymaps/wholteza/readme.md b/keyboards/handwired/planck/keymaps/wholteza/readme.md index 5028ac2bdbc..df717bab47a 100644 --- a/keyboards/handwired/planck/keymaps/wholteza/readme.md +++ b/keyboards/handwired/planck/keymaps/wholteza/readme.md @@ -3,3 +3,28 @@ This is a swedish layout using [colemak-se](https://github.com/motform/colemak-se) and a symbols layer tailored towards developers. In addition to using colemak-se it also has backspace in place of caps lock to reduce the need of moving your hands. + +## Teensy pinout + +Can be changed in the `config.h` + +Where `C0` and `R0` is **top left** when looking at the wiring of your keyboard (upside down). + +| **COL/ROW** | **PIN** | +| ----------- | ------- | +| **C0** | F0 | +| **C1** | F1 | +| **C2** | F4 | +| **C3** | F5 | +| **C4** | F6 | +| **C5** | F7 | +| **C6** | B6 | +| **C7** | B5 | +| **C8** | B4 | +| **C9** | D7 | +| **C10** | D6 | +| **C11** | C7 | +| **R0** | E6 | +| **R1** | B3 | +| **R2** | D1 | +| **R3** | D0 | diff --git a/keyboards/handwired/planck/readme.md b/keyboards/handwired/planck/readme.md index 61f42067e31..82a366889ef 100644 --- a/keyboards/handwired/planck/readme.md +++ b/keyboards/handwired/planck/readme.md @@ -25,30 +25,3 @@ Enter the bootloader in 3 ways: - **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard - **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead - **Keycode in layout**: Press the key mapped to `RESET` if it is available - -## Teensy pinout - -Can be changed in the `config.h` - -Where `C0` and `R0` is **top left** when looking at the wiring of your keyboard (upside down). - -| **COL/ROW** | **PIN** | -| ----------- | ------- | -| **C0** | F0 | -| **C1** | F1 | -| **C2** | F4 | -| **C3** | F5 | -| **C4** | F6 | -| **C5** | F7 | -| **C6** | B6 | -| **C7** | B5 | -| **C8** | B4 | -| **C9** | D7 | -| **C10** | D6 | -| **C11** | C7 | -| **R0** | E6 | -| **R1** | B3 | -| **R2** | D1 | -| **R3** | D0 | - -neiorsnteioarstn From 7e4a6c8a7b1c88836e4dabaf0c0f360f22d24548 Mon Sep 17 00:00:00 2001 From: Zackarias Montell Date: Sun, 7 Nov 2021 10:02:04 +0100 Subject: [PATCH 09/21] Updates according to contribution guidelines Removed superfluous backslashes Corrected path in make and flash example --- keyboards/handwired/planck/planck.h | 20 ++++++++++---------- keyboards/handwired/planck/readme.md | 8 ++++---- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/keyboards/handwired/planck/planck.h b/keyboards/handwired/planck/planck.h index 7bd0a9d4f23..fa7ad44a679 100644 --- a/keyboards/handwired/planck/planck.h +++ b/keyboards/handwired/planck/planck.h @@ -19,16 +19,16 @@ #include "quantum.h" #define LAYOUT_planck_1x2uC( \ - k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ - k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ - k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ - k30, k31, k32, k33, k34, k35, k37, k38, k39, k3a, k3b \ -) \ -{ \ - { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b }, \ - { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b }, \ - { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b }, \ - { k30, k31, k32, k33, k34, k35, k35, k37, k38, k39, k3a, k3b } \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, + k30, k31, k32, k33, k34, k35, k37, k38, k39, k3a, k3b +) +{ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b }, + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b }, + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b }, + { k30, k31, k32, k33, k34, k35, k35, k37, k38, k39, k3a, k3b } } #define LAYOUT LAYOUT_planck_1x2uC diff --git a/keyboards/handwired/planck/readme.md b/keyboards/handwired/planck/readme.md index 82a366889ef..cb9d1abdef9 100644 --- a/keyboards/handwired/planck/readme.md +++ b/keyboards/handwired/planck/readme.md @@ -5,16 +5,16 @@ A compact 40% (12x4) ortholinear keyboard kit sold by OLKB before they developed the rev1 PCB. Keyboard Maintainer: [Wholteza](https://github.com/wholteza) -Hardware Supported: [Teensy 2.0](https://www.pjrc.com/store/teensy.html) -Hardware Availability: [PJRC](https://www.pjrc.com/store/teensy.html) +Hardware Supported: [Teensy 2.0](https://www.pjrc.com/store/teensy.html), [Planck lo-pro switch plate and bottom case](https://olkb.com/collections/planck) +Hardware Availability: [PJRC](https://www.pjrc.com/store/teensy.html), [OLKB](https://olkb.com/collections/planck) Make example for this keyboard (after setting up your build environment): - make planck/rev4:default + make handwired/planck:default Flashing example for this keyboard: - make planck/rev4:default + make handwired/planck:default:flash See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). From 085bfe0084c1b508a5c32644d09ae5f057d86858 Mon Sep 17 00:00:00 2001 From: Zackarias Montell Date: Sun, 7 Nov 2021 10:07:31 +0100 Subject: [PATCH 10/21] Re-added neccessary backslashes --- keyboards/handwired/planck/planck.h | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/keyboards/handwired/planck/planck.h b/keyboards/handwired/planck/planck.h index fa7ad44a679..7bd0a9d4f23 100644 --- a/keyboards/handwired/planck/planck.h +++ b/keyboards/handwired/planck/planck.h @@ -19,16 +19,16 @@ #include "quantum.h" #define LAYOUT_planck_1x2uC( \ - k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, - k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, - k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, - k30, k31, k32, k33, k34, k35, k37, k38, k39, k3a, k3b -) -{ - { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b }, - { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b }, - { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b }, - { k30, k31, k32, k33, k34, k35, k35, k37, k38, k39, k3a, k3b } + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ + k30, k31, k32, k33, k34, k35, k37, k38, k39, k3a, k3b \ +) \ +{ \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b }, \ + { k30, k31, k32, k33, k34, k35, k35, k37, k38, k39, k3a, k3b } \ } #define LAYOUT LAYOUT_planck_1x2uC From c3785970638df8515bc5c6cd658e26e8ba9dee18 Mon Sep 17 00:00:00 2001 From: wholteza Date: Sat, 29 Apr 2023 13:18:06 +0200 Subject: [PATCH 11/21] Changed pinout --- keyboards/handwired/planck/keymaps/wholteza/config.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/handwired/planck/keymaps/wholteza/config.h b/keyboards/handwired/planck/keymaps/wholteza/config.h index 18f28dfa64c..837aed26a68 100644 --- a/keyboards/handwired/planck/keymaps/wholteza/config.h +++ b/keyboards/handwired/planck/keymaps/wholteza/config.h @@ -19,7 +19,7 @@ /* key matrix pins */ #define MATRIX_ROW_PINS \ - { E6, B3, D1, D0 } + { E6, B3, B7, D0 } #define MATRIX_COL_PINS \ { C7, D6, D7, B4, B5, B6, F7, F6, F5, F4, F1, F0 } #define UNUSED_PINS From 2f039b19f958e4fac118e11266d331437b40c240 Mon Sep 17 00:00:00 2001 From: wholteza Date: Sun, 20 Jul 2025 11:23:54 +0200 Subject: [PATCH 12/21] Updated to using keyboard.json --- keyboards/handwired/planck/config.h | 61 ------------- keyboards/handwired/planck/info.json | 5 -- keyboards/handwired/planck/keyboard.json | 77 +++++++++++++++++ .../planck/keymaps/wholteza/config.h | 28 ------ .../planck/keymaps/wholteza/keymap.c | 85 +++---------------- keyboards/handwired/planck/planck.c | 17 ---- keyboards/handwired/planck/planck.h | 34 -------- keyboards/handwired/planck/rules.mk | 19 ----- 8 files changed, 90 insertions(+), 236 deletions(-) delete mode 100644 keyboards/handwired/planck/config.h delete mode 100644 keyboards/handwired/planck/info.json create mode 100644 keyboards/handwired/planck/keyboard.json delete mode 100644 keyboards/handwired/planck/keymaps/wholteza/config.h delete mode 100644 keyboards/handwired/planck/planck.c delete mode 100644 keyboards/handwired/planck/planck.h delete mode 100644 keyboards/handwired/planck/rules.mk diff --git a/keyboards/handwired/planck/config.h b/keyboards/handwired/planck/config.h deleted file mode 100644 index f2c2674c428..00000000000 --- a/keyboards/handwired/planck/config.h +++ /dev/null @@ -1,61 +0,0 @@ -/* Copyright 2021 Wholteza - * - * 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 CONFIG_H - -#include "config_common.h" - -/* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x6060 -#define DEVICE_VER 0x0001 -#define MANUFACTURER Handwired -#define PRODUCT Planck - -/* key matrix size */ -#define MATRIX_ROWS 4 -#define MATRIX_COLS 12 - -/* Row and column pins are defined in keymap config.h since they can be unique per handwireing */ - -/* number of backlight levels */ - -#ifdef BACKLIGHT_PIN -# define BACKLIGHT_LEVELS 0 -#endif - -/* 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 - -/* 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 - -#ifdef RGB_DI_PIN -# define RGBLIGHT_ANIMATIONS -# define RGBLED_NUM 0 -# define RGBLIGHT_HUE_STEP 8 -# define RGBLIGHT_SAT_STEP 8 -# define RGBLIGHT_VAL_STEP 8 -#endif diff --git a/keyboards/handwired/planck/info.json b/keyboards/handwired/planck/info.json deleted file mode 100644 index 1687a211e08..00000000000 --- a/keyboards/handwired/planck/info.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "keyboard_name": "Planck", - "url": "https://blog.roastpotatoes.co/guide/2015/11/04/how-to-handwire-a-planck/", - "maintainer": "Wholteza " -} diff --git a/keyboards/handwired/planck/keyboard.json b/keyboards/handwired/planck/keyboard.json new file mode 100644 index 00000000000..9da6b6ec547 --- /dev/null +++ b/keyboards/handwired/planck/keyboard.json @@ -0,0 +1,77 @@ +{ + "keyboard_name": "Planck", + "maintainer": "Wholteza ", + "manufacturer": "OLKB", + "url": "https://blog.roastpotatoes.co/guide/2015/11/04/how-to-handwire-a-planck/", + "bootloader": "halfkay", + "processor": "atmega32u4", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "matrix_pins": { + "cols": ["C7", "D6", "D7", "B4", "B5", "B6", "F7", "F6", "F5", "F4", "F1", "F0"], + "rows": ["E6", "B3", "B7", "D0"] + }, + "usb": { + "device_version": "1.0.0", + "pid": "0x1234", + "vid": "0xFEED" + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0}, + {"matrix": [0, 5], "x": 5, "y": 0}, + {"matrix": [0, 6], "x": 6, "y": 0}, + {"matrix": [0, 7], "x": 7, "y": 0}, + {"matrix": [0, 8], "x": 8, "y": 0}, + {"matrix": [0, 9], "x": 9, "y": 0}, + {"matrix": [0, 10], "x": 10, "y": 0}, + {"matrix": [0, 11], "x": 11, "y": 0}, + {"matrix": [1, 0], "x": 0, "y": 1}, + {"matrix": [1, 1], "x": 1, "y": 1}, + {"matrix": [1, 2], "x": 2, "y": 1}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [1, 4], "x": 4, "y": 1}, + {"matrix": [1, 5], "x": 5, "y": 1}, + {"matrix": [1, 6], "x": 6, "y": 1}, + {"matrix": [1, 7], "x": 7, "y": 1}, + {"matrix": [1, 8], "x": 8, "y": 1}, + {"matrix": [1, 9], "x": 9, "y": 1}, + {"matrix": [1, 10], "x": 10, "y": 1}, + {"matrix": [1, 11], "x": 11, "y": 1}, + {"matrix": [2, 0], "x": 0, "y": 2}, + {"matrix": [2, 1], "x": 1, "y": 2}, + {"matrix": [2, 2], "x": 2, "y": 2}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [2, 4], "x": 4, "y": 2}, + {"matrix": [2, 5], "x": 5, "y": 2}, + {"matrix": [2, 6], "x": 6, "y": 2}, + {"matrix": [2, 7], "x": 7, "y": 2}, + {"matrix": [2, 8], "x": 8, "y": 2}, + {"matrix": [2, 9], "x": 9, "y": 2}, + {"matrix": [2, 10], "x": 10, "y": 2}, + {"matrix": [2, 11], "x": 11, "y": 2}, + {"matrix": [3, 0], "x": 0, "y": 3}, + {"matrix": [3, 1], "x": 1, "y": 3}, + {"matrix": [3, 2], "x": 2, "y": 3}, + {"matrix": [3, 3], "x": 3, "y": 3}, + {"matrix": [3, 4], "x": 4, "y": 3}, + {"matrix": [3, 5], "x": 5, "y": 3}, + {"matrix": [3, 7], "x": 7, "y": 3}, + {"matrix": [3, 8], "x": 8, "y": 3}, + {"matrix": [3, 9], "x": 9, "y": 3}, + {"matrix": [3, 10], "x": 10, "y": 3}, + {"matrix": [3, 11], "x": 11, "y": 3}, + ] + } + } +} diff --git a/keyboards/handwired/planck/keymaps/wholteza/config.h b/keyboards/handwired/planck/keymaps/wholteza/config.h deleted file mode 100644 index 837aed26a68..00000000000 --- a/keyboards/handwired/planck/keymaps/wholteza/config.h +++ /dev/null @@ -1,28 +0,0 @@ - -/* Copyright 2021 Wholteza - * - * 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 -/* Place overrides here */ - -/* key matrix pins */ -#define MATRIX_ROW_PINS \ - { E6, B3, B7, D0 } -#define MATRIX_COL_PINS \ - { C7, D6, D7, B4, B5, B6, F7, F6, F5, F4, F1, F0 } -#define UNUSED_PINS - -/* COL2ROW or ROW2COL */ -#define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/planck/keymaps/wholteza/keymap.c b/keyboards/handwired/planck/keymaps/wholteza/keymap.c index d0ac942ff42..9e07b3de5bc 100644 --- a/keyboards/handwired/planck/keymaps/wholteza/keymap.c +++ b/keyboards/handwired/planck/keymaps/wholteza/keymap.c @@ -1,96 +1,37 @@ -/* Copyright 2021 Wholteza - * - * 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 "planck.h" +#include QMK_KEYBOARD_H #include "keymap_swedish.h" +enum layer_names { + _BASE, + _NUM, + _SYM, + _EXTRAS +}; + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - // COLEMAK - KEYMAP( + [_BASE] = LAYOUT( KC_ESC, SE_Q, SE_W, SE_F, SE_P, SE_G, SE_J, SE_L, SE_U, SE_Y, SE_ODIA, SE_ARNG, KC_BSPC, SE_A, SE_R, SE_S, SE_T, SE_D, SE_H, SE_N, SE_E, SE_I, SE_O, SE_ADIA, KC_LSFT, SE_Z, SE_X, SE_C, SE_V, SE_B, SE_K, SE_M, SE_COMM, SE_DOT, SE_MINS, KC_LSFT, KC_LCTL, LCTL(KC_LSFT), KC_LGUI, KC_LALT, MO(1), KC_SPC, MO(2), KC_ENT, KC_LGUI, LCTL(KC_LSFT), KC_LCTL ), - - // LOWER - KEYMAP( + [_NUM] = LAYOUT( KC_TAB, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS, KC_TRNS, KC_TRNS, KC_LEFT , KC_UP, KC_DOWN, KC_RIGHT, KC_HOME, KC_END, KC_PGDN, KC_PGUP, KC_TRNS, KC_F12, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(3), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), - - // RAISE - KEYMAP( + [_SYM] = LAYOUT( KC_DEL, SE_EXLM, SE_AT, SE_DLR, SE_TILD, SE_CIRC, SE_LCBR, SE_LBRC, SE_RBRC, SE_RCBR, SE_LABK, KC_TRNS, KC_TRNS, KC_TRNS, SE_DQUO, SE_HASH, SE_PERC, SE_QUOT, SE_SLSH, SE_LPRN, SE_RPRN, SE_EQL, SE_RABK, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, SE_ASTR, SE_BSLS, SE_GRV, KC_TRNS, KC_TRNS, KC_TRNS, SE_AMPR, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, SE_PIPE ), - - // EXTRAS - KEYMAP( + [_EXTRAS] = LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) }; - -void matrix_init_user(void) { -} - -void matrix_scan_user(void) { -} - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; -} - -void led_set_user(uint8_t usb_led) { - - if (usb_led & (1 << USB_LED_NUM_LOCK)) { - - } else { - - } - - if (usb_led & (1 << USB_LED_CAPS_LOCK)) { - - } else { - - } - - if (usb_led & (1 << USB_LED_SCROLL_LOCK)) { - - } else { - - } - - if (usb_led & (1 << USB_LED_COMPOSE)) { - - } else { - - } - - if (usb_led & (1 << USB_LED_KANA)) { - - } else { - - } - -} diff --git a/keyboards/handwired/planck/planck.c b/keyboards/handwired/planck/planck.c deleted file mode 100644 index 43a7c7d67c9..00000000000 --- a/keyboards/handwired/planck/planck.c +++ /dev/null @@ -1,17 +0,0 @@ -/* Copyright 2021 Wholteza - * - * 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 "planck.h" - diff --git a/keyboards/handwired/planck/planck.h b/keyboards/handwired/planck/planck.h deleted file mode 100644 index 7bd0a9d4f23..00000000000 --- a/keyboards/handwired/planck/planck.h +++ /dev/null @@ -1,34 +0,0 @@ -/* Copyright 2021 Wholteza - * - * 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 PLANCK_H - -#include "quantum.h" - -#define LAYOUT_planck_1x2uC( \ - k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ - k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ - k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ - k30, k31, k32, k33, k34, k35, k37, k38, k39, k3a, k3b \ -) \ -{ \ - { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b }, \ - { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b }, \ - { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b }, \ - { k30, k31, k32, k33, k34, k35, k35, k37, k38, k39, k3a, k3b } \ -} - -#define LAYOUT LAYOUT_planck_1x2uC diff --git a/keyboards/handwired/planck/rules.mk b/keyboards/handwired/planck/rules.mk deleted file mode 100644 index dfde71452bf..00000000000 --- a/keyboards/handwired/planck/rules.mk +++ /dev/null @@ -1,19 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# 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) -MOUSEKEY_ENABLE ?= yes # Mouse keys(+4700) -EXTRAKEY_ENABLE ?= yes # Audio control and System control(+450) -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 -AUDIO_ENABLE ?= no -RGBLIGHT_ENABLE ?= no From a7a52ba2704d7af893d45307ff707caf99d8cffd Mon Sep 17 00:00:00 2001 From: wholteza Date: Sun, 20 Jul 2025 11:46:30 +0200 Subject: [PATCH 13/21] Added default layout and pictures --- .../wholteza/keyboard-layout-editor.json | 111 ++++++++++++++++++ .../planck/keymaps/wholteza/readme.md | 27 +---- 2 files changed, 113 insertions(+), 25 deletions(-) create mode 100644 keyboards/handwired/planck/keymaps/wholteza/keyboard-layout-editor.json diff --git a/keyboards/handwired/planck/keymaps/wholteza/keyboard-layout-editor.json b/keyboards/handwired/planck/keymaps/wholteza/keyboard-layout-editor.json new file mode 100644 index 00000000000..a3423a6bd04 --- /dev/null +++ b/keyboards/handwired/planck/keymaps/wholteza/keyboard-layout-editor.json @@ -0,0 +1,111 @@ +[ + [ + { + "c": "#ff0000", + "a": 5 + }, + "Tab\nDel\n\n\n\n\nESC", + { + "c": "#cccccc" + }, + "1\n!\n\n\n\n\nQ", + "2\n@\n\n\n\n\nW", + "3\n$\n\n\n\n\nF", + "4\n~\n\n\n\n\nP", + "5\n^\n\n\n\n\nG", + "6\n{\n\n\n\n\nJ", + "7\n[\n\n\n\n\nL", + "8\n]\n\n\n\n\nU", + "9\n}\n\n\n\n\nY", + "0\n<\n\n\n\n\nÖ", + "+\n\n\n\n\n\nÅ" + ], + [ + { + "c": "#ff0000", + "a": 7 + }, + "Backsp\n\n\n\nReset", + { + "c": "#cccccc" + }, + "A", + { + "a": 5 + }, + "Left\n\"\n\n\n\n\nR", + "Up\n#\n\n\n\n\nS", + "Down\n%\n\n\n\n\nT", + "Right\n'\n\n\n\n\nD", + "Home\n/\n\n\n\n\nH", + "End\n(\n\n\n\n\nN", + "Pgdn\n)\n\n\n\n\nE", + "Pgup\n=\n\n\n\n\nI", + "\n>\n\n\n\n\nO", + "F12\n\n\n\n\n\nÄ" + ], + [ + { + "c": "#969696", + "a": 7 + }, + "Shift", + { + "c": "#cccccc", + "a": 5 + }, + "F1\n\n\n\n\n\nZ", + "F2\n\n\n\n\n\nX", + "F3\n\n\n\n\n\nC", + "F4\n\n\n\n\n\nV", + "F5\n*\n\n\n\n\nB", + "F6\n\\\n\n\n\n\nK", + "F7\n`\n\n\n\n\nM", + "F8\n\n\n\n\n\n,", + "F9\n\n\n\n\n\n.", + "F10\n\n\n\n\n\n-", + { + "c": "#969696" + }, + "F11\n&\n\n\n\n\nShift" + ], + [ + { + "a": 7 + }, + "Ctrl", + "Ctr+Sh", + "Win", + "Alt", + { + "c": "#ff0000" + }, + "Numers", + { + "c": "#000000", + "t": "#ffffff", + "w": 2 + }, + "Space", + { + "c": "#ff0000", + "t": "#000000", + "a": 5 + }, + "Extras\n\n\n\n\n\nSymbols", + { + "c": "#0075ff", + "a": 7 + }, + "Enter", + { + "c": "#969696" + }, + "Win", + "Ctr+Sh", + { + "a": 5 + }, + "\n|\n\n\n\n\nCtrl" + ] +] \ No newline at end of file diff --git a/keyboards/handwired/planck/keymaps/wholteza/readme.md b/keyboards/handwired/planck/keymaps/wholteza/readme.md index df717bab47a..a0d472234df 100644 --- a/keyboards/handwired/planck/keymaps/wholteza/readme.md +++ b/keyboards/handwired/planck/keymaps/wholteza/readme.md @@ -1,30 +1,7 @@ [Wholteza](https://github.com/wholteza)'s handwired planck layout +![keyboard-layout-editor.com layout](./keyboard-layout-editor.png) + This is a swedish layout using [colemak-se](https://github.com/motform/colemak-se) and a symbols layer tailored towards developers. In addition to using colemak-se it also has backspace in place of caps lock to reduce the need of moving your hands. - -## Teensy pinout - -Can be changed in the `config.h` - -Where `C0` and `R0` is **top left** when looking at the wiring of your keyboard (upside down). - -| **COL/ROW** | **PIN** | -| ----------- | ------- | -| **C0** | F0 | -| **C1** | F1 | -| **C2** | F4 | -| **C3** | F5 | -| **C4** | F6 | -| **C5** | F7 | -| **C6** | B6 | -| **C7** | B5 | -| **C8** | B4 | -| **C9** | D7 | -| **C10** | D6 | -| **C11** | C7 | -| **R0** | E6 | -| **R1** | B3 | -| **R2** | D1 | -| **R3** | D0 | From ff82f67ec8e01586f79f3a714d7bef5aaf69f0fa Mon Sep 17 00:00:00 2001 From: wholteza Date: Sun, 20 Jul 2025 11:49:38 +0200 Subject: [PATCH 14/21] Added updated default layout --- .../handwired/planck/keymaps/default/config.h | 28 ------ .../handwired/planck/keymaps/default/keymap.c | 97 ++++--------------- .../planck/keymaps/default/readme.md | 25 ----- keyboards/handwired/planck/readme.md | 20 ++-- 4 files changed, 26 insertions(+), 144 deletions(-) delete mode 100644 keyboards/handwired/planck/keymaps/default/config.h diff --git a/keyboards/handwired/planck/keymaps/default/config.h b/keyboards/handwired/planck/keymaps/default/config.h deleted file mode 100644 index 18f28dfa64c..00000000000 --- a/keyboards/handwired/planck/keymaps/default/config.h +++ /dev/null @@ -1,28 +0,0 @@ - -/* Copyright 2021 Wholteza - * - * 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 -/* Place overrides here */ - -/* key matrix pins */ -#define MATRIX_ROW_PINS \ - { E6, B3, D1, D0 } -#define MATRIX_COL_PINS \ - { C7, D6, D7, B4, B5, B6, F7, F6, F5, F4, F1, F0 } -#define UNUSED_PINS - -/* COL2ROW or ROW2COL */ -#define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/planck/keymaps/default/keymap.c b/keyboards/handwired/planck/keymaps/default/keymap.c index 6408447bda3..d1bb2eefd77 100644 --- a/keyboards/handwired/planck/keymaps/default/keymap.c +++ b/keyboards/handwired/planck/keymaps/default/keymap.c @@ -1,94 +1,35 @@ -/* Copyright 2021 Wholteza - * - * 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 "planck.h" +#include QMK_KEYBOARD_H + +enum layer_names { + _BASE, + _NUM, + _SYM, + _EXTRAS +}; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - // QWERTY - KEYMAP( + [_BASE] = LAYOUT( KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , MO(3), KC_LCTL, KC_LALT, KC_LGUI, MO(1), KC_SPC, MO(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT ), - - // LOWER - KEYMAP( - KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, - KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, - KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY - ), - - // RAISE - KEYMAP( + [_NUM] = LAYOUT( KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), - // EXTRAS - KEYMAP( + [_SYM] = LAYOUT( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + ), + [_EXTRAS] = LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) }; - - -void matrix_init_user(void) { -} - -void matrix_scan_user(void) { -} - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; -} - -void led_set_user(uint8_t usb_led) { - - if (usb_led & (1 << USB_LED_NUM_LOCK)) { - - } else { - - } - - if (usb_led & (1 << USB_LED_CAPS_LOCK)) { - - } else { - - } - - if (usb_led & (1 << USB_LED_SCROLL_LOCK)) { - - } else { - - } - - if (usb_led & (1 << USB_LED_COMPOSE)) { - - } else { - - } - - if (usb_led & (1 << USB_LED_KANA)) { - - } else { - - } - -} diff --git a/keyboards/handwired/planck/keymaps/default/readme.md b/keyboards/handwired/planck/keymaps/default/readme.md index d005d512a0e..fdfa831d420 100644 --- a/keyboards/handwired/planck/keymaps/default/readme.md +++ b/keyboards/handwired/planck/keymaps/default/readme.md @@ -1,28 +1,3 @@ # The Default Planck Layout Maintained by [Wholteza](https://github.com/wholteza). - -## Teensy pinout - -Can be changed in the `config.h` - -Where `C0` and `R0` is **top left** when looking at the wiring of your keyboard (upside down). - -| **COL/ROW** | **PIN** | -| ----------- | ------- | -| **C0** | F0 | -| **C1** | F1 | -| **C2** | F4 | -| **C3** | F5 | -| **C4** | F6 | -| **C5** | F7 | -| **C6** | B6 | -| **C7** | B5 | -| **C8** | B4 | -| **C9** | D7 | -| **C10** | D6 | -| **C11** | C7 | -| **R0** | E6 | -| **R1** | B3 | -| **R2** | D1 | -| **R3** | D0 | diff --git a/keyboards/handwired/planck/readme.md b/keyboards/handwired/planck/readme.md index cb9d1abdef9..86b1902f5d8 100644 --- a/keyboards/handwired/planck/readme.md +++ b/keyboards/handwired/planck/readme.md @@ -5,23 +5,17 @@ A compact 40% (12x4) ortholinear keyboard kit sold by OLKB before they developed the rev1 PCB. Keyboard Maintainer: [Wholteza](https://github.com/wholteza) -Hardware Supported: [Teensy 2.0](https://www.pjrc.com/store/teensy.html), [Planck lo-pro switch plate and bottom case](https://olkb.com/collections/planck) -Hardware Availability: [PJRC](https://www.pjrc.com/store/teensy.html), [OLKB](https://olkb.com/collections/planck) +Hardware Supported: [Teensy 2.0](https://www.pjrc.com/store/teensy.html) + +## Compile and Flash Make example for this keyboard (after setting up your build environment): - make handwired/planck:default + qmk compile --keyboard handwired/planck --keymap default -Flashing example for this keyboard: +To flash the keyaboard, use the Teensy Loader application provided by [PJRC](https://www.pjrc.com/teensy/loader.html). - make handwired/planck:default:flash +## Pinout -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). +The pinout can be found in the `keyboard.json` and looking at your keyboards wiring (flipped with the keycaps facing down) column and row 0 is **top left**. -## Bootloader - -Enter the bootloader in 3 ways: - -- **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard -- **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead -- **Keycode in layout**: Press the key mapped to `RESET` if it is available From f769ec506269363947af809fa52f7244ab2d4b2f Mon Sep 17 00:00:00 2001 From: wholteza Date: Sun, 20 Jul 2025 11:53:56 +0200 Subject: [PATCH 15/21] Added picture --- keyboards/handwired/planck/keymaps/wholteza/readme.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/handwired/planck/keymaps/wholteza/readme.md b/keyboards/handwired/planck/keymaps/wholteza/readme.md index a0d472234df..5b3e2d200d2 100644 --- a/keyboards/handwired/planck/keymaps/wholteza/readme.md +++ b/keyboards/handwired/planck/keymaps/wholteza/readme.md @@ -1,7 +1,7 @@ [Wholteza](https://github.com/wholteza)'s handwired planck layout -![keyboard-layout-editor.com layout](./keyboard-layout-editor.png) +![keyboard-layout-editor.com layout](https://imgur.com/a/ju9CNpF) -This is a swedish layout using [colemak-se](https://github.com/motform/colemak-se) and a symbols layer tailored towards developers. +This is a swedish layout using [colemak-se]phttps://github.com/motform/colemak-se) and a symbols layer tailored towards developers. In addition to using colemak-se it also has backspace in place of caps lock to reduce the need of moving your hands. From 77a7c418d28224cda63576be5e7e647e8568bdf5 Mon Sep 17 00:00:00 2001 From: wholteza Date: Sun, 20 Jul 2025 12:00:59 +0200 Subject: [PATCH 16/21] Updated image link --- keyboards/handwired/planck/keymaps/wholteza/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/handwired/planck/keymaps/wholteza/readme.md b/keyboards/handwired/planck/keymaps/wholteza/readme.md index 5b3e2d200d2..d2d71ec0528 100644 --- a/keyboards/handwired/planck/keymaps/wholteza/readme.md +++ b/keyboards/handwired/planck/keymaps/wholteza/readme.md @@ -1,6 +1,6 @@ [Wholteza](https://github.com/wholteza)'s handwired planck layout -![keyboard-layout-editor.com layout](https://imgur.com/a/ju9CNpF) +![keyboard-layout-editor.com layout](https://i.imgur.com/7kJDaVS.png) This is a swedish layout using [colemak-se]phttps://github.com/motform/colemak-se) and a symbols layer tailored towards developers. From 5302902e4281c15971dd88e37e1610ba21372860 Mon Sep 17 00:00:00 2001 From: wholteza Date: Sun, 20 Jul 2025 12:01:50 +0200 Subject: [PATCH 17/21] Fixed typo --- keyboards/handwired/planck/keymaps/wholteza/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/handwired/planck/keymaps/wholteza/readme.md b/keyboards/handwired/planck/keymaps/wholteza/readme.md index d2d71ec0528..d812ec00b9f 100644 --- a/keyboards/handwired/planck/keymaps/wholteza/readme.md +++ b/keyboards/handwired/planck/keymaps/wholteza/readme.md @@ -2,6 +2,6 @@ ![keyboard-layout-editor.com layout](https://i.imgur.com/7kJDaVS.png) -This is a swedish layout using [colemak-se]phttps://github.com/motform/colemak-se) and a symbols layer tailored towards developers. +This is a swedish layout using [colemak-se](https://github.com/motform/colemak-se) and a symbols layer tailored towards developers. In addition to using colemak-se it also has backspace in place of caps lock to reduce the need of moving your hands. From 23835965532f640bf04dc3979868a6ffa6361ec3 Mon Sep 17 00:00:00 2001 From: wholteza Date: Sun, 20 Jul 2025 12:29:21 +0200 Subject: [PATCH 18/21] Moved personal layout to qmk_userspace repo --- .../handwired/planck/keymaps/default/keymap.c | 15 +++ .../wholteza/keyboard-layout-editor.json | 111 ------------------ .../planck/keymaps/wholteza/keymap.c | 37 ------ .../planck/keymaps/wholteza/readme.md | 7 -- 4 files changed, 15 insertions(+), 155 deletions(-) delete mode 100644 keyboards/handwired/planck/keymaps/wholteza/keyboard-layout-editor.json delete mode 100644 keyboards/handwired/planck/keymaps/wholteza/keymap.c delete mode 100644 keyboards/handwired/planck/keymaps/wholteza/readme.md diff --git a/keyboards/handwired/planck/keymaps/default/keymap.c b/keyboards/handwired/planck/keymaps/default/keymap.c index d1bb2eefd77..b89d50b20cf 100644 --- a/keyboards/handwired/planck/keymaps/default/keymap.c +++ b/keyboards/handwired/planck/keymaps/default/keymap.c @@ -1,3 +1,18 @@ +/* Copyright 2025 Zackarias Montell @Wholteza + * + * 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 enum layer_names { diff --git a/keyboards/handwired/planck/keymaps/wholteza/keyboard-layout-editor.json b/keyboards/handwired/planck/keymaps/wholteza/keyboard-layout-editor.json deleted file mode 100644 index a3423a6bd04..00000000000 --- a/keyboards/handwired/planck/keymaps/wholteza/keyboard-layout-editor.json +++ /dev/null @@ -1,111 +0,0 @@ -[ - [ - { - "c": "#ff0000", - "a": 5 - }, - "Tab\nDel\n\n\n\n\nESC", - { - "c": "#cccccc" - }, - "1\n!\n\n\n\n\nQ", - "2\n@\n\n\n\n\nW", - "3\n$\n\n\n\n\nF", - "4\n~\n\n\n\n\nP", - "5\n^\n\n\n\n\nG", - "6\n{\n\n\n\n\nJ", - "7\n[\n\n\n\n\nL", - "8\n]\n\n\n\n\nU", - "9\n}\n\n\n\n\nY", - "0\n<\n\n\n\n\nÖ", - "+\n\n\n\n\n\nÅ" - ], - [ - { - "c": "#ff0000", - "a": 7 - }, - "Backsp\n\n\n\nReset", - { - "c": "#cccccc" - }, - "A", - { - "a": 5 - }, - "Left\n\"\n\n\n\n\nR", - "Up\n#\n\n\n\n\nS", - "Down\n%\n\n\n\n\nT", - "Right\n'\n\n\n\n\nD", - "Home\n/\n\n\n\n\nH", - "End\n(\n\n\n\n\nN", - "Pgdn\n)\n\n\n\n\nE", - "Pgup\n=\n\n\n\n\nI", - "\n>\n\n\n\n\nO", - "F12\n\n\n\n\n\nÄ" - ], - [ - { - "c": "#969696", - "a": 7 - }, - "Shift", - { - "c": "#cccccc", - "a": 5 - }, - "F1\n\n\n\n\n\nZ", - "F2\n\n\n\n\n\nX", - "F3\n\n\n\n\n\nC", - "F4\n\n\n\n\n\nV", - "F5\n*\n\n\n\n\nB", - "F6\n\\\n\n\n\n\nK", - "F7\n`\n\n\n\n\nM", - "F8\n\n\n\n\n\n,", - "F9\n\n\n\n\n\n.", - "F10\n\n\n\n\n\n-", - { - "c": "#969696" - }, - "F11\n&\n\n\n\n\nShift" - ], - [ - { - "a": 7 - }, - "Ctrl", - "Ctr+Sh", - "Win", - "Alt", - { - "c": "#ff0000" - }, - "Numers", - { - "c": "#000000", - "t": "#ffffff", - "w": 2 - }, - "Space", - { - "c": "#ff0000", - "t": "#000000", - "a": 5 - }, - "Extras\n\n\n\n\n\nSymbols", - { - "c": "#0075ff", - "a": 7 - }, - "Enter", - { - "c": "#969696" - }, - "Win", - "Ctr+Sh", - { - "a": 5 - }, - "\n|\n\n\n\n\nCtrl" - ] -] \ No newline at end of file diff --git a/keyboards/handwired/planck/keymaps/wholteza/keymap.c b/keyboards/handwired/planck/keymaps/wholteza/keymap.c deleted file mode 100644 index 9e07b3de5bc..00000000000 --- a/keyboards/handwired/planck/keymaps/wholteza/keymap.c +++ /dev/null @@ -1,37 +0,0 @@ -#include QMK_KEYBOARD_H -#include "keymap_swedish.h" - -enum layer_names { - _BASE, - _NUM, - _SYM, - _EXTRAS -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = LAYOUT( - KC_ESC, SE_Q, SE_W, SE_F, SE_P, SE_G, SE_J, SE_L, SE_U, SE_Y, SE_ODIA, SE_ARNG, - KC_BSPC, SE_A, SE_R, SE_S, SE_T, SE_D, SE_H, SE_N, SE_E, SE_I, SE_O, SE_ADIA, - KC_LSFT, SE_Z, SE_X, SE_C, SE_V, SE_B, SE_K, SE_M, SE_COMM, SE_DOT, SE_MINS, KC_LSFT, - KC_LCTL, LCTL(KC_LSFT), KC_LGUI, KC_LALT, MO(1), KC_SPC, MO(2), KC_ENT, KC_LGUI, LCTL(KC_LSFT), KC_LCTL - ), - [_NUM] = LAYOUT( - KC_TAB, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS, - KC_TRNS, KC_TRNS, KC_LEFT , KC_UP, KC_DOWN, KC_RIGHT, KC_HOME, KC_END, KC_PGDN, KC_PGUP, KC_TRNS, KC_F12, - KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(3), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS - ), - [_SYM] = LAYOUT( - KC_DEL, SE_EXLM, SE_AT, SE_DLR, SE_TILD, SE_CIRC, SE_LCBR, SE_LBRC, SE_RBRC, SE_RCBR, SE_LABK, KC_TRNS, - KC_TRNS, KC_TRNS, SE_DQUO, SE_HASH, SE_PERC, SE_QUOT, SE_SLSH, SE_LPRN, SE_RPRN, SE_EQL, SE_RABK, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, SE_ASTR, SE_BSLS, SE_GRV, KC_TRNS, KC_TRNS, KC_TRNS, SE_AMPR, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, SE_PIPE - ), - [_EXTRAS] = LAYOUT( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS - ) -}; - diff --git a/keyboards/handwired/planck/keymaps/wholteza/readme.md b/keyboards/handwired/planck/keymaps/wholteza/readme.md deleted file mode 100644 index d812ec00b9f..00000000000 --- a/keyboards/handwired/planck/keymaps/wholteza/readme.md +++ /dev/null @@ -1,7 +0,0 @@ -[Wholteza](https://github.com/wholteza)'s handwired planck layout - -![keyboard-layout-editor.com layout](https://i.imgur.com/7kJDaVS.png) - -This is a swedish layout using [colemak-se](https://github.com/motform/colemak-se) and a symbols layer tailored towards developers. - -In addition to using colemak-se it also has backspace in place of caps lock to reduce the need of moving your hands. From 6e931dc85df9f9d54f5f8fbd2b8ba978f5826876 Mon Sep 17 00:00:00 2001 From: wholteza Date: Sun, 20 Jul 2025 12:49:43 +0200 Subject: [PATCH 19/21] Changes related to pr checklist --- keyboards/handwired/planck/keyboard.json | 88 +++++++++---------- .../handwired/planck/keymaps/default/keymap.c | 2 +- keyboards/handwired/planck/readme.md | 20 +++-- 3 files changed, 58 insertions(+), 52 deletions(-) diff --git a/keyboards/handwired/planck/keyboard.json b/keyboards/handwired/planck/keyboard.json index 9da6b6ec547..dde4ecb9e6a 100644 --- a/keyboards/handwired/planck/keyboard.json +++ b/keyboards/handwired/planck/keyboard.json @@ -1,10 +1,8 @@ { + "manufacturer": "OLKB", "keyboard_name": "Planck", "maintainer": "Wholteza ", - "manufacturer": "OLKB", - "url": "https://blog.roastpotatoes.co/guide/2015/11/04/how-to-handwire-a-planck/", "bootloader": "halfkay", - "processor": "atmega32u4", "diode_direction": "COL2ROW", "features": { "bootmagic": true, @@ -16,61 +14,63 @@ "cols": ["C7", "D6", "D7", "B4", "B5", "B6", "F7", "F6", "F5", "F4", "F1", "F0"], "rows": ["E6", "B3", "B7", "D0"] }, + "processor": "atmega32u4", + "url": "https://blog.roastpotatoes.co/guide/2015/11/04/how-to-handwire-a-planck/", "usb": { "device_version": "1.0.0", - "pid": "0x1234", + "pid": "0x0053", "vid": "0xFEED" }, "layouts": { "LAYOUT": { "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [0, 4], "x": 4, "y": 0}, - {"matrix": [0, 5], "x": 5, "y": 0}, - {"matrix": [0, 6], "x": 6, "y": 0}, - {"matrix": [0, 7], "x": 7, "y": 0}, - {"matrix": [0, 8], "x": 8, "y": 0}, - {"matrix": [0, 9], "x": 9, "y": 0}, + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0}, + {"matrix": [0, 5], "x": 5, "y": 0}, + {"matrix": [0, 6], "x": 6, "y": 0}, + {"matrix": [0, 7], "x": 7, "y": 0}, + {"matrix": [0, 8], "x": 8, "y": 0}, + {"matrix": [0, 9], "x": 9, "y": 0}, {"matrix": [0, 10], "x": 10, "y": 0}, {"matrix": [0, 11], "x": 11, "y": 0}, - {"matrix": [1, 0], "x": 0, "y": 1}, - {"matrix": [1, 1], "x": 1, "y": 1}, - {"matrix": [1, 2], "x": 2, "y": 1}, - {"matrix": [1, 3], "x": 3, "y": 1}, - {"matrix": [1, 4], "x": 4, "y": 1}, - {"matrix": [1, 5], "x": 5, "y": 1}, - {"matrix": [1, 6], "x": 6, "y": 1}, - {"matrix": [1, 7], "x": 7, "y": 1}, - {"matrix": [1, 8], "x": 8, "y": 1}, - {"matrix": [1, 9], "x": 9, "y": 1}, + {"matrix": [1, 0], "x": 0, "y": 1}, + {"matrix": [1, 1], "x": 1, "y": 1}, + {"matrix": [1, 2], "x": 2, "y": 1}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [1, 4], "x": 4, "y": 1}, + {"matrix": [1, 5], "x": 5, "y": 1}, + {"matrix": [1, 6], "x": 6, "y": 1}, + {"matrix": [1, 7], "x": 7, "y": 1}, + {"matrix": [1, 8], "x": 8, "y": 1}, + {"matrix": [1, 9], "x": 9, "y": 1}, {"matrix": [1, 10], "x": 10, "y": 1}, {"matrix": [1, 11], "x": 11, "y": 1}, - {"matrix": [2, 0], "x": 0, "y": 2}, - {"matrix": [2, 1], "x": 1, "y": 2}, - {"matrix": [2, 2], "x": 2, "y": 2}, - {"matrix": [2, 3], "x": 3, "y": 2}, - {"matrix": [2, 4], "x": 4, "y": 2}, - {"matrix": [2, 5], "x": 5, "y": 2}, - {"matrix": [2, 6], "x": 6, "y": 2}, - {"matrix": [2, 7], "x": 7, "y": 2}, - {"matrix": [2, 8], "x": 8, "y": 2}, - {"matrix": [2, 9], "x": 9, "y": 2}, + {"matrix": [2, 0], "x": 0, "y": 2}, + {"matrix": [2, 1], "x": 1, "y": 2}, + {"matrix": [2, 2], "x": 2, "y": 2}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [2, 4], "x": 4, "y": 2}, + {"matrix": [2, 5], "x": 5, "y": 2}, + {"matrix": [2, 6], "x": 6, "y": 2}, + {"matrix": [2, 7], "x": 7, "y": 2}, + {"matrix": [2, 8], "x": 8, "y": 2}, + {"matrix": [2, 9], "x": 9, "y": 2}, {"matrix": [2, 10], "x": 10, "y": 2}, {"matrix": [2, 11], "x": 11, "y": 2}, - {"matrix": [3, 0], "x": 0, "y": 3}, - {"matrix": [3, 1], "x": 1, "y": 3}, - {"matrix": [3, 2], "x": 2, "y": 3}, - {"matrix": [3, 3], "x": 3, "y": 3}, - {"matrix": [3, 4], "x": 4, "y": 3}, - {"matrix": [3, 5], "x": 5, "y": 3}, - {"matrix": [3, 7], "x": 7, "y": 3}, - {"matrix": [3, 8], "x": 8, "y": 3}, - {"matrix": [3, 9], "x": 9, "y": 3}, + {"matrix": [3, 0], "x": 0, "y": 3}, + {"matrix": [3, 1], "x": 1, "y": 3}, + {"matrix": [3, 2], "x": 2, "y": 3}, + {"matrix": [3, 3], "x": 3, "y": 3}, + {"matrix": [3, 4], "x": 4, "y": 3}, + {"matrix": [3, 5], "x": 5, "y": 3}, + {"matrix": [3, 7], "x": 7, "y": 3}, + {"matrix": [3, 8], "x": 8, "y": 3}, + {"matrix": [3, 9], "x": 9, "y": 3}, {"matrix": [3, 10], "x": 10, "y": 3}, - {"matrix": [3, 11], "x": 11, "y": 3}, + {"matrix": [3, 11], "x": 11, "y": 3} ] } } diff --git a/keyboards/handwired/planck/keymaps/default/keymap.c b/keyboards/handwired/planck/keymaps/default/keymap.c index b89d50b20cf..0891a733a7d 100644 --- a/keyboards/handwired/planck/keymaps/default/keymap.c +++ b/keyboards/handwired/planck/keymaps/default/keymap.c @@ -1,4 +1,4 @@ -/* Copyright 2025 Zackarias Montell @Wholteza +/* Copyright 2025 Zackarias Montel (@Wholteza) * * 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 diff --git a/keyboards/handwired/planck/readme.md b/keyboards/handwired/planck/readme.md index 86b1902f5d8..d47a1beeb77 100644 --- a/keyboards/handwired/planck/readme.md +++ b/keyboards/handwired/planck/readme.md @@ -2,20 +2,26 @@ ![plank handwired](https://i.imgur.com/khseWs7.jpeg) -A compact 40% (12x4) ortholinear keyboard kit sold by OLKB before they developed the rev1 PCB. +A compact 40% (12x4) ortholinear keyboard kit sold by OLKB before the PCB was released. Keyboard Maintainer: [Wholteza](https://github.com/wholteza) Hardware Supported: [Teensy 2.0](https://www.pjrc.com/store/teensy.html) - -## Compile and Flash +Hardware Availability: [PJRC](https://www.pjrc.com/store/teensy.html) Make example for this keyboard (after setting up your build environment): - qmk compile --keyboard handwired/planck --keymap default + make handwired/planck:default -To flash the keyaboard, use the Teensy Loader application provided by [PJRC](https://www.pjrc.com/teensy/loader.html). +Flashing example for this keyboard: -## Pinout + make handwired/planck:default:flash -The pinout can be found in the `keyboard.json` and looking at your keyboards wiring (flipped with the keycaps facing down) column and row 0 is **top left**. +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (top right) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the front of the PCB. +* **Keycode in layout**: Press the key mapped to `QK_BOOT`. With the default keymap press these keys in order: "lower" + "raise" + "escape". From 765573412027dda363594a5e3895924a75ed78fb Mon Sep 17 00:00:00 2001 From: wholteza Date: Sun, 20 Jul 2025 13:03:15 +0200 Subject: [PATCH 20/21] Removed fourth layer --- keyboards/handwired/planck/keymaps/default/keymap.c | 11 ++--------- keyboards/handwired/planck/readme.md | 6 +++--- 2 files changed, 5 insertions(+), 12 deletions(-) diff --git a/keyboards/handwired/planck/keymaps/default/keymap.c b/keyboards/handwired/planck/keymaps/default/keymap.c index 0891a733a7d..3783d37f95b 100644 --- a/keyboards/handwired/planck/keymaps/default/keymap.c +++ b/keyboards/handwired/planck/keymaps/default/keymap.c @@ -18,8 +18,7 @@ enum layer_names { _BASE, _NUM, - _SYM, - _EXTRAS + _SYM }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { @@ -39,12 +38,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY - ), - [_EXTRAS] = LAYOUT( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, QK_BOOT ) }; diff --git a/keyboards/handwired/planck/readme.md b/keyboards/handwired/planck/readme.md index d47a1beeb77..3bdbf872707 100644 --- a/keyboards/handwired/planck/readme.md +++ b/keyboards/handwired/planck/readme.md @@ -22,6 +22,6 @@ See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_to Enter the bootloader in 3 ways: -* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (top right) and plug in the keyboard -* **Physical reset button**: Briefly press the button on the front of the PCB. -* **Keycode in layout**: Press the key mapped to `QK_BOOT`. With the default keymap press these keys in order: "lower" + "raise" + "escape". +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (The left key closest to the USB Port) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available From c1a4a64c54603aa24b4349a1f34ea0149974e64d Mon Sep 17 00:00:00 2001 From: wholteza Date: Sun, 20 Jul 2025 13:04:03 +0200 Subject: [PATCH 21/21] Removed redundant readme --- keyboards/handwired/planck/keymaps/default/readme.md | 3 --- 1 file changed, 3 deletions(-) delete mode 100644 keyboards/handwired/planck/keymaps/default/readme.md diff --git a/keyboards/handwired/planck/keymaps/default/readme.md b/keyboards/handwired/planck/keymaps/default/readme.md deleted file mode 100644 index fdfa831d420..00000000000 --- a/keyboards/handwired/planck/keymaps/default/readme.md +++ /dev/null @@ -1,3 +0,0 @@ -# The Default Planck Layout - -Maintained by [Wholteza](https://github.com/wholteza).