From 32725dae5ba50f41bf16a80083727f08beaea7c6 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Mon, 11 Jul 2016 17:49:12 -0500 Subject: Created replicaJunction keymaps. --- keyboards/atreus/keymaps/replicaJunction/keymap.c | 75 ++++ .../ergodox_ez/keymaps/replicaJunction/keymap.c | 414 +++++++++++++++++++++ 2 files changed, 489 insertions(+) create mode 100644 keyboards/atreus/keymaps/replicaJunction/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/replicaJunction/keymap.c (limited to 'keyboards') diff --git a/keyboards/atreus/keymaps/replicaJunction/keymap.c b/keyboards/atreus/keymaps/replicaJunction/keymap.c new file mode 100644 index 000000000..7ff8933e8 --- /dev/null +++ b/keyboards/atreus/keymaps/replicaJunction/keymap.c @@ -0,0 +1,75 @@ +// this is the style you want to emulate. +// This is the canonical layout file for the Quantum project. If you want to add another keyboard, + +#include "atreus.h" + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. + +// Note that whatever is set as layer 0 will be the default layer of the keyboard. + +#define _CO 0 // Colemak +#define _QW 1 // QWERTY +#define _NU 2 // Numpad +#define _FN 3 // Function +#define _DV 4 // Dvorak + +// Quick alias for visual sake +#define _______ KC_TRNS + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[_CO] = { + {KC_Q, KC_W, KC_F, KC_P, KC_B, _______, KC_J, KC_L, KC_U, KC_Y, KC_SCLN }, + {KC_A, KC_R, KC_S, KC_T, KC_G, _______, KC_M, KC_N, KC_E, KC_I, KC_O }, + {KC_Z, KC_X, KC_C, KC_D, KC_V, KC_LCTL, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH }, + {KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, KC_LALT, KC_SPC, MO(_NU), KC_MINS, KC_QUOT, KC_ENT } +}, + +[_DV] = { + {KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, _______, KC_F, KC_G, KC_C, KC_R, KC_L }, + {KC_A, KC_O, KC_E, KC_U, KC_I, _______, KC_D, KC_H, KC_T, KC_N, KC_S }, + {KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_LCTL, KC_B, KC_M, KC_W, KC_V, KC_Z }, + {KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, KC_LALT, KC_SPC, MO(_NU), KC_MINS, KC_SLSH, KC_ENT } +}, + +[_QW] = { /* Qwerty */ + {KC_Q, KC_W, KC_E, KC_R, KC_T, _______, KC_Y, KC_U, KC_I, KC_O, KC_P }, + {KC_A, KC_S, KC_D, KC_F, KC_G, _______, KC_H, KC_J, KC_K, KC_L, KC_SCLN }, + {KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LCTL, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH }, + {KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC,KC_LALT, KC_SPC, MO(_NU), KC_MINS, KC_QUOT, KC_ENT } +}, + +[_NU] = { /* Numbers and symbols */ + {KC_EXLM, KC_AT, KC_UP, KC_LCBR, KC_RCBR, _______, KC_PGUP, KC_7, KC_8, KC_9, KC_ASTR}, + {KC_HASH, KC_LEFT, KC_DOWN, KC_RGHT, KC_DLR, _______, KC_PGDN, KC_4, KC_5, KC_6, KC_PLUS}, + {KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, KC_AMPR, KC_LCTL, KC_TILD, KC_1, KC_2, KC_3, KC_BSLS}, + {MO(_FN), KC_INS, KC_LGUI, KC_LSFT, KC_DEL, KC_LALT, KC_SPC, _______, KC_DOT, KC_0, KC_EQL} +}, + +[_FN] = { /* Functions */ + {KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, _______, KC_UP, KC_F7, KC_F8, KC_F9, KC_F10}, + {KC_DELT, KC_LEFT, KC_DOWN, KC_RGHT, KC_DOWN, _______, KC_DOWN, KC_F4, KC_F5, KC_F6, KC_F11}, + {_______, _______, _______, _______, _______, KC_LCTL, _______, KC_F1, KC_F2, KC_F3, KC_F12}, + {_______, _______, KC_LGUI, KC_LSFT, KC_BSPC, KC_LALT, KC_SPC, _______, _______, _______, RESET} +}}; + +const uint16_t PROGMEM fn_actions[] = { + +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; diff --git a/keyboards/ergodox_ez/keymaps/replicaJunction/keymap.c b/keyboards/ergodox_ez/keymaps/replicaJunction/keymap.c new file mode 100644 index 000000000..e52d04dd6 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/replicaJunction/keymap.c @@ -0,0 +1,414 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +/* + * Keyboard: Ergodox + * Keymap: replicaJunction + * Version: 1.0 + * + * This keymap is designed to complement my Atreus keyboard layout, found in keyboards/atreus. + * The Atreus keyboard is a 40% board whose design was heavily influenced by the Ergodox, and I now + * have both keyboards, so I've designed these layouts in an effort to make switching between the + * two as easy as possible. + * + * The default key layout in this keymap is Colemak-ModDH. Information on that layout can be found + * here: https://colemakmods.github.io/mod-dh/ + */ + +#define BASE 0 // default layer +#define CODH 1 // Colemak +#define QWRT 2 // QWERTY layer +#define SYMB 3 // symbols +#define MDIA 4 // media keys +#define UTIL 5 // keyboard utilities +#define NUMP 6 // numpad +#define GAME 7 // mouse overlay for gamins + +#define _______ KC_TRNS // Simple alias that just makes the keymaps a bit easier to look at + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* + * Keymap: Colemak-ModDH + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | ~SYMB| 6 | 7 | 8 | 9 | 0 | ' | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | \ | Q | W | F | P | B | Home | | BkSp | J | L | U | Y | ; | = | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Tab | A | R | S | T | G |------| |------| M | N | E | I | O | - | + * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| + * | LShft | Z | X | C | D | V | | | | K | H | , | , | / | RShft | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LGui | [ | ] |CtlShf| SYMB | | Left | Up | Down | Right| \ | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LCtrl| LAlt | | MDIA | RAlt | + * ,------|------|------| |------+------+------. + * | Ctl/ | Alt/ | Home | | PgUp | | SYMB/| + * | BkSp | Del |------| |------| Enter| Space| + * | | | NUMP | | PgDn | | | + * `--------------------' `--------------------' + */ + +[CODH] = KEYMAP( + // left hand + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, + KC_BSLS,KC_Q, KC_W, KC_F, KC_P, KC_B, KC_HOME, + KC_TAB, KC_A, KC_R, KC_S, KC_T, KC_G, + KC_LSFT,KC_Z, KC_X, KC_C, KC_D, KC_V, ALL_T(KC_NO), + KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), MO(SYMB), + + KC_LCTL, KC_LALT, + KC_HOME, + CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(NUMP), + // right hand + TG(SYMB), KC_6, KC_7, KC_8, KC_9, KC_0, KC_QUOT, + KC_BSPC, KC_J, KC_L, KC_U, KC_Y, KC_SCLN,KC_EQL, + KC_M, KC_N, KC_E, KC_I, KC_O, KC_MINS, + KC_BSLS, KC_K, KC_H, KC_DOT, KC_COMM,KC_SLSH,KC_RSFT, + KC_LEFT,KC_UP, KC_DOWN,KC_RGHT,KC_BSLS, + + MO(MDIA), KC_RALT, + KC_PGUP, + KC_PGDN, KC_ENT, LT(SYMB,KC_SPC) + ), + + /* + * Keymap: Dvorak layout + * + * The right index backspace is a nod to my TypeMatrix keyboard, which has + * Backspace in the center. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | ~SYMB| 6 | 7 | 8 | 9 | 0 | / | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | \ | ' | , | . | P | Y | Home | | BkSp | F | G | C | R | L | = | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Tab | A | O | E | U | I |------| |------| D | H | T | N | S | - | + * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| + * | LShft | ; | Q | J | K | X | | | | B | M | W | V | Z | RShft | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LGui | [ | ] |CtlShf| SYMB | | Left | Up | Down | Right| \ | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LCtrl| LAlt | | MDIA | RAlt | + * ,------|------|------| |------+------+------. + * | Ctl/ | Alt/ | Home | | PgUp | | SYMB/| + * | BkSp | Del |------| |------| Enter| Space| + * | | | NUMP | | PgDn | | | + * `--------------------' `--------------------' + */ + +// BASE +[BASE] = KEYMAP( + // left hand + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, + KC_BSLS,KC_QUOT,KC_COMM, KC_DOT, KC_P, KC_Y, KC_HOME, + KC_TAB, KC_A, KC_O, KC_E, KC_U, KC_I, + KC_LSFT,KC_SCLN,KC_Q, KC_J, KC_K, KC_X, ALL_T(KC_NO), + KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), MO(SYMB), + + KC_LCTL, KC_LALT, + KC_HOME, + CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(NUMP), + // right hand + TG(SYMB), KC_6, KC_7, KC_8, KC_9, KC_0, KC_SLSH, + KC_BSPC, KC_F, KC_G, KC_C, KC_R, KC_L, KC_EQL, + KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, + KC_BSLS, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, + KC_LEFT,KC_UP, KC_DOWN,KC_RGHT,KC_BSLS, + + MO(MDIA), KC_RALT, + KC_PGUP, + KC_PGDN, KC_ENT, LT(SYMB,KC_SPC) + ), + + /* + * Keymap: QWERTY layout. + * + * This is optimized for gaming, not typing, so there aren't as many macros + * as the Dvorak layer. Some of the keys have also been moved to "game- + * like" locations, such as making the spacebar available to the left thumb, + * and repositioning the arrow keys at the bottom right corner. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | Esc | |~SYMB | 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | LShift | Q | W | E | R | T | +L1 | | BkSp | Y | U | I | O | P | ] | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Tab | A | S | D | F | G |------| |------| H | J | K | L | ; | ' | + * |--------+------+------+------+------+------| FN2 | | ~L1 |------+------+------+------+------+--------| + * | LShft | Z | X | C | V | B | | | | N | M | , | . | Up | RShft | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LCtrl| ` | \ |CtlShf| SYMB | | SYMB | / | Left | Down | Right| + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LCtrl| LAlt | | MDIA | ~GAME| + * ,------|------|------| |------+------+------. + * | | | Home | | PgUp | | SYMB/ + * | Space| LAlt |------| |------| Enter| Space| + * | | | End | | PgDn | | | + * `--------------------' `--------------------' + */ +[QWRT] = KEYMAP( // Layer1: QWERTY + // left hand + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, + KC_LSFT,KC_Q, KC_W, KC_E, KC_R, KC_T, KC_HOME, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), + KC_LCTL,KC_GRV, KC_SLSH,LCTL(KC_LSFT), MO(SYMB), + + KC_LCTL,KC_LALT, + KC_HOME, + KC_SPC, KC_LALT, KC_END, + // right hand + TG(SYMB), KC_6, KC_7, KC_8, KC_9, KC_0, KC_RBRC, + KC_BSPC,KC_Y, KC_U, KC_I, KC_O, KC_P, KC_EQL, + KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_MINS, + KC_END, KC_N, KC_M, KC_COMM,KC_DOT, KC_UP ,KC_RSFT, + MO(SYMB),KC_UP, KC_LEFT,KC_DOWN,KC_RGHT, + + MO(MDIA),TG(GAME), + KC_PGUP, + KC_PGDN,KC_ENT,LT(SYMB,KC_SPC) + ), + + /* + * Keymap: Symbol / navigation Layer + * + * Inspired by Atreus. + * Note the two keys on the left thumb cluster. These change the "default" layer between key layouts. + * The RESET button also resets the Teensy, but note bug #164. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | Up | { | } | | | | | Home | Up | End | | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | / | | | \ | $ |------| |------| | Left | Down | Right| | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | [ | ] | ( | ) | & | | | | | PgUp | | PgDn | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | SYMB | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * |Dvorak|QWERTY| | | RESET| + * ,------|------|------| |------+------+------. + * | | |Colemk| | | | | + * | | |------| |------| | SYMB | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + _______,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, + _______,KC_EXLM,KC_AT, KC_UP, KC_LCBR,KC_RCBR,_______, + _______,KC_HASH,KC_SLSH,KC_PIPE,KC_BSLS,KC_DLR, + _______,KC_LBRC,KC_RBRC,KC_LPRN,KC_RPRN,KC_AMPR,_______, + _______,_______,_______,_______,_______, + + DF(BASE),DF(QWRT), + DF(CODH), + _______, _______, _______, + + // right hand + _______,KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + _______,_______,KC_HOME,KC_UP, KC_END, _______,KC_F12, + _______,KC_LEFT,KC_DOWN,KC_RGHT,_______,_______, + _______,_______,KC_PGUP,_______,KC_PGDN,_______,_______, + _______,_______,_______,_______,_______, + + _______, RESET, + _______, + _______, _______, _______ +), +/* Keymap: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, KC_MS_U, _______, _______, _______, + _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, KC_BTN1, KC_BTN2, + _______, _______, + _______, + _______, _______, _______, + // right hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, KC_MPLY, + _______, _______, _______, KC_MPRV, KC_MNXT, _______, _______, + KC_VOLU, KC_VOLD, KC_MUTE, _______, _______, + _______, _______, + _______, + _______, _______, KC_WBAK +), + +/* + * Keymap: Number pad. + * + * Note that the number keys here are actually numpad keystrokes. This often doesn't matter, but it may be relevant in a few cases. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | 7 | 8 | 9 | * | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | 1 | 2 | 3 | / | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | 0 | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | Enter| + * | | | | | | | | + * `--------------------' `--------------------' + */ +[NUMP] = KEYMAP( + // left hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + + _______,_______, + _______, + _______,_______,_______, + // right hand + _______,_______,_______,_______,_______,_______,_______, + _______,KC_UP, KC_P7, KC_P8, KC_P9, KC_PAST,KC_F12, + KC_DOWN,KC_P4, KC_P5, KC_P6, KC_PPLS,_______, + _______,KC_AMPR,KC_P1, KC_P2, KC_P3, KC_PSLS,_______, + KC_P0, KC_PDOT,KC_P0, KC_EQL, _______, + + _______, _______, + _______, + _______, _______, KC_PENT + ), + + /* + * Keymap: Gaming + * + * This is mostly a mouse overlay for the right hand while the left hand uses the QWERTY layout. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | |WhlUp | MsUp |WhlDn | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| |MsLeft|MsDown|MsRght| | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | |MClick| | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | ~GAME| + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------|RClick|LClick| + * | | | | | | | | + * `--------------------' `--------------------' + */ +[GAME] = KEYMAP( + // left hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + + _______,_______, + _______, + _______,_______,_______, + + // right hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_WH_U, KC_MS_U, KC_WH_D, _______, _______, + _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + KC_BTN3, _______, _______, _______, _______, + _______, _______, + _______, + _______, KC_BTN2, KC_BTN1 + ), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + case BASE: + ergodox_right_led_1_on(); + break; + case QWRT: + ergodox_right_led_2_on(); + case SYMB: + ergodox_right_led_3_on(); + break; + case GAME: + ergodox_right_led_1_on(); + ergodox_right_led_2_on(); + default: + // none + break; + } + +}; -- cgit v1.2.3-24-g4f1b From f90d89458c9ff8e33f1739c06681f28ffd95b5f9 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Mon, 11 Jul 2016 17:49:12 -0500 Subject: Created replicaJunction keymaps. --- keyboards/atreus/keymaps/replicaJunction/keymap.c | 89 +++++ .../ergodox_ez/keymaps/replicaJunction/keymap.c | 414 +++++++++++++++++++++ 2 files changed, 503 insertions(+) create mode 100644 keyboards/atreus/keymaps/replicaJunction/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/replicaJunction/keymap.c (limited to 'keyboards') diff --git a/keyboards/atreus/keymaps/replicaJunction/keymap.c b/keyboards/atreus/keymaps/replicaJunction/keymap.c new file mode 100644 index 000000000..79b2738aa --- /dev/null +++ b/keyboards/atreus/keymaps/replicaJunction/keymap.c @@ -0,0 +1,89 @@ +#include "atreus.h" + +/* + * Keyboard: Atreus + * Keymap: replicaJunction + * Version: 0.1 + * + * This keymap is designed to complement my Ergodox keyboard layout, found in keyboards/ergodox_ez. + * The Atreus keyboard is a 40% board whose design was heavily influenced by the Ergodox, and I now + * have both keyboards, so I've designed these layouts in an effort to make switching between the + * two as easy as possible. + * + * Clearly, the Atreus is the limiting factor in this equation, so I've taken heavy advantage of + * function and dual-role keys. + * + * The default key layout in this keymap is Colemak-ModDH. Information on that layout can be found + * here: https://colemakmods.github.io/mod-dh/ + */ + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. + +// Note that whatever is set as layer 0 will be the default layer of the keyboard. + +#define _CO 0 // Colemak +#define _QW 1 // QWERTY +#define _NU 2 // Numpad +#define _FN 3 // Function +#define _DV 4 // Dvorak + +// Quick alias for visual sake +#define _______ KC_TRNS + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[_CO] = { + {KC_Q, KC_W, KC_F, KC_P, KC_B, _______, KC_J, KC_L, KC_U, KC_Y, KC_SCLN }, + {KC_A, KC_R, KC_S, KC_T, KC_G, _______, KC_M, KC_N, KC_E, KC_I, KC_O }, + {KC_Z, KC_X, KC_C, KC_D, KC_V, KC_LCTL, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH }, + {KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, KC_LALT, KC_SPC, MO(_NU), KC_MINS, KC_QUOT, KC_ENT } +}, + +[_DV] = { + {KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, _______, KC_F, KC_G, KC_C, KC_R, KC_L }, + {KC_A, KC_O, KC_E, KC_U, KC_I, _______, KC_D, KC_H, KC_T, KC_N, KC_S }, + {KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_LCTL, KC_B, KC_M, KC_W, KC_V, KC_Z }, + {KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, KC_LALT, KC_SPC, MO(_NU), KC_MINS, KC_SLSH, KC_ENT } +}, + +[_QW] = { /* Qwerty */ + {KC_Q, KC_W, KC_E, KC_R, KC_T, _______, KC_Y, KC_U, KC_I, KC_O, KC_P }, + {KC_A, KC_S, KC_D, KC_F, KC_G, _______, KC_H, KC_J, KC_K, KC_L, KC_SCLN }, + {KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LCTL, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH }, + {KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, KC_LALT, KC_SPC, MO(_NU), KC_MINS, KC_QUOT, KC_ENT } +}, + +[_NU] = { /* Numbers and symbols */ + {KC_EXLM, KC_HOME, KC_UP, KC_END, KC_PGUP, _______, KC_PGUP, KC_7, KC_8, KC_9, KC_ASTR}, + {KC_HASH, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______, KC_PGDN, KC_4, KC_5, KC_6, KC_PLUS}, + {KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, KC_AMPR, KC_LCTL, KC_TILD, KC_1, KC_2, KC_3, KC_BSLS}, + {MO(_FN), KC_INS, KC_LGUI, KC_LSFT, KC_DEL, KC_LALT, KC_SPC, _______, KC_DOT, KC_0, KC_EQL} +}, + +[_FN] = { /* Functions */ + {KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, _______, KC_UP, KC_F7, KC_F8, KC_F9, KC_F10}, + {KC_DELT, KC_LEFT, KC_DOWN, KC_RGHT, KC_DOWN, _______, KC_DOWN, KC_F4, KC_F5, KC_F6, KC_F11}, + {_______, _______, _______, _______, _______, KC_LCTL, _______, KC_F1, KC_F2, KC_F3, KC_F12}, + {_______, _______, KC_LGUI, KC_LSFT, KC_BSPC, KC_LALT, KC_SPC, _______, _______, _______, RESET} +}}; + +const uint16_t PROGMEM fn_actions[] = { + +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; diff --git a/keyboards/ergodox_ez/keymaps/replicaJunction/keymap.c b/keyboards/ergodox_ez/keymaps/replicaJunction/keymap.c new file mode 100644 index 000000000..be2290567 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/replicaJunction/keymap.c @@ -0,0 +1,414 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +/* + * Keyboard: Ergodox + * Keymap: replicaJunction + * Version: 1.0 + * + * This keymap is designed to complement my Atreus keyboard layout, found in keyboards/atreus. + * The Atreus keyboard is a 40% board whose design was heavily influenced by the Ergodox, and I now + * have both keyboards, so I've designed these layouts in an effort to make switching between the + * two as easy as possible. + * + * The default key layout in this keymap is Colemak-ModDH. Information on that layout can be found + * here: https://colemakmods.github.io/mod-dh/ + */ + +#define BASE 0 // default layer +#define CODH 1 // Colemak +#define QWRT 2 // QWERTY layer +#define SYMB 3 // symbols +#define MDIA 4 // media keys +#define UTIL 5 // keyboard utilities +#define NUMP 6 // numpad +#define GAME 7 // mouse overlay for gaming + +#define _______ KC_TRNS // Simple alias that just makes the keymaps a bit easier to look at + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* + * Keymap: Colemak-ModDH + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | ~SYMB| 6 | 7 | 8 | 9 | 0 | ' | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | \ | Q | W | F | P | B | Home | | BkSp | J | L | U | Y | ; | = | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Tab | A | R | S | T | G |------| |------| M | N | E | I | O | - | + * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| + * | LShft | Z | X | C | D | V | | | | K | H | , | , | / | RShft | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LGui | [ | ] |CtlShf| SYMB | | Left | Up | Down | Right| \ | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LCtrl| LAlt | | MDIA | RAlt | + * ,------|------|------| |------+------+------. + * | Ctl/ | Alt/ | Home | | PgUp | | SYMB/| + * | BkSp | Del |------| |------| Enter| Space| + * | | | NUMP | | PgDn | | | + * `--------------------' `--------------------' + */ + +[CODH] = KEYMAP( + // left hand + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, + KC_BSLS,KC_Q, KC_W, KC_F, KC_P, KC_B, KC_HOME, + KC_TAB, KC_A, KC_R, KC_S, KC_T, KC_G, + KC_LSFT,KC_Z, KC_X, KC_C, KC_D, KC_V, ALL_T(KC_NO), + KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), MO(SYMB), + + KC_LCTL, KC_LALT, + KC_HOME, + CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(NUMP), + // right hand + TG(SYMB), KC_6, KC_7, KC_8, KC_9, KC_0, KC_QUOT, + KC_BSPC, KC_J, KC_L, KC_U, KC_Y, KC_SCLN,KC_EQL, + KC_M, KC_N, KC_E, KC_I, KC_O, KC_MINS, + KC_BSLS, KC_K, KC_H, KC_DOT, KC_COMM,KC_SLSH,KC_RSFT, + KC_LEFT,KC_UP, KC_DOWN,KC_RGHT,KC_BSLS, + + MO(MDIA), KC_RALT, + KC_PGUP, + KC_PGDN, KC_ENT, LT(SYMB,KC_SPC) + ), + + /* + * Keymap: Dvorak layout + * + * The right index backspace is a nod to my TypeMatrix keyboard, which has + * Backspace in the center. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | ~SYMB| 6 | 7 | 8 | 9 | 0 | / | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | \ | ' | , | . | P | Y | Home | | BkSp | F | G | C | R | L | = | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Tab | A | O | E | U | I |------| |------| D | H | T | N | S | - | + * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| + * | LShft | ; | Q | J | K | X | | | | B | M | W | V | Z | RShft | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LGui | [ | ] |CtlShf| SYMB | | Left | Up | Down | Right| \ | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LCtrl| LAlt | | MDIA | RAlt | + * ,------|------|------| |------+------+------. + * | Ctl/ | Alt/ | Home | | PgUp | | SYMB/| + * | BkSp | Del |------| |------| Enter| Space| + * | | | NUMP | | PgDn | | | + * `--------------------' `--------------------' + */ + +// BASE +[BASE] = KEYMAP( + // left hand + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, + KC_BSLS,KC_QUOT,KC_COMM, KC_DOT, KC_P, KC_Y, KC_HOME, + KC_TAB, KC_A, KC_O, KC_E, KC_U, KC_I, + KC_LSFT,KC_SCLN,KC_Q, KC_J, KC_K, KC_X, ALL_T(KC_NO), + KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), MO(SYMB), + + KC_LCTL, KC_LALT, + KC_HOME, + CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(NUMP), + // right hand + TG(SYMB), KC_6, KC_7, KC_8, KC_9, KC_0, KC_SLSH, + KC_BSPC, KC_F, KC_G, KC_C, KC_R, KC_L, KC_EQL, + KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, + KC_BSLS, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, + KC_LEFT,KC_UP, KC_DOWN,KC_RGHT,KC_BSLS, + + MO(MDIA), KC_RALT, + KC_PGUP, + KC_PGDN, KC_ENT, LT(SYMB,KC_SPC) + ), + + /* + * Keymap: QWERTY layout. + * + * This is optimized for gaming, not typing, so there aren't as many macros + * as the Dvorak layer. Some of the keys have also been moved to "game- + * like" locations, such as making the spacebar available to the left thumb, + * and repositioning the arrow keys at the bottom right corner. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | Esc | |~SYMB | 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | LShift | Q | W | E | R | T | +L1 | | BkSp | Y | U | I | O | P | ] | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Tab | A | S | D | F | G |------| |------| H | J | K | L | ; | ' | + * |--------+------+------+------+------+------| FN2 | | ~L1 |------+------+------+------+------+--------| + * | LShft | Z | X | C | V | B | | | | N | M | , | . | Up | RShft | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LCtrl| ` | \ |CtlShf| SYMB | | SYMB | / | Left | Down | Right| + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LCtrl| LAlt | | MDIA | ~GAME| + * ,------|------|------| |------+------+------. + * | | | Home | | PgUp | | SYMB/ + * | Space| LAlt |------| |------| Enter| Space| + * | | | End | | PgDn | | | + * `--------------------' `--------------------' + */ +[QWRT] = KEYMAP( // Layer1: QWERTY + // left hand + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, + KC_LSFT,KC_Q, KC_W, KC_E, KC_R, KC_T, KC_HOME, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), + KC_LCTL,KC_GRV, KC_SLSH,LCTL(KC_LSFT), MO(SYMB), + + KC_LCTL,KC_LALT, + KC_HOME, + KC_SPC, KC_LALT, KC_END, + // right hand + TG(SYMB), KC_6, KC_7, KC_8, KC_9, KC_0, KC_RBRC, + KC_BSPC,KC_Y, KC_U, KC_I, KC_O, KC_P, KC_EQL, + KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_MINS, + KC_END, KC_N, KC_M, KC_COMM,KC_DOT, KC_UP ,KC_RSFT, + MO(SYMB),KC_UP, KC_LEFT,KC_DOWN,KC_RGHT, + + MO(MDIA),TG(GAME), + KC_PGUP, + KC_PGDN,KC_ENT,LT(SYMB,KC_SPC) + ), + + /* + * Keymap: Symbol / navigation Layer + * + * Inspired by Atreus. + * Note the two keys on the left thumb cluster. These change the "default" layer between key layouts. + * The RESET button also resets the Teensy, but note bug #164. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | Up | { | } | | | | | Home | Up | End | | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | / | | | \ | $ |------| |------| | Left | Down | Right| | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | [ | ] | ( | ) | & | | | | | PgUp | | PgDn | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | SYMB | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * |Dvorak|QWERTY| | | RESET| + * ,------|------|------| |------+------+------. + * | | |Colemk| | | | | + * | | |------| |------| | SYMB | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + _______,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, + _______,KC_EXLM,KC_AT, KC_UP, KC_LCBR,KC_RCBR,_______, + _______,KC_HASH,KC_SLSH,KC_PIPE,KC_BSLS,KC_DLR, + _______,KC_LBRC,KC_RBRC,KC_LPRN,KC_RPRN,KC_AMPR,_______, + _______,_______,_______,_______,_______, + + DF(BASE),DF(QWRT), + DF(CODH), + _______, _______, _______, + + // right hand + _______,KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + _______,_______,KC_HOME,KC_UP, KC_END, _______,KC_F12, + _______,KC_LEFT,KC_DOWN,KC_RGHT,_______,_______, + _______,_______,KC_PGUP,_______,KC_PGDN,_______,_______, + _______,_______,_______,_______,_______, + + _______, RESET, + _______, + _______, _______, _______ +), +/* Keymap: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, KC_MS_U, _______, _______, _______, + _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, KC_BTN1, KC_BTN2, + _______, _______, + _______, + _______, _______, _______, + // right hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, KC_MPLY, + _______, _______, _______, KC_MPRV, KC_MNXT, _______, _______, + KC_VOLU, KC_VOLD, KC_MUTE, _______, _______, + _______, _______, + _______, + _______, _______, KC_WBAK +), + +/* + * Keymap: Number pad. + * + * Note that the number keys here are actually numpad keystrokes. This often doesn't matter, but it may be relevant in a few cases. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | 7 | 8 | 9 | * | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | 1 | 2 | 3 | / | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | 0 | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | Enter| + * | | | | | | | | + * `--------------------' `--------------------' + */ +[NUMP] = KEYMAP( + // left hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + + _______,_______, + _______, + _______,_______,_______, + // right hand + _______,_______,_______,_______,_______,_______,_______, + _______,KC_UP, KC_P7, KC_P8, KC_P9, KC_PAST,KC_F12, + KC_DOWN,KC_P4, KC_P5, KC_P6, KC_PPLS,_______, + _______,KC_AMPR,KC_P1, KC_P2, KC_P3, KC_PSLS,_______, + KC_P0, KC_PDOT,KC_P0, KC_EQL, _______, + + _______, _______, + _______, + _______, _______, KC_PENT + ), + + /* + * Keymap: Gaming + * + * This is mostly a mouse overlay for the right hand while the left hand uses the QWERTY layout. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | |WhlUp | MsUp |WhlDn | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| |MsLeft|MsDown|MsRght| | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | |MClick| | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | ~GAME| + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------|RClick|LClick| + * | | | | | | | | + * `--------------------' `--------------------' + */ +[GAME] = KEYMAP( + // left hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + + _______,_______, + _______, + _______,_______,_______, + + // right hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_WH_U, KC_MS_U, KC_WH_D, _______, _______, + _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + KC_BTN3, _______, _______, _______, _______, + _______, _______, + _______, + _______, KC_BTN2, KC_BTN1 + ), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + case BASE: + ergodox_right_led_1_on(); + break; + case QWRT: + ergodox_right_led_2_on(); + case SYMB: + ergodox_right_led_3_on(); + break; + case GAME: + ergodox_right_led_1_on(); + ergodox_right_led_2_on(); + default: + // none + break; + } + +}; -- cgit v1.2.3-24-g4f1b From 77377e2784705a6d31b81dc1a855201ff26700dc Mon Sep 17 00:00:00 2001 From: Joshua T Date: Fri, 15 Jul 2016 17:44:39 -0500 Subject: Fixed a merge conflict --- keyboards/atreus/keymaps/replicaJunction/keymap.c | 9 --------- 1 file changed, 9 deletions(-) (limited to 'keyboards') diff --git a/keyboards/atreus/keymaps/replicaJunction/keymap.c b/keyboards/atreus/keymaps/replicaJunction/keymap.c index 992eabdbd..f2a8ff24c 100644 --- a/keyboards/atreus/keymaps/replicaJunction/keymap.c +++ b/keyboards/atreus/keymaps/replicaJunction/keymap.c @@ -1,6 +1,3 @@ -<<<<<<< HEAD -#include "atreus.h" - /* * Keyboard: Atreus * Keymap: replicaJunction @@ -17,12 +14,6 @@ * The default key layout in this keymap is Colemak-ModDH. Information on that layout can be found * here: https://colemakmods.github.io/mod-dh/ */ -======= -// this is the style you want to emulate. -// This is the canonical layout file for the Quantum project. If you want to add another keyboard, - -#include "atreus.h" ->>>>>>> 32725dae5ba50f41bf16a80083727f08beaea7c6 // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. -- cgit v1.2.3-24-g4f1b From 243ae75256d5458a7ef11985aa008c797ff18add Mon Sep 17 00:00:00 2001 From: Joshua T Date: Fri, 15 Jul 2016 17:49:14 -0500 Subject: Added default layer switch QWERTY to Colemak --- keyboards/atreus/keymaps/replicaJunction/keymap.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'keyboards') diff --git a/keyboards/atreus/keymaps/replicaJunction/keymap.c b/keyboards/atreus/keymaps/replicaJunction/keymap.c index f2a8ff24c..30d2ef81a 100644 --- a/keyboards/atreus/keymaps/replicaJunction/keymap.c +++ b/keyboards/atreus/keymaps/replicaJunction/keymap.c @@ -15,6 +15,8 @@ * here: https://colemakmods.github.io/mod-dh/ */ +#include "atreus.h" + // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. // Layer names don't all need to be of the same length, obviously, and you can also skip them @@ -26,7 +28,7 @@ #define _QW 1 // QWERTY #define _NU 2 // Numpad #define _FN 3 // Function -#define _DV 4 // Dvorak +#define _DV 4 // Dvorak (not currently used) // Quick alias for visual sake #define _______ KC_TRNS @@ -55,7 +57,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_NU] = { /* Numbers and symbols */ {KC_EXLM, KC_HOME, KC_UP, KC_END, KC_PGUP, _______, KC_PGUP, KC_7, KC_8, KC_9, KC_ASTR}, - {KC_HASH, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______, KC_PGDN, KC_4, KC_5, KC_6, KC_PLUS}, + {KC_HASH, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______, KC_PGDN, KC_4, KC_5, KC_6, KC_PLUS}, {KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, KC_AMPR, KC_LCTL, KC_TILD, KC_1, KC_2, KC_3, KC_BSLS}, {MO(_FN), KC_INS, KC_LGUI, KC_LSFT, KC_DEL, KC_LALT, KC_SPC, _______, KC_DOT, KC_0, KC_EQL} }, @@ -64,7 +66,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { {KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, _______, KC_UP, KC_F7, KC_F8, KC_F9, KC_F10}, {KC_DELT, KC_LEFT, KC_DOWN, KC_RGHT, KC_DOWN, _______, KC_DOWN, KC_F4, KC_F5, KC_F6, KC_F11}, {_______, _______, _______, _______, _______, KC_LCTL, _______, KC_F1, KC_F2, KC_F3, KC_F12}, - {_______, _______, KC_LGUI, KC_LSFT, KC_BSPC, KC_LALT, KC_SPC, _______, _______, _______, RESET} + {_______, _______, KC_LGUI, KC_LSFT, KC_BSPC, KC_LALT, KC_SPC, _______, DF(_CO), DF(_QW), RESET} }}; const uint16_t PROGMEM fn_actions[] = { -- cgit v1.2.3-24-g4f1b From 377bcb00fb1a88a9549381f5da1e7b11cd623296 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Tue, 19 Jul 2016 17:01:21 -0500 Subject: Added Gaming layer and removed Dvorak Also added tap/hold functions on central keys --- keyboards/atreus/keymaps/replicaJunction/keymap.c | 46 +++++++++++------------ 1 file changed, 23 insertions(+), 23 deletions(-) (limited to 'keyboards') diff --git a/keyboards/atreus/keymaps/replicaJunction/keymap.c b/keyboards/atreus/keymaps/replicaJunction/keymap.c index 30d2ef81a..ba1331bce 100644 --- a/keyboards/atreus/keymaps/replicaJunction/keymap.c +++ b/keyboards/atreus/keymaps/replicaJunction/keymap.c @@ -26,47 +26,47 @@ #define _CO 0 // Colemak #define _QW 1 // QWERTY -#define _NU 2 // Numpad -#define _FN 3 // Function -#define _DV 4 // Dvorak (not currently used) +#define _GA 2 // Gaming +#define _NU 3 // Numpad +#define _FN 4 // Function // Quick alias for visual sake #define _______ KC_TRNS const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_CO] = { - {KC_Q, KC_W, KC_F, KC_P, KC_B, _______, KC_J, KC_L, KC_U, KC_Y, KC_SCLN }, - {KC_A, KC_R, KC_S, KC_T, KC_G, _______, KC_M, KC_N, KC_E, KC_I, KC_O }, - {KC_Z, KC_X, KC_C, KC_D, KC_V, KC_LCTL, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH }, - {KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, KC_LALT, KC_SPC, MO(_NU), KC_MINS, KC_QUOT, KC_ENT } -}, - -[_DV] = { - {KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, _______, KC_F, KC_G, KC_C, KC_R, KC_L }, - {KC_A, KC_O, KC_E, KC_U, KC_I, _______, KC_D, KC_H, KC_T, KC_N, KC_S }, - {KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_LCTL, KC_B, KC_M, KC_W, KC_V, KC_Z }, - {KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, KC_LALT, KC_SPC, MO(_NU), KC_MINS, KC_SLSH, KC_ENT } + {KC_Q, KC_W, KC_F, KC_P, KC_B, _______, KC_J, KC_L, KC_U, KC_Y, KC_SCLN }, + {KC_A, KC_R, KC_S, KC_T, KC_G, _______, KC_M, KC_N, KC_E, KC_I, KC_O }, + {KC_Z, KC_X, KC_C, KC_D, KC_V, CTL_T(KC_BSPC), KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH }, + {KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_LSFT, ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_NU), KC_MINS, KC_QUOT, KC_EQL } }, [_QW] = { /* Qwerty */ - {KC_Q, KC_W, KC_E, KC_R, KC_T, _______, KC_Y, KC_U, KC_I, KC_O, KC_P }, - {KC_A, KC_S, KC_D, KC_F, KC_G, _______, KC_H, KC_J, KC_K, KC_L, KC_SCLN }, - {KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LCTL, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH }, - {KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, KC_LALT, KC_SPC, MO(_NU), KC_MINS, KC_QUOT, KC_ENT } + {KC_Q, KC_W, KC_E, KC_R, KC_T, _______, KC_Y, KC_U, KC_I, KC_O, KC_P }, + {KC_A, KC_S, KC_D, KC_F, KC_G, _______, KC_H, KC_J, KC_K, KC_L, KC_SCLN }, + {KC_Z, KC_X, KC_C, KC_V, KC_B, CTL_T(KC_BSPC), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH }, + {KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_NU), TG(_GA), KC_QUOT, KC_EQL } }, [_NU] = { /* Numbers and symbols */ - {KC_EXLM, KC_HOME, KC_UP, KC_END, KC_PGUP, _______, KC_PGUP, KC_7, KC_8, KC_9, KC_ASTR}, + {KC_GRV, KC_HOME, KC_UP, KC_END, KC_PGUP, _______, KC_PGUP, KC_7, KC_8, KC_9, KC_ASTR}, {KC_HASH, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______, KC_PGDN, KC_4, KC_5, KC_6, KC_PLUS}, - {KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, KC_AMPR, KC_LCTL, KC_TILD, KC_1, KC_2, KC_3, KC_BSLS}, - {MO(_FN), KC_INS, KC_LGUI, KC_LSFT, KC_DEL, KC_LALT, KC_SPC, _______, KC_DOT, KC_0, KC_EQL} + {KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, KC_AMPR, CTL_T(KC_BSPC), KC_TILD, KC_1, KC_2, KC_3, KC_BSLS}, + {MO(_FN), KC_INS, KC_LGUI, KC_LSFT, _______, _______, KC_SPC, _______, KC_DOT, KC_0, _______} }, [_FN] = { /* Functions */ {KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, _______, KC_UP, KC_F7, KC_F8, KC_F9, KC_F10}, {KC_DELT, KC_LEFT, KC_DOWN, KC_RGHT, KC_DOWN, _______, KC_DOWN, KC_F4, KC_F5, KC_F6, KC_F11}, - {_______, _______, _______, _______, _______, KC_LCTL, _______, KC_F1, KC_F2, KC_F3, KC_F12}, - {_______, _______, KC_LGUI, KC_LSFT, KC_BSPC, KC_LALT, KC_SPC, _______, DF(_CO), DF(_QW), RESET} + {_______, _______, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F12}, + {_______, _______, KC_LGUI, KC_LSFT, _______, _______, KC_SPC, _______, DF(_CO), DF(_QW), RESET} +}, + +[_GA] = { /* Gaming */ + {_______, _______, _______, _______, _______, _______, _______, KC_WH_U, KC_MS_U, KC_WH_D, _______ }, + {_______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______ }, + {_______, _______, _______, _______, _______, KC_BSPC, KC_BTN3, _______, KC_MS_D, _______, _______ }, + {_______, _______, _______, _______, KC_SPC, KC_BTN2, KC_BTN1, _______, _______, _______, _______ }, }}; const uint16_t PROGMEM fn_actions[] = { -- cgit v1.2.3-24-g4f1b From 8cb2cf375b1494875551a42dbf8d6829f0dd7a92 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Tue, 19 Jul 2016 17:33:10 -0500 Subject: Adjusted Atreus KEYMAP() function. This change adjusts the KEYMAP() function to provide a more visual representation of the key positions on the keyboard. Previously, keymaps have been defined directly using arrays for the Atreus keyboard. While this works, it doesn't utilize the helpful KEYMAP() function at all to allow the user to visually position the key codes for ease of editing. See the Ergodox-EZ KEYMAP() function and layouts for a great example of how this can work. This change should not break any existing Atreus layouts. At the time of this commit, there are two existing layouts for the Atreus board, and neither use the KEYMAP() function. --- keyboards/atreus/atreus.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'keyboards') diff --git a/keyboards/atreus/atreus.h b/keyboards/atreus/atreus.h index 2b3803bc2..f841c3519 100644 --- a/keyboards/atreus/atreus.h +++ b/keyboards/atreus/atreus.h @@ -10,16 +10,16 @@ // The first section contains all of the arguements // The second converts the arguments into a two-dimensional array #define KEYMAP( \ - k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, \ - k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, \ - k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, \ - k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b \ ) \ { \ { k00, k01, k02, k03, k04, KC_NO, k05, k06, k07, k08, k09 }, \ { k10, k11, k12, k13, k14, KC_NO, k15, k16, k17, k18, k19 }, \ { k20, k21, k22, k23, k24, k35, k25, k26, k27, k28, k29 }, \ - { k2a, k30, k31, k32, k33, k34, k36, k37, k38, k39, k3a } \ + { k30, k31, k32, k33, k34, k36, k37, k38, k39, k3a, k3b } \ } #endif -- cgit v1.2.3-24-g4f1b From 2a4947b28b55c084191e6c51e3194311432c4fc2 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Tue, 19 Jul 2016 17:39:15 -0500 Subject: Modified Atreus layout to account for keymap() function --- keyboards/atreus/keymaps/replicaJunction/keymap.c | 60 +++++++++++------------ 1 file changed, 30 insertions(+), 30 deletions(-) (limited to 'keyboards') diff --git a/keyboards/atreus/keymaps/replicaJunction/keymap.c b/keyboards/atreus/keymaps/replicaJunction/keymap.c index ba1331bce..d96fe008a 100644 --- a/keyboards/atreus/keymaps/replicaJunction/keymap.c +++ b/keyboards/atreus/keymaps/replicaJunction/keymap.c @@ -34,40 +34,40 @@ #define _______ KC_TRNS const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[_CO] = { - {KC_Q, KC_W, KC_F, KC_P, KC_B, _______, KC_J, KC_L, KC_U, KC_Y, KC_SCLN }, - {KC_A, KC_R, KC_S, KC_T, KC_G, _______, KC_M, KC_N, KC_E, KC_I, KC_O }, - {KC_Z, KC_X, KC_C, KC_D, KC_V, CTL_T(KC_BSPC), KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH }, - {KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_LSFT, ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_NU), KC_MINS, KC_QUOT, KC_EQL } -}, +[_CO] = KEYMAP( + KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, + KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, + KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, + KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_LSFT, CTL_T(KC_BSPC), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_NU), KC_MINS, KC_QUOT, KC_EQL +), -[_QW] = { /* Qwerty */ - {KC_Q, KC_W, KC_E, KC_R, KC_T, _______, KC_Y, KC_U, KC_I, KC_O, KC_P }, - {KC_A, KC_S, KC_D, KC_F, KC_G, _______, KC_H, KC_J, KC_K, KC_L, KC_SCLN }, - {KC_Z, KC_X, KC_C, KC_V, KC_B, CTL_T(KC_BSPC), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH }, - {KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_NU), TG(_GA), KC_QUOT, KC_EQL } -}, +[_QW] = KEYMAP( /* Qwerty */ + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, CTL_T(KC_BSPC), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_NU), TG(_GA), KC_QUOT, KC_EQL +), -[_NU] = { /* Numbers and symbols */ - {KC_GRV, KC_HOME, KC_UP, KC_END, KC_PGUP, _______, KC_PGUP, KC_7, KC_8, KC_9, KC_ASTR}, - {KC_HASH, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______, KC_PGDN, KC_4, KC_5, KC_6, KC_PLUS}, - {KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, KC_AMPR, CTL_T(KC_BSPC), KC_TILD, KC_1, KC_2, KC_3, KC_BSLS}, - {MO(_FN), KC_INS, KC_LGUI, KC_LSFT, _______, _______, KC_SPC, _______, KC_DOT, KC_0, _______} -}, +[_NU] = KEYMAP( /* Numbers and symbols */ + KC_GRV, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_PGUP, KC_7, KC_8, KC_9, KC_ASTR, + KC_HASH, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_PGDN, KC_4, KC_5, KC_6, KC_PLUS, + KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, KC_AMPR, KC_TILD, KC_1, KC_2, KC_3, KC_BSLS, + MO(_FN), KC_INS, KC_LGUI, KC_LSFT, _______, CTL_T(KC_BSPC), _______, KC_SPC, _______, KC_DOT, KC_0, _______ +), -[_FN] = { /* Functions */ - {KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, _______, KC_UP, KC_F7, KC_F8, KC_F9, KC_F10}, - {KC_DELT, KC_LEFT, KC_DOWN, KC_RGHT, KC_DOWN, _______, KC_DOWN, KC_F4, KC_F5, KC_F6, KC_F11}, - {_______, _______, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F12}, - {_______, _______, KC_LGUI, KC_LSFT, _______, _______, KC_SPC, _______, DF(_CO), DF(_QW), RESET} -}, +[_FN] = KEYMAP( /* Functions */ + KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_UP, KC_F7, KC_F8, KC_F9, KC_F10, + KC_DELT, KC_LEFT, KC_DOWN, KC_RGHT, KC_DOWN, KC_DOWN, KC_F4, KC_F5, KC_F6, KC_F11, + _______, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F12, + _______, _______, KC_LGUI, KC_LSFT, _______, _______, _______, _______, _______, DF(_CO), DF(_QW), RESET +), -[_GA] = { /* Gaming */ - {_______, _______, _______, _______, _______, _______, _______, KC_WH_U, KC_MS_U, KC_WH_D, _______ }, - {_______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______ }, - {_______, _______, _______, _______, _______, KC_BSPC, KC_BTN3, _______, KC_MS_D, _______, _______ }, - {_______, _______, _______, _______, KC_SPC, KC_BTN2, KC_BTN1, _______, _______, _______, _______ }, -}}; +[_GA] = KEYMAP( /* Gaming */ + _______, _______, _______, _______, _______, _______, KC_WH_U, KC_MS_U, KC_WH_D, _______, + _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, + _______, _______, _______, _______, _______, KC_BTN3, _______, KC_MS_D, _______, _______, + _______, _______, _______, _______, KC_SPC, KC_BSPC, KC_BTN2, KC_BTN1, _______, _______, _______, _______ +)}; const uint16_t PROGMEM fn_actions[] = { -- cgit v1.2.3-24-g4f1b From 15ee180f0e70b318d18ff3ec729f3c769eefec94 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Wed, 20 Jul 2016 00:38:56 -0500 Subject: Created readme and added screenshots --- .../replicaJunction/atreus-replica-base.png | Bin 0 -> 76849 bytes .../replicaJunction/atreus-replica-extend.png | Bin 0 -> 87081 bytes .../replicaJunction/atreus-replica-function.png | Bin 0 -> 91768 bytes .../keymaps/replicaJunction/atreus-replica-num.png | Bin 0 -> 72341 bytes keyboards/atreus/keymaps/replicaJunction/keymap.c | 44 +++++++++++++------- keyboards/atreus/keymaps/replicaJunction/readme.md | 45 +++++++++++++++++++++ 6 files changed, 74 insertions(+), 15 deletions(-) create mode 100644 keyboards/atreus/keymaps/replicaJunction/atreus-replica-base.png create mode 100644 keyboards/atreus/keymaps/replicaJunction/atreus-replica-extend.png create mode 100644 keyboards/atreus/keymaps/replicaJunction/atreus-replica-function.png create mode 100644 keyboards/atreus/keymaps/replicaJunction/atreus-replica-num.png create mode 100644 keyboards/atreus/keymaps/replicaJunction/readme.md (limited to 'keyboards') diff --git a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-base.png b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-base.png new file mode 100644 index 000000000..c8efae964 Binary files /dev/null and b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-base.png differ diff --git a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-extend.png b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-extend.png new file mode 100644 index 000000000..8548543f0 Binary files /dev/null and b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-extend.png differ diff --git a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-function.png b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-function.png new file mode 100644 index 000000000..262e08ac9 Binary files /dev/null and b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-function.png differ diff --git a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-num.png b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-num.png new file mode 100644 index 000000000..fefea53c5 Binary files /dev/null and b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-num.png differ diff --git a/keyboards/atreus/keymaps/replicaJunction/keymap.c b/keyboards/atreus/keymaps/replicaJunction/keymap.c index d96fe008a..aa0e26fa4 100644 --- a/keyboards/atreus/keymaps/replicaJunction/keymap.c +++ b/keyboards/atreus/keymaps/replicaJunction/keymap.c @@ -27,18 +27,25 @@ #define _CO 0 // Colemak #define _QW 1 // QWERTY #define _GA 2 // Gaming -#define _NU 3 // Numpad -#define _FN 4 // Function +#define _EX 3 // Extend +#define _NU 4 // Numpad +#define _FN 5 // Function -// Quick alias for visual sake +// Some quick aliases, just to make it look pretty #define _______ KC_TRNS +#define KCX_CA LCTL(KC_LALT) +#define KCX_CS LCTL(KC_LSFT) +#define KCX_CSA LCTL(LSFT(KC_LALT)) +#define KCX_LST LSFT(KC_TAB) + +; // This doesn't do anything. It's just for VSCode because its syntax highlighting is weird for the above #define statements. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_CO] = KEYMAP( - KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, - KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, - KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, - KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_LSFT, CTL_T(KC_BSPC), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_NU), KC_MINS, KC_QUOT, KC_EQL + KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, + KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, + KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, + KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, SFT_T(KC_BSPC), CTL_T(KC_DEL), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_EX), KC_MINS, KC_QUOT, KC_EQL ), [_QW] = KEYMAP( /* Qwerty */ @@ -48,18 +55,25 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, CTL_T(KC_BSPC), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_NU), TG(_GA), KC_QUOT, KC_EQL ), +[_EX] = KEYMAP( /* Extend */ + _______, _______, _______, _______, _______, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, + KC_LGUI, KC_LALT, KC_LSFT, KC_LCTL, _______, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, + KC_HYPR, KCX_CSA, KCX_CA, KCX_CS, _______, _______, KCX_LST, _______, KC_TAB, _______, + _______, _______, _______, _______, _______, _______, _______, KC_SPC, _______, _______, _______, KC_PSCR +), + [_NU] = KEYMAP( /* Numbers and symbols */ - KC_GRV, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_PGUP, KC_7, KC_8, KC_9, KC_ASTR, - KC_HASH, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_PGDN, KC_4, KC_5, KC_6, KC_PLUS, - KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, KC_AMPR, KC_TILD, KC_1, KC_2, KC_3, KC_BSLS, - MO(_FN), KC_INS, KC_LGUI, KC_LSFT, _______, CTL_T(KC_BSPC), _______, KC_SPC, _______, KC_DOT, KC_0, _______ + KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_AMPR, KC_SLSH, KC_7, KC_8, KC_9, KC_ASTR, + KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRV, KC_PIPE, KC_4, KC_5, KC_6, KC_MINS, + KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, KC_BSLS, KC_1, KC_2, KC_3, KC_PLUS, + MO(_FN), _______, KC_LABK, KC_RABK, _______, _______, _______, _______, KC_0, KC_DOT, KC_EQL, _______ ), [_FN] = KEYMAP( /* Functions */ - KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_UP, KC_F7, KC_F8, KC_F9, KC_F10, - KC_DELT, KC_LEFT, KC_DOWN, KC_RGHT, KC_DOWN, KC_DOWN, KC_F4, KC_F5, KC_F6, KC_F11, - _______, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F12, - _______, _______, KC_LGUI, KC_LSFT, _______, _______, _______, _______, _______, DF(_CO), DF(_QW), RESET + KC_DEL, KC_HOME, KC_UP, KC_END, KC_PGUP, _______, KC_F7, KC_F8, KC_F9, KC_F10, + KC_BSPC, KC_LEFT, KC_DOWN, KC_RGHT, KC_DOWN, _______, KC_F4, KC_F5, KC_F6, KC_F11, + _______, KC_VOLU, KC_MUTE, KC_VOLD, KC_MPLY, _______, KC_F1, KC_F2, KC_F3, KC_F12, + _______, _______, _______, _______, KC_MSTP, _______, _______, _______, KC_NO, DF(_CO), DF(_QW), RESET ), [_GA] = KEYMAP( /* Gaming */ diff --git a/keyboards/atreus/keymaps/replicaJunction/readme.md b/keyboards/atreus/keymaps/replicaJunction/readme.md new file mode 100644 index 000000000..0e8950cd5 --- /dev/null +++ b/keyboards/atreus/keymaps/replicaJunction/readme.md @@ -0,0 +1,45 @@ +# replicaJunction - Atreus Layout # + +This layout is designed to make the absolute most out of the Atreus 40% keyboard. + +I was enchanted with the idea of the Atreus keyboard after using my Ergodox for several months. I wanted something of a similar form factor that was easily portable, so I could bring and transport a keyboard to my workplace without much hassle. After building the Atreus keyboard, though, I realized very quickly that the 40% form factor requires a lot more creativity than a full-size keyboard (even one as strangely-shaped as the Ergodox). + +The default Atreus keyboard layout provides all the necessary keys in order to function with the keyboard, but as a programmer, I needed quicker access to just about everything. I noticed that the default layer didn't include any dual-role keys, and so I started on my journey to build my perfect layout for the Atreus. + +I won't claim that this layout is perfect for everyone. It does make several significant changes from the "normal" Atreus layout. In my own use, though, I've found this keyboard turbocharges my Atreus, and gives it the power of a full-size keyboard without the size. + +## Base Layer ## + +![Atreus base layout](atreus-replica-base.png) + +The letters on this layout are arranged in the [Colemak Mod-DH layout](https://colemakmods.github.io/mod-dh/). + +Note that there are four dual-purpose keys: Shift (Backspace), Ctrl (Delete), Alt (Enter), and Space (Number layer). In QMK, these dual-role keys can be made to hold their primary key by double-tapping the key and holding on the second tap. For example, if I wanted to insert a long string of Spaces, I would tap the Space key, then tap it again and hold. A single press and hold would trigger the secondary function of the key instead. + +There is still one blank key on this layout. I haven't decided what to use it for yet. On my keyboard, I have this assigned to another Shift key. + +## Extend Layer ## + +![Atreus extend layer](atreus-replica-extend.png) + +This layout is designed primarily for keyboard navigation. Arrow keys are easily accessible under the right hand (a welcome change from the original Atreus layout, which places them under the left hand), along with Home/End and PgUp/PgDn. + +Modifiers are also placed under the home row of the left hand. One of the single keyboard actions I use most is Shift+Ctrl+Left/Right to select a whole word; this layer makes those keypresses simple by adding the Ctrl and Shift keys in easy-to-reach locations. In fact, I liked this idea so much that I added double modifiers in the row beneath it, so I can now press Ctrl+Shift with a single key instead of pressing both keys individually. Using this layer takes some practice to remember which modifiers are under which fingers, but it makes for much less awkward hand motions when using modifiers on a regular basis. + +The Space key exists to prevent going from this layer directly into the Number layer. + +## Number and Symbol Layer ## + +![Atreus number and symbol layer](atreus-replica-num.png) + +This layer provides the only way of accessing number keys on this keyboard, since it's too small for its own number row. Note that even though they are laid out in the number pad fashion, they send the "regular" number keystrokes. Games and programs that specifically use NumPad keys are not supported in this layout at the moment. + +This layer also provides plenty of symbol shortcuts. Most of these can be accessed through other means (like Shift+8 for the asterisk), but having shortcut keys to them makes for one less keypress, which adds up quickly when using these symbols on a regular basis. I've been through many revisions of this concept on my Ergodox as well as the Atreus, and I've finally arrived at this layout as the one that provides the symbols I need most frequently in places I can think to expect them. The Ordinary layout from the Ergodox-EZ keyboard in this repository was a large influence in this design. + +## Function Layer ## + +![Atreus function layer](atreus-replica-function.png) + +Function keys (F1-F12) are on this layer, as well as some more generic "functions" such as media keys. I've also set up a mirror image of the arrows from the Extend layer in case I need to use these with my left hand, but I don't do this very often. + +The reset key is on this layer, as well as a toggle from Colemak to QWERTY and back. The QWERTY layer is not currently documented (nor is a small "gaming" layer that adds mouse keys on top of QWERTY). \ No newline at end of file -- cgit v1.2.3-24-g4f1b From 876a6bdd4ca9033972d0a2d8c0c563cc6d7d9e7e Mon Sep 17 00:00:00 2001 From: Joshua T Date: Tue, 26 Jul 2016 01:44:57 -0500 Subject: Modified Atreus extend and Ergodox. Atreus: Removed home row Shift. It's under the thumb anyway. Also replaced dual modifier keys with macro keys (cut, copy, paste, undo). Ergodox: Made Colemak the default layer instead of Dvorak. Also began the process of bringing it in line with the Atreus layout I've been working on. --- .../replicaJunction/atreus-replica-extend.png | Bin 87081 -> 88880 bytes keyboards/atreus/keymaps/replicaJunction/keymap.c | 17 +- keyboards/atreus/keymaps/replicaJunction/readme.md | 6 +- .../ergodox_ez/keymaps/replicaJunction/keymap.c | 302 +++++++++------------ .../ergodox_ez/keymaps/replicaJunction/readme.md | 5 + 5 files changed, 151 insertions(+), 179 deletions(-) create mode 100644 keyboards/ergodox_ez/keymaps/replicaJunction/readme.md (limited to 'keyboards') diff --git a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-extend.png b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-extend.png index 8548543f0..fd8f0a6e2 100644 Binary files a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-extend.png and b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-extend.png differ diff --git a/keyboards/atreus/keymaps/replicaJunction/keymap.c b/keyboards/atreus/keymaps/replicaJunction/keymap.c index aa0e26fa4..0470a4fa1 100644 --- a/keyboards/atreus/keymaps/replicaJunction/keymap.c +++ b/keyboards/atreus/keymaps/replicaJunction/keymap.c @@ -1,10 +1,10 @@ /* * Keyboard: Atreus * Keymap: replicaJunction - * Version: 0.1 + * Version: 0.3 * * This keymap is designed to complement my Ergodox keyboard layout, found in keyboards/ergodox_ez. - * The Atreus keyboard is a 40% board whose design was heavily influenced by the Ergodox, and I now + * The Atreus keyboard is a 40% board whose design was heavily influenced by the Ergodox. I now * have both keyboards, so I've designed these layouts in an effort to make switching between the * two as easy as possible. * @@ -37,6 +37,13 @@ #define KCX_CS LCTL(KC_LSFT) #define KCX_CSA LCTL(LSFT(KC_LALT)) #define KCX_LST LSFT(KC_TAB) +#define KX_COPY LCTL(KC_C) +#define KX_CUT LCTL(KC_X) +#define KX_PAST LCTL(KC_V) +#define KX_UNDO LCTL(KC_Z) + +// Uses 5 bytes of memory per 8 keys, but makes sure modifiers don't get "stuck" switching layers +#define PREVENT_STUCK_MODIFIERS ; // This doesn't do anything. It's just for VSCode because its syntax highlighting is weird for the above #define statements. @@ -57,9 +64,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_EX] = KEYMAP( /* Extend */ _______, _______, _______, _______, _______, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, - KC_LGUI, KC_LALT, KC_LSFT, KC_LCTL, _______, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, - KC_HYPR, KCX_CSA, KCX_CA, KCX_CS, _______, _______, KCX_LST, _______, KC_TAB, _______, - _______, _______, _______, _______, _______, _______, _______, KC_SPC, _______, _______, _______, KC_PSCR + _______, KC_LGUI, KC_LALT, KC_LCTL, _______, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, + KX_UNDO, KX_CUT, KX_COPY, _______, KX_PAST, _______, KCX_LST, _______, KC_TAB, _______, + _______, _______, _______, _______, KC_LSFT, _______, _______, KC_SPC, _______, _______, _______, KC_PSCR ), [_NU] = KEYMAP( /* Numbers and symbols */ diff --git a/keyboards/atreus/keymaps/replicaJunction/readme.md b/keyboards/atreus/keymaps/replicaJunction/readme.md index 0e8950cd5..1b96926e4 100644 --- a/keyboards/atreus/keymaps/replicaJunction/readme.md +++ b/keyboards/atreus/keymaps/replicaJunction/readme.md @@ -24,9 +24,11 @@ There is still one blank key on this layout. I haven't decided what to use it fo This layout is designed primarily for keyboard navigation. Arrow keys are easily accessible under the right hand (a welcome change from the original Atreus layout, which places them under the left hand), along with Home/End and PgUp/PgDn. -Modifiers are also placed under the home row of the left hand. One of the single keyboard actions I use most is Shift+Ctrl+Left/Right to select a whole word; this layer makes those keypresses simple by adding the Ctrl and Shift keys in easy-to-reach locations. In fact, I liked this idea so much that I added double modifiers in the row beneath it, so I can now press Ctrl+Shift with a single key instead of pressing both keys individually. Using this layer takes some practice to remember which modifiers are under which fingers, but it makes for much less awkward hand motions when using modifiers on a regular basis. +Modifiers are also placed under the home row of the left hand. One of the single keyboard actions I use most is Shift+Ctrl+Left/Right to select a whole word; this layer makes those keypresses simple by adding the Ctrl and Shift keys in easy-to-reach locations. -The Space key exists to prevent going from this layer directly into the Number layer. +For the common Ctrl shortcuts, I also added some hotkeys to this layer over the letter keys they are associated with. This gives the Extend key some extra utility by letting it "feel" like a Ctrl key in some cases. + +The Space key exists to prevent going from this layer directly into the Number layer. Similarly, the Shift key on the left thumb helps make sure that the Backspace function doesn't fire (the other role of this key on the base layout). ## Number and Symbol Layer ## diff --git a/keyboards/ergodox_ez/keymaps/replicaJunction/keymap.c b/keyboards/ergodox_ez/keymaps/replicaJunction/keymap.c index be2290567..b0b5cab7b 100644 --- a/keyboards/ergodox_ez/keymaps/replicaJunction/keymap.c +++ b/keyboards/ergodox_ez/keymaps/replicaJunction/keymap.c @@ -5,7 +5,7 @@ /* * Keyboard: Ergodox * Keymap: replicaJunction - * Version: 1.0 + * Version: 1.1 * * This keymap is designed to complement my Atreus keyboard layout, found in keyboards/atreus. * The Atreus keyboard is a 40% board whose design was heavily influenced by the Ergodox, and I now @@ -16,62 +16,64 @@ * here: https://colemakmods.github.io/mod-dh/ */ -#define BASE 0 // default layer -#define CODH 1 // Colemak -#define QWRT 2 // QWERTY layer -#define SYMB 3 // symbols -#define MDIA 4 // media keys -#define UTIL 5 // keyboard utilities -#define NUMP 6 // numpad -#define GAME 7 // mouse overlay for gaming +#define _CO 0 // Colemak +#define _DV 1 // Dvorak +#define _QW 2 // QWERTY +#define _ME 3 // media keys +#define _NU 4 // numpad +#define _EX 5 // extend +#define _GA 6 // mouse overlay for gaming #define _______ KC_TRNS // Simple alias that just makes the keymaps a bit easier to look at +// Uses 5 bytes of memory per 8 keys, but makes sure modifiers don't get "stuck" switching layers +#define PREVENT_STUCK_MODIFIERS + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* * Keymap: Colemak-ModDH * * ,--------------------------------------------------. ,--------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | ~SYMB| 6 | 7 | 8 | 9 | 0 | ' | + * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | = | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | \ | Q | W | F | P | B | Home | | BkSp | J | L | U | Y | ; | = | + * | \ | Q | W | F | P | B | Home | | BkSp | J | L | U | Y | ; | - | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | Tab | A | R | S | T | G |------| |------| M | N | E | I | O | - | + * | Tab | A | R | S | T | G |------| |------| M | N | E | I | O | ' | * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| * | LShft | Z | X | C | D | V | | | | K | H | , | , | / | RShft | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LGui | [ | ] |CtlShf| SYMB | | Left | Up | Down | Right| \ | + * | LGui | [ | ] |CtlShf| | | _EX | - | ' | Right| \ | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. - * | LCtrl| LAlt | | MDIA | RAlt | + * | LCtrl| LAlt | | Left | Right| * ,------|------|------| |------+------+------. - * | Ctl/ | Alt/ | Home | | PgUp | | SYMB/| + * | Ctl/ | Alt/ | Home | | Up | | _NU/ | * | BkSp | Del |------| |------| Enter| Space| - * | | | NUMP | | PgDn | | | + * | | | _NU | | Down | | | * `--------------------' `--------------------' */ -[CODH] = KEYMAP( +[_CO] = KEYMAP( // left hand KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, KC_BSLS,KC_Q, KC_W, KC_F, KC_P, KC_B, KC_HOME, KC_TAB, KC_A, KC_R, KC_S, KC_T, KC_G, KC_LSFT,KC_Z, KC_X, KC_C, KC_D, KC_V, ALL_T(KC_NO), - KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), MO(SYMB), + KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), MO(_NU), KC_LCTL, KC_LALT, KC_HOME, - CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(NUMP), + CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(_NU), // right hand - TG(SYMB), KC_6, KC_7, KC_8, KC_9, KC_0, KC_QUOT, - KC_BSPC, KC_J, KC_L, KC_U, KC_Y, KC_SCLN,KC_EQL, - KC_M, KC_N, KC_E, KC_I, KC_O, KC_MINS, - KC_BSLS, KC_K, KC_H, KC_DOT, KC_COMM,KC_SLSH,KC_RSFT, - KC_LEFT,KC_UP, KC_DOWN,KC_RGHT,KC_BSLS, - - MO(MDIA), KC_RALT, - KC_PGUP, - KC_PGDN, KC_ENT, LT(SYMB,KC_SPC) + KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, + KC_BSPC, KC_J, KC_L, KC_U, KC_Y, KC_SCLN,KC_MINS, + KC_M, KC_N, KC_E, KC_I, KC_O, KC_QUOT, + KC_BSLS, KC_K, KC_H, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, + MO(_EX),KC_MINS,KC_QUOT,KC_RGHT,KC_BSLS, + + KC_LEFT, KC_RGHT, + KC_UP, + KC_DOWN, KC_ENT, LT(_NU,KC_SPC) ), /* @@ -81,7 +83,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * Backspace in the center. * * ,--------------------------------------------------. ,--------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | ~SYMB| 6 | 7 | 8 | 9 | 0 | / | + * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | / | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| * | \ | ' | , | . | P | Y | Home | | BkSp | F | G | C | R | L | = | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| @@ -89,39 +91,39 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| * | LShft | ; | Q | J | K | X | | | | B | M | W | V | Z | RShft | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LGui | [ | ] |CtlShf| SYMB | | Left | Up | Down | Right| \ | + * | LGui | [ | ] |CtlShf| _NU | | Left | Up | Down | Right| \ | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. - * | LCtrl| LAlt | | MDIA | RAlt | + * | LCtrl| LAlt | | _ME | RAlt | * ,------|------|------| |------+------+------. - * | Ctl/ | Alt/ | Home | | PgUp | | SYMB/| + * | Ctl/ | Alt/ | Home | | PgUp | | _NU/ | * | BkSp | Del |------| |------| Enter| Space| - * | | | NUMP | | PgDn | | | + * | | | _NU | | PgDn | | | * `--------------------' `--------------------' */ -// BASE -[BASE] = KEYMAP( +// _DV +[_DV] = KEYMAP( // left hand KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, KC_BSLS,KC_QUOT,KC_COMM, KC_DOT, KC_P, KC_Y, KC_HOME, KC_TAB, KC_A, KC_O, KC_E, KC_U, KC_I, KC_LSFT,KC_SCLN,KC_Q, KC_J, KC_K, KC_X, ALL_T(KC_NO), - KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), MO(SYMB), + KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), MO(_NU), KC_LCTL, KC_LALT, KC_HOME, - CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(NUMP), + CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(_NU), // right hand - TG(SYMB), KC_6, KC_7, KC_8, KC_9, KC_0, KC_SLSH, + KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_SLSH, KC_BSPC, KC_F, KC_G, KC_C, KC_R, KC_L, KC_EQL, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, KC_BSLS, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, KC_LEFT,KC_UP, KC_DOWN,KC_RGHT,KC_BSLS, - MO(MDIA), KC_RALT, + MO(_ME), KC_RALT, KC_PGUP, - KC_PGDN, KC_ENT, LT(SYMB,KC_SPC) + KC_PGDN, KC_ENT, LT(_NU,KC_SPC) ), /* @@ -133,7 +135,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * and repositioning the arrow keys at the bottom right corner. * * ,--------------------------------------------------. ,--------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | Esc | |~SYMB | 6 | 7 | 8 | 9 | 0 | - | + * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | - | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| * | LShift | Q | W | E | R | T | +L1 | | BkSp | Y | U | I | O | P | ] | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| @@ -141,156 +143,112 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+------| FN2 | | ~L1 |------+------+------+------+------+--------| * | LShft | Z | X | C | V | B | | | | N | M | , | . | Up | RShft | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LCtrl| ` | \ |CtlShf| SYMB | | SYMB | / | Left | Down | Right| + * | LCtrl| ` | \ |CtlShf| _NU | | _NU | / | Left | Down | Right| * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. - * | LCtrl| LAlt | | MDIA | ~GAME| + * | LCtrl| LAlt | | _ME | ~_GA| * ,------|------|------| |------+------+------. - * | | | Home | | PgUp | | SYMB/ + * | | | Home | | PgUp | | _NU/ | * | Space| LAlt |------| |------| Enter| Space| * | | | End | | PgDn | | | * `--------------------' `--------------------' */ -[QWRT] = KEYMAP( // Layer1: QWERTY +[_QW] = KEYMAP( // Layer1: QWERTY // left hand KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, KC_LSFT,KC_Q, KC_W, KC_E, KC_R, KC_T, KC_HOME, KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), - KC_LCTL,KC_GRV, KC_SLSH,LCTL(KC_LSFT), MO(SYMB), + KC_LCTL,KC_GRV, KC_SLSH,LCTL(KC_LSFT), MO(_NU), KC_LCTL,KC_LALT, KC_HOME, KC_SPC, KC_LALT, KC_END, // right hand - TG(SYMB), KC_6, KC_7, KC_8, KC_9, KC_0, KC_RBRC, - KC_BSPC,KC_Y, KC_U, KC_I, KC_O, KC_P, KC_EQL, - KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_MINS, - KC_END, KC_N, KC_M, KC_COMM,KC_DOT, KC_UP ,KC_RSFT, - MO(SYMB),KC_UP, KC_LEFT,KC_DOWN,KC_RGHT, + KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_RBRC, + KC_BSPC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_EQL, + KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_MINS, + KC_END, KC_N, KC_M, KC_COMM,KC_DOT, KC_UP ,KC_RSFT, + MO(_NU),KC_UP, KC_LEFT,KC_DOWN,KC_RGHT, - MO(MDIA),TG(GAME), + MO(_ME),TG(_GA), KC_PGUP, - KC_PGDN,KC_ENT,LT(SYMB,KC_SPC) + KC_PGDN,KC_ENT,LT(_NU,KC_SPC) ), - /* - * Keymap: Symbol / navigation Layer - * - * Inspired by Atreus. - * Note the two keys on the left thumb cluster. These change the "default" layer between key layouts. - * The RESET button also resets the Teensy, but note bug #164. - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | ! | @ | Up | { | } | | | | | Home | Up | End | | F12 | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | # | / | | | \ | $ |------| |------| | Left | Down | Right| | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | [ | ] | ( | ) | & | | | | | PgUp | | PgDn | | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | SYMB | | | | | | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * |Dvorak|QWERTY| | | RESET| - * ,------|------|------| |------+------+------. - * | | |Colemk| | | | | - * | | |------| |------| | SYMB | - * | | | | | | | | - * `--------------------' `--------------------' - */ -// SYMBOLS -[SYMB] = KEYMAP( - // left hand - _______,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, - _______,KC_EXLM,KC_AT, KC_UP, KC_LCBR,KC_RCBR,_______, - _______,KC_HASH,KC_SLSH,KC_PIPE,KC_BSLS,KC_DLR, - _______,KC_LBRC,KC_RBRC,KC_LPRN,KC_RPRN,KC_AMPR,_______, - _______,_______,_______,_______,_______, - - DF(BASE),DF(QWRT), - DF(CODH), - _______, _______, _______, - - // right hand - _______,KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, - _______,_______,KC_HOME,KC_UP, KC_END, _______,KC_F12, - _______,KC_LEFT,KC_DOWN,KC_RGHT,_______,_______, - _______,_______,KC_PGUP,_______,KC_PGDN,_______,_______, - _______,_______,_______,_______,_______, - - _______, RESET, - _______, - _______, _______, _______ -), -/* Keymap: Media and mouse keys - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | | | | | | | | | | | | | | | | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | MsUp | | | | | | | | | | | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | | | | | | | Prev | Next | | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | | - * ,------|------|------| |------+------+------. - * | | | | | | |Brwser| - * | | |------| |------| |Back | - * | | | | | | | | - * `--------------------' `--------------------' - */ -// MEDIA AND MOUSE -[MDIA] = KEYMAP( - _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, KC_MS_U, _______, _______, _______, - _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, - _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, KC_BTN1, KC_BTN2, - _______, _______, - _______, - _______, _______, _______, - // right hand - _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, KC_MPLY, - _______, _______, _______, KC_MPRV, KC_MNXT, _______, _______, - KC_VOLU, KC_VOLD, KC_MUTE, _______, _______, - _______, _______, - _______, - _______, _______, KC_WBAK -), - /* - * Keymap: Number pad. + * Keymap: Numbers and symbols * * Note that the number keys here are actually numpad keystrokes. This often doesn't matter, but it may be relevant in a few cases. + * That's why the Num Lock key exists on this layer - just in case. + * + * This layer also contains the layout switches. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | & | | | | / | 7 | 8 | 9 | * | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| | | 4 | 5 | 6 | - | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | \ | 1 | 2 | 3 | + | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | RESET|QWERTY|Dvorak|Colemk| | | 0 | . | = | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * |NumLck| | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[_NU] = KEYMAP( + // left hand + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, + _______, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_AMPR, _______, + _______, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRV, + _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, _______, + RESET, DF(_QW), DF(_DV), DF(_CO), _______, + + KC_NLCK,_______, + _______, + _______,_______,_______, + // right hand + _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, + _______, KC_SLSH, KC_P7, KC_P8, KC_P9, KC_PAST, _______, + KC_PIPE, KC_P4, KC_P5, KC_P6, KC_PMNS, _______, + _______, KC_BSLS, KC_P1, KC_P2, KC_P3, KC_PPLS, _______, + KC_P0, KC_PDOT, KC_EQL, _______, _______, + + _______, _______, + _______, + _______, _______, _______ + ), + + /* + * Keymap: Extend * * ,--------------------------------------------------. ,--------------------------------------------------. * | | | | | | | | | | | | | | | | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | | | | | | | | 7 | 8 | 9 | * | | + * | | | | | | | | | | | | | | | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | |------| |------| | 4 | 5 | 6 | + | | + * | | | | | | |------| |------| | | | | | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | | | | | | 1 | 2 | 3 | / | | + * | | | | | | | | | | | | | | | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | | 0 | . | 0 | = | | + * | | | | | | | | | | | | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | | | | | | * ,------|------|------| |------+------+------. * | | | | | | | | - * | | |------| |------| | Enter| + * | | |------| |------| | | * | | | | | | | | * `--------------------' `--------------------' */ -[NUMP] = KEYMAP( +[_EX] = KEYMAP( // left hand _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, @@ -298,19 +256,18 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______,_______, - _______, + _______,_______, + _______, _______,_______,_______, // right hand - _______,_______,_______,_______,_______,_______,_______, - _______,KC_UP, KC_P7, KC_P8, KC_P9, KC_PAST,KC_F12, - KC_DOWN,KC_P4, KC_P5, KC_P6, KC_PPLS,_______, - _______,KC_AMPR,KC_P1, KC_P2, KC_P3, KC_PSLS,_______, - KC_P0, KC_PDOT,KC_P0, KC_EQL, _______, - - _______, _______, - _______, - _______, _______, KC_PENT + _______, _______, _______, _______, _______, _______, _______, + _______, KC_PGUP, KC_HOME, KC_UP, KC_END, _______, _______, + KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + _______, _______, + _______, + _______, _______, _______ ), /* @@ -330,14 +287,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | | | | | |MClick| | | | | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. - * | | | | | ~GAME| + * | | | | | ~_GA| * ,------|------|------| |------+------+------. * | | | | | | | | * | | |------| |------|RClick|LClick| * | | | | | | | | * `--------------------' `--------------------' */ -[GAME] = KEYMAP( +[_GA] = KEYMAP( // left hand _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, @@ -362,7 +319,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }; const uint16_t PROGMEM fn_actions[] = { - [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) + [1] = ACTION_LAYER_TAP_TOGGLE(_NU) // FN1 - Momentary Layer 1 (Numbers and symbols) }; const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) @@ -388,22 +345,23 @@ void matrix_init_user(void) { // Runs constantly in the background, in a loop. void matrix_scan_user(void) { - uint8_t layer = biton32(layer_state); + // uint8_t layer = biton32(layer_state); ergodox_board_led_off(); ergodox_right_led_1_off(); ergodox_right_led_2_off(); ergodox_right_led_3_off(); - switch (layer) { - case BASE: + + switch (layer_state) { + case _CO: ergodox_right_led_1_on(); break; - case QWRT: + case _QW: ergodox_right_led_2_on(); - case SYMB: + case _NU: ergodox_right_led_3_on(); break; - case GAME: + case _GA: ergodox_right_led_1_on(); ergodox_right_led_2_on(); default: diff --git a/keyboards/ergodox_ez/keymaps/replicaJunction/readme.md b/keyboards/ergodox_ez/keymaps/replicaJunction/readme.md new file mode 100644 index 000000000..8c4c03353 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/replicaJunction/readme.md @@ -0,0 +1,5 @@ +# replicaJunction - Ergodox (EZ) Layout + +I designed this layout, along with my complimentary Atreus layout, to address the challenge of having an Ergodox as my primary home keyboard and an Atreus as my primary work board. I wanted a layout that provided symbols in comfortable locations on both keyboards - but didn't require me to learn two separate sets of symbols for the two keyboards. + +I had originally used several keys as dual-role keys, where a tap would send a keypress and a long press and hold would trigger a different layer. However, after several months of experimenting with those ideas, I've begun moving away from that design due to performance. It's very hard to strike a balance between the time it takes to press a key normally while typing and the "delay" in the typing motion needed to trigger the alternate layer. I was frequently getting strange characters and artifacts because I pressed the function key + the symbol key too quickly, and the layer never shifted. \ No newline at end of file -- cgit v1.2.3-24-g4f1b From 0064f1f84cf8470beb32557145dc5d1b9c977fc8 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 30 Jul 2016 08:46:01 -0500 Subject: Moved my Ergodox keymap to match upstream changes --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 374 +++++++++++++++++++++ .../ergodox/keymaps/replicaJunction/readme.md | 5 + .../ergodox_ez/keymaps/replicaJunction/keymap.c | 372 -------------------- .../ergodox_ez/keymaps/replicaJunction/readme.md | 5 - 4 files changed, 379 insertions(+), 377 deletions(-) create mode 100644 keyboards/ergodox/keymaps/replicaJunction/keymap.c create mode 100644 keyboards/ergodox/keymaps/replicaJunction/readme.md delete mode 100644 keyboards/ergodox_ez/keymaps/replicaJunction/keymap.c delete mode 100644 keyboards/ergodox_ez/keymaps/replicaJunction/readme.md (limited to 'keyboards') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c new file mode 100644 index 000000000..bc5cbc643 --- /dev/null +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -0,0 +1,374 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +/* + * Keyboard: Ergodox + * Keymap: replicaJunction + * Version: 1.1 + * + * This keymap is designed to complement my Atreus keyboard layout, found in keyboards/atreus. + * The Atreus keyboard is a 40% board whose design was heavily influenced by the Ergodox, and I now + * have both keyboards, so I've designed these layouts in an effort to make switching between the + * two as easy as possible. + * + * The default key layout in this keymap is Colemak-ModDH. Information on that layout can be found + * here: https://colemakmods.github.io/mod-dh/ + */ + +#define _CO 0 // Colemak +#define _DV 1 // Dvorak +#define _QW 2 // QWERTY +#define _ME 3 // media keys +#define _NU 4 // numpad +#define _EX 5 // extend +#define _GA 6 // mouse overlay for gaming + +#define _______ KC_TRNS // Simple alias that just makes the keymaps a bit easier to look at + +// Uses 5 bytes of memory per 8 keys, but makes sure modifiers don't get "stuck" switching layers +#define PREVENT_STUCK_MODIFIERS + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* + * Keymap: Colemak-ModDH + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | = | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | \ | Q | W | F | P | B | Home | | BkSp | J | L | U | Y | ; | - | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Tab | A | R | S | T | G |------| |------| M | N | E | I | O | ' | + * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| + * | LShft | Z | X | C | D | V | | | | K | H | , | , | / | RShft | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LGui | [ | ] |CtlShf| | | _EX | - | ' | Right| \ | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LCtrl| LAlt | | Left | Right| + * ,------|------|------| |------+------+------. + * |Shift/| Ctrl/| Home | | Up | Alt/| _NU/ | + * | BkSp | Del |------| |------| Enter| Space| + * | | | _NU | | Down | | | + * `--------------------' `--------------------' + */ + +[_CO] = KEYMAP( + // left hand + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, + KC_BSLS,KC_Q, KC_W, KC_F, KC_P, KC_B, KC_HOME, + KC_TAB, KC_A, KC_R, KC_S, KC_T, KC_G, + KC_LSFT,KC_Z, KC_X, KC_C, KC_D, KC_V, ALL_T(KC_NO), + KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), MO(_NU), + + KC_LCTL, KC_LALT, + KC_HOME, + SFT_T(KC_BSPC), CTL_T(KC_DEL), MO(_NU), + // right hand + KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, + KC_BSPC, KC_J, KC_L, KC_U, KC_Y, KC_SCLN,KC_MINS, + KC_M, KC_N, KC_E, KC_I, KC_O, KC_QUOT, + KC_BSLS, KC_K, KC_H, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, + MO(_EX),KC_MINS,KC_QUOT,KC_RGHT,KC_BSLS, + + KC_LEFT, KC_RGHT, + KC_UP, + KC_DOWN, ALT_T(KC_ENT), LT(_NU,KC_SPC) + ), + + /* + * Keymap: Dvorak layout + * + * The right index backspace is a nod to my TypeMatrix keyboard, which has + * Backspace in the center. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | / | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | \ | ' | , | . | P | Y | Home | | BkSp | F | G | C | R | L | = | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Tab | A | O | E | U | I |------| |------| D | H | T | N | S | - | + * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| + * | LShft | ; | Q | J | K | X | | | | B | M | W | V | Z | RShft | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LGui | [ | ] |CtlShf| _NU | | Left | Up | Down | Right| \ | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LCtrl| LAlt | | _ME | RAlt | + * ,------|------|------| |------+------+------. + * | Ctl/ | Alt/ | Home | | PgUp | | _NU/ | + * | BkSp | Del |------| |------| Enter| Space| + * | | | _NU | | PgDn | | | + * `--------------------' `--------------------' + */ + +// _DV +[_DV] = KEYMAP( + // left hand + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, + KC_BSLS,KC_QUOT,KC_COMM, KC_DOT, KC_P, KC_Y, KC_HOME, + KC_TAB, KC_A, KC_O, KC_E, KC_U, KC_I, + KC_LSFT,KC_SCLN,KC_Q, KC_J, KC_K, KC_X, ALL_T(KC_NO), + KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), MO(_NU), + + KC_LCTL, KC_LALT, + KC_HOME, + CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(_NU), + // right hand + KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_SLSH, + KC_BSPC, KC_F, KC_G, KC_C, KC_R, KC_L, KC_EQL, + KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, + KC_BSLS, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, + KC_LEFT,KC_UP, KC_DOWN,KC_RGHT,KC_BSLS, + + MO(_ME), KC_RALT, + KC_PGUP, + KC_PGDN, KC_ENT, LT(_NU,KC_SPC) + ), + + /* + * Keymap: QWERTY layout. + * + * This is optimized for gaming, not typing, so there aren't as many macros + * as the Dvorak layer. Some of the keys have also been moved to "game- + * like" locations, such as making the spacebar available to the left thumb, + * and repositioning the arrow keys at the bottom right corner. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | LShift | Q | W | E | R | T | +L1 | | BkSp | Y | U | I | O | P | ] | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Tab | A | S | D | F | G |------| |------| H | J | K | L | ; | ' | + * |--------+------+------+------+------+------| FN2 | | ~L1 |------+------+------+------+------+--------| + * | LShft | Z | X | C | V | B | | | | N | M | , | . | Up | RShft | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LCtrl| ` | \ |CtlShf| _NU | | ~_GA | / | Left | Down | Right| + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LCtrl| LAlt | | _ME | ~_GA | + * ,------|------|------| |------+------+------. + * | | | Home | | PgUp | | _NU/ | + * | Space| LAlt |------| |------| Enter| Space| + * | | | End | | PgDn | | | + * `--------------------' `--------------------' + */ +[_QW] = KEYMAP( // Layer1: QWERTY + // left hand + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, + KC_LSFT,KC_Q, KC_W, KC_E, KC_R, KC_T, KC_HOME, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), + KC_LCTL,KC_GRV, KC_SLSH,LCTL(KC_LSFT), MO(_NU), + + KC_LCTL,KC_LALT, + KC_HOME, + KC_SPC, KC_LALT, KC_END, + // right hand + KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_RBRC, + KC_BSPC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_EQL, + KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_MINS, + KC_END, KC_N, KC_M, KC_COMM,KC_DOT, KC_UP ,KC_RSFT, + TG(_GA),KC_UP, KC_LEFT,KC_DOWN,KC_RGHT, + + MO(_ME),TG(_GA), + KC_PGUP, + KC_PGDN,KC_ENT,LT(_NU,KC_SPC) + ), + +/* + * Keymap: Numbers and symbols + * + * Note that the number keys here are actually numpad keystrokes. This often doesn't matter, but it may be relevant in a few cases. + * That's why the Num Lock key exists on this layer - just in case. + * + * This layer also contains the layout switches. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | & | | | | / | 7 | 8 | 9 | * | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| | | 4 | 5 | 6 | - | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | \ | 1 | 2 | 3 | + | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | RESET|QWERTY|Dvorak|Colemk| | | 0 | . | = | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * |NumLck| | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[_NU] = KEYMAP( + // left hand + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, + _______, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_AMPR, _______, + _______, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRV, + _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, _______, + RESET, DF(_QW), DF(_DV), DF(_CO), _______, + + KC_NLCK,_______, + _______, + _______,_______,_______, + // right hand + _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, + _______, KC_SLSH, KC_P7, KC_P8, KC_P9, KC_PAST, _______, + KC_PIPE, KC_P4, KC_P5, KC_P6, KC_PMNS, _______, + _______, KC_BSLS, KC_P1, KC_P2, KC_P3, KC_PPLS, _______, + KC_P0, KC_PDOT, KC_EQL, _______, _______, + + _______, _______, + _______, + _______, _______, _______ + ), + + /* + * Keymap: Extend + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[_EX] = KEYMAP( + // left hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + + _______,_______, + _______, + _______,_______,_______, + // right hand + _______, _______, _______, _______, _______, _______, _______, + _______, KC_PGUP, KC_HOME, KC_UP, KC_END, _______, _______, + KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + _______, _______, + _______, + _______, _______, _______ + ), + + /* + * Keymap: Gaming + * + * This is mostly a mouse overlay for the right hand while the left hand uses the QWERTY layout. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | |WhlUp | MsUp |WhlDn | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| |MsLeft|MsDown|MsRght| | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | |MClick| | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | ~_GA| + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------|RClick|LClick| + * | | | | | | | | + * `--------------------' `--------------------' + */ +[_GA] = KEYMAP( + // left hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + + _______,_______, + _______, + _______,_______,_______, + + // right hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_WH_U, KC_MS_U, KC_WH_D, _______, _______, + _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + KC_BTN3, _______, _______, _______, _______, + _______, _______, + _______, + _______, KC_BTN2, KC_BTN1 + ), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(_NU) // FN1 - Momentary Layer 1 (Numbers and symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + // uint8_t default_layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + + switch (layer) { + case _CO: + ergodox_right_led_1_on(); + break; + case _QW: + ergodox_right_led_2_on(); + break; + case _NU: + ergodox_right_led_3_on(); + break; + case _GA: + ergodox_right_led_1_on(); + ergodox_right_led_2_on(); + default: + // none + break; + } + +}; diff --git a/keyboards/ergodox/keymaps/replicaJunction/readme.md b/keyboards/ergodox/keymaps/replicaJunction/readme.md new file mode 100644 index 000000000..8c4c03353 --- /dev/null +++ b/keyboards/ergodox/keymaps/replicaJunction/readme.md @@ -0,0 +1,5 @@ +# replicaJunction - Ergodox (EZ) Layout + +I designed this layout, along with my complimentary Atreus layout, to address the challenge of having an Ergodox as my primary home keyboard and an Atreus as my primary work board. I wanted a layout that provided symbols in comfortable locations on both keyboards - but didn't require me to learn two separate sets of symbols for the two keyboards. + +I had originally used several keys as dual-role keys, where a tap would send a keypress and a long press and hold would trigger a different layer. However, after several months of experimenting with those ideas, I've begun moving away from that design due to performance. It's very hard to strike a balance between the time it takes to press a key normally while typing and the "delay" in the typing motion needed to trigger the alternate layer. I was frequently getting strange characters and artifacts because I pressed the function key + the symbol key too quickly, and the layer never shifted. \ No newline at end of file diff --git a/keyboards/ergodox_ez/keymaps/replicaJunction/keymap.c b/keyboards/ergodox_ez/keymaps/replicaJunction/keymap.c deleted file mode 100644 index b0b5cab7b..000000000 --- a/keyboards/ergodox_ez/keymaps/replicaJunction/keymap.c +++ /dev/null @@ -1,372 +0,0 @@ -#include "ergodox_ez.h" -#include "debug.h" -#include "action_layer.h" - -/* - * Keyboard: Ergodox - * Keymap: replicaJunction - * Version: 1.1 - * - * This keymap is designed to complement my Atreus keyboard layout, found in keyboards/atreus. - * The Atreus keyboard is a 40% board whose design was heavily influenced by the Ergodox, and I now - * have both keyboards, so I've designed these layouts in an effort to make switching between the - * two as easy as possible. - * - * The default key layout in this keymap is Colemak-ModDH. Information on that layout can be found - * here: https://colemakmods.github.io/mod-dh/ - */ - -#define _CO 0 // Colemak -#define _DV 1 // Dvorak -#define _QW 2 // QWERTY -#define _ME 3 // media keys -#define _NU 4 // numpad -#define _EX 5 // extend -#define _GA 6 // mouse overlay for gaming - -#define _______ KC_TRNS // Simple alias that just makes the keymaps a bit easier to look at - -// Uses 5 bytes of memory per 8 keys, but makes sure modifiers don't get "stuck" switching layers -#define PREVENT_STUCK_MODIFIERS - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -/* - * Keymap: Colemak-ModDH - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | = | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | \ | Q | W | F | P | B | Home | | BkSp | J | L | U | Y | ; | - | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | Tab | A | R | S | T | G |------| |------| M | N | E | I | O | ' | - * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| - * | LShft | Z | X | C | D | V | | | | K | H | , | , | / | RShft | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LGui | [ | ] |CtlShf| | | _EX | - | ' | Right| \ | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | LCtrl| LAlt | | Left | Right| - * ,------|------|------| |------+------+------. - * | Ctl/ | Alt/ | Home | | Up | | _NU/ | - * | BkSp | Del |------| |------| Enter| Space| - * | | | _NU | | Down | | | - * `--------------------' `--------------------' - */ - -[_CO] = KEYMAP( - // left hand - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, - KC_BSLS,KC_Q, KC_W, KC_F, KC_P, KC_B, KC_HOME, - KC_TAB, KC_A, KC_R, KC_S, KC_T, KC_G, - KC_LSFT,KC_Z, KC_X, KC_C, KC_D, KC_V, ALL_T(KC_NO), - KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), MO(_NU), - - KC_LCTL, KC_LALT, - KC_HOME, - CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(_NU), - // right hand - KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, - KC_BSPC, KC_J, KC_L, KC_U, KC_Y, KC_SCLN,KC_MINS, - KC_M, KC_N, KC_E, KC_I, KC_O, KC_QUOT, - KC_BSLS, KC_K, KC_H, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, - MO(_EX),KC_MINS,KC_QUOT,KC_RGHT,KC_BSLS, - - KC_LEFT, KC_RGHT, - KC_UP, - KC_DOWN, KC_ENT, LT(_NU,KC_SPC) - ), - - /* - * Keymap: Dvorak layout - * - * The right index backspace is a nod to my TypeMatrix keyboard, which has - * Backspace in the center. - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | / | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | \ | ' | , | . | P | Y | Home | | BkSp | F | G | C | R | L | = | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | Tab | A | O | E | U | I |------| |------| D | H | T | N | S | - | - * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| - * | LShft | ; | Q | J | K | X | | | | B | M | W | V | Z | RShft | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LGui | [ | ] |CtlShf| _NU | | Left | Up | Down | Right| \ | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | LCtrl| LAlt | | _ME | RAlt | - * ,------|------|------| |------+------+------. - * | Ctl/ | Alt/ | Home | | PgUp | | _NU/ | - * | BkSp | Del |------| |------| Enter| Space| - * | | | _NU | | PgDn | | | - * `--------------------' `--------------------' - */ - -// _DV -[_DV] = KEYMAP( - // left hand - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, - KC_BSLS,KC_QUOT,KC_COMM, KC_DOT, KC_P, KC_Y, KC_HOME, - KC_TAB, KC_A, KC_O, KC_E, KC_U, KC_I, - KC_LSFT,KC_SCLN,KC_Q, KC_J, KC_K, KC_X, ALL_T(KC_NO), - KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), MO(_NU), - - KC_LCTL, KC_LALT, - KC_HOME, - CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(_NU), - // right hand - KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_SLSH, - KC_BSPC, KC_F, KC_G, KC_C, KC_R, KC_L, KC_EQL, - KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, - KC_BSLS, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, - KC_LEFT,KC_UP, KC_DOWN,KC_RGHT,KC_BSLS, - - MO(_ME), KC_RALT, - KC_PGUP, - KC_PGDN, KC_ENT, LT(_NU,KC_SPC) - ), - - /* - * Keymap: QWERTY layout. - * - * This is optimized for gaming, not typing, so there aren't as many macros - * as the Dvorak layer. Some of the keys have also been moved to "game- - * like" locations, such as making the spacebar available to the left thumb, - * and repositioning the arrow keys at the bottom right corner. - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | - | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | LShift | Q | W | E | R | T | +L1 | | BkSp | Y | U | I | O | P | ] | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | Tab | A | S | D | F | G |------| |------| H | J | K | L | ; | ' | - * |--------+------+------+------+------+------| FN2 | | ~L1 |------+------+------+------+------+--------| - * | LShft | Z | X | C | V | B | | | | N | M | , | . | Up | RShft | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LCtrl| ` | \ |CtlShf| _NU | | _NU | / | Left | Down | Right| - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | LCtrl| LAlt | | _ME | ~_GA| - * ,------|------|------| |------+------+------. - * | | | Home | | PgUp | | _NU/ | - * | Space| LAlt |------| |------| Enter| Space| - * | | | End | | PgDn | | | - * `--------------------' `--------------------' - */ -[_QW] = KEYMAP( // Layer1: QWERTY - // left hand - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, - KC_LSFT,KC_Q, KC_W, KC_E, KC_R, KC_T, KC_HOME, - KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, - KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), - KC_LCTL,KC_GRV, KC_SLSH,LCTL(KC_LSFT), MO(_NU), - - KC_LCTL,KC_LALT, - KC_HOME, - KC_SPC, KC_LALT, KC_END, - // right hand - KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_RBRC, - KC_BSPC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_EQL, - KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_MINS, - KC_END, KC_N, KC_M, KC_COMM,KC_DOT, KC_UP ,KC_RSFT, - MO(_NU),KC_UP, KC_LEFT,KC_DOWN,KC_RGHT, - - MO(_ME),TG(_GA), - KC_PGUP, - KC_PGDN,KC_ENT,LT(_NU,KC_SPC) - ), - -/* - * Keymap: Numbers and symbols - * - * Note that the number keys here are actually numpad keystrokes. This often doesn't matter, but it may be relevant in a few cases. - * That's why the Num Lock key exists on this layer - just in case. - * - * This layer also contains the layout switches. - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | ! | @ | { | } | & | | | | / | 7 | 8 | 9 | * | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | # | $ | ( | ) | ` |------| |------| | | 4 | 5 | 6 | - | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | % | ^ | [ | ] | ~ | | | | \ | 1 | 2 | 3 | + | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | RESET|QWERTY|Dvorak|Colemk| | | 0 | . | = | | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * |NumLck| | | | | - * ,------|------|------| |------+------+------. - * | | | | | | | | - * | | |------| |------| | | - * | | | | | | | | - * `--------------------' `--------------------' - */ -[_NU] = KEYMAP( - // left hand - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, - _______, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_AMPR, _______, - _______, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRV, - _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, _______, - RESET, DF(_QW), DF(_DV), DF(_CO), _______, - - KC_NLCK,_______, - _______, - _______,_______,_______, - // right hand - _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, - _______, KC_SLSH, KC_P7, KC_P8, KC_P9, KC_PAST, _______, - KC_PIPE, KC_P4, KC_P5, KC_P6, KC_PMNS, _______, - _______, KC_BSLS, KC_P1, KC_P2, KC_P3, KC_PPLS, _______, - KC_P0, KC_PDOT, KC_EQL, _______, _______, - - _______, _______, - _______, - _______, _______, _______ - ), - - /* - * Keymap: Extend - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | | | | | | | | | | | | | | | | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | | | | | | | | | | | | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | |------| |------| | | | | | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | | | | | | | | | | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | | | | | | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | | - * ,------|------|------| |------+------+------. - * | | | | | | | | - * | | |------| |------| | | - * | | | | | | | | - * `--------------------' `--------------------' - */ -[_EX] = KEYMAP( - // left hand - _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, - - _______,_______, - _______, - _______,_______,_______, - // right hand - _______, _______, _______, _______, _______, _______, _______, - _______, KC_PGUP, KC_HOME, KC_UP, KC_END, _______, _______, - KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, - _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, - _______, _______, - _______, - _______, _______, _______ - ), - - /* - * Keymap: Gaming - * - * This is mostly a mouse overlay for the right hand while the left hand uses the QWERTY layout. - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | | | | | | | | | | | | | | | | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | | | | | | | |WhlUp | MsUp |WhlDn | | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | |------| |------| |MsLeft|MsDown|MsRght| | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | | | | | | | | | | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | |MClick| | | | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | ~_GA| - * ,------|------|------| |------+------+------. - * | | | | | | | | - * | | |------| |------|RClick|LClick| - * | | | | | | | | - * `--------------------' `--------------------' - */ -[_GA] = KEYMAP( - // left hand - _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, - - _______,_______, - _______, - _______,_______,_______, - - // right hand - _______, _______, _______, _______, _______, _______, _______, - _______, _______, KC_WH_U, KC_MS_U, KC_WH_D, _______, _______, - _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, - _______, _______, _______, _______, _______, _______, _______, - KC_BTN3, _______, _______, _______, _______, - _______, _______, - _______, - _______, KC_BTN2, KC_BTN1 - ), -}; - -const uint16_t PROGMEM fn_actions[] = { - [1] = ACTION_LAYER_TAP_TOGGLE(_NU) // FN1 - Momentary Layer 1 (Numbers and symbols) -}; - -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - // MACRODOWN only works in this function - switch(id) { - case 0: - if (record->event.pressed) { - register_code(KC_RSFT); - } else { - unregister_code(KC_RSFT); - } - break; - } - return MACRO_NONE; -}; - -// Runs just one time when the keyboard initializes. -void matrix_init_user(void) { - -}; - -// Runs constantly in the background, in a loop. -void matrix_scan_user(void) { - - // uint8_t layer = biton32(layer_state); - - ergodox_board_led_off(); - ergodox_right_led_1_off(); - ergodox_right_led_2_off(); - ergodox_right_led_3_off(); - - switch (layer_state) { - case _CO: - ergodox_right_led_1_on(); - break; - case _QW: - ergodox_right_led_2_on(); - case _NU: - ergodox_right_led_3_on(); - break; - case _GA: - ergodox_right_led_1_on(); - ergodox_right_led_2_on(); - default: - // none - break; - } - -}; diff --git a/keyboards/ergodox_ez/keymaps/replicaJunction/readme.md b/keyboards/ergodox_ez/keymaps/replicaJunction/readme.md deleted file mode 100644 index 8c4c03353..000000000 --- a/keyboards/ergodox_ez/keymaps/replicaJunction/readme.md +++ /dev/null @@ -1,5 +0,0 @@ -# replicaJunction - Ergodox (EZ) Layout - -I designed this layout, along with my complimentary Atreus layout, to address the challenge of having an Ergodox as my primary home keyboard and an Atreus as my primary work board. I wanted a layout that provided symbols in comfortable locations on both keyboards - but didn't require me to learn two separate sets of symbols for the two keyboards. - -I had originally used several keys as dual-role keys, where a tap would send a keypress and a long press and hold would trigger a different layer. However, after several months of experimenting with those ideas, I've begun moving away from that design due to performance. It's very hard to strike a balance between the time it takes to press a key normally while typing and the "delay" in the typing motion needed to trigger the alternate layer. I was frequently getting strange characters and artifacts because I pressed the function key + the symbol key too quickly, and the layer never shifted. \ No newline at end of file -- cgit v1.2.3-24-g4f1b From cf795a6f93a541c2ff5d64daa0aefd1f97d62035 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 30 Jul 2016 09:19:17 -0500 Subject: Moved PREVENT_STUCK_MODIFIERS to config.h --- keyboards/atreus/config.h | 3 +++ keyboards/atreus/keymaps/replicaJunction/keymap.c | 3 --- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'keyboards') diff --git a/keyboards/atreus/config.h b/keyboards/atreus/config.h index 624d90188..36624a4a1 100644 --- a/keyboards/atreus/config.h +++ b/keyboards/atreus/config.h @@ -67,6 +67,9 @@ along with this program. If not, see . keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) +/* Prevent modifiers from sticking when switching layers */ +#define PREVENT_STUCK_MODIFIERS + /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/atreus/keymaps/replicaJunction/keymap.c b/keyboards/atreus/keymaps/replicaJunction/keymap.c index 0470a4fa1..4e88f3bd1 100644 --- a/keyboards/atreus/keymaps/replicaJunction/keymap.c +++ b/keyboards/atreus/keymaps/replicaJunction/keymap.c @@ -42,9 +42,6 @@ #define KX_PAST LCTL(KC_V) #define KX_UNDO LCTL(KC_Z) -// Uses 5 bytes of memory per 8 keys, but makes sure modifiers don't get "stuck" switching layers -#define PREVENT_STUCK_MODIFIERS - ; // This doesn't do anything. It's just for VSCode because its syntax highlighting is weird for the above #define statements. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -- cgit v1.2.3-24-g4f1b From daa83afe2b8e225948e268b8a03b61b8f057ff70 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Tue, 9 Aug 2016 20:51:22 -0500 Subject: Created keymap local config.h file Reverted the Atreus config.h to default and added one specific to this keymap. --- keyboards/atreus/config.h | 5 +- keyboards/atreus/keymaps/replicaJunction/config.h | 94 +++++++++++++++++++++++ 2 files changed, 95 insertions(+), 4 deletions(-) create mode 100644 keyboards/atreus/keymaps/replicaJunction/config.h (limited to 'keyboards') diff --git a/keyboards/atreus/config.h b/keyboards/atreus/config.h index 36624a4a1..0e0393478 100644 --- a/keyboards/atreus/config.h +++ b/keyboards/atreus/config.h @@ -67,9 +67,6 @@ along with this program. If not, see . keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) -/* Prevent modifiers from sticking when switching layers */ -#define PREVENT_STUCK_MODIFIERS - /* * Feature disable options * These options are also useful to firmware size reduction. @@ -88,4 +85,4 @@ along with this program. If not, see . //#define NO_ACTION_MACRO //#define NO_ACTION_FUNCTION -#endif +#endif \ No newline at end of file diff --git a/keyboards/atreus/keymaps/replicaJunction/config.h b/keyboards/atreus/keymaps/replicaJunction/config.h new file mode 100644 index 000000000..437aa662c --- /dev/null +++ b/keyboards/atreus/keymaps/replicaJunction/config.h @@ -0,0 +1,94 @@ +/* +Config file - Atreus QMK with replicaJunction layout + +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 + +#include "config_common.h" + +/* USB Device descriptor parameter */ + +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x6060 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Technomancy +#define PRODUCT Atreus +#define DESCRIPTION q.m.k. keyboard firmware for Atreus + +/* key matrix size */ +#define MATRIX_ROWS 4 +#define MATRIX_COLS 11 + +// Change this to how you wired your keyboard +// COLS: Left to right, ROWS: Top to bottom +#if defined(ATREUS_ASTAR) +# define MATRIX_ROW_PINS { D0, D1, D3, D2 } +# define MATRIX_COL_PINS { D7, C6, B5, B4, E6, D4, B6, F6, F7, D6, B7 } +# define UNUSED_PINS +#elif defined(ATREUS_TEENSY2) +# define MATRIX_ROW_PINS { D0, D1, D2, D3 } +# define MATRIX_COL_PINS { F6, F5, F4, B7, B6, B5, B4, B3, B2, B1, B0 } +# define UNUSED_PINS +#endif + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* define if matrix has ghost */ +//#define MATRIX_HAS_GHOST + +/* number of backlight levels */ +//#define BACKLIGHT_LEVELS 3 + +/* Set 0 if debouncing isn't needed */ +// Default: 5 +#define DEBOUNCING_DELAY 6 + +// I don't have any locking keys, so I don't need these features + +/* 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 modifiers from sticking when switching layers */ +#define PREVENT_STUCK_MODIFIERS + +/* + * Feature disable options + * These options are also useful to firmware size reduction. + */ + +/* disable debug print */ +//#define NO_DEBUG + +/* disable print */ +//#define NO_PRINT + +/* disable action features */ +//#define NO_ACTION_LAYER +//#define NO_ACTION_TAPPING +//#define NO_ACTION_ONESHOT +//#define NO_ACTION_MACRO +//#define NO_ACTION_FUNCTION + +#endif -- cgit v1.2.3-24-g4f1b From 5d78311612e5ee3824a2d707ce1377661318770e Mon Sep 17 00:00:00 2001 From: Joshua T Date: Tue, 9 Aug 2016 21:27:38 -0500 Subject: Reverted Ergodox config.h I will create a separate config.h for my keymap --- keyboards/ergodox/config.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards') diff --git a/keyboards/ergodox/config.h b/keyboards/ergodox/config.h index edc60caae..acb8cacbf 100644 --- a/keyboards/ergodox/config.h +++ b/keyboards/ergodox/config.h @@ -33,4 +33,4 @@ #endif -#endif /* KEYBOARDS_ERGODOX_CONFIG_H_ */ +#endif /* KEYBOARDS_ERGODOX_CONFIG_H_ */ \ No newline at end of file -- cgit v1.2.3-24-g4f1b From fdb8a4cd658e940587f552e348a5c0b2732ffcba Mon Sep 17 00:00:00 2001 From: Joshua T Date: Tue, 9 Aug 2016 21:28:31 -0500 Subject: Created keymap-specific config.h --- keyboards/ergodox/keymaps/replicaJunction/config.h | 63 ++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 keyboards/ergodox/keymaps/replicaJunction/config.h (limited to 'keyboards') diff --git a/keyboards/ergodox/keymaps/replicaJunction/config.h b/keyboards/ergodox/keymaps/replicaJunction/config.h new file mode 100644 index 000000000..d03e193db --- /dev/null +++ b/keyboards/ergodox/keymaps/replicaJunction/config.h @@ -0,0 +1,63 @@ +/* +Config file - Ergodox QMK with replicaJunction layout + +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 KEYBOARDS_ERGODOX_CONFIG_H_ +#define KEYBOARDS_ERGODOX_CONFIG_H_ + +#define MOUSEKEY_DELAY 100 +#define MOUSEKEY_INTERVAL 20 +#define MOUSEKEY_MAX_SPEED 3 +#define MOUSEKEY_TIME_TO_MAX 10 + +#define TAPPING_TOGGLE 1 + +/* define if matrix has ghost */ +//#define MATRIX_HAS_GHOST + +#define TAPPING_TERM 200 +#define IGNORE_MOD_TAP_INTERRUPT // this makes it possible to do rolling combos (zx) with keys that convert to other keys on hold (z becomes ctrl when you hold it, and when this option isn't enabled, z rapidly followed by x actually sends Ctrl-x. That's bad.) + +// Uses 5 bytes of memory per 8 keys, but makes sure modifiers don't get "stuck" switching layers +#define PREVENT_STUCK_MODIFIERS + +// I don't have any locking keys, so I don't need these features + + +/* 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 + +/* Prevent modifiers from sticking when switching layers */ +#define PREVENT_STUCK_MODIFIERS + +/* key combination for command */ +#define IS_COMMAND() ( \ + keyboard_report->mods == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \ + keyboard_report->mods == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \ +) + +#ifdef SUBPROJECT_ez + #include "ez/config.h" +#endif +#ifdef SUBPROJECT_infinity + #include "infinity/config.h" +#endif + + +#endif /* KEYBOARDS_ERGODOX_CONFIG_H_ */ -- cgit v1.2.3-24-g4f1b From ea8638b9440ca9e8cf99437b01c69c5f9e7693d5 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Tue, 9 Aug 2016 21:29:22 -0500 Subject: Changed left thumb back to Ctrl/Alt Removed Shift from left thumb --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) (limited to 'keyboards') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c index bc5cbc643..6c8333ab0 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/keymap.c +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -1,7 +1,3 @@ -#include "ergodox_ez.h" -#include "debug.h" -#include "action_layer.h" - /* * Keyboard: Ergodox * Keymap: replicaJunction @@ -16,6 +12,10 @@ * here: https://colemakmods.github.io/mod-dh/ */ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" + #define _CO 0 // Colemak #define _DV 1 // Dvorak #define _QW 2 // QWERTY @@ -26,9 +26,6 @@ #define _______ KC_TRNS // Simple alias that just makes the keymaps a bit easier to look at -// Uses 5 bytes of memory per 8 keys, but makes sure modifiers don't get "stuck" switching layers -#define PREVENT_STUCK_MODIFIERS - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* * Keymap: Colemak-ModDH @@ -42,12 +39,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| * | LShft | Z | X | C | D | V | | | | K | H | , | , | / | RShft | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LGui | [ | ] |CtlShf| | | _EX | - | ' | Right| \ | + * | LGui | [ | ] |CtlShf| LAlt | | _EX | - | ' | Right| \ | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | LCtrl| LAlt | | Left | Right| * ,------|------|------| |------+------+------. - * |Shift/| Ctrl/| Home | | Up | Alt/| _NU/ | + * |LCtrl/| LAlt/| Home | | Up | Alt/| _NU/ | * | BkSp | Del |------| |------| Enter| Space| * | | | _NU | | Down | | | * `--------------------' `--------------------' @@ -59,11 +56,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_BSLS,KC_Q, KC_W, KC_F, KC_P, KC_B, KC_HOME, KC_TAB, KC_A, KC_R, KC_S, KC_T, KC_G, KC_LSFT,KC_Z, KC_X, KC_C, KC_D, KC_V, ALL_T(KC_NO), - KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), MO(_NU), + KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), KC_LALT, KC_LCTL, KC_LALT, KC_HOME, - SFT_T(KC_BSPC), CTL_T(KC_DEL), MO(_NU), + CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(_NU), // right hand KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, KC_BSPC, KC_J, KC_L, KC_U, KC_Y, KC_SCLN,KC_MINS, -- cgit v1.2.3-24-g4f1b From 6a24bac9c40ea22e92421f7f9bb7c7af6f562fca Mon Sep 17 00:00:00 2001 From: Joshua T Date: Tue, 9 Aug 2016 22:16:21 -0500 Subject: Moved Shift keys to Z and ? Instead of using a thumb shift, I was given the idea of using the pinky keys as dual-role keys that also send the Shift keypress. This gives me a Shift key on each hand again, but it will make me learn to Shift with opposite hands after all. --- keyboards/atreus/keymaps/replicaJunction/keymap.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'keyboards') diff --git a/keyboards/atreus/keymaps/replicaJunction/keymap.c b/keyboards/atreus/keymaps/replicaJunction/keymap.c index 4e88f3bd1..bc4011d2c 100644 --- a/keyboards/atreus/keymaps/replicaJunction/keymap.c +++ b/keyboards/atreus/keymaps/replicaJunction/keymap.c @@ -46,17 +46,17 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_CO] = KEYMAP( - KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, - KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, - KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, - KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, SFT_T(KC_BSPC), CTL_T(KC_DEL), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_EX), KC_MINS, KC_QUOT, KC_EQL + KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, + KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, + SFT_T(KC_Z), KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, SFT_T(KC_SLSH), + KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, CTL_T(KC_DEL), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_EX), KC_MINS, KC_QUOT, KC_EQL ), [_QW] = KEYMAP( /* Qwerty */ - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, - KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, - KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, CTL_T(KC_BSPC), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_NU), TG(_GA), KC_QUOT, KC_EQL + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, + SFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, SFT_T(KC_SLSH), + KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, CTL_T(KC_BSPC), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_NU), TG(_GA), KC_QUOT, KC_EQL ), [_EX] = KEYMAP( /* Extend */ @@ -84,7 +84,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, KC_WH_U, KC_MS_U, KC_WH_D, _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, _______, _______, _______, _______, KC_BTN3, _______, KC_MS_D, _______, _______, - _______, _______, _______, _______, KC_SPC, KC_BSPC, KC_BTN2, KC_BTN1, _______, _______, _______, _______ + _______, _______, _______, KC_LSFT, KC_SPC, KC_BSPC, KC_BTN2, KC_BTN1, _______, _______, _______, _______ )}; const uint16_t PROGMEM fn_actions[] = { -- cgit v1.2.3-24-g4f1b From bc1059bc1e288e6db15e442cacad3df369421581 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Tue, 16 Aug 2016 21:55:33 -0500 Subject: Minor changes to Extend and Number layers. Brought QWERTY layer in line with normal layer. Removed Undo function, as it interfered with Shift. Moved Tab and Shift-Tab, and added Insert. --- .../replicaJunction/atreus-replica-extend.png | Bin 88880 -> 91313 bytes .../keymaps/replicaJunction/atreus-replica-num.png | Bin 72341 -> 73126 bytes keyboards/atreus/keymaps/replicaJunction/keymap.c | 20 ++++++++++---------- 3 files changed, 10 insertions(+), 10 deletions(-) (limited to 'keyboards') diff --git a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-extend.png b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-extend.png index fd8f0a6e2..61b5f647e 100644 Binary files a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-extend.png and b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-extend.png differ diff --git a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-num.png b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-num.png index fefea53c5..faeef089c 100644 Binary files a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-num.png and b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-num.png differ diff --git a/keyboards/atreus/keymaps/replicaJunction/keymap.c b/keyboards/atreus/keymaps/replicaJunction/keymap.c index bc4011d2c..a7126df64 100644 --- a/keyboards/atreus/keymaps/replicaJunction/keymap.c +++ b/keyboards/atreus/keymaps/replicaJunction/keymap.c @@ -49,28 +49,28 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, SFT_T(KC_Z), KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, SFT_T(KC_SLSH), - KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, CTL_T(KC_DEL), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_EX), KC_MINS, KC_QUOT, KC_EQL + KC_ESC, KC_TAB, KC_LGUI, KC_LALT, KC_BSPC, CTL_T(KC_DEL), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_EX), KC_MINS, KC_QUOT, KC_EQL ), [_QW] = KEYMAP( /* Qwerty */ - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, - SFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, SFT_T(KC_SLSH), - KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, CTL_T(KC_BSPC), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_NU), TG(_GA), KC_QUOT, KC_EQL + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, + SFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, SFT_T(KC_SLSH), + KC_ESC, KC_TAB, KC_LGUI, KC_LALT, KC_BSPC, CTL_T(KC_DEL), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_EX), KC_MINS, KC_QUOT, KC_EQL ), [_EX] = KEYMAP( /* Extend */ _______, _______, _______, _______, _______, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, _______, KC_LGUI, KC_LALT, KC_LCTL, _______, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, - KX_UNDO, KX_CUT, KX_COPY, _______, KX_PAST, _______, KCX_LST, _______, KC_TAB, _______, + KC_CAPS, KX_CUT, KX_COPY, _______, KX_PAST, _______, KC_TAB, KCX_LST, _______, KC_INSERT, _______, _______, _______, _______, KC_LSFT, _______, _______, KC_SPC, _______, _______, _______, KC_PSCR ), [_NU] = KEYMAP( /* Numbers and symbols */ KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_AMPR, KC_SLSH, KC_7, KC_8, KC_9, KC_ASTR, - KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRV, KC_PIPE, KC_4, KC_5, KC_6, KC_MINS, - KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, KC_BSLS, KC_1, KC_2, KC_3, KC_PLUS, - MO(_FN), _______, KC_LABK, KC_RABK, _______, _______, _______, _______, KC_0, KC_DOT, KC_EQL, _______ + KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_TILD, KC_PIPE, KC_4, KC_5, KC_6, KC_MINS, + KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_GRV, KC_BSLS, KC_1, KC_2, KC_3, KC_PLUS, + TG(_GA), _______, _______, MO(_FN), _______, _______, _______, _______, KC_0, KC_DOT, KC_EQL, _______ ), [_FN] = KEYMAP( /* Functions */ @@ -83,7 +83,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_GA] = KEYMAP( /* Gaming */ _______, _______, _______, _______, _______, _______, KC_WH_U, KC_MS_U, KC_WH_D, _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, - _______, _______, _______, _______, _______, KC_BTN3, _______, KC_MS_D, _______, _______, + KC_Z, _______, _______, _______, _______, KC_BTN3, _______, KC_MS_D, _______, _______, _______, _______, _______, KC_LSFT, KC_SPC, KC_BSPC, KC_BTN2, KC_BTN1, _______, _______, _______, _______ )}; -- cgit v1.2.3-24-g4f1b From cac69cb58029bf246b22038f034205afbedbc695 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Wed, 24 Aug 2016 23:41:14 -0500 Subject: Several key placement fixes. * Switched Tab and Super on the default layout * Moved Shift on Extend to pinky * Moved Caps Lock to upper right corner * Moved gaming toggle to avoid blocking Escape --- .../atreus-replica-base-colemakdh.png | Bin 0 -> 76319 bytes .../keymaps/replicaJunction/atreus-replica-base.png | Bin 76849 -> 0 bytes .../replicaJunction/atreus-replica-extend.png | Bin 91313 -> 91555 bytes .../replicaJunction/atreus-replica-function.png | Bin 91768 -> 92516 bytes .../keymaps/replicaJunction/atreus-replica-game.png | Bin 0 -> 72509 bytes .../keymaps/replicaJunction/atreus-replica-num.png | Bin 73126 -> 73171 bytes keyboards/atreus/keymaps/replicaJunction/keymap.c | 12 ++++++------ keyboards/atreus/keymaps/replicaJunction/readme.md | 20 +++++++++++++++----- 8 files changed, 21 insertions(+), 11 deletions(-) create mode 100644 keyboards/atreus/keymaps/replicaJunction/atreus-replica-base-colemakdh.png delete mode 100644 keyboards/atreus/keymaps/replicaJunction/atreus-replica-base.png create mode 100644 keyboards/atreus/keymaps/replicaJunction/atreus-replica-game.png (limited to 'keyboards') diff --git a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-base-colemakdh.png b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-base-colemakdh.png new file mode 100644 index 000000000..4640f9f52 Binary files /dev/null and b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-base-colemakdh.png differ diff --git a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-base.png b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-base.png deleted file mode 100644 index c8efae964..000000000 Binary files a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-base.png and /dev/null differ diff --git a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-extend.png b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-extend.png index 61b5f647e..08c2e6140 100644 Binary files a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-extend.png and b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-extend.png differ diff --git a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-function.png b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-function.png index 262e08ac9..34ad03dec 100644 Binary files a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-function.png and b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-function.png differ diff --git a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-game.png b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-game.png new file mode 100644 index 000000000..14ae35b54 Binary files /dev/null and b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-game.png differ diff --git a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-num.png b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-num.png index faeef089c..6598acb27 100644 Binary files a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-num.png and b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-num.png differ diff --git a/keyboards/atreus/keymaps/replicaJunction/keymap.c b/keyboards/atreus/keymaps/replicaJunction/keymap.c index a7126df64..c229d22f1 100644 --- a/keyboards/atreus/keymaps/replicaJunction/keymap.c +++ b/keyboards/atreus/keymaps/replicaJunction/keymap.c @@ -49,28 +49,28 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, SFT_T(KC_Z), KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, SFT_T(KC_SLSH), - KC_ESC, KC_TAB, KC_LGUI, KC_LALT, KC_BSPC, CTL_T(KC_DEL), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_EX), KC_MINS, KC_QUOT, KC_EQL + KC_ESC, KC_LGUI, KC_TAB, KC_LALT, KC_BSPC, CTL_T(KC_DEL), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_EX), KC_MINS, KC_QUOT, KC_EQL ), [_QW] = KEYMAP( /* Qwerty */ KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, SFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, SFT_T(KC_SLSH), - KC_ESC, KC_TAB, KC_LGUI, KC_LALT, KC_BSPC, CTL_T(KC_DEL), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_EX), KC_MINS, KC_QUOT, KC_EQL + KC_ESC, KC_LGUI, KC_TAB, KC_LALT, KC_BSPC, CTL_T(KC_DEL), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_EX), KC_MINS, KC_QUOT, KC_EQL ), [_EX] = KEYMAP( /* Extend */ - _______, _______, _______, _______, _______, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, + KC_CAPS, _______, _______, _______, _______, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, _______, KC_LGUI, KC_LALT, KC_LCTL, _______, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, - KC_CAPS, KX_CUT, KX_COPY, _______, KX_PAST, _______, KC_TAB, KCX_LST, _______, KC_INSERT, - _______, _______, _______, _______, KC_LSFT, _______, _______, KC_SPC, _______, _______, _______, KC_PSCR + _______, KX_CUT, KX_COPY, _______, KX_PAST, _______, KC_TAB, KCX_LST, _______, KC_INSERT, + _______, _______, _______, _______, _______, _______, _______, KC_SPC, _______, _______, _______, KC_PSCR ), [_NU] = KEYMAP( /* Numbers and symbols */ KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_AMPR, KC_SLSH, KC_7, KC_8, KC_9, KC_ASTR, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_TILD, KC_PIPE, KC_4, KC_5, KC_6, KC_MINS, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_GRV, KC_BSLS, KC_1, KC_2, KC_3, KC_PLUS, - TG(_GA), _______, _______, MO(_FN), _______, _______, _______, _______, KC_0, KC_DOT, KC_EQL, _______ + _______, TG(_GA), _______, MO(_FN), _______, _______, _______, _______, KC_0, KC_DOT, KC_EQL, _______ ), [_FN] = KEYMAP( /* Functions */ diff --git a/keyboards/atreus/keymaps/replicaJunction/readme.md b/keyboards/atreus/keymaps/replicaJunction/readme.md index 1b96926e4..21af48e8f 100644 --- a/keyboards/atreus/keymaps/replicaJunction/readme.md +++ b/keyboards/atreus/keymaps/replicaJunction/readme.md @@ -10,13 +10,13 @@ I won't claim that this layout is perfect for everyone. It does make several sig ## Base Layer ## -![Atreus base layout](atreus-replica-base.png) +![Atreus base layout](atreus-replica-base-colemakdh.png) The letters on this layout are arranged in the [Colemak Mod-DH layout](https://colemakmods.github.io/mod-dh/). Note that there are four dual-purpose keys: Shift (Backspace), Ctrl (Delete), Alt (Enter), and Space (Number layer). In QMK, these dual-role keys can be made to hold their primary key by double-tapping the key and holding on the second tap. For example, if I wanted to insert a long string of Spaces, I would tap the Space key, then tap it again and hold. A single press and hold would trigger the secondary function of the key instead. -There is still one blank key on this layout. I haven't decided what to use it for yet. On my keyboard, I have this assigned to another Shift key. +The secondary Alt on the left bottom row exists to provide a single-hand Alt+Tab shortcut, which would take two rows otherwise. ## Extend Layer ## @@ -24,11 +24,11 @@ There is still one blank key on this layout. I haven't decided what to use it fo This layout is designed primarily for keyboard navigation. Arrow keys are easily accessible under the right hand (a welcome change from the original Atreus layout, which places them under the left hand), along with Home/End and PgUp/PgDn. -Modifiers are also placed under the home row of the left hand. One of the single keyboard actions I use most is Shift+Ctrl+Left/Right to select a whole word; this layer makes those keypresses simple by adding the Ctrl and Shift keys in easy-to-reach locations. +Modifiers are also placed under the home row of the left hand. One of the single keyboard actions I use most is Shift+Ctrl+Left/Right to select a whole word; this layer makes those keypresses simple by adding the Ctrl key in an easy-to-reach location. For the common Ctrl shortcuts, I also added some hotkeys to this layer over the letter keys they are associated with. This gives the Extend key some extra utility by letting it "feel" like a Ctrl key in some cases. -The Space key exists to prevent going from this layer directly into the Number layer. Similarly, the Shift key on the left thumb helps make sure that the Backspace function doesn't fire (the other role of this key on the base layout). +The Space key exists to prevent going from this layer directly into the Number layer. Similarly, the Shift key on the left pinky helps make sure that the normal letter (Z) doesn't fire. ## Number and Symbol Layer ## @@ -44,4 +44,14 @@ This layer also provides plenty of symbol shortcuts. Most of these can be access Function keys (F1-F12) are on this layer, as well as some more generic "functions" such as media keys. I've also set up a mirror image of the arrows from the Extend layer in case I need to use these with my left hand, but I don't do this very often. -The reset key is on this layer, as well as a toggle from Colemak to QWERTY and back. The QWERTY layer is not currently documented (nor is a small "gaming" layer that adds mouse keys on top of QWERTY). \ No newline at end of file +The reset key is on this layer, as well as a toggle from Colemak to QWERTY and back. The QWERTY layer is not currently documented, but it is functionally identical to the base layer except for letter positions. + +## Gaming Layer ## + +![Atreus gaming layer](atreus-replica-game.png) + +This is a small layer developed to allow some simple gameplay without a mouse. This layer is a toggle (from the Number layer), so it is designed to stay on while in use. + +The keys on the left hand bring Space into the left thumb's reach, as well as overriding the dual-role Shift with its standard function (Z in both QWERTY and in Colemak). This allows easy Shift presses without blocking the Z key, commonly used in games. + +I would probably not consider this a hard-core gaming keyboard, and this layout does have the huge problem of blocking access to the number keys, but for more casual games, it plays quite well. I've used it quite a bit on Minecraft, for example, and I'm quite pleased with it. \ No newline at end of file -- cgit v1.2.3-24-g4f1b From b0c3d596816c178ccd94738a3866a08b71027d0d Mon Sep 17 00:00:00 2001 From: Joshua T Date: Wed, 24 Aug 2016 23:49:33 -0500 Subject: Fixed getting "stuck" in gaming layer --- keyboards/atreus/keymaps/replicaJunction/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards') diff --git a/keyboards/atreus/keymaps/replicaJunction/keymap.c b/keyboards/atreus/keymaps/replicaJunction/keymap.c index c229d22f1..52d3677fa 100644 --- a/keyboards/atreus/keymaps/replicaJunction/keymap.c +++ b/keyboards/atreus/keymaps/replicaJunction/keymap.c @@ -84,7 +84,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, KC_WH_U, KC_MS_U, KC_WH_D, _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, KC_Z, _______, _______, _______, _______, KC_BTN3, _______, KC_MS_D, _______, _______, - _______, _______, _______, KC_LSFT, KC_SPC, KC_BSPC, KC_BTN2, KC_BTN1, _______, _______, _______, _______ + _______, TG(_GA), _______, KC_LSFT, KC_SPC, KC_BSPC, KC_BTN2, KC_BTN1, _______, _______, _______, _______ )}; const uint16_t PROGMEM fn_actions[] = { -- cgit v1.2.3-24-g4f1b From 8ec7341fb27186e9b3dceb8acd97c5d7fb263e1d Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 15 Oct 2016 15:28:16 -0500 Subject: Added Ctrl+` (ConEmu shortcut) --- keyboards/atreus/keymaps/replicaJunction/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards') diff --git a/keyboards/atreus/keymaps/replicaJunction/keymap.c b/keyboards/atreus/keymaps/replicaJunction/keymap.c index 52d3677fa..f7ef1174d 100644 --- a/keyboards/atreus/keymaps/replicaJunction/keymap.c +++ b/keyboards/atreus/keymaps/replicaJunction/keymap.c @@ -60,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_EX] = KEYMAP( /* Extend */ - KC_CAPS, _______, _______, _______, _______, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, + KC_CAPS, _______, _______, _______, LCTL(KC_GRV), KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, _______, KC_LGUI, KC_LALT, KC_LCTL, _______, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, _______, KX_CUT, KX_COPY, _______, KX_PAST, _______, KC_TAB, KCX_LST, _______, KC_INSERT, _______, _______, _______, _______, _______, _______, _______, KC_SPC, _______, _______, _______, KC_PSCR -- cgit v1.2.3-24-g4f1b From a9c8f2f5b888e18857bc2987c4b5058912404abe Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 15 Oct 2016 16:44:26 -0500 Subject: Reduced TAPPING_TERM to 150 Also removed duplicate definition of PREVENT_STUCK_MODIFIERS --- keyboards/ergodox/keymaps/replicaJunction/config.h | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'keyboards') diff --git a/keyboards/ergodox/keymaps/replicaJunction/config.h b/keyboards/ergodox/keymaps/replicaJunction/config.h index d03e193db..c620349ad 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/config.h +++ b/keyboards/ergodox/keymaps/replicaJunction/config.h @@ -28,12 +28,9 @@ along with this program. If not, see . /* define if matrix has ghost */ //#define MATRIX_HAS_GHOST -#define TAPPING_TERM 200 +#define TAPPING_TERM 150 #define IGNORE_MOD_TAP_INTERRUPT // this makes it possible to do rolling combos (zx) with keys that convert to other keys on hold (z becomes ctrl when you hold it, and when this option isn't enabled, z rapidly followed by x actually sends Ctrl-x. That's bad.) -// Uses 5 bytes of memory per 8 keys, but makes sure modifiers don't get "stuck" switching layers -#define PREVENT_STUCK_MODIFIERS - // I don't have any locking keys, so I don't need these features @@ -44,6 +41,7 @@ along with this program. If not, see . //#define LOCKING_RESYNC_ENABLE /* Prevent modifiers from sticking when switching layers */ +/* Uses 5 bytes of memory per 8 keys, but makes sure modifiers don't get "stuck" switching layers */ #define PREVENT_STUCK_MODIFIERS /* key combination for command */ -- cgit v1.2.3-24-g4f1b From d9db5395b3f11728926dcde77046a5ac7bff0123 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 15 Oct 2016 16:51:40 -0500 Subject: Updated layout to 1.2 - lots of changes Rewrote QWERTY to make it a first-class citizen instead of just a glorified game layer. Added a lot of keys to Extend layer to bring it in line with my Atreus. Plenty of other changes too. --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 186 ++++++++------------- 1 file changed, 74 insertions(+), 112 deletions(-) (limited to 'keyboards') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c index 6c8333ab0..7c2b051f9 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/keymap.c +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -1,7 +1,7 @@ /* * Keyboard: Ergodox * Keymap: replicaJunction - * Version: 1.1 + * Version: 1.2 * * This keymap is designed to complement my Atreus keyboard layout, found in keyboards/atreus. * The Atreus keyboard is a 40% board whose design was heavily influenced by the Ergodox, and I now @@ -17,14 +17,22 @@ #include "action_layer.h" #define _CO 0 // Colemak -#define _DV 1 // Dvorak -#define _QW 2 // QWERTY -#define _ME 3 // media keys -#define _NU 4 // numpad -#define _EX 5 // extend -#define _GA 6 // mouse overlay for gaming +#define _QW 1 // QWERTY +#define _ME 2 // media keys +#define _NU 3 // numpad +#define _EX 4 // extend +#define _GA 5 // mouse overlay for gaming -#define _______ KC_TRNS // Simple alias that just makes the keymaps a bit easier to look at +// Some quick aliases, just to make it look pretty +#define _______ KC_TRNS +#define KCX_CGR LCTL(KC_GRV) +#define KCX_LST LSFT(KC_TAB) +#define KX_COPY LCTL(KC_C) +#define KX_CUT LCTL(KC_X) +#define KX_PAST LCTL(KC_V) +#define KX_UNDO LCTL(KC_Z) + +; // This doesn't do anything. It's just for VSCode because its syntax highlighting is weird for the above #define statements. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* @@ -33,16 +41,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,--------------------------------------------------. ,--------------------------------------------------. * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | = | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | \ | Q | W | F | P | B | Home | | BkSp | J | L | U | Y | ; | - | + * | Tab | Q | W | F | P | B | Home | | BkSp | J | L | U | Y | ; | - | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | Tab | A | R | S | T | G |------| |------| M | N | E | I | O | ' | + * | LCtl | A | R | S | T | G |------| |------| M | N | E | I | O | ' | * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| * | LShft | Z | X | C | D | V | | | | K | H | , | , | / | RShft | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * | LGui | [ | ] |CtlShf| LAlt | | _EX | - | ' | Right| \ | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. - * | LCtrl| LAlt | | Left | Right| + * | LCtrl| ~GA | | Left | Right| * ,------|------|------| |------+------+------. * |LCtrl/| LAlt/| Home | | Up | Alt/| _NU/ | * | BkSp | Del |------| |------| Enter| Space| @@ -53,12 +61,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_CO] = KEYMAP( // left hand KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, - KC_BSLS,KC_Q, KC_W, KC_F, KC_P, KC_B, KC_HOME, - KC_TAB, KC_A, KC_R, KC_S, KC_T, KC_G, + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_HOME, + KC_LCTL,KC_A, KC_R, KC_S, KC_T, KC_G, KC_LSFT,KC_Z, KC_X, KC_C, KC_D, KC_V, ALL_T(KC_NO), KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), KC_LALT, - KC_LCTL, KC_LALT, + KC_LCTL, TG(_GA), KC_HOME, CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(_NU), // right hand @@ -73,56 +81,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_DOWN, ALT_T(KC_ENT), LT(_NU,KC_SPC) ), - /* - * Keymap: Dvorak layout - * - * The right index backspace is a nod to my TypeMatrix keyboard, which has - * Backspace in the center. - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | / | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | \ | ' | , | . | P | Y | Home | | BkSp | F | G | C | R | L | = | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | Tab | A | O | E | U | I |------| |------| D | H | T | N | S | - | - * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| - * | LShft | ; | Q | J | K | X | | | | B | M | W | V | Z | RShft | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LGui | [ | ] |CtlShf| _NU | | Left | Up | Down | Right| \ | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | LCtrl| LAlt | | _ME | RAlt | - * ,------|------|------| |------+------+------. - * | Ctl/ | Alt/ | Home | | PgUp | | _NU/ | - * | BkSp | Del |------| |------| Enter| Space| - * | | | _NU | | PgDn | | | - * `--------------------' `--------------------' - */ - -// _DV -[_DV] = KEYMAP( - // left hand - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, - KC_BSLS,KC_QUOT,KC_COMM, KC_DOT, KC_P, KC_Y, KC_HOME, - KC_TAB, KC_A, KC_O, KC_E, KC_U, KC_I, - KC_LSFT,KC_SCLN,KC_Q, KC_J, KC_K, KC_X, ALL_T(KC_NO), - KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), MO(_NU), - - KC_LCTL, KC_LALT, - KC_HOME, - CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(_NU), - // right hand - KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_SLSH, - KC_BSPC, KC_F, KC_G, KC_C, KC_R, KC_L, KC_EQL, - KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, - KC_BSLS, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, - KC_LEFT,KC_UP, KC_DOWN,KC_RGHT,KC_BSLS, - - MO(_ME), KC_RALT, - KC_PGUP, - KC_PGDN, KC_ENT, LT(_NU,KC_SPC) - ), - /* * Keymap: QWERTY layout. * @@ -132,45 +90,45 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * and repositioning the arrow keys at the bottom right corner. * * ,--------------------------------------------------. ,--------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | - | + * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | = | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | LShift | Q | W | E | R | T | +L1 | | BkSp | Y | U | I | O | P | ] | + * | LShift | Q | W | E | R | T | Home | | BkSp | Y | U | I | O | P | - | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | Tab | A | S | D | F | G |------| |------| H | J | K | L | ; | ' | - * |--------+------+------+------+------+------| FN2 | | ~L1 |------+------+------+------+------+--------| - * | LShft | Z | X | C | V | B | | | | N | M | , | . | Up | RShft | + * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| + * | LShft | Z | X | C | V | B | | | | N | M | , | . | / | RShft | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LCtrl| ` | \ |CtlShf| _NU | | ~_GA | / | Left | Down | Right| + * | LGui | ` | \ |CtlShf| _NU | | _EX | - | ' | [ | ] | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. - * | LCtrl| LAlt | | _ME | ~_GA | + * | LCtrl| ~GA | | Left | Right| * ,------|------|------| |------+------+------. - * | | | Home | | PgUp | | _NU/ | - * | Space| LAlt |------| |------| Enter| Space| - * | | | End | | PgDn | | | + * |LCtrl/| LAlt/| Home | | Up | Alt/| _NU/ | + * | BkSp | Del |------| |------| Enter| Space| + * | | | _NU | | Down | | | * `--------------------' `--------------------' */ [_QW] = KEYMAP( // Layer1: QWERTY // left hand KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, - KC_LSFT,KC_Q, KC_W, KC_E, KC_R, KC_T, KC_HOME, - KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_HOME, + KC_LCTL,KC_A, KC_S, KC_D, KC_F, KC_G, KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), KC_LCTL,KC_GRV, KC_SLSH,LCTL(KC_LSFT), MO(_NU), - KC_LCTL,KC_LALT, - KC_HOME, - KC_SPC, KC_LALT, KC_END, + KC_LCTL,TG(_GA), + KC_HOME, + CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(_NU) // right hand - KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_RBRC, - KC_BSPC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_EQL, - KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_MINS, - KC_END, KC_N, KC_M, KC_COMM,KC_DOT, KC_UP ,KC_RSFT, - TG(_GA),KC_UP, KC_LEFT,KC_DOWN,KC_RGHT, + KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, + KC_BSPC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_MINS, + KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT, + KC_BSLS, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, + MO(_EX),KC_MINS,KC_QUOT,KC_RGHT,KC_BSLS, - MO(_ME),TG(_GA), - KC_PGUP, - KC_PGDN,KC_ENT,LT(_NU,KC_SPC) + KC_LEFT, KC_RGHT, + KC_UP, + KC_DOWN, ALT_T(KC_ENT), LT(_NU,KC_SPC) ), /* @@ -190,10 +148,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | | % | ^ | [ | ] | ~ | | | | \ | 1 | 2 | 3 | + | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | RESET|QWERTY|Dvorak|Colemk| | | 0 | . | = | | | + * | |QWERTY|Colemk| | | | 0 | . | = | | | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. - * |NumLck| | | | | + * |NumLck| RESET| | | | * ,------|------|------| |------+------+------. * | | | | | | | | * | | |------| |------| | | @@ -206,9 +164,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_AMPR, _______, _______, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRV, _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, _______, - RESET, DF(_QW), DF(_DV), DF(_CO), _______, + _______, DF(_QW), DF(_CO), _______, _______, - KC_NLCK,_______, + KC_NLCK,RESET, _______, _______,_______,_______, // right hand @@ -227,13 +185,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * Keymap: Extend * * ,--------------------------------------------------. ,--------------------------------------------------. - * | | | | | | | | | | | | | | | | + * | | F11 | F12 | F13 | F14 | F15 | Mute | | | F16 | F17 | F18 | F19 | F20 | | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | | | | | | | | | | | | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | |------| |------| | | | | | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | | | | | | | | | | | + * | | | | | | Ctrl`| Vol | | | PgUp | Home | Up | End | Del | | + * |--------+------+------+------+------+------| Up | | |------+------+------+------+------+--------| + * | | | Gui | Alt | Ctrl | |------| |------| PgDn | Left | Down | Right| BkSp | PrntScr| + * |--------+------+------+------+------+------| Vol | | |------+------+------+------+------+--------| + * | | Undo | Cut | Copy | | Paste| Down | | | | ^Tab | Tab | |Insert| | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * | | | | | | | | | | | | * `----------------------------------' `----------------------------------' @@ -244,23 +202,26 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | |------| |------| | | * | | | | | | | | * `--------------------' `--------------------' + * + * Ctrl+` is a keyboard shortcut for the program ConEmu, which provides a Quake-style drop-down command prompt. + * */ [_EX] = KEYMAP( // left hand - _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, + _______, KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_MUTE, + _______, _______, _______, _______, _______, KCX_CGR, KC_VOLU, + _______, _______, KC_LGUI, KC_LALT, KC_LCTL, _______, + _______, KX_UNDO, KX_CUT, KX_COPY, _______, KX_PAST, KC_VOLD, _______, _______, _______, _______, _______, _______,_______, _______, _______,_______,_______, // right hand - _______, _______, _______, _______, _______, _______, _______, - _______, KC_PGUP, KC_HOME, KC_UP, KC_END, _______, _______, - KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, - _______, _______, _______, _______, _______, _______, _______, + _______, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, _______, + _______, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, _______, + KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, KC_PSCR, + _______, KCX_LST, KC_TAB, _______, _______, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, @@ -270,7 +231,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* * Keymap: Gaming * - * This is mostly a mouse overlay for the right hand while the left hand uses the QWERTY layout. + * Provides a mouse overlay for the right hand, and also moves some "gamer friendly" keys to the left, such as space. + * This layer also removes a lot of dual-role keys, as when gaming, it's nicer not to need to keep track of those. * * ,--------------------------------------------------. ,--------------------------------------------------. * | | | | | | | | | | | | | | | | @@ -281,13 +243,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | | | | | | | | | | | | | | | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | |MClick| | | | | + * | LCtrl| | | | | | | | | | | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. - * | | | | | ~_GA| + * | | ~_GA | | |MClick| * ,------|------|------| |------+------+------. * | | | | | | | | - * | | |------| |------|RClick|LClick| + * | Space| |------| |------|RClick|LClick| * | | | | | | | | * `--------------------' `--------------------' */ @@ -297,19 +259,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, + KC_LCTL, _______, _______, _______, _______, _______,_______, _______, - _______,_______,_______, + KC_SPC, _______,_______, // right hand _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_WH_U, KC_MS_U, KC_WH_D, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, _______, _______, _______, _______, _______, _______, _______, - KC_BTN3, _______, _______, _______, _______, - _______, _______, + _______, _______, _______, _______, _______, + _______, KC_BTN3, _______, _______, KC_BTN2, KC_BTN1 ), -- cgit v1.2.3-24-g4f1b From c67f6ee872561358c1f4d29b2e36087b03080253 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 15 Oct 2016 17:03:27 -0500 Subject: Added Menu key (the rclick menu) --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'keyboards') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c index 7c2b051f9..f57e7373f 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/keymap.c +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -189,9 +189,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| * | | | | | | Ctrl`| Vol | | | PgUp | Home | Up | End | Del | | * |--------+------+------+------+------+------| Up | | |------+------+------+------+------+--------| - * | | | Gui | Alt | Ctrl | |------| |------| PgDn | Left | Down | Right| BkSp | PrntScr| + * | | | Gui | Alt | Ctrl | |------| |------| PgDn | Left | Down | Right| BkSp | Menu | * |--------+------+------+------+------+------| Vol | | |------+------+------+------+------+--------| - * | | Undo | Cut | Copy | | Paste| Down | | | | ^Tab | Tab | |Insert| | + * | | Undo | Cut | Copy | | Paste| Down | | | | ^Tab | Tab | |Insert| PrntScr| * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * | | | | | | | | | | | | * `----------------------------------' `----------------------------------' @@ -220,8 +220,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // right hand _______, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, _______, _______, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, _______, - KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, KC_PSCR, - _______, KCX_LST, KC_TAB, _______, _______, KC_INS, _______, + KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, KC_MENU, + _______, KCX_LST, KC_TAB, _______, _______, KC_INS, KC_PSCR, _______, _______, _______, _______, _______, _______, _______, _______, -- cgit v1.2.3-24-g4f1b From 07149812889e433ce684b14666e89e27264a41ce Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 15 Oct 2016 17:19:07 -0500 Subject: Fixed typo --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c index f57e7373f..f3a2e9513 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/keymap.c +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -118,7 +118,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL,TG(_GA), KC_HOME, - CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(_NU) + CTL_T(KC_BSPC), ALT_T(KC_DEL), MO(_NU), // right hand KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, KC_BSPC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_MINS, -- cgit v1.2.3-24-g4f1b From 80fe2ea676d54d917209567a346963ab9fd93614 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 15 Oct 2016 17:23:25 -0500 Subject: Switched Tab and Ctrl back --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'keyboards') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c index f3a2e9513..eaa781070 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/keymap.c +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -41,9 +41,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,--------------------------------------------------. ,--------------------------------------------------. * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | = | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | Tab | Q | W | F | P | B | Home | | BkSp | J | L | U | Y | ; | - | + * | LCtrl | Q | W | F | P | B | Home | | BkSp | J | L | U | Y | ; | - | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | LCtl | A | R | S | T | G |------| |------| M | N | E | I | O | ' | + * | Tab | A | R | S | T | G |------| |------| M | N | E | I | O | ' | * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| * | LShft | Z | X | C | D | V | | | | K | H | , | , | / | RShft | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' @@ -61,8 +61,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_CO] = KEYMAP( // left hand KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, - KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_HOME, - KC_LCTL,KC_A, KC_R, KC_S, KC_T, KC_G, + KC_LCTL,KC_Q, KC_W, KC_F, KC_P, KC_B, KC_HOME, + KC_TAB, KC_A, KC_R, KC_S, KC_T, KC_G, KC_LSFT,KC_Z, KC_X, KC_C, KC_D, KC_V, ALL_T(KC_NO), KC_LGUI,KC_LBRC,KC_RBRC, LCTL(KC_LSFT), KC_LALT, @@ -92,7 +92,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,--------------------------------------------------. ,--------------------------------------------------. * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | = | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | LShift | Q | W | E | R | T | Home | | BkSp | Y | U | I | O | P | - | + * | LCtrl | Q | W | E | R | T | Home | | BkSp | Y | U | I | O | P | - | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | Tab | A | S | D | F | G |------| |------| H | J | K | L | ; | ' | * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| @@ -111,8 +111,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_QW] = KEYMAP( // Layer1: QWERTY // left hand KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, - KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_HOME, - KC_LCTL,KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LCTL,KC_Q, KC_W, KC_E, KC_R, KC_T, KC_HOME, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), KC_LCTL,KC_GRV, KC_SLSH,LCTL(KC_LSFT), MO(_NU), -- cgit v1.2.3-24-g4f1b From 1455a44a449378c55e178ac20d37146ab5132e7c Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 15 Oct 2016 17:41:36 -0500 Subject: Added = to match Atreus --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'keyboards') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c index eaa781070..d467c56b4 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/keymap.c +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| * | LShft | Z | X | C | D | V | | | | K | H | , | , | / | RShft | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LGui | [ | ] |CtlShf| LAlt | | _EX | - | ' | Right| \ | + * | LGui | [ | ] |CtlShf| LAlt | | _EX | - | ' | = | \ | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | LCtrl| ~GA | | Left | Right| @@ -74,7 +74,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_BSPC, KC_J, KC_L, KC_U, KC_Y, KC_SCLN,KC_MINS, KC_M, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_BSLS, KC_K, KC_H, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, - MO(_EX),KC_MINS,KC_QUOT,KC_RGHT,KC_BSLS, + MO(_EX),KC_MINS,KC_QUOT,KC_EQL, KC_BSLS, KC_LEFT, KC_RGHT, KC_UP, @@ -98,7 +98,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| * | LShft | Z | X | C | V | B | | | | N | M | , | . | / | RShft | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LGui | ` | \ |CtlShf| _NU | | _EX | - | ' | [ | ] | + * | LGui | ` | \ |CtlShf| _NU | | _EX | - | ' | = | \ | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | LCtrl| ~GA | | Left | Right| @@ -124,7 +124,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_BSPC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_MINS, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT, KC_BSLS, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, - MO(_EX),KC_MINS,KC_QUOT,KC_RGHT,KC_BSLS, + MO(_EX),KC_MINS,KC_QUOT,KC_EQL, KC_BSLS, KC_LEFT, KC_RGHT, KC_UP, -- cgit v1.2.3-24-g4f1b From 825563f34d233728b03e5311cc0d77c40123c1cb Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 15 Oct 2016 17:56:09 -0500 Subject: Moved Extend tab and ^tab --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'keyboards') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c index d467c56b4..949a713ba 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/keymap.c +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -26,7 +26,7 @@ // Some quick aliases, just to make it look pretty #define _______ KC_TRNS #define KCX_CGR LCTL(KC_GRV) -#define KCX_LST LSFT(KC_TAB) +#define KX_STAB LSFT(KC_TAB) #define KX_COPY LCTL(KC_C) #define KX_CUT LCTL(KC_X) #define KX_PAST LCTL(KC_V) @@ -221,7 +221,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, _______, _______, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, _______, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, KC_MENU, - _______, KCX_LST, KC_TAB, _______, _______, KC_INS, KC_PSCR, + _______, _______, KX_STAB, KC_TAB, _______, KC_INS, KC_PSCR, _______, _______, _______, _______, _______, _______, _______, _______, -- cgit v1.2.3-24-g4f1b From a2adff94bb52b5fb7c50b90716255ccfae9f53c3 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 15 Oct 2016 18:05:22 -0500 Subject: Reversed tilde and grave --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'keyboards') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c index 949a713ba..610fa5856 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/keymap.c +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -144,9 +144,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| * | | ! | @ | { | } | & | | | | / | 7 | 8 | 9 | * | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | # | $ | ( | ) | ` |------| |------| | | 4 | 5 | 6 | - | | + * | | # | $ | ( | ) | ~ |------| |------| | | 4 | 5 | 6 | - | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | % | ^ | [ | ] | ~ | | | | \ | 1 | 2 | 3 | + | | + * | | % | ^ | [ | ] | ` | | | | \ | 1 | 2 | 3 | + | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * | |QWERTY|Colemk| | | | 0 | . | = | | | * `----------------------------------' `----------------------------------' @@ -162,8 +162,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // left hand _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_AMPR, _______, - _______, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRV, - _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, _______, + _______, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_TILD, + _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_GRV, _______, _______, DF(_QW), DF(_CO), _______, _______, KC_NLCK,RESET, -- cgit v1.2.3-24-g4f1b From 896c1e6f1efbc7827249872ef64261facec484c5 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 15 Oct 2016 18:19:09 -0500 Subject: Added a bit more detail to header --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 51 ++++++++++++---------- 1 file changed, 27 insertions(+), 24 deletions(-) (limited to 'keyboards') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c index 610fa5856..b7a14c10c 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/keymap.c +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -8,6 +8,10 @@ * have both keyboards, so I've designed these layouts in an effort to make switching between the * two as easy as possible. * + * I've also tried to make use of the extra keys on the Ergodox in as logical of a manner as possible, + * adding to the layers in the Atreus config without disturbing what's there already. This allows for + * things like F11-F20, the Application (Menu) key, and better media key placement. + * * The default key layout in this keymap is Colemak-ModDH. Information on that layout can be found * here: https://colemakmods.github.io/mod-dh/ */ @@ -35,29 +39,28 @@ ; // This doesn't do anything. It's just for VSCode because its syntax highlighting is weird for the above #define statements. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -/* - * Keymap: Colemak-ModDH - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | = | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | LCtrl | Q | W | F | P | B | Home | | BkSp | J | L | U | Y | ; | - | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | Tab | A | R | S | T | G |------| |------| M | N | E | I | O | ' | - * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| - * | LShft | Z | X | C | D | V | | | | K | H | , | , | / | RShft | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LGui | [ | ] |CtlShf| LAlt | | _EX | - | ' | = | \ | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | LCtrl| ~GA | | Left | Right| - * ,------|------|------| |------+------+------. - * |LCtrl/| LAlt/| Home | | Up | Alt/| _NU/ | - * | BkSp | Del |------| |------| Enter| Space| - * | | | _NU | | Down | | | - * `--------------------' `--------------------' - */ - + /* + * Keymap: Colemak-ModDH + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | | 6 | 7 | 8 | 9 | 0 | = | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | LCtrl | Q | W | F | P | B | Home | | BkSp | J | L | U | Y | ; | - | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Tab | A | R | S | T | G |------| |------| M | N | E | I | O | ' | + * |--------+------+------+------+------+------| Hyper| | \ |------+------+------+------+------+--------| + * | LShft | Z | X | C | D | V | | | | K | H | , | , | / | RShft | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LGui | [ | ] |CtlShf| LAlt | | _EX | - | ' | = | \ | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LCtrl| ~GA | | Left | Right| + * ,------|------|------| |------+------+------. + * |LCtrl/| LAlt/| Home | | Up | Alt/| _NU/ | + * | BkSp | Del |------| |------| Enter| Space| + * | | | _NU | | Down | | | + * `--------------------' `--------------------' + */ [_CO] = KEYMAP( // left hand KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, @@ -131,7 +134,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_DOWN, ALT_T(KC_ENT), LT(_NU,KC_SPC) ), -/* + /* * Keymap: Numbers and symbols * * Note that the number keys here are actually numpad keystrokes. This often doesn't matter, but it may be relevant in a few cases. -- cgit v1.2.3-24-g4f1b From 7d698cc494f984d8e526a6fb29f838ae0166e909 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Mon, 24 Oct 2016 10:30:00 -0500 Subject: Added comments with ASCII art keymaps --- keyboards/atreus/keymaps/replicaJunction/keymap.c | 106 +++++++++++++++++++++- 1 file changed, 105 insertions(+), 1 deletion(-) (limited to 'keyboards') diff --git a/keyboards/atreus/keymaps/replicaJunction/keymap.c b/keyboards/atreus/keymaps/replicaJunction/keymap.c index f7ef1174d..4d46db69e 100644 --- a/keyboards/atreus/keymaps/replicaJunction/keymap.c +++ b/keyboards/atreus/keymaps/replicaJunction/keymap.c @@ -45,6 +45,21 @@ ; // This doesn't do anything. It's just for VSCode because its syntax highlighting is weird for the above #define statements. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* + * Colemak-ModDH + * + * ,----------------------------------. ,----------------------------------. + * | Q | W | F | P | B | | J | L | U | Y | ; | + * +------+------+------+------+------| +------+------+------+------+------| + * | A | R | S | T | G | | M | N | E | I | O | + * +------+------+------+------+------| +------+------+------+------+------| + * |Z Shft| X | C | D | V | ,------. ,------. | K | H | , | . |/ Shft| + * +------+------+------+------+------| | Ctrl | | Alt | +------+------+------+------+------| + * | Esc | Gui | Tab | Alt | Bksp | | Del | | Enter| |Sp/_NU| _EX | - | ' | = | + * `----------------------------------' `------' `------' `----------------------------------' + * + */ [_CO] = KEYMAP( KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, @@ -52,6 +67,20 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_ESC, KC_LGUI, KC_TAB, KC_LALT, KC_BSPC, CTL_T(KC_DEL), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_EX), KC_MINS, KC_QUOT, KC_EQL ), +/* + * QWERTY + * + * ,----------------------------------. ,----------------------------------. + * | Q | W | E | R | T | | Y | U | I | O | P | + * +------+------+------+------+------| +------+------+------+------+------| + * | A | S | D | F | G | | H | J | K | L | ; | + * +------+------+------+------+------| +------+------+------+------+------| + * |Z Shft| X | C | V | B | ,------. ,------. | N | M | , | . |/ Shft| + * +------+------+------+------+------| | Ctrl | | Alt | +------+------+------+------+------| + * | Esc | Gui | Tab | Alt | Bksp | | Del | | Enter| |Sp/_NU| _EX | - | ' | = | + * `----------------------------------' `------' `------' `----------------------------------' + * + */ [_QW] = KEYMAP( /* Qwerty */ KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, @@ -59,13 +88,45 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_ESC, KC_LGUI, KC_TAB, KC_LALT, KC_BSPC, CTL_T(KC_DEL), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_EX), KC_MINS, KC_QUOT, KC_EQL ), +/* + * Extend + * + * Ctrl+` is a keyboard shortcut for the program ConEmu, which brings up a dropdown console window. + * + * Also note that some dual-role keys are overridden here with their modifiers + * + * ,----------------------------------. ,----------------------------------. + * | Caps | | | |Ctrl `| | PgUp | Home | Up | End | Del | + * +------+------+------+------+------| +------+------+------+------+------| + * | | Gui | Alt | Ctrl | | | PgDn | Left | Down | Right| Bksp | + * +------+------+------+------+------| +------+------+------+------+------| + * | Shift| Cut | Copy | | Paste| ,------. ,------. | | ^Tab | Tab | |Insert| + * +------+------+------+------+------| | | | | +------+------+------+------+------| + * | | | | | | | | | | | Space| | | |PrntSc| + * `----------------------------------' `------' `------' `----------------------------------' + * + */ [_EX] = KEYMAP( /* Extend */ KC_CAPS, _______, _______, _______, LCTL(KC_GRV), KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, _______, KC_LGUI, KC_LALT, KC_LCTL, _______, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, - _______, KX_CUT, KX_COPY, _______, KX_PAST, _______, KC_TAB, KCX_LST, _______, KC_INSERT, + KC_LSFT, KX_CUT, KX_COPY, _______, KX_PAST, _______, KCX_LST, KC_TAB, _______, KC_INS, _______, _______, _______, _______, _______, _______, _______, KC_SPC, _______, _______, _______, KC_PSCR ), +/* + * Numbers and symbols + * + * ,----------------------------------. ,----------------------------------. + * | ! | @ | { | } | & | | / | 7 | 8 | 9 | * | + * +------+------+------+------+------| +------+------+------+------+------| + * | # | $ | ( | ) | ~ | | | | 4 | 5 | 6 | - | + * +------+------+------+------+------| +------+------+------+------+------| + * | % | ^ | [ | ] | ` | ,------. ,------. | \ | 1 | 2 | 3 | + | + * +------+------+------+------+------| | | | | +------+------+------+------+------| + * | | _GA | | _FN | | | | | | | | 0 | . | = | | + * `----------------------------------' `------' `------' `----------------------------------' + * + */ [_NU] = KEYMAP( /* Numbers and symbols */ KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_AMPR, KC_SLSH, KC_7, KC_8, KC_9, KC_ASTR, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_TILD, KC_PIPE, KC_4, KC_5, KC_6, KC_MINS, @@ -73,6 +134,20 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, TG(_GA), _______, MO(_FN), _______, _______, _______, _______, KC_0, KC_DOT, KC_EQL, _______ ), +/* + * Functions + * + * ,----------------------------------. ,----------------------------------. + * | | | | | | | | F7 | F8 | F9 | F10 | + * +------+------+------+------+------| +------+------+------+------+------| + * | | | | | | | | F4 | F5 | F6 | F11 | + * +------+------+------+------+------| +------+------+------+------+------| + * | | Vol ^| Mute | Vol v| Play | ,------. ,------. | | F1 | F2 | F3 | F12 | + * +------+------+------+------+------| | | | | +------+------+------+------+------| + * | | | | | Stop | | | | | | | | _CO | _GA | RESET| + * `----------------------------------' `------' `------' `----------------------------------' + * + */ [_FN] = KEYMAP( /* Functions */ KC_DEL, KC_HOME, KC_UP, KC_END, KC_PGUP, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_BSPC, KC_LEFT, KC_DOWN, KC_RGHT, KC_DOWN, _______, KC_F4, KC_F5, KC_F6, KC_F11, @@ -80,6 +155,20 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, KC_MSTP, _______, _______, _______, KC_NO, DF(_CO), DF(_QW), RESET ), +/* + * Gaming + * + * ,----------------------------------. ,----------------------------------. + * | | | | | | | |Whl Up| MUp |Whl Dn| | + * +------+------+------+------+------| +------+------+------+------+------| + * | | | | | | | | MLeft| MDown|MRight| | + * +------+------+------+------+------| +------+------+------+------+------| + * | Z | | | | | ,------. ,------. |MClick| | | | | + * +------+------+------+------+------| | Bksp | |RClick| +------+------+------+------+------| + * | | _GA | | Shift| Space| | | | | |LClick| | | | | + * `----------------------------------' `------' `------' `----------------------------------' + * + */ [_GA] = KEYMAP( /* Gaming */ _______, _______, _______, _______, _______, _______, KC_WH_U, KC_MS_U, KC_WH_D, _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, @@ -87,6 +176,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, TG(_GA), _______, KC_LSFT, KC_SPC, KC_BSPC, KC_BTN2, KC_BTN1, _______, _______, _______, _______ )}; +/* + * Template + * + * ,----------------------------------. ,----------------------------------. + * | | | | | | | | | | | | + * +------+------+------+------+------| +------+------+------+------+------| + * | | | | | | | | | | | | + * +------+------+------+------+------| +------+------+------+------+------| + * | | | | | | ,------. ,------. | | | | | | + * +------+------+------+------+------| | | | | +------+------+------+------+------| + * | | | | | | | | | | | | | | | | + * `----------------------------------' `------' `------' `----------------------------------' + * + */ + const uint16_t PROGMEM fn_actions[] = { }; -- cgit v1.2.3-24-g4f1b From 8377d5fdc57ab0a4f1757d9f787592ede1b94cfe Mon Sep 17 00:00:00 2001 From: Kaleb Elwert Date: Tue, 3 Jan 2017 23:41:52 -0800 Subject: Initial whitefox support --- keyboards/whitefox/Makefile | 3 + keyboards/whitefox/bootloader_defs.h | 1 + keyboards/whitefox/chconf.h | 524 ++++++++++++++++++++++++++++ keyboards/whitefox/config.h | 78 +++++ keyboards/whitefox/halconf.h | 353 +++++++++++++++++++ keyboards/whitefox/keymaps/default/keymap.c | 51 +++ keyboards/whitefox/keymaps/matt3o/keymap.c | 92 +++++ keyboards/whitefox/led.c | 24 ++ keyboards/whitefox/matrix.c | 132 +++++++ keyboards/whitefox/mcuconf.h | 66 ++++ keyboards/whitefox/rules.mk | 68 ++++ keyboards/whitefox/whitefox.c | 17 + keyboards/whitefox/whitefox.h | 54 +++ 13 files changed, 1463 insertions(+) create mode 100644 keyboards/whitefox/Makefile create mode 100644 keyboards/whitefox/bootloader_defs.h create mode 100644 keyboards/whitefox/chconf.h create mode 100644 keyboards/whitefox/config.h create mode 100644 keyboards/whitefox/halconf.h create mode 100644 keyboards/whitefox/keymaps/default/keymap.c create mode 100644 keyboards/whitefox/keymaps/matt3o/keymap.c create mode 100644 keyboards/whitefox/led.c create mode 100644 keyboards/whitefox/matrix.c create mode 100644 keyboards/whitefox/mcuconf.h create mode 100644 keyboards/whitefox/rules.mk create mode 100644 keyboards/whitefox/whitefox.c create mode 100644 keyboards/whitefox/whitefox.h (limited to 'keyboards') diff --git a/keyboards/whitefox/Makefile b/keyboards/whitefox/Makefile new file mode 100644 index 000000000..4e2a6f00f --- /dev/null +++ b/keyboards/whitefox/Makefile @@ -0,0 +1,3 @@ +ifndef MAKEFILE_INCLUDED + include ../../Makefile +endif \ No newline at end of file diff --git a/keyboards/whitefox/bootloader_defs.h b/keyboards/whitefox/bootloader_defs.h new file mode 100644 index 000000000..c67153be6 --- /dev/null +++ b/keyboards/whitefox/bootloader_defs.h @@ -0,0 +1 @@ +#define KIIBOHD_BOOTLOADER diff --git a/keyboards/whitefox/chconf.h b/keyboards/whitefox/chconf.h new file mode 100644 index 000000000..43c845739 --- /dev/null +++ b/keyboards/whitefox/chconf.h @@ -0,0 +1,524 @@ +/* + ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +/** + * @file templates/chconf.h + * @brief Configuration file template. + * @details A copy of this file must be placed in each project directory, it + * contains the application specific kernel settings. + * + * @addtogroup config + * @details Kernel related settings and hooks. + * @{ + */ + +#ifndef CHCONF_H +#define CHCONF_H + +#define _CHIBIOS_RT_CONF_ + +/*===========================================================================*/ +/** + * @name System timers settings + * @{ + */ +/*===========================================================================*/ + +/** + * @brief System time counter resolution. + * @note Allowed values are 16 or 32 bits. + */ +#define CH_CFG_ST_RESOLUTION 32 + +/** + * @brief System tick frequency. + * @details Frequency of the system timer that drives the system ticks. This + * setting also defines the system tick time unit. + */ +#define CH_CFG_ST_FREQUENCY 1000 + +/** + * @brief Time delta constant for the tick-less mode. + * @note If this value is zero then the system uses the classic + * periodic tick. This value represents the minimum number + * of ticks that is safe to specify in a timeout directive. + * The value one is not valid, timeouts are rounded up to + * this value. + */ +#define CH_CFG_ST_TIMEDELTA 0 + +/** @} */ + +/*===========================================================================*/ +/** + * @name Kernel parameters and options + * @{ + */ +/*===========================================================================*/ + +/** + * @brief Round robin interval. + * @details This constant is the number of system ticks allowed for the + * threads before preemption occurs. Setting this value to zero + * disables the preemption for threads with equal priority and the + * round robin becomes cooperative. Note that higher priority + * threads can still preempt, the kernel is always preemptive. + * @note Disabling the round robin preemption makes the kernel more compact + * and generally faster. + * @note The round robin preemption is not supported in tickless mode and + * must be set to zero in that case. + */ +#define CH_CFG_TIME_QUANTUM 20 + +/** + * @brief Managed RAM size. + * @details Size of the RAM area to be managed by the OS. If set to zero + * then the whole available RAM is used. The core memory is made + * available to the heap allocator and/or can be used directly through + * the simplified core memory allocator. + * + * @note In order to let the OS manage the whole RAM the linker script must + * provide the @p __heap_base__ and @p __heap_end__ symbols. + * @note Requires @p CH_CFG_USE_MEMCORE. + */ +#define CH_CFG_MEMCORE_SIZE 0 + +/** + * @brief Idle thread automatic spawn suppression. + * @details When this option is activated the function @p chSysInit() + * does not spawn the idle thread. The application @p main() + * function becomes the idle thread and must implement an + * infinite loop. + */ +#define CH_CFG_NO_IDLE_THREAD FALSE + +/* Use __WFI in the idle thread for waiting. Does lower the power + * consumption. */ +#define CORTEX_ENABLE_WFI_IDLE TRUE + +/** @} */ + +/*===========================================================================*/ +/** + * @name Performance options + * @{ + */ +/*===========================================================================*/ + +/** + * @brief OS optimization. + * @details If enabled then time efficient rather than space efficient code + * is used when two possible implementations exist. + * + * @note This is not related to the compiler optimization options. + * @note The default is @p TRUE. + */ +#define CH_CFG_OPTIMIZE_SPEED TRUE + +/** @} */ + +/*===========================================================================*/ +/** + * @name Subsystem options + * @{ + */ +/*===========================================================================*/ + +/** + * @brief Time Measurement APIs. + * @details If enabled then the time measurement APIs are included in + * the kernel. + * + * @note The default is @p TRUE. + */ +#define CH_CFG_USE_TM FALSE + +/** + * @brief Threads registry APIs. + * @details If enabled then the registry APIs are included in the kernel. + * + * @note The default is @p TRUE. + */ +#define CH_CFG_USE_REGISTRY TRUE + +/** + * @brief Threads synchronization APIs. + * @details If enabled then the @p chThdWait() function is included in + * the kernel. + * + * @note The default is @p TRUE. + */ +#define CH_CFG_USE_WAITEXIT TRUE + +/** + * @brief Semaphores APIs. + * @details If enabled then the Semaphores APIs are included in the kernel. + * + * @note The default is @p TRUE. + */ +#define CH_CFG_USE_SEMAPHORES TRUE + +/** + * @brief Semaphores queuing mode. + * @details If enabled then the threads are enqueued on semaphores by + * priority rather than in FIFO order. + * + * @note The default is @p FALSE. Enable this if you have special + * requirements. + * @note Requires @p CH_CFG_USE_SEMAPHORES. + */ +#define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE + +/** + * @brief Mutexes APIs. + * @details If enabled then the mutexes APIs are included in the kernel. + * + * @note The default is @p TRUE. + */ +#define CH_CFG_USE_MUTEXES TRUE + +/** + * @brief Enables recursive behavior on mutexes. + * @note Recursive mutexes are heavier and have an increased + * memory footprint. + * + * @note The default is @p FALSE. + * @note Requires @p CH_CFG_USE_MUTEXES. + */ +#define CH_CFG_USE_MUTEXES_RECURSIVE FALSE + +/** + * @brief Conditional Variables APIs. + * @details If enabled then the conditional variables APIs are included + * in the kernel. + * + * @note The default is @p TRUE. + * @note Requires @p CH_CFG_USE_MUTEXES. + */ +#define CH_CFG_USE_CONDVARS TRUE + +/** + * @brief Conditional Variables APIs with timeout. + * @details If enabled then the conditional variables APIs with timeout + * specification are included in the kernel. + * + * @note The default is @p TRUE. + * @note Requires @p CH_CFG_USE_CONDVARS. + */ +#define CH_CFG_USE_CONDVARS_TIMEOUT TRUE + +/** + * @brief Events Flags APIs. + * @details If enabled then the event flags APIs are included in the kernel. + * + * @note The default is @p TRUE. + */ +#define CH_CFG_USE_EVENTS TRUE + +/** + * @brief Events Flags APIs with timeout. + * @details If enabled then the events APIs with timeout specification + * are included in the kernel. + * + * @note The default is @p TRUE. + * @note Requires @p CH_CFG_USE_EVENTS. + */ +#define CH_CFG_USE_EVENTS_TIMEOUT TRUE + +/** + * @brief Synchronous Messages APIs. + * @details If enabled then the synchronous messages APIs are included + * in the kernel. + * + * @note The default is @p TRUE. + */ +#define CH_CFG_USE_MESSAGES TRUE + +/** + * @brief Synchronous Messages queuing mode. + * @details If enabled then messages are served by priority rather than in + * FIFO order. + * + * @note The default is @p FALSE. Enable this if you have special + * requirements. + * @note Requires @p CH_CFG_USE_MESSAGES. + */ +#define CH_CFG_USE_MESSAGES_PRIORITY FALSE + +/** + * @brief Mailboxes APIs. + * @details If enabled then the asynchronous messages (mailboxes) APIs are + * included in the kernel. + * + * @note The default is @p TRUE. + * @note Requires @p CH_CFG_USE_SEMAPHORES. + */ +#define CH_CFG_USE_MAILBOXES TRUE + +/** + * @brief Core Memory Manager APIs. + * @details If enabled then the core memory manager APIs are included + * in the kernel. + * + * @note The default is @p TRUE. + */ +#define CH_CFG_USE_MEMCORE TRUE + +/** + * @brief Heap Allocator APIs. + * @details If enabled then the memory heap allocator APIs are included + * in the kernel. + * + * @note The default is @p TRUE. + * @note Requires @p CH_CFG_USE_MEMCORE and either @p CH_CFG_USE_MUTEXES or + * @p CH_CFG_USE_SEMAPHORES. + * @note Mutexes are recommended. + */ +#define CH_CFG_USE_HEAP TRUE + +/** + * @brief Memory Pools Allocator APIs. + * @details If enabled then the memory pools allocator APIs are included + * in the kernel. + * + * @note The default is @p TRUE. + */ +#define CH_CFG_USE_MEMPOOLS TRUE + +/** + * @brief Dynamic Threads APIs. + * @details If enabled then the dynamic threads creation APIs are included + * in the kernel. + * + * @note The default is @p TRUE. + * @note Requires @p CH_CFG_USE_WAITEXIT. + * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS. + */ +#define CH_CFG_USE_DYNAMIC TRUE + +/** @} */ + +/*===========================================================================*/ +/** + * @name Debug options + * @{ + */ +/*===========================================================================*/ + +/** + * @brief Debug option, kernel statistics. + * + * @note The default is @p FALSE. + */ +#define CH_DBG_STATISTICS FALSE + +/** + * @brief Debug option, system state check. + * @details If enabled the correct call protocol for system APIs is checked + * at runtime. + * + * @note The default is @p FALSE. + */ +#define CH_DBG_SYSTEM_STATE_CHECK FALSE + +/** + * @brief Debug option, parameters checks. + * @details If enabled then the checks on the API functions input + * parameters are activated. + * + * @note The default is @p FALSE. + */ +#define CH_DBG_ENABLE_CHECKS FALSE + +/** + * @brief Debug option, consistency checks. + * @details If enabled then all the assertions in the kernel code are + * activated. This includes consistency checks inside the kernel, + * runtime anomalies and port-defined checks. + * + * @note The default is @p FALSE. + */ +#define CH_DBG_ENABLE_ASSERTS FALSE + +/** + * @brief Debug option, trace buffer. + * @details If enabled then the trace buffer is activated. + * + * @note The default is @p CH_DBG_TRACE_MASK_DISABLED. + */ +#define CH_DBG_TRACE_MASK CH_DBG_TRACE_MASK_DISABLED + +/** + * @brief Trace buffer entries. + * @note The trace buffer is only allocated if @p CH_DBG_TRACE_MASK is + * different from @p CH_DBG_TRACE_MASK_DISABLED. + */ +#define CH_DBG_TRACE_BUFFER_SIZE 128 + +/** + * @brief Debug option, stack checks. + * @details If enabled then a runtime stack check is performed. + * + * @note The default is @p FALSE. + * @note The stack check is performed in a architecture/port dependent way. + * It may not be implemented or some ports. + * @note The default failure mode is to halt the system with the global + * @p panic_msg variable set to @p NULL. + */ +#define CH_DBG_ENABLE_STACK_CHECK FALSE + +/** + * @brief Debug option, stacks initialization. + * @details If enabled then the threads working area is filled with a byte + * value when a thread is created. This can be useful for the + * runtime measurement of the used stack. + * + * @note The default is @p FALSE. + */ +#define CH_DBG_FILL_THREADS FALSE + +/** + * @brief Debug option, threads profiling. + * @details If enabled then a field is added to the @p thread_t structure that + * counts the system ticks occurred while executing the thread. + * + * @note The default is @p FALSE. + * @note This debug option is not currently compatible with the + * tickless mode. + */ +#define CH_DBG_THREADS_PROFILING FALSE + +/** @} */ + +/*===========================================================================*/ +/** + * @name Kernel hooks + * @{ + */ +/*===========================================================================*/ + +/** + * @brief Threads descriptor structure extension. + * @details User fields added to the end of the @p thread_t structure. + */ +#define CH_CFG_THREAD_EXTRA_FIELDS \ + /* Add threads custom fields here.*/ + +/** + * @brief Threads initialization hook. + * @details User initialization code added to the @p chThdInit() API. + * + * @note It is invoked from within @p chThdInit() and implicitly from all + * the threads creation APIs. + */ +#define CH_CFG_THREAD_INIT_HOOK(tp) { \ + /* Add threads initialization code here.*/ \ +} + +/** + * @brief Threads finalization hook. + * @details User finalization code added to the @p chThdExit() API. + */ +#define CH_CFG_THREAD_EXIT_HOOK(tp) { \ + /* Add threads finalization code here.*/ \ +} + +/** + * @brief Context switch hook. + * @details This hook is invoked just before switching between threads. + */ +#define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) { \ + /* Context switch code here.*/ \ +} + +/** + * @brief ISR enter hook. + */ +#define CH_CFG_IRQ_PROLOGUE_HOOK() { \ + /* IRQ prologue code here.*/ \ +} + +/** + * @brief ISR exit hook. + */ +#define CH_CFG_IRQ_EPILOGUE_HOOK() { \ + /* IRQ epilogue code here.*/ \ +} + +/** + * @brief Idle thread enter hook. + * @note This hook is invoked within a critical zone, no OS functions + * should be invoked from here. + * @note This macro can be used to activate a power saving mode. + */ +#define CH_CFG_IDLE_ENTER_HOOK() { \ + /* Idle-enter code here.*/ \ +} + +/** + * @brief Idle thread leave hook. + * @note This hook is invoked within a critical zone, no OS functions + * should be invoked from here. + * @note This macro can be used to deactivate a power saving mode. + */ +#define CH_CFG_IDLE_LEAVE_HOOK() { \ + /* Idle-leave code here.*/ \ +} + +/** + * @brief Idle Loop hook. + * @details This hook is continuously invoked by the idle thread loop. + */ +#define CH_CFG_IDLE_LOOP_HOOK() { \ + /* Idle loop code here.*/ \ +} + +/** + * @brief System tick event hook. + * @details This hook is invoked in the system tick handler immediately + * after processing the virtual timers queue. + */ +#define CH_CFG_SYSTEM_TICK_HOOK() { \ + /* System tick event code here.*/ \ +} + +/** + * @brief System halt hook. + * @details This hook is invoked in case to a system halting error before + * the system is halted. + */ +#define CH_CFG_SYSTEM_HALT_HOOK(reason) { \ + /* System halt code here.*/ \ +} + +/** + * @brief Trace hook. + * @details This hook is invoked each time a new record is written in the + * trace buffer. + */ +#define CH_CFG_TRACE_HOOK(tep) { \ + /* Trace code here.*/ \ +} + +/** @} */ + +/*===========================================================================*/ +/* Port-specific settings (override port settings defaulted in chcore.h). */ +/*===========================================================================*/ + +#endif /* CHCONF_H */ + +/** @} */ diff --git a/keyboards/whitefox/config.h b/keyboards/whitefox/config.h new file mode 100644 index 000000000..b7116341f --- /dev/null +++ b/keyboards/whitefox/config.h @@ -0,0 +1,78 @@ +/* +Copyright 2015 Jun Wako + +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 + +#define PREVENT_STUCK_MODIFIERS + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x0F0F +#define DEVICE_VER 0x0001 +/* in python2: list(u"whatever".encode('utf-16-le')) */ +/* at most 32 characters or the ugly hack in usb_main.c borks */ +#define MANUFACTURER "Input Club" +#define USBSTR_MANUFACTURER 'I', '\x00', 'n', '\x00', 'p', '\x00', 'u', '\x00', 't', '\x00', ' ', '\x00', 'C', '\x00', 'l', '\x00', 'u', '\x00', 'b', '\x00' +#define PRODUCT "WhiteFox/QMK" +#define USBSTR_PRODUCT 'W', '\x00', 'h', '\x00', 'i', '\x00', 't', '\x00', 'e', '\x00', 'F', '\x00', 'o', '\x00', 'x', '\x00', ' ', '\x00' + +/* key matrix size */ +#define MATRIX_ROWS 9 +#define MATRIX_COLS 8 + +/* define if matrix has ghost */ +//#define MATRIX_HAS_GHOST + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 6 + +/* 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)) \ +) + +/* Keymap for Infinity prototype */ +//#define INFINITY_PROTOTYPE + +/* Keymap for Infinity 1.1a (first revision with LED support) */ +//#define INFINITY_LED + +/* + * Feature disable options + * These options are also useful to firmware size reduction. + */ + +/* disable debug print */ +//#define NO_DEBUG + +/* disable print */ +//#define NO_PRINT + +/* disable action features */ +//#define NO_ACTION_LAYER +//#define NO_ACTION_TAPPING +//#define NO_ACTION_ONESHOT +//#define NO_ACTION_MACRO +//#define NO_ACTION_FUNCTION + +#endif diff --git a/keyboards/whitefox/halconf.h b/keyboards/whitefox/halconf.h new file mode 100644 index 000000000..46b37a4f4 --- /dev/null +++ b/keyboards/whitefox/halconf.h @@ -0,0 +1,353 @@ +/* + ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +/** + * @file templates/halconf.h + * @brief HAL configuration header. + * @details HAL configuration file, this file allows to enable or disable the + * various device drivers from your application. You may also use + * this file in order to override the device drivers default settings. + * + * @addtogroup HAL_CONF + * @{ + */ + +#ifndef _HALCONF_H_ +#define _HALCONF_H_ + +#include "mcuconf.h" + +/** + * @brief Enables the PAL subsystem. + */ +#if !defined(HAL_USE_PAL) || defined(__DOXYGEN__) +#define HAL_USE_PAL TRUE +#endif + +/** + * @brief Enables the ADC subsystem. + */ +#if !defined(HAL_USE_ADC) || defined(__DOXYGEN__) +#define HAL_USE_ADC FALSE +#endif + +/** + * @brief Enables the CAN subsystem. + */ +#if !defined(HAL_USE_CAN) || defined(__DOXYGEN__) +#define HAL_USE_CAN FALSE +#endif + +/** + * @brief Enables the DAC subsystem. + */ +#if !defined(HAL_USE_DAC) || defined(__DOXYGEN__) +#define HAL_USE_DAC FALSE +#endif + +/** + * @brief Enables the EXT subsystem. + */ +#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__) +#define HAL_USE_EXT FALSE +#endif + +/** + * @brief Enables the GPT subsystem. + */ +#if !defined(HAL_USE_GPT) || defined(__DOXYGEN__) +#define HAL_USE_GPT FALSE +#endif + +/** + * @brief Enables the I2C subsystem. + */ +#if !defined(HAL_USE_I2C) || defined(__DOXYGEN__) +#define HAL_USE_I2C FALSE +#endif + +/** + * @brief Enables the I2S subsystem. + */ +#if !defined(HAL_USE_I2S) || defined(__DOXYGEN__) +#define HAL_USE_I2S FALSE +#endif + +/** + * @brief Enables the ICU subsystem. + */ +#if !defined(HAL_USE_ICU) || defined(__DOXYGEN__) +#define HAL_USE_ICU FALSE +#endif + +/** + * @brief Enables the MAC subsystem. + */ +#if !defined(HAL_USE_MAC) || defined(__DOXYGEN__) +#define HAL_USE_MAC FALSE +#endif + +/** + * @brief Enables the MMC_SPI subsystem. + */ +#if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__) +#define HAL_USE_MMC_SPI FALSE +#endif + +/** + * @brief Enables the PWM subsystem. + */ +#if !defined(HAL_USE_PWM) || defined(__DOXYGEN__) +#define HAL_USE_PWM FALSE +#endif + +/** + * @brief Enables the RTC subsystem. + */ +#if !defined(HAL_USE_RTC) || defined(__DOXYGEN__) +#define HAL_USE_RTC FALSE +#endif + +/** + * @brief Enables the SDC subsystem. + */ +#if !defined(HAL_USE_SDC) || defined(__DOXYGEN__) +#define HAL_USE_SDC FALSE +#endif + +/** + * @brief Enables the SERIAL subsystem. + */ +#if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__) +#define HAL_USE_SERIAL FALSE +#endif + +/** + * @brief Enables the SERIAL over USB subsystem. + */ +#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__) +#define HAL_USE_SERIAL_USB TRUE +#endif + +/** + * @brief Enables the SPI subsystem. + */ +#if !defined(HAL_USE_SPI) || defined(__DOXYGEN__) +#define HAL_USE_SPI FALSE +#endif + +/** + * @brief Enables the UART subsystem. + */ +#if !defined(HAL_USE_UART) || defined(__DOXYGEN__) +#define HAL_USE_UART FALSE +#endif + +/** + * @brief Enables the USB subsystem. + */ +#if !defined(HAL_USE_USB) || defined(__DOXYGEN__) +#define HAL_USE_USB TRUE +#endif + +/** + * @brief Enables the WDG subsystem. + */ +#if !defined(HAL_USE_WDG) || defined(__DOXYGEN__) +#define HAL_USE_WDG FALSE +#endif + +/*===========================================================================*/ +/* ADC driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables synchronous APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__) +#define ADC_USE_WAIT TRUE +#endif + +/** + * @brief Enables the @p adcAcquireBus() and @p adcReleaseBus() APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) +#define ADC_USE_MUTUAL_EXCLUSION TRUE +#endif + +/*===========================================================================*/ +/* CAN driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Sleep mode related APIs inclusion switch. + */ +#if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__) +#define CAN_USE_SLEEP_MODE TRUE +#endif + +/*===========================================================================*/ +/* I2C driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables the mutual exclusion APIs on the I2C bus. + */ +#if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) +#define I2C_USE_MUTUAL_EXCLUSION TRUE +#endif + +/*===========================================================================*/ +/* MAC driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables an event sources for incoming packets. + */ +#if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__) +#define MAC_USE_ZERO_COPY FALSE +#endif + +/** + * @brief Enables an event sources for incoming packets. + */ +#if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__) +#define MAC_USE_EVENTS TRUE +#endif + +/*===========================================================================*/ +/* MMC_SPI driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Delays insertions. + * @details If enabled this options inserts delays into the MMC waiting + * routines releasing some extra CPU time for the threads with + * lower priority, this may slow down the driver a bit however. + * This option is recommended also if the SPI driver does not + * use a DMA channel and heavily loads the CPU. + */ +#if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__) +#define MMC_NICE_WAITING TRUE +#endif + +/*===========================================================================*/ +/* SDC driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Number of initialization attempts before rejecting the card. + * @note Attempts are performed at 10mS intervals. + */ +#if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__) +#define SDC_INIT_RETRY 100 +#endif + +/** + * @brief Include support for MMC cards. + * @note MMC support is not yet implemented so this option must be kept + * at @p FALSE. + */ +#if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__) +#define SDC_MMC_SUPPORT FALSE +#endif + +/** + * @brief Delays insertions. + * @details If enabled this options inserts delays into the MMC waiting + * routines releasing some extra CPU time for the threads with + * lower priority, this may slow down the driver a bit however. + */ +#if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__) +#define SDC_NICE_WAITING TRUE +#endif + +/*===========================================================================*/ +/* SERIAL driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Default bit rate. + * @details Configuration parameter, this is the baud rate selected for the + * default configuration. + */ +#if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__) +#define SERIAL_DEFAULT_BITRATE 38400 +#endif + +/** + * @brief Serial buffers size. + * @details Configuration parameter, you can change the depth of the queue + * buffers depending on the requirements of your application. + * @note The default is 64 bytes for both the transmission and receive + * buffers. + */ +#if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__) +#define SERIAL_BUFFERS_SIZE 16 +#endif + +/*===========================================================================*/ +/* SERIAL_USB driver related setting. */ +/*===========================================================================*/ + +/** + * @brief Serial over USB buffers size. + * @details Configuration parameter, the buffer size must be a multiple of + * the USB data endpoint maximum packet size. + * @note The default is 64 bytes for both the transmission and receive + * buffers. + */ +#if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__) +#define SERIAL_USB_BUFFERS_SIZE 256 +#endif + +/*===========================================================================*/ +/* SPI driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables synchronous APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__) +#define SPI_USE_WAIT TRUE +#endif + +/** + * @brief Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) +#define SPI_USE_MUTUAL_EXCLUSION TRUE +#endif + +/*===========================================================================*/ +/* USB driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables synchronous APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(USB_USE_WAIT) || defined(__DOXYGEN__) +#define USB_USE_WAIT TRUE +#endif + +#endif /* _HALCONF_H_ */ + +/** @} */ diff --git a/keyboards/whitefox/keymaps/default/keymap.c b/keyboards/whitefox/keymaps/default/keymap.c new file mode 100644 index 000000000..426b226a0 --- /dev/null +++ b/keyboards/whitefox/keymaps/default/keymap.c @@ -0,0 +1,51 @@ +/* +Copyright 2015 Jun Wako + +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 "whitefox.h" + +const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Layer 0: Default Layer + * ,---------------------------------------------------------------. + * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| \| `|Ins| + * |---------------------------------------------------------------| + * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]|Backs|Del| + * |---------------------------------------------------------------| + * |CapsLo| A| S| D| F| G| H| J| K| L| ;| '|Enter |PgU| + * |---------------------------------------------------------------| + * |Shif| | Z| X| C| V| B| N| M| ,| .| /|Shift |Up |PgD| + * |---------------------------------------------------------------| + * |Ctrl|Gui |Alt | Space |Fn0 |Alt |Gui | |Lef|Dow|Rig| + * `---------------------------------------------------------------' + */ + [0] = KEYMAP( \ + ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSLS,GRV, INS, \ + TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSPC, DEL, \ + CAPS,A, S, D, F, G, H, J, K, L, SCLN,QUOT,NUHS,ENT, PGUP,\ + LSFT,NUBS,Z, X, C, V, B, N, M, COMM,DOT, SLSH,RSFT, UP, PGDN,\ + LCTL,LGUI,LALT, SPC, RALT,FN0, RCTL, LEFT,DOWN,RGHT \ + ), + [1] = KEYMAP( \ + TRNS,F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS,TRNS,MUTE,\ + TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,PSCR,SLCK,PAUS,TRNS, TRNS,\ + TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, VOLU,\ + TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, PGUP,VOLD,\ + TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS, HOME,PGDN,END \ + ), +}; + +const uint16_t fn_actions[] = { + [0] = ACTION_LAYER_MOMENTARY(1), +}; diff --git a/keyboards/whitefox/keymaps/matt3o/keymap.c b/keyboards/whitefox/keymaps/matt3o/keymap.c new file mode 100644 index 000000000..ecadcd284 --- /dev/null +++ b/keyboards/whitefox/keymaps/matt3o/keymap.c @@ -0,0 +1,92 @@ +/* +Copyright 2015 Jun Wako + +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 "whitefox.h" + +const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Layer 0: Default Layer + * ,---------------------------------------------------------------. + * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| \| `|Ins| + * |---------------------------------------------------------------| + * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]|Backs|Del| + * |---------------------------------------------------------------| + * |CapsLo| A| S| D| F| G| H| J| K| L| ;| '|Enter |PgU| + * |---------------------------------------------------------------| + * |Shif| | Z| X| C| V| B| N| M| ,| .| /|Shift |Up |PgD| + * |---------------------------------------------------------------| + * |Ctrl|Gui |Alt | Space |Fn0 |Alt |Gui | |Lef|Dow|Rig| + * `---------------------------------------------------------------' + */ + [0] = KEYMAP( \ + ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSLS,GRV, MUTE,\ + TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSPC, DEL, \ + FN0, A, S, D, F, G, H, J, K, L, SCLN,QUOT,NUHS,ENT, PGUP,\ + LSFT,NUBS,Z, X, C, V, B, N, M, COMM,DOT, SLSH,RSFT, UP, PGDN,\ + LCTL,LGUI,LALT, SPC, RALT,FN1, RCTL, LEFT,DOWN,RGHT \ + ), + [1] = KEYMAP( \ + TRNS,F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS,TRNS,TRNS,\ + TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,DEL , INS ,\ + TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, VOLU,\ + TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, PGUP,VOLD,\ + TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS, HOME,PGDN,END \ + ), + [2] = KEYMAP( \ + SLEP,P1, P2, P3, P4, P5, P6, P7, P8, P9, P0, TRNS,TRNS,TRNS,TRNS,FN2, \ + TRNS,TRNS,FN5 ,FN6 ,TRNS,FN7 ,TRNS,TRNS,TRNS,TRNS,PSCR,TRNS,TRNS,TRNS, FN3, \ + CAPS,TRNS,TRNS,TRNS,FN4 ,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS,\ + TRNS,TRNS,TRNS,TRNS,CALC,TRNS,TRNS,TRNS,MAIL,TRNS,TRNS,TRNS,TRNS, TRNS,TRNS,\ + TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS, TRNS,TRNS,TRNS \ + ), +}; + +/* Give numbers some descriptive names */ +#define ACTION_LEDS_ALL 1 +#define ACTION_LEDS_GAME 2 + +const uint16_t fn_actions[] = { + [0] = ACTION_LAYER_MOMENTARY(1), + [1] = ACTION_LAYER_MOMENTARY(2), + [2] = ACTION_FUNCTION(ACTION_LEDS_ALL), + [3] = ACTION_FUNCTION(ACTION_LEDS_GAME), + + [4] = ACTION_USAGE_CONSUMER(0x1B4), + [5] = ACTION_USAGE_CONSUMER(0x196), + [6] = ACTION_USAGE_CONSUMER(0x1A6), + [7] = ACTION_USAGE_CONSUMER(0x1A0), + +}; + +/* custom action function */ +void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) { + /* + (void)opt; + switch(id) { + case ACTION_LEDS_ALL: + if(record->event.pressed) { + // signal the LED controller thread + chMBPost(&led_mailbox, LED_MSG_GAME_TOGGLE, TIME_IMMEDIATE); + } + break; + case ACTION_LEDS_GAME: + if(record->event.pressed) { + // signal the LED controller thread + chMBPost(&led_mailbox, LED_MSG_ALL_TOGGLE, TIME_IMMEDIATE); + } + break; + } + */ +} diff --git a/keyboards/whitefox/led.c b/keyboards/whitefox/led.c new file mode 100644 index 000000000..aed66c7c0 --- /dev/null +++ b/keyboards/whitefox/led.c @@ -0,0 +1,24 @@ +/* +Copyright 2012 Jun Wako + +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 "hal.h" + +#include "led.h" + + +void led_set(uint8_t usb_led) { +} diff --git a/keyboards/whitefox/matrix.c b/keyboards/whitefox/matrix.c new file mode 100644 index 000000000..ce35bca28 --- /dev/null +++ b/keyboards/whitefox/matrix.c @@ -0,0 +1,132 @@ +#include +#include +#include +#include "hal.h" +#include "timer.h" +#include "wait.h" +#include "print.h" +#include "matrix.h" + + +/* + * Matt3o's WhiteFox + * Column pins are input with internal pull-down. Row pins are output and strobe with high. + * Key is high or 1 when it turns on. + * + * col: { PTD0, PTD1, PTD4, PTD5, PTD6, PTD7, PTC1, PTC2 } + * row: { PTB2, PTB3, PTB18, PTB19, PTC0, PTC8, PTC9, PTC10, PTC11 } + */ +/* matrix state(1:on, 0:off) */ +static matrix_row_t matrix[MATRIX_ROWS]; +static matrix_row_t matrix_debouncing[MATRIX_ROWS]; +static bool debouncing = false; +static uint16_t debouncing_time = 0; + + +void matrix_init(void) +{ +//debug_matrix = true; + /* Column(sense) */ + palSetPadMode(GPIOD, 0, PAL_MODE_INPUT_PULLDOWN); + palSetPadMode(GPIOD, 1, PAL_MODE_INPUT_PULLDOWN); + palSetPadMode(GPIOD, 4, PAL_MODE_INPUT_PULLDOWN); + palSetPadMode(GPIOD, 5, PAL_MODE_INPUT_PULLDOWN); + palSetPadMode(GPIOD, 6, PAL_MODE_INPUT_PULLDOWN); + palSetPadMode(GPIOD, 7, PAL_MODE_INPUT_PULLDOWN); + palSetPadMode(GPIOC, 1, PAL_MODE_INPUT_PULLDOWN); + palSetPadMode(GPIOC, 2, PAL_MODE_INPUT_PULLDOWN); + + /* Row(strobe) */ + palSetPadMode(GPIOB, 2, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOB, 3, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOB, 18, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOB, 19, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOC, 0, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOC, 8, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOC, 9, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOC, 10, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOC, 11, PAL_MODE_OUTPUT_PUSHPULL); + + memset(matrix, 0, MATRIX_ROWS); + memset(matrix_debouncing, 0, MATRIX_ROWS); +} + +uint8_t matrix_scan(void) +{ + for (int row = 0; row < MATRIX_ROWS; row++) { + matrix_row_t data = 0; + + // strobe row + switch (row) { + case 0: palSetPad(GPIOB, 2); break; + case 1: palSetPad(GPIOB, 3); break; + case 2: palSetPad(GPIOB, 18); break; + case 3: palSetPad(GPIOB, 19); break; + case 4: palSetPad(GPIOC, 0); break; + case 5: palSetPad(GPIOC, 8); break; + case 6: palSetPad(GPIOC, 9); break; + case 7: palSetPad(GPIOC, 10); break; + case 8: palSetPad(GPIOC, 11); break; + } + + wait_us(1); // need wait to settle pin state + + // read col data: { PTD0, PTD1, PTD4, PTD5, PTD6, PTD7, PTC1, PTC2 } + data = ((palReadPort(GPIOC) & 0x06UL) << 5) | + ((palReadPort(GPIOD) & 0xF0UL) >> 2) | + (palReadPort(GPIOD) & 0x03UL); + + // un-strobe row + switch (row) { + case 0: palClearPad(GPIOB, 2); break; + case 1: palClearPad(GPIOB, 3); break; + case 2: palClearPad(GPIOB, 18); break; + case 3: palClearPad(GPIOB, 19); break; + case 4: palClearPad(GPIOC, 0); break; + case 5: palClearPad(GPIOC, 8); break; + case 6: palClearPad(GPIOC, 9); break; + case 7: palClearPad(GPIOC, 10); break; + case 8: palClearPad(GPIOC, 11); break; + } + + if (matrix_debouncing[row] != data) { + matrix_debouncing[row] = data; + debouncing = true; + debouncing_time = timer_read(); + } + } + + if (debouncing && timer_elapsed(debouncing_time) > DEBOUNCE) { + for (int row = 0; row < MATRIX_ROWS; row++) { + matrix[row] = matrix_debouncing[row]; + } + debouncing = false; + } + return 1; +} + +bool matrix_is_on(uint8_t row, uint8_t col) +{ + return (matrix[row] & (1</os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) +# - For Teensies, FAMILY = KINETIS and SERIES is either +# KL2x (LC) or K20x (3.0,3.1,3.2). +# - For Infinity KB, SERIES = K20x +MCU_FAMILY = KINETIS +MCU_SERIES = K20x + +# Linker script to use +# - it should exist either in /os/common/ports/ARMCMx/compilers/GCC/ld/ +# or /ld/ +# - NOTE: a custom ld script is needed for EEPROM on Teensy LC +# - LDSCRIPT = +# - MKL26Z64 for Teensy LC +# - MK20DX128 for Teensy 3.0 +# - MK20DX256 for Teensy 3.1 and 3.2 +# - MK20DX128BLDR4 for Infinity with Kiibohd bootloader +# - MK20DX256BLDR8 for Infinity ErgoDox with Kiibohd bootloader +MCU_LDSCRIPT = MK20DX256BLDR8 + +# Startup code to use +# - it should exist in /os/common/ports/ARMCMx/compilers/GCC/mk/ +# - STARTUP = +# - kl2x for Teensy LC +# - k20x5 for Teensy 3.0 and Infinity KB +# - k20x7 for Teensy 3.1 and 3.2 +MCU_STARTUP = k20x7 + +# Board: it should exist either in /os/hal/boards/ +# or /boards +# - BOARD = +# - PJRC_TEENSY_LC for Teensy LC +# - PJRC_TEENSY_3 for Teensy 3.0 +# - PJRC_TEENSY_3_1 for Teensy 3.1 or 3.2 +# - MCHCK_K20 for Infinity KB +BOARD = PJRC_TEENSY_3_1 + +# Cortex version +# Teensy LC is cortex-m0; Teensy 3.x are cortex-m4 +MCU = cortex-m4 + +# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7 +# I.e. 6 for Teensy LC; 7 for Teensy 3.x +ARMV = 7 + +# Vector table for application +# 0x00000000-0x00001000 area is occupied by bootlaoder.*/ +# The CORTEX_VTOR... is needed only for MCHCK/Infinity KB +#OPT_DEFS = -DCORTEX_VTOR_INIT=0x00001000 +OPT_DEFS = + +# Build Options +# comment out to disable the options. +# +BOOTMAGIC_ENABLE ?= yes # Virtual DIP switch configuration +## (Note that for BOOTMAGIC on Teensy LC you have to use a custom .ld script.) +MOUSEKEY_ENABLE ?= yes # Mouse keys +EXTRAKEY_ENABLE ?= yes # Audio control and System control +#CONSOLE_ENABLE ?= yes # Console for debug +COMMAND_ENABLE ?= yes # Commands for debug and configuration +#SLEEP_LED_ENABLE ?= yes # Breathing sleep LED during USB suspend +NKRO_ENABLE ?= yes # USB Nkey Rollover +CUSTOM_MATRIX ?= yes # Custom matrix file diff --git a/keyboards/whitefox/whitefox.c b/keyboards/whitefox/whitefox.c new file mode 100644 index 000000000..d35bf8338 --- /dev/null +++ b/keyboards/whitefox/whitefox.c @@ -0,0 +1,17 @@ +/* +Copyright 2012,2013 Jun Wako + +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 "whitefox.h" diff --git a/keyboards/whitefox/whitefox.h b/keyboards/whitefox/whitefox.h new file mode 100644 index 000000000..0ffcdca01 --- /dev/null +++ b/keyboards/whitefox/whitefox.h @@ -0,0 +1,54 @@ +/* +Copyright 2014 Jun Wako + +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 WHITEFOX_H +#define WHITEFOX_H + +#include "quantum.h" + +/* WhiteFox + * ,---------------------------------------------------------------. + * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| \| `|Ins| + * |---------------------------------------------------------------| + * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]|Backs|Del| + * |---------------------------------------------------------------| + * |CapsL | A| S| D| F| G| H| J| K| L| ;| '|Enter |PgU| + * |---------------------------------------------------------------| + * |Shif| | Z| X| C| V| B| N| M| ,| .| /|Shift |Up |PgD| + * |---------------------------------------------------------------| + * |Ctrl|Gui |Alt | Space |App |Alt |Gui | |Lef|Dow|Rig| + * `---------------------------------------------------------------' + */ + +#define KEYMAP( \ + K00, K10, K20, K30, K40, K50, K60, K70, K80, K01, K11, K21, K31, K41, K51, K61, \ + K71, K81, K02, K12, K22, K32, K42, K52, K62, K72, K82, K03, K13, K23, K33, \ + K43, K53, K63, K73, K83, K04, K14, K24, K34, K44, K54, K64, K74, K84, K05, \ + K15, K25, K35, K45, K55, K65, K75, K85, K06, K16, K26, K36, K46, K56, K66, \ + K76, K86, K07, K17, K27, K37, K47, K57, K67, K77 \ +) { \ + { KC_##K00, KC_##K01, KC_##K02, KC_##K03, KC_##K04, KC_##K05, KC_##K06, KC_##K07 }, \ + { KC_##K10, KC_##K11, KC_##K12, KC_##K13, KC_##K14, KC_##K15, KC_##K16, KC_##K17 }, \ + { KC_##K20, KC_##K21, KC_##K22, KC_##K23, KC_##K24, KC_##K25, KC_##K26, KC_##K27 }, \ + { KC_##K30, KC_##K31, KC_##K32, KC_##K33, KC_##K34, KC_##K35, KC_##K36, KC_##K37 }, \ + { KC_##K40, KC_##K41, KC_##K42, KC_##K43, KC_##K44, KC_##K45, KC_##K46, KC_##K47 }, \ + { KC_##K50, KC_##K51, KC_##K52, KC_##K53, KC_##K54, KC_##K55, KC_##K56, KC_##K57 }, \ + { KC_##K60, KC_##K61, KC_##K62, KC_##K63, KC_##K64, KC_##K65, KC_##K66, KC_##K67 }, \ + { KC_##K70, KC_##K71, KC_##K72, KC_##K73, KC_##K74, KC_##K75, KC_##K76, KC_##K77 }, \ + { KC_##K80, KC_##K81, KC_##K82, KC_##K83, KC_##K84, KC_##K85, KC_##K86, KC_NO } \ +} + +#endif -- cgit v1.2.3-24-g4f1b From 300c71a02381947ec5c8414ddad17c98c357d958 Mon Sep 17 00:00:00 2001 From: Kaleb Elwert Date: Wed, 4 Jan 2017 00:05:18 -0800 Subject: Remove unneeded define --- keyboards/whitefox/mcuconf.h | 1 - 1 file changed, 1 deletion(-) (limited to 'keyboards') diff --git a/keyboards/whitefox/mcuconf.h b/keyboards/whitefox/mcuconf.h index ab1f7d724..68c29cf68 100644 --- a/keyboards/whitefox/mcuconf.h +++ b/keyboards/whitefox/mcuconf.h @@ -31,7 +31,6 @@ #define KINETIS_MCG_MODE KINETIS_MCG_MODE_PEE #define KINETIS_PLLCLK_FREQUENCY 96000000UL #define KINETIS_SYSCLK_FREQUENCY 48000000UL -#define KINETIS_XTAL_FREQUENCY 16000000UL #if 0 /* FEI mode - 48 MHz with internal 32.768 kHz crystal */ -- cgit v1.2.3-24-g4f1b From 262d31c389cf60460ff6707be90695df3647141b Mon Sep 17 00:00:00 2001 From: Kaleb Elwert Date: Wed, 4 Jan 2017 00:29:58 -0800 Subject: Add whitefox readme --- keyboards/whitefox/readme.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 keyboards/whitefox/readme.md (limited to 'keyboards') diff --git a/keyboards/whitefox/readme.md b/keyboards/whitefox/readme.md new file mode 100644 index 000000000..0714ad563 --- /dev/null +++ b/keyboards/whitefox/readme.md @@ -0,0 +1,7 @@ +WhiteFox keyboard firmware +====================== + +This is an experimental port which came from the original TMK WhiteFox repo. + +The LED controller was not ported, as the original was a dirty hack and it would +be good to have complete support. -- cgit v1.2.3-24-g4f1b From ccde1d8b5e8be798a8ab6ee7ace3088d5a474929 Mon Sep 17 00:00:00 2001 From: Kaleb Elwert Date: Wed, 4 Jan 2017 21:19:32 -0800 Subject: Add white fox to keyboards readme --- keyboards/readme.md | 1 + 1 file changed, 1 insertion(+) (limited to 'keyboards') diff --git a/keyboards/readme.md b/keyboards/readme.md index 81a23c7e5..02bce70f0 100644 --- a/keyboards/readme.md +++ b/keyboards/readme.md @@ -52,4 +52,5 @@ These keyboards are part of the QMK repository, but their manufacturers are not * [Satan](/keyboards/satan) — A GH60 variant. * [SixKeyBoard](/keyboards/sixkeyboard) — A 6-key keyboard made by TechKeys. * [TheVan 44](/keyboars/tv44) — A 44-key staggered keybard by Evangs. +* [WhiteFox](/keyboards/whitefox) — A 65% keyboard designed as a partnership by matt3o, Massdrop and Input Club * [Vision Division](/keyboards/vision_division) — Full Size / Split Linear Keyboard by IBNobody. -- cgit v1.2.3-24-g4f1b From ca9a3dcb7113ea2a4ecec0b327c78bbf641386ca Mon Sep 17 00:00:00 2001 From: Kaleb Elwert Date: Wed, 4 Jan 2017 21:20:06 -0800 Subject: Fix unrelated spelling error --- keyboards/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards') diff --git a/keyboards/readme.md b/keyboards/readme.md index 02bce70f0..d2f41ad7e 100644 --- a/keyboards/readme.md +++ b/keyboards/readme.md @@ -51,6 +51,6 @@ These keyboards are part of the QMK repository, but their manufacturers are not * [S60-x](/keyboards/s60-x) — DIY compact keyboard designed by VinnyCordeiro for Sentraq. * [Satan](/keyboards/satan) — A GH60 variant. * [SixKeyBoard](/keyboards/sixkeyboard) — A 6-key keyboard made by TechKeys. -* [TheVan 44](/keyboars/tv44) — A 44-key staggered keybard by Evangs. +* [TheVan 44](/keyboards/tv44) — A 44-key staggered keybard by Evangs. * [WhiteFox](/keyboards/whitefox) — A 65% keyboard designed as a partnership by matt3o, Massdrop and Input Club * [Vision Division](/keyboards/vision_division) — Full Size / Split Linear Keyboard by IBNobody. -- cgit v1.2.3-24-g4f1b From 6fba925f413ca6cbd164f8023e83e8529f7af02a Mon Sep 17 00:00:00 2001 From: Joshua T Date: Fri, 6 Jan 2017 17:07:58 -0600 Subject: Fixed key not matching its diagram --- keyboards/ergodox/keymaps/replicaJunction/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards') diff --git a/keyboards/ergodox/keymaps/replicaJunction/keymap.c b/keyboards/ergodox/keymaps/replicaJunction/keymap.c index b7a14c10c..c9213553c 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/keymap.c +++ b/keyboards/ergodox/keymaps/replicaJunction/keymap.c @@ -117,7 +117,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL,KC_Q, KC_W, KC_E, KC_R, KC_T, KC_HOME, KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), - KC_LCTL,KC_GRV, KC_SLSH,LCTL(KC_LSFT), MO(_NU), + KC_LGUI,KC_GRV, KC_SLSH,LCTL(KC_LSFT), MO(_NU), KC_LCTL,TG(_GA), KC_HOME, -- cgit v1.2.3-24-g4f1b From 5ce7ec9ea5f120b791c03273b4ce5ce69e4b6c8d Mon Sep 17 00:00:00 2001 From: Joshua T Date: Fri, 6 Jan 2017 17:08:14 -0600 Subject: Increased TAPPING_TERM to 200 --- keyboards/ergodox/keymaps/replicaJunction/config.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'keyboards') diff --git a/keyboards/ergodox/keymaps/replicaJunction/config.h b/keyboards/ergodox/keymaps/replicaJunction/config.h index c620349ad..d32b46e4e 100644 --- a/keyboards/ergodox/keymaps/replicaJunction/config.h +++ b/keyboards/ergodox/keymaps/replicaJunction/config.h @@ -28,7 +28,9 @@ along with this program. If not, see . /* define if matrix has ghost */ //#define MATRIX_HAS_GHOST -#define TAPPING_TERM 150 +// MS the button needs to be held before a tap becomes a hold (default: 200) +#define TAPPING_TERM 200 + #define IGNORE_MOD_TAP_INTERRUPT // this makes it possible to do rolling combos (zx) with keys that convert to other keys on hold (z becomes ctrl when you hold it, and when this option isn't enabled, z rapidly followed by x actually sends Ctrl-x. That's bad.) // I don't have any locking keys, so I don't need these features -- cgit v1.2.3-24-g4f1b From fe517245440a031112c8a2f2ebd46210bf0e5d83 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Fri, 6 Jan 2017 19:56:11 -0600 Subject: Updated Atreus layout to 0.4 Removed Alt on base layer, replaced with Function layer. Moved function keys to left hand. Added mouse keys to right hand on the function layer. Moved middle click on gaming layer to be consistent with mouse layer. Added macro _USER. Macro contents are not implemented yet. --- keyboards/atreus/keymaps/replicaJunction/keymap.c | 54 ++++++++++++----------- 1 file changed, 28 insertions(+), 26 deletions(-) (limited to 'keyboards') diff --git a/keyboards/atreus/keymaps/replicaJunction/keymap.c b/keyboards/atreus/keymaps/replicaJunction/keymap.c index 4d46db69e..d746b4722 100644 --- a/keyboards/atreus/keymaps/replicaJunction/keymap.c +++ b/keyboards/atreus/keymaps/replicaJunction/keymap.c @@ -1,7 +1,7 @@ /* * Keyboard: Atreus * Keymap: replicaJunction - * Version: 0.3 + * Version: 0.4 * * This keymap is designed to complement my Ergodox keyboard layout, found in keyboards/ergodox_ez. * The Atreus keyboard is a 40% board whose design was heavily influenced by the Ergodox. I now @@ -42,6 +42,8 @@ #define KX_PAST LCTL(KC_V) #define KX_UNDO LCTL(KC_Z) +#define _USER 0 // User macro + ; // This doesn't do anything. It's just for VSCode because its syntax highlighting is weird for the above #define statements. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { @@ -56,7 +58,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * +------+------+------+------+------| +------+------+------+------+------| * |Z Shft| X | C | D | V | ,------. ,------. | K | H | , | . |/ Shft| * +------+------+------+------+------| | Ctrl | | Alt | +------+------+------+------+------| - * | Esc | Gui | Tab | Alt | Bksp | | Del | | Enter| |Sp/_NU| _EX | - | ' | = | + * | Esc | Gui | Tab | _FN | Bksp | | Del | | Enter| |Sp/_NU| _EX | - | ' | = | * `----------------------------------' `------' `------' `----------------------------------' * */ @@ -64,7 +66,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, SFT_T(KC_Z), KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, SFT_T(KC_SLSH), - KC_ESC, KC_LGUI, KC_TAB, KC_LALT, KC_BSPC, CTL_T(KC_DEL), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_EX), KC_MINS, KC_QUOT, KC_EQL + KC_ESC, KC_LGUI, KC_TAB, MO(_FN), KC_BSPC, CTL_T(KC_DEL), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_EX), KC_MINS, KC_QUOT, KC_EQL ), /* @@ -77,7 +79,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * +------+------+------+------+------| +------+------+------+------+------| * |Z Shft| X | C | V | B | ,------. ,------. | N | M | , | . |/ Shft| * +------+------+------+------+------| | Ctrl | | Alt | +------+------+------+------+------| - * | Esc | Gui | Tab | Alt | Bksp | | Del | | Enter| |Sp/_NU| _EX | - | ' | = | + * | Esc | Gui | Tab | _FN | Bksp | | Del | | Enter| |Sp/_NU| _EX | - | ' | = | * `----------------------------------' `------' `------' `----------------------------------' * */ @@ -85,7 +87,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, SFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, SFT_T(KC_SLSH), - KC_ESC, KC_LGUI, KC_TAB, KC_LALT, KC_BSPC, CTL_T(KC_DEL), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_EX), KC_MINS, KC_QUOT, KC_EQL + KC_ESC, KC_LGUI, KC_TAB, MO(_FN), KC_BSPC, CTL_T(KC_DEL), ALT_T(KC_ENT), LT(_NU, KC_SPC), MO(_EX), KC_MINS, KC_QUOT, KC_EQL ), /* @@ -96,21 +98,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * Also note that some dual-role keys are overridden here with their modifiers * * ,----------------------------------. ,----------------------------------. - * | Caps | | | |Ctrl `| | PgUp | Home | Up | End | Del | + * | | | | |Ctrl `| | PgUp | Home | Up | End | Del | * +------+------+------+------+------| +------+------+------+------+------| * | | Gui | Alt | Ctrl | | | PgDn | Left | Down | Right| Bksp | * +------+------+------+------+------| +------+------+------+------+------| * | Shift| Cut | Copy | | Paste| ,------. ,------. | | ^Tab | Tab | |Insert| - * +------+------+------+------+------| | | | | +------+------+------+------+------| - * | | | | | | | | | | | Space| | | |PrntSc| + * +------+------+------+------+------| | Del | | Enter| +------+------+------+------+------| + * | | | | | | | | | | | Space|XXXXXX| | |PrntSc| * `----------------------------------' `------' `------' `----------------------------------' * */ [_EX] = KEYMAP( /* Extend */ - KC_CAPS, _______, _______, _______, LCTL(KC_GRV), KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, + _______, _______, _______, _______, LCTL(KC_GRV), KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, _______, KC_LGUI, KC_LALT, KC_LCTL, _______, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, KC_LSFT, KX_CUT, KX_COPY, _______, KX_PAST, _______, KCX_LST, KC_TAB, _______, KC_INS, - _______, _______, _______, _______, _______, _______, _______, KC_SPC, _______, _______, _______, KC_PSCR + _______, _______, _______, _______, _______, KC_DEL, KC_ENT, KC_SPC, _______, _______, _______, KC_PSCR ), /* @@ -123,7 +125,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * +------+------+------+------+------| +------+------+------+------+------| * | % | ^ | [ | ] | ` | ,------. ,------. | \ | 1 | 2 | 3 | + | * +------+------+------+------+------| | | | | +------+------+------+------+------| - * | | _GA | | _FN | | | | | | | | 0 | . | = | | + * | | _GA | | | | | | | | |XXXXXX| 0 | . | = | | * `----------------------------------' `------' `------' `----------------------------------' * */ @@ -131,28 +133,28 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_AMPR, KC_SLSH, KC_7, KC_8, KC_9, KC_ASTR, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_TILD, KC_PIPE, KC_4, KC_5, KC_6, KC_MINS, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_GRV, KC_BSLS, KC_1, KC_2, KC_3, KC_PLUS, - _______, TG(_GA), _______, MO(_FN), _______, _______, _______, _______, KC_0, KC_DOT, KC_EQL, _______ + _______, TG(_GA), _______, _______, _______, _______, _______, _______, KC_0, KC_DOT, KC_EQL, _______ ), /* * Functions * * ,----------------------------------. ,----------------------------------. - * | | | | | | | | F7 | F8 | F9 | F10 | + * | Caps | F7 | F8 | F9 | F10 | | _USER|Whl Up| MUp |Whl Dn| | * +------+------+------+------+------| +------+------+------+------+------| - * | | | | | | | | F4 | F5 | F6 | F11 | + * | | F4 | F5 | F6 | F11 | | Vol ^| MLeft| MDown|MRight| | * +------+------+------+------+------| +------+------+------+------+------| - * | | Vol ^| Mute | Vol v| Play | ,------. ,------. | | F1 | F2 | F3 | F12 | - * +------+------+------+------+------| | | | | +------+------+------+------+------| - * | | | | | Stop | | | | | | | | _CO | _GA | RESET| + * | | F1 | F2 | F3 | F12 | ,------. ,------. | Vol v| | | | | + * +------+------+------+------+------| | | |RClick| +------+------+------+------+------| + * | | | |XXXXXX| | | | | | |LClick|MClick| _CO | _GA | RESET| * `----------------------------------' `------' `------' `----------------------------------' * */ [_FN] = KEYMAP( /* Functions */ - KC_DEL, KC_HOME, KC_UP, KC_END, KC_PGUP, _______, KC_F7, KC_F8, KC_F9, KC_F10, - KC_BSPC, KC_LEFT, KC_DOWN, KC_RGHT, KC_DOWN, _______, KC_F4, KC_F5, KC_F6, KC_F11, - _______, KC_VOLU, KC_MUTE, KC_VOLD, KC_MPLY, _______, KC_F1, KC_F2, KC_F3, KC_F12, - _______, _______, _______, _______, KC_MSTP, _______, _______, _______, KC_NO, DF(_CO), DF(_QW), RESET + KC_CAPS, KC_F7, KC_F8, KC_F9, KC_F10, M(_USER),KC_WH_U, KC_MS_U, KC_WH_D, _______, + _______, KC_F4, KC_F5, KC_F6, KC_F11, KC_VOLU, KC_MS_L, KC_MS_D, KC_MS_R, _______, + _______, KC_F1, KC_F2, KC_F3, KC_F12, KC_VOLD, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, KC_BTN2, KC_BTN1, KC_BTN3, DF(_CO), DF(_QW), RESET ), /* @@ -163,17 +165,17 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * +------+------+------+------+------| +------+------+------+------+------| * | | | | | | | | MLeft| MDown|MRight| | * +------+------+------+------+------| +------+------+------+------+------| - * | Z | | | | | ,------. ,------. |MClick| | | | | + * | Z | | | | | ,------. ,------. | | | | | | * +------+------+------+------+------| | Bksp | |RClick| +------+------+------+------+------| - * | | _GA | | Shift| Space| | | | | |LClick| | | | | + * | | _GA | | Shift| Space| | | | | |LClick|MClick| | | | * `----------------------------------' `------' `------' `----------------------------------' * */ [_GA] = KEYMAP( /* Gaming */ _______, _______, _______, _______, _______, _______, KC_WH_U, KC_MS_U, KC_WH_D, _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, - KC_Z, _______, _______, _______, _______, KC_BTN3, _______, KC_MS_D, _______, _______, - _______, TG(_GA), _______, KC_LSFT, KC_SPC, KC_BSPC, KC_BTN2, KC_BTN1, _______, _______, _______, _______ + KC_Z, _______, _______, _______, _______, _______, _______, KC_MS_D, _______, _______, + _______, TG(_GA), _______, KC_LSFT, KC_SPC, KC_BSPC, KC_BTN2, KC_BTN1, KC_BTN3, _______, _______, _______ )}; /* @@ -199,7 +201,7 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { // MACRODOWN only works in this function switch(id) { - case 0: + case _USER: if (record->event.pressed) { register_code(KC_RSFT); } else { -- cgit v1.2.3-24-g4f1b From 677ae86bdea2af7dcc35b17b0cea3e1e4374b4ca Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 7 Jan 2017 13:07:55 -0600 Subject: Added another Shift on Extend layer. This moves the GUI key to the pinkie, but honestly, I never use that function anyway. --- keyboards/atreus/keymaps/replicaJunction/keymap.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'keyboards') diff --git a/keyboards/atreus/keymaps/replicaJunction/keymap.c b/keyboards/atreus/keymaps/replicaJunction/keymap.c index d746b4722..d39a184d4 100644 --- a/keyboards/atreus/keymaps/replicaJunction/keymap.c +++ b/keyboards/atreus/keymaps/replicaJunction/keymap.c @@ -100,7 +100,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,----------------------------------. ,----------------------------------. * | | | | |Ctrl `| | PgUp | Home | Up | End | Del | * +------+------+------+------+------| +------+------+------+------+------| - * | | Gui | Alt | Ctrl | | | PgDn | Left | Down | Right| Bksp | + * | Gui | Shift| Alt | Ctrl | | | PgDn | Left | Down | Right| Bksp | * +------+------+------+------+------| +------+------+------+------+------| * | Shift| Cut | Copy | | Paste| ,------. ,------. | | ^Tab | Tab | |Insert| * +------+------+------+------+------| | Del | | Enter| +------+------+------+------+------| @@ -110,7 +110,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_EX] = KEYMAP( /* Extend */ _______, _______, _______, _______, LCTL(KC_GRV), KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, - _______, KC_LGUI, KC_LALT, KC_LCTL, _______, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, + KC_LGUI, KC_LSFT, KC_LALT, KC_LCTL, _______, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, KC_LSFT, KX_CUT, KX_COPY, _______, KX_PAST, _______, KCX_LST, KC_TAB, _______, KC_INS, _______, _______, _______, _______, _______, KC_DEL, KC_ENT, KC_SPC, _______, _______, _______, KC_PSCR ), @@ -140,20 +140,20 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * Functions * * ,----------------------------------. ,----------------------------------. - * | Caps | F7 | F8 | F9 | F10 | | _USER|Whl Up| MUp |Whl Dn| | + * | Caps | F9 | F10 | F11 | F12 | | _USER|Whl Up| MUp |Whl Dn| | * +------+------+------+------+------| +------+------+------+------+------| - * | | F4 | F5 | F6 | F11 | | Vol ^| MLeft| MDown|MRight| | + * | | F5 | F6 | F7 | F8 | | Vol ^| MLeft| MDown|MRight| | * +------+------+------+------+------| +------+------+------+------+------| - * | | F1 | F2 | F3 | F12 | ,------. ,------. | Vol v| | | | | + * | | F1 | F2 | F3 | F4 | ,------. ,------. | Vol v| | | | | * +------+------+------+------+------| | | |RClick| +------+------+------+------+------| * | | | |XXXXXX| | | | | | |LClick|MClick| _CO | _GA | RESET| * `----------------------------------' `------' `------' `----------------------------------' * */ [_FN] = KEYMAP( /* Functions */ - KC_CAPS, KC_F7, KC_F8, KC_F9, KC_F10, M(_USER),KC_WH_U, KC_MS_U, KC_WH_D, _______, - _______, KC_F4, KC_F5, KC_F6, KC_F11, KC_VOLU, KC_MS_L, KC_MS_D, KC_MS_R, _______, - _______, KC_F1, KC_F2, KC_F3, KC_F12, KC_VOLD, _______, _______, _______, _______, + KC_CAPS, KC_F9, KC_F10, KC_F11, KC_F12, M(_USER),KC_WH_U, KC_MS_U, KC_WH_D, _______, + _______, KC_F5, KC_F6, KC_F7, KC_F8, KC_VOLU, KC_MS_L, KC_MS_D, KC_MS_R, _______, + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_VOLD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_BTN2, KC_BTN1, KC_BTN3, DF(_CO), DF(_QW), RESET ), -- cgit v1.2.3-24-g4f1b From b7b44dc481430438552d91b7069d5e37a5e3a649 Mon Sep 17 00:00:00 2001 From: Joshua T Date: Sat, 7 Jan 2017 13:57:51 -0600 Subject: Updated README and images to reflect latest keymap --- .../atreus-replica-base-colemakdh.png | Bin 76319 -> 0 bytes .../keymaps/replicaJunction/atreus-replica-base.png | Bin 0 -> 75363 bytes .../replicaJunction/atreus-replica-extend.png | Bin 91555 -> 92445 bytes .../replicaJunction/atreus-replica-function.png | Bin 92516 -> 91749 bytes .../keymaps/replicaJunction/atreus-replica-game.png | Bin 72509 -> 72856 bytes .../keymaps/replicaJunction/atreus-replica-num.png | Bin 73171 -> 74690 bytes keyboards/atreus/keymaps/replicaJunction/readme.md | 16 ++++++++++------ 7 files changed, 10 insertions(+), 6 deletions(-) delete mode 100644 keyboards/atreus/keymaps/replicaJunction/atreus-replica-base-colemakdh.png create mode 100644 keyboards/atreus/keymaps/replicaJunction/atreus-replica-base.png (limited to 'keyboards') diff --git a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-base-colemakdh.png b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-base-colemakdh.png deleted file mode 100644 index 4640f9f52..000000000 Binary files a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-base-colemakdh.png and /dev/null differ diff --git a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-base.png b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-base.png new file mode 100644 index 000000000..1d5bd78db Binary files /dev/null and b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-base.png differ diff --git a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-extend.png b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-extend.png index 08c2e6140..cf4db3e2c 100644 Binary files a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-extend.png and b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-extend.png differ diff --git a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-function.png b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-function.png index 34ad03dec..30e5621e4 100644 Binary files a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-function.png and b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-function.png differ diff --git a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-game.png b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-game.png index 14ae35b54..95f8be5e0 100644 Binary files a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-game.png and b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-game.png differ diff --git a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-num.png b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-num.png index 6598acb27..3c445f90c 100644 Binary files a/keyboards/atreus/keymaps/replicaJunction/atreus-replica-num.png and b/keyboards/atreus/keymaps/replicaJunction/atreus-replica-num.png differ diff --git a/keyboards/atreus/keymaps/replicaJunction/readme.md b/keyboards/atreus/keymaps/replicaJunction/readme.md index 21af48e8f..6ac3cb00a 100644 --- a/keyboards/atreus/keymaps/replicaJunction/readme.md +++ b/keyboards/atreus/keymaps/replicaJunction/readme.md @@ -10,13 +10,15 @@ I won't claim that this layout is perfect for everyone. It does make several sig ## Base Layer ## -![Atreus base layout](atreus-replica-base-colemakdh.png) +![Atreus base layout](atreus-replica-base.png) The letters on this layout are arranged in the [Colemak Mod-DH layout](https://colemakmods.github.io/mod-dh/). -Note that there are four dual-purpose keys: Shift (Backspace), Ctrl (Delete), Alt (Enter), and Space (Number layer). In QMK, these dual-role keys can be made to hold their primary key by double-tapping the key and holding on the second tap. For example, if I wanted to insert a long string of Spaces, I would tap the Space key, then tap it again and hold. A single press and hold would trigger the secondary function of the key instead. +The primary mechanism for the Shift keys in this keyboard are the dual-role Z and slash keys. Pressing the key sends the keystroke, while holding the key sends a shift. This is a design choice taken from the xyverz layout, and one I find much more intuitive than a thumb shift. In addition, the pinky doesn't need to stretch as far to reach these keys as it does to reach a standard Shift key. -The secondary Alt on the left bottom row exists to provide a single-hand Alt+Tab shortcut, which would take two rows otherwise. +Occasionally, when typing the letter Z, I'll hold the key down a fraction of a second too long, and the keyboard will shift instead. If you're not a confident typist, this dual-role Shift key layout is probably not a good solution. In that case, I'd suggest moving Shift onto the Backspace key (press for Backspace, hold for Shift). + +In addition to the Shift keys, there are three dual-purpose keys: Ctrl (Delete), Alt (Enter), and Space (Number layer). In QMK, these dual-role keys can be made to hold their primary key with a tap and hold. For example, if I wanted to insert a long string of Spaces, I would tap the Space key, then tap it again and hold. A single press and hold would trigger the secondary function of the key instead. ## Extend Layer ## @@ -42,9 +44,11 @@ This layer also provides plenty of symbol shortcuts. Most of these can be access ![Atreus function layer](atreus-replica-function.png) -Function keys (F1-F12) are on this layer, as well as some more generic "functions" such as media keys. I've also set up a mirror image of the arrows from the Extend layer in case I need to use these with my left hand, but I don't do this very often. +Function keys (F1-F12) are on this layer. Their layout in groups of four comes from Jeremy's Atreus layout in this repository. I'd been using 1-9 in a numpad layout, then adding 10-12 on the side...I suppose it took seeing someone else do it this way for me to realize how much more sense it makes. + +On the right side are mouse keys - cursor left/right/up/down, and scroll up/down. Volume keys are also here, though really only because there was room for them (I'm not entirely happy with their positions). -The reset key is on this layer, as well as a toggle from Colemak to QWERTY and back. The QWERTY layer is not currently documented, but it is functionally identical to the base layer except for letter positions. +Finally, the reset key is on this layer, as well as toggles from Colemak to QWERTY and back. The QWERTY layer is not currently documented, but it is functionally identical to the base layer except for letter positions. ## Gaming Layer ## @@ -54,4 +58,4 @@ This is a small layer developed to allow some simple gameplay without a mouse. T The keys on the left hand bring Space into the left thumb's reach, as well as overriding the dual-role Shift with its standard function (Z in both QWERTY and in Colemak). This allows easy Shift presses without blocking the Z key, commonly used in games. -I would probably not consider this a hard-core gaming keyboard, and this layout does have the huge problem of blocking access to the number keys, but for more casual games, it plays quite well. I've used it quite a bit on Minecraft, for example, and I'm quite pleased with it. \ No newline at end of file +I would probably not consider the Atreus a hard-core gaming keyboard in the first place, and this layout does have the huge problem of blocking access to the number keys, but for more casual games, it plays quite well. I've used it quite a bit on Minecraft, for example, and I'm quite pleased with it. \ No newline at end of file -- cgit v1.2.3-24-g4f1b From 58b2536bf106fd18a265843ba43784fa3e6be384 Mon Sep 17 00:00:00 2001 From: Priyadi Iman Nurcahyo Date: Sun, 8 Jan 2017 22:45:16 +0700 Subject: om telolet om --- keyboards/planck/keymaps/priyadi/Makefile | 2 +- keyboards/planck/keymaps/priyadi/keymap.c | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) (limited to 'keyboards') diff --git a/keyboards/planck/keymaps/priyadi/Makefile b/keyboards/planck/keymaps/priyadi/Makefile index d9d4f3d1d..336608b8c 100644 --- a/keyboards/planck/keymaps/priyadi/Makefile +++ b/keyboards/planck/keymaps/priyadi/Makefile @@ -10,7 +10,7 @@ COMMAND_ENABLE = no # Commands for debug and configuration NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality MIDI_ENABLE = no # MIDI controls -AUDIO_ENABLE = yes # Audio output on port C6 +AUDIO_ENABLE = yes # Audio output on port C6 UNICODE_ENABLE = no # Unicode UNICODEMAP_ENABLE = yes # Unicode map BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID diff --git a/keyboards/planck/keymaps/priyadi/keymap.c b/keyboards/planck/keymaps/priyadi/keymap.c index f0dafebf3..57fe86ff7 100644 --- a/keyboards/planck/keymaps/priyadi/keymap.c +++ b/keyboards/planck/keymaps/priyadi/keymap.c @@ -11,6 +11,8 @@ #include "process_unicode.h" #include "quantum.h" +// #define TOLELOT_ENABLE + extern keymap_config_t keymap_config; enum layers { @@ -323,6 +325,7 @@ float tone_windows[][2] = SONG(SCROLL_LOCK_ON_SOUND); float tone_osx[][2] = SONG(NUM_LOCK_ON_SOUND); float tone_click[][2] = SONG(MUSICAL_NOTE(_F3, 2)); float tone_release[][2] = SONG(MUSICAL_NOTE(_A3, 2)); +float tone_tolelot[][2] = SONG(Q__NOTE(_E5), Q__NOTE(_C5), Q__NOTE(_D5)); #endif void persistant_default_layer_set(uint16_t default_layer) { @@ -334,12 +337,18 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { // faux clicky // if (record->event.pressed) PLAY_NOTE_ARRAY(tone_click, false, 0); #ifdef AUDIO_ENABLE + #ifdef TOLELOT_ENABLE + if (record->event.pressed) { + PLAY_NOTE_ARRAY(tone_tolelot, false, 0); + } + #else if (record->event.pressed) { PLAY_NOTE_ARRAY(tone_click, false, 0); } else { PLAY_NOTE_ARRAY(tone_release, false, 0); } #endif + #endif switch (keycode) { // QWERTZ style comma and dot: semicolon and colon when shifted -- cgit v1.2.3-24-g4f1b From 02055406e88253440decfc1af73bc8662e6ebd98 Mon Sep 17 00:00:00 2001 From: Priyadi Iman Nurcahyo Date: Mon, 9 Jan 2017 02:50:13 +0700 Subject: Greek alphabet layer --- keyboards/planck/keymaps/priyadi/keymap.c | 187 +++++++++++++++++++++++++++++- 1 file changed, 183 insertions(+), 4 deletions(-) (limited to 'keyboards') diff --git a/keyboards/planck/keymaps/priyadi/keymap.c b/keyboards/planck/keymaps/priyadi/keymap.c index 57fe86ff7..2e979221a 100644 --- a/keyboards/planck/keymaps/priyadi/keymap.c +++ b/keyboards/planck/keymaps/priyadi/keymap.c @@ -23,6 +23,8 @@ enum layers { _NUM, _FUNC, _EMOJI, + _GREEKU, + _GREEKL, _GUI, }; @@ -38,6 +40,7 @@ enum planck_keycodes { FUNC, EMOJI, GUI, + GREEK, // os switchers LINUX, @@ -100,6 +103,59 @@ enum unicode_name { SUN, // sun MOON, // moon SKULL, // skull + + // greek letters + UALPH, + UBETA, + UGAMM, + UDELT, + UEPSI, + UZETA, + UETA, + UTHET, + UIOTA, + UKAPP, + ULAMB, + UMU, + UNU, + UXI, + UOMIC, + UPI, + URHO, + USIGM, + UTAU, + UUPSI, + UPHI, + UCHI, + UPSI, + UOMEG, + + LALPH, + LBETA, + LGAMM, + LDELT, + LEPSI, + LZETA, + LETA, + LTHET, + LIOTA, + LKAPP, + LLAMB, + LMU, + LNU, + LXI, + LOMIC, + LPI, + LRHO, + LSIGM, + LTAU, + LUPSI, + LPHI, + LCHI, + LPSI, + LOMEG, + + FSIGM, }; const uint32_t PROGMEM unicode_map[] = { @@ -150,6 +206,57 @@ const uint32_t PROGMEM unicode_map[] = { [SUN] = 0x2600, [MOON] = 0x1F314, [SKULL] = 0x1F480, + + // greek letters + [UALPH] = 0x0391, + [UBETA] = 0x0392, + [UGAMM] = 0x0393, + [UDELT] = 0x0394, + [UEPSI] = 0x0395, + [UZETA] = 0x0396, + [UETA] = 0x0397, + [UTHET] = 0x0398, + [UIOTA] = 0x0399, + [UKAPP] = 0x039A, + [ULAMB] = 0x039B, + [UMU] = 0x039C, + [UNU] = 0x039D, + [UXI] = 0x039E, + [UOMIC] = 0x039F, + [UPI] = 0x03A0, + [URHO] = 0x03A1, + [USIGM] = 0x03A3, + [UTAU] = 0x03A4, + [UUPSI] = 0x03A5, + [UPHI] = 0x03A6, + [UCHI] = 0x03A7, + [UPSI] = 0x03A8, + [UOMEG] = 0x03A9, + [LALPH] = 0x03B1, + [LBETA] = 0x03B2, + [LGAMM] = 0x03B3, + [LDELT] = 0x03B4, + [LEPSI] = 0x03B5, + [LZETA] = 0x03B6, + [LETA] = 0x03B7, + [LTHET] = 0x03B8, + [LIOTA] = 0x03B9, + [LKAPP] = 0x03BA, + [LLAMB] = 0x03BB, + [LMU] = 0x03BC, + [LNU] = 0x03BD, + [LXI] = 0x03BE, + [LOMIC] = 0x03BF, + [LPI] = 0x03C0, + [LRHO] = 0x03C1, + [LSIGM] = 0x03C3, + [LTAU] = 0x03C4, + [LUPSI] = 0x03C5, + [LPHI] = 0x03C6, + [LCHI] = 0x03C7, + [LPSI] = 0x03C8, + [LOMEG] = 0x03C9, + [FSIGM] = 0x03C2, }; @@ -176,14 +283,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+------|------+------+------+------+------+------| * | Shift| Z | X | C | V | B | N | M | , | . | / |Shift | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | Ctrl | GUI | Alt | Punc | Num | Space | Func |Emoji |AltGr | GUI | Ctrl | + * | Ctrl | GUI | Alt | Punc | Num | Space | Func |Emoji |Greek |AltGr | Ctrl | * `-----------------------------------------------------------------------------------' */ [_QWERTY] = { {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_QUOT, KC_ENT }, {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT}, - {KC_LCTL, KC_LGUI, KC_LALT, PUNC, NUM, KC_SPC, KC_SPC, FUNC, EMOJI, KC_RALT, KC_RGUI, KC_RCTL} + {KC_LCTL, KC_LALT, KC_LGUI, PUNC, NUM, KC_SPC, KC_SPC, FUNC, EMOJI, GREEK, KC_RALT, KC_RCTL} }, /* Colemak @@ -222,6 +329,42 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} }, +/* Uppercase Greek + * ,-----------------------------------------------------------------------------------. + * | | | | | | | | | | | | | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | | | | | | | | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[_GREEKU] = { + {_______, _______, _______,X(UEPSI), X(URHO), X(UTAU),X(UUPSI),X(UTHET),X(UIOTA),X(UOMIC), X(UPI), _______}, + {_______,X(UALPH),X(USIGM),X(UDELT), X(UPHI),X(UGAMM), X(UETA), X(UXI),X(UKAPP),X(ULAMB), _______, _______}, + {_______,X(UZETA), X(UCHI), X(UPSI),X(UOMEG),X(UBETA), X(UNU), X(UMU), _______, _______, _______, _______}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} +}, + +/* Lowercase Greek + * ,-----------------------------------------------------------------------------------. + * | | | | | | | | | | | | | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | | | | | | | | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[_GREEKL] = { + {_______, _______,X(FSIGM),X(LEPSI), X(LRHO), X(LTAU),X(LUPSI),X(LTHET),X(LIOTA),X(LOMIC), X(LPI), _______}, + {_______,X(LALPH),X(LSIGM),X(LDELT), X(LPHI),X(LGAMM), X(LETA), X(LXI),X(LKAPP),X(LLAMB), _______, _______}, + {_______,X(LZETA), X(LCHI), X(LPSI),X(LOMEG),X(LBETA), X(LNU), X(LMU), _______, _______, _______, _______}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} +}, + /* Punc * ,-----------------------------------------------------------------------------------. * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | ` | @@ -350,12 +493,48 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { #endif #endif + bool lshifted = keyboard_report->mods & MOD_BIT(KC_LSFT); + bool rshifted = keyboard_report->mods & MOD_BIT(KC_RSFT); + switch (keycode) { + // Greek layer handling + case GREEK: + if (record->event.pressed) { + if (lshifted || rshifted) { + layer_on(_GREEKU); + layer_off(_GREEKL); + } else { + layer_on(_GREEKL); + layer_off(_GREEKU); + } + } else { + layer_off(_GREEKU); + layer_off(_GREEKL); + } + return false; + break; + + case KC_LSFT: + case KC_RSFT: + ; + uint8_t layer = biton32(layer_state); + if (layer == _GREEKU || layer == _GREEKL) { + if (record->event.pressed) { + layer_on(_GREEKU); + layer_off(_GREEKL); + } else { + if (lshifted ^ rshifted) { // if only one shift is pressed + layer_on(_GREEKL); + layer_off(_GREEKU); + } + } + } + return true; + break; + // QWERTZ style comma and dot: semicolon and colon when shifted case KC_COMM: if (record->event.pressed) { - bool lshifted = keyboard_report->mods & MOD_BIT(KC_LSFT); - bool rshifted = keyboard_report->mods & MOD_BIT(KC_RSFT); if (lshifted || rshifted) { if (lshifted) unregister_code(KC_LSFT); if (rshifted) unregister_code(KC_RSFT); -- cgit v1.2.3-24-g4f1b From f74ff86f9c5f3dfe1ee2b6e2b6d82edd4935ba1f Mon Sep 17 00:00:00 2001 From: milestogo Date: Sun, 8 Jan 2017 22:02:01 -0800 Subject: kinesis remap --- keyboards/kinesis/Makefile | 4 +- keyboards/kinesis/alvicstep/Makefile | 3 + keyboards/kinesis/alvicstep/alvicstep.c | 105 ++++ keyboards/kinesis/alvicstep/alvicstep.h | 67 +++ keyboards/kinesis/alvicstep/config.h | 35 ++ .../alvicstep/docs/docs/kicad/kinesis-cache.lib | 232 ++++++++ .../kinesis/alvicstep/docs/docs/kicad/kinesis.pro | 83 +++ .../kinesis/alvicstep/docs/docs/kicad/kinesis.sch | 634 +++++++++++++++++++++ .../alvicstep/docs/docs/photos/P1050573.jpg | Bin 0 -> 177711 bytes .../alvicstep/docs/docs/photos/P1050574.jpg | Bin 0 -> 343978 bytes .../alvicstep/docs/docs/photos/P1050575.jpg | Bin 0 -> 266771 bytes keyboards/kinesis/alvicstep/docs/docs/readme.txt | 52 ++ .../kinesis/alvicstep/docs/docs/schematic.png | Bin 0 -> 175014 bytes .../kinesis/alvicstep/docs/kicad/kinesis-cache.lib | 232 ++++++++ keyboards/kinesis/alvicstep/docs/kicad/kinesis.pro | 83 +++ keyboards/kinesis/alvicstep/docs/kicad/kinesis.sch | 634 +++++++++++++++++++++ .../kinesis/alvicstep/docs/photos/P1050573.jpg | Bin 0 -> 177711 bytes .../kinesis/alvicstep/docs/photos/P1050574.jpg | Bin 0 -> 343978 bytes .../kinesis/alvicstep/docs/photos/P1050575.jpg | Bin 0 -> 266771 bytes keyboards/kinesis/alvicstep/docs/readme.txt | 52 ++ keyboards/kinesis/alvicstep/docs/schematic.png | Bin 0 -> 175014 bytes keyboards/kinesis/alvicstep/matrix.c | 228 ++++++++ keyboards/kinesis/alvicstep/readme.md | 46 ++ keyboards/kinesis/alvicstep/rules.mk | 10 + keyboards/kinesis/config.h | 49 +- keyboards/kinesis/docs/kicad/kinesis-cache.lib | 232 -------- keyboards/kinesis/docs/kicad/kinesis.pro | 83 --- keyboards/kinesis/docs/kicad/kinesis.sch | 634 --------------------- keyboards/kinesis/docs/photos/P1050573.jpg | Bin 177711 -> 0 bytes keyboards/kinesis/docs/photos/P1050574.jpg | Bin 343978 -> 0 bytes keyboards/kinesis/docs/photos/P1050575.jpg | Bin 266771 -> 0 bytes keyboards/kinesis/docs/readme.txt | 52 -- keyboards/kinesis/docs/schematic.png | Bin 175014 -> 0 bytes keyboards/kinesis/keymaps/default/keymap.c | 32 +- keyboards/kinesis/keymaps/dvorak/Makefile | 21 + keyboards/kinesis/keymaps/dvorak/config.h | 8 + keyboards/kinesis/keymaps/dvorak/keymap.c | 93 +++ keyboards/kinesis/keymaps/milestogo/Makefile | 21 + keyboards/kinesis/keymaps/milestogo/config.h | 8 + keyboards/kinesis/keymaps/milestogo/keymap.c | 331 +++++++++++ keyboards/kinesis/keymaps/milestogo/readme.md | 2 + keyboards/kinesis/kinesis.c | 105 ---- keyboards/kinesis/kinesis.h | 70 +-- keyboards/kinesis/matrix.c | 228 -------- keyboards/kinesis/readme.md | 42 +- keyboards/kinesis/stapelberg/Makefile | 3 + keyboards/kinesis/stapelberg/config.h | 50 ++ .../kinesis/stapelberg/images/controller_board.jpg | Bin 0 -> 129312 bytes .../kinesis/stapelberg/images/exterior_reset.jpg | Bin 0 -> 97794 bytes .../kinesis/stapelberg/images/teensy_detail.jpg | Bin 0 -> 119748 bytes keyboards/kinesis/stapelberg/readme.md | 55 ++ keyboards/kinesis/stapelberg/rules.mk | 10 + keyboards/kinesis/stapelberg/stapelberg.c | 28 + keyboards/kinesis/stapelberg/stapelberg.h | 72 +++ 54 files changed, 3234 insertions(+), 1495 deletions(-) create mode 100644 keyboards/kinesis/alvicstep/Makefile create mode 100644 keyboards/kinesis/alvicstep/alvicstep.c create mode 100644 keyboards/kinesis/alvicstep/alvicstep.h create mode 100644 keyboards/kinesis/alvicstep/config.h create mode 100644 keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis-cache.lib create mode 100644 keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.pro create mode 100644 keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.sch create mode 100644 keyboards/kinesis/alvicstep/docs/docs/photos/P1050573.jpg create mode 100644 keyboards/kinesis/alvicstep/docs/docs/photos/P1050574.jpg create mode 100644 keyboards/kinesis/alvicstep/docs/docs/photos/P1050575.jpg create mode 100644 keyboards/kinesis/alvicstep/docs/docs/readme.txt create mode 100644 keyboards/kinesis/alvicstep/docs/docs/schematic.png create mode 100644 keyboards/kinesis/alvicstep/docs/kicad/kinesis-cache.lib create mode 100644 keyboards/kinesis/alvicstep/docs/kicad/kinesis.pro create mode 100644 keyboards/kinesis/alvicstep/docs/kicad/kinesis.sch create mode 100644 keyboards/kinesis/alvicstep/docs/photos/P1050573.jpg create mode 100644 keyboards/kinesis/alvicstep/docs/photos/P1050574.jpg create mode 100644 keyboards/kinesis/alvicstep/docs/photos/P1050575.jpg create mode 100644 keyboards/kinesis/alvicstep/docs/readme.txt create mode 100644 keyboards/kinesis/alvicstep/docs/schematic.png create mode 100644 keyboards/kinesis/alvicstep/matrix.c create mode 100644 keyboards/kinesis/alvicstep/readme.md create mode 100644 keyboards/kinesis/alvicstep/rules.mk delete mode 100644 keyboards/kinesis/docs/kicad/kinesis-cache.lib delete mode 100644 keyboards/kinesis/docs/kicad/kinesis.pro delete mode 100644 keyboards/kinesis/docs/kicad/kinesis.sch delete mode 100644 keyboards/kinesis/docs/photos/P1050573.jpg delete mode 100644 keyboards/kinesis/docs/photos/P1050574.jpg delete mode 100644 keyboards/kinesis/docs/photos/P1050575.jpg delete mode 100644 keyboards/kinesis/docs/readme.txt delete mode 100644 keyboards/kinesis/docs/schematic.png create mode 100644 keyboards/kinesis/keymaps/dvorak/Makefile create mode 100644 keyboards/kinesis/keymaps/dvorak/config.h create mode 100644 keyboards/kinesis/keymaps/dvorak/keymap.c create mode 100644 keyboards/kinesis/keymaps/milestogo/Makefile create mode 100644 keyboards/kinesis/keymaps/milestogo/config.h create mode 100644 keyboards/kinesis/keymaps/milestogo/keymap.c create mode 100644 keyboards/kinesis/keymaps/milestogo/readme.md delete mode 100644 keyboards/kinesis/matrix.c create mode 100644 keyboards/kinesis/stapelberg/Makefile create mode 100644 keyboards/kinesis/stapelberg/config.h create mode 100644 keyboards/kinesis/stapelberg/images/controller_board.jpg create mode 100644 keyboards/kinesis/stapelberg/images/exterior_reset.jpg create mode 100644 keyboards/kinesis/stapelberg/images/teensy_detail.jpg create mode 100644 keyboards/kinesis/stapelberg/readme.md create mode 100644 keyboards/kinesis/stapelberg/rules.mk create mode 100644 keyboards/kinesis/stapelberg/stapelberg.c create mode 100644 keyboards/kinesis/stapelberg/stapelberg.h (limited to 'keyboards') diff --git a/keyboards/kinesis/Makefile b/keyboards/kinesis/Makefile index 4e2a6f00f..fbf05ca4a 100644 --- a/keyboards/kinesis/Makefile +++ b/keyboards/kinesis/Makefile @@ -1,3 +1,5 @@ +SUBPROJECT_DEFAULT = alvicstep + ifndef MAKEFILE_INCLUDED include ../../Makefile -endif \ No newline at end of file +endif diff --git a/keyboards/kinesis/alvicstep/Makefile b/keyboards/kinesis/alvicstep/Makefile new file mode 100644 index 000000000..bd09e5885 --- /dev/null +++ b/keyboards/kinesis/alvicstep/Makefile @@ -0,0 +1,3 @@ +ifndef MAKEFILE_INCLUDED + include ../../../Makefile +endif diff --git a/keyboards/kinesis/alvicstep/alvicstep.c b/keyboards/kinesis/alvicstep/alvicstep.c new file mode 100644 index 000000000..fba9f5136 --- /dev/null +++ b/keyboards/kinesis/alvicstep/alvicstep.c @@ -0,0 +1,105 @@ +#include "kinesis.h" + +// begin section origin https://github.com/alvicstep/tmk_keyboard + +void all_led_off(void) +{ + PORTD = 0b11111111; +} + +void all_led_on(void) +{ + PORTD = 0b00000000; +} +void num_lock_led_on(void) +{ + PORTD = 0b11101111; +} + +void caps_lock_led_on(void) +{ + PORTD = 0b01111111; +} + +void scroll_lock_led_on(void) +{ + PORTD = 0b11011111; +} +void keypad_led_on(void) +{ + PORTD = 0b10111111; +} +void blink_all_leds(void) +{ + all_led_on(); + _delay_ms(500); + + all_led_off(); + _delay_ms(100); + + caps_lock_led_on(); + _delay_ms(100); + + num_lock_led_on(); + _delay_ms(100); + + scroll_lock_led_on(); + _delay_ms(100); + + keypad_led_on(); + _delay_ms(100); + + //back + + scroll_lock_led_on(); + _delay_ms(100); + + num_lock_led_on(); + _delay_ms(100); + + caps_lock_led_on(); + _delay_ms(100); + + all_led_off(); +} + +// End section origin https://github.com/alvicstep/tmk_keyboard + + void matrix_init_kb(void) { + blink_all_leds(); + matrix_init_user(); +} + + +void matrix_scan_kb(void) { + // put your looping keyboard code here + // runs every cycle (a lot) + + matrix_scan_user(); +} + +bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + // put your per-action keyboard code here + // runs for every action, just before processing by the firmware + + return process_record_user(keycode, record); +} + +void led_set_kb(uint8_t usb_led) { + // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here + +//Copyright 2014 Warren Janssens + uint8_t leds = 0xF0; + if (usb_led & 1 << USB_LED_NUM_LOCK) + leds &= ~0x10; + if (usb_led & 1 << USB_LED_CAPS_LOCK) + leds &= ~0x80; + if (usb_led & 1 << USB_LED_SCROLL_LOCK) + leds &= ~0x20; + PORTD = (PORTD & 0x0F) | leds; + + led_set_user(usb_led); + +} + + diff --git a/keyboards/kinesis/alvicstep/alvicstep.h b/keyboards/kinesis/alvicstep/alvicstep.h new file mode 100644 index 000000000..f91a52314 --- /dev/null +++ b/keyboards/kinesis/alvicstep/alvicstep.h @@ -0,0 +1,67 @@ +#ifndef KINESIS_ALVICSTEP_H +#define KINESIS_ALVICSTEP_H + +#include "../kinesis.h" + + +#define KEYMAP( \ + k02,k22,k12,k01,k21,k11,k00,k20,k10, \ + k80,k70,k60,k50,k40,k30, \ + k81,k71,k61,k51,k41,k31, \ + k82,k72,k62,k52,k42,k32, \ + k83,k73,k63,k53,k43,k33, \ + k74,k64,k54,k34, \ + k36,k35, \ + k55, \ + k56,k46,k75, \ + k03,k23,k13,k04,k24,k14,k05,k85,k84, \ + k94,kA4,kB4,kD4,kE4,kF4, \ + k95,kA5,kB5,kD5,kE5,kF5, \ + k96,kA6,kB6,kD6,kE6,kF6, \ + k97,kA7,kB7,kD7,kE7,kF7, \ + k93,kB3,kD3,kE3, \ + k47,k66, \ + k67, \ + k87,k76,k86 \ +) { \ + { k00, k01, k02, k03, k04, k05, KC_NO, KC_NO }, \ + { k10, k11, k12, k13, k14, KC_NO, KC_NO, KC_NO }, \ + { k20, k21, k22, k23, k24, KC_NO, KC_NO, KC_NO }, \ + { k30, k31, k32, k33, k34, k35, k36, KC_NO }, \ + { k40, k41, k42, k43, KC_NO, KC_NO, k46, k47 }, \ + { k50, k51, k52, k53, k54, k55, k56, KC_NO }, \ + { k60, k61, k62, k63, k64, KC_NO, k66, k67 }, \ + { k70, k71, k72, k73, k74, k75, k76, KC_NO }, \ + { k80, k81, k82, k83, k84, k85, k86, k87}, \ + { KC_NO, KC_NO ,KC_NO ,k93, k94, k95, k96, k97}, \ + { KC_NO, KC_NO ,KC_NO ,KC_NO, kA4, kA5, kA6, kA7}, \ + { KC_NO, KC_NO ,KC_NO ,kB3, kB4, kB5, kB6, kB7}, \ + { KC_NO, KC_NO ,KC_NO ,KC_NO, KC_NO, KC_NO, KC_NO, KC_NO}, \ + { KC_NO, KC_NO ,KC_NO ,kD3, kD4, kD5, kD6, kD7}, \ + { KC_NO, KC_NO ,KC_NO ,kE3, kE4, kE5, kE6, kE7}, \ + { KC_NO, KC_NO ,KC_NO ,KC_NO, kF4, kF5, kF6, kF7} \ +} + + +/* Row pin configuration +PF0 A +PF1 B +PF2 C +PF3 G 0 = U4, 1 = U5 + + + r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 rA rB rC rD rE rF +PB0 c0| f6 f8 f7 5 4 3 2 1 =+ +PB1 c1| f3 f5 f4 t r e w q TAB +PB2 c2| ESC f2 f1 g f d s a CL +PB3 c3| f9 f11 f10 b v c x z LS UP DN [{ ]} +PB4 c4| f12 SL PS RT LT §± `~ 6 7 8 9 0 -_ +PB5 c5| PB PGM KPD y u i o p \ +PB6 c6| LC DL BS RC EN SP h j k l ;: '" +PB7 c7| RA PU PD n m ,< .> /? RS + */ + + + + +#endif diff --git a/keyboards/kinesis/alvicstep/config.h b/keyboards/kinesis/alvicstep/config.h new file mode 100644 index 000000000..88b7e2644 --- /dev/null +++ b/keyboards/kinesis/alvicstep/config.h @@ -0,0 +1,35 @@ +#ifndef ALVICSTEP_CONFIG_H +#define ALVICSTEP_CONFIG_H + +#include "../config.h" + +/* USB Device descriptor parameter */ +#define PRODUCT_ID 0x6060 +#define DEVICE_VER 0x0001 + +/* key matrix size */ +#define MATRIX_ROWS 16 +#define MATRIX_COLS 8 + +/* + * Keyboard Matrix Assignments + * + * Change this to how you wired your keyboard + * COLS: AVR pins used for columns, left to right + * ROWS: AVR pins used for rows, top to bottom + * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) + * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) + * +*/ +//Passed through the port multipler, so 4 pins =16 +#define MATRIX_ROW_PINS { F0,F1, F2, F3 } + +// May be upside down. +#define MATRIX_COL_PINS { B0,B1, B2, B3, B4, B5, B6, B7 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + + +#endif diff --git a/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis-cache.lib b/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis-cache.lib new file mode 100644 index 000000000..f798d39d6 --- /dev/null +++ b/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis-cache.lib @@ -0,0 +1,232 @@ +EESchema-LIBRARY Version 2.3 Date: Wednesday, November 12, 2014 'pmt' 10:15:19 pm +#encoding utf-8 +# +# AT90S4414-P +# +DEF AT90S4414-P IC 0 40 Y Y 1 F N +F0 "IC" -850 1880 40 H V L BNN +F1 "AT90S4414-P" 450 -1950 40 H V L BNN +F2 "DIL40" 0 0 30 H V C CIN +F3 "~" 0 0 60 H V C CNN +ALIAS AT90S8515-P +$FPLIST + 40DIP-ELL600 + 40dip600 +$ENDFPLIST +DRAW +S -850 1850 850 -1850 0 1 10 f +X (T0)PB0 1 1000 700 150 L 40 40 1 1 B +X (T1)PB1 2 1000 600 150 L 40 40 1 1 B +X (AIN0)PB2 3 1000 500 150 L 40 40 1 1 B +X (AIN1)PB3 4 1000 400 150 L 40 40 1 1 B +X (~SS~)PB4 5 1000 300 150 L 40 40 1 1 B +X (MOSI)PB5 6 1000 200 150 L 40 40 1 1 B +X (MISO)PB6 7 1000 100 150 L 40 40 1 1 B +X (SCK)PB7 8 1000 0 150 L 40 40 1 1 B +X ~RESET 9 -1000 1700 150 R 40 40 1 1 I +X (RXD)PD0 10 1000 -1000 150 L 40 40 1 1 B +X GND 20 0 -2000 150 U 40 40 1 1 W +X ALE 30 1000 850 150 L 40 40 1 1 O +X VCC 40 0 2000 150 D 40 40 1 1 W +X (TXD)PD1 11 1000 -1100 150 L 40 40 1 1 B +X (A8)PC0 21 1000 -150 150 L 40 40 1 1 B +X ICP 31 -1000 -1400 150 R 40 40 1 1 I +X (INT0)PD2 12 1000 -1200 150 L 40 40 1 1 B +X (A9)PC1 22 1000 -250 150 L 40 40 1 1 B +X (AD7)PA7 32 1000 1000 150 L 40 40 1 1 B +X (INT1)PD3 13 1000 -1300 150 L 40 40 1 1 B +X (A10)PC2 23 1000 -350 150 L 40 40 1 1 B +X (AD6)PA6 33 1000 1100 150 L 40 40 1 1 B +X PD4 14 1000 -1400 150 L 40 40 1 1 B +X (A11)PC3 24 1000 -450 150 L 40 40 1 1 B +X (AD5)PA5 34 1000 1200 150 L 40 40 1 1 B +X (OC1A)PD5 15 1000 -1500 150 L 40 40 1 1 B +X (A12)PC4 25 1000 -550 150 L 40 40 1 1 B +X (AD4)PA4 35 1000 1300 150 L 40 40 1 1 B +X (~WR~)PD6 16 1000 -1600 150 L 40 40 1 1 B +X (A13)PC5 26 1000 -650 150 L 40 40 1 1 B +X (AD3)PA3 36 1000 1400 150 L 40 40 1 1 B +X (~RD~)PD7 17 1000 -1700 150 L 40 40 1 1 B +X (A14)PC6 27 1000 -750 150 L 40 40 1 1 B +X (AD2)PA2 37 1000 1500 150 L 40 40 1 1 B +X XTAL2 18 -1000 1200 150 R 40 40 1 1 B +X (A15)PC7 28 1000 -850 150 L 40 40 1 1 B +X (AD1)PA1 38 1000 1600 150 L 40 40 1 1 B +X XTAL1 19 -1000 800 150 R 40 40 1 1 B +X OC1B 29 -1000 -1500 150 R 40 40 1 1 W +X (AD0)PA0 39 1000 1700 150 L 40 40 1 1 B +ENDDRAW +ENDDEF +# +# ATMEGA16U4-A +# +DEF ATMEGA16U4-A U 0 40 Y Y 1 F N +F0 "U" -950 1700 40 H V C CNN +F1 "ATMEGA16U4-A" 700 -1500 40 H V C CNN +F2 "TQFP44" 0 0 35 H V C CIN +F3 "~" 1100 1100 60 H V C CNN +ALIAS ATMEGA16U4RC-A ATMEGA32U4-A ATMEGA32U4RC-A +$FPLIST + TQFP44 +$ENDFPLIST +DRAW +S -1000 1650 950 -1450 0 1 10 f +X (INT6/AIN0)PE6 1 1100 -650 150 L 40 40 1 1 B +X UVCC 2 -450 1800 150 D 40 40 1 1 W +X D- 3 -1150 100 150 R 40 40 1 1 B +X D+ 4 -1150 200 150 R 40 40 1 1 B +X UGND 5 -400 -1600 150 U 40 40 1 1 P +X UCAP 6 -1150 -50 150 R 40 40 1 1 P +X VBUS 7 -1150 350 150 R 40 40 1 1 P +X (SS/PCINT0)PB0 8 1100 1550 150 L 40 40 1 1 B +X (SCLK/PCINT1)PB1 9 1100 1450 150 L 40 40 1 1 B +X (PDI/MOSI/PCINT2)PB2 10 1100 1350 150 L 40 40 1 1 B +X (RXD/INT2)PD2 20 1100 150 150 L 40 40 1 1 B +X (ADC13/OC1B/OC4B/PCINT13)PB6 30 1100 950 150 L 40 40 1 1 B +X (ADC1)PF1 40 1100 -950 150 L 40 40 1 1 B +X (PDO/MISO/PCINT3)PB3 11 1100 1250 150 L 40 40 1 1 B +X (TXD/INT3)PD3 21 1100 50 150 L 40 40 1 1 B +X (OC3A/~OC4A~)PC6 31 1100 650 150 L 40 40 1 1 B +X (ADC0)PF0 41 1100 -850 150 L 40 40 1 1 B +X (OC0A/OC1C/~RTS~/PCINT7)PB7 12 1100 850 150 L 40 40 1 1 B +X (XCK1/~CTS~)PD5 22 1100 -150 150 L 40 40 1 1 B +X (ICP3/CLK0/OC4A)PC7 32 1100 550 150 L 40 40 1 1 B +X AREF 42 -1150 -850 150 R 40 40 1 1 P +X ~RESET~ 13 -1150 1550 150 R 40 40 1 1 I +X GND 23 -50 -1600 150 U 40 40 1 1 W +X (~HWB~)PE2 33 1100 -550 150 L 40 40 1 1 B +X GND 43 150 -1600 150 U 40 40 1 1 W +X VCC 14 -200 1800 150 D 40 40 1 1 W +X AVCC 24 150 1800 150 D 40 40 1 1 W +X VCC 34 -100 1800 150 D 40 40 1 1 W +X AVCC 44 250 1800 150 D 40 40 1 1 W +X GND 15 -150 -1600 150 U 40 40 1 1 W +X (ICP2/ADC8)PD4 25 1100 -50 150 L 40 40 1 1 B +X GND 35 50 -1600 150 U 40 40 1 1 W +X XTAL2 16 -1150 950 150 R 40 40 1 1 O +X (T1/~OC4D~/ADC9)PD6 26 1100 -250 150 L 40 40 1 1 B +X (ADC7/TDI)PF7 36 1100 -1350 150 L 40 40 1 1 B +X XTAL1 17 -1150 1150 150 R 40 40 1 1 I +X (T0/OC4D/ADC10)PD7 27 1100 -350 150 L 40 40 1 1 B +X (ADC6/TDO)PF6 37 1100 -1250 150 L 40 40 1 1 B +X (OC0B/SCL/INT0)PD0 18 1100 350 150 L 40 40 1 1 B +X (ADC11/PCINT4)PB4 28 1100 1150 150 L 40 40 1 1 B +X (ADC5/TMS)PF5 38 1100 -1150 150 L 40 40 1 1 B +X (SDA/INT1)PD1 19 1100 250 150 L 40 40 1 1 B +X (ADC12/OC1A/~OC4B~/PCINT12)PB5 29 1100 1050 150 L 40 40 1 1 B +X (ADC4/TCK)PF4 39 1100 -1050 150 L 40 40 1 1 B +ENDDRAW +ENDDEF +# +# C +# +DEF C C 0 10 N Y 1 F N +F0 "C" 0 100 40 H V L CNN +F1 "C" 6 -85 40 H V L CNN +F2 "~" 38 -150 30 H V C CNN +F3 "~" 0 0 60 H V C CNN +$FPLIST + SM* + C? + C1-1 +$ENDFPLIST +DRAW +P 2 0 1 20 -80 -30 80 -30 N +P 2 0 1 20 -80 30 80 30 N +X ~ 1 0 200 170 D 40 40 1 1 P +X ~ 2 0 -200 170 U 40 40 1 1 P +ENDDRAW +ENDDEF +# +# CONN_7 +# +DEF CONN_7 P 0 40 Y N 1 F N +F0 "P" -30 0 60 V V C CNN +F1 "CONN_7" 70 0 60 V V C CNN +F2 "~" 0 0 60 H V C CNN +F3 "~" 0 0 60 H V C CNN +DRAW +S -100 350 150 -350 0 1 0 N +X P1 1 -350 300 250 R 50 50 1 1 P I +X P2 2 -350 200 250 R 50 50 1 1 P I +X P3 3 -350 100 250 R 50 50 1 1 P I +X P4 4 -350 0 250 R 50 50 1 1 P I +X P5 5 -350 -100 250 R 50 50 1 1 P I +X P6 6 -350 -200 250 R 50 50 1 1 P I +X P7 7 -350 -300 250 R 50 50 1 1 P I +ENDDRAW +ENDDEF +# +# GND +# +DEF ~GND #PWR 0 0 Y Y 1 F P +F0 "#PWR" 0 0 30 H I C CNN +F1 "GND" 0 -70 30 H I C CNN +F2 "~" 0 0 60 H V C CNN +F3 "~" 0 0 60 H V C CNN +DRAW +P 4 0 1 0 -50 0 0 -50 50 0 -50 0 N +X GND 1 0 0 0 U 30 30 1 1 W N +ENDDRAW +ENDDEF +# +# R +# +DEF R R 0 0 N Y 1 F N +F0 "R" 80 0 40 V V C CNN +F1 "R" 7 1 40 V V C CNN +F2 "~" -70 0 30 V V C CNN +F3 "~" 0 0 30 H V C CNN +$FPLIST + R? + SM0603 + SM0805 + R?-* + SM1206 +$ENDFPLIST +DRAW +S -40 150 40 -150 0 1 12 N +X ~ 1 0 250 100 D 60 60 1 1 P +X ~ 2 0 -250 100 U 60 60 1 1 P +ENDDRAW +ENDDEF +# +# USB-MINI-B +# +DEF USB-MINI-B CON 0 40 Y Y 1 F N +F0 "CON" -250 450 60 H V C CNN +F1 "USB-MINI-B" -50 -500 60 H V C CNN +F2 "~" 0 0 60 H V C CNN +F3 "~" 0 0 60 H V C CNN +$FPLIST + USB-Mini-B-Jack +$ENDFPLIST +DRAW +S -350 400 350 -400 0 1 0 N +X VBUS 1 -550 300 200 R 50 50 1 1 W +X D- 2 -550 150 200 R 50 50 1 1 B +X D+ 3 -550 0 200 R 50 50 1 1 B +X ID 4 -550 -150 200 R 50 50 1 1 B +X GND 5 -550 -300 200 R 50 50 1 1 W +X SHELL1 6 550 300 200 L 50 50 1 1 B +X SHELL2 7 550 150 200 L 50 50 1 1 B +X SHELL3 8 550 -150 200 L 50 50 1 1 B +X SHELL4 9 550 -300 200 L 50 50 1 1 B +ENDDRAW +ENDDEF +# +# VCC +# +DEF VCC #PWR 0 0 Y Y 1 F P +F0 "#PWR" 0 100 30 H I C CNN +F1 "VCC" 0 100 30 H V C CNN +F2 "~" 0 0 60 H V C CNN +F3 "~" 0 0 60 H V C CNN +DRAW +X VCC 1 0 0 0 U 20 20 0 0 W N +C 0 50 20 0 1 0 N +P 3 0 1 0 0 0 0 30 0 30 N +ENDDRAW +ENDDEF +# +#End Library diff --git a/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.pro b/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.pro new file mode 100644 index 000000000..9f130b509 --- /dev/null +++ b/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.pro @@ -0,0 +1,83 @@ +update=Wednesday, November 05, 2014 'pmt' 12:08:47 pm +version=1 +last_client=pcbnew +[cvpcb] +version=1 +NetIExt=net +[cvpcb/libraries] +EquName1=devcms +[general] +version=1 +[eeschema] +version=1 +PageLayoutDescrFile= +SubpartIdSeparator=0 +SubpartFirstId=65 +LibDir=../../../lib/kicad/library +NetFmtName= +RptD_X=0 +RptD_Y=100 +RptLab=1 +LabSize=60 +[eeschema/libraries] +LibName1=power +LibName2=device +LibName3=transistors +LibName4=conn +LibName5=linear +LibName6=regul +LibName7=74xx +LibName8=cmos4000 +LibName9=adc-dac +LibName10=memory +LibName11=xilinx +LibName12=special +LibName13=microcontrollers +LibName14=dsp +LibName15=microchip +LibName16=analog_switches +LibName17=motorola +LibName18=texas +LibName19=intel +LibName20=audio +LibName21=interface +LibName22=digital-audio +LibName23=philips +LibName24=display +LibName25=cypress +LibName26=siliconi +LibName27=opto +LibName28=atmel +LibName29=contrib +LibName30=valves +LibName31=custom +[pcbnew] +version=1 +LastNetListRead= +UseCmpFile=1 +PadDrill=1.016000000000 +PadDrillOvalY=1.016000000000 +PadSizeH=1.524000000000 +PadSizeV=1.524000000000 +PcbTextSizeV=1.500000000000 +PcbTextSizeH=1.500000000000 +PcbTextThickness=0.300000000000 +ModuleTextSizeV=1.000000000000 +ModuleTextSizeH=1.000000000000 +ModuleTextSizeThickness=0.150000000000 +SolderMaskClearance=0.000000000000 +SolderMaskMinWidth=0.000000000000 +DrawSegmentWidth=0.200000000000 +BoardOutlineThickness=0.100000000000 +ModuleOutlineThickness=0.150000000000 +[pcbnew/libraries] +LibDir=../../../lib/kicad/modules +LibName1=custom +LibName2=Sockets +LibName3=Connect +LibName4=Discret +LibName5=Divers +LibName6=Display +LibName7=LEDs +LibName8=SMD_Packages +LibName9=Sockets_DIP diff --git a/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.sch b/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.sch new file mode 100644 index 000000000..f75335aa0 --- /dev/null +++ b/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.sch @@ -0,0 +1,634 @@ +EESchema Schematic File Version 2 +LIBS:power +LIBS:device +LIBS:transistors +LIBS:conn +LIBS:linear +LIBS:regul +LIBS:74xx +LIBS:cmos4000 +LIBS:adc-dac +LIBS:memory +LIBS:xilinx +LIBS:special +LIBS:microcontrollers +LIBS:dsp +LIBS:microchip +LIBS:analog_switches +LIBS:motorola +LIBS:texas +LIBS:intel +LIBS:audio +LIBS:interface +LIBS:digital-audio +LIBS:philips +LIBS:display +LIBS:cypress +LIBS:siliconi +LIBS:opto +LIBS:atmel +LIBS:contrib +LIBS:valves +LIBS:custom +LIBS:kinesis-cache +EELAYER 27 0 +EELAYER END +$Descr A4 11693 8268 +encoding utf-8 +Sheet 1 1 +Title "" +Date "13 nov 2014" +Rev "" +Comp "" +Comment1 "" +Comment2 "" +Comment3 "" +Comment4 "" +$EndDescr +$Comp +L C C4 +U 1 1 545804FB +P 2850 4250 +F 0 "C4" H 2850 4350 40 0000 L CNN +F 1 "1uF" H 2856 4165 40 0000 L CNN +F 2 "~" H 2888 4100 30 0000 C CNN +F 3 "~" H 2850 4250 60 0000 C CNN + 1 2850 4250 + -1 0 0 1 +$EndComp +$Comp +L R R3 +U 1 1 545805E8 +P 2500 4000 +F 0 "R3" V 2580 4000 40 0000 C CNN +F 1 "22" V 2507 4001 40 0000 C CNN +F 2 "~" V 2430 4000 30 0000 C CNN +F 3 "~" H 2500 4000 30 0000 C CNN + 1 2500 4000 + 0 -1 -1 0 +$EndComp +$Comp +L R R2 +U 1 1 545805FA +P 2500 3800 +F 0 "R2" V 2580 3800 40 0000 C CNN +F 1 "22" V 2507 3801 40 0000 C CNN +F 2 "~" V 2430 3800 30 0000 C CNN +F 3 "~" H 2500 3800 30 0000 C CNN + 1 2500 3800 + 0 -1 -1 0 +$EndComp +Entry Wire Line + 6450 2450 6550 2550 +Entry Wire Line + 6450 2550 6550 2650 +Entry Wire Line + 6450 2650 6550 2750 +Entry Wire Line + 6450 2750 6550 2850 +Entry Wire Line + 6450 2950 6550 3050 +Entry Wire Line + 6450 3050 6550 3150 +Entry Wire Line + 6450 2850 6550 2950 +Entry Wire Line + 6450 3150 6550 3250 +Wire Wire Line + 10250 1800 10750 1800 +Entry Wire Line + 10750 1800 10850 1900 +Entry Wire Line + 10750 1900 10850 2000 +Entry Wire Line + 10750 2000 10850 2100 +Entry Wire Line + 10750 2800 10850 2900 +Entry Wire Line + 10750 2900 10850 3000 +Entry Wire Line + 10750 3000 10850 3100 +Entry Wire Line + 10750 3100 10850 3200 +Entry Wire Line + 10750 3200 10850 3300 +Entry Wire Line + 10750 3300 10850 3400 +$Comp +L AT90S8515-P IC2 +U 1 1 545A62EA +P 9250 3500 +F 0 "IC2" H 8400 5380 40 0000 L BNN +F 1 "AT90S8515-P" H 9700 1550 40 0000 L BNN +F 2 "DIL40" H 9250 3500 30 0000 C CIN +F 3 "" H 9250 3500 60 0000 C CNN + 1 9250 3500 + 1 0 0 -1 +$EndComp +NoConn ~ 10250 2650 +Entry Wire Line + 10750 3650 10850 3750 +Entry Wire Line + 10750 3750 10850 3850 +Entry Wire Line + 10750 3850 10850 3950 +Entry Wire Line + 10750 3950 10850 4050 +Entry Wire Line + 10750 4050 10850 4150 +Entry Wire Line + 10750 4150 10850 4250 +Entry Wire Line + 10750 4350 10850 4450 +Entry Wire Line + 10750 4250 10850 4350 +NoConn ~ 8250 4900 +NoConn ~ 8250 5000 +NoConn ~ 8250 1800 +Wire Wire Line + 10250 1900 10750 1900 +Wire Wire Line + 10250 2000 10750 2000 +Wire Wire Line + 10250 2100 10750 2100 +Wire Wire Line + 10250 2200 10750 2200 +Wire Wire Line + 10250 2300 10750 2300 +Wire Wire Line + 10250 2400 10750 2400 +Wire Wire Line + 10250 2500 10750 2500 +Text Label 10350 1800 0 60 ~ 0 +A +Text Label 10350 1900 0 60 ~ 0 +B +Text Label 10350 2000 0 60 ~ 0 +C +Text Label 10350 2100 0 60 ~ 0 +G +Wire Wire Line + 10250 2800 10750 2800 +Wire Wire Line + 10250 2900 10750 2900 +Wire Wire Line + 10250 3000 10750 3000 +Wire Wire Line + 10250 3100 10750 3100 +Wire Wire Line + 10250 3200 10750 3200 +Wire Wire Line + 10250 3300 10750 3300 +Wire Wire Line + 10250 3400 10750 3400 +Wire Wire Line + 10250 3500 10750 3500 +Text Label 10350 2800 0 60 ~ 0 +DL2 +Text Label 10350 2900 0 60 ~ 0 +DR1 +Text Label 10350 3000 0 60 ~ 0 +DR2 +Text Label 10350 3100 0 60 ~ 0 +DL1 +Text Label 10350 3400 0 60 ~ 0 +SCL +Text Label 10350 3500 0 60 ~ 0 +SDA +Wire Wire Line + 10250 3650 10750 3650 +Wire Wire Line + 10250 3750 10750 3750 +Wire Wire Line + 10250 3850 10750 3850 +Wire Wire Line + 10250 3950 10750 3950 +Wire Wire Line + 10250 4050 10750 4050 +Wire Wire Line + 10250 4150 10750 4150 +Wire Wire Line + 10250 4250 10750 4250 +Wire Wire Line + 10250 4350 10750 4350 +Text Label 10350 3650 0 60 ~ 0 +R1 +Text Label 10350 3750 0 60 ~ 0 +R2 +Text Label 10350 3850 0 60 ~ 0 +R3 +Text Label 10350 3950 0 60 ~ 0 +R4 +Text Label 10350 4050 0 60 ~ 0 +R5 +Text Label 10350 4150 0 60 ~ 0 +R6 +Text Label 10350 4250 0 60 ~ 0 +R7 +Text Label 10350 4350 0 60 ~ 0 +R8 +Wire Wire Line + 10250 4500 10750 4500 +Wire Wire Line + 10250 4600 10750 4600 +Wire Wire Line + 10250 4700 10750 4700 +Wire Wire Line + 10250 4800 10750 4800 +Wire Wire Line + 10250 4900 10750 4900 +Wire Wire Line + 10250 5000 10750 5000 +Wire Wire Line + 10250 5100 10750 5100 +Wire Wire Line + 10250 5200 10750 5200 +Text Label 10350 4600 0 60 ~ 0 +FS1 +Text Label 10350 5000 0 60 ~ 0 +FS3 +Text Label 10350 5200 0 60 ~ 0 +FS2 +$Comp +L GND #PWR01 +U 1 1 545A7377 +P 9250 5600 +F 0 "#PWR01" H 9250 5600 30 0001 C CNN +F 1 "GND" H 9250 5530 30 0001 C CNN +F 2 "" H 9250 5600 60 0000 C CNN +F 3 "" H 9250 5600 60 0000 C CNN + 1 9250 5600 + 1 0 0 -1 +$EndComp +Wire Wire Line + 9250 5500 9250 5600 +Text Label 10350 4700 0 60 ~ 0 +CLOCK +Text Label 10350 4800 0 60 ~ 0 +DATA +NoConn ~ 10750 4700 +NoConn ~ 10750 4800 +Text Label 10350 3200 0 60 ~ 0 +KP +Text Label 10350 3300 0 60 ~ 0 +PGM +Text Label 10350 2500 0 60 ~ 0 +BUZZ +NoConn ~ 8250 2300 +NoConn ~ 8250 2700 +$Comp +L GND #PWR02 +U 1 1 545A7565 +P 4750 5700 +F 0 "#PWR02" H 4750 5700 30 0001 C CNN +F 1 "GND" H 4750 5630 30 0001 C CNN +F 2 "" H 4750 5700 60 0000 C CNN +F 3 "" H 4750 5700 60 0000 C CNN + 1 4750 5700 + 1 0 0 -1 +$EndComp +Entry Wire Line + 6450 3650 6550 3750 +Entry Wire Line + 6450 3750 6550 3850 +Entry Wire Line + 6450 4150 6550 4250 +Entry Wire Line + 6450 4250 6550 4350 +Entry Wire Line + 6450 4050 6550 4150 +Entry Wire Line + 6450 4350 6550 4450 +NoConn ~ 3750 2850 +Wire Wire Line + 1200 2000 6450 2000 +NoConn ~ 3750 3050 +Wire Wire Line + 2750 3800 3750 3800 +Wire Wire Line + 2750 3900 3750 3900 +Wire Wire Line + 2750 3900 2750 4000 +Wire Bus Line + 6550 2100 6550 6050 +Wire Bus Line + 10850 1600 10850 6050 +Text Label 6050 4350 0 60 ~ 0 +DL1 +Text Label 6050 4250 0 60 ~ 0 +DR2 +Text Label 6050 4150 0 60 ~ 0 +DR1 +Text Label 6050 4050 0 60 ~ 0 +DL2 +Text Label 6050 2450 0 60 ~ 0 +R1 +Text Label 6050 2550 0 60 ~ 0 +R2 +Text Label 6050 2650 0 60 ~ 0 +R3 +Text Label 6050 2750 0 60 ~ 0 +R4 +Text Label 6050 2850 0 60 ~ 0 +R5 +Text Label 6050 2950 0 60 ~ 0 +R6 +Text Label 6050 3050 0 60 ~ 0 +R7 +Text Label 6050 3150 0 60 ~ 0 +R8 +Text Label 6050 5050 0 60 ~ 0 +A +Text Label 6050 5150 0 60 ~ 0 +B +Text Label 6050 5250 0 60 ~ 0 +C +Text Label 6050 5350 0 60 ~ 0 +G +Text Label 1300 3800 0 60 ~ 0 +D+ +Text Label 1300 4000 0 60 ~ 0 +D- +NoConn ~ 10750 2200 +NoConn ~ 10750 2300 +NoConn ~ 10750 2400 +Text Label 10350 4500 0 60 ~ 0 +GND +NoConn ~ 10750 4900 +NoConn ~ 10750 5100 +Text Label 6050 3450 0 60 ~ 0 +KP +Text Label 6050 3350 0 60 ~ 0 +PGM +$Comp +L ATMEGA32U4-A U1 +U 1 1 5462E0B1 +P 4900 4000 +F 0 "U1" H 3950 5700 40 0000 C CNN +F 1 "ATMEGA32U4-A" H 5600 2500 40 0000 C CNN +F 2 "TQFP44" H 4900 4000 35 0000 C CIN +F 3 "" H 6000 5100 60 0000 C CNN + 1 4900 4000 + 1 0 0 -1 +$EndComp +Wire Wire Line + 3750 4850 3750 5600 +Wire Wire Line + 4450 2200 5150 2200 +Connection ~ 4700 2200 +Connection ~ 4800 2200 +Connection ~ 5050 2200 +Connection ~ 4800 2000 +Wire Wire Line + 6000 2450 6450 2450 +Wire Wire Line + 6000 2550 6450 2550 +Wire Wire Line + 6000 2650 6450 2650 +Wire Wire Line + 6000 2750 6450 2750 +Wire Wire Line + 6000 2850 6450 2850 +Wire Wire Line + 6000 2950 6450 2950 +Wire Wire Line + 6000 3050 6450 3050 +Wire Wire Line + 6000 3150 6450 3150 +Wire Wire Line + 6000 5050 6450 5050 +Wire Wire Line + 6000 5150 6450 5150 +Wire Wire Line + 6000 5250 6450 5250 +Wire Wire Line + 6000 4050 6450 4050 +Wire Wire Line + 6000 4150 6450 4150 +Wire Wire Line + 6000 4250 6450 4250 +Wire Wire Line + 6000 4350 6450 4350 +Wire Wire Line + 6000 4550 6450 4550 +Entry Wire Line + 6450 3350 6550 3450 +Entry Wire Line + 6450 3450 6550 3550 +Entry Wire Line + 6450 5050 6550 5150 +Entry Wire Line + 6450 5150 6550 5250 +Entry Wire Line + 6450 5250 6550 5350 +Entry Wire Line + 6450 5350 6550 5450 +Entry Wire Line + 6450 4650 6550 4750 +Wire Wire Line + 6000 3350 6450 3350 +Wire Wire Line + 6000 3450 6450 3450 +Wire Wire Line + 1200 5600 6450 5600 +Connection ~ 4950 5600 +Connection ~ 4850 5600 +Wire Wire Line + 4750 5600 4750 5700 +Connection ~ 4750 5600 +Connection ~ 4500 5600 +Text Label 6050 4550 0 60 ~ 0 +HWB +Wire Wire Line + 6000 5350 6450 5350 +Wire Wire Line + 6000 3650 6450 3650 +Wire Wire Line + 6000 3750 6450 3750 +Text Label 6050 3650 0 60 ~ 0 +SCL +Text Label 6050 3750 0 60 ~ 0 +SDA +Wire Wire Line + 6000 3850 6450 3850 +Wire Wire Line + 6000 3950 6450 3950 +Wire Wire Line + 6000 4650 6450 4650 +Text Label 6050 4650 0 60 ~ 0 +BUZZ +NoConn ~ 10750 4600 +NoConn ~ 10750 5000 +NoConn ~ 10750 5200 +Entry Wire Line + 10750 3400 10850 3500 +Entry Wire Line + 10750 3500 10850 3600 +Entry Wire Line + 10750 4500 10850 4600 +Wire Wire Line + 2850 4050 3750 4050 +Text Label 2950 4050 0 60 ~ 0 +UCAP +Wire Wire Line + 6000 4850 6450 4850 +Wire Wire Line + 6000 4950 6450 4950 +NoConn ~ 6450 4850 +NoConn ~ 6450 4950 +NoConn ~ 6450 4550 +$Comp +L USB-MINI-B CON1 +U 1 1 546431C1 +P 2100 5050 +F 0 "CON1" H 1850 5500 60 0000 C CNN +F 1 "USB-MINI-B" H 2050 4550 60 0000 C CNN +F 2 "" H 2100 5050 60 0000 C CNN +F 3 "" H 2100 5050 60 0000 C CNN + 1 2100 5050 + 0 1 1 0 +$EndComp +$Comp +L VCC #PWR03 +U 1 1 54643698 +P 2400 4400 +F 0 "#PWR03" H 2400 4500 30 0001 C CNN +F 1 "VCC" H 2400 4500 30 0000 C CNN +F 2 "" H 2400 4400 60 0000 C CNN +F 3 "" H 2400 4400 60 0000 C CNN + 1 2400 4400 + 1 0 0 -1 +$EndComp +Text Notes 2600 2750 0 60 ~ 0 +Teensy 2.0\n(not fully drawn) +$Comp +L CONN_7 B7K-PH-K-S1 +U 1 1 54643939 +P 1950 6900 +F 0 "B7K-PH-K-S1" V 1920 6900 60 0000 C CNN +F 1 "CONN_7" V 2020 6900 60 0000 C CNN +F 2 "" H 1950 6900 60 0000 C CNN +F 3 "" H 1950 6900 60 0000 C CNN + 1 1950 6900 + 1 0 0 -1 +$EndComp +Connection ~ 3750 5600 +Connection ~ 2400 5600 +Connection ~ 2250 5600 +Connection ~ 1950 5600 +Wire Wire Line + 2400 4400 2400 4500 +Wire Wire Line + 2250 4000 2250 4500 +Wire Wire Line + 1200 3800 2250 3800 +Wire Wire Line + 2100 3800 2100 4500 +Wire Wire Line + 2850 4450 2850 5600 +Connection ~ 2850 5600 +Entry Wire Line + 1100 6800 1200 6900 +Entry Wire Line + 1100 6900 1200 7000 +Entry Wire Line + 1100 7000 1200 7100 +Entry Wire Line + 1100 6700 1200 6800 +Wire Wire Line + 1200 6600 1600 6600 +Wire Wire Line + 1200 6700 1600 6700 +Wire Wire Line + 1200 6800 1600 6800 +Wire Wire Line + 1200 6900 1600 6900 +Wire Wire Line + 1200 7000 1600 7000 +Wire Wire Line + 1200 7100 1600 7100 +Wire Wire Line + 1200 7200 1600 7200 +Text Label 1300 6600 0 60 ~ 0 +FS2 +Text Label 1300 6700 0 60 ~ 0 +FS1 +Text Label 1300 6800 0 60 ~ 0 +VCC +Text Label 1300 6900 0 60 ~ 0 +D- +Text Label 1300 7000 0 60 ~ 0 +D+ +Text Label 1300 7100 0 60 ~ 0 +GND +Text Label 1300 7200 0 60 ~ 0 +FS3 +NoConn ~ 3750 2450 +Wire Wire Line + 3600 2000 3600 3650 +Wire Wire Line + 3600 3650 3750 3650 +NoConn ~ 1950 4500 +Wire Bus Line + 1100 1900 1100 7100 +NoConn ~ 1200 6600 +NoConn ~ 1200 6700 +NoConn ~ 1200 7200 +Connection ~ 2100 3800 +Wire Wire Line + 1200 4000 2250 4000 +Entry Wire Line + 1100 3700 1200 3800 +Entry Wire Line + 1100 3900 1200 4000 +Text Label 10350 1500 0 60 ~ 0 +VCC +Entry Wire Line + 1100 1900 1200 2000 +Text Label 1250 2000 0 60 ~ 0 +VCC +Entry Wire Line + 1100 5500 1200 5600 +Connection ~ 1800 5600 +Text Label 1300 5600 0 60 ~ 0 +GND +Wire Wire Line + 9250 5500 10750 5500 +Entry Wire Line + 10750 5500 10850 5600 +Text Label 10350 5500 0 60 ~ 0 +GND +Wire Wire Line + 9250 1500 10750 1500 +Entry Wire Line + 10750 1500 10850 1600 +Connection ~ 3600 2000 +Wire Wire Line + 4800 2000 4800 2200 +Entry Wire Line + 6450 2000 6550 2100 +Text Label 6050 2000 0 60 ~ 0 +VCC +Connection ~ 5050 5600 +Entry Wire Line + 6450 5600 6550 5700 +Text Label 6050 5600 0 60 ~ 0 +GND +NoConn ~ 6450 3850 +NoConn ~ 6450 3950 +Wire Wire Line + 1800 4500 1500 4500 +Wire Wire Line + 1500 4500 1500 5600 +Connection ~ 1500 5600 +Entry Wire Line + 10750 2500 10850 2600 +Entry Wire Line + 10750 2100 10850 2200 +Text Notes 1000 5300 1 60 ~ 0 +Sacrificial USB cable from header to Teensy +Text Notes 7850 5950 0 60 ~ 0 +Ribbon cable between Teensy pins and socket +Wire Bus Line + 10850 6050 6550 6050 +$EndSCHEMATC diff --git a/keyboards/kinesis/alvicstep/docs/docs/photos/P1050573.jpg b/keyboards/kinesis/alvicstep/docs/docs/photos/P1050573.jpg new file mode 100644 index 000000000..027ab9efb Binary files /dev/null and b/keyboards/kinesis/alvicstep/docs/docs/photos/P1050573.jpg differ diff --git a/keyboards/kinesis/alvicstep/docs/docs/photos/P1050574.jpg b/keyboards/kinesis/alvicstep/docs/docs/photos/P1050574.jpg new file mode 100644 index 000000000..d49c492b8 Binary files /dev/null and b/keyboards/kinesis/alvicstep/docs/docs/photos/P1050574.jpg differ diff --git a/keyboards/kinesis/alvicstep/docs/docs/photos/P1050575.jpg b/keyboards/kinesis/alvicstep/docs/docs/photos/P1050575.jpg new file mode 100644 index 000000000..50cc9897c Binary files /dev/null and b/keyboards/kinesis/alvicstep/docs/docs/photos/P1050575.jpg differ diff --git a/keyboards/kinesis/alvicstep/docs/docs/readme.txt b/keyboards/kinesis/alvicstep/docs/docs/readme.txt new file mode 100644 index 000000000..af33ac490 --- /dev/null +++ b/keyboards/kinesis/alvicstep/docs/docs/readme.txt @@ -0,0 +1,52 @@ +This directory of documentation was copied from https://github.com/wjanssens/tmk_keyboard/tree/master/keyboard/kinesis +and is probably Copyright 2014 Warren Janssens +and probably released under GPL v2, which may be recovered at . + +Row configuration +PF0 A +PF1 B +PF2 C +PF3 G 0 = U4, 1 = U5 + +Column configuration + 4y0 4y1 4y2 4y3 4y4 4y5 4y6 4y7 5y0 5y1 5y2 5y3 5y4 5y5 5y6 5y7 + r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 r16 +PB0 21 c1 f6 f8 f7 5 4 3 2 1 =+ +PB1 22 c2 f3 f5 f4 t r e w q TAB +PB2 23 c3 ESC f2 f1 g f d s a CL +PB3 24 c4 f9 f11 f10 b v c x z LS UP DN [{ ]} +PB4 25 c5 f12 SL PS RT LT §± `~ 6 7 8 9 0 -_ +PB5 26 c6 PB PGM KPD y u i o p \ +PB6 27 c7 LC DL BS RC EN SP h j k l ;: '" +PB7 28 c8 RA PU PD n m ,< .> /? RS + */ + + +40 pin connector + + DL2 1 40 VCC + DR1 2 39 A + DR2 3 38 B + DL1 4 37 C + KPD 5 36 G + PGM 6 35 + SCL 7 34 + SDA 8 33 + RST 9 32 BUZZ + WP 10 31 EA + FS1 11 30 ALE + CLOCK 12 29 PSEN + DATA 13 28 r8 + 14 27 r7 + FS3 15 26 r6 + 16 25 r5 + FS2 17 24 r4 + XTAL1 18 23 r3 + XTAL2 19 22 r2 + GND 20 21 r1 + + +references: +https://github.com/chrisandreae/keyboard-firmware + + diff --git a/keyboards/kinesis/alvicstep/docs/docs/schematic.png b/keyboards/kinesis/alvicstep/docs/docs/schematic.png new file mode 100644 index 000000000..fa9405a1f Binary files /dev/null and b/keyboards/kinesis/alvicstep/docs/docs/schematic.png differ diff --git a/keyboards/kinesis/alvicstep/docs/kicad/kinesis-cache.lib b/keyboards/kinesis/alvicstep/docs/kicad/kinesis-cache.lib new file mode 100644 index 000000000..f798d39d6 --- /dev/null +++ b/keyboards/kinesis/alvicstep/docs/kicad/kinesis-cache.lib @@ -0,0 +1,232 @@ +EESchema-LIBRARY Version 2.3 Date: Wednesday, November 12, 2014 'pmt' 10:15:19 pm +#encoding utf-8 +# +# AT90S4414-P +# +DEF AT90S4414-P IC 0 40 Y Y 1 F N +F0 "IC" -850 1880 40 H V L BNN +F1 "AT90S4414-P" 450 -1950 40 H V L BNN +F2 "DIL40" 0 0 30 H V C CIN +F3 "~" 0 0 60 H V C CNN +ALIAS AT90S8515-P +$FPLIST + 40DIP-ELL600 + 40dip600 +$ENDFPLIST +DRAW +S -850 1850 850 -1850 0 1 10 f +X (T0)PB0 1 1000 700 150 L 40 40 1 1 B +X (T1)PB1 2 1000 600 150 L 40 40 1 1 B +X (AIN0)PB2 3 1000 500 150 L 40 40 1 1 B +X (AIN1)PB3 4 1000 400 150 L 40 40 1 1 B +X (~SS~)PB4 5 1000 300 150 L 40 40 1 1 B +X (MOSI)PB5 6 1000 200 150 L 40 40 1 1 B +X (MISO)PB6 7 1000 100 150 L 40 40 1 1 B +X (SCK)PB7 8 1000 0 150 L 40 40 1 1 B +X ~RESET 9 -1000 1700 150 R 40 40 1 1 I +X (RXD)PD0 10 1000 -1000 150 L 40 40 1 1 B +X GND 20 0 -2000 150 U 40 40 1 1 W +X ALE 30 1000 850 150 L 40 40 1 1 O +X VCC 40 0 2000 150 D 40 40 1 1 W +X (TXD)PD1 11 1000 -1100 150 L 40 40 1 1 B +X (A8)PC0 21 1000 -150 150 L 40 40 1 1 B +X ICP 31 -1000 -1400 150 R 40 40 1 1 I +X (INT0)PD2 12 1000 -1200 150 L 40 40 1 1 B +X (A9)PC1 22 1000 -250 150 L 40 40 1 1 B +X (AD7)PA7 32 1000 1000 150 L 40 40 1 1 B +X (INT1)PD3 13 1000 -1300 150 L 40 40 1 1 B +X (A10)PC2 23 1000 -350 150 L 40 40 1 1 B +X (AD6)PA6 33 1000 1100 150 L 40 40 1 1 B +X PD4 14 1000 -1400 150 L 40 40 1 1 B +X (A11)PC3 24 1000 -450 150 L 40 40 1 1 B +X (AD5)PA5 34 1000 1200 150 L 40 40 1 1 B +X (OC1A)PD5 15 1000 -1500 150 L 40 40 1 1 B +X (A12)PC4 25 1000 -550 150 L 40 40 1 1 B +X (AD4)PA4 35 1000 1300 150 L 40 40 1 1 B +X (~WR~)PD6 16 1000 -1600 150 L 40 40 1 1 B +X (A13)PC5 26 1000 -650 150 L 40 40 1 1 B +X (AD3)PA3 36 1000 1400 150 L 40 40 1 1 B +X (~RD~)PD7 17 1000 -1700 150 L 40 40 1 1 B +X (A14)PC6 27 1000 -750 150 L 40 40 1 1 B +X (AD2)PA2 37 1000 1500 150 L 40 40 1 1 B +X XTAL2 18 -1000 1200 150 R 40 40 1 1 B +X (A15)PC7 28 1000 -850 150 L 40 40 1 1 B +X (AD1)PA1 38 1000 1600 150 L 40 40 1 1 B +X XTAL1 19 -1000 800 150 R 40 40 1 1 B +X OC1B 29 -1000 -1500 150 R 40 40 1 1 W +X (AD0)PA0 39 1000 1700 150 L 40 40 1 1 B +ENDDRAW +ENDDEF +# +# ATMEGA16U4-A +# +DEF ATMEGA16U4-A U 0 40 Y Y 1 F N +F0 "U" -950 1700 40 H V C CNN +F1 "ATMEGA16U4-A" 700 -1500 40 H V C CNN +F2 "TQFP44" 0 0 35 H V C CIN +F3 "~" 1100 1100 60 H V C CNN +ALIAS ATMEGA16U4RC-A ATMEGA32U4-A ATMEGA32U4RC-A +$FPLIST + TQFP44 +$ENDFPLIST +DRAW +S -1000 1650 950 -1450 0 1 10 f +X (INT6/AIN0)PE6 1 1100 -650 150 L 40 40 1 1 B +X UVCC 2 -450 1800 150 D 40 40 1 1 W +X D- 3 -1150 100 150 R 40 40 1 1 B +X D+ 4 -1150 200 150 R 40 40 1 1 B +X UGND 5 -400 -1600 150 U 40 40 1 1 P +X UCAP 6 -1150 -50 150 R 40 40 1 1 P +X VBUS 7 -1150 350 150 R 40 40 1 1 P +X (SS/PCINT0)PB0 8 1100 1550 150 L 40 40 1 1 B +X (SCLK/PCINT1)PB1 9 1100 1450 150 L 40 40 1 1 B +X (PDI/MOSI/PCINT2)PB2 10 1100 1350 150 L 40 40 1 1 B +X (RXD/INT2)PD2 20 1100 150 150 L 40 40 1 1 B +X (ADC13/OC1B/OC4B/PCINT13)PB6 30 1100 950 150 L 40 40 1 1 B +X (ADC1)PF1 40 1100 -950 150 L 40 40 1 1 B +X (PDO/MISO/PCINT3)PB3 11 1100 1250 150 L 40 40 1 1 B +X (TXD/INT3)PD3 21 1100 50 150 L 40 40 1 1 B +X (OC3A/~OC4A~)PC6 31 1100 650 150 L 40 40 1 1 B +X (ADC0)PF0 41 1100 -850 150 L 40 40 1 1 B +X (OC0A/OC1C/~RTS~/PCINT7)PB7 12 1100 850 150 L 40 40 1 1 B +X (XCK1/~CTS~)PD5 22 1100 -150 150 L 40 40 1 1 B +X (ICP3/CLK0/OC4A)PC7 32 1100 550 150 L 40 40 1 1 B +X AREF 42 -1150 -850 150 R 40 40 1 1 P +X ~RESET~ 13 -1150 1550 150 R 40 40 1 1 I +X GND 23 -50 -1600 150 U 40 40 1 1 W +X (~HWB~)PE2 33 1100 -550 150 L 40 40 1 1 B +X GND 43 150 -1600 150 U 40 40 1 1 W +X VCC 14 -200 1800 150 D 40 40 1 1 W +X AVCC 24 150 1800 150 D 40 40 1 1 W +X VCC 34 -100 1800 150 D 40 40 1 1 W +X AVCC 44 250 1800 150 D 40 40 1 1 W +X GND 15 -150 -1600 150 U 40 40 1 1 W +X (ICP2/ADC8)PD4 25 1100 -50 150 L 40 40 1 1 B +X GND 35 50 -1600 150 U 40 40 1 1 W +X XTAL2 16 -1150 950 150 R 40 40 1 1 O +X (T1/~OC4D~/ADC9)PD6 26 1100 -250 150 L 40 40 1 1 B +X (ADC7/TDI)PF7 36 1100 -1350 150 L 40 40 1 1 B +X XTAL1 17 -1150 1150 150 R 40 40 1 1 I +X (T0/OC4D/ADC10)PD7 27 1100 -350 150 L 40 40 1 1 B +X (ADC6/TDO)PF6 37 1100 -1250 150 L 40 40 1 1 B +X (OC0B/SCL/INT0)PD0 18 1100 350 150 L 40 40 1 1 B +X (ADC11/PCINT4)PB4 28 1100 1150 150 L 40 40 1 1 B +X (ADC5/TMS)PF5 38 1100 -1150 150 L 40 40 1 1 B +X (SDA/INT1)PD1 19 1100 250 150 L 40 40 1 1 B +X (ADC12/OC1A/~OC4B~/PCINT12)PB5 29 1100 1050 150 L 40 40 1 1 B +X (ADC4/TCK)PF4 39 1100 -1050 150 L 40 40 1 1 B +ENDDRAW +ENDDEF +# +# C +# +DEF C C 0 10 N Y 1 F N +F0 "C" 0 100 40 H V L CNN +F1 "C" 6 -85 40 H V L CNN +F2 "~" 38 -150 30 H V C CNN +F3 "~" 0 0 60 H V C CNN +$FPLIST + SM* + C? + C1-1 +$ENDFPLIST +DRAW +P 2 0 1 20 -80 -30 80 -30 N +P 2 0 1 20 -80 30 80 30 N +X ~ 1 0 200 170 D 40 40 1 1 P +X ~ 2 0 -200 170 U 40 40 1 1 P +ENDDRAW +ENDDEF +# +# CONN_7 +# +DEF CONN_7 P 0 40 Y N 1 F N +F0 "P" -30 0 60 V V C CNN +F1 "CONN_7" 70 0 60 V V C CNN +F2 "~" 0 0 60 H V C CNN +F3 "~" 0 0 60 H V C CNN +DRAW +S -100 350 150 -350 0 1 0 N +X P1 1 -350 300 250 R 50 50 1 1 P I +X P2 2 -350 200 250 R 50 50 1 1 P I +X P3 3 -350 100 250 R 50 50 1 1 P I +X P4 4 -350 0 250 R 50 50 1 1 P I +X P5 5 -350 -100 250 R 50 50 1 1 P I +X P6 6 -350 -200 250 R 50 50 1 1 P I +X P7 7 -350 -300 250 R 50 50 1 1 P I +ENDDRAW +ENDDEF +# +# GND +# +DEF ~GND #PWR 0 0 Y Y 1 F P +F0 "#PWR" 0 0 30 H I C CNN +F1 "GND" 0 -70 30 H I C CNN +F2 "~" 0 0 60 H V C CNN +F3 "~" 0 0 60 H V C CNN +DRAW +P 4 0 1 0 -50 0 0 -50 50 0 -50 0 N +X GND 1 0 0 0 U 30 30 1 1 W N +ENDDRAW +ENDDEF +# +# R +# +DEF R R 0 0 N Y 1 F N +F0 "R" 80 0 40 V V C CNN +F1 "R" 7 1 40 V V C CNN +F2 "~" -70 0 30 V V C CNN +F3 "~" 0 0 30 H V C CNN +$FPLIST + R? + SM0603 + SM0805 + R?-* + SM1206 +$ENDFPLIST +DRAW +S -40 150 40 -150 0 1 12 N +X ~ 1 0 250 100 D 60 60 1 1 P +X ~ 2 0 -250 100 U 60 60 1 1 P +ENDDRAW +ENDDEF +# +# USB-MINI-B +# +DEF USB-MINI-B CON 0 40 Y Y 1 F N +F0 "CON" -250 450 60 H V C CNN +F1 "USB-MINI-B" -50 -500 60 H V C CNN +F2 "~" 0 0 60 H V C CNN +F3 "~" 0 0 60 H V C CNN +$FPLIST + USB-Mini-B-Jack +$ENDFPLIST +DRAW +S -350 400 350 -400 0 1 0 N +X VBUS 1 -550 300 200 R 50 50 1 1 W +X D- 2 -550 150 200 R 50 50 1 1 B +X D+ 3 -550 0 200 R 50 50 1 1 B +X ID 4 -550 -150 200 R 50 50 1 1 B +X GND 5 -550 -300 200 R 50 50 1 1 W +X SHELL1 6 550 300 200 L 50 50 1 1 B +X SHELL2 7 550 150 200 L 50 50 1 1 B +X SHELL3 8 550 -150 200 L 50 50 1 1 B +X SHELL4 9 550 -300 200 L 50 50 1 1 B +ENDDRAW +ENDDEF +# +# VCC +# +DEF VCC #PWR 0 0 Y Y 1 F P +F0 "#PWR" 0 100 30 H I C CNN +F1 "VCC" 0 100 30 H V C CNN +F2 "~" 0 0 60 H V C CNN +F3 "~" 0 0 60 H V C CNN +DRAW +X VCC 1 0 0 0 U 20 20 0 0 W N +C 0 50 20 0 1 0 N +P 3 0 1 0 0 0 0 30 0 30 N +ENDDRAW +ENDDEF +# +#End Library diff --git a/keyboards/kinesis/alvicstep/docs/kicad/kinesis.pro b/keyboards/kinesis/alvicstep/docs/kicad/kinesis.pro new file mode 100644 index 000000000..9f130b509 --- /dev/null +++ b/keyboards/kinesis/alvicstep/docs/kicad/kinesis.pro @@ -0,0 +1,83 @@ +update=Wednesday, November 05, 2014 'pmt' 12:08:47 pm +version=1 +last_client=pcbnew +[cvpcb] +version=1 +NetIExt=net +[cvpcb/libraries] +EquName1=devcms +[general] +version=1 +[eeschema] +version=1 +PageLayoutDescrFile= +SubpartIdSeparator=0 +SubpartFirstId=65 +LibDir=../../../lib/kicad/library +NetFmtName= +RptD_X=0 +RptD_Y=100 +RptLab=1 +LabSize=60 +[eeschema/libraries] +LibName1=power +LibName2=device +LibName3=transistors +LibName4=conn +LibName5=linear +LibName6=regul +LibName7=74xx +LibName8=cmos4000 +LibName9=adc-dac +LibName10=memory +LibName11=xilinx +LibName12=special +LibName13=microcontrollers +LibName14=dsp +LibName15=microchip +LibName16=analog_switches +LibName17=motorola +LibName18=texas +LibName19=intel +LibName20=audio +LibName21=interface +LibName22=digital-audio +LibName23=philips +LibName24=display +LibName25=cypress +LibName26=siliconi +LibName27=opto +LibName28=atmel +LibName29=contrib +LibName30=valves +LibName31=custom +[pcbnew] +version=1 +LastNetListRead= +UseCmpFile=1 +PadDrill=1.016000000000 +PadDrillOvalY=1.016000000000 +PadSizeH=1.524000000000 +PadSizeV=1.524000000000 +PcbTextSizeV=1.500000000000 +PcbTextSizeH=1.500000000000 +PcbTextThickness=0.300000000000 +ModuleTextSizeV=1.000000000000 +ModuleTextSizeH=1.000000000000 +ModuleTextSizeThickness=0.150000000000 +SolderMaskClearance=0.000000000000 +SolderMaskMinWidth=0.000000000000 +DrawSegmentWidth=0.200000000000 +BoardOutlineThickness=0.100000000000 +ModuleOutlineThickness=0.150000000000 +[pcbnew/libraries] +LibDir=../../../lib/kicad/modules +LibName1=custom +LibName2=Sockets +LibName3=Connect +LibName4=Discret +LibName5=Divers +LibName6=Display +LibName7=LEDs +LibName8=SMD_Packages +LibName9=Sockets_DIP diff --git a/keyboards/kinesis/alvicstep/docs/kicad/kinesis.sch b/keyboards/kinesis/alvicstep/docs/kicad/kinesis.sch new file mode 100644 index 000000000..f75335aa0 --- /dev/null +++ b/keyboards/kinesis/alvicstep/docs/kicad/kinesis.sch @@ -0,0 +1,634 @@ +EESchema Schematic File Version 2 +LIBS:power +LIBS:device +LIBS:transistors +LIBS:conn +LIBS:linear +LIBS:regul +LIBS:74xx +LIBS:cmos4000 +LIBS:adc-dac +LIBS:memory +LIBS:xilinx +LIBS:special +LIBS:microcontrollers +LIBS:dsp +LIBS:microchip +LIBS:analog_switches +LIBS:motorola +LIBS:texas +LIBS:intel +LIBS:audio +LIBS:interface +LIBS:digital-audio +LIBS:philips +LIBS:display +LIBS:cypress +LIBS:siliconi +LIBS:opto +LIBS:atmel +LIBS:contrib +LIBS:valves +LIBS:custom +LIBS:kinesis-cache +EELAYER 27 0 +EELAYER END +$Descr A4 11693 8268 +encoding utf-8 +Sheet 1 1 +Title "" +Date "13 nov 2014" +Rev "" +Comp "" +Comment1 "" +Comment2 "" +Comment3 "" +Comment4 "" +$EndDescr +$Comp +L C C4 +U 1 1 545804FB +P 2850 4250 +F 0 "C4" H 2850 4350 40 0000 L CNN +F 1 "1uF" H 2856 4165 40 0000 L CNN +F 2 "~" H 2888 4100 30 0000 C CNN +F 3 "~" H 2850 4250 60 0000 C CNN + 1 2850 4250 + -1 0 0 1 +$EndComp +$Comp +L R R3 +U 1 1 545805E8 +P 2500 4000 +F 0 "R3" V 2580 4000 40 0000 C CNN +F 1 "22" V 2507 4001 40 0000 C CNN +F 2 "~" V 2430 4000 30 0000 C CNN +F 3 "~" H 2500 4000 30 0000 C CNN + 1 2500 4000 + 0 -1 -1 0 +$EndComp +$Comp +L R R2 +U 1 1 545805FA +P 2500 3800 +F 0 "R2" V 2580 3800 40 0000 C CNN +F 1 "22" V 2507 3801 40 0000 C CNN +F 2 "~" V 2430 3800 30 0000 C CNN +F 3 "~" H 2500 3800 30 0000 C CNN + 1 2500 3800 + 0 -1 -1 0 +$EndComp +Entry Wire Line + 6450 2450 6550 2550 +Entry Wire Line + 6450 2550 6550 2650 +Entry Wire Line + 6450 2650 6550 2750 +Entry Wire Line + 6450 2750 6550 2850 +Entry Wire Line + 6450 2950 6550 3050 +Entry Wire Line + 6450 3050 6550 3150 +Entry Wire Line + 6450 2850 6550 2950 +Entry Wire Line + 6450 3150 6550 3250 +Wire Wire Line + 10250 1800 10750 1800 +Entry Wire Line + 10750 1800 10850 1900 +Entry Wire Line + 10750 1900 10850 2000 +Entry Wire Line + 10750 2000 10850 2100 +Entry Wire Line + 10750 2800 10850 2900 +Entry Wire Line + 10750 2900 10850 3000 +Entry Wire Line + 10750 3000 10850 3100 +Entry Wire Line + 10750 3100 10850 3200 +Entry Wire Line + 10750 3200 10850 3300 +Entry Wire Line + 10750 3300 10850 3400 +$Comp +L AT90S8515-P IC2 +U 1 1 545A62EA +P 9250 3500 +F 0 "IC2" H 8400 5380 40 0000 L BNN +F 1 "AT90S8515-P" H 9700 1550 40 0000 L BNN +F 2 "DIL40" H 9250 3500 30 0000 C CIN +F 3 "" H 9250 3500 60 0000 C CNN + 1 9250 3500 + 1 0 0 -1 +$EndComp +NoConn ~ 10250 2650 +Entry Wire Line + 10750 3650 10850 3750 +Entry Wire Line + 10750 3750 10850 3850 +Entry Wire Line + 10750 3850 10850 3950 +Entry Wire Line + 10750 3950 10850 4050 +Entry Wire Line + 10750 4050 10850 4150 +Entry Wire Line + 10750 4150 10850 4250 +Entry Wire Line + 10750 4350 10850 4450 +Entry Wire Line + 10750 4250 10850 4350 +NoConn ~ 8250 4900 +NoConn ~ 8250 5000 +NoConn ~ 8250 1800 +Wire Wire Line + 10250 1900 10750 1900 +Wire Wire Line + 10250 2000 10750 2000 +Wire Wire Line + 10250 2100 10750 2100 +Wire Wire Line + 10250 2200 10750 2200 +Wire Wire Line + 10250 2300 10750 2300 +Wire Wire Line + 10250 2400 10750 2400 +Wire Wire Line + 10250 2500 10750 2500 +Text Label 10350 1800 0 60 ~ 0 +A +Text Label 10350 1900 0 60 ~ 0 +B +Text Label 10350 2000 0 60 ~ 0 +C +Text Label 10350 2100 0 60 ~ 0 +G +Wire Wire Line + 10250 2800 10750 2800 +Wire Wire Line + 10250 2900 10750 2900 +Wire Wire Line + 10250 3000 10750 3000 +Wire Wire Line + 10250 3100 10750 3100 +Wire Wire Line + 10250 3200 10750 3200 +Wire Wire Line + 10250 3300 10750 3300 +Wire Wire Line + 10250 3400 10750 3400 +Wire Wire Line + 10250 3500 10750 3500 +Text Label 10350 2800 0 60 ~ 0 +DL2 +Text Label 10350 2900 0 60 ~ 0 +DR1 +Text Label 10350 3000 0 60 ~ 0 +DR2 +Text Label 10350 3100 0 60 ~ 0 +DL1 +Text Label 10350 3400 0 60 ~ 0 +SCL +Text Label 10350 3500 0 60 ~ 0 +SDA +Wire Wire Line + 10250 3650 10750 3650 +Wire Wire Line + 10250 3750 10750 3750 +Wire Wire Line + 10250 3850 10750 3850 +Wire Wire Line + 10250 3950 10750 3950 +Wire Wire Line + 10250 4050 10750 4050 +Wire Wire Line + 10250 4150 10750 4150 +Wire Wire Line + 10250 4250 10750 4250 +Wire Wire Line + 10250 4350 10750 4350 +Text Label 10350 3650 0 60 ~ 0 +R1 +Text Label 10350 3750 0 60 ~ 0 +R2 +Text Label 10350 3850 0 60 ~ 0 +R3 +Text Label 10350 3950 0 60 ~ 0 +R4 +Text Label 10350 4050 0 60 ~ 0 +R5 +Text Label 10350 4150 0 60 ~ 0 +R6 +Text Label 10350 4250 0 60 ~ 0 +R7 +Text Label 10350 4350 0 60 ~ 0 +R8 +Wire Wire Line + 10250 4500 10750 4500 +Wire Wire Line + 10250 4600 10750 4600 +Wire Wire Line + 10250 4700 10750 4700 +Wire Wire Line + 10250 4800 10750 4800 +Wire Wire Line + 10250 4900 10750 4900 +Wire Wire Line + 10250 5000 10750 5000 +Wire Wire Line + 10250 5100 10750 5100 +Wire Wire Line + 10250 5200 10750 5200 +Text Label 10350 4600 0 60 ~ 0 +FS1 +Text Label 10350 5000 0 60 ~ 0 +FS3 +Text Label 10350 5200 0 60 ~ 0 +FS2 +$Comp +L GND #PWR01 +U 1 1 545A7377 +P 9250 5600 +F 0 "#PWR01" H 9250 5600 30 0001 C CNN +F 1 "GND" H 9250 5530 30 0001 C CNN +F 2 "" H 9250 5600 60 0000 C CNN +F 3 "" H 9250 5600 60 0000 C CNN + 1 9250 5600 + 1 0 0 -1 +$EndComp +Wire Wire Line + 9250 5500 9250 5600 +Text Label 10350 4700 0 60 ~ 0 +CLOCK +Text Label 10350 4800 0 60 ~ 0 +DATA +NoConn ~ 10750 4700 +NoConn ~ 10750 4800 +Text Label 10350 3200 0 60 ~ 0 +KP +Text Label 10350 3300 0 60 ~ 0 +PGM +Text Label 10350 2500 0 60 ~ 0 +BUZZ +NoConn ~ 8250 2300 +NoConn ~ 8250 2700 +$Comp +L GND #PWR02 +U 1 1 545A7565 +P 4750 5700 +F 0 "#PWR02" H 4750 5700 30 0001 C CNN +F 1 "GND" H 4750 5630 30 0001 C CNN +F 2 "" H 4750 5700 60 0000 C CNN +F 3 "" H 4750 5700 60 0000 C CNN + 1 4750 5700 + 1 0 0 -1 +$EndComp +Entry Wire Line + 6450 3650 6550 3750 +Entry Wire Line + 6450 3750 6550 3850 +Entry Wire Line + 6450 4150 6550 4250 +Entry Wire Line + 6450 4250 6550 4350 +Entry Wire Line + 6450 4050 6550 4150 +Entry Wire Line + 6450 4350 6550 4450 +NoConn ~ 3750 2850 +Wire Wire Line + 1200 2000 6450 2000 +NoConn ~ 3750 3050 +Wire Wire Line + 2750 3800 3750 3800 +Wire Wire Line + 2750 3900 3750 3900 +Wire Wire Line + 2750 3900 2750 4000 +Wire Bus Line + 6550 2100 6550 6050 +Wire Bus Line + 10850 1600 10850 6050 +Text Label 6050 4350 0 60 ~ 0 +DL1 +Text Label 6050 4250 0 60 ~ 0 +DR2 +Text Label 6050 4150 0 60 ~ 0 +DR1 +Text Label 6050 4050 0 60 ~ 0 +DL2 +Text Label 6050 2450 0 60 ~ 0 +R1 +Text Label 6050 2550 0 60 ~ 0 +R2 +Text Label 6050 2650 0 60 ~ 0 +R3 +Text Label 6050 2750 0 60 ~ 0 +R4 +Text Label 6050 2850 0 60 ~ 0 +R5 +Text Label 6050 2950 0 60 ~ 0 +R6 +Text Label 6050 3050 0 60 ~ 0 +R7 +Text Label 6050 3150 0 60 ~ 0 +R8 +Text Label 6050 5050 0 60 ~ 0 +A +Text Label 6050 5150 0 60 ~ 0 +B +Text Label 6050 5250 0 60 ~ 0 +C +Text Label 6050 5350 0 60 ~ 0 +G +Text Label 1300 3800 0 60 ~ 0 +D+ +Text Label 1300 4000 0 60 ~ 0 +D- +NoConn ~ 10750 2200 +NoConn ~ 10750 2300 +NoConn ~ 10750 2400 +Text Label 10350 4500 0 60 ~ 0 +GND +NoConn ~ 10750 4900 +NoConn ~ 10750 5100 +Text Label 6050 3450 0 60 ~ 0 +KP +Text Label 6050 3350 0 60 ~ 0 +PGM +$Comp +L ATMEGA32U4-A U1 +U 1 1 5462E0B1 +P 4900 4000 +F 0 "U1" H 3950 5700 40 0000 C CNN +F 1 "ATMEGA32U4-A" H 5600 2500 40 0000 C CNN +F 2 "TQFP44" H 4900 4000 35 0000 C CIN +F 3 "" H 6000 5100 60 0000 C CNN + 1 4900 4000 + 1 0 0 -1 +$EndComp +Wire Wire Line + 3750 4850 3750 5600 +Wire Wire Line + 4450 2200 5150 2200 +Connection ~ 4700 2200 +Connection ~ 4800 2200 +Connection ~ 5050 2200 +Connection ~ 4800 2000 +Wire Wire Line + 6000 2450 6450 2450 +Wire Wire Line + 6000 2550 6450 2550 +Wire Wire Line + 6000 2650 6450 2650 +Wire Wire Line + 6000 2750 6450 2750 +Wire Wire Line + 6000 2850 6450 2850 +Wire Wire Line + 6000 2950 6450 2950 +Wire Wire Line + 6000 3050 6450 3050 +Wire Wire Line + 6000 3150 6450 3150 +Wire Wire Line + 6000 5050 6450 5050 +Wire Wire Line + 6000 5150 6450 5150 +Wire Wire Line + 6000 5250 6450 5250 +Wire Wire Line + 6000 4050 6450 4050 +Wire Wire Line + 6000 4150 6450 4150 +Wire Wire Line + 6000 4250 6450 4250 +Wire Wire Line + 6000 4350 6450 4350 +Wire Wire Line + 6000 4550 6450 4550 +Entry Wire Line + 6450 3350 6550 3450 +Entry Wire Line + 6450 3450 6550 3550 +Entry Wire Line + 6450 5050 6550 5150 +Entry Wire Line + 6450 5150 6550 5250 +Entry Wire Line + 6450 5250 6550 5350 +Entry Wire Line + 6450 5350 6550 5450 +Entry Wire Line + 6450 4650 6550 4750 +Wire Wire Line + 6000 3350 6450 3350 +Wire Wire Line + 6000 3450 6450 3450 +Wire Wire Line + 1200 5600 6450 5600 +Connection ~ 4950 5600 +Connection ~ 4850 5600 +Wire Wire Line + 4750 5600 4750 5700 +Connection ~ 4750 5600 +Connection ~ 4500 5600 +Text Label 6050 4550 0 60 ~ 0 +HWB +Wire Wire Line + 6000 5350 6450 5350 +Wire Wire Line + 6000 3650 6450 3650 +Wire Wire Line + 6000 3750 6450 3750 +Text Label 6050 3650 0 60 ~ 0 +SCL +Text Label 6050 3750 0 60 ~ 0 +SDA +Wire Wire Line + 6000 3850 6450 3850 +Wire Wire Line + 6000 3950 6450 3950 +Wire Wire Line + 6000 4650 6450 4650 +Text Label 6050 4650 0 60 ~ 0 +BUZZ +NoConn ~ 10750 4600 +NoConn ~ 10750 5000 +NoConn ~ 10750 5200 +Entry Wire Line + 10750 3400 10850 3500 +Entry Wire Line + 10750 3500 10850 3600 +Entry Wire Line + 10750 4500 10850 4600 +Wire Wire Line + 2850 4050 3750 4050 +Text Label 2950 4050 0 60 ~ 0 +UCAP +Wire Wire Line + 6000 4850 6450 4850 +Wire Wire Line + 6000 4950 6450 4950 +NoConn ~ 6450 4850 +NoConn ~ 6450 4950 +NoConn ~ 6450 4550 +$Comp +L USB-MINI-B CON1 +U 1 1 546431C1 +P 2100 5050 +F 0 "CON1" H 1850 5500 60 0000 C CNN +F 1 "USB-MINI-B" H 2050 4550 60 0000 C CNN +F 2 "" H 2100 5050 60 0000 C CNN +F 3 "" H 2100 5050 60 0000 C CNN + 1 2100 5050 + 0 1 1 0 +$EndComp +$Comp +L VCC #PWR03 +U 1 1 54643698 +P 2400 4400 +F 0 "#PWR03" H 2400 4500 30 0001 C CNN +F 1 "VCC" H 2400 4500 30 0000 C CNN +F 2 "" H 2400 4400 60 0000 C CNN +F 3 "" H 2400 4400 60 0000 C CNN + 1 2400 4400 + 1 0 0 -1 +$EndComp +Text Notes 2600 2750 0 60 ~ 0 +Teensy 2.0\n(not fully drawn) +$Comp +L CONN_7 B7K-PH-K-S1 +U 1 1 54643939 +P 1950 6900 +F 0 "B7K-PH-K-S1" V 1920 6900 60 0000 C CNN +F 1 "CONN_7" V 2020 6900 60 0000 C CNN +F 2 "" H 1950 6900 60 0000 C CNN +F 3 "" H 1950 6900 60 0000 C CNN + 1 1950 6900 + 1 0 0 -1 +$EndComp +Connection ~ 3750 5600 +Connection ~ 2400 5600 +Connection ~ 2250 5600 +Connection ~ 1950 5600 +Wire Wire Line + 2400 4400 2400 4500 +Wire Wire Line + 2250 4000 2250 4500 +Wire Wire Line + 1200 3800 2250 3800 +Wire Wire Line + 2100 3800 2100 4500 +Wire Wire Line + 2850 4450 2850 5600 +Connection ~ 2850 5600 +Entry Wire Line + 1100 6800 1200 6900 +Entry Wire Line + 1100 6900 1200 7000 +Entry Wire Line + 1100 7000 1200 7100 +Entry Wire Line + 1100 6700 1200 6800 +Wire Wire Line + 1200 6600 1600 6600 +Wire Wire Line + 1200 6700 1600 6700 +Wire Wire Line + 1200 6800 1600 6800 +Wire Wire Line + 1200 6900 1600 6900 +Wire Wire Line + 1200 7000 1600 7000 +Wire Wire Line + 1200 7100 1600 7100 +Wire Wire Line + 1200 7200 1600 7200 +Text Label 1300 6600 0 60 ~ 0 +FS2 +Text Label 1300 6700 0 60 ~ 0 +FS1 +Text Label 1300 6800 0 60 ~ 0 +VCC +Text Label 1300 6900 0 60 ~ 0 +D- +Text Label 1300 7000 0 60 ~ 0 +D+ +Text Label 1300 7100 0 60 ~ 0 +GND +Text Label 1300 7200 0 60 ~ 0 +FS3 +NoConn ~ 3750 2450 +Wire Wire Line + 3600 2000 3600 3650 +Wire Wire Line + 3600 3650 3750 3650 +NoConn ~ 1950 4500 +Wire Bus Line + 1100 1900 1100 7100 +NoConn ~ 1200 6600 +NoConn ~ 1200 6700 +NoConn ~ 1200 7200 +Connection ~ 2100 3800 +Wire Wire Line + 1200 4000 2250 4000 +Entry Wire Line + 1100 3700 1200 3800 +Entry Wire Line + 1100 3900 1200 4000 +Text Label 10350 1500 0 60 ~ 0 +VCC +Entry Wire Line + 1100 1900 1200 2000 +Text Label 1250 2000 0 60 ~ 0 +VCC +Entry Wire Line + 1100 5500 1200 5600 +Connection ~ 1800 5600 +Text Label 1300 5600 0 60 ~ 0 +GND +Wire Wire Line + 9250 5500 10750 5500 +Entry Wire Line + 10750 5500 10850 5600 +Text Label 10350 5500 0 60 ~ 0 +GND +Wire Wire Line + 9250 1500 10750 1500 +Entry Wire Line + 10750 1500 10850 1600 +Connection ~ 3600 2000 +Wire Wire Line + 4800 2000 4800 2200 +Entry Wire Line + 6450 2000 6550 2100 +Text Label 6050 2000 0 60 ~ 0 +VCC +Connection ~ 5050 5600 +Entry Wire Line + 6450 5600 6550 5700 +Text Label 6050 5600 0 60 ~ 0 +GND +NoConn ~ 6450 3850 +NoConn ~ 6450 3950 +Wire Wire Line + 1800 4500 1500 4500 +Wire Wire Line + 1500 4500 1500 5600 +Connection ~ 1500 5600 +Entry Wire Line + 10750 2500 10850 2600 +Entry Wire Line + 10750 2100 10850 2200 +Text Notes 1000 5300 1 60 ~ 0 +Sacrificial USB cable from header to Teensy +Text Notes 7850 5950 0 60 ~ 0 +Ribbon cable between Teensy pins and socket +Wire Bus Line + 10850 6050 6550 6050 +$EndSCHEMATC diff --git a/keyboards/kinesis/alvicstep/docs/photos/P1050573.jpg b/keyboards/kinesis/alvicstep/docs/photos/P1050573.jpg new file mode 100644 index 000000000..027ab9efb Binary files /dev/null and b/keyboards/kinesis/alvicstep/docs/photos/P1050573.jpg differ diff --git a/keyboards/kinesis/alvicstep/docs/photos/P1050574.jpg b/keyboards/kinesis/alvicstep/docs/photos/P1050574.jpg new file mode 100644 index 000000000..d49c492b8 Binary files /dev/null and b/keyboards/kinesis/alvicstep/docs/photos/P1050574.jpg differ diff --git a/keyboards/kinesis/alvicstep/docs/photos/P1050575.jpg b/keyboards/kinesis/alvicstep/docs/photos/P1050575.jpg new file mode 100644 index 000000000..50cc9897c Binary files /dev/null and b/keyboards/kinesis/alvicstep/docs/photos/P1050575.jpg differ diff --git a/keyboards/kinesis/alvicstep/docs/readme.txt b/keyboards/kinesis/alvicstep/docs/readme.txt new file mode 100644 index 000000000..af33ac490 --- /dev/null +++ b/keyboards/kinesis/alvicstep/docs/readme.txt @@ -0,0 +1,52 @@ +This directory of documentation was copied from https://github.com/wjanssens/tmk_keyboard/tree/master/keyboard/kinesis +and is probably Copyright 2014 Warren Janssens +and probably released under GPL v2, which may be recovered at . + +Row configuration +PF0 A +PF1 B +PF2 C +PF3 G 0 = U4, 1 = U5 + +Column configuration + 4y0 4y1 4y2 4y3 4y4 4y5 4y6 4y7 5y0 5y1 5y2 5y3 5y4 5y5 5y6 5y7 + r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 r16 +PB0 21 c1 f6 f8 f7 5 4 3 2 1 =+ +PB1 22 c2 f3 f5 f4 t r e w q TAB +PB2 23 c3 ESC f2 f1 g f d s a CL +PB3 24 c4 f9 f11 f10 b v c x z LS UP DN [{ ]} +PB4 25 c5 f12 SL PS RT LT §± `~ 6 7 8 9 0 -_ +PB5 26 c6 PB PGM KPD y u i o p \ +PB6 27 c7 LC DL BS RC EN SP h j k l ;: '" +PB7 28 c8 RA PU PD n m ,< .> /? RS + */ + + +40 pin connector + + DL2 1 40 VCC + DR1 2 39 A + DR2 3 38 B + DL1 4 37 C + KPD 5 36 G + PGM 6 35 + SCL 7 34 + SDA 8 33 + RST 9 32 BUZZ + WP 10 31 EA + FS1 11 30 ALE + CLOCK 12 29 PSEN + DATA 13 28 r8 + 14 27 r7 + FS3 15 26 r6 + 16 25 r5 + FS2 17 24 r4 + XTAL1 18 23 r3 + XTAL2 19 22 r2 + GND 20 21 r1 + + +references: +https://github.com/chrisandreae/keyboard-firmware + + diff --git a/keyboards/kinesis/alvicstep/docs/schematic.png b/keyboards/kinesis/alvicstep/docs/schematic.png new file mode 100644 index 000000000..fa9405a1f Binary files /dev/null and b/keyboards/kinesis/alvicstep/docs/schematic.png differ diff --git a/keyboards/kinesis/alvicstep/matrix.c b/keyboards/kinesis/alvicstep/matrix.c new file mode 100644 index 000000000..cb0d5ad7d --- /dev/null +++ b/keyboards/kinesis/alvicstep/matrix.c @@ -0,0 +1,228 @@ +/* +Copyright 2014 Warren Janssens + +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 . +*/ + +/* + * scan matrix + */ +#include +#include +#include +#include +#include "action_layer.h" +#include "print.h" +#include "debug.h" +#include "util.h" +#include "matrix.h" +#include "led.h" +#include "config.h" + +#ifndef DEBOUNCE +# define DEBOUNCE 5 +#endif +static uint8_t debouncing = DEBOUNCE; + +/* matrix state(1:on, 0:off) */ +static uint8_t matrix[MATRIX_ROWS]; +static uint8_t matrix_debouncing[MATRIX_ROWS]; + +static matrix_row_t read_row(uint8_t row); +static void unselect_rows(void); +static void select_rows(uint8_t row); + +__attribute__ ((weak)) +void matrix_init_quantum(void) { + matrix_init_kb(); +} + +__attribute__ ((weak)) +void matrix_scan_quantum(void) { + matrix_scan_kb(); +} + +__attribute__ ((weak)) +void matrix_init_kb(void) { + matrix_init_user(); +} + +__attribute__ ((weak)) +void matrix_scan_kb(void) { + matrix_scan_user(); +} + +__attribute__ ((weak)) +void matrix_init_user(void) { +} + +__attribute__ ((weak)) +void matrix_scan_user(void) { +} + +inline +uint8_t matrix_rows(void) +{ + return MATRIX_ROWS; +} + + +inline +uint8_t matrix_cols(void) +{ + return MATRIX_COLS; +} + +void matrix_init(void) +{ + //debug_enable = true; + + //dprint("matrix_init"); dprintln(); + // output high (leds) + DDRD = 0xFF; + PORTD = 0xFF; + + // output low (multiplexers) + DDRF = 0xFF; + PORTF = 0x00; + + // input with pullup (matrix) + DDRB = 0x00; + PORTB = 0xFF; + + // input with pullup (program and keypad buttons) + DDRC = 0x00; + PORTC = 0xFF; + + // initialize row and col + unselect_rows(); + + // initialize matrix state: all keys off + for (uint8_t i=0; i < MATRIX_ROWS; i++) { + matrix[i] = 0; + matrix_debouncing[i] = 0; + } + +} + +uint8_t matrix_scan(void) +{ + + for (uint8_t i = 0; i < MATRIX_ROWS; i++) { + select_rows(i); + uint8_t row = read_row(i); + if (matrix_debouncing[i] != row) { + matrix_debouncing[i] = row; + if (debouncing) { + debug("bounce!: "); debug_hex(debouncing); debug("\n"); + } + debouncing = DEBOUNCE; + } + unselect_rows(); + } + + if (debouncing) { + if (--debouncing) { + _delay_ms(1); + } else { + for (uint8_t i = 0; i < MATRIX_ROWS; i++) { + matrix[i] = matrix_debouncing[i]; + } + } + } + matrix_scan_quantum(); + return 1; +} + +bool matrix_is_modified(void) +{ + if (debouncing) return false; + return true; +} + +inline +bool matrix_is_on(uint8_t row, uint8_t col) +{ + return (matrix[row] & ((matrix_row_t)1< /? RS + */ + + diff --git a/keyboards/kinesis/alvicstep/readme.md b/keyboards/kinesis/alvicstep/readme.md new file mode 100644 index 000000000..974e42e50 --- /dev/null +++ b/keyboards/kinesis/alvicstep/readme.md @@ -0,0 +1,46 @@ +kinesis-advantage keyboard firmware +====================== + +This directory is called alvicstep because https://github.com/alvicstep did the heavy work and took the photos in the doc directory. +alvicstep did NOT do anything related to the QMK implementation, so don't bug him/her. + +There are other ways of replacing the CPU in the kinesis, this one uses jumper wires from the Teensy to the original DIP socket + + +## Kinesis specific information +This is a port of https://github.com/alvicstep/tmk_keyboard, +which is a fork of https://github.com/wjanssens/tmk_keyboard, +which is based on work from https://github.com/chrisandreae/keyboard-firmware + +If you replace the kinesis CPU as described in the doc folder, then this code should allow you to use QMK. +I've tested with a Teensy 2++, remember to change the CPU if you use a 32u4 instead. + +Not yet implemented: +- Kinesis EEProm reading or writing +- Audio - this should be simple if we remove hardcoded pins from audio.h and switch to E7 + + + +## Quantum MK Firmware + +For the full Quantum feature list, see [the parent readme.md](/doc/readme.md). + +## Building + +Download or clone the whole firmware and navigate to the keyboards/kinesis-advantage folder. Once your dev env is setup, you'll be able to type `make` to generate your .hex - you can then use the Teensy Loader to program your .hex file. + +Depending on which keymap you would like to use, you will have to compile slightly differently. + +### Default + +To build with the default keymap, simply run `make`. + +### Other Keymaps + +Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create a folder with the name of your keymap in the keymaps folder, and see keymap documentation (you can find in top readme.md) and existant keymap files. + +To build the firmware binary hex file with a keymap just do `make` with `keymap` option like: + +$ make keymap=[default|jack|] + +Keymaps follow the format **__keymap.c__** and are stored in folders in the `keymaps` folder, eg `keymaps/my_keymap/` diff --git a/keyboards/kinesis/alvicstep/rules.mk b/keyboards/kinesis/alvicstep/rules.mk new file mode 100644 index 000000000..fb421a34f --- /dev/null +++ b/keyboards/kinesis/alvicstep/rules.mk @@ -0,0 +1,10 @@ +ifndef QUANTUM_DIR + include ../../../Makefile +endif + +# just silently stop, since we need to upload with teensy uploader +upload: build + + + + diff --git a/keyboards/kinesis/config.h b/keyboards/kinesis/config.h index 8f1fdbdb6..7cb0532c6 100644 --- a/keyboards/kinesis/config.h +++ b/keyboards/kinesis/config.h @@ -22,58 +22,22 @@ along with this program. If not, see . /* USB Device descriptor parameter */ #define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x6060 -#define DEVICE_VER 0x0001 #define MANUFACTURER You #define PRODUCT kinesis-advantage #define DESCRIPTION A custom keyboard // Mouse -#define MOUSEKEY_DELAY 20 +#define MOUSEKEY_DELAY 60 #define MOUSEKEY_INTERVAL 20 #define MOUSEKEY_MAX_SPEED 4 -#define MOUSEKEY_TIME_TO_MAX 20 +#define MOUSEKEY_TIME_TO_MAX 10 #define MOUSEKEY_WHEEL_MAX_SPEED 1 #define MOUSEKEY_WHEEL_DELTA 1 #define MOUSEKEY_WHEEL_TIME_TO_MAX 1 -/* key matrix size */ -#define MATRIX_ROWS 16 -#define MATRIX_COLS 8 - -/* - * Keyboard Matrix Assignments - * - * Change this to how you wired your keyboard - * COLS: AVR pins used for columns, left to right - * ROWS: AVR pins used for rows, top to bottom - * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) - * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) - * -*/ -//Passed through the port multipler, so 4 pins =16 -#define MATRIX_ROW_PINS { F0,F1, F2, F3 } - -// May be upside down. -#define MATRIX_COL_PINS { B0,B1, B2, B3, B4, B5, B6, B7 } -#define UNUSED_PINS - -/* COL2ROW or ROW2COL */ -#define DIODE_DIRECTION COL2ROW - -// #define BACKLIGHT_PIN B7 -// #define BACKLIGHT_BREATHING -// #define BACKLIGHT_LEVELS 3 - - /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCING_DELAY 5 -/* define if matrix has ghost (lacks anti-ghosting diodes) */ -//#define MATRIX_HAS_GHOST - -/* number of backlight levels */ - /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ @@ -171,4 +135,13 @@ along with this program. If not, see . //#define NO_ACTION_MACRO //#define NO_ACTION_FUNCTION + + +#ifdef SUBPROJECT_alvicstep + #include "alvicstep/config.h" +#endif +#ifdef SUBPROJECT_stapelberg + #include "stapelberg/config.h" +#endif + #endif diff --git a/keyboards/kinesis/docs/kicad/kinesis-cache.lib b/keyboards/kinesis/docs/kicad/kinesis-cache.lib deleted file mode 100644 index f798d39d6..000000000 --- a/keyboards/kinesis/docs/kicad/kinesis-cache.lib +++ /dev/null @@ -1,232 +0,0 @@ -EESchema-LIBRARY Version 2.3 Date: Wednesday, November 12, 2014 'pmt' 10:15:19 pm -#encoding utf-8 -# -# AT90S4414-P -# -DEF AT90S4414-P IC 0 40 Y Y 1 F N -F0 "IC" -850 1880 40 H V L BNN -F1 "AT90S4414-P" 450 -1950 40 H V L BNN -F2 "DIL40" 0 0 30 H V C CIN -F3 "~" 0 0 60 H V C CNN -ALIAS AT90S8515-P -$FPLIST - 40DIP-ELL600 - 40dip600 -$ENDFPLIST -DRAW -S -850 1850 850 -1850 0 1 10 f -X (T0)PB0 1 1000 700 150 L 40 40 1 1 B -X (T1)PB1 2 1000 600 150 L 40 40 1 1 B -X (AIN0)PB2 3 1000 500 150 L 40 40 1 1 B -X (AIN1)PB3 4 1000 400 150 L 40 40 1 1 B -X (~SS~)PB4 5 1000 300 150 L 40 40 1 1 B -X (MOSI)PB5 6 1000 200 150 L 40 40 1 1 B -X (MISO)PB6 7 1000 100 150 L 40 40 1 1 B -X (SCK)PB7 8 1000 0 150 L 40 40 1 1 B -X ~RESET 9 -1000 1700 150 R 40 40 1 1 I -X (RXD)PD0 10 1000 -1000 150 L 40 40 1 1 B -X GND 20 0 -2000 150 U 40 40 1 1 W -X ALE 30 1000 850 150 L 40 40 1 1 O -X VCC 40 0 2000 150 D 40 40 1 1 W -X (TXD)PD1 11 1000 -1100 150 L 40 40 1 1 B -X (A8)PC0 21 1000 -150 150 L 40 40 1 1 B -X ICP 31 -1000 -1400 150 R 40 40 1 1 I -X (INT0)PD2 12 1000 -1200 150 L 40 40 1 1 B -X (A9)PC1 22 1000 -250 150 L 40 40 1 1 B -X (AD7)PA7 32 1000 1000 150 L 40 40 1 1 B -X (INT1)PD3 13 1000 -1300 150 L 40 40 1 1 B -X (A10)PC2 23 1000 -350 150 L 40 40 1 1 B -X (AD6)PA6 33 1000 1100 150 L 40 40 1 1 B -X PD4 14 1000 -1400 150 L 40 40 1 1 B -X (A11)PC3 24 1000 -450 150 L 40 40 1 1 B -X (AD5)PA5 34 1000 1200 150 L 40 40 1 1 B -X (OC1A)PD5 15 1000 -1500 150 L 40 40 1 1 B -X (A12)PC4 25 1000 -550 150 L 40 40 1 1 B -X (AD4)PA4 35 1000 1300 150 L 40 40 1 1 B -X (~WR~)PD6 16 1000 -1600 150 L 40 40 1 1 B -X (A13)PC5 26 1000 -650 150 L 40 40 1 1 B -X (AD3)PA3 36 1000 1400 150 L 40 40 1 1 B -X (~RD~)PD7 17 1000 -1700 150 L 40 40 1 1 B -X (A14)PC6 27 1000 -750 150 L 40 40 1 1 B -X (AD2)PA2 37 1000 1500 150 L 40 40 1 1 B -X XTAL2 18 -1000 1200 150 R 40 40 1 1 B -X (A15)PC7 28 1000 -850 150 L 40 40 1 1 B -X (AD1)PA1 38 1000 1600 150 L 40 40 1 1 B -X XTAL1 19 -1000 800 150 R 40 40 1 1 B -X OC1B 29 -1000 -1500 150 R 40 40 1 1 W -X (AD0)PA0 39 1000 1700 150 L 40 40 1 1 B -ENDDRAW -ENDDEF -# -# ATMEGA16U4-A -# -DEF ATMEGA16U4-A U 0 40 Y Y 1 F N -F0 "U" -950 1700 40 H V C CNN -F1 "ATMEGA16U4-A" 700 -1500 40 H V C CNN -F2 "TQFP44" 0 0 35 H V C CIN -F3 "~" 1100 1100 60 H V C CNN -ALIAS ATMEGA16U4RC-A ATMEGA32U4-A ATMEGA32U4RC-A -$FPLIST - TQFP44 -$ENDFPLIST -DRAW -S -1000 1650 950 -1450 0 1 10 f -X (INT6/AIN0)PE6 1 1100 -650 150 L 40 40 1 1 B -X UVCC 2 -450 1800 150 D 40 40 1 1 W -X D- 3 -1150 100 150 R 40 40 1 1 B -X D+ 4 -1150 200 150 R 40 40 1 1 B -X UGND 5 -400 -1600 150 U 40 40 1 1 P -X UCAP 6 -1150 -50 150 R 40 40 1 1 P -X VBUS 7 -1150 350 150 R 40 40 1 1 P -X (SS/PCINT0)PB0 8 1100 1550 150 L 40 40 1 1 B -X (SCLK/PCINT1)PB1 9 1100 1450 150 L 40 40 1 1 B -X (PDI/MOSI/PCINT2)PB2 10 1100 1350 150 L 40 40 1 1 B -X (RXD/INT2)PD2 20 1100 150 150 L 40 40 1 1 B -X (ADC13/OC1B/OC4B/PCINT13)PB6 30 1100 950 150 L 40 40 1 1 B -X (ADC1)PF1 40 1100 -950 150 L 40 40 1 1 B -X (PDO/MISO/PCINT3)PB3 11 1100 1250 150 L 40 40 1 1 B -X (TXD/INT3)PD3 21 1100 50 150 L 40 40 1 1 B -X (OC3A/~OC4A~)PC6 31 1100 650 150 L 40 40 1 1 B -X (ADC0)PF0 41 1100 -850 150 L 40 40 1 1 B -X (OC0A/OC1C/~RTS~/PCINT7)PB7 12 1100 850 150 L 40 40 1 1 B -X (XCK1/~CTS~)PD5 22 1100 -150 150 L 40 40 1 1 B -X (ICP3/CLK0/OC4A)PC7 32 1100 550 150 L 40 40 1 1 B -X AREF 42 -1150 -850 150 R 40 40 1 1 P -X ~RESET~ 13 -1150 1550 150 R 40 40 1 1 I -X GND 23 -50 -1600 150 U 40 40 1 1 W -X (~HWB~)PE2 33 1100 -550 150 L 40 40 1 1 B -X GND 43 150 -1600 150 U 40 40 1 1 W -X VCC 14 -200 1800 150 D 40 40 1 1 W -X AVCC 24 150 1800 150 D 40 40 1 1 W -X VCC 34 -100 1800 150 D 40 40 1 1 W -X AVCC 44 250 1800 150 D 40 40 1 1 W -X GND 15 -150 -1600 150 U 40 40 1 1 W -X (ICP2/ADC8)PD4 25 1100 -50 150 L 40 40 1 1 B -X GND 35 50 -1600 150 U 40 40 1 1 W -X XTAL2 16 -1150 950 150 R 40 40 1 1 O -X (T1/~OC4D~/ADC9)PD6 26 1100 -250 150 L 40 40 1 1 B -X (ADC7/TDI)PF7 36 1100 -1350 150 L 40 40 1 1 B -X XTAL1 17 -1150 1150 150 R 40 40 1 1 I -X (T0/OC4D/ADC10)PD7 27 1100 -350 150 L 40 40 1 1 B -X (ADC6/TDO)PF6 37 1100 -1250 150 L 40 40 1 1 B -X (OC0B/SCL/INT0)PD0 18 1100 350 150 L 40 40 1 1 B -X (ADC11/PCINT4)PB4 28 1100 1150 150 L 40 40 1 1 B -X (ADC5/TMS)PF5 38 1100 -1150 150 L 40 40 1 1 B -X (SDA/INT1)PD1 19 1100 250 150 L 40 40 1 1 B -X (ADC12/OC1A/~OC4B~/PCINT12)PB5 29 1100 1050 150 L 40 40 1 1 B -X (ADC4/TCK)PF4 39 1100 -1050 150 L 40 40 1 1 B -ENDDRAW -ENDDEF -# -# C -# -DEF C C 0 10 N Y 1 F N -F0 "C" 0 100 40 H V L CNN -F1 "C" 6 -85 40 H V L CNN -F2 "~" 38 -150 30 H V C CNN -F3 "~" 0 0 60 H V C CNN -$FPLIST - SM* - C? - C1-1 -$ENDFPLIST -DRAW -P 2 0 1 20 -80 -30 80 -30 N -P 2 0 1 20 -80 30 80 30 N -X ~ 1 0 200 170 D 40 40 1 1 P -X ~ 2 0 -200 170 U 40 40 1 1 P -ENDDRAW -ENDDEF -# -# CONN_7 -# -DEF CONN_7 P 0 40 Y N 1 F N -F0 "P" -30 0 60 V V C CNN -F1 "CONN_7" 70 0 60 V V C CNN -F2 "~" 0 0 60 H V C CNN -F3 "~" 0 0 60 H V C CNN -DRAW -S -100 350 150 -350 0 1 0 N -X P1 1 -350 300 250 R 50 50 1 1 P I -X P2 2 -350 200 250 R 50 50 1 1 P I -X P3 3 -350 100 250 R 50 50 1 1 P I -X P4 4 -350 0 250 R 50 50 1 1 P I -X P5 5 -350 -100 250 R 50 50 1 1 P I -X P6 6 -350 -200 250 R 50 50 1 1 P I -X P7 7 -350 -300 250 R 50 50 1 1 P I -ENDDRAW -ENDDEF -# -# GND -# -DEF ~GND #PWR 0 0 Y Y 1 F P -F0 "#PWR" 0 0 30 H I C CNN -F1 "GND" 0 -70 30 H I C CNN -F2 "~" 0 0 60 H V C CNN -F3 "~" 0 0 60 H V C CNN -DRAW -P 4 0 1 0 -50 0 0 -50 50 0 -50 0 N -X GND 1 0 0 0 U 30 30 1 1 W N -ENDDRAW -ENDDEF -# -# R -# -DEF R R 0 0 N Y 1 F N -F0 "R" 80 0 40 V V C CNN -F1 "R" 7 1 40 V V C CNN -F2 "~" -70 0 30 V V C CNN -F3 "~" 0 0 30 H V C CNN -$FPLIST - R? - SM0603 - SM0805 - R?-* - SM1206 -$ENDFPLIST -DRAW -S -40 150 40 -150 0 1 12 N -X ~ 1 0 250 100 D 60 60 1 1 P -X ~ 2 0 -250 100 U 60 60 1 1 P -ENDDRAW -ENDDEF -# -# USB-MINI-B -# -DEF USB-MINI-B CON 0 40 Y Y 1 F N -F0 "CON" -250 450 60 H V C CNN -F1 "USB-MINI-B" -50 -500 60 H V C CNN -F2 "~" 0 0 60 H V C CNN -F3 "~" 0 0 60 H V C CNN -$FPLIST - USB-Mini-B-Jack -$ENDFPLIST -DRAW -S -350 400 350 -400 0 1 0 N -X VBUS 1 -550 300 200 R 50 50 1 1 W -X D- 2 -550 150 200 R 50 50 1 1 B -X D+ 3 -550 0 200 R 50 50 1 1 B -X ID 4 -550 -150 200 R 50 50 1 1 B -X GND 5 -550 -300 200 R 50 50 1 1 W -X SHELL1 6 550 300 200 L 50 50 1 1 B -X SHELL2 7 550 150 200 L 50 50 1 1 B -X SHELL3 8 550 -150 200 L 50 50 1 1 B -X SHELL4 9 550 -300 200 L 50 50 1 1 B -ENDDRAW -ENDDEF -# -# VCC -# -DEF VCC #PWR 0 0 Y Y 1 F P -F0 "#PWR" 0 100 30 H I C CNN -F1 "VCC" 0 100 30 H V C CNN -F2 "~" 0 0 60 H V C CNN -F3 "~" 0 0 60 H V C CNN -DRAW -X VCC 1 0 0 0 U 20 20 0 0 W N -C 0 50 20 0 1 0 N -P 3 0 1 0 0 0 0 30 0 30 N -ENDDRAW -ENDDEF -# -#End Library diff --git a/keyboards/kinesis/docs/kicad/kinesis.pro b/keyboards/kinesis/docs/kicad/kinesis.pro deleted file mode 100644 index 9f130b509..000000000 --- a/keyboards/kinesis/docs/kicad/kinesis.pro +++ /dev/null @@ -1,83 +0,0 @@ -update=Wednesday, November 05, 2014 'pmt' 12:08:47 pm -version=1 -last_client=pcbnew -[cvpcb] -version=1 -NetIExt=net -[cvpcb/libraries] -EquName1=devcms -[general] -version=1 -[eeschema] -version=1 -PageLayoutDescrFile= -SubpartIdSeparator=0 -SubpartFirstId=65 -LibDir=../../../lib/kicad/library -NetFmtName= -RptD_X=0 -RptD_Y=100 -RptLab=1 -LabSize=60 -[eeschema/libraries] -LibName1=power -LibName2=device -LibName3=transistors -LibName4=conn -LibName5=linear -LibName6=regul -LibName7=74xx -LibName8=cmos4000 -LibName9=adc-dac -LibName10=memory -LibName11=xilinx -LibName12=special -LibName13=microcontrollers -LibName14=dsp -LibName15=microchip -LibName16=analog_switches -LibName17=motorola -LibName18=texas -LibName19=intel -LibName20=audio -LibName21=interface -LibName22=digital-audio -LibName23=philips -LibName24=display -LibName25=cypress -LibName26=siliconi -LibName27=opto -LibName28=atmel -LibName29=contrib -LibName30=valves -LibName31=custom -[pcbnew] -version=1 -LastNetListRead= -UseCmpFile=1 -PadDrill=1.016000000000 -PadDrillOvalY=1.016000000000 -PadSizeH=1.524000000000 -PadSizeV=1.524000000000 -PcbTextSizeV=1.500000000000 -PcbTextSizeH=1.500000000000 -PcbTextThickness=0.300000000000 -ModuleTextSizeV=1.000000000000 -ModuleTextSizeH=1.000000000000 -ModuleTextSizeThickness=0.150000000000 -SolderMaskClearance=0.000000000000 -SolderMaskMinWidth=0.000000000000 -DrawSegmentWidth=0.200000000000 -BoardOutlineThickness=0.100000000000 -ModuleOutlineThickness=0.150000000000 -[pcbnew/libraries] -LibDir=../../../lib/kicad/modules -LibName1=custom -LibName2=Sockets -LibName3=Connect -LibName4=Discret -LibName5=Divers -LibName6=Display -LibName7=LEDs -LibName8=SMD_Packages -LibName9=Sockets_DIP diff --git a/keyboards/kinesis/docs/kicad/kinesis.sch b/keyboards/kinesis/docs/kicad/kinesis.sch deleted file mode 100644 index f75335aa0..000000000 --- a/keyboards/kinesis/docs/kicad/kinesis.sch +++ /dev/null @@ -1,634 +0,0 @@ -EESchema Schematic File Version 2 -LIBS:power -LIBS:device -LIBS:transistors -LIBS:conn -LIBS:linear -LIBS:regul -LIBS:74xx -LIBS:cmos4000 -LIBS:adc-dac -LIBS:memory -LIBS:xilinx -LIBS:special -LIBS:microcontrollers -LIBS:dsp -LIBS:microchip -LIBS:analog_switches -LIBS:motorola -LIBS:texas -LIBS:intel -LIBS:audio -LIBS:interface -LIBS:digital-audio -LIBS:philips -LIBS:display -LIBS:cypress -LIBS:siliconi -LIBS:opto -LIBS:atmel -LIBS:contrib -LIBS:valves -LIBS:custom -LIBS:kinesis-cache -EELAYER 27 0 -EELAYER END -$Descr A4 11693 8268 -encoding utf-8 -Sheet 1 1 -Title "" -Date "13 nov 2014" -Rev "" -Comp "" -Comment1 "" -Comment2 "" -Comment3 "" -Comment4 "" -$EndDescr -$Comp -L C C4 -U 1 1 545804FB -P 2850 4250 -F 0 "C4" H 2850 4350 40 0000 L CNN -F 1 "1uF" H 2856 4165 40 0000 L CNN -F 2 "~" H 2888 4100 30 0000 C CNN -F 3 "~" H 2850 4250 60 0000 C CNN - 1 2850 4250 - -1 0 0 1 -$EndComp -$Comp -L R R3 -U 1 1 545805E8 -P 2500 4000 -F 0 "R3" V 2580 4000 40 0000 C CNN -F 1 "22" V 2507 4001 40 0000 C CNN -F 2 "~" V 2430 4000 30 0000 C CNN -F 3 "~" H 2500 4000 30 0000 C CNN - 1 2500 4000 - 0 -1 -1 0 -$EndComp -$Comp -L R R2 -U 1 1 545805FA -P 2500 3800 -F 0 "R2" V 2580 3800 40 0000 C CNN -F 1 "22" V 2507 3801 40 0000 C CNN -F 2 "~" V 2430 3800 30 0000 C CNN -F 3 "~" H 2500 3800 30 0000 C CNN - 1 2500 3800 - 0 -1 -1 0 -$EndComp -Entry Wire Line - 6450 2450 6550 2550 -Entry Wire Line - 6450 2550 6550 2650 -Entry Wire Line - 6450 2650 6550 2750 -Entry Wire Line - 6450 2750 6550 2850 -Entry Wire Line - 6450 2950 6550 3050 -Entry Wire Line - 6450 3050 6550 3150 -Entry Wire Line - 6450 2850 6550 2950 -Entry Wire Line - 6450 3150 6550 3250 -Wire Wire Line - 10250 1800 10750 1800 -Entry Wire Line - 10750 1800 10850 1900 -Entry Wire Line - 10750 1900 10850 2000 -Entry Wire Line - 10750 2000 10850 2100 -Entry Wire Line - 10750 2800 10850 2900 -Entry Wire Line - 10750 2900 10850 3000 -Entry Wire Line - 10750 3000 10850 3100 -Entry Wire Line - 10750 3100 10850 3200 -Entry Wire Line - 10750 3200 10850 3300 -Entry Wire Line - 10750 3300 10850 3400 -$Comp -L AT90S8515-P IC2 -U 1 1 545A62EA -P 9250 3500 -F 0 "IC2" H 8400 5380 40 0000 L BNN -F 1 "AT90S8515-P" H 9700 1550 40 0000 L BNN -F 2 "DIL40" H 9250 3500 30 0000 C CIN -F 3 "" H 9250 3500 60 0000 C CNN - 1 9250 3500 - 1 0 0 -1 -$EndComp -NoConn ~ 10250 2650 -Entry Wire Line - 10750 3650 10850 3750 -Entry Wire Line - 10750 3750 10850 3850 -Entry Wire Line - 10750 3850 10850 3950 -Entry Wire Line - 10750 3950 10850 4050 -Entry Wire Line - 10750 4050 10850 4150 -Entry Wire Line - 10750 4150 10850 4250 -Entry Wire Line - 10750 4350 10850 4450 -Entry Wire Line - 10750 4250 10850 4350 -NoConn ~ 8250 4900 -NoConn ~ 8250 5000 -NoConn ~ 8250 1800 -Wire Wire Line - 10250 1900 10750 1900 -Wire Wire Line - 10250 2000 10750 2000 -Wire Wire Line - 10250 2100 10750 2100 -Wire Wire Line - 10250 2200 10750 2200 -Wire Wire Line - 10250 2300 10750 2300 -Wire Wire Line - 10250 2400 10750 2400 -Wire Wire Line - 10250 2500 10750 2500 -Text Label 10350 1800 0 60 ~ 0 -A -Text Label 10350 1900 0 60 ~ 0 -B -Text Label 10350 2000 0 60 ~ 0 -C -Text Label 10350 2100 0 60 ~ 0 -G -Wire Wire Line - 10250 2800 10750 2800 -Wire Wire Line - 10250 2900 10750 2900 -Wire Wire Line - 10250 3000 10750 3000 -Wire Wire Line - 10250 3100 10750 3100 -Wire Wire Line - 10250 3200 10750 3200 -Wire Wire Line - 10250 3300 10750 3300 -Wire Wire Line - 10250 3400 10750 3400 -Wire Wire Line - 10250 3500 10750 3500 -Text Label 10350 2800 0 60 ~ 0 -DL2 -Text Label 10350 2900 0 60 ~ 0 -DR1 -Text Label 10350 3000 0 60 ~ 0 -DR2 -Text Label 10350 3100 0 60 ~ 0 -DL1 -Text Label 10350 3400 0 60 ~ 0 -SCL -Text Label 10350 3500 0 60 ~ 0 -SDA -Wire Wire Line - 10250 3650 10750 3650 -Wire Wire Line - 10250 3750 10750 3750 -Wire Wire Line - 10250 3850 10750 3850 -Wire Wire Line - 10250 3950 10750 3950 -Wire Wire Line - 10250 4050 10750 4050 -Wire Wire Line - 10250 4150 10750 4150 -Wire Wire Line - 10250 4250 10750 4250 -Wire Wire Line - 10250 4350 10750 4350 -Text Label 10350 3650 0 60 ~ 0 -R1 -Text Label 10350 3750 0 60 ~ 0 -R2 -Text Label 10350 3850 0 60 ~ 0 -R3 -Text Label 10350 3950 0 60 ~ 0 -R4 -Text Label 10350 4050 0 60 ~ 0 -R5 -Text Label 10350 4150 0 60 ~ 0 -R6 -Text Label 10350 4250 0 60 ~ 0 -R7 -Text Label 10350 4350 0 60 ~ 0 -R8 -Wire Wire Line - 10250 4500 10750 4500 -Wire Wire Line - 10250 4600 10750 4600 -Wire Wire Line - 10250 4700 10750 4700 -Wire Wire Line - 10250 4800 10750 4800 -Wire Wire Line - 10250 4900 10750 4900 -Wire Wire Line - 10250 5000 10750 5000 -Wire Wire Line - 10250 5100 10750 5100 -Wire Wire Line - 10250 5200 10750 5200 -Text Label 10350 4600 0 60 ~ 0 -FS1 -Text Label 10350 5000 0 60 ~ 0 -FS3 -Text Label 10350 5200 0 60 ~ 0 -FS2 -$Comp -L GND #PWR01 -U 1 1 545A7377 -P 9250 5600 -F 0 "#PWR01" H 9250 5600 30 0001 C CNN -F 1 "GND" H 9250 5530 30 0001 C CNN -F 2 "" H 9250 5600 60 0000 C CNN -F 3 "" H 9250 5600 60 0000 C CNN - 1 9250 5600 - 1 0 0 -1 -$EndComp -Wire Wire Line - 9250 5500 9250 5600 -Text Label 10350 4700 0 60 ~ 0 -CLOCK -Text Label 10350 4800 0 60 ~ 0 -DATA -NoConn ~ 10750 4700 -NoConn ~ 10750 4800 -Text Label 10350 3200 0 60 ~ 0 -KP -Text Label 10350 3300 0 60 ~ 0 -PGM -Text Label 10350 2500 0 60 ~ 0 -BUZZ -NoConn ~ 8250 2300 -NoConn ~ 8250 2700 -$Comp -L GND #PWR02 -U 1 1 545A7565 -P 4750 5700 -F 0 "#PWR02" H 4750 5700 30 0001 C CNN -F 1 "GND" H 4750 5630 30 0001 C CNN -F 2 "" H 4750 5700 60 0000 C CNN -F 3 "" H 4750 5700 60 0000 C CNN - 1 4750 5700 - 1 0 0 -1 -$EndComp -Entry Wire Line - 6450 3650 6550 3750 -Entry Wire Line - 6450 3750 6550 3850 -Entry Wire Line - 6450 4150 6550 4250 -Entry Wire Line - 6450 4250 6550 4350 -Entry Wire Line - 6450 4050 6550 4150 -Entry Wire Line - 6450 4350 6550 4450 -NoConn ~ 3750 2850 -Wire Wire Line - 1200 2000 6450 2000 -NoConn ~ 3750 3050 -Wire Wire Line - 2750 3800 3750 3800 -Wire Wire Line - 2750 3900 3750 3900 -Wire Wire Line - 2750 3900 2750 4000 -Wire Bus Line - 6550 2100 6550 6050 -Wire Bus Line - 10850 1600 10850 6050 -Text Label 6050 4350 0 60 ~ 0 -DL1 -Text Label 6050 4250 0 60 ~ 0 -DR2 -Text Label 6050 4150 0 60 ~ 0 -DR1 -Text Label 6050 4050 0 60 ~ 0 -DL2 -Text Label 6050 2450 0 60 ~ 0 -R1 -Text Label 6050 2550 0 60 ~ 0 -R2 -Text Label 6050 2650 0 60 ~ 0 -R3 -Text Label 6050 2750 0 60 ~ 0 -R4 -Text Label 6050 2850 0 60 ~ 0 -R5 -Text Label 6050 2950 0 60 ~ 0 -R6 -Text Label 6050 3050 0 60 ~ 0 -R7 -Text Label 6050 3150 0 60 ~ 0 -R8 -Text Label 6050 5050 0 60 ~ 0 -A -Text Label 6050 5150 0 60 ~ 0 -B -Text Label 6050 5250 0 60 ~ 0 -C -Text Label 6050 5350 0 60 ~ 0 -G -Text Label 1300 3800 0 60 ~ 0 -D+ -Text Label 1300 4000 0 60 ~ 0 -D- -NoConn ~ 10750 2200 -NoConn ~ 10750 2300 -NoConn ~ 10750 2400 -Text Label 10350 4500 0 60 ~ 0 -GND -NoConn ~ 10750 4900 -NoConn ~ 10750 5100 -Text Label 6050 3450 0 60 ~ 0 -KP -Text Label 6050 3350 0 60 ~ 0 -PGM -$Comp -L ATMEGA32U4-A U1 -U 1 1 5462E0B1 -P 4900 4000 -F 0 "U1" H 3950 5700 40 0000 C CNN -F 1 "ATMEGA32U4-A" H 5600 2500 40 0000 C CNN -F 2 "TQFP44" H 4900 4000 35 0000 C CIN -F 3 "" H 6000 5100 60 0000 C CNN - 1 4900 4000 - 1 0 0 -1 -$EndComp -Wire Wire Line - 3750 4850 3750 5600 -Wire Wire Line - 4450 2200 5150 2200 -Connection ~ 4700 2200 -Connection ~ 4800 2200 -Connection ~ 5050 2200 -Connection ~ 4800 2000 -Wire Wire Line - 6000 2450 6450 2450 -Wire Wire Line - 6000 2550 6450 2550 -Wire Wire Line - 6000 2650 6450 2650 -Wire Wire Line - 6000 2750 6450 2750 -Wire Wire Line - 6000 2850 6450 2850 -Wire Wire Line - 6000 2950 6450 2950 -Wire Wire Line - 6000 3050 6450 3050 -Wire Wire Line - 6000 3150 6450 3150 -Wire Wire Line - 6000 5050 6450 5050 -Wire Wire Line - 6000 5150 6450 5150 -Wire Wire Line - 6000 5250 6450 5250 -Wire Wire Line - 6000 4050 6450 4050 -Wire Wire Line - 6000 4150 6450 4150 -Wire Wire Line - 6000 4250 6450 4250 -Wire Wire Line - 6000 4350 6450 4350 -Wire Wire Line - 6000 4550 6450 4550 -Entry Wire Line - 6450 3350 6550 3450 -Entry Wire Line - 6450 3450 6550 3550 -Entry Wire Line - 6450 5050 6550 5150 -Entry Wire Line - 6450 5150 6550 5250 -Entry Wire Line - 6450 5250 6550 5350 -Entry Wire Line - 6450 5350 6550 5450 -Entry Wire Line - 6450 4650 6550 4750 -Wire Wire Line - 6000 3350 6450 3350 -Wire Wire Line - 6000 3450 6450 3450 -Wire Wire Line - 1200 5600 6450 5600 -Connection ~ 4950 5600 -Connection ~ 4850 5600 -Wire Wire Line - 4750 5600 4750 5700 -Connection ~ 4750 5600 -Connection ~ 4500 5600 -Text Label 6050 4550 0 60 ~ 0 -HWB -Wire Wire Line - 6000 5350 6450 5350 -Wire Wire Line - 6000 3650 6450 3650 -Wire Wire Line - 6000 3750 6450 3750 -Text Label 6050 3650 0 60 ~ 0 -SCL -Text Label 6050 3750 0 60 ~ 0 -SDA -Wire Wire Line - 6000 3850 6450 3850 -Wire Wire Line - 6000 3950 6450 3950 -Wire Wire Line - 6000 4650 6450 4650 -Text Label 6050 4650 0 60 ~ 0 -BUZZ -NoConn ~ 10750 4600 -NoConn ~ 10750 5000 -NoConn ~ 10750 5200 -Entry Wire Line - 10750 3400 10850 3500 -Entry Wire Line - 10750 3500 10850 3600 -Entry Wire Line - 10750 4500 10850 4600 -Wire Wire Line - 2850 4050 3750 4050 -Text Label 2950 4050 0 60 ~ 0 -UCAP -Wire Wire Line - 6000 4850 6450 4850 -Wire Wire Line - 6000 4950 6450 4950 -NoConn ~ 6450 4850 -NoConn ~ 6450 4950 -NoConn ~ 6450 4550 -$Comp -L USB-MINI-B CON1 -U 1 1 546431C1 -P 2100 5050 -F 0 "CON1" H 1850 5500 60 0000 C CNN -F 1 "USB-MINI-B" H 2050 4550 60 0000 C CNN -F 2 "" H 2100 5050 60 0000 C CNN -F 3 "" H 2100 5050 60 0000 C CNN - 1 2100 5050 - 0 1 1 0 -$EndComp -$Comp -L VCC #PWR03 -U 1 1 54643698 -P 2400 4400 -F 0 "#PWR03" H 2400 4500 30 0001 C CNN -F 1 "VCC" H 2400 4500 30 0000 C CNN -F 2 "" H 2400 4400 60 0000 C CNN -F 3 "" H 2400 4400 60 0000 C CNN - 1 2400 4400 - 1 0 0 -1 -$EndComp -Text Notes 2600 2750 0 60 ~ 0 -Teensy 2.0\n(not fully drawn) -$Comp -L CONN_7 B7K-PH-K-S1 -U 1 1 54643939 -P 1950 6900 -F 0 "B7K-PH-K-S1" V 1920 6900 60 0000 C CNN -F 1 "CONN_7" V 2020 6900 60 0000 C CNN -F 2 "" H 1950 6900 60 0000 C CNN -F 3 "" H 1950 6900 60 0000 C CNN - 1 1950 6900 - 1 0 0 -1 -$EndComp -Connection ~ 3750 5600 -Connection ~ 2400 5600 -Connection ~ 2250 5600 -Connection ~ 1950 5600 -Wire Wire Line - 2400 4400 2400 4500 -Wire Wire Line - 2250 4000 2250 4500 -Wire Wire Line - 1200 3800 2250 3800 -Wire Wire Line - 2100 3800 2100 4500 -Wire Wire Line - 2850 4450 2850 5600 -Connection ~ 2850 5600 -Entry Wire Line - 1100 6800 1200 6900 -Entry Wire Line - 1100 6900 1200 7000 -Entry Wire Line - 1100 7000 1200 7100 -Entry Wire Line - 1100 6700 1200 6800 -Wire Wire Line - 1200 6600 1600 6600 -Wire Wire Line - 1200 6700 1600 6700 -Wire Wire Line - 1200 6800 1600 6800 -Wire Wire Line - 1200 6900 1600 6900 -Wire Wire Line - 1200 7000 1600 7000 -Wire Wire Line - 1200 7100 1600 7100 -Wire Wire Line - 1200 7200 1600 7200 -Text Label 1300 6600 0 60 ~ 0 -FS2 -Text Label 1300 6700 0 60 ~ 0 -FS1 -Text Label 1300 6800 0 60 ~ 0 -VCC -Text Label 1300 6900 0 60 ~ 0 -D- -Text Label 1300 7000 0 60 ~ 0 -D+ -Text Label 1300 7100 0 60 ~ 0 -GND -Text Label 1300 7200 0 60 ~ 0 -FS3 -NoConn ~ 3750 2450 -Wire Wire Line - 3600 2000 3600 3650 -Wire Wire Line - 3600 3650 3750 3650 -NoConn ~ 1950 4500 -Wire Bus Line - 1100 1900 1100 7100 -NoConn ~ 1200 6600 -NoConn ~ 1200 6700 -NoConn ~ 1200 7200 -Connection ~ 2100 3800 -Wire Wire Line - 1200 4000 2250 4000 -Entry Wire Line - 1100 3700 1200 3800 -Entry Wire Line - 1100 3900 1200 4000 -Text Label 10350 1500 0 60 ~ 0 -VCC -Entry Wire Line - 1100 1900 1200 2000 -Text Label 1250 2000 0 60 ~ 0 -VCC -Entry Wire Line - 1100 5500 1200 5600 -Connection ~ 1800 5600 -Text Label 1300 5600 0 60 ~ 0 -GND -Wire Wire Line - 9250 5500 10750 5500 -Entry Wire Line - 10750 5500 10850 5600 -Text Label 10350 5500 0 60 ~ 0 -GND -Wire Wire Line - 9250 1500 10750 1500 -Entry Wire Line - 10750 1500 10850 1600 -Connection ~ 3600 2000 -Wire Wire Line - 4800 2000 4800 2200 -Entry Wire Line - 6450 2000 6550 2100 -Text Label 6050 2000 0 60 ~ 0 -VCC -Connection ~ 5050 5600 -Entry Wire Line - 6450 5600 6550 5700 -Text Label 6050 5600 0 60 ~ 0 -GND -NoConn ~ 6450 3850 -NoConn ~ 6450 3950 -Wire Wire Line - 1800 4500 1500 4500 -Wire Wire Line - 1500 4500 1500 5600 -Connection ~ 1500 5600 -Entry Wire Line - 10750 2500 10850 2600 -Entry Wire Line - 10750 2100 10850 2200 -Text Notes 1000 5300 1 60 ~ 0 -Sacrificial USB cable from header to Teensy -Text Notes 7850 5950 0 60 ~ 0 -Ribbon cable between Teensy pins and socket -Wire Bus Line - 10850 6050 6550 6050 -$EndSCHEMATC diff --git a/keyboards/kinesis/docs/photos/P1050573.jpg b/keyboards/kinesis/docs/photos/P1050573.jpg deleted file mode 100644 index 027ab9efb..000000000 Binary files a/keyboards/kinesis/docs/photos/P1050573.jpg and /dev/null differ diff --git a/keyboards/kinesis/docs/photos/P1050574.jpg b/keyboards/kinesis/docs/photos/P1050574.jpg deleted file mode 100644 index d49c492b8..000000000 Binary files a/keyboards/kinesis/docs/photos/P1050574.jpg and /dev/null differ diff --git a/keyboards/kinesis/docs/photos/P1050575.jpg b/keyboards/kinesis/docs/photos/P1050575.jpg deleted file mode 100644 index 50cc9897c..000000000 Binary files a/keyboards/kinesis/docs/photos/P1050575.jpg and /dev/null differ diff --git a/keyboards/kinesis/docs/readme.txt b/keyboards/kinesis/docs/readme.txt deleted file mode 100644 index af33ac490..000000000 --- a/keyboards/kinesis/docs/readme.txt +++ /dev/null @@ -1,52 +0,0 @@ -This directory of documentation was copied from https://github.com/wjanssens/tmk_keyboard/tree/master/keyboard/kinesis -and is probably Copyright 2014 Warren Janssens -and probably released under GPL v2, which may be recovered at . - -Row configuration -PF0 A -PF1 B -PF2 C -PF3 G 0 = U4, 1 = U5 - -Column configuration - 4y0 4y1 4y2 4y3 4y4 4y5 4y6 4y7 5y0 5y1 5y2 5y3 5y4 5y5 5y6 5y7 - r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 r16 -PB0 21 c1 f6 f8 f7 5 4 3 2 1 =+ -PB1 22 c2 f3 f5 f4 t r e w q TAB -PB2 23 c3 ESC f2 f1 g f d s a CL -PB3 24 c4 f9 f11 f10 b v c x z LS UP DN [{ ]} -PB4 25 c5 f12 SL PS RT LT §± `~ 6 7 8 9 0 -_ -PB5 26 c6 PB PGM KPD y u i o p \ -PB6 27 c7 LC DL BS RC EN SP h j k l ;: '" -PB7 28 c8 RA PU PD n m ,< .> /? RS - */ - - -40 pin connector - - DL2 1 40 VCC - DR1 2 39 A - DR2 3 38 B - DL1 4 37 C - KPD 5 36 G - PGM 6 35 - SCL 7 34 - SDA 8 33 - RST 9 32 BUZZ - WP 10 31 EA - FS1 11 30 ALE - CLOCK 12 29 PSEN - DATA 13 28 r8 - 14 27 r7 - FS3 15 26 r6 - 16 25 r5 - FS2 17 24 r4 - XTAL1 18 23 r3 - XTAL2 19 22 r2 - GND 20 21 r1 - - -references: -https://github.com/chrisandreae/keyboard-firmware - - diff --git a/keyboards/kinesis/docs/schematic.png b/keyboards/kinesis/docs/schematic.png deleted file mode 100644 index fa9405a1f..000000000 Binary files a/keyboards/kinesis/docs/schematic.png and /dev/null differ diff --git a/keyboards/kinesis/keymaps/default/keymap.c b/keyboards/kinesis/keymaps/default/keymap.c index 3bf80699c..01a66b5e5 100644 --- a/keyboards/kinesis/keymaps/default/keymap.c +++ b/keyboards/kinesis/keymaps/default/keymap.c @@ -1,10 +1,6 @@ #include "kinesis.h" -#include "action_layer.h" -#define QWERTY 0 // Base qerty -#define SYMB 1// Symbol layer - -// An almost entirely blank keymap. Test layers with the upper right hand key - 1 in normal mode, reset in layer 2. +#define QWERTY 0 // Base qwerty /**************************************************************************************************** @@ -33,7 +29,6 @@ * `--------------------' `--------------------' */ - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [QWERTY] = KEYMAP( KC_ESC, KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8, @@ -45,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL,KC_LALT, KC_HOME, KC_BSPC,KC_DEL ,KC_END , - KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_PSCR ,KC_SLCK ,KC_PAUS, KC_FN0, KC_1, + KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_PSCR ,KC_SLCK ,KC_PAUS, KC_FN0, KC_1, KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS, KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_BSLS, KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN,KC_QUOT, @@ -54,32 +49,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_RGUI,KC_RCTL, KC_PGUP, KC_PGDN,KC_ENTER ,KC_SPC - ), -[SYMB] = 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_FN0, 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 ) }; -const uint16_t PROGMEM fn_actions[] = { - [0] = ACTION_LAYER_TAP_TOGGLE(SYMB) , // FN1 - Momentary Layer 1 (Symbols) +const uint16_t PROGMEM fn_actions[] = { }; diff --git a/keyboards/kinesis/keymaps/dvorak/Makefile b/keyboards/kinesis/keymaps/dvorak/Makefile new file mode 100644 index 000000000..9d3df5964 --- /dev/null +++ b/keyboards/kinesis/keymaps/dvorak/Makefile @@ -0,0 +1,21 @@ +# Build Options +# change to "no" to disable the options, or define them in the Makefile in +# the appropriate keymap folder that will get included automatically +# +BOOTMAGIC_ENABLE = no # 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 = yes # Commands for debug and configuration +NKRO_ENABLE = yes # 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 +MIDI_ENABLE = no # MIDI controls +AUDIO_ENABLE = no # Audio output on port C6 +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif diff --git a/keyboards/kinesis/keymaps/dvorak/config.h b/keyboards/kinesis/keymaps/dvorak/config.h new file mode 100644 index 000000000..8893d122e --- /dev/null +++ b/keyboards/kinesis/keymaps/dvorak/config.h @@ -0,0 +1,8 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include "../../config.h" + +// place overrides here + +#endif diff --git a/keyboards/kinesis/keymaps/dvorak/keymap.c b/keyboards/kinesis/keymaps/dvorak/keymap.c new file mode 100644 index 000000000..9008bc808 --- /dev/null +++ b/keyboards/kinesis/keymaps/dvorak/keymap.c @@ -0,0 +1,93 @@ +#include "kinesis.h" + +#define _DVORAK 0 // Base Dvorak layer +#define _MEDIA 1 // Media layer + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[_DVORAK] = KEYMAP( + // left hand + KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, + KC_BSPC, KC_A, KC_O, KC_E, KC_U, KC_I, + KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, + KC_ESC, KC_LBRC, KC_DOWN, KC_UP, + // left thumb + KC_LGUI, KC_LCTL, + KC_LALT, + KC_BSPC, KC_DEL, TG(_MEDIA), + // right hand + KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, KC_FN0, KC_1, + KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, + KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, + KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, + KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, + KC_LEFT, KC_RIGHT, KC_RBRC, KC_BSLS, + // right thumb + KC_RCTL, KC_RGUI, + KC_RALT, + TG(_MEDIA), KC_ENT, KC_SPC + ), + +[_MEDIA] = KEYMAP( + // left hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_BTN4, KC_BTN3, KC_BTN2, KC_BTN1, KC_NO, + KC_NO, KC_NO, KC_MUTE, KC_VOLD, KC_VOLU, KC_NO, + KC_NO, KC_NO, KC_MS_D, KC_MS_U, + // left thumb + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_TRNS, + // right hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_POWER, + KC_NO, KC_VOLU, KC_MS_U, KC_VOLD, KC_NO, KC_NO, + KC_NO, KC_MS_L, KC_MS_D, KC_MS_R, KC_NO, KC_NO, + KC_NO, KC_MPRV, KC_MPLY, KC_MNXT, KC_NO, KC_NO, + KC_MS_L, KC_MS_R, KC_NO, KC_NO, + // right thumb + KC_NO, KC_NO, + KC_NO, + KC_TRNS, KC_ENT, KC_NO +) +}; + + +const uint16_t PROGMEM fn_actions[] = { + +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; + + +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) { + +} diff --git a/keyboards/kinesis/keymaps/milestogo/Makefile b/keyboards/kinesis/keymaps/milestogo/Makefile new file mode 100644 index 000000000..9d3df5964 --- /dev/null +++ b/keyboards/kinesis/keymaps/milestogo/Makefile @@ -0,0 +1,21 @@ +# Build Options +# change to "no" to disable the options, or define them in the Makefile in +# the appropriate keymap folder that will get included automatically +# +BOOTMAGIC_ENABLE = no # 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 = yes # Commands for debug and configuration +NKRO_ENABLE = yes # 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 +MIDI_ENABLE = no # MIDI controls +AUDIO_ENABLE = no # Audio output on port C6 +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif diff --git a/keyboards/kinesis/keymaps/milestogo/config.h b/keyboards/kinesis/keymaps/milestogo/config.h new file mode 100644 index 000000000..8893d122e --- /dev/null +++ b/keyboards/kinesis/keymaps/milestogo/config.h @@ -0,0 +1,8 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include "../../config.h" + +// place overrides here + +#endif diff --git a/keyboards/kinesis/keymaps/milestogo/keymap.c b/keyboards/kinesis/keymaps/milestogo/keymap.c new file mode 100644 index 000000000..c2635eefe --- /dev/null +++ b/keyboards/kinesis/keymaps/milestogo/keymap.c @@ -0,0 +1,331 @@ +#include "kinesis.h" +#include "action_layer.h" +#include "mousekey.h" + +#define _QWERTY 0 // Base qerty +#define _SYMB 1// Symbol layer +#define _MOUSE 2// +#define _TRANS 3// + + + +/* Macros */ +enum { + NONE = 0, + // Diagonal mouse movement + A_MUL, + A_MUR, + A_MDL, + A_MDR, +}; + + +// Why so many gui keys, why not just map all the OS X stuff to buttons? Good question. +/**************************************************************************************************** +* +* Keymap: Default Layer in Qwerty +* +* ,-------------------------------------------------------------------------------------------------------------------. +* | ESC | F1 | F2 | F3 | F4 | F5 | F6 | F8 | F9 | F10 | F12 | FN0 | FN1 | FN2 | | bOOT | +* |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------| +* | =+ | 1! | 2@ | 3# | 4$ | 5% | | 6^ | 7& | 8* | 9( | 0) | -_ | +* |--------+------+------+------+------+------| +------+------+------+------+------+--------| +* | Tab | Q | W | E | R | T | | Y | U | I | O | P | \| | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* |MouseFN0| A | S | D | F | G | | H | J | K | L | ;: | '" | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | Shift | Z | X | C | V | B | | N | M | ,. | .> | /? | Shift | +* `--------+------+------+------+------+------- `------+------+------+------+------+--------' +* | ~` | ESC |GUI/L |L1/RT | | L1/UP|GUI/DN| [{ | ]} | +* `---------------------------' `---------------------------' +* ,-------------. ,-------------. +* | CTRL | GUI | | ALT | GUI | +* ,------|------|------| |------+------+------. +* | | | Home | | PgUp | | | +* | BkSp | Del |------| |------|Return| Space| +* | | | End | | PgDn | | | +* `--------------------' `--------------------' +*/ + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[_QWERTY] = KEYMAP( + KC_ESC, KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8, + KC_EQL, KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , + KC_TAB, KC_Q ,KC_W ,KC_E ,KC_R ,KC_T , + KC_FN0 ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G , + KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B , + KC_GRAVE, KC_ESC, KC_FN4, KC_FN5, + KC_LCTL,KC_LGUI, + KC_HOME, + KC_BSPC,KC_DEL ,KC_FN0 , + KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_FN0 ,KC_FN1 ,KC_FN2, KC_NO, RESET, + KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS, + KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_BSLS, + KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN,KC_QUOT, + KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_RSFT, + KC_FN6, KC_FN7, KC_LBRC ,KC_RBRC, + KC_RALT,KC_RGUI, + KC_PGUP, + KC_PGDN,KC_ENTER ,KC_SPC + ), + +/* _SYMBol level +* +* ,-------------------------------------------------------------------------------------------------------------------. +* | | | | | | | | | | | | | | | | bOOT | +* |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------| +* | | | * | # | | | | | | | | | | +* |--------+------+------+------+------+------| +------+------+------+------+------+--------| +* | | / | [ | ] | | | | | | | | | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | { | } | | | | | | | | | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | = | ( | ) | | | | | | | | | | +* `--------+------+------+------+------+------- `------+------+------+------+------+--------' +* | | |GUI/L |L1/RT | | L1/UP|GUI/DN| { | } | +* `---------------------------' `---------------------------' +* ,-------------. ,-------------. +* | CTRL | GUI | | ALT | GUI | +* ,------|------|------| |------+------+------. +* | | | Home | | PgUp | | | +* | BkSp | Del |------| |------|Mouse1|Mouse2| +* | | | End | | PgDn |LClick|Rclick| +* `--------------------' `--------------------' +*/ + + + +[_SYMB] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_ASTR, KC_HASH, KC_TRNS, KC_TRNS, + KC_TRNS, KC_SLSH, KC_LBRC, KC_RBRC, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, RSFT(KC_LBRC), RSFT(KC_RBRC), KC_TRNS, KC_TRNS, + KC_TRNS, KC_EQL, RSFT(KC_9), RSFT(KC_0), KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_FN4, KC_FN5, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_FN0, KC_2, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_FN6, KC_FN7, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS + ), +/* Keymap: Movement and function layer +* +* ,-------------------------------------------------------------------------------------------------------------------. +* | Caps | F1 | F2 | F3 | F4 | F5 | F6 | F8 | F9 | F10 | F12 | FN0 | FN1 | FN2 | Tada | bOOT | +* |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------| +* | =+ | ! | @ | # | $ | % | | ^ | & | * | ( | ) |MS Fast | +* |--------+------+------+------+------+------| +------+------+------+------+------+--------| +* | Tab | | | Up | |PgUp | | MwU |MS_UL | MS_U |MS_UR | | Ms Norm| +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* |MouseFN1| C^A | Left | Down |Right | C^E | | | MS_L |Mouse1| MS_R | |MS Slow | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | GuiZ | GUI X| GUI C| GUI_V|PgDown| | MWD | MDown|MS Dwn|MS_DR | ? | | +* `--------+------+------+------+------+------- `------+------+------+------+------+--------' +* | `~ | ESC | | | | | | { | } | +* `---------------------------' `---------------------------' +* ,-------------. ,-------------. +* | CTRL | GUI | | ALT | GUI | +* ,------|------|------| |------+------+------. +* | | | Home | | PgUp | | | +* | BkSp | Del |------| |------|Mouse1|Mouse2| +* | | | End | | PgDn |LClick|Rclick| +* `--------------------' `--------------------' +*/ + + +[_MOUSE] = KEYMAP( + KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_EXLM ,KC_AT, KC_HASH, KC_DLR ,KC_PERC , + KC_TRNS, KC_NO, KC_NO, KC_UP, KC_NO, KC_PGUP, + KC_FN1, LCTL(KC_A),KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_E), + KC_TRNS, LGUI(KC_Z),LGUI(KC_X),LGUI(KC_C),LGUI(KC_V),KC_PGDN, + KC_TRNS, KC_TRNS, KC_NO, KC_NO, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_FN0,RESET, + KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_ACL2, + KC_WH_U, M(A_MUL), KC_MS_U, M(A_MUR), KC_NO, KC_ACL1, + KC_NO, KC_MS_L, KC_MS_D, KC_MS_R, KC_NO, KC_ACL0, + KC_WH_D, M(A_MDL), KC_MS_D, M(A_MDR), RSFT(KC_LBRC), RSFT(KC_RBRC), + KC_LCBR, KC_RCBR, KC_NO, KC_NO, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_BTN1, KC_BTN2 + ), + + + +/* EMPTY +* +* ,-------------------------------------------------------------------------------------------------------------------. +* | | | | | | | | | | | | | | | | bOOT | +* |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------| +* | | | | | | | | | | | | | | +* |--------+------+------+------+------+------| +------+------+------+------+------+--------| +* | | | | | | | | | | | | | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | | | | | | | | | | | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | | | | | | | | | | | | +* `--------+------+------+------+------+------- `------+------+------+------+------+--------' +* | | | | | | | | | | +* `---------------------------' `---------------------------' +* ,-------------. ,-------------. +* | Ctrl | Alt | | Gui | Ctrl | +* ,------|------|------| |------+------+------. +* | | | Home | | PgUp | | | +* | BkSp | Del |------| |------|Mouse1|Mouse2| +* | | | End | | PgDn |LClick|Rclick| +* `--------------------' `--------------------' +*/ + + + +[_TRANS] = 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_FN10, KC_FN11, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_FN0, KC_2, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS + ), + + +}; + + + +const uint16_t PROGMEM fn_actions[] = { + [0] = ACTION_LAYER_TAP_TOGGLE(_MOUSE) , + [1] = ACTION_LAYER_TOGGLE(_MOUSE) , + [2] = ACTION_LAYER_TAP_TOGGLE(_SYMB) , + [5]= ACTION_LAYER_TAP_KEY(_SYMB,KC_RIGHT), + [4]= ACTION_MODS_TAP_KEY(MOD_LGUI,KC_LEFT), + [6]= ACTION_LAYER_TAP_KEY(_SYMB,KC_UP), + [7]= ACTION_MODS_TAP_KEY(MOD_LGUI,KC_DOWN), + + +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + + // from algernon's ErgoDox EZ layout, + case A_MUL: + if (record->event.pressed) { + mousekey_on(KC_MS_UP); + mousekey_on(KC_MS_LEFT); + } else { + mousekey_off(KC_MS_UP); + mousekey_off(KC_MS_LEFT); + } + mousekey_send(); + break; + + case A_MUR: + if (record->event.pressed) { + mousekey_on(KC_MS_UP); + mousekey_on(KC_MS_RIGHT); + } else { + mousekey_off(KC_MS_UP); + mousekey_off(KC_MS_RIGHT); + } + mousekey_send(); + break; + + case A_MDL: + if (record->event.pressed) { + mousekey_on(KC_MS_DOWN); + mousekey_on(KC_MS_LEFT); + } else { + mousekey_off(KC_MS_DOWN); + mousekey_off(KC_MS_LEFT); + } + mousekey_send(); + break; + + case A_MDR: + if (record->event.pressed) { + mousekey_on(KC_MS_DOWN); + mousekey_on(KC_MS_RIGHT); + } else { + mousekey_off(KC_MS_DOWN); + mousekey_off(KC_MS_RIGHT); + } + mousekey_send(); + break; + } + return MACRO_NONE; +}; + + +void matrix_init_user(void) { + + +} + +void matrix_scan_user(void) { + +#ifdef ALVICSTEP_CONFIG_H + int8_t layer = biton32(layer_state); + + switch (layer) { + case 1: + if (!(host_keyboard_leds() & (1 << USB_LED_CAPS_LOCK))) { + all_led_off(); + caps_lock_led_on(); + } + break; + + case 2: + if (!(host_keyboard_leds() & (1 << USB_LED_SCROLL_LOCK))) { + all_led_off(); + scroll_lock_led_on(); + } + case 0: + all_led_off(); + num_lock_led_on(); + break; + default: + break; + } +#endif + +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + return true; +} + +void led_set_user(uint8_t usb_led) { + +} diff --git a/keyboards/kinesis/keymaps/milestogo/readme.md b/keyboards/kinesis/keymaps/milestogo/readme.md new file mode 100644 index 000000000..76356a687 --- /dev/null +++ b/keyboards/kinesis/keymaps/milestogo/readme.md @@ -0,0 +1,2 @@ +# a programmer friendly keymap for the kinesis-advantage +# not really baked yet. diff --git a/keyboards/kinesis/kinesis.c b/keyboards/kinesis/kinesis.c index 1fee90e6f..7a6a1be54 100644 --- a/keyboards/kinesis/kinesis.c +++ b/keyboards/kinesis/kinesis.c @@ -1,106 +1 @@ #include "kinesis.h" - -// begin section origin https://github.com/alvicstep/tmk_keyboard - - -void all_led_off(void) -{ - PORTD = 0b11111111; -} - -void all_led_on(void) -{ - PORTD = 0b00000000; -} -void num_lock_led_on(void) -{ - PORTD = 0b11101111; -} - -void caps_lock_led_on(void) -{ - PORTD = 0b01111111; -} - -void scroll_lock_led_on(void) -{ - PORTD = 0b11011111; -} -void keypad_led_on(void) -{ - PORTD = 0b10111111; -} -void blink_all_leds(void) -{ - all_led_on(); - _delay_ms(500); - - all_led_off(); - _delay_ms(100); - - caps_lock_led_on(); - _delay_ms(100); - - num_lock_led_on(); - _delay_ms(100); - - scroll_lock_led_on(); - _delay_ms(100); - - keypad_led_on(); - _delay_ms(100); - - //back - - scroll_lock_led_on(); - _delay_ms(100); - - num_lock_led_on(); - _delay_ms(100); - - caps_lock_led_on(); - _delay_ms(100); - - all_led_off(); -} - -// End section origin https://github.com/alvicstep/tmk_keyboard - - void matrix_init_kb(void) { - blink_all_leds(); - matrix_init_user(); -} - - -void matrix_scan_kb(void) { - // put your looping keyboard code here - // runs every cycle (a lot) - - matrix_scan_user(); -} - -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { - // put your per-action keyboard code here - // runs for every action, just before processing by the firmware - - return process_record_user(keycode, record); -} - -void led_set_kb(uint8_t usb_led) { - // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here - -//Copyright 2014 Warren Janssens - uint8_t leds = 0xF0; - if (usb_led & 1 << USB_LED_NUM_LOCK) - leds &= ~0x10; - if (usb_led & 1 << USB_LED_CAPS_LOCK) - leds &= ~0x80; - if (usb_led & 1 << USB_LED_SCROLL_LOCK) - leds &= ~0x20; - PORTD = (PORTD & 0x0F) | leds; - - led_set_user(usb_led); - -} - - diff --git a/keyboards/kinesis/kinesis.h b/keyboards/kinesis/kinesis.h index c04fbda15..66713731f 100644 --- a/keyboards/kinesis/kinesis.h +++ b/keyboards/kinesis/kinesis.h @@ -1,67 +1,23 @@ #ifndef KINESIS_H #define KINESIS_H -#include "quantum.h" - - -// The first section contains all of the arguements -// The second converts the arguments into a two-dimensional array +#ifdef SUBPROJECT_alvicstep + #include "alvicstep.h" +#endif +#ifdef SUBPROJECT_stapelberg + #include "stapelberg.h" +#endif -#define KEYMAP( \ - k02,k22,k12,k01,k21,k11,k00,k20,k10, \ - k80,k70,k60,k50,k40,k30, \ - k81,k71,k61,k51,k41,k31, \ - k82,k72,k62,k52,k42,k32, \ - k83,k73,k63,k53,k43,k33, \ - k74,k64,k54,k34, \ - k36,k35, \ - k55, \ - k56,k46,k75, \ - k03,k23,k13,k04,k24,k14,k05,k85,k84, \ - k94,kA4,kB4,kD4,kE4,kF4, \ - k95,kA5,kB5,kD5,kE5,kF5, \ - k96,kA6,kB6,kD6,kE6,kF6, \ - k97,kA7,kB7,kD7,kE7,kF7, \ - k93,kB3,kD3,kE3, \ - k47,k66, \ - k67, \ - k87,k76,k86 \ -) { \ - { k00, k01, k02, k03, k04, k05, KC_NO, KC_NO }, \ - { k10, k11, k12, k13, k14, KC_NO, KC_NO, KC_NO }, \ - { k20, k21, k22, k23, k24, KC_NO, KC_NO, KC_NO }, \ - { k30, k31, k32, k33, k34, k35, k36, KC_NO }, \ - { k40, k41, k42, k43, KC_NO, KC_NO, k46, k47 }, \ - { k50, k51, k52, k53, k54, k55, k56, KC_NO }, \ - { k60, k61, k62, k63, k64, KC_NO, k66, k67 }, \ - { k70, k71, k72, k73, k74, k75, k76, KC_NO }, \ - { k80, k81, k82, k83, KC_NO ,KC_NO, k86, k87}, \ - { KC_NO, KC_NO ,KC_NO ,k93, k94, k95, k96, k97}, \ - { KC_NO, KC_NO ,KC_NO ,KC_NO, kA4, kA5, kA6, kA7}, \ - { KC_NO, KC_NO ,KC_NO ,kB3, kB4, kB5, kB6, kB7}, \ - { KC_NO, KC_NO ,KC_NO ,KC_NO, KC_NO, KC_NO, k84, k85}, \ - { KC_NO, KC_NO ,KC_NO ,kD3, kD4, kD5, kD6, kD7}, \ - { KC_NO, KC_NO ,KC_NO ,kE3, kE4, kE5, kE6, kE7}, \ - { KC_NO, KC_NO ,KC_NO ,KC_NO, kF4, kF5, kF6, kF7} \ -} +#include "quantum.h" -/* 4y0 A 4y1 B 4y2 4y3 D 4y4 E 4y5 F 4y6 G 4y7 H 5y0 I 5y1 J 5y2 K 5y3 L 5y4 M 5y5 N 5y6 O 5y7 P */ +void all_led_off(void); +void all_led_on(void); +void num_lock_led_on(void); +void caps_lock_led_on(void); +void scroll_lock_led_on(void); +void keypad_led_on(void); -/* - 0 1 2 3 4 5 6 7 8 9 A B C D E F - A B C D E F G H I J K L M N O P - 4y0 4y1 4y2 4y3 4y4 4y5 4y6 4y7 5y0 5y1 5y2 5y3 5y4 5y5 5y6 5y7 - r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 -0 PB0 21 c0 f6 f8 f7 5 4 3 2 1 =+ -1 PB1 22 c1 f3 f5 f4 t r e w q TAB -2 PB2 23 c2 ESC f2 f1 g f d s a CL -3 PB3 24 c3 f9 f11 f10 b v c x z LS UP DN [{ ]} -4 PB4 25 c4 f12 SL PS RT LT §± `~ 6 7 8 9 0 -_ -5 PB5 26 c5 PB PGM KPD LA HM END y u i o p \ -6 PB6 27 c6 LC DEL BS RC ENT SP h j k l ;: '" -7 PB7 28 c7 RA PU PD n m ,< .> /? RS -*/ #endif diff --git a/keyboards/kinesis/matrix.c b/keyboards/kinesis/matrix.c deleted file mode 100644 index cb0d5ad7d..000000000 --- a/keyboards/kinesis/matrix.c +++ /dev/null @@ -1,228 +0,0 @@ -/* -Copyright 2014 Warren Janssens - -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 . -*/ - -/* - * scan matrix - */ -#include -#include -#include -#include -#include "action_layer.h" -#include "print.h" -#include "debug.h" -#include "util.h" -#include "matrix.h" -#include "led.h" -#include "config.h" - -#ifndef DEBOUNCE -# define DEBOUNCE 5 -#endif -static uint8_t debouncing = DEBOUNCE; - -/* matrix state(1:on, 0:off) */ -static uint8_t matrix[MATRIX_ROWS]; -static uint8_t matrix_debouncing[MATRIX_ROWS]; - -static matrix_row_t read_row(uint8_t row); -static void unselect_rows(void); -static void select_rows(uint8_t row); - -__attribute__ ((weak)) -void matrix_init_quantum(void) { - matrix_init_kb(); -} - -__attribute__ ((weak)) -void matrix_scan_quantum(void) { - matrix_scan_kb(); -} - -__attribute__ ((weak)) -void matrix_init_kb(void) { - matrix_init_user(); -} - -__attribute__ ((weak)) -void matrix_scan_kb(void) { - matrix_scan_user(); -} - -__attribute__ ((weak)) -void matrix_init_user(void) { -} - -__attribute__ ((weak)) -void matrix_scan_user(void) { -} - -inline -uint8_t matrix_rows(void) -{ - return MATRIX_ROWS; -} - - -inline -uint8_t matrix_cols(void) -{ - return MATRIX_COLS; -} - -void matrix_init(void) -{ - //debug_enable = true; - - //dprint("matrix_init"); dprintln(); - // output high (leds) - DDRD = 0xFF; - PORTD = 0xFF; - - // output low (multiplexers) - DDRF = 0xFF; - PORTF = 0x00; - - // input with pullup (matrix) - DDRB = 0x00; - PORTB = 0xFF; - - // input with pullup (program and keypad buttons) - DDRC = 0x00; - PORTC = 0xFF; - - // initialize row and col - unselect_rows(); - - // initialize matrix state: all keys off - for (uint8_t i=0; i < MATRIX_ROWS; i++) { - matrix[i] = 0; - matrix_debouncing[i] = 0; - } - -} - -uint8_t matrix_scan(void) -{ - - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - select_rows(i); - uint8_t row = read_row(i); - if (matrix_debouncing[i] != row) { - matrix_debouncing[i] = row; - if (debouncing) { - debug("bounce!: "); debug_hex(debouncing); debug("\n"); - } - debouncing = DEBOUNCE; - } - unselect_rows(); - } - - if (debouncing) { - if (--debouncing) { - _delay_ms(1); - } else { - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - matrix[i] = matrix_debouncing[i]; - } - } - } - matrix_scan_quantum(); - return 1; -} - -bool matrix_is_modified(void) -{ - if (debouncing) return false; - return true; -} - -inline -bool matrix_is_on(uint8_t row, uint8_t col) -{ - return (matrix[row] & ((matrix_row_t)1< /? RS - */ - - diff --git a/keyboards/kinesis/readme.md b/keyboards/kinesis/readme.md index 79c86581e..2813ee273 100644 --- a/keyboards/kinesis/readme.md +++ b/keyboards/kinesis/readme.md @@ -1,42 +1,12 @@ -kinesis-advantage keyboard firmware -====================== +# Firmware for the Kinesis advantage keyboard -## Kinesis specific information -This is a port of https://github.com/alvicstep/tmk_keyboard, -which is a fork of https://github.com/wjanssens/tmk_keyboard, -which is based on work from https://github.com/chrisandreae/keyboard-firmware +There are at least two different ways to replace the controller in this keyboard. -If you replace the kinesis CPU as described in the doc folder, then this code should allow you to use QMK. -I've tested with a Teensy 2++, remember to change the CPU if you use a 32u4 instead. +The Stapelberg folder contains the docs and configuration for using the custom controller created by Michael Stapelberg. -Not yet implemented: -- Kinesis EEProm reading or writing -- Audio - this should be simple if we remove hardcoded pins from audio.h and switch to E7 +The alvicstep folder contains docs and configuration for directly wiring a Teensy2++ to the existing controller board. This follows the pinouts described in https://github.com/alvicstep/tmk_keyboard, which is where the name comes from. +## Keymaps +Both hardware solutions should work with the same keymaps -## Quantum MK Firmware - -For the full Quantum feature list, see [the parent readme.md](/doc/readme.md). - -## Building - -Download or clone the whole firmware and navigate to the keyboards/kinesis-advantage folder. Once your dev env is setup, you'll be able to type `make` to generate your .hex - you can then use the Teensy Loader to program your .hex file. - -Depending on which keymap you would like to use, you will have to compile slightly differently. - -### Default - -To build with the default keymap, simply run `make default`. - -### Other Keymaps - -Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create a folder with the name of your keymap in the keymaps folder, and see keymap documentation (you can find in top readme.md) and existant keymap files. - -To build the firmware binary hex file with a keymap just do `make` with a keymap like this: - -``` -$ make [default|jack|] -``` - -Keymaps follow the format **__keymap.c__** and are stored in folders in the `keymaps` folder, eg `keymaps/my_keymap/` diff --git a/keyboards/kinesis/stapelberg/Makefile b/keyboards/kinesis/stapelberg/Makefile new file mode 100644 index 000000000..bd09e5885 --- /dev/null +++ b/keyboards/kinesis/stapelberg/Makefile @@ -0,0 +1,3 @@ +ifndef MAKEFILE_INCLUDED + include ../../../Makefile +endif diff --git a/keyboards/kinesis/stapelberg/config.h b/keyboards/kinesis/stapelberg/config.h new file mode 100644 index 000000000..0677e0ade --- /dev/null +++ b/keyboards/kinesis/stapelberg/config.h @@ -0,0 +1,50 @@ +#ifndef STAPELBERG_CONFIG_H +#define STAPELBERG_CONFIG_H + +#include "../config.h" + +/* USB Device descriptor parameter */ +#define PRODUCT_ID 0x6060 +#define DEVICE_VER 0x0002 + +/* key matrix size */ +#define MATRIX_ROWS 15 +#define MATRIX_COLS 7 + +/* + * Keyboard Matrix Assignments + * + * Change this to how you wired your keyboard + * COLS: AVR pins used for columns, left to right + * ROWS: AVR pins used for rows, top to bottom + * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) + * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) + * +*/ +#define MATRIX_ROW_PINS { D0, D1, D2, D3, D4, D5, D6, D7, C0, C1, C2, C3, C4, C5, C6 } +#define MATRIX_COL_PINS { B0, B1, B2, B3, B4, B5, B6 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCING_DELAY 5 + +/* don't know if this should be defined at the board or top level. Assuming board +#define MOUSEKEY_DELAY 100 +#define MOUSEKEY_INTERVAL 20 +#define MOUSEKEY_MAX_SPEED 3 +#define MOUSEKEY_TIME_TO_MAX 10 +*/ + +#define IGNORE_MOD_TAP_INTERRUPT + +/* key combination for magic key command */ +#define IS_COMMAND() ( \ + keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ +) + + +#endif diff --git a/keyboards/kinesis/stapelberg/images/controller_board.jpg b/keyboards/kinesis/stapelberg/images/controller_board.jpg new file mode 100644 index 000000000..b18f76f7e Binary files /dev/null and b/keyboards/kinesis/stapelberg/images/controller_board.jpg differ diff --git a/keyboards/kinesis/stapelberg/images/exterior_reset.jpg b/keyboards/kinesis/stapelberg/images/exterior_reset.jpg new file mode 100644 index 000000000..6edda8130 Binary files /dev/null and b/keyboards/kinesis/stapelberg/images/exterior_reset.jpg differ diff --git a/keyboards/kinesis/stapelberg/images/teensy_detail.jpg b/keyboards/kinesis/stapelberg/images/teensy_detail.jpg new file mode 100644 index 000000000..12e6c1c8a Binary files /dev/null and b/keyboards/kinesis/stapelberg/images/teensy_detail.jpg differ diff --git a/keyboards/kinesis/stapelberg/readme.md b/keyboards/kinesis/stapelberg/readme.md new file mode 100644 index 000000000..b04a0bd49 --- /dev/null +++ b/keyboards/kinesis/stapelberg/readme.md @@ -0,0 +1,55 @@ +# kinesis_stapelberg keyboard firmware + +This folder contains the firmware customization required to run QMK on the custom controller for the Kinesis Advantage created by Michael Stapelberg. +It differs from the `alvicstep keyboard in that the existing QMK Kinesis Advantage project uses the existing controller board provided by Kinesis. + +The controller board hardware is described +[here](http://michael.stapelberg.de/Artikel/kinesis_custom_controller) + +Mapping the pin assignments was done using the corresponding matrix description provided at this +[link](https://github.com/stapelberg/kinesis-firmware/blob/master/kb_kinesis/config.kspec) + +This code makes no attempt to drive the four LEDs provided on the controller board. + + +## Building the Hardware + +If you want to perform this customization, these parts may be helpful. + +| Function | Quantity | Vendor | Part Number | +| ------------------------------------------------------ | -------- | ------- | ------------ | +| 13 pin connector for function keys and finger keywells | 4 | Digi-Key | WM14526-ND | +| 10 pin headers for thumb clusters | 4 | Digi-Key | 609-3250-ND | +| 8 pin cable for thumb clusters | 2 | Digi-Key | SAM8928-ND | +| Teensy++ 2.0 | 1 | Digi-Key | 1528-1056-ND | +| 2 pin right angle header for reset | 1 | Digi-Key | 3M9467-ND | +| Reset cables | 2 | Sparkfun | PRT-09140 | + +The board and connections are shown here +![](images/controller_board.jpg) + +The Teensy mounting detail can be seen here. +I used a socket for prototyping. +![](images/teensy_detail.jpg) + + +Since the proper mounting of the Teensy board places the reset button in a tight space, I added a 2-pin header to the reset and ground pins on the edge of the board. +Shorting these two pins together will reset the board. +I also put female to male header jumper cables on these so they could be accessed outside the enclosure. +The exterior cables can be seen here. +![](images/exterior_reset.jpg) + + +## Keymaps + +### Default + +To build with the default keymap, run `make default` while in the +`kinesis_stapelberg` working directory. + +### Dvorak + +This keymap contains a dvorak implementation as well as media and symbol layers. + +Run `make dvorak` while in the `kinesis_stapelberg` working directory. + diff --git a/keyboards/kinesis/stapelberg/rules.mk b/keyboards/kinesis/stapelberg/rules.mk new file mode 100644 index 000000000..fb421a34f --- /dev/null +++ b/keyboards/kinesis/stapelberg/rules.mk @@ -0,0 +1,10 @@ +ifndef QUANTUM_DIR + include ../../../Makefile +endif + +# just silently stop, since we need to upload with teensy uploader +upload: build + + + + diff --git a/keyboards/kinesis/stapelberg/stapelberg.c b/keyboards/kinesis/stapelberg/stapelberg.c new file mode 100644 index 000000000..111db81fe --- /dev/null +++ b/keyboards/kinesis/stapelberg/stapelberg.c @@ -0,0 +1,28 @@ +#include "stapelberg.h" + +void matrix_init_kb(void) { + // put your keyboard start-up code here + // runs once when the firmware starts up + + matrix_init_user(); +} + +void matrix_scan_kb(void) { + // put your looping keyboard code here + // runs every cycle (a lot) + + matrix_scan_user(); +} + +bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + // put your per-action keyboard code here + // runs for every action, just before processing by the firmware + + return process_record_user(keycode, record); +} + +void led_set_kb(uint8_t usb_led) { + // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here + + led_set_user(usb_led); +} diff --git a/keyboards/kinesis/stapelberg/stapelberg.h b/keyboards/kinesis/stapelberg/stapelberg.h new file mode 100644 index 000000000..c90fc3d52 --- /dev/null +++ b/keyboards/kinesis/stapelberg/stapelberg.h @@ -0,0 +1,72 @@ +#ifndef KINESIS_STAPELBERG_H +#define KINESIS_STAPELBERG_H + +#include "quantum.h" + +// This a shortcut to help you visually see your layout. +// The first section contains all of the arguments as on the physical keyboard +// The second converts the arguments into the 2-D scanned array + +#define KEYMAP( \ + kC0,kD0,kE0,kC1,kD1,kE1,kC2,kD2,kE2, \ + k00,k10,k20,k30,k40,k50, \ + k01,k11,k21,k31,k41,k51, \ + k02,k12,k22,k32,k42,k52, \ + k03,k13,k23,k33,k43,k53, \ + k14,k24,k34,k54, \ + k56,k55, \ + k35, \ + k36,k46,k25, \ + kC3,kD3,kE3,kC4,kD4,kE4,kC5,kE5,kD5, \ + k60,k70,k80,k90,kA0,kB0, \ + k61,k71,k81,k91,kA1,kB1, \ + k62,k72,k82,k92,kA2,kB2, \ + k63,k73,k83,k93,kA3,kB3, \ + k64,k84,k94,kA4, \ + k96,k85, \ + k86, \ + k66,k75,k65 \ +) { \ + { k00, k01, k02, k03, KC_NO, KC_NO, KC_NO }, \ + { k10, k11, k12, k13, k14, KC_NO, KC_NO }, \ + { k20, k21, k22, k23, k24, k25, KC_NO }, \ + { k30, k31, k32, k33, k34, k35, k36 }, \ + { k40, k41, k42, k43, KC_NO, KC_NO, k46 }, \ + { k50, k51, k52, k53, k54, k55, k56 }, \ + { k60, k61, k62, k63, k64, k65, k66 }, \ + { k70, k71, k72, k73, KC_NO, k75, KC_NO }, \ + { k80, k81, k82, k83, k84, k85, k86 }, \ + { k90, k91, k92, k93, k94, KC_NO, k96 }, \ + { kA0, kA1, kA2, kA3, kA4, KC_NO, KC_NO }, \ + { kB0, kB1, kB2, kB3, KC_NO, KC_NO, KC_NO }, \ + { kC0, kC1, kC2, kC3, kC4, kC5, KC_NO }, \ + { kD0, kD1, kD2, kD3, kD4, kD5, KC_NO }, \ + { kE0, kE1, kE2, kE3, kE4, kE5, KC_NO } \ +} + +/* +This is the Stapelberg matrix as published at +https://github.com/stapelberg/kinesis-firmware/blob/master/kb_kinesis/config.kspec +Along with the pins for each row and column + PB0 PB1 PB2 PB3 PB4 PB5 PB6 + kx0 kx1 kx2 kx3 kx4 kx5 kx6 +PD0 k0x Row: EQL TAB CAP LSH X2 -- -- +PD1 k1x Row: 1 Q A Z BQ -- -- +PD2 k2x Row: 2 W S X INS END -- +PD3 k3x Row: 3 E D C LFT HOM BAK +PD4 k4x Row: 4 R F V -- -- DEL +PD5 k5x Row: 5 T G B RT LAL LCT +PD6 k6x Row: 6 Y H N UP SPC PGD +PD7 k7x Row: 7 U J M -- RET -- +PB0 k8x Row: 8 I K COM DWN RCT PGU +PB1 k9x Row: 9 O L PER LBR -- RAL +PB2 kAx Row: 0 P SEM SLA RBR -- -- +PB3 kBx Row: MIN BSL APO RSH X1 -- -- +PB4 kCx Row: ESC F3 F6 F9 F12 PAU -- +PB5 kDx Row: F1 F4 F7 F10 PRT PRG -- +PB6 kEx Row: F2 F5 F8 F11 SLK KEY -- +*/ + + + +#endif -- cgit v1.2.3-24-g4f1b From 62f1c13c3ad56e1a3fd90328355c57a4b1b61c6a Mon Sep 17 00:00:00 2001 From: milestogo Date: Sun, 8 Jan 2017 22:17:47 -0800 Subject: trying to clean up duplicate docs --- .../alvicstep/docs/docs/kicad/kinesis-cache.lib | 232 -------- .../kinesis/alvicstep/docs/docs/kicad/kinesis.pro | 83 --- .../kinesis/alvicstep/docs/docs/kicad/kinesis.sch | 634 --------------------- .../alvicstep/docs/docs/photos/P1050573.jpg | Bin 177711 -> 0 bytes .../alvicstep/docs/docs/photos/P1050574.jpg | Bin 343978 -> 0 bytes .../alvicstep/docs/docs/photos/P1050575.jpg | Bin 266771 -> 0 bytes keyboards/kinesis/alvicstep/docs/docs/readme.txt | 52 -- .../kinesis/alvicstep/docs/docs/schematic.png | Bin 175014 -> 0 bytes 8 files changed, 1001 deletions(-) delete mode 100644 keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis-cache.lib delete mode 100644 keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.pro delete mode 100644 keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.sch delete mode 100644 keyboards/kinesis/alvicstep/docs/docs/photos/P1050573.jpg delete mode 100644 keyboards/kinesis/alvicstep/docs/docs/photos/P1050574.jpg delete mode 100644 keyboards/kinesis/alvicstep/docs/docs/photos/P1050575.jpg delete mode 100644 keyboards/kinesis/alvicstep/docs/docs/readme.txt delete mode 100644 keyboards/kinesis/alvicstep/docs/docs/schematic.png (limited to 'keyboards') diff --git a/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis-cache.lib b/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis-cache.lib deleted file mode 100644 index f798d39d6..000000000 --- a/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis-cache.lib +++ /dev/null @@ -1,232 +0,0 @@ -EESchema-LIBRARY Version 2.3 Date: Wednesday, November 12, 2014 'pmt' 10:15:19 pm -#encoding utf-8 -# -# AT90S4414-P -# -DEF AT90S4414-P IC 0 40 Y Y 1 F N -F0 "IC" -850 1880 40 H V L BNN -F1 "AT90S4414-P" 450 -1950 40 H V L BNN -F2 "DIL40" 0 0 30 H V C CIN -F3 "~" 0 0 60 H V C CNN -ALIAS AT90S8515-P -$FPLIST - 40DIP-ELL600 - 40dip600 -$ENDFPLIST -DRAW -S -850 1850 850 -1850 0 1 10 f -X (T0)PB0 1 1000 700 150 L 40 40 1 1 B -X (T1)PB1 2 1000 600 150 L 40 40 1 1 B -X (AIN0)PB2 3 1000 500 150 L 40 40 1 1 B -X (AIN1)PB3 4 1000 400 150 L 40 40 1 1 B -X (~SS~)PB4 5 1000 300 150 L 40 40 1 1 B -X (MOSI)PB5 6 1000 200 150 L 40 40 1 1 B -X (MISO)PB6 7 1000 100 150 L 40 40 1 1 B -X (SCK)PB7 8 1000 0 150 L 40 40 1 1 B -X ~RESET 9 -1000 1700 150 R 40 40 1 1 I -X (RXD)PD0 10 1000 -1000 150 L 40 40 1 1 B -X GND 20 0 -2000 150 U 40 40 1 1 W -X ALE 30 1000 850 150 L 40 40 1 1 O -X VCC 40 0 2000 150 D 40 40 1 1 W -X (TXD)PD1 11 1000 -1100 150 L 40 40 1 1 B -X (A8)PC0 21 1000 -150 150 L 40 40 1 1 B -X ICP 31 -1000 -1400 150 R 40 40 1 1 I -X (INT0)PD2 12 1000 -1200 150 L 40 40 1 1 B -X (A9)PC1 22 1000 -250 150 L 40 40 1 1 B -X (AD7)PA7 32 1000 1000 150 L 40 40 1 1 B -X (INT1)PD3 13 1000 -1300 150 L 40 40 1 1 B -X (A10)PC2 23 1000 -350 150 L 40 40 1 1 B -X (AD6)PA6 33 1000 1100 150 L 40 40 1 1 B -X PD4 14 1000 -1400 150 L 40 40 1 1 B -X (A11)PC3 24 1000 -450 150 L 40 40 1 1 B -X (AD5)PA5 34 1000 1200 150 L 40 40 1 1 B -X (OC1A)PD5 15 1000 -1500 150 L 40 40 1 1 B -X (A12)PC4 25 1000 -550 150 L 40 40 1 1 B -X (AD4)PA4 35 1000 1300 150 L 40 40 1 1 B -X (~WR~)PD6 16 1000 -1600 150 L 40 40 1 1 B -X (A13)PC5 26 1000 -650 150 L 40 40 1 1 B -X (AD3)PA3 36 1000 1400 150 L 40 40 1 1 B -X (~RD~)PD7 17 1000 -1700 150 L 40 40 1 1 B -X (A14)PC6 27 1000 -750 150 L 40 40 1 1 B -X (AD2)PA2 37 1000 1500 150 L 40 40 1 1 B -X XTAL2 18 -1000 1200 150 R 40 40 1 1 B -X (A15)PC7 28 1000 -850 150 L 40 40 1 1 B -X (AD1)PA1 38 1000 1600 150 L 40 40 1 1 B -X XTAL1 19 -1000 800 150 R 40 40 1 1 B -X OC1B 29 -1000 -1500 150 R 40 40 1 1 W -X (AD0)PA0 39 1000 1700 150 L 40 40 1 1 B -ENDDRAW -ENDDEF -# -# ATMEGA16U4-A -# -DEF ATMEGA16U4-A U 0 40 Y Y 1 F N -F0 "U" -950 1700 40 H V C CNN -F1 "ATMEGA16U4-A" 700 -1500 40 H V C CNN -F2 "TQFP44" 0 0 35 H V C CIN -F3 "~" 1100 1100 60 H V C CNN -ALIAS ATMEGA16U4RC-A ATMEGA32U4-A ATMEGA32U4RC-A -$FPLIST - TQFP44 -$ENDFPLIST -DRAW -S -1000 1650 950 -1450 0 1 10 f -X (INT6/AIN0)PE6 1 1100 -650 150 L 40 40 1 1 B -X UVCC 2 -450 1800 150 D 40 40 1 1 W -X D- 3 -1150 100 150 R 40 40 1 1 B -X D+ 4 -1150 200 150 R 40 40 1 1 B -X UGND 5 -400 -1600 150 U 40 40 1 1 P -X UCAP 6 -1150 -50 150 R 40 40 1 1 P -X VBUS 7 -1150 350 150 R 40 40 1 1 P -X (SS/PCINT0)PB0 8 1100 1550 150 L 40 40 1 1 B -X (SCLK/PCINT1)PB1 9 1100 1450 150 L 40 40 1 1 B -X (PDI/MOSI/PCINT2)PB2 10 1100 1350 150 L 40 40 1 1 B -X (RXD/INT2)PD2 20 1100 150 150 L 40 40 1 1 B -X (ADC13/OC1B/OC4B/PCINT13)PB6 30 1100 950 150 L 40 40 1 1 B -X (ADC1)PF1 40 1100 -950 150 L 40 40 1 1 B -X (PDO/MISO/PCINT3)PB3 11 1100 1250 150 L 40 40 1 1 B -X (TXD/INT3)PD3 21 1100 50 150 L 40 40 1 1 B -X (OC3A/~OC4A~)PC6 31 1100 650 150 L 40 40 1 1 B -X (ADC0)PF0 41 1100 -850 150 L 40 40 1 1 B -X (OC0A/OC1C/~RTS~/PCINT7)PB7 12 1100 850 150 L 40 40 1 1 B -X (XCK1/~CTS~)PD5 22 1100 -150 150 L 40 40 1 1 B -X (ICP3/CLK0/OC4A)PC7 32 1100 550 150 L 40 40 1 1 B -X AREF 42 -1150 -850 150 R 40 40 1 1 P -X ~RESET~ 13 -1150 1550 150 R 40 40 1 1 I -X GND 23 -50 -1600 150 U 40 40 1 1 W -X (~HWB~)PE2 33 1100 -550 150 L 40 40 1 1 B -X GND 43 150 -1600 150 U 40 40 1 1 W -X VCC 14 -200 1800 150 D 40 40 1 1 W -X AVCC 24 150 1800 150 D 40 40 1 1 W -X VCC 34 -100 1800 150 D 40 40 1 1 W -X AVCC 44 250 1800 150 D 40 40 1 1 W -X GND 15 -150 -1600 150 U 40 40 1 1 W -X (ICP2/ADC8)PD4 25 1100 -50 150 L 40 40 1 1 B -X GND 35 50 -1600 150 U 40 40 1 1 W -X XTAL2 16 -1150 950 150 R 40 40 1 1 O -X (T1/~OC4D~/ADC9)PD6 26 1100 -250 150 L 40 40 1 1 B -X (ADC7/TDI)PF7 36 1100 -1350 150 L 40 40 1 1 B -X XTAL1 17 -1150 1150 150 R 40 40 1 1 I -X (T0/OC4D/ADC10)PD7 27 1100 -350 150 L 40 40 1 1 B -X (ADC6/TDO)PF6 37 1100 -1250 150 L 40 40 1 1 B -X (OC0B/SCL/INT0)PD0 18 1100 350 150 L 40 40 1 1 B -X (ADC11/PCINT4)PB4 28 1100 1150 150 L 40 40 1 1 B -X (ADC5/TMS)PF5 38 1100 -1150 150 L 40 40 1 1 B -X (SDA/INT1)PD1 19 1100 250 150 L 40 40 1 1 B -X (ADC12/OC1A/~OC4B~/PCINT12)PB5 29 1100 1050 150 L 40 40 1 1 B -X (ADC4/TCK)PF4 39 1100 -1050 150 L 40 40 1 1 B -ENDDRAW -ENDDEF -# -# C -# -DEF C C 0 10 N Y 1 F N -F0 "C" 0 100 40 H V L CNN -F1 "C" 6 -85 40 H V L CNN -F2 "~" 38 -150 30 H V C CNN -F3 "~" 0 0 60 H V C CNN -$FPLIST - SM* - C? - C1-1 -$ENDFPLIST -DRAW -P 2 0 1 20 -80 -30 80 -30 N -P 2 0 1 20 -80 30 80 30 N -X ~ 1 0 200 170 D 40 40 1 1 P -X ~ 2 0 -200 170 U 40 40 1 1 P -ENDDRAW -ENDDEF -# -# CONN_7 -# -DEF CONN_7 P 0 40 Y N 1 F N -F0 "P" -30 0 60 V V C CNN -F1 "CONN_7" 70 0 60 V V C CNN -F2 "~" 0 0 60 H V C CNN -F3 "~" 0 0 60 H V C CNN -DRAW -S -100 350 150 -350 0 1 0 N -X P1 1 -350 300 250 R 50 50 1 1 P I -X P2 2 -350 200 250 R 50 50 1 1 P I -X P3 3 -350 100 250 R 50 50 1 1 P I -X P4 4 -350 0 250 R 50 50 1 1 P I -X P5 5 -350 -100 250 R 50 50 1 1 P I -X P6 6 -350 -200 250 R 50 50 1 1 P I -X P7 7 -350 -300 250 R 50 50 1 1 P I -ENDDRAW -ENDDEF -# -# GND -# -DEF ~GND #PWR 0 0 Y Y 1 F P -F0 "#PWR" 0 0 30 H I C CNN -F1 "GND" 0 -70 30 H I C CNN -F2 "~" 0 0 60 H V C CNN -F3 "~" 0 0 60 H V C CNN -DRAW -P 4 0 1 0 -50 0 0 -50 50 0 -50 0 N -X GND 1 0 0 0 U 30 30 1 1 W N -ENDDRAW -ENDDEF -# -# R -# -DEF R R 0 0 N Y 1 F N -F0 "R" 80 0 40 V V C CNN -F1 "R" 7 1 40 V V C CNN -F2 "~" -70 0 30 V V C CNN -F3 "~" 0 0 30 H V C CNN -$FPLIST - R? - SM0603 - SM0805 - R?-* - SM1206 -$ENDFPLIST -DRAW -S -40 150 40 -150 0 1 12 N -X ~ 1 0 250 100 D 60 60 1 1 P -X ~ 2 0 -250 100 U 60 60 1 1 P -ENDDRAW -ENDDEF -# -# USB-MINI-B -# -DEF USB-MINI-B CON 0 40 Y Y 1 F N -F0 "CON" -250 450 60 H V C CNN -F1 "USB-MINI-B" -50 -500 60 H V C CNN -F2 "~" 0 0 60 H V C CNN -F3 "~" 0 0 60 H V C CNN -$FPLIST - USB-Mini-B-Jack -$ENDFPLIST -DRAW -S -350 400 350 -400 0 1 0 N -X VBUS 1 -550 300 200 R 50 50 1 1 W -X D- 2 -550 150 200 R 50 50 1 1 B -X D+ 3 -550 0 200 R 50 50 1 1 B -X ID 4 -550 -150 200 R 50 50 1 1 B -X GND 5 -550 -300 200 R 50 50 1 1 W -X SHELL1 6 550 300 200 L 50 50 1 1 B -X SHELL2 7 550 150 200 L 50 50 1 1 B -X SHELL3 8 550 -150 200 L 50 50 1 1 B -X SHELL4 9 550 -300 200 L 50 50 1 1 B -ENDDRAW -ENDDEF -# -# VCC -# -DEF VCC #PWR 0 0 Y Y 1 F P -F0 "#PWR" 0 100 30 H I C CNN -F1 "VCC" 0 100 30 H V C CNN -F2 "~" 0 0 60 H V C CNN -F3 "~" 0 0 60 H V C CNN -DRAW -X VCC 1 0 0 0 U 20 20 0 0 W N -C 0 50 20 0 1 0 N -P 3 0 1 0 0 0 0 30 0 30 N -ENDDRAW -ENDDEF -# -#End Library diff --git a/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.pro b/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.pro deleted file mode 100644 index 9f130b509..000000000 --- a/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.pro +++ /dev/null @@ -1,83 +0,0 @@ -update=Wednesday, November 05, 2014 'pmt' 12:08:47 pm -version=1 -last_client=pcbnew -[cvpcb] -version=1 -NetIExt=net -[cvpcb/libraries] -EquName1=devcms -[general] -version=1 -[eeschema] -version=1 -PageLayoutDescrFile= -SubpartIdSeparator=0 -SubpartFirstId=65 -LibDir=../../../lib/kicad/library -NetFmtName= -RptD_X=0 -RptD_Y=100 -RptLab=1 -LabSize=60 -[eeschema/libraries] -LibName1=power -LibName2=device -LibName3=transistors -LibName4=conn -LibName5=linear -LibName6=regul -LibName7=74xx -LibName8=cmos4000 -LibName9=adc-dac -LibName10=memory -LibName11=xilinx -LibName12=special -LibName13=microcontrollers -LibName14=dsp -LibName15=microchip -LibName16=analog_switches -LibName17=motorola -LibName18=texas -LibName19=intel -LibName20=audio -LibName21=interface -LibName22=digital-audio -LibName23=philips -LibName24=display -LibName25=cypress -LibName26=siliconi -LibName27=opto -LibName28=atmel -LibName29=contrib -LibName30=valves -LibName31=custom -[pcbnew] -version=1 -LastNetListRead= -UseCmpFile=1 -PadDrill=1.016000000000 -PadDrillOvalY=1.016000000000 -PadSizeH=1.524000000000 -PadSizeV=1.524000000000 -PcbTextSizeV=1.500000000000 -PcbTextSizeH=1.500000000000 -PcbTextThickness=0.300000000000 -ModuleTextSizeV=1.000000000000 -ModuleTextSizeH=1.000000000000 -ModuleTextSizeThickness=0.150000000000 -SolderMaskClearance=0.000000000000 -SolderMaskMinWidth=0.000000000000 -DrawSegmentWidth=0.200000000000 -BoardOutlineThickness=0.100000000000 -ModuleOutlineThickness=0.150000000000 -[pcbnew/libraries] -LibDir=../../../lib/kicad/modules -LibName1=custom -LibName2=Sockets -LibName3=Connect -LibName4=Discret -LibName5=Divers -LibName6=Display -LibName7=LEDs -LibName8=SMD_Packages -LibName9=Sockets_DIP diff --git a/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.sch b/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.sch deleted file mode 100644 index f75335aa0..000000000 --- a/keyboards/kinesis/alvicstep/docs/docs/kicad/kinesis.sch +++ /dev/null @@ -1,634 +0,0 @@ -EESchema Schematic File Version 2 -LIBS:power -LIBS:device -LIBS:transistors -LIBS:conn -LIBS:linear -LIBS:regul -LIBS:74xx -LIBS:cmos4000 -LIBS:adc-dac -LIBS:memory -LIBS:xilinx -LIBS:special -LIBS:microcontrollers -LIBS:dsp -LIBS:microchip -LIBS:analog_switches -LIBS:motorola -LIBS:texas -LIBS:intel -LIBS:audio -LIBS:interface -LIBS:digital-audio -LIBS:philips -LIBS:display -LIBS:cypress -LIBS:siliconi -LIBS:opto -LIBS:atmel -LIBS:contrib -LIBS:valves -LIBS:custom -LIBS:kinesis-cache -EELAYER 27 0 -EELAYER END -$Descr A4 11693 8268 -encoding utf-8 -Sheet 1 1 -Title "" -Date "13 nov 2014" -Rev "" -Comp "" -Comment1 "" -Comment2 "" -Comment3 "" -Comment4 "" -$EndDescr -$Comp -L C C4 -U 1 1 545804FB -P 2850 4250 -F 0 "C4" H 2850 4350 40 0000 L CNN -F 1 "1uF" H 2856 4165 40 0000 L CNN -F 2 "~" H 2888 4100 30 0000 C CNN -F 3 "~" H 2850 4250 60 0000 C CNN - 1 2850 4250 - -1 0 0 1 -$EndComp -$Comp -L R R3 -U 1 1 545805E8 -P 2500 4000 -F 0 "R3" V 2580 4000 40 0000 C CNN -F 1 "22" V 2507 4001 40 0000 C CNN -F 2 "~" V 2430 4000 30 0000 C CNN -F 3 "~" H 2500 4000 30 0000 C CNN - 1 2500 4000 - 0 -1 -1 0 -$EndComp -$Comp -L R R2 -U 1 1 545805FA -P 2500 3800 -F 0 "R2" V 2580 3800 40 0000 C CNN -F 1 "22" V 2507 3801 40 0000 C CNN -F 2 "~" V 2430 3800 30 0000 C CNN -F 3 "~" H 2500 3800 30 0000 C CNN - 1 2500 3800 - 0 -1 -1 0 -$EndComp -Entry Wire Line - 6450 2450 6550 2550 -Entry Wire Line - 6450 2550 6550 2650 -Entry Wire Line - 6450 2650 6550 2750 -Entry Wire Line - 6450 2750 6550 2850 -Entry Wire Line - 6450 2950 6550 3050 -Entry Wire Line - 6450 3050 6550 3150 -Entry Wire Line - 6450 2850 6550 2950 -Entry Wire Line - 6450 3150 6550 3250 -Wire Wire Line - 10250 1800 10750 1800 -Entry Wire Line - 10750 1800 10850 1900 -Entry Wire Line - 10750 1900 10850 2000 -Entry Wire Line - 10750 2000 10850 2100 -Entry Wire Line - 10750 2800 10850 2900 -Entry Wire Line - 10750 2900 10850 3000 -Entry Wire Line - 10750 3000 10850 3100 -Entry Wire Line - 10750 3100 10850 3200 -Entry Wire Line - 10750 3200 10850 3300 -Entry Wire Line - 10750 3300 10850 3400 -$Comp -L AT90S8515-P IC2 -U 1 1 545A62EA -P 9250 3500 -F 0 "IC2" H 8400 5380 40 0000 L BNN -F 1 "AT90S8515-P" H 9700 1550 40 0000 L BNN -F 2 "DIL40" H 9250 3500 30 0000 C CIN -F 3 "" H 9250 3500 60 0000 C CNN - 1 9250 3500 - 1 0 0 -1 -$EndComp -NoConn ~ 10250 2650 -Entry Wire Line - 10750 3650 10850 3750 -Entry Wire Line - 10750 3750 10850 3850 -Entry Wire Line - 10750 3850 10850 3950 -Entry Wire Line - 10750 3950 10850 4050 -Entry Wire Line - 10750 4050 10850 4150 -Entry Wire Line - 10750 4150 10850 4250 -Entry Wire Line - 10750 4350 10850 4450 -Entry Wire Line - 10750 4250 10850 4350 -NoConn ~ 8250 4900 -NoConn ~ 8250 5000 -NoConn ~ 8250 1800 -Wire Wire Line - 10250 1900 10750 1900 -Wire Wire Line - 10250 2000 10750 2000 -Wire Wire Line - 10250 2100 10750 2100 -Wire Wire Line - 10250 2200 10750 2200 -Wire Wire Line - 10250 2300 10750 2300 -Wire Wire Line - 10250 2400 10750 2400 -Wire Wire Line - 10250 2500 10750 2500 -Text Label 10350 1800 0 60 ~ 0 -A -Text Label 10350 1900 0 60 ~ 0 -B -Text Label 10350 2000 0 60 ~ 0 -C -Text Label 10350 2100 0 60 ~ 0 -G -Wire Wire Line - 10250 2800 10750 2800 -Wire Wire Line - 10250 2900 10750 2900 -Wire Wire Line - 10250 3000 10750 3000 -Wire Wire Line - 10250 3100 10750 3100 -Wire Wire Line - 10250 3200 10750 3200 -Wire Wire Line - 10250 3300 10750 3300 -Wire Wire Line - 10250 3400 10750 3400 -Wire Wire Line - 10250 3500 10750 3500 -Text Label 10350 2800 0 60 ~ 0 -DL2 -Text Label 10350 2900 0 60 ~ 0 -DR1 -Text Label 10350 3000 0 60 ~ 0 -DR2 -Text Label 10350 3100 0 60 ~ 0 -DL1 -Text Label 10350 3400 0 60 ~ 0 -SCL -Text Label 10350 3500 0 60 ~ 0 -SDA -Wire Wire Line - 10250 3650 10750 3650 -Wire Wire Line - 10250 3750 10750 3750 -Wire Wire Line - 10250 3850 10750 3850 -Wire Wire Line - 10250 3950 10750 3950 -Wire Wire Line - 10250 4050 10750 4050 -Wire Wire Line - 10250 4150 10750 4150 -Wire Wire Line - 10250 4250 10750 4250 -Wire Wire Line - 10250 4350 10750 4350 -Text Label 10350 3650 0 60 ~ 0 -R1 -Text Label 10350 3750 0 60 ~ 0 -R2 -Text Label 10350 3850 0 60 ~ 0 -R3 -Text Label 10350 3950 0 60 ~ 0 -R4 -Text Label 10350 4050 0 60 ~ 0 -R5 -Text Label 10350 4150 0 60 ~ 0 -R6 -Text Label 10350 4250 0 60 ~ 0 -R7 -Text Label 10350 4350 0 60 ~ 0 -R8 -Wire Wire Line - 10250 4500 10750 4500 -Wire Wire Line - 10250 4600 10750 4600 -Wire Wire Line - 10250 4700 10750 4700 -Wire Wire Line - 10250 4800 10750 4800 -Wire Wire Line - 10250 4900 10750 4900 -Wire Wire Line - 10250 5000 10750 5000 -Wire Wire Line - 10250 5100 10750 5100 -Wire Wire Line - 10250 5200 10750 5200 -Text Label 10350 4600 0 60 ~ 0 -FS1 -Text Label 10350 5000 0 60 ~ 0 -FS3 -Text Label 10350 5200 0 60 ~ 0 -FS2 -$Comp -L GND #PWR01 -U 1 1 545A7377 -P 9250 5600 -F 0 "#PWR01" H 9250 5600 30 0001 C CNN -F 1 "GND" H 9250 5530 30 0001 C CNN -F 2 "" H 9250 5600 60 0000 C CNN -F 3 "" H 9250 5600 60 0000 C CNN - 1 9250 5600 - 1 0 0 -1 -$EndComp -Wire Wire Line - 9250 5500 9250 5600 -Text Label 10350 4700 0 60 ~ 0 -CLOCK -Text Label 10350 4800 0 60 ~ 0 -DATA -NoConn ~ 10750 4700 -NoConn ~ 10750 4800 -Text Label 10350 3200 0 60 ~ 0 -KP -Text Label 10350 3300 0 60 ~ 0 -PGM -Text Label 10350 2500 0 60 ~ 0 -BUZZ -NoConn ~ 8250 2300 -NoConn ~ 8250 2700 -$Comp -L GND #PWR02 -U 1 1 545A7565 -P 4750 5700 -F 0 "#PWR02" H 4750 5700 30 0001 C CNN -F 1 "GND" H 4750 5630 30 0001 C CNN -F 2 "" H 4750 5700 60 0000 C CNN -F 3 "" H 4750 5700 60 0000 C CNN - 1 4750 5700 - 1 0 0 -1 -$EndComp -Entry Wire Line - 6450 3650 6550 3750 -Entry Wire Line - 6450 3750 6550 3850 -Entry Wire Line - 6450 4150 6550 4250 -Entry Wire Line - 6450 4250 6550 4350 -Entry Wire Line - 6450 4050 6550 4150 -Entry Wire Line - 6450 4350 6550 4450 -NoConn ~ 3750 2850 -Wire Wire Line - 1200 2000 6450 2000 -NoConn ~ 3750 3050 -Wire Wire Line - 2750 3800 3750 3800 -Wire Wire Line - 2750 3900 3750 3900 -Wire Wire Line - 2750 3900 2750 4000 -Wire Bus Line - 6550 2100 6550 6050 -Wire Bus Line - 10850 1600 10850 6050 -Text Label 6050 4350 0 60 ~ 0 -DL1 -Text Label 6050 4250 0 60 ~ 0 -DR2 -Text Label 6050 4150 0 60 ~ 0 -DR1 -Text Label 6050 4050 0 60 ~ 0 -DL2 -Text Label 6050 2450 0 60 ~ 0 -R1 -Text Label 6050 2550 0 60 ~ 0 -R2 -Text Label 6050 2650 0 60 ~ 0 -R3 -Text Label 6050 2750 0 60 ~ 0 -R4 -Text Label 6050 2850 0 60 ~ 0 -R5 -Text Label 6050 2950 0 60 ~ 0 -R6 -Text Label 6050 3050 0 60 ~ 0 -R7 -Text Label 6050 3150 0 60 ~ 0 -R8 -Text Label 6050 5050 0 60 ~ 0 -A -Text Label 6050 5150 0 60 ~ 0 -B -Text Label 6050 5250 0 60 ~ 0 -C -Text Label 6050 5350 0 60 ~ 0 -G -Text Label 1300 3800 0 60 ~ 0 -D+ -Text Label 1300 4000 0 60 ~ 0 -D- -NoConn ~ 10750 2200 -NoConn ~ 10750 2300 -NoConn ~ 10750 2400 -Text Label 10350 4500 0 60 ~ 0 -GND -NoConn ~ 10750 4900 -NoConn ~ 10750 5100 -Text Label 6050 3450 0 60 ~ 0 -KP -Text Label 6050 3350 0 60 ~ 0 -PGM -$Comp -L ATMEGA32U4-A U1 -U 1 1 5462E0B1 -P 4900 4000 -F 0 "U1" H 3950 5700 40 0000 C CNN -F 1 "ATMEGA32U4-A" H 5600 2500 40 0000 C CNN -F 2 "TQFP44" H 4900 4000 35 0000 C CIN -F 3 "" H 6000 5100 60 0000 C CNN - 1 4900 4000 - 1 0 0 -1 -$EndComp -Wire Wire Line - 3750 4850 3750 5600 -Wire Wire Line - 4450 2200 5150 2200 -Connection ~ 4700 2200 -Connection ~ 4800 2200 -Connection ~ 5050 2200 -Connection ~ 4800 2000 -Wire Wire Line - 6000 2450 6450 2450 -Wire Wire Line - 6000 2550 6450 2550 -Wire Wire Line - 6000 2650 6450 2650 -Wire Wire Line - 6000 2750 6450 2750 -Wire Wire Line - 6000 2850 6450 2850 -Wire Wire Line - 6000 2950 6450 2950 -Wire Wire Line - 6000 3050 6450 3050 -Wire Wire Line - 6000 3150 6450 3150 -Wire Wire Line - 6000 5050 6450 5050 -Wire Wire Line - 6000 5150 6450 5150 -Wire Wire Line - 6000 5250 6450 5250 -Wire Wire Line - 6000 4050 6450 4050 -Wire Wire Line - 6000 4150 6450 4150 -Wire Wire Line - 6000 4250 6450 4250 -Wire Wire Line - 6000 4350 6450 4350 -Wire Wire Line - 6000 4550 6450 4550 -Entry Wire Line - 6450 3350 6550 3450 -Entry Wire Line - 6450 3450 6550 3550 -Entry Wire Line - 6450 5050 6550 5150 -Entry Wire Line - 6450 5150 6550 5250 -Entry Wire Line - 6450 5250 6550 5350 -Entry Wire Line - 6450 5350 6550 5450 -Entry Wire Line - 6450 4650 6550 4750 -Wire Wire Line - 6000 3350 6450 3350 -Wire Wire Line - 6000 3450 6450 3450 -Wire Wire Line - 1200 5600 6450 5600 -Connection ~ 4950 5600 -Connection ~ 4850 5600 -Wire Wire Line - 4750 5600 4750 5700 -Connection ~ 4750 5600 -Connection ~ 4500 5600 -Text Label 6050 4550 0 60 ~ 0 -HWB -Wire Wire Line - 6000 5350 6450 5350 -Wire Wire Line - 6000 3650 6450 3650 -Wire Wire Line - 6000 3750 6450 3750 -Text Label 6050 3650 0 60 ~ 0 -SCL -Text Label 6050 3750 0 60 ~ 0 -SDA -Wire Wire Line - 6000 3850 6450 3850 -Wire Wire Line - 6000 3950 6450 3950 -Wire Wire Line - 6000 4650 6450 4650 -Text Label 6050 4650 0 60 ~ 0 -BUZZ -NoConn ~ 10750 4600 -NoConn ~ 10750 5000 -NoConn ~ 10750 5200 -Entry Wire Line - 10750 3400 10850 3500 -Entry Wire Line - 10750 3500 10850 3600 -Entry Wire Line - 10750 4500 10850 4600 -Wire Wire Line - 2850 4050 3750 4050 -Text Label 2950 4050 0 60 ~ 0 -UCAP -Wire Wire Line - 6000 4850 6450 4850 -Wire Wire Line - 6000 4950 6450 4950 -NoConn ~ 6450 4850 -NoConn ~ 6450 4950 -NoConn ~ 6450 4550 -$Comp -L USB-MINI-B CON1 -U 1 1 546431C1 -P 2100 5050 -F 0 "CON1" H 1850 5500 60 0000 C CNN -F 1 "USB-MINI-B" H 2050 4550 60 0000 C CNN -F 2 "" H 2100 5050 60 0000 C CNN -F 3 "" H 2100 5050 60 0000 C CNN - 1 2100 5050 - 0 1 1 0 -$EndComp -$Comp -L VCC #PWR03 -U 1 1 54643698 -P 2400 4400 -F 0 "#PWR03" H 2400 4500 30 0001 C CNN -F 1 "VCC" H 2400 4500 30 0000 C CNN -F 2 "" H 2400 4400 60 0000 C CNN -F 3 "" H 2400 4400 60 0000 C CNN - 1 2400 4400 - 1 0 0 -1 -$EndComp -Text Notes 2600 2750 0 60 ~ 0 -Teensy 2.0\n(not fully drawn) -$Comp -L CONN_7 B7K-PH-K-S1 -U 1 1 54643939 -P 1950 6900 -F 0 "B7K-PH-K-S1" V 1920 6900 60 0000 C CNN -F 1 "CONN_7" V 2020 6900 60 0000 C CNN -F 2 "" H 1950 6900 60 0000 C CNN -F 3 "" H 1950 6900 60 0000 C CNN - 1 1950 6900 - 1 0 0 -1 -$EndComp -Connection ~ 3750 5600 -Connection ~ 2400 5600 -Connection ~ 2250 5600 -Connection ~ 1950 5600 -Wire Wire Line - 2400 4400 2400 4500 -Wire Wire Line - 2250 4000 2250 4500 -Wire Wire Line - 1200 3800 2250 3800 -Wire Wire Line - 2100 3800 2100 4500 -Wire Wire Line - 2850 4450 2850 5600 -Connection ~ 2850 5600 -Entry Wire Line - 1100 6800 1200 6900 -Entry Wire Line - 1100 6900 1200 7000 -Entry Wire Line - 1100 7000 1200 7100 -Entry Wire Line - 1100 6700 1200 6800 -Wire Wire Line - 1200 6600 1600 6600 -Wire Wire Line - 1200 6700 1600 6700 -Wire Wire Line - 1200 6800 1600 6800 -Wire Wire Line - 1200 6900 1600 6900 -Wire Wire Line - 1200 7000 1600 7000 -Wire Wire Line - 1200 7100 1600 7100 -Wire Wire Line - 1200 7200 1600 7200 -Text Label 1300 6600 0 60 ~ 0 -FS2 -Text Label 1300 6700 0 60 ~ 0 -FS1 -Text Label 1300 6800 0 60 ~ 0 -VCC -Text Label 1300 6900 0 60 ~ 0 -D- -Text Label 1300 7000 0 60 ~ 0 -D+ -Text Label 1300 7100 0 60 ~ 0 -GND -Text Label 1300 7200 0 60 ~ 0 -FS3 -NoConn ~ 3750 2450 -Wire Wire Line - 3600 2000 3600 3650 -Wire Wire Line - 3600 3650 3750 3650 -NoConn ~ 1950 4500 -Wire Bus Line - 1100 1900 1100 7100 -NoConn ~ 1200 6600 -NoConn ~ 1200 6700 -NoConn ~ 1200 7200 -Connection ~ 2100 3800 -Wire Wire Line - 1200 4000 2250 4000 -Entry Wire Line - 1100 3700 1200 3800 -Entry Wire Line - 1100 3900 1200 4000 -Text Label 10350 1500 0 60 ~ 0 -VCC -Entry Wire Line - 1100 1900 1200 2000 -Text Label 1250 2000 0 60 ~ 0 -VCC -Entry Wire Line - 1100 5500 1200 5600 -Connection ~ 1800 5600 -Text Label 1300 5600 0 60 ~ 0 -GND -Wire Wire Line - 9250 5500 10750 5500 -Entry Wire Line - 10750 5500 10850 5600 -Text Label 10350 5500 0 60 ~ 0 -GND -Wire Wire Line - 9250 1500 10750 1500 -Entry Wire Line - 10750 1500 10850 1600 -Connection ~ 3600 2000 -Wire Wire Line - 4800 2000 4800 2200 -Entry Wire Line - 6450 2000 6550 2100 -Text Label 6050 2000 0 60 ~ 0 -VCC -Connection ~ 5050 5600 -Entry Wire Line - 6450 5600 6550 5700 -Text Label 6050 5600 0 60 ~ 0 -GND -NoConn ~ 6450 3850 -NoConn ~ 6450 3950 -Wire Wire Line - 1800 4500 1500 4500 -Wire Wire Line - 1500 4500 1500 5600 -Connection ~ 1500 5600 -Entry Wire Line - 10750 2500 10850 2600 -Entry Wire Line - 10750 2100 10850 2200 -Text Notes 1000 5300 1 60 ~ 0 -Sacrificial USB cable from header to Teensy -Text Notes 7850 5950 0 60 ~ 0 -Ribbon cable between Teensy pins and socket -Wire Bus Line - 10850 6050 6550 6050 -$EndSCHEMATC diff --git a/keyboards/kinesis/alvicstep/docs/docs/photos/P1050573.jpg b/keyboards/kinesis/alvicstep/docs/docs/photos/P1050573.jpg deleted file mode 100644 index 027ab9efb..000000000 Binary files a/keyboards/kinesis/alvicstep/docs/docs/photos/P1050573.jpg and /dev/null differ diff --git a/keyboards/kinesis/alvicstep/docs/docs/photos/P1050574.jpg b/keyboards/kinesis/alvicstep/docs/docs/photos/P1050574.jpg deleted file mode 100644 index d49c492b8..000000000 Binary files a/keyboards/kinesis/alvicstep/docs/docs/photos/P1050574.jpg and /dev/null differ diff --git a/keyboards/kinesis/alvicstep/docs/docs/photos/P1050575.jpg b/keyboards/kinesis/alvicstep/docs/docs/photos/P1050575.jpg deleted file mode 100644 index 50cc9897c..000000000 Binary files a/keyboards/kinesis/alvicstep/docs/docs/photos/P1050575.jpg and /dev/null differ diff --git a/keyboards/kinesis/alvicstep/docs/docs/readme.txt b/keyboards/kinesis/alvicstep/docs/docs/readme.txt deleted file mode 100644 index af33ac490..000000000 --- a/keyboards/kinesis/alvicstep/docs/docs/readme.txt +++ /dev/null @@ -1,52 +0,0 @@ -This directory of documentation was copied from https://github.com/wjanssens/tmk_keyboard/tree/master/keyboard/kinesis -and is probably Copyright 2014 Warren Janssens -and probably released under GPL v2, which may be recovered at . - -Row configuration -PF0 A -PF1 B -PF2 C -PF3 G 0 = U4, 1 = U5 - -Column configuration - 4y0 4y1 4y2 4y3 4y4 4y5 4y6 4y7 5y0 5y1 5y2 5y3 5y4 5y5 5y6 5y7 - r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 r16 -PB0 21 c1 f6 f8 f7 5 4 3 2 1 =+ -PB1 22 c2 f3 f5 f4 t r e w q TAB -PB2 23 c3 ESC f2 f1 g f d s a CL -PB3 24 c4 f9 f11 f10 b v c x z LS UP DN [{ ]} -PB4 25 c5 f12 SL PS RT LT §± `~ 6 7 8 9 0 -_ -PB5 26 c6 PB PGM KPD y u i o p \ -PB6 27 c7 LC DL BS RC EN SP h j k l ;: '" -PB7 28 c8 RA PU PD n m ,< .> /? RS - */ - - -40 pin connector - - DL2 1 40 VCC - DR1 2 39 A - DR2 3 38 B - DL1 4 37 C - KPD 5 36 G - PGM 6 35 - SCL 7 34 - SDA 8 33 - RST 9 32 BUZZ - WP 10 31 EA - FS1 11 30 ALE - CLOCK 12 29 PSEN - DATA 13 28 r8 - 14 27 r7 - FS3 15 26 r6 - 16 25 r5 - FS2 17 24 r4 - XTAL1 18 23 r3 - XTAL2 19 22 r2 - GND 20 21 r1 - - -references: -https://github.com/chrisandreae/keyboard-firmware - - diff --git a/keyboards/kinesis/alvicstep/docs/docs/schematic.png b/keyboards/kinesis/alvicstep/docs/docs/schematic.png deleted file mode 100644 index fa9405a1f..000000000 Binary files a/keyboards/kinesis/alvicstep/docs/docs/schematic.png and /dev/null differ -- cgit v1.2.3-24-g4f1b From 9d4cc2f3f1666fc110506c6a982c53d1df67548b Mon Sep 17 00:00:00 2001 From: milestogo Date: Sun, 8 Jan 2017 22:25:41 -0800 Subject: removing old programmer layout, in favor of milestogo --- keyboards/kinesis/keymaps/programmer/Makefile | 21 --- keyboards/kinesis/keymaps/programmer/config.h | 8 - keyboards/kinesis/keymaps/programmer/keymap.c | 245 ------------------------- keyboards/kinesis/keymaps/programmer/readme.md | 2 - 4 files changed, 276 deletions(-) delete mode 100644 keyboards/kinesis/keymaps/programmer/Makefile delete mode 100644 keyboards/kinesis/keymaps/programmer/config.h delete mode 100644 keyboards/kinesis/keymaps/programmer/keymap.c delete mode 100644 keyboards/kinesis/keymaps/programmer/readme.md (limited to 'keyboards') diff --git a/keyboards/kinesis/keymaps/programmer/Makefile b/keyboards/kinesis/keymaps/programmer/Makefile deleted file mode 100644 index 9d3df5964..000000000 --- a/keyboards/kinesis/keymaps/programmer/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# Build Options -# change to "no" to disable the options, or define them in the Makefile in -# the appropriate keymap folder that will get included automatically -# -BOOTMAGIC_ENABLE = no # 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 = yes # Commands for debug and configuration -NKRO_ENABLE = yes # 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 -MIDI_ENABLE = no # MIDI controls -AUDIO_ENABLE = no # Audio output on port C6 -UNICODE_ENABLE = no # Unicode -BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. -SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend - -ifndef QUANTUM_DIR - include ../../../../Makefile -endif diff --git a/keyboards/kinesis/keymaps/programmer/config.h b/keyboards/kinesis/keymaps/programmer/config.h deleted file mode 100644 index 8893d122e..000000000 --- a/keyboards/kinesis/keymaps/programmer/config.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "../../config.h" - -// place overrides here - -#endif diff --git a/keyboards/kinesis/keymaps/programmer/keymap.c b/keyboards/kinesis/keymaps/programmer/keymap.c deleted file mode 100644 index 83fb7bd5f..000000000 --- a/keyboards/kinesis/keymaps/programmer/keymap.c +++ /dev/null @@ -1,245 +0,0 @@ -#include "kinesis.h" -#include "action_layer.h" -#include "mousekey.h" - -#define QWERTY 0 // Base qerty -#define SYMB 1// Symbol layer -#define MOUSE 2// - - - - -/* Macros */ -enum { - NONE = 0, - // Diagonal mouse movement - A_MUL, - A_MUR, - A_MDL, - A_MDR, -}; - - -// Borrowing very heavily from -// https://github.com/alvicstep/tmk_keyboard -/**************************************************************************************************** -* -* Keymap: Default Layer in Qwerty -* -* ,-------------------------------------------------------------------------------------------------------------------. -* | Esc | F1 | F2 | F3 | F4 | F5 | F6 | F8 | F9 | F10 | F12 | FN0 | FN1 | FN2 | | bOOT | -* |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------| -* | =+ | 1! | 2@ | 3# | 4$ | 5% | | 6^ | 7& | 8* | 9( | 0) | -_ | -* |--------+------+------+------+------+------| +------+------+------+------+------+--------| -* | Tab | Q | W | E | R | T | | Y | U | I | O | P | \| | -* |--------+------+------+------+------+------| |------+------+------+------+------+--------| -* |MouseFN1| A | S | D | F | G | | H | J | K | L | ;: | '" | -* |--------+------+------+------+------+------| |------+------+------+------+------+--------| -* | Shift | Z | X | C | V | B | | N | M | ,. | .> | /? | Shift | -* `--------+------+------+------+------+------- `------+------+------+------+------+--------' -* | `~ | ESC |MOUSE1|MOUSE2| | [{ | ]} | ESC | GUI | -* `---------------------------' `---------------------------' -* ,-------------. ,-------------. -* | Ctrl | Alt | | Gui | Ctrl | -* ,------|------|------| |------+------+------. -* | | | Home | | PgUp | | | -* | BkSp | Del |------| |------|Return| Space| -* | | | End | | PgDn | | | -* `--------------------' `--------------------' -*/ - - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[QWERTY] = KEYMAP( - KC_ESC, KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8, - KC_EQL, KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , - KC_TAB, KC_Q ,KC_W ,KC_E ,KC_R ,KC_T , - KC_FN1 ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G , - KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B , - KC_GRV ,KC_ESC, KC_BTN1,KC_BTN2, - KC_LCTL,KC_LALT, - KC_HOME, - KC_BSPC,KC_DEL ,KC_FN0 , - KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_FN0 ,KC_FN1 ,KC_FN2, KC_NO, RESET, - KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS, - KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_BSLS, - KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN,KC_QUOT, - KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_RSFT, - KC_LBRC,KC_RBRC, KC_ESC, KC_RGUI, - KC_RGUI,KC_RCTL, - KC_PGUP, - KC_PGDN,KC_ENTER ,KC_SPC - ), -[SYMB] = 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_FN0, KC_2, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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: Movement and function layer -* -* ,-------------------------------------------------------------------------------------------------------------------. -* | Caps | F1 | F2 | F3 | F4 | F5 | F6 | F8 | F9 | F10 | F12 | FN0 | FN1 | FN2 | Tada | bOOT | -* |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------| -* | =+ | ! | @ | # | $ | % | | ^ | & | * | ( | ) |MS Fast | -* |--------+------+------+------+------+------| +------+------+------+------+------+--------| -* | Tab | | | Up | |PgUp | | MwU |MS_UL | MS_U |MS_UR | | Ms Norm| -* |--------+------+------+------+------+------| |------+------+------+------+------+--------| -* |MouseFN1| C^A | Left | Down |Right | C^E | | | MS_L |Mouse1| MS_R | |MS Slow | -* |--------+------+------+------+------+------| |------+------+------+------+------+--------| -* | | GuiZ | GUI X| GUI C| GUI_V|PgDown| | MWD | MDown|MS Dwn|MS_DR | ? | | -* `--------+------+------+------+------+------- `------+------+------+------+------+--------' -* | `~ | ESC | < | > | | { | } | ESC | | -* `---------------------------' `---------------------------' -* ,-------------. ,-------------. -* | Ctrl | Alt | | Gui | Ctrl | -* ,------|------|------| |------+------+------. -* | | | Home | | PgUp | | | -* | BkSp | Del |------| |------|Mouse1|Mouse2| -* | | | End | | PgDn |LClick|Rclick| -* `--------------------' `--------------------' -*/ - - -[MOUSE] = KEYMAP( - KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_EXLM ,KC_AT, KC_HASH, KC_DLR ,KC_PERC , - KC_TRNS, KC_NO, KC_NO, KC_UP, KC_NO, KC_PGUP, - KC_FN1, LCTL(KC_A),KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_E), - KC_TRNS, LGUI(KC_Z),LGUI(KC_X),LGUI(KC_C),LGUI(KC_V),KC_PGDN, - KC_TRNS, KC_TRNS, KC_LABK, KC_RABK, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_FN0,RESET, - KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_ACL2, - KC_WH_U, M(A_MUL), KC_MS_U, M(A_MUR), KC_NO, KC_ACL1, - KC_NO, KC_MS_L, KC_MS_D, KC_MS_R, KC_NO, KC_ACL0, - KC_WH_D, M(A_MDL), KC_MS_D, M(A_MDR), KC_TRNS, KC_TRNS, - KC_LCBR, KC_RCBR, KC_ESC, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_BTN1, KC_BTN2 - ), - - -}; - -const uint16_t PROGMEM fn_actions[] = { - [0] = ACTION_LAYER_TAP_TOGGLE(MOUSE) , // FN1 - Momentary Layer 1 (Symbols) - [1] = ACTION_LAYER_TOGGLE(MOUSE) , // FN1 - Momentary Layer 1 (Symbols) - [2] = ACTION_LAYER_TAP_TOGGLE(SYMB) , // FN1 - Momentary Layer 1 (Symbols) - - -}; - -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - // MACRODOWN only works in this function - switch(id) { - case 0: - if (record->event.pressed) { - register_code(KC_RSFT); - } else { - unregister_code(KC_RSFT); - } - break; - - // from algernon's ErgoDox EZ layout, - case A_MUL: - if (record->event.pressed) { - mousekey_on(KC_MS_UP); - mousekey_on(KC_MS_LEFT); - } else { - mousekey_off(KC_MS_UP); - mousekey_off(KC_MS_LEFT); - } - mousekey_send(); - break; - - case A_MUR: - if (record->event.pressed) { - mousekey_on(KC_MS_UP); - mousekey_on(KC_MS_RIGHT); - } else { - mousekey_off(KC_MS_UP); - mousekey_off(KC_MS_RIGHT); - } - mousekey_send(); - break; - - case A_MDL: - if (record->event.pressed) { - mousekey_on(KC_MS_DOWN); - mousekey_on(KC_MS_LEFT); - } else { - mousekey_off(KC_MS_DOWN); - mousekey_off(KC_MS_LEFT); - } - mousekey_send(); - break; - - case A_MDR: - if (record->event.pressed) { - mousekey_on(KC_MS_DOWN); - mousekey_on(KC_MS_RIGHT); - } else { - mousekey_off(KC_MS_DOWN); - mousekey_off(KC_MS_RIGHT); - } - mousekey_send(); - break; - } - return MACRO_NONE; -}; - - -void matrix_init_user(void) { - - -} - -void matrix_scan_user(void) { - int8_t layer = biton32(layer_state); - - switch (layer) { - case 1: - all_led_off(); - break; - case 2: - if (!(host_keyboard_leds() & (1 << USB_LED_CAPS_LOCK))) { - all_led_off(); - caps_lock_led_on(); - } - break; - case 0: - all_led_off(); - num_lock_led_on(); - break; - default: - break; - } - -} - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - return true; -} - -void led_set_user(uint8_t usb_led) { - -} diff --git a/keyboards/kinesis/keymaps/programmer/readme.md b/keyboards/kinesis/keymaps/programmer/readme.md deleted file mode 100644 index 76356a687..000000000 --- a/keyboards/kinesis/keymaps/programmer/readme.md +++ /dev/null @@ -1,2 +0,0 @@ -# a programmer friendly keymap for the kinesis-advantage -# not really baked yet. -- cgit v1.2.3-24-g4f1b From ef2ebeb3cace7f2555ccf655f3a7bb7c9bb77b76 Mon Sep 17 00:00:00 2001 From: Kaleb Elwert Date: Mon, 9 Jan 2017 10:45:23 -0800 Subject: Remove KC_ prefix from KEYMAP macro to match other keyboards --- keyboards/whitefox/keymaps/default/keymap.c | 20 +++++++++---------- keyboards/whitefox/keymaps/matt3o/keymap.c | 30 ++++++++++++++--------------- keyboards/whitefox/whitefox.h | 20 +++++++++---------- 3 files changed, 35 insertions(+), 35 deletions(-) (limited to 'keyboards') diff --git a/keyboards/whitefox/keymaps/default/keymap.c b/keyboards/whitefox/keymaps/default/keymap.c index 426b226a0..714f90659 100644 --- a/keyboards/whitefox/keymaps/default/keymap.c +++ b/keyboards/whitefox/keymaps/default/keymap.c @@ -31,18 +31,18 @@ const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `---------------------------------------------------------------' */ [0] = KEYMAP( \ - ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSLS,GRV, INS, \ - TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSPC, DEL, \ - CAPS,A, S, D, F, G, H, J, K, L, SCLN,QUOT,NUHS,ENT, PGUP,\ - LSFT,NUBS,Z, X, C, V, B, N, M, COMM,DOT, SLSH,RSFT, UP, PGDN,\ - LCTL,LGUI,LALT, SPC, RALT,FN0, RCTL, LEFT,DOWN,RGHT \ + 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_EQL, KC_BSLS,KC_GRV, KC_INS, \ + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,KC_RBRC,KC_BSPC, KC_DEL, \ + KC_CAPS,KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT,KC_NUHS,KC_ENT, KC_PGUP,\ + KC_LSFT,KC_NUBS,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, KC_UP, KC_PGDN,\ + KC_LCTL,KC_LGUI,KC_LALT, KC_SPC, KC_RALT,KC_FN0, KC_RCTL, KC_LEFT,KC_DOWN,KC_RGHT \ ), [1] = KEYMAP( \ - TRNS,F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS,TRNS,MUTE,\ - TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,PSCR,SLCK,PAUS,TRNS, TRNS,\ - TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, VOLU,\ - TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, PGUP,VOLD,\ - TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS, HOME,PGDN,END \ + 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_F12, KC_TRNS,KC_TRNS,KC_MUTE,\ + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_PSCR,KC_SLCK,KC_PAUS,KC_TRNS, KC_TRNS,\ + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_VOLU,\ + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_PGUP,KC_VOLD,\ + KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_HOME,KC_PGDN,KC_END \ ), }; diff --git a/keyboards/whitefox/keymaps/matt3o/keymap.c b/keyboards/whitefox/keymaps/matt3o/keymap.c index ecadcd284..9321553bf 100644 --- a/keyboards/whitefox/keymaps/matt3o/keymap.c +++ b/keyboards/whitefox/keymaps/matt3o/keymap.c @@ -31,25 +31,25 @@ const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `---------------------------------------------------------------' */ [0] = KEYMAP( \ - ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSLS,GRV, MUTE,\ - TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSPC, DEL, \ - FN0, A, S, D, F, G, H, J, K, L, SCLN,QUOT,NUHS,ENT, PGUP,\ - LSFT,NUBS,Z, X, C, V, B, N, M, COMM,DOT, SLSH,RSFT, UP, PGDN,\ - LCTL,LGUI,LALT, SPC, RALT,FN1, RCTL, LEFT,DOWN,RGHT \ + 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_EQL, KC_BSLS,KC_GRV, KC_MUTE,\ + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,KC_RBRC,KC_BSPC, KC_DEL, \ + KC_FN0, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT,KC_NUHS,KC_ENT, KC_PGUP,\ + KC_LSFT,KC_NUBS,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, KC_UP, KC_PGDN,\ + KC_LCTL,KC_LGUI,KC_LALT, KC_SPC, KC_RALT,KC_FN1, KC_RCTL, KC_LEFT,KC_DOWN,KC_RGHT \ ), [1] = KEYMAP( \ - TRNS,F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS,TRNS,TRNS,\ - TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,DEL , INS ,\ - TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, VOLU,\ - TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, PGUP,VOLD,\ - TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS, HOME,PGDN,END \ + 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_F12, KC_TRNS,KC_TRNS,KC_TRNS,\ + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_DEL , KC_INS ,\ + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_VOLU,\ + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_PGUP,KC_VOLD,\ + KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_HOME,KC_PGDN,KC_END \ ), [2] = KEYMAP( \ - SLEP,P1, P2, P3, P4, P5, P6, P7, P8, P9, P0, TRNS,TRNS,TRNS,TRNS,FN2, \ - TRNS,TRNS,FN5 ,FN6 ,TRNS,FN7 ,TRNS,TRNS,TRNS,TRNS,PSCR,TRNS,TRNS,TRNS, FN3, \ - CAPS,TRNS,TRNS,TRNS,FN4 ,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS,\ - TRNS,TRNS,TRNS,TRNS,CALC,TRNS,TRNS,TRNS,MAIL,TRNS,TRNS,TRNS,TRNS, TRNS,TRNS,\ - TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS, TRNS,TRNS,TRNS \ + KC_SLEP,KC_P1, KC_P2, KC_P3, KC_P4, KC_P5, KC_P6, KC_P7, KC_P8, KC_P9, KC_P0, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_FN2, \ + KC_TRNS,KC_TRNS,KC_FN5 ,KC_FN6 ,KC_TRNS,KC_FN7 ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_PSCR,KC_TRNS,KC_TRNS,KC_TRNS, KC_FN3, \ + KC_CAPS,KC_TRNS,KC_TRNS,KC_TRNS,KC_FN4 ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,\ + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_CALC,KC_TRNS,KC_TRNS,KC_TRNS,KC_MAIL,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, 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/whitefox/whitefox.h b/keyboards/whitefox/whitefox.h index 0ffcdca01..3b3c6bd21 100644 --- a/keyboards/whitefox/whitefox.h +++ b/keyboards/whitefox/whitefox.h @@ -19,7 +19,7 @@ along with this program. If not, see . #include "quantum.h" -/* WhiteFox +/* WhiteFox * ,---------------------------------------------------------------. * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| \| `|Ins| * |---------------------------------------------------------------| @@ -40,15 +40,15 @@ along with this program. If not, see . K15, K25, K35, K45, K55, K65, K75, K85, K06, K16, K26, K36, K46, K56, K66, \ K76, K86, K07, K17, K27, K37, K47, K57, K67, K77 \ ) { \ - { KC_##K00, KC_##K01, KC_##K02, KC_##K03, KC_##K04, KC_##K05, KC_##K06, KC_##K07 }, \ - { KC_##K10, KC_##K11, KC_##K12, KC_##K13, KC_##K14, KC_##K15, KC_##K16, KC_##K17 }, \ - { KC_##K20, KC_##K21, KC_##K22, KC_##K23, KC_##K24, KC_##K25, KC_##K26, KC_##K27 }, \ - { KC_##K30, KC_##K31, KC_##K32, KC_##K33, KC_##K34, KC_##K35, KC_##K36, KC_##K37 }, \ - { KC_##K40, KC_##K41, KC_##K42, KC_##K43, KC_##K44, KC_##K45, KC_##K46, KC_##K47 }, \ - { KC_##K50, KC_##K51, KC_##K52, KC_##K53, KC_##K54, KC_##K55, KC_##K56, KC_##K57 }, \ - { KC_##K60, KC_##K61, KC_##K62, KC_##K63, KC_##K64, KC_##K65, KC_##K66, KC_##K67 }, \ - { KC_##K70, KC_##K71, KC_##K72, KC_##K73, KC_##K74, KC_##K75, KC_##K76, KC_##K77 }, \ - { KC_##K80, KC_##K81, KC_##K82, KC_##K83, KC_##K84, KC_##K85, KC_##K86, KC_NO } \ + { K00, K01, K02, K03, K04, K05, K06, K07 }, \ + { K10, K11, K12, K13, K14, K15, K16, K17 }, \ + { K20, K21, K22, K23, K24, K25, K26, K27 }, \ + { K30, K31, K32, K33, K34, K35, K36, K37 }, \ + { K40, K41, K42, K43, K44, K45, K46, K47 }, \ + { K50, K51, K52, K53, K54, K55, K56, K57 }, \ + { K60, K61, K62, K63, K64, K65, K66, K67 }, \ + { K70, K71, K72, K73, K74, K75, K76, K77 }, \ + { K80, K81, K82, K83, K84, K85, K86, KC_NO } \ } #endif -- cgit v1.2.3-24-g4f1b From a702f4631ebfb8f2ae92c8da0cc9a49d899bd920 Mon Sep 17 00:00:00 2001 From: Kaleb Elwert Date: Mon, 9 Jan 2017 10:54:36 -0800 Subject: Increase tick frequency for responsiveness Based off of PR #866 which did the same thing for the infinity60 --- keyboards/whitefox/chconf.h | 2 +- keyboards/whitefox/matrix.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'keyboards') diff --git a/keyboards/whitefox/chconf.h b/keyboards/whitefox/chconf.h index 43c845739..d9114ec85 100644 --- a/keyboards/whitefox/chconf.h +++ b/keyboards/whitefox/chconf.h @@ -48,7 +48,7 @@ * @details Frequency of the system timer that drives the system ticks. This * setting also defines the system tick time unit. */ -#define CH_CFG_ST_FREQUENCY 1000 +#define CH_CFG_ST_FREQUENCY 100000 /** * @brief Time delta constant for the tick-less mode. diff --git a/keyboards/whitefox/matrix.c b/keyboards/whitefox/matrix.c index ce35bca28..d69b82d61 100644 --- a/keyboards/whitefox/matrix.c +++ b/keyboards/whitefox/matrix.c @@ -69,7 +69,7 @@ uint8_t matrix_scan(void) case 8: palSetPad(GPIOC, 11); break; } - wait_us(1); // need wait to settle pin state + wait_us(10); // need wait to settle pin state // read col data: { PTD0, PTD1, PTD4, PTD5, PTD6, PTD7, PTC1, PTC2 } data = ((palReadPort(GPIOC) & 0x06UL) << 5) | -- cgit v1.2.3-24-g4f1b From 49a00a535f6106f37e5ebd272238e018832803a0 Mon Sep 17 00:00:00 2001 From: Kaleb Elwert Date: Mon, 9 Jan 2017 11:15:10 -0800 Subject: Update clock frequencies to match the infinity ergodox --- keyboards/whitefox/mcuconf.h | 19 ++++--------------- 1 file changed, 4 insertions(+), 15 deletions(-) (limited to 'keyboards') diff --git a/keyboards/whitefox/mcuconf.h b/keyboards/whitefox/mcuconf.h index 68c29cf68..28f3c6cda 100644 --- a/keyboards/whitefox/mcuconf.h +++ b/keyboards/whitefox/mcuconf.h @@ -29,21 +29,10 @@ /* PEE mode - 48MHz system clock driven by external crystal. */ #define KINETIS_MCG_MODE KINETIS_MCG_MODE_PEE -#define KINETIS_PLLCLK_FREQUENCY 96000000UL -#define KINETIS_SYSCLK_FREQUENCY 48000000UL - -#if 0 -/* FEI mode - 48 MHz with internal 32.768 kHz crystal */ -#define KINETIS_MCG_MODE KINETIS_MCG_MODE_FEI -#define KINETIS_MCG_FLL_DMX32 1 /* Fine-tune for 32.768 kHz */ -#define KINETIS_MCG_FLL_DRS 1 /* 1464x FLL factor */ -#define KINETIS_SYSCLK_FREQUENCY 47972352UL /* 32.768 kHz * 1464 (~48 MHz) */ -#define KINETIS_CLKDIV1_OUTDIV1 1 -#define KINETIS_CLKDIV1_OUTDIV2 1 -#define KINETIS_CLKDIV1_OUTDIV4 2 -#define KINETIS_BUSCLK_FREQUENCY KINETIS_SYSCLK_FREQUENCY -#define KINETIS_FLASHCLK_FREQUENCY KINETIS_SYSCLK_FREQUENCY/2 -#endif +#define KINETIS_PLLCLK_FREQUENCY 72000000UL +#define KINETIS_SYSCLK_FREQUENCY 72000000UL +#define KINETIS_BUSCLK_FREQUENCY 36000000UL +#define KINETIS_FLASHCLK_FREQUENCY 24000000UL /* * SERIAL driver system settings. -- cgit v1.2.3-24-g4f1b From 0b38204e62446a7ce2eaf60709cbf7e426a200be Mon Sep 17 00:00:00 2001 From: Kaleb Elwert Date: Mon, 9 Jan 2017 11:57:44 -0800 Subject: Fix mismatched indentation --- keyboards/whitefox/keymaps/matt3o/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards') diff --git a/keyboards/whitefox/keymaps/matt3o/keymap.c b/keyboards/whitefox/keymaps/matt3o/keymap.c index 9321553bf..4455886a5 100644 --- a/keyboards/whitefox/keymaps/matt3o/keymap.c +++ b/keyboards/whitefox/keymaps/matt3o/keymap.c @@ -72,7 +72,7 @@ const uint16_t fn_actions[] = { /* custom action function */ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) { - /* + /* (void)opt; switch(id) { case ACTION_LEDS_ALL: -- cgit v1.2.3-24-g4f1b From a55c5e3ea353e3d1a73550bcc898bbc4f023c42e Mon Sep 17 00:00:00 2001 From: Kaleb Elwert Date: Tue, 10 Jan 2017 03:00:36 -0800 Subject: Wait for two ticks rather than 1 --- keyboards/whitefox/matrix.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards') diff --git a/keyboards/whitefox/matrix.c b/keyboards/whitefox/matrix.c index d69b82d61..9202ab023 100644 --- a/keyboards/whitefox/matrix.c +++ b/keyboards/whitefox/matrix.c @@ -69,7 +69,7 @@ uint8_t matrix_scan(void) case 8: palSetPad(GPIOC, 11); break; } - wait_us(10); // need wait to settle pin state + wait_us(20); // need wait to settle pin state // read col data: { PTD0, PTD1, PTD4, PTD5, PTD6, PTD7, PTC1, PTC2 } data = ((palReadPort(GPIOC) & 0x06UL) << 5) | -- cgit v1.2.3-24-g4f1b From db1aec159d37748de7413816a377dc5b63111c71 Mon Sep 17 00:00:00 2001 From: Brendan Johan Lee Date: Tue, 10 Jan 2017 19:20:25 +0100 Subject: Added layer images to deadcyclo layout readme --- .../deadcyclo/images/deadcyclo-base-layout.png | Bin 0 -> 79741 bytes .../deadcyclo/images/deadcyclo-layer-1-symbols.png | Bin 0 -> 55349 bytes .../images/deadcyclo-layer-2-media-and-mouse.png | Bin 0 -> 50926 bytes .../images/deadcyclo-layer-3-navigation.png | Bin 0 -> 43551 bytes keyboards/ergodox/keymaps/deadcyclo/readme.md | 26 +++++++++++++++++++++ 5 files changed, 26 insertions(+) create mode 100644 keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png create mode 100644 keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-1-symbols.png create mode 100644 keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png create mode 100644 keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png (limited to 'keyboards') diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png new file mode 100644 index 000000000..4208c5189 Binary files /dev/null and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-base-layout.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-1-symbols.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-1-symbols.png new file mode 100644 index 000000000..ccda70e39 Binary files /dev/null and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-1-symbols.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png new file mode 100644 index 000000000..481e63e32 Binary files /dev/null and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-2-media-and-mouse.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png new file mode 100644 index 000000000..9ebba6734 Binary files /dev/null and b/keyboards/ergodox/keymaps/deadcyclo/images/deadcyclo-layer-3-navigation.png differ diff --git a/keyboards/ergodox/keymaps/deadcyclo/readme.md b/keyboards/ergodox/keymaps/deadcyclo/readme.md index 915507440..07e8e62a3 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/readme.md +++ b/keyboards/ergodox/keymaps/deadcyclo/readme.md @@ -5,6 +5,32 @@ some common keys might be missing, as this layout is intented to be used on *nix with their system. The layout is geared towards avoiding using the rat (mouse for those of you who are unfamiliar with tiling window managers) as much as possibly. +# Layouts + +All layer images created using [keyboard-layout-editor](http://www.keyboard-layout-editor.com/) + +## Base layer + +[![Base layer](images/deadcyclo-base-layout.png)](http://www.keyboard-layout-editor.com/#/gists/0321b18620180a3e46c498206eb65366) + +## Layer 1 - Symbols + +[![Layer 1 - Symbols](images/deadcyclo-layer-1-symbols.png)](http://www.keyboard-layout-editor.com/#/gists/96714e198054c9115bafb5267cc6bc73) + +## Layer 2 - Media and Mouse + +[![Layer 2 - Media and Mouse](images/deadcyclo-layer-2-media-and-mouse.png)](http://www.keyboard-layout-editor.com/#/gists/824759486e378bcec30784309a7e5731) + +## Layer 3 - Navigation + +[![Layer 3 - Navigation](images/deadcyclo-layer-2-media-and-mouse.png)](http://www.keyboard-layout-editor.com/#/gists/67d9613dcd873c68693d11863d0fd289) + # Changelog - 02.01.2017 Added delete key on second layer +- 10.01.2017 Added layer images to readme + +# TODO + +- Add unicode support (direct input and indirect? see algernon layout for examples) +- Add descriptions below each layer image of any special functions/keys -- cgit v1.2.3-24-g4f1b From c4fca8b6bc06178ad578dbc4be67d579a3f4d59a Mon Sep 17 00:00:00 2001 From: Brendan Johan Lee Date: Tue, 10 Jan 2017 19:23:59 +0100 Subject: Fixed incorrect layer image in deadcyclo readme --- keyboards/ergodox/keymaps/deadcyclo/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards') diff --git a/keyboards/ergodox/keymaps/deadcyclo/readme.md b/keyboards/ergodox/keymaps/deadcyclo/readme.md index 07e8e62a3..809dd6eb5 100644 --- a/keyboards/ergodox/keymaps/deadcyclo/readme.md +++ b/keyboards/ergodox/keymaps/deadcyclo/readme.md @@ -23,7 +23,7 @@ All layer images created using [keyboard-layout-editor](http://www.keyboard-layo ## Layer 3 - Navigation -[![Layer 3 - Navigation](images/deadcyclo-layer-2-media-and-mouse.png)](http://www.keyboard-layout-editor.com/#/gists/67d9613dcd873c68693d11863d0fd289) +[![Layer 3 - Navigation](images/deadcyclo-layer-3-navigation.png)](http://www.keyboard-layout-editor.com/#/gists/67d9613dcd873c68693d11863d0fd289) # Changelog -- cgit v1.2.3-24-g4f1b From 3a453a03ed5f029bb9cf23955e87789245d39a22 Mon Sep 17 00:00:00 2001 From: David Olsson Date: Wed, 11 Jan 2017 23:00:34 +0100 Subject: Atreus62 first semi-final draft --- keyboards/atreus62/keymaps/mneme/Makefile | 6 + keyboards/atreus62/keymaps/mneme/README.md | 2 + keyboards/atreus62/keymaps/mneme/config.h | 7 + keyboards/atreus62/keymaps/mneme/keymap.c | 316 +++++++++++++++++++++++++++++ keyboards/atreus62/keymaps/mneme/unicode | 114 +++++++++++ 5 files changed, 445 insertions(+) create mode 100644 keyboards/atreus62/keymaps/mneme/Makefile create mode 100644 keyboards/atreus62/keymaps/mneme/README.md create mode 100644 keyboards/atreus62/keymaps/mneme/config.h create mode 100644 keyboards/atreus62/keymaps/mneme/keymap.c create mode 100644 keyboards/atreus62/keymaps/mneme/unicode (limited to 'keyboards') diff --git a/keyboards/atreus62/keymaps/mneme/Makefile b/keyboards/atreus62/keymaps/mneme/Makefile new file mode 100644 index 000000000..f20750dbc --- /dev/null +++ b/keyboards/atreus62/keymaps/mneme/Makefile @@ -0,0 +1,6 @@ +TAP_DANCE_ENABLE = yes +BOOTMAGIC_ENABLE = no +COMMAND_ENABLE = no +SLEEP_LED_ENABLE = no +UNICODE_ENABLE = yes +NKRO_ENABLE = true diff --git a/keyboards/atreus62/keymaps/mneme/README.md b/keyboards/atreus62/keymaps/mneme/README.md new file mode 100644 index 000000000..54f5e21ab --- /dev/null +++ b/keyboards/atreus62/keymaps/mneme/README.md @@ -0,0 +1,2 @@ +Keymap that owes just about everything to Algernon. +Check out his keymap for the Ergodox. It's pretty damned amazing. diff --git a/keyboards/atreus62/keymaps/mneme/config.h b/keyboards/atreus62/keymaps/mneme/config.h new file mode 100644 index 000000000..2c2a08c05 --- /dev/null +++ b/keyboards/atreus62/keymaps/mneme/config.h @@ -0,0 +1,7 @@ +#define ONESHOT_TIMEOUT 3000 +#define TAPPING_TERM 200 +#define PREVENT_STUCK_MODIFIERS + +#define LEADER_TIMEOUT 1000 + +#include "../../config.h" diff --git a/keyboards/atreus62/keymaps/mneme/keymap.c b/keyboards/atreus62/keymaps/mneme/keymap.c new file mode 100644 index 000000000..8c3f8aa43 --- /dev/null +++ b/keyboards/atreus62/keymaps/mneme/keymap.c @@ -0,0 +1,316 @@ +#include +#include "atreus62.h" +#include "led.h" +#include "action_layer.h" +#include "action_util.h" + +//avrdude -p atmega32u4 -P /dev/tty.usbmodem1411 -c avr109 -U flash:w:atreus63_default.hex +/* + *WINDOWS SWEDISH + */ +#define KN_HALF KC_GRV // 1/2 +#define KN_PLUS KC_MINS // + +#define KN_ACUT KC_EQL // ´ +#define KN_AO KC_LBRC // Å +#define KN_UMLA KC_RBRC // ¨ +#define KN_OE KC_SCLN // Ö +#define KN_AE KC_QUOT // Ä +#define KN_QUOT KC_NUHS // ' +#define KN_LABK KC_NUBS // < +#define KN_MINS KC_SLSH // - +#define KN_EXLM LSFT(KC_1) // ! +#define KN_DQT LSFT(KC_2) // " +#define KN_AT RALT(KC_2) // @ +#define KN_HASH LSFT(KC_3) // # +#define KN_DLR RALT(KC_4) // $ +#define KN_PERC LSFT(KC_5) // % +#define KN_AMPR LSFT(KC_6) // & +#define KN_SLSH LSFT(KC_7) // / +#define KN_LPRN LSFT(KC_8) // ( +#define KN_RPRN LSFT(KC_9) // ) +#define KN_EQL LSFT(KC_0) // = +#define KN_UNDS LSFT(KN_MINS) // _ +#define KN_QUES LSFT(KN_PLUS) // ? +#define KN_GRAV LSFT(KN_ACUT) // ` +#define KN_LCBR RALT(KC_7) // { +#define KN_RCBR RALT(KC_0) // } +#define KN_LBRC RALT(KC_8) // [ +#define KN_RBRC RALT(KC_9) // ] +#define KN_RABK LSFT(KN_LABK) // < +#define KN_COLN LSFT(KC_DOT) // : +#define KN_SCLN LSFT(KC_COMM) // : +#define KN_PIPE RALT(KN_LABK) // | +#define KN_QUES LSFT(KN_PLUS) // ? +#define KN_CIRC LSFT(KN_UMLA) // ^ +#define KN_ASTR LSFT(KN_QUOT) // * +#define KN_TILD RALT(KN_UMLA) // ~ +#define KN_BSLS RALT(KN_PLUS) // + +#define OSM_LCTL OSM(MOD_LCTL) +#define OSM_LALT OSM(MOD_LALT) +#define OSM_LSFT OSM(MOD_LSFT) + +#define KC_HYP LSFT(LALT(LCTL(KC_LGUI))) + +#define KC_COPY LCTL(KC_C) +#define KC_PASTE LCTL(KC_V) +#define KC_UNDO LCTL(KC_Z) +#define KC_REDO LCTL(LSFT(KC_Z)) + +// Layers +enum { + BASE = 0, + NAV, + SYM +}; + +//Macros +enum { + KF_1 = 0, // 1, F1 + KF_2, // ... + KF_3, + KF_4, + KF_5, + KF_6, + KF_7, + KF_8, + KF_9, + KF_10, + KF_11, + KF_12 +}; + +// Tapdance +enum { + TD_FUN = 0, + TD_EQ +}; + +//Custom keycodes +enum { + PLACEHOLDER = SAFE_RANGE +}; + +//State and timers +uint16_t kf_timers[12]; + + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [BASE] = { + + { M(KF_11) ,M(KF_1) ,M(KF_2) ,M(KF_3) ,M(KF_4) ,M(KF_5) ,KC_NO ,M(KF_6) ,M(KF_7) ,M(KF_8) ,M(KF_9) ,M(KF_10) ,M(KF_12) }, + { KC_HYP ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_NO ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KN_AO }, + { OSM_LCTL ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,KC_NO ,KC_H ,KC_J ,KC_K ,KC_L ,KN_OE ,KN_AE }, + { OSM_LSFT ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_DELT ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KN_MINS ,OSM_LSFT }, + { MO(NAV) ,OSM_LCTL ,OSM_LALT ,KC_LGUI ,KC_SPC ,LT(SYM,KC_BSPC) ,KC_TAB ,LT(SYM,KC_ENT) ,KC_SPC ,KC_LEAD ,KC_LALT ,KC_LCTRL ,MO(NAV) } + + }, + [NAV] = { + + { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_HOME ,KC_UP ,KC_END ,KC_PGUP ,KC_NO ,KC_PGUP ,KC_HOME ,KC_UP ,KC_END ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_PGDN ,KC_NO ,KC_PGDN ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,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_TRNS ,KC_F12 ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_VOLD ,KC_VOLU } + + }, + [SYM] = { + + { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,TD(TD_EQ) ,KC_NO ,TD(TD_FUN) ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KN_LABK ,KN_RABK ,KN_LCBR ,KN_RCBR ,KN_PLUS ,KC_NO ,KN_AT ,KN_DQT ,KN_QUOT ,KN_GRAV ,KN_SLSH ,KC_TRNS }, + { KC_TRNS ,KN_EXLM ,KN_EQL ,KN_LPRN ,KN_RPRN ,KN_MINS ,KC_NO ,KN_UNDS ,KN_SCLN ,KN_COLN ,KN_AMPR ,KN_PIPE ,KC_TRNS }, + { KC_TRNS ,KN_DLR ,KN_PERC ,KN_LBRC ,KN_RBRC ,KN_ASTR ,KC_TRNS ,KN_HASH ,KC_COMM ,KC_DOT ,KN_QUES ,KN_BSLS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS } + + } +}; + +#define TAP_ONCE(code) \ + register_code (code); \ + unregister_code (code) + +static void m_tapn (uint8_t code, ...) { + uint8_t kc = code; + va_list ap; + + va_start(ap, code); + do { + register_code(kc); + unregister_code(kc); + wait_ms(50); + kc = va_arg(ap, int); + } while (kc != 0); + va_end(ap); +} + +static void m_handle_kf (keyrecord_t *record, uint8_t id) { + uint8_t code = id - KF_1; + + if (record->event.pressed) { + kf_timers[code] = timer_read (); + } else { + uint8_t kc_base; + uint8_t long_press = (kf_timers[code] && timer_elapsed (kf_timers[code]) > TAPPING_TERM); + + kf_timers[code] = 0; + + switch(id){ + case KF_1 ... KF_10: + if (long_press) { + // Long press + kc_base = KC_F1; + } else { + kc_base = KC_1; + } + code += kc_base; + break; + case KF_11: + code = long_press ? KC_F11 : KC_ESC; + break; + case KF_12: + code = long_press ? KC_F12 : KC_PLUS; + break; + } + register_code (code); + unregister_code (code); + } +} + +const uint16_t PROGMEM fn_actions[] = { + +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch (id) { + case KF_1 ... KF_12: + m_handle_kf(record, id); + break; + } + return MACRO_NONE; +}; + +// Custom keycodes +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + bool queue = true; + + //Cancle one-shot mods. + switch (keycode) { + case KC_ESC: + if (record->event.pressed && get_oneshot_mods() && !has_oneshot_mods_timed_out()) { + clear_oneshot_mods(); + queue = false; + } + break; + } + return queue; +} + +// TAP DANCE SETTINGS +void dance_eq (qk_tap_dance_state_t *state, void *user_data) { + switch (state->count) { + case 1: // === + register_code(KC_LSHIFT); + m_tapn(KC_0, KC_0, KC_0, 0); + unregister_code(KC_LSHIFT); + break; + case 2: + register_code(KC_LSHIFT); + m_tapn(KC_1, KC_0, KC_0, 0); + unregister_code(KC_LSHIFT); + break; + default: + reset_tap_dance(state); + } +} + +void dance_fun (qk_tap_dance_state_t *state, void *user_data) { + switch (state->count) { + case 1: // => + register_code(KC_LSHIFT); + m_tapn(KC_0, KN_LABK, 0); + unregister_code(KC_LSHIFT); + break; + case 2: // () => {} + register_code(KC_LSHIFT); + m_tapn(KC_8, KC_9, KC_SPC, KC_0, KN_LABK, KC_SPC, 0); + unregister_code(KC_LSHIFT); + register_code(KC_RALT); + m_tapn(KC_7, 0); + unregister_code(KC_RALT); + TAP_ONCE(KC_ENT); + break; + default: + reset_tap_dance(state); + } +} + +qk_tap_dance_action_t tap_dance_actions[] = { + [TD_FUN] = ACTION_TAP_DANCE_FN (dance_fun) + ,[TD_EQ] = ACTION_TAP_DANCE_FN (dance_eq) +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + set_unicode_input_mode(UC_WINC); +}; + +LEADER_EXTERNS(); +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + LEADER_DICTIONARY() { + leading = false; + leader_end(); + SEQ_ONE_KEY(KC_L){ + register_code(KC_RGUI); + TAP_ONCE(KC_L); + unregister_code(KC_RGUI); + }; // Todo + + SEQ_TWO_KEYS(KC_F, KC_S){ + register_code(KC_LCTRL); + TAP_ONCE(KC_S); + unregister_code(KC_LCTRL); + }; // Todo + + SEQ_TWO_KEYS(KC_B, KC_D){ + register_code(KC_LCTRL); + TAP_ONCE(KC_W); + unregister_code(KC_LCTRL); + }; // Todo + + SEQ_ONE_KEY(KC_SLSH){ + register_code(KC_LCTRL); + TAP_ONCE(KC_F); + unregister_code(KC_LCTRL); + } + + SEQ_TWO_KEYS (KC_S, KC_S) { + // ¯\_(ツ)_/¯ + unicode_input_start(); register_hex(0xaf); unicode_input_finish(); + register_code (KC_RALT); TAP_ONCE (KN_PLUS); unregister_code (KC_RALT); + register_code (KC_RSFT); TAP_ONCE (KC_8); unregister_code (KC_RSFT); + unicode_input_start (); register_hex(0x30c4); unicode_input_finish(); + register_code (KC_RSFT); TAP_ONCE (KC_9); TAP_ONCE(KC_7); unregister_code (KC_RSFT); + unicode_input_start (); register_hex(0xaf); unicode_input_finish(); + } + + SEQ_TWO_KEYS (KC_S, KC_F) { + // 凸(ツ)凸 + unicode_input_start(); register_hex(0x51F8); unicode_input_finish(); + register_code (KC_RSFT); TAP_ONCE (KC_8); unregister_code (KC_RSFT); + unicode_input_start (); register_hex(0x30c4); unicode_input_finish(); + register_code (KC_RSFT); TAP_ONCE (KC_9); unregister_code (KC_RSFT); + unicode_input_start (); register_hex(0x51F8); unicode_input_finish(); + } + + SEQ_TWO_KEYS (KC_S, KC_L) { + // λ + unicode_input_start(); + register_hex(0x03bb); + unicode_input_finish(); + } + }; +}; diff --git a/keyboards/atreus62/keymaps/mneme/unicode b/keyboards/atreus62/keymaps/mneme/unicode new file mode 100644 index 000000000..b3f62b6d3 --- /dev/null +++ b/keyboards/atreus62/keymaps/mneme/unicode @@ -0,0 +1,114 @@ +Todo +☐ 2610 Todo +☑ 2611 Done +☒ 2612 Failed + +Operator +× 00D7 Multiplication +÷ 00F7 Division +≤ 2264 LessEqual +≥ 2265 MoreEqual +± 00B1 Plusminus + +Math +∏ 220F Product +∑ 2211 Sum +≈ 2248 Almost +≡ 2261 Equivalent +∞ 221E Infinity +‰ 2030 Mille + +Set +⊂ 2282 Subset +⊃ 2283 sUperset +∩ 2229 Intersextion +∪ 222A Union +∈ 2208 Element +∉ 2209 Notelement +∍ 220D Contains +∌ 220C doesNotcontain + +Logic +¬ 00AC Not +∧ 2227 And +∨ 2228 Or +∃ 2203 Exists +∄ 2204 Notexists + +Greek +µ 00B5 Micro +λ 03BB Lamda +Ω 2126 Omega +α 03B1 Alpha +β 03B2 Beta +γ 03B3 Gamma +π 03C0 Pi +δ 03B4 Delta + +Other +☁ 2601 Cloud +☼ 263C Sun +☂ 2602 Rain +☠ 2620 Skull +♺ 267A Recycle +👍1F44D thumbsUp +👎1F44E thumbsDown +💩 1F4A9 Poo + + +//Todo +SEQ_THREE_KEYS(KC_U, KC_G, KC_T){m_unicode(0x2610);}; // Todo +SEQ_THREE_KEYS(KC_U, KC_G, KC_D){m_unicode(0x2611);}; // Done +SEQ_THREE_KEYS(KC_U, KC_G, KC_F){m_unicode(0x2612);}; // Failed + +//Operator +SEQ_THREE_KEYS(KC_U, KC_O, KC_M){m_unicode(0x00D7);}; // Multiplication +SEQ_THREE_KEYS(KC_U, KC_O, KC_D){m_unicode(0x00F7);}; // Division +SEQ_THREE_KEYS(KC_U, KC_O, KC_L){m_unicode(0x2264);}; // LessEqual +SEQ_THREE_KEYS(KC_U, KC_O, KC_M){m_unicode(0x2265);}; // MoreEqual +SEQ_THREE_KEYS(KC_U, KC_O, KC_P){m_unicode(0x00B1);}; // Plusminus + +//Math +SEQ_THREE_KEYS(KC_U, KC_M, KC_P){m_unicode(0x220F);}; // Product +SEQ_THREE_KEYS(KC_U, KC_M, KC_S){m_unicode(0x2211);}; // Sum +SEQ_THREE_KEYS(KC_U, KC_M, KC_A){m_unicode(0x2248);}; // Almost +SEQ_THREE_KEYS(KC_U, KC_M, KC_E){m_unicode(0x2261);}; // Equivalent +SEQ_THREE_KEYS(KC_U, KC_M, KC_I){m_unicode(0x221E);}; // Infinity +SEQ_THREE_KEYS(KC_U, KC_M, KC_M){m_unicode(0x2030);}; // Mille + +//Set +SEQ_THREE_KEYS(KC_U, KC_S, KC_S){m_unicode(0x2282);}; Subset +SEQ_THREE_KEYS(KC_U, KC_S, KC_P){m_unicode(0x2283);}; suPerset +SEQ_THREE_KEYS(KC_U, KC_S, KC_I){m_unicode(0x2229);}; Intersection +SEQ_THREE_KEYS(KC_U, KC_S, KC_U){m_unicode(0x222A);}; Union +SEQ_THREE_KEYS(KC_U, KC_S, KC_E){m_unicode(0x2208);}; Element +SEQ_THREE_KEYS(KC_U, KC_S, KC_N){m_unicode(0x2209);}; Notelement +SEQ_THREE_KEYS(KC_U, KC_S, KC_C){m_unicode(0x220D);}; Contains +SEQ_THREE_KEYS(KC_U, KC_S, KC_D){m_unicode(0x220C);}; doesNotcontain + +//Logic +SEQ_THREE_KEYS(KC_U, KC_L, KC_N){m_unicode(0x00AC);}; // Not +SEQ_THREE_KEYS(KC_U, KC_L, KC_A){m_unicode(0x2227);}; // And +SEQ_THREE_KEYS(KC_U, KC_L, KC_O){m_unicode(0x2228);}; // Or +SEQ_THREE_KEYS(KC_U, KC_L, KC_E){m_unicode(0x2203);}; // Exists +SEQ_THREE_KEYS(KC_U, KC_L, KC_N){m_unicode(0x2204);}; // Notexists + +//Greek +SEQ_THREE_KEYS(KC_U, KC_G, KC_M){m_unicode(0x00B5);}; // Micro +SEQ_THREE_KEYS(KC_U, KC_G, KC_L){m_unicode(0x03BB);}; // Lamda +SEQ_THREE_KEYS(KC_U, KC_G, KC_O){m_unicode(0x2126);}; // Omega +SEQ_THREE_KEYS(KC_U, KC_G, KC_A){m_unicode(0x03B1);}; // Alpha +SEQ_THREE_KEYS(KC_U, KC_G, KC_B){m_unicode(0x03B2);}; // Beta +SEQ_THREE_KEYS(KC_U, KC_G, KC_G){m_unicode(0x03B3);}; // Gamma +SEQ_THREE_KEYS(KC_U, KC_G, KC_P){m_unicode(0x03C0);}; // Pi +SEQ_THREE_KEYS(KC_U, KC_G, KC_D){m_unicode(0x03B4);}; // Delta + +//Zother +SEQ_THREE_KEYS(KC_U, KC_Z, KC_C){m_unicode(0x2601);}; // Cloud +SEQ_THREE_KEYS(KC_U, KC_Z, KC_S){m_unicode(0x263C);}; // Sun +SEQ_THREE_KEYS(KC_U, KC_Z, KC_R){m_unicode(0x2602);}; // Rain +SEQ_THREE_KEYS(KC_U, KC_Z, KC_K){m_unicode(0x2620);}; // sKull +SEQ_THREE_KEYS(KC_U, KC_Z, KC_R){m_unicode(0x267A);}; // rEcycle +SEQ_THREE_KEYS(KC_U, KC_Z, KC_U){m_unicode(0x1F44D);}; // thumbsUp +SEQ_THREE_KEYS(KC_U, KC_Z, KC_D){m_unicode(0x1F44E);}; // thumbsDown +SEQ_THREE_KEYS(KC_U, KC_Z, KC_P){m_unicode(0x1F4A9);}; // Poo -- cgit v1.2.3-24-g4f1b From e491f5a4d0465c1499e14183358730cf73d0ceaf Mon Sep 17 00:00:00 2001 From: David Olsson Date: Wed, 11 Jan 2017 23:41:07 +0100 Subject: Readme + minor change to make it match reality. --- keyboards/atreus62/keymaps/mneme/README.md | 56 +++++++++++++++++++++++++- keyboards/atreus62/keymaps/mneme/img/base.png | Bin 0 -> 458762 bytes keyboards/atreus62/keymaps/mneme/img/fun.png | Bin 0 -> 268634 bytes keyboards/atreus62/keymaps/mneme/img/sym.png | Bin 0 -> 433342 bytes keyboards/atreus62/keymaps/mneme/keymap.c | 18 +++------ 5 files changed, 60 insertions(+), 14 deletions(-) create mode 100644 keyboards/atreus62/keymaps/mneme/img/base.png create mode 100644 keyboards/atreus62/keymaps/mneme/img/fun.png create mode 100644 keyboards/atreus62/keymaps/mneme/img/sym.png (limited to 'keyboards') diff --git a/keyboards/atreus62/keymaps/mneme/README.md b/keyboards/atreus62/keymaps/mneme/README.md index 54f5e21ab..b4dc89625 100644 --- a/keyboards/atreus62/keymaps/mneme/README.md +++ b/keyboards/atreus62/keymaps/mneme/README.md @@ -1,2 +1,54 @@ -Keymap that owes just about everything to Algernon. -Check out his keymap for the Ergodox. It's pretty damned amazing. + + +Mnemes Swedish Bonaza +======================= + +My Layout in process, most of the code is shamelessly stolen from [algernons][algernon] excellent layout + + [algernon]: https://github.com/algernon/ergodox-layout + +It's for Windows (current work forces me to) and Swedish (matter of birth) so ymmw. + +## Table of Contents + +* [Layouts](#layouts) + - [Base layer](#base-layer) + - [Fun layer](#fun-layer) + - [Nav layer](#nav-layer) + - [LED states](#led-states) + +# Layouts + +## Base layer + +![Base layer](img/base.png) + + +* The number row doubles as a function row. Short presses produces numbers, long presses produces Fxx +* The `Shift`, `Alt`, and `Control` modifiers are one-shot. +* `Backspace` and `Enter` doubles as switches to the `sym` layer when held +* The `ESC` key also doubles as a one-shot cancel key. +* The **Lead** key is followed by a sequence of keys. + - `LEAD l` : `lgui+l`. + - `LEAD s l` : `λ`. + - `LEAD s s` : `¯\_(ツ)_/¯` + - `LEAD s f` : `凸(ツ)凸` + - `LEAD f s` : `ctrl+s` + - `LEAD b d` : `ctrl+w` + + +## Nav layer + +![Fun layer](img/fun.png) + +Basic navigation on the right hand and modifiers close +by for the left. The latter because I tend to use `ctrl+arrows` quite a lot. + +## Sym layer + +![Sym layer](img/sym.png) + +Easy access to most symbols I use on a daily basis. Most common are on the home row, the rest are grouped as best as I could. + +# License + GPL-3+ diff --git a/keyboards/atreus62/keymaps/mneme/img/base.png b/keyboards/atreus62/keymaps/mneme/img/base.png new file mode 100644 index 000000000..86907d544 Binary files /dev/null and b/keyboards/atreus62/keymaps/mneme/img/base.png differ diff --git a/keyboards/atreus62/keymaps/mneme/img/fun.png b/keyboards/atreus62/keymaps/mneme/img/fun.png new file mode 100644 index 000000000..a58933d96 Binary files /dev/null and b/keyboards/atreus62/keymaps/mneme/img/fun.png differ diff --git a/keyboards/atreus62/keymaps/mneme/img/sym.png b/keyboards/atreus62/keymaps/mneme/img/sym.png new file mode 100644 index 000000000..11b5bd4b0 Binary files /dev/null and b/keyboards/atreus62/keymaps/mneme/img/sym.png differ diff --git a/keyboards/atreus62/keymaps/mneme/keymap.c b/keyboards/atreus62/keymaps/mneme/keymap.c index 8c3f8aa43..56d637120 100644 --- a/keyboards/atreus62/keymaps/mneme/keymap.c +++ b/keyboards/atreus62/keymaps/mneme/keymap.c @@ -44,7 +44,7 @@ #define KN_CIRC LSFT(KN_UMLA) // ^ #define KN_ASTR LSFT(KN_QUOT) // * #define KN_TILD RALT(KN_UMLA) // ~ -#define KN_BSLS RALT(KN_PLUS) // +#define KN_BSLS RALT(KN_PLUS) // #define OSM_LCTL OSM(MOD_LCTL) #define OSM_LALT OSM(MOD_LALT) @@ -110,8 +110,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [NAV] = { { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS }, - { KC_TRNS ,KC_TRNS ,KC_HOME ,KC_UP ,KC_END ,KC_PGUP ,KC_NO ,KC_PGUP ,KC_HOME ,KC_UP ,KC_END ,KC_TRNS ,KC_TRNS }, - { KC_TRNS ,KC_TRNS ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_PGDN ,KC_NO ,KC_PGDN ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_NO ,KC_PGUP ,KC_HOME ,KC_UP ,KC_END ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_LSFT ,KC_LCTL ,KC_LALT ,KC_TRNS ,KC_NO ,KC_PGDN ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_TRNS ,KC_TRNS }, { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,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_TRNS ,KC_F12 ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_VOLD ,KC_VOLU } @@ -281,19 +281,13 @@ void matrix_scan_user(void) { unregister_code(KC_LCTRL); }; // Todo - SEQ_ONE_KEY(KC_SLSH){ - register_code(KC_LCTRL); - TAP_ONCE(KC_F); - unregister_code(KC_LCTRL); - } - SEQ_TWO_KEYS (KC_S, KC_S) { // ¯\_(ツ)_/¯ unicode_input_start(); register_hex(0xaf); unicode_input_finish(); - register_code (KC_RALT); TAP_ONCE (KN_PLUS); unregister_code (KC_RALT); + register_code (KC_RALT); TAP_ONCE (KN_PLUS); unregister_code (KC_RALT); register_code (KC_RSFT); TAP_ONCE (KC_8); unregister_code (KC_RSFT); unicode_input_start (); register_hex(0x30c4); unicode_input_finish(); - register_code (KC_RSFT); TAP_ONCE (KC_9); TAP_ONCE(KC_7); unregister_code (KC_RSFT); + register_code (KC_RSFT); TAP_ONCE (KC_9); TAP_ONCE(KC_7); unregister_code (KC_RSFT); unicode_input_start (); register_hex(0xaf); unicode_input_finish(); } @@ -302,7 +296,7 @@ void matrix_scan_user(void) { unicode_input_start(); register_hex(0x51F8); unicode_input_finish(); register_code (KC_RSFT); TAP_ONCE (KC_8); unregister_code (KC_RSFT); unicode_input_start (); register_hex(0x30c4); unicode_input_finish(); - register_code (KC_RSFT); TAP_ONCE (KC_9); unregister_code (KC_RSFT); + register_code (KC_RSFT); TAP_ONCE (KC_9); unregister_code (KC_RSFT); unicode_input_start (); register_hex(0x51F8); unicode_input_finish(); } -- cgit v1.2.3-24-g4f1b From 1bef7bf45a2b05e755b17267aa08a66d1588134f Mon Sep 17 00:00:00 2001 From: David Olsson Date: Wed, 11 Jan 2017 23:43:13 +0100 Subject: Link fix in readme. --- keyboards/atreus62/keymaps/mneme/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'keyboards') diff --git a/keyboards/atreus62/keymaps/mneme/README.md b/keyboards/atreus62/keymaps/mneme/README.md index b4dc89625..1461f6c52 100644 --- a/keyboards/atreus62/keymaps/mneme/README.md +++ b/keyboards/atreus62/keymaps/mneme/README.md @@ -13,8 +13,8 @@ It's for Windows (current work forces me to) and Swedish (matter of birth) so ym * [Layouts](#layouts) - [Base layer](#base-layer) - - [Fun layer](#fun-layer) - [Nav layer](#nav-layer) + - [Sym layer](#sym-layer) - [LED states](#led-states) # Layouts @@ -39,7 +39,7 @@ It's for Windows (current work forces me to) and Swedish (matter of birth) so ym ## Nav layer -![Fun layer](img/fun.png) +![Nav layer](img/fun.png) Basic navigation on the right hand and modifiers close by for the left. The latter because I tend to use `ctrl+arrows` quite a lot. -- cgit v1.2.3-24-g4f1b From ed975f2454692fec28539a7014116beeb21b4c9e Mon Sep 17 00:00:00 2001 From: David Olsson Date: Thu, 12 Jan 2017 00:14:42 +0100 Subject: Remove comments and change to correct KN_PLUS instead of KC_PLUS. --- keyboards/atreus62/keymaps/mneme/keymap.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'keyboards') diff --git a/keyboards/atreus62/keymaps/mneme/keymap.c b/keyboards/atreus62/keymaps/mneme/keymap.c index 56d637120..eca452b77 100644 --- a/keyboards/atreus62/keymaps/mneme/keymap.c +++ b/keyboards/atreus62/keymaps/mneme/keymap.c @@ -170,7 +170,7 @@ static void m_handle_kf (keyrecord_t *record, uint8_t id) { code = long_press ? KC_F11 : KC_ESC; break; case KF_12: - code = long_press ? KC_F12 : KC_PLUS; + code = long_press ? KC_F12 : KN_PLUS; break; } register_code (code); @@ -267,19 +267,19 @@ void matrix_scan_user(void) { register_code(KC_RGUI); TAP_ONCE(KC_L); unregister_code(KC_RGUI); - }; // Todo + }; SEQ_TWO_KEYS(KC_F, KC_S){ register_code(KC_LCTRL); TAP_ONCE(KC_S); unregister_code(KC_LCTRL); - }; // Todo + }; SEQ_TWO_KEYS(KC_B, KC_D){ register_code(KC_LCTRL); TAP_ONCE(KC_W); unregister_code(KC_LCTRL); - }; // Todo + }; SEQ_TWO_KEYS (KC_S, KC_S) { // ¯\_(ツ)_/¯ -- cgit v1.2.3-24-g4f1b From b2419b31d3d4198192a1b5fb78b1c2e8ade0ce87 Mon Sep 17 00:00:00 2001 From: David Olsson Date: Thu, 12 Jan 2017 15:36:14 +0100 Subject: - Change docs to match keymap. - Switched around modifiers on the function layer to match muscle memory. - Added support for application switching. --- keyboards/atreus62/keymaps/mneme/README.md | 8 ++-- keyboards/atreus62/keymaps/mneme/img/fun.png | Bin 268634 -> 430634 bytes keyboards/atreus62/keymaps/mneme/keymap.c | 63 +++++++++++++++++++-------- 3 files changed, 50 insertions(+), 21 deletions(-) (limited to 'keyboards') diff --git a/keyboards/atreus62/keymaps/mneme/README.md b/keyboards/atreus62/keymaps/mneme/README.md index 1461f6c52..5bac545fc 100644 --- a/keyboards/atreus62/keymaps/mneme/README.md +++ b/keyboards/atreus62/keymaps/mneme/README.md @@ -33,8 +33,7 @@ It's for Windows (current work forces me to) and Swedish (matter of birth) so ym - `LEAD s l` : `λ`. - `LEAD s s` : `¯\_(ツ)_/¯` - `LEAD s f` : `凸(ツ)凸` - - `LEAD f s` : `ctrl+s` - - `LEAD b d` : `ctrl+w` + - `LEAD a *` : Application switching based on position in start menu. Very specific to my computer. ## Nav layer @@ -48,7 +47,10 @@ by for the left. The latter because I tend to use `ctrl+arrows` quite a lot. ![Sym layer](img/sym.png) -Easy access to most symbols I use on a daily basis. Most common are on the home row, the rest are grouped as best as I could. +* Easy access to most symbols I use on a daily basis. Most common are on the home row, the rest are grouped as best as I could. + +- `eq` : Tapdance, produces `===` and `!==` +- `fun`: Tapdance, produces `=>` and `() => {\n` # License GPL-3+ diff --git a/keyboards/atreus62/keymaps/mneme/img/fun.png b/keyboards/atreus62/keymaps/mneme/img/fun.png index a58933d96..ec5a478c6 100644 Binary files a/keyboards/atreus62/keymaps/mneme/img/fun.png and b/keyboards/atreus62/keymaps/mneme/img/fun.png differ diff --git a/keyboards/atreus62/keymaps/mneme/keymap.c b/keyboards/atreus62/keymaps/mneme/keymap.c index eca452b77..7c1879982 100644 --- a/keyboards/atreus62/keymaps/mneme/keymap.c +++ b/keyboards/atreus62/keymaps/mneme/keymap.c @@ -4,7 +4,6 @@ #include "action_layer.h" #include "action_util.h" -//avrdude -p atmega32u4 -P /dev/tty.usbmodem1411 -c avr109 -U flash:w:atreus63_default.hex /* *WINDOWS SWEDISH */ @@ -101,19 +100,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [BASE] = { { M(KF_11) ,M(KF_1) ,M(KF_2) ,M(KF_3) ,M(KF_4) ,M(KF_5) ,KC_NO ,M(KF_6) ,M(KF_7) ,M(KF_8) ,M(KF_9) ,M(KF_10) ,M(KF_12) }, - { KC_HYP ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_NO ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KN_AO }, + { KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_NO ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KN_AO }, { OSM_LCTL ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,KC_NO ,KC_H ,KC_J ,KC_K ,KC_L ,KN_OE ,KN_AE }, { OSM_LSFT ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_DELT ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KN_MINS ,OSM_LSFT }, - { MO(NAV) ,OSM_LCTL ,OSM_LALT ,KC_LGUI ,KC_SPC ,LT(SYM,KC_BSPC) ,KC_TAB ,LT(SYM,KC_ENT) ,KC_SPC ,KC_LEAD ,KC_LALT ,KC_LCTRL ,MO(NAV) } + { MO(NAV) ,OSM_LCTL ,OSM_LALT ,KC_LGUI ,KC_SPC ,LT(SYM,KC_BSPC) ,KC_HYP ,LT(SYM,KC_ENT) ,KC_SPC ,KC_LEAD ,KC_LALT ,KC_LCTRL ,MO(NAV) } }, [NAV] = { { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS }, { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_NO ,KC_PGUP ,KC_HOME ,KC_UP ,KC_END ,KC_TRNS ,KC_TRNS }, - { KC_TRNS ,KC_TRNS ,KC_LSFT ,KC_LCTL ,KC_LALT ,KC_TRNS ,KC_NO ,KC_PGDN ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_TRNS ,KC_TRNS }, - { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,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_TRNS ,KC_F12 ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_VOLD ,KC_VOLU } + { KC_TRNS ,KC_LSFT ,KC_LCTL ,KC_LALT ,KC_L ,KC_TRNS ,KC_NO ,KC_PGDN ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_VOLD ,KC_VOLU } }, [SYM] = { @@ -179,7 +178,6 @@ static void m_handle_kf (keyrecord_t *record, uint8_t id) { } const uint16_t PROGMEM fn_actions[] = { - }; const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) @@ -269,22 +267,51 @@ void matrix_scan_user(void) { unregister_code(KC_RGUI); }; - SEQ_TWO_KEYS(KC_F, KC_S){ - register_code(KC_LCTRL); - TAP_ONCE(KC_S); - unregister_code(KC_LCTRL); - }; - SEQ_TWO_KEYS(KC_B, KC_D){ - register_code(KC_LCTRL); - TAP_ONCE(KC_W); - unregister_code(KC_LCTRL); - }; + SEQ_TWO_KEYS (KC_A, KC_W) { + //Web - chrome + register_code (KC_LGUI); TAP_ONCE (KC_1); unregister_code (KC_LGUI); + } + SEQ_TWO_KEYS (KC_A, KC_P) { + //sPotify + register_code (KC_LGUI); TAP_ONCE (KC_2); unregister_code (KC_LGUI); + + } + SEQ_TWO_KEYS (KC_A, KC_T) { + //Total Commander + register_code (KC_LGUI); TAP_ONCE (KC_3); unregister_code (KC_LGUI); + + } + SEQ_TWO_KEYS (KC_A, KC_A) { + //Atom + register_code (KC_LGUI); TAP_ONCE (KC_4); unregister_code (KC_LGUI); + + } + SEQ_TWO_KEYS (KC_A, KC_E) { + //Emacs + register_code (KC_LGUI); TAP_ONCE (KC_5); unregister_code (KC_LGUI); + + } + SEQ_TWO_KEYS (KC_A, KC_C) { + //Cmdr + register_code (KC_LGUI); TAP_ONCE (KC_6); unregister_code (KC_LGUI); + + } + SEQ_TWO_KEYS (KC_A, KC_S) { + //Slack + register_code (KC_LGUI); TAP_ONCE (KC_7); unregister_code (KC_LGUI); + } + SEQ_TWO_KEYS (KC_S, KC_S) { // ¯\_(ツ)_/¯ unicode_input_start(); register_hex(0xaf); unicode_input_finish(); - register_code (KC_RALT); TAP_ONCE (KN_PLUS); unregister_code (KC_RALT); + register_code (KC_LALT); + register_code (KC_LCTL); + TAP_ONCE (KN_PLUS); + unregister_code (KC_LCTL); + unregister_code (KC_LALT); + register_code (KC_RSFT); TAP_ONCE (KC_8); unregister_code (KC_RSFT); unicode_input_start (); register_hex(0x30c4); unicode_input_finish(); register_code (KC_RSFT); TAP_ONCE (KC_9); TAP_ONCE(KC_7); unregister_code (KC_RSFT); -- cgit v1.2.3-24-g4f1b From 236a0b0b6012d311a3ec048498dacdb1851327a0 Mon Sep 17 00:00:00 2001 From: David Olsson Date: Thu, 12 Jan 2017 16:00:09 +0100 Subject: Update makefile. Readme. --- keyboards/atreus62/keymaps/mneme/Makefile | 7 +++---- keyboards/atreus62/keymaps/mneme/README.md | 2 +- 2 files changed, 4 insertions(+), 5 deletions(-) (limited to 'keyboards') diff --git a/keyboards/atreus62/keymaps/mneme/Makefile b/keyboards/atreus62/keymaps/mneme/Makefile index f20750dbc..046aec273 100644 --- a/keyboards/atreus62/keymaps/mneme/Makefile +++ b/keyboards/atreus62/keymaps/mneme/Makefile @@ -1,6 +1,5 @@ TAP_DANCE_ENABLE = yes -BOOTMAGIC_ENABLE = no -COMMAND_ENABLE = no -SLEEP_LED_ENABLE = no -UNICODE_ENABLE = yes NKRO_ENABLE = true +MOUSEKEY_ENABLE = no +EXTRAKEY_ENABLE = yes +CONSOLE_ENABLE = no diff --git a/keyboards/atreus62/keymaps/mneme/README.md b/keyboards/atreus62/keymaps/mneme/README.md index 5bac545fc..04ab070be 100644 --- a/keyboards/atreus62/keymaps/mneme/README.md +++ b/keyboards/atreus62/keymaps/mneme/README.md @@ -42,7 +42,7 @@ It's for Windows (current work forces me to) and Swedish (matter of birth) so ym Basic navigation on the right hand and modifiers close by for the left. The latter because I tend to use `ctrl+arrows` quite a lot. - + ## Sym layer ![Sym layer](img/sym.png) -- cgit v1.2.3-24-g4f1b From c660d5f8140f7ebc9a4c8302992438026a85b61d Mon Sep 17 00:00:00 2001 From: kd0kkv Date: Fri, 13 Jan 2017 08:30:46 -0600 Subject: Update keymap.c Fixed the default querty layout to have a B button and just one F --- keyboards/tv44/keymaps/default/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards') diff --git a/keyboards/tv44/keymaps/default/keymap.c b/keyboards/tv44/keymaps/default/keymap.c index f3f989f2d..b9fe33a7c 100644 --- a/keyboards/tv44/keymaps/default/keymap.c +++ b/keyboards/tv44/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_QW] = { /* Qwerty */ {KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC }, {MO(_L1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, MO(_L1) }, - {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_F, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, MO(_L2) }, + {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, MO(_L2) }, {KC_LCTL, MO(_L2), KC_LGUI, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_RALT, KC_ESC, XXXXXXX, TG(_L3) } }, [_DV] = { /* Dvorak */ -- cgit v1.2.3-24-g4f1b From c6299a785916d021dbfc2f533d059d7b0a51f121 Mon Sep 17 00:00:00 2001 From: Wojciech Siewierski Date: Sun, 18 Dec 2016 01:39:41 +0100 Subject: Update the vifon keymap --- keyboards/planck/keymaps/vifon/Makefile | 5 +---- keyboards/planck/keymaps/vifon/config.h | 5 +++++ keyboards/planck/keymaps/vifon/keymap.c | 4 ++-- 3 files changed, 8 insertions(+), 6 deletions(-) (limited to 'keyboards') diff --git a/keyboards/planck/keymaps/vifon/Makefile b/keyboards/planck/keymaps/vifon/Makefile index 53660a2e7..15a7b736f 100644 --- a/keyboards/planck/keymaps/vifon/Makefile +++ b/keyboards/planck/keymaps/vifon/Makefile @@ -1,6 +1,3 @@ -# Please remove if no longer applicable -$(warning THIS FILE MAY BE TOO LARGE FOR YOUR KEYBOARD) -$(warning Please disable some options in the Makefile to resolve) # Build Options @@ -10,7 +7,7 @@ $(warning Please disable some options in the Makefile to resolve) 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 = yes # Console for debug(+400) +CONSOLE_ENABLE = no # Console for debug(+400) COMMAND_ENABLE = yes # Commands for debug and configuration NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality diff --git a/keyboards/planck/keymaps/vifon/config.h b/keyboards/planck/keymaps/vifon/config.h index 9cb0634fb..a08b37cbe 100644 --- a/keyboards/planck/keymaps/vifon/config.h +++ b/keyboards/planck/keymaps/vifon/config.h @@ -81,6 +81,11 @@ along with this program. If not, see . /* prevent the modifiers from being stuck, sacrificing some memory */ #define PREVENT_STUCK_MODIFIERS +/* A larger buffer for the dynamic macros as this keymap is not taking + * up that much memory. + */ +#define DYNAMIC_MACRO_SIZE 256 + #ifdef SUBPROJECT_rev3 #include "rev3/config.h" #endif diff --git a/keyboards/planck/keymaps/vifon/keymap.c b/keyboards/planck/keymaps/vifon/keymap.c index 80c4a516c..ee0c0ac36 100644 --- a/keyboards/planck/keymaps/vifon/keymap.c +++ b/keyboards/planck/keymaps/vifon/keymap.c @@ -62,7 +62,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_PPG] = { /* Pure Pro: Gaming */ {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}, {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}, - {_______, _______, _______, _______, _______, _______, _______, _______, _______, DF(_RS), _______, _______}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}, {_______, _______, XXXXXXX, _______, KM_RS , _______, _______, KM_LW , _______, _______, _______, _______}, }, [_NM] = { /* Numeric */ @@ -90,7 +90,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { {_______, _______, KC_LGUI, KC_LALT, _______, _______, _______, _______, _______, _______, _______, _______} }, [_DYN]= { /* special */ - {_______, DYN_REC_START1, DYN_MACRO_PLAY1, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, KC_PAUS}, + {_______, DYN_REC_START1, DYN_MACRO_PLAY1, _______, _______, _______, _______, KC_APP, KC_INS, _______, KC_PSCR, KC_PAUS}, {_______, DYN_REC_START2, DYN_MACRO_PLAY2, _______, _______, _______, _______, _______, _______, KC_CAPS, KC_SLCK, KC_NLCK}, {KM_SHLK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}, {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} -- cgit v1.2.3-24-g4f1b From aa0939b5ef410e3003cc52383046a5d2dd0744f5 Mon Sep 17 00:00:00 2001 From: Bryan Hernandez Date: Fri, 13 Jan 2017 21:35:09 -0600 Subject: Added Bryan's keymap --- keyboards/ergodox/keymaps/bryan/keymap.c | 226 +++++++++++++++++++++++++++++++ 1 file changed, 226 insertions(+) create mode 100644 keyboards/ergodox/keymaps/bryan/keymap.c (limited to 'keyboards') diff --git a/keyboards/ergodox/keymaps/bryan/keymap.c b/keyboards/ergodox/keymaps/bryan/keymap.c new file mode 100644 index 000000000..572cea8cd --- /dev/null +++ b/keyboards/ergodox/keymaps/bryan/keymap.c @@ -0,0 +1,226 @@ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" +#include "version.h" + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media keys + +enum custom_keycodes { + PLACEHOLDER = SAFE_RANGE, // can always be here + EPRM, + VRSN, + RGB_SLD +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------------. ,--------------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | Cmd,Shft,[ | | Cmd,Shft,] | 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------------| |------------+------+------+------+------+------+--------| + * | Del | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * |BkSp/Cmd| A | S | D | F | G |------------| |------------| H | J | K | L |; / L2|' / Cmd | + * |--------+------+------+------+------+------| Hyper | | Meh |------+------+------+------+------+--------| + * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------------' `-------------+------+------+------+------+--------' + * |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * |Ctrl/Esc|PgUp| | App | LGui | + * ,------|------|------| |------+--------+------. + * | | | PgDn | | Home | | | + * | Space|Backsp|------| |------| Tab |Enter | + * | |ace | Esc | | Alt | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, M(2), + KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), + GUI_T(KC_BSPC), KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), + LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_LEFT,KC_RGHT, + CTL_T(KC_ESC),KC_PGUP, + KC_PGDN, + KC_SPC,KC_BSPC, KC_ESC, + // right hand + M(3), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),GUI_T(KC_QUOT), + MEH_T(KC_NO),KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT, + KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_FN1, + + ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_LALT,KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | <- | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, M(1), KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +// KC_COMM, KC_MINS + +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + break; + case 1: + if (record->event.pressed) { // For resetting EEPROM + eeconfig_init(); + } + break; + } + return MACRO_NONE; +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + // dynamically generate these. + case EPRM: + if (record->event.pressed) { + eeconfig_init(); + } + return false; + break; + case VRSN: + if (record->event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + return false; + break; + case RGB_SLD: + if (record->event.pressed) { + #ifdef RGBLIGHT_ENABLE + rgblight_mode(1); + #endif + } + return false; + break; + } + return true; +} + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } + +}; -- cgit v1.2.3-24-g4f1b