Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add handwired/dactyl_cc keyboard #20517

Merged
merged 28 commits into from
Jul 3, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
fcc5f0d
Added `dactyl_cc` keyboard
dunk2k Apr 20, 2023
48ca0d8
Update `readme.md`
dunk2k Apr 20, 2023
a53c272
added new line EOF
dunk2k Apr 20, 2023
c1cb81e
Update readme.md
dunk2k Apr 20, 2023
b091198
moved to data driven layout
dunk2k Apr 21, 2023
bf15fd8
Update keyboards/handwired/dactyl_cc/readme.md
dunk2k Apr 27, 2023
c39b784
Update keyboards/handwired/dactyl_cc/readme.md
dunk2k Apr 27, 2023
676c4be
Update keyboards/handwired/dactyl_cc/readme.md
dunk2k Apr 27, 2023
5c058f9
Update readme.md
dunk2k May 6, 2023
0808c0e
Update readme.md
dunk2k May 7, 2023
f24cb89
Update readme.md
dunk2k May 7, 2023
3f7b38a
Update readme.md
dunk2k May 7, 2023
b706967
Update keymap.c
dunk2k May 7, 2023
d4105ed
Update keymap.c
dunk2k May 7, 2023
e81520b
Update keyboards/handwired/dactyl_cc/readme.md
dunk2k May 9, 2023
60fd233
some `config.h` contents moved to keymap
dunk2k May 9, 2023
98ada8d
LAYOUT name reverted
dunk2k May 9, 2023
5276fd5
Update data/mappings/keyboard_aliases.hjson
dunk2k May 10, 2023
418087a
Update keyboards/handwired/dactyl_cc/readme.md
dunk2k May 10, 2023
3e408d3
Update keyboards/handwired/dactyl_cc/readme.md
dunk2k May 10, 2023
ea51d8f
Update keyboards/handwired/dactyl_cc/readme.md
dunk2k May 10, 2023
054d489
Update readme.md
dunk2k May 10, 2023
737365b
Update keyboards/handwired/dactyl_cc/info.json
dunk2k May 14, 2023
921ba75
update info.json
dunk2k May 20, 2023
8ed1786
update info.json
dunk2k May 31, 2023
e289a1b
keyboard directory tidied
dunk2k Jun 2, 2023
2b62c2d
Update keymap.c
dunk2k Jun 2, 2023
91ec242
Update readme.md
dunk2k Jun 4, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
117 changes: 117 additions & 0 deletions keyboards/handwired/dactyl_cc/info.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
{
"keyboard_name": "Dactyl CC",
"manufacturer": "mjohns",
"url": "https://github.com/mjohns/dactyl-cc",
"maintainer": "qmk",
"usb": {
"vid": "0xFEED",
"pid": "0x3060",
"device_version": "0.0.1"
},
"features": {
"bootmagic": true,
"mousekey": true,
"extrakey": true,
"console": false,
"command": true,
"nkro": false
},
"matrix_pins": {
"cols": ["D4", "C6", "D7", "E6", "B4", "B5"],
"rows": ["F6", "F7", "B1", "B3", "B2", "B6"]
},
"diode_direction": "COL2ROW",
"split": {
"enabled": true,
"soft_serial_pin": "D0"
},
"development_board": "promicro",
"layouts": {
"LAYOUT": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1, "y": 0},
{"matrix": [0, 2], "x": 2, "y": 0},
{"matrix": [0, 3], "x": 3, "y": 0},
{"matrix": [0, 4], "x": 4, "y": 0},
{"matrix": [0, 5], "x": 5, "y": 0},

{"matrix": [6, 0], "x": 11, "y": 0},
{"matrix": [6, 1], "x": 12, "y": 0},
{"matrix": [6, 2], "x": 13, "y": 0},
{"matrix": [6, 3], "x": 14, "y": 0},
{"matrix": [6, 4], "x": 15, "y": 0},
{"matrix": [6, 5], "x": 16, "y": 0},

{"matrix": [1, 0], "x": 0, "y": 1},
{"matrix": [1, 1], "x": 1, "y": 1},
{"matrix": [1, 2], "x": 2, "y": 1},
{"matrix": [1, 3], "x": 3, "y": 1},
{"matrix": [1, 4], "x": 4, "y": 1},
{"matrix": [1, 5], "x": 5, "y": 1},

{"matrix": [7, 0], "x": 11, "y": 1},
{"matrix": [7, 1], "x": 12, "y": 1},
{"matrix": [7, 2], "x": 13, "y": 1},
{"matrix": [7, 3], "x": 14, "y": 1},
{"matrix": [7, 4], "x": 15, "y": 1},
{"matrix": [7, 5], "x": 16, "y": 1},

{"matrix": [2, 0], "x": 0, "y": 2},
{"matrix": [2, 1], "x": 1, "y": 2},
{"matrix": [2, 2], "x": 2, "y": 2},
{"matrix": [2, 3], "x": 3, "y": 2},
{"matrix": [2, 4], "x": 4, "y": 2},
{"matrix": [2, 5], "x": 5, "y": 2},

{"matrix": [8, 0], "x": 11, "y": 2},
{"matrix": [8, 1], "x": 12, "y": 2},
{"matrix": [8, 2], "x": 13, "y": 2},
{"matrix": [8, 3], "x": 14, "y": 2},
{"matrix": [8, 4], "x": 15, "y": 2},
{"matrix": [8, 5], "x": 16, "y": 2},

{"matrix": [3, 0], "x": 0, "y": 3},
{"matrix": [3, 1], "x": 1, "y": 3},
{"matrix": [3, 2], "x": 2, "y": 3},
{"matrix": [3, 3], "x": 3, "y": 3},
{"matrix": [3, 4], "x": 4, "y": 3},
{"matrix": [3, 5], "x": 5, "y": 3},

{"matrix": [9, 0], "x": 11, "y": 3},
{"matrix": [9, 1], "x": 12, "y": 3},
{"matrix": [9, 2], "x": 13, "y": 3},
{"matrix": [9, 3], "x": 14, "y": 3},
{"matrix": [9, 4], "x": 15, "y": 3},
{"matrix": [9, 5], "x": 16, "y": 3},

{"matrix": [4, 0], "x": 1, "y": 4},
{"matrix": [4, 1], "x": 2, "y": 4},
{"matrix": [4, 2], "x": 3, "y": 4},
{"matrix": [4, 3], "x": 4, "y": 4},

{"matrix": [10, 2], "x": 12, "y": 4},
{"matrix": [10, 3], "x": 13, "y": 4},
{"matrix": [10, 4], "x": 14, "y": 4},
{"matrix": [10, 5], "x": 15, "y": 4},

{"matrix": [4, 4], "x": 6, "y": 5},
{"matrix": [4, 5], "x": 7, "y": 5},

{"matrix": [10, 0], "x": 9, "y": 5},
{"matrix": [10, 1], "x": 10, "y": 5},

{"matrix": [5, 2], "x": 5, "y": 6, "h": 2},
{"matrix": [5, 3], "x": 6, "y": 6, "h": 2},
{"matrix": [5, 5], "x": 7, "y": 6},

{"matrix": [11, 0], "x": 9, "y": 6},
{"matrix": [11, 2], "x": 10, "y": 6, "h": 2},
{"matrix": [11, 3], "x": 11, "y": 6, "h": 2},

{"matrix": [5, 4], "x": 7, "y": 7},
{"matrix": [11, 1], "x": 9, "y": 7}
]
}
}
}
28 changes: 28 additions & 0 deletions keyboards/handwired/dactyl_cc/keymaps/default/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
// Copyright 2022 mjohns
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once

/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE

/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

/* Enables This makes it easier for fast typists to use dual-function keys */
#define PERMISSIVE_HOLD

/* mouse config */
#define MOUSEKEY_DELAY 0
// Lowering MOUSEKEY_INTERVAL raises the cursor speed significantly, you may want to lower MOUSEKEY_MAX_SPEED (default: 10)
#define MOUSEKEY_INTERVAL 20
#define MOUSEKEY_MAX_SPEED 7
#define MOUSEKEY_WHEEL_DELAY 0

/* layer config */
#define TAPPING_TOGGLE 1

/* disable action features */
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
37 changes: 37 additions & 0 deletions keyboards/handwired/dactyl_cc/keymaps/default/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
// Copyright 2022 mjohns
// SPDX-License-Identifier: GPL-2.0-or-later

#include QMK_KEYBOARD_H

enum layers {
BASE,
NAV
};

#define CTL_ESC LCTL_T(KC_ESC)
#define CTL_CAP LCTL_T(KC_CAPS)
#define ALT_BSP LALT_T(KC_BSPC)
#define LT_SCLN LT(NAV, KC_SCLN)

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[BASE] = LAYOUT(
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_HOME,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
CTL_CAP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, LT_SCLN, KC_QUOT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT,
TT(NAV), KC_DEL, KC_PGUP, KC_RCTL,
KC_BSPC, CTL_ESC, KC_LGUI, KC_PGDN, KC_ENT, KC_SPC,
KC_LALT, KC_RALT
),
[NAV] = LAYOUT(
QK_BOOT, KC_NO, KC_MPRV, KC_MPLY, KC_MNXT, KC_NO, KC_BRIU, KC_P7, KC_P8, KC_P9, KC_NO, QK_BOOT,
_______, KC_VOLU, KC_WBAK, KC_MS_U, KC_WFWD, KC_WH_U, KC_BRID, KC_P4, KC_P5, KC_P6, KC_PMNS, _______,
_______, KC_VOLD, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D, KC_PPLS, KC_P1, KC_P2, KC_P3, KC_PSLS, _______,
KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_NO, KC_PAST, KC_PCMM, KC_P0, KC_PDOT, KC_PENT, _______,
KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
_______, _______, KC_HOME, _______,
KC_BTN1, KC_BTN2, _______, KC_END, _______, _______,
_______, ALT_BSP
)
};
28 changes: 28 additions & 0 deletions keyboards/handwired/dactyl_cc/keymaps/via/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
// Copyright 2022 mjohns
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once

/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE

/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

/* Enables This makes it easier for fast typists to use dual-function keys */
#define PERMISSIVE_HOLD

/* mouse config */
#define MOUSEKEY_DELAY 0
// Lowering MOUSEKEY_INTERVAL raises the cursor speed significantly, you may want to lower MOUSEKEY_MAX_SPEED (default: 10)
#define MOUSEKEY_INTERVAL 20
#define MOUSEKEY_MAX_SPEED 7
#define MOUSEKEY_WHEEL_DELAY 0

/* layer config */
#define TAPPING_TOGGLE 1

/* disable action features */
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
64 changes: 64 additions & 0 deletions keyboards/handwired/dactyl_cc/keymaps/via/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
// Copyright 2022 mjohns
// SPDX-License-Identifier: GPL-2.0-or-later

#include QMK_KEYBOARD_H

enum layers {
_BASE,
_NAV,
_SYS,
_BLANK
};

#define LT_1BSP LT(1, KC_BSPC)
#define LT_2SPC LT(2, KC_SPC)
#define MH_DEL MEH_T(KC_DEL)
#define HY_ENT HYPR_T(KC_ENT)
#define CA_PGDN LCA_T(KC_PGDN)
#define CAG_END LCAG_T(KC_END)
#define AG_PGUP LAG_T(KC_PGUP)
#define CG_HOME MT(MOD_LGUI | MOD_LCTL, KC_HOME)

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_GRV,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
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_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT,
KC_LCTL, KC_LALT, KC_RGUI, KC_RCTL,
LT_1BSP, MH_DEL, CG_HOME, AG_PGUP, HY_ENT, LT_2SPC,
CAG_END, CA_PGDN
),
[_NAV] = LAYOUT(
_______, _______, _______, _______, _______, _______, _______, KC_NUM, KC_PEQL, KC_PSLS, KC_PAST, _______,
_______, _______, _______, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, KC_PMNS, _______,
_______, QK_BOOT, _______, _______, KC_SLEP, _______, _______, KC_P4, KC_P5, KC_P6, KC_PPLS, _______,
_______, _______, _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, KC_PENT, _______,
_______, _______, _______, _______, _______, _______, KC_PDOT, KC_PENT,
_______, _______, _______, KC_P0,
_______, _______, _______, _______, _______, MO(3),
_______, _______
),
[_SYS] = LAYOUT(
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_VOLU, KC_WBAK, KC_MS_U, KC_WFWD, KC_WH_U, _______, KC_NO, KC_NO, KC_NO, KC_NO, _______,
_______, KC_MUTE, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D, _______, KC_PSCR, KC_PAUS, KC_INS, KC_SCRL, _______,
_______, KC_VOLD, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, _______, KC_NO, KC_NO, KC_NO, KC_NO, _______,
_______, _______, _______, _______, _______, _______, KC_UP, KC_RGHT,
_______, _______, _______, _______,
KC_BTN1, KC_BTN2, _______, _______, _______, _______,
_______, _______

),
[_BLANK] = LAYOUT(
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_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_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_NO, KC_NO
)
};
1 change: 1 addition & 0 deletions keyboards/handwired/dactyl_cc/keymaps/via/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
VIA_ENABLE = yes
27 changes: 27 additions & 0 deletions keyboards/handwired/dactyl_cc/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Dactyl-CC

![DactylCC](https://i.imgur.com/CUbPLZCh.jpeg)

Modelled on the *Kinesis Advantage* (KA) 1|2, though missing it's combined function and program row, the *Dactyl CC* retains the finger and thumb key placements of the KA but opts to split board into physical halves.

* Keyboard Maintainer: [Michael Johns](https://github.com/mjohns)
* Hardware Supported: Pro micro controller or clones of
* Hardware Availability: [Dactyl CC GitHub](https://github.com/mjohns/dactyl-cc)

Make example for this keyboard (after setting up your build environment):

make handwired/dactyl_cc:default

Flashing example for this keyboard:

make handwired/dactyl_cc:default:flash

See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).

## Bootloader

Enter the bootloader in 3 ways:

* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
Empty file.