added wdactyl & void 40

This commit is contained in:
Arne Weiss
2022-08-27 08:07:14 +02:00
parent 874e867764
commit ce2da3f7c7
41 changed files with 2065 additions and 0 deletions

View File

@@ -0,0 +1,27 @@
// Copyright 2022 Arne Weiss (@smarwei)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
/*
* 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
// LED stuff
#define RGB_DI_PIN D3
#define RGBLED_NUM 13
#define RGBLIGHT_DEFAULT_HUE 120
#define RGBLIGHT_MODE_BREATHING 2

View File

@@ -0,0 +1,83 @@
{
"manufacturer": "Arne Weiss",
"keyboard_name": "void40",
"maintainer": "smarwei",
"bootloader": "caterina",
"diode_direction": "COL2ROW",
"features": {
"bootmagic": true,
"command": false,
"console": false,
"extrakey": true,
"mousekey": true,
"nkro": true
},
"matrix_pins": {
"cols": ["B5", "B4", "E6", "D7", "B6", "B2", "B3", "B1", "F7", "F6", "F5", "F4"],
"rows": ["D1", "D0", "D4", "C6"]
},
"processor": "atmega32u4",
"url": "",
"usb": {
"device_version": "1.0.0",
"pid": "0x0000",
"vid": "0xFEED"
},
"layouts": {
"LAYOUT_std": {
"layout": [
{ "matrix": [0, 0], "x": 0, "y": 0 },
{ "matrix": [0, 1], "x": 1, "y": 0 },
{ "matrix": [0, 2], "x": 2, "y": 0 },
{ "matrix": [0, 3], "x": 3, "y": 0 },
{ "matrix": [0, 4], "x": 4, "y": 0 },
{ "matrix": [0, 5], "x": 5, "y": 0 },
{ "matrix": [0, 6], "x": 6, "y": 0 },
{ "matrix": [0, 7], "x": 7, "y": 0 },
{ "matrix": [0, 8], "x": 8, "y": 0 },
{ "matrix": [0, 9], "x": 9, "y": 0 },
{ "matrix": [0, 10], "x": 10, "y": 0 },
{ "matrix": [0, 11], "x": 11, "y": 0 },
{ "matrix": [1, 0], "x": 0, "y": 1 },
{ "matrix": [1, 1], "x": 1, "y": 1 },
{ "matrix": [1, 2], "x": 2, "y": 1 },
{ "matrix": [1, 3], "x": 3, "y": 1 },
{ "matrix": [1, 4], "x": 4, "y": 1 },
{ "matrix": [1, 5], "x": 5, "y": 1 },
{ "matrix": [1, 6], "x": 6, "y": 1 },
{ "matrix": [1, 7], "x": 7, "y": 1 },
{ "matrix": [1, 8], "x": 8, "y": 1 },
{ "matrix": [1, 9], "x": 9, "y": 1 },
{ "matrix": [1, 10], "x": 10, "y": 1 },
{ "matrix": [1, 11], "x": 11, "y": 1 },
{ "matrix": [2, 0], "x": 0, "y": 2 },
{ "matrix": [2, 1], "x": 1, "y": 2 },
{ "matrix": [2, 2], "x": 2, "y": 2 },
{ "matrix": [2, 3], "x": 3, "y": 2 },
{ "matrix": [2, 4], "x": 4, "y": 2 },
{ "matrix": [2, 5], "x": 5, "y": 2 },
{ "matrix": [2, 6], "x": 6, "y": 2 },
{ "matrix": [2, 7], "x": 7, "y": 2 },
{ "matrix": [2, 8], "x": 8, "y": 2 },
{ "matrix": [2, 9], "x": 9, "y": 2 },
{ "matrix": [2, 10], "x": 10, "y": 2 },
{ "matrix": [2, 11], "x": 11, "y": 2 },
{ "matrix": [3, 0], "x": 0, "y": 3 },
{ "matrix": [3, 1], "x": 1, "y": 3 },
{ "matrix": [3, 2], "x": 2, "y": 3 },
{ "matrix": [3, 3], "x": 3, "y": 3 },
{ "matrix": [3, 4], "x": 4, "y": 3 },
{ "matrix": [3, 5], "x": 5, "y": 3 },
{ "matrix": [3, 6], "x": 6, "y": 3 },
{ "matrix": [3, 7], "x": 7, "y": 3 },
{ "matrix": [3, 8], "x": 8, "y": 3 },
{ "matrix": [3, 9], "x": 9, "y": 3 },
{ "matrix": [3, 10], "x": 10, "y": 3 },
{ "matrix": [3, 11], "x": 11, "y": 3 }
]
}
}
}

View File

@@ -0,0 +1,51 @@
#include QMK_KEYBOARD_H
// Tap Dance declarations
enum {
LAYR,
};
// Tap Dance definitions
qk_tap_dance_action_t tap_dance_actions[] = {
// TD(0) = On Tap -> MO(2); On hold -> MO(2); On double tap -> TO(3)
[LAYR] = ACTION_TAP_DANCE_DOUBLE(MO(2), TO(0)),
};
#ifdef RGBLIGHT_ENABLE
void keyboard_post_init_user(void) {
rgblight_enable_noeeprom(); // Enables RGB, without saving settings
rgblight_sethsv_noeeprom(HSV_PURPLE);
rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
}
#endif
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_std(
KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_F24,
KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, KC_CAPS,
CAPSWRD, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLASH, KC_RSFT,
RGB_TOG, KC_LGUI, KC_LALT, KC_LCTL, MO(1), KC_LSFT, KC_ENT, TD(0), KC_SPC, KC_MINS, KC_EQL, KC_NO
),
[1] = LAYOUT_std(
_______, KC_ESC, KC_WH_U, KC_WBAK, KC_WFWD, KC_MS_U, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, KC_ESC,
_______, KC_LALT, KC_WH_D, KC_LSFT, KC_LCTL, KC_MS_D, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, KC_MENU,
_______, KC_WH_L, KC_UNDO, KC_CUT, KC_COPY, C(S(KC_V)), KC_BTN1, KC_BTN2, KC_BTN3, KC_MS_L, KC_MS_R, KC_WH_R,
_______, _______, _______, _______, _______, _______, _______, TO(0), _______, _______, _______, _______
),
[2] = LAYOUT_std(
_______, _______, S(KC_MINS), S(KC_LBRC), S(KC_RBRC), S(KC_6), S(KC_1), S(KC_COMM), S(KC_DOT), KC_EQL, S(KC_7), _______,
_______, KC_NUBS, KC_SLSH, KC_LBRC, KC_RBRC, S(8), S(KC_SLSH), S(KC_9), S(KC_0), KC_MINS, S(KC_SCLN),S(KC_2),
_______, S(3), S(4), S(KC_NUBS), S(KC_GRV), KC_GRV, S(KC_EQL), S(KC_5), S(KC_COMM), KC_DOT, KC_SCLN, _______,
_______, _______, _______, _______, _______, _______, _______, TO(0), _______, _______, _______, _______
),
[3] = LAYOUT_std(
_______, _______, _______, _______, _______, _______, KC_PSCR, KC_7, KC_8, KC_9, KC_PPLS, KC_F12,
_______, _______, _______, _______, _______, _______, KC_0, KC_4, KC_5, KC_6, KC_0, _______,
_______, _______, _______, _______, _______, _______, KC_0, KC_1, KC_2, KC_3, KC_DOT, KC_COMM,
QK_BOOT, _______, _______, _______, _______, _______, _______, TO(0), _______, _______, _______, _______
)
};

View File

@@ -0,0 +1,6 @@
/* SPDX-License-Identifier: GPL-2.0-or-later */
#pragma once
#define VIAL_KEYBOARD_UID {0xE6, 0xF2, 0x98, 0x56, 0x62, 0xAC, 0x50, 0x86}
// #define VIAL_TAP_DANCE_ENTRIES 1

View File

@@ -0,0 +1,49 @@
#include QMK_KEYBOARD_H
// XMonad Combos
// #define TRMNAL G(S(KC_ENT))
// // #define SHNK_AR G(S(KC_ENT))
// #define TRMNAL G(S(KC_ENT))
// #define TRMNAL G(S(KC_ENT))
// #define TRMNAL G(S(KC_ENT))
// TD(0) = On Tap -> MO(2); On hold -> MO(2); On double tap -> TO(3)
// TD(0) = On hold -> MO(2); On double tap -> TO(2)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_std(
KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_F24,
KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, KC_CAPS,
CAPSWRD, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLASH, KC_RSFT,
KC_LSFT, KC_LGUI, KC_LALT, KC_LCTL, MO(1), KC_LSFT, KC_ENT, TD(0), KC_SPC, KC_MINS, KC_EQL, TO(3)
),
[1] = LAYOUT_std(
_______, KC_ESC, KC_WH_U, KC_WBAK, KC_WFWD, KC_MS_U, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, KC_ESC,
_______, KC_LALT, KC_WH_D, KC_LSFT, KC_LCTL, KC_MS_D, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, KC_MENU,
_______, KC_WH_L, KC_UNDO, KC_CUT, KC_COPY, C(S(KC_V)), KC_BTN1, KC_BTN2, KC_BTN3, KC_MS_L, KC_MS_R, KC_WH_R,
_______, _______, _______, _______, _______, _______, _______, TO(0), _______, _______, _______, _______
),
[2] = LAYOUT_std(
_______, _______, S(KC_MINS), S(KC_LBRC), S(KC_RBRC), S(KC_6), S(KC_1), S(KC_COMM), S(KC_DOT), KC_EQL, S(KC_7), _______,
_______, KC_NUBS, KC_SLSH, KC_LBRC, KC_RBRC, S(8), S(KC_SLSH), S(KC_9), S(KC_0), KC_MINS, S(KC_SCLN),S(KC_2),
_______, S(3), S(4), S(KC_NUBS), S(KC_GRV), KC_GRV, S(KC_EQL), S(KC_5), S(KC_COMM), KC_DOT, KC_SCLN, _______,
_______, _______, _______, _______, _______, _______, _______, TO(0), _______, _______, _______, _______
),
[3] = LAYOUT_std(
_______, _______, _______, _______, _______, _______, KC_PSCR, KC_7, KC_8, KC_9, KC_PPLS, KC_F12,
_______, _______, _______, _______, _______, _______, KC_0, KC_4, KC_5, KC_6, KC_0, _______,
_______, _______, _______, _______, _______, _______, KC_0, KC_1, KC_2, KC_3, KC_DOT, KC_COMM,
QK_BOOT, _______, _______, _______, _______, _______, _______, TO(0), _______, _______, _______, _______
)
// [4] = LAYOUT_std(
// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
// _______, TERMNAL, _______, _______, _______, _______, SHNK_AR, NXT_WND, PRV_WND, EXND_AR, _______, _______,
// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
// )
};

View File

@@ -0,0 +1,430 @@
{
"version": 1,
"uid": 9678425137578832614,
"layout": [
[
[
"KC_TAB",
"KC_Q",
"KC_W",
"KC_F",
"KC_P",
"KC_B",
"KC_J",
"KC_L",
"KC_U",
"KC_Y",
"KC_SCOLON",
"RESET"
],
[
"KC_ESCAPE",
"KC_A",
"KC_R",
"KC_S",
"KC_T",
"KC_G",
"KC_M",
"KC_N",
"KC_E",
"KC_I",
"KC_O",
"KC_CAPSLOCK"
],
[
23980,
"KC_Z",
"KC_X",
"KC_C",
"KC_D",
"KC_V",
"KC_K",
"KC_H",
"KC_COMMA",
"KC_DOT",
"KC_SLASH",
"KC_RSHIFT"
],
[
"KC_LSHIFT",
"KC_LGUI",
"KC_LALT",
"KC_LCTRL",
"MO(1)",
"KC_LSHIFT",
"KC_ENTER",
"TD(0)",
"KC_SPACE",
"KC_MINUS",
"KC_EQUAL",
"TO(3)"
]
],
[
[
"KC_TRNS",
"KC_ESCAPE",
"KC_WH_U",
"KC_WBAK",
"KC_WFWD",
"KC_MS_U",
"KC_PGUP",
"KC_HOME",
"KC_UP",
"KC_END",
"KC_DELETE",
"KC_ESCAPE"
],
[
"KC_TRNS",
"KC_LALT",
"KC_WH_D",
"KC_LSHIFT",
"KC_LCTRL",
"KC_MS_D",
"KC_PGDOWN",
"KC_LEFT",
"KC_DOWN",
"KC_RIGHT",
"KC_BSPACE",
118
],
[
"KC_TRNS",
"KC_WH_L",
"KC_UNDO",
"KC_CUT",
"KC_COPY",
"C_S(KC_V)",
"KC_BTN1",
"KC_BTN2",
"KC_BTN3",
"KC_MS_L",
"KC_MS_R",
"KC_WH_R"
],
[
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"TO(0)",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS"
]
],
[
[
"KC_TRNS",
"KC_TRNS",
"LSFT(KC_MINUS)",
"LSFT(KC_LBRACKET)",
"LSFT(KC_RBRACKET)",
"LSFT(KC_6)",
"LSFT(KC_1)",
"LSFT(KC_COMMA)",
"LSFT(KC_DOT)",
"KC_EQUAL",
"LSFT(KC_7)",
"KC_TRNS"
],
[
"KC_TRNS",
"KC_NONUS_BSLASH",
"KC_SLASH",
"KC_LBRACKET",
"KC_RBRACKET",
"LSFT(KC_E)",
"LSFT(KC_SLASH)",
"LSFT(KC_9)",
"LSFT(KC_0)",
"KC_MINUS",
"LSFT(KC_SCOLON)",
"LSFT(KC_2)"
],
[
"KC_TRNS",
515,
"LSFT(KC_A)",
"LSFT(KC_NONUS_BSLASH)",
"LSFT(KC_GRAVE)",
"KC_GRAVE",
"LSFT(KC_EQUAL)",
"LSFT(KC_5)",
"LSFT(KC_COMMA)",
"KC_DOT",
"KC_SCOLON",
"KC_TRNS"
],
[
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"TO(0)",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS"
]
],
[
[
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_PSCREEN",
"KC_7",
"KC_8",
"KC_9",
"KC_KP_PLUS",
"KC_F12"
],
[
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_0",
"KC_4",
"KC_5",
"KC_6",
"KC_0",
"KC_TRNS"
],
[
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_0",
"KC_1",
"KC_2",
"KC_3",
"KC_DOT",
"KC_COMMA"
],
[
"RESET",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"TO(0)",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS"
]
]
],
"encoder_layout": [
[],
[],
[],
[]
],
"layout_options": -1,
"macro": [
[
[
"down",
"KC_LSHIFT"
],
[
"tap",
"KC_9"
],
[
"up",
"KC_LSHIFT"
],
[
"down",
"KC_LSHIFT"
],
[
"tap",
"KC_SCOLON"
],
[
"up",
"KC_LSHIFT"
]
],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[]
],
"vial_protocol": 5,
"via_protocol": 9,
"tap_dance": [
[
"KC_NO",
"KC_NO",
"KC_NO",
"KC_NO",
200
],
[
"KC_NO",
"KC_NO",
"KC_NO",
"KC_NO",
200
],
[
"KC_NO",
"KC_NO",
"KC_NO",
"KC_NO",
200
],
[
"KC_NO",
"KC_NO",
"KC_NO",
"KC_NO",
200
],
[
"KC_NO",
"KC_NO",
"KC_NO",
"KC_NO",
200
],
[
"KC_NO",
"KC_NO",
"KC_NO",
"KC_NO",
200
],
[
"KC_NO",
"KC_NO",
"KC_NO",
"KC_NO",
200
],
[
"KC_NO",
"KC_NO",
"KC_NO",
"KC_NO",
200
]
],
"combo": [
[
"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"
]
],
"key_override": [],
"settings": {
"1": 0,
"2": 50,
"3": 0,
"4": 175,
"5": 5,
"6": 5000,
"7": 200,
"8": 0,
"9": 10,
"10": 20,
"11": 8,
"12": 10,
"13": 30,
"14": 10,
"15": 80,
"16": 8,
"17": 40,
"18": 10,
"19": 80,
"20": 5,
"21": 0
}
}

View File

@@ -0,0 +1,7 @@
# This file intentionally left blank
VIA_ENABLE = yes
VIAL_ENABLE = yes
VIAL_INSECURE = yes
LTO_ENABLE = yes
COMBO_ENABLED = no
KEY_OVERRIDE_ENABLE = no

View File

@@ -0,0 +1,133 @@
{
"name": "void40",
"lighting": "none",
"matrix": {
"rows": 4,
"cols": 12
},
"macros": [
[
{
"action": "down",
"keycodes": [
"LSFT"
]
},
"hello world1",
{
"action": "up",
"keycodes": [
"LSFT"
]
}
],
[
{
"action": "tap",
"keycodes": [
"LCTL",
"LALT",
"DEL"
]
}
],
[
"ding!",
{
"action": "beep"
}
],
[
{
"action": "tap",
"keycodes": [
"F1"
]
},
{
"action": "delay",
"duration": "1000"
},
{
"action": "tap",
"keycodes": [
"PGDN"
]
}
]
],
"layouts": {
"labels": [
"2U Spacebar"
],
"keymap": [
{
"name": "VOID40",
"author": "Arne Weiss"
},
[
"0,0",
"0,1",
"0,2",
"0,3",
"0,4",
"0,5",
"0,6",
"0,7",
"0,8",
"0,9",
"0,10",
"0,11"
],
[
"1,0",
"1,1",
"1,2",
"1,3",
"1,4",
"1,5",
"1,6",
"1,7",
"1,8",
"1,9",
"1,10",
"1,11"
],
[
"2,0",
"2,1",
"2,2",
"2,3",
"2,4",
"2,5",
"2,6",
"2,7",
"2,8",
"2,9",
"2,10",
"2,11"
],
[
"3,0",
"3,1",
"3,2",
"3,3",
"3,4",
"3,5\n\n\n0,0",
"3,6\n\n\n0,0",
"3,7",
"3,8",
"3,9",
"3,10",
"3,11"
],
[
{
"x": 5,
"w": 2
},
"3,5\n\n\n0,1"
]
]
}
}

View File

@@ -0,0 +1,27 @@
# wdactyl_dummy
![wdactyl_dummy](imgur.com image replace me!)
*A short description of the keyboard/project*
* Keyboard Maintainer: [Arne Weiss](https://github.com/smarwei)
* Hardware Supported: *The PCBs, controllers supported*
* Hardware Availability: *Links to where you can find this hardware*
Make example for this keyboard (after setting up your build environment):
make wdactyl_dummy:default
Flashing example for this keyboard:
make wdactyl_dummy: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 `RESET` if it is available

View File

@@ -0,0 +1,7 @@
# This file intentionally left blank
# VIA_ENABLE = yes
# VIAL_ENABLE = yes
# VIAL_INSECURE = yes
CAPS_WORD_ENABLE = yes
TAP_DANCE_ENABLE = yes
RGBLIGHT_ENABLE = yes

View File

@@ -0,0 +1,75 @@
#include QMK_KEYBOARD_H
#define _LOWER 3
#define _RAISE 4
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
* ┌───┬───┬───┬───┬───┬───┐
* │F7 │F8 │F9 │F10│F11|F12|
* ├───┼───┼───┼───┼───┼───┤
* │ ~ │ 1 │ 2 │ 3 │ 4 | 5 |
* ├───┼───┼───┼───┼───┼───┤
* │ A │ Q │ W │ F │ P | B |
* ├───┼───┼───┼───┼───┼───┤
* │ A │ A │ R │ S │ T | G |
* ├───┼───┼───┼───┼───┼───┤
* │ A │ Z │ , │ . │ / |PRT|
* └───┴───┼───┼───┼───┴───┘
* │B1 │B2 |
* └───┼───┼───┬───┐
* │RET│SPC│ - │
* └───┼───┼───┤
* │LUP│LDN│
* └───┴───┘
*/
[0] = LAYOUT_left(
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6,
KC_TILD, KC_1, KC_2, KC_3, KC_4, KC_5,
KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B,
KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_G,
KC_LSFT, KC_Z, KC_X, KC_C, KC_D, KC_V,
KC_BTN1, KC_BTN2,
KC_A, MO(3), KC_LSFT,
KC_LCTL, KC_LALT
),
[1] = LAYOUT_left(
_______, _______, _______, _______, _______, _______,
_______, _______, KC_UNDS, KC_LBRC, KC_RBRC, KC_CIRC,
_______, KC_BSLS, KC_SLSH, KC_LCBR, KC_RCBR, KC_ASTR,
_______, KC_HASH, KC_DLR, KC_PIPE, KC_TILD, KC_GRV,
_______, _______, _______, _______, _______, _______,
_______, _______,
KC_A, MO(2), KC_LSFT,
KC_LCTL, KC_LALT
),
[2] = LAYOUT_left(
_______, _______, _______, _______, _______, _______,
_______, KC_PGUP, KC_BSPC, KC_UP, KC_DEL, KC_PGDN,
_______, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END,
_______, _______, KC_TAB, _______, KC_ENT, _______,
_______, _______, _______, _______, _______, _______,
_______, _______,
_______, _______, _______,
_______, _______
),
[3] = LAYOUT_left(
_______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______,
_______, KC_ESC, KC_WH_U, KC_WBAK, KC_WFWD, KC_MS_U,
_______, KC_LALT, KC_WH_D, KC_LSFT, KC_LCTL, KC_MS_D,
_______, KC_WH_L, KC_UNDO, KC_CUT, KC_COPY, KC_PSTE,
_______, _______,
KC_A, _______, KC_LSFT,
KC_LCTL, KC_LALT
)
};

View File

@@ -0,0 +1,73 @@
#include QMK_KEYBOARD_H
#define _LOWER 3
#define _RAISE 4
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
* ┌───┬───┬───┬───┬───┬───┐
* │F7 │F8 │F9 │F10│F11|F12|
* ├───┼───┼───┼───┼───┼───┤
* │ 6 │ 7 │ 8 │ 9 │ 0 |TG |
* ├───┼───┼───┼───┼───┼───|
* │ J │ L │ U │ Y │ ; |F24|
* ├───┼───┼───┼───┼───┼───|
* │ M │ N │ E │ I │ O |CPS|
* ├───┼───┼───┼───┼───┼───|
* │ K │ H │ , │ . │ / |PRT|
* └───┴───┼───┼───┼───┴───┘
* │ - │ = |
* ┌───┬───┼───┼───┘
* │RET│SPC│MO1│
* ├───┼───┼───┘
* │LUP│LDN│
* └───┴───┘
*/
[0] = LAYOUT_std(
KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
KC_6, KC_7, KC_8, KC_9, KC_0, SH_TG,
KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_F24,
KC_M, KC_N, KC_E, KC_I, KC_O, KC_CAPS,
KC_K, KC_H, KC_COMM, KC_DOT, KC_SLASH, KC_RSFT,
KC_MINS, KC_EQL,
KC_ENT, MO(3), KC_SPC,
KC_LGUI, KC_LSFT
),
[1] = LAYOUT_std(
_______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______,
S(KC_1), S(KC_COMM), S(KC_DOT), KC_EQL, S(KC_7), _______,
S(KC_SLSH), S(KC_9), S(KC_0), KC_MINS, S(KC_SCLN), S(KC_2),
S(KC_EQL), S(KC_5), S(KC_COMM), KC_DOT, KC_SCLN, _______,
_______, _______,
_______, _______, _______,
_______, _______
),
[2] = LAYOUT_std(
_______, _______, _______, _______, _______, _______,
KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
KC_PSCR, KC_7, KC_8, KC_9, KC_PPLS, KC_F12,
KC_0, KC_4, KC_5, KC_6, KC_0, _______,
KC_0, KC_1, KC_2, KC_3, KC_DOT, KC_COMM,
KC_0, KC_0,
_______, _______, _______,
_______, _______
),
[3] = LAYOUT_std(
_______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______,
KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, KC_ESC,
KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, KC_MENU,
KC_BTN1, KC_BTN2, KC_BTN3, KC_MS_L, KC_MS_R, KC_WH_R,
KC_0, KC_0,
_______, _______, _______,
_______, _______
)
};

View File

@@ -0,0 +1,27 @@
// Copyright 2022 Arne Weiss (@smarwei)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
/*
* 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
// Split stuff
#define SOFT_SERIAL_PIN D2
#define MASTER_RIGHT
// #define MASTER_LEFT

View File

@@ -0,0 +1,119 @@
{
"manufacturer": "Arne Weiss",
"keyboard_name": "wdactyl_combined",
"maintainer": "smarwei",
"bootloader": "caterina",
"diode_direction": "COL2ROW",
"features": {
"bootmagic": true,
"command": false,
"console": false,
"extrakey": true,
"mousekey": true,
"nkro": true
},
"matrix_pins": {
"rows": ["F4", "F5", "F6", "F7", "B1", "B3", "B2"],
"cols": ["E6", "D7", "C6", "D4", "D0", "D1"]
},
"processor": "atmega32u4",
"url": "",
"usb": {
"device_version": "1.0.0",
"pid": "0x0000",
"vid": "0xFEED"
},
"layouts": {
"LAYOUT_std": {
"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": [7, 0], "x": 0, "y": 0 },
{ "matrix": [7, 1], "x": 1, "y": 0 },
{ "matrix": [7, 2], "x": 2, "y": 0 },
{ "matrix": [7, 3], "x": 3, "y": 0 },
{ "matrix": [7, 4], "x": 4, "y": 0 },
{ "matrix": [7, 5], "x": 5, "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": [8, 0], "x": 0, "y": 1 },
{ "matrix": [8, 1], "x": 1, "y": 1 },
{ "matrix": [8, 2], "x": 2, "y": 1 },
{ "matrix": [8, 3], "x": 3, "y": 1 },
{ "matrix": [8, 4], "x": 4, "y": 1 },
{ "matrix": [8, 5], "x": 5, "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": [9, 0], "x": 0, "y": 2 },
{ "matrix": [9, 1], "x": 1, "y": 2 },
{ "matrix": [9, 2], "x": 2, "y": 2 },
{ "matrix": [9, 3], "x": 3, "y": 2 },
{ "matrix": [9, 4], "x": 4, "y": 2 },
{ "matrix": [9, 5], "x": 5, "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": [10, 0], "x": 0, "y": 3 },
{ "matrix": [10, 1], "x": 1, "y": 3 },
{ "matrix": [10, 2], "x": 2, "y": 3 },
{ "matrix": [10, 3], "x": 3, "y": 3 },
{ "matrix": [10, 4], "x": 4, "y": 3 },
{ "matrix": [10, 5], "x": 5, "y": 3 },
{ "matrix": [4, 0], "x": 0, "y": 4 },
{ "matrix": [4, 1], "x": 1, "y": 4 },
{ "matrix": [4, 2], "x": 2, "y": 4 },
{ "matrix": [4, 3], "x": 3, "y": 4 },
{ "matrix": [4, 4], "x": 4, "y": 4 },
{ "matrix": [4, 5], "x": 5, "y": 4 },
{ "matrix": [11, 0], "x": 0, "y": 4 },
{ "matrix": [11, 1], "x": 1, "y": 4 },
{ "matrix": [11, 2], "x": 2, "y": 4 },
{ "matrix": [11, 3], "x": 3, "y": 4 },
{ "matrix": [11, 4], "x": 4, "y": 4 },
{ "matrix": [11, 5], "x": 5, "y": 4 },
{ "matrix": [5, 2], "x": 1, "y": 5 },
{ "matrix": [5, 3], "x": 0, "y": 5 },
{ "matrix": [12, 2], "x": 0, "y": 5 },
{ "matrix": [12, 3], "x": 1, "y": 5 },
{ "matrix": [5, 4], "x": 0, "y": 6 },
{ "matrix": [5, 5], "x": 1, "y": 6 },
{ "matrix": [6, 5], "x": 2, "y": 6 },
{ "matrix": [13, 0], "x": 0, "y": 6 },
{ "matrix": [12, 0], "x": 1, "y": 6 },
{ "matrix": [12, 1], "x": 2, "y": 6 },
{ "matrix": [6, 4], "x": 0, "y": 7 },
{ "matrix": [6, 3], "x": 1, "y": 7 },
{ "matrix": [13, 2], "x": 0, "y": 7 },
{ "matrix": [13, 1], "x": 1, "y": 7 }
]
}
}
}

View File

@@ -0,0 +1,83 @@
#include QMK_KEYBOARD_H
// Tap Dance declarations
enum {
LAYR,
};
// Tap Dance definitions
qk_tap_dance_action_t tap_dance_actions[] = {
// TD(0) = On Tap -> MO(2); On hold -> MO(2); On double tap -> TO(3)
[LAYR] = ACTION_TAP_DANCE_DOUBLE(MO(2), TO(0)),
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
* ┌───┬───┬───┬───┬───┬───┐
* │F7 │F8 │F9 │F10│F11|F12|
* ├───┼───┼───┼───┼───┼───┤
* │ 6 │ 7 │ 8 │ 9 │ 0 |TG |
* ├───┼───┼───┼───┼───┼───|
* │ J │ L │ U │ Y │ ; |F24|
* ├───┼───┼───┼───┼───┼───|
* │ M │ N │ E │ I │ O |CPS|
* ├───┼───┼───┼───┼───┼───|
* │ K │ H │ , │ . │ / |PRT|
* └───┴───┼───┼───┼───┴───┘
* │ - │ = |
* ┌───┬───┼───┼───┘
* │RET│SPC│MO1│
* ├───┼───┼───┘
* │LUP│LDN│
* └───┴───┘
*/
[0] = LAYOUT_std(
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_TILD, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, SH_TG,
KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_F24,
KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, KC_CAPS,
CAPSWRD, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLASH, KC_RSFT,
KC_LGUI, KC_LALT, KC_MINS, KC_EQL,
KC_LCTL, MO(1), KC_LSFT, KC_ENT, TD(0), KC_SPC,
KC_LCTL, KC_LALT, KC_LGUI, KC_LSFT
),
[1] = LAYOUT_std(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, KC_ESC, KC_WH_U, KC_WBAK, KC_WFWD, KC_MS_U, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, KC_ESC,
_______, KC_LALT, KC_WH_D, KC_LSFT, KC_LCTL, KC_MS_D, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, KC_MENU,
_______, KC_WH_L, KC_UNDO, KC_CUT, KC_COPY, KC_PSTE, KC_BTN1, KC_BTN2, KC_BTN3, KC_MS_L, KC_MS_R, KC_WH_R,
_______, _______, KC_0, KC_INS,
_______, _______, _______, _______, _______, _______,
_______, _______, _______, _______
),
[2] = LAYOUT_std(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, S(KC_1), S(KC_COMM), S(KC_DOT), KC_EQL, S(KC_7), _______,
_______, _______, _______, _______, _______, _______, S(KC_SLSH), S(KC_9), S(KC_0), KC_MINS, S(KC_SCLN),S(KC_2),
_______, _______, _______, _______, _______, _______, S(KC_EQL), S(KC_5), S(KC_COMM), KC_DOT, KC_SCLN, _______,
_______, _______, _______, _______,
_______, _______, _______, _______, TO(0), _______,
_______, _______, _______, _______
),
[3] = LAYOUT_std(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
_______, _______, _______, _______, _______, _______, KC_PSCR, KC_7, KC_8, KC_9, KC_PPLS, KC_F12,
_______, _______, _______, _______, _______, _______, KC_0, KC_4, KC_5, KC_6, KC_0, _______,
_______, _______, _______, _______, _______, _______, KC_0, KC_1, KC_2, KC_3, KC_DOT, KC_COMM,
_______, _______, _______, _______,
_______, _______, _______, _______, TO(0), _______,
_______, _______, _______, _______
)
};

View File

@@ -0,0 +1,75 @@
#include QMK_KEYBOARD_H
#define _LOWER 3
#define _RAISE 4
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
* ┌───┬───┬───┬───┬───┬───┐
* │F7 │F8 │F9 │F10│F11|F12|
* ├───┼───┼───┼───┼───┼───┤
* │ ~ │ 1 │ 2 │ 3 │ 4 | 5 |
* ├───┼───┼───┼───┼───┼───┤
* │ A │ Q │ W │ F │ P | B |
* ├───┼───┼───┼───┼───┼───┤
* │ A │ A │ R │ S │ T | G |
* ├───┼───┼───┼───┼───┼───┤
* │ A │ Z │ , │ . │ / |PRT|
* └───┴───┼───┼───┼───┴───┘
* │B1 │B2 |
* └───┼───┼───┬───┐
* │RET│SPC│ - │
* └───┼───┼───┤
* │LUP│LDN│
* └───┴───┘
*/
[0] = LAYOUT_left(
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6,
KC_TILD, KC_1, KC_2, KC_3, KC_4, KC_5,
KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B,
KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_G,
KC_LSFT, KC_Z, KC_X, KC_C, KC_D, KC_V,
KC_BTN1, KC_BTN2,
KC_A, MO(3), KC_LSFT,
KC_LCTL, KC_LALT
),
[1] = LAYOUT_left(
_______, _______, _______, _______, _______, _______,
_______, _______, KC_UNDS, KC_LBRC, KC_RBRC, KC_CIRC,
_______, KC_BSLS, KC_SLSH, KC_LCBR, KC_RCBR, KC_ASTR,
_______, KC_HASH, KC_DLR, KC_PIPE, KC_TILD, KC_GRV,
_______, _______, _______, _______, _______, _______,
_______, _______,
KC_A, MO(2), KC_LSFT,
KC_LCTL, KC_LALT
),
[2] = LAYOUT_left(
_______, _______, _______, _______, _______, _______,
_______, KC_PGUP, KC_BSPC, KC_UP, KC_DEL, KC_PGDN,
_______, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END,
_______, _______, KC_TAB, _______, KC_ENT, _______,
_______, _______, _______, _______, _______, _______,
_______, _______,
_______, _______, _______,
_______, _______
),
[3] = LAYOUT_left(
_______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______,
_______, KC_ESC, KC_WH_U, KC_WBAK, KC_WFWD, KC_MS_U,
_______, KC_LALT, KC_WH_D, KC_LSFT, KC_LCTL, KC_MS_D,
_______, KC_WH_L, KC_UNDO, KC_CUT, KC_COPY, KC_PSTE,
_______, _______,
KC_A, _______, KC_LSFT,
KC_LCTL, KC_LALT
)
};

View File

@@ -0,0 +1,73 @@
#include QMK_KEYBOARD_H
#define _LOWER 3
#define _RAISE 4
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
* ┌───┬───┬───┬───┬───┬───┐
* │F7 │F8 │F9 │F10│F11|F12|
* ├───┼───┼───┼───┼───┼───┤
* │ 6 │ 7 │ 8 │ 9 │ 0 |TG |
* ├───┼───┼───┼───┼───┼───|
* │ J │ L │ U │ Y │ ; |F24|
* ├───┼───┼───┼───┼───┼───|
* │ M │ N │ E │ I │ O |CPS|
* ├───┼───┼───┼───┼───┼───|
* │ K │ H │ , │ . │ / |PRT|
* └───┴───┼───┼───┼───┴───┘
* │ - │ = |
* ┌───┬───┼───┼───┘
* │RET│SPC│MO1│
* ├───┼───┼───┘
* │LUP│LDN│
* └───┴───┘
*/
[0] = LAYOUT_std(
KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
KC_6, KC_7, KC_8, KC_9, KC_0, SH_TG,
KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_F24,
KC_M, KC_N, KC_E, KC_I, KC_O, KC_CAPS,
KC_K, KC_H, KC_COMM, KC_DOT, KC_SLASH, KC_RSFT,
KC_MINS, KC_EQL,
KC_ENT, MO(3), KC_SPC,
KC_LGUI, KC_LSFT
),
[1] = LAYOUT_std(
_______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______,
S(KC_1), S(KC_COMM), S(KC_DOT), KC_EQL, S(KC_7), _______,
S(KC_SLSH), S(KC_9), S(KC_0), KC_MINS, S(KC_SCLN), S(KC_2),
S(KC_EQL), S(KC_5), S(KC_COMM), KC_DOT, KC_SCLN, _______,
_______, _______,
_______, _______, _______,
_______, _______
),
[2] = LAYOUT_std(
_______, _______, _______, _______, _______, _______,
KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
KC_PSCR, KC_7, KC_8, KC_9, KC_PPLS, KC_F12,
KC_0, KC_4, KC_5, KC_6, KC_0, _______,
KC_0, KC_1, KC_2, KC_3, KC_DOT, KC_COMM,
KC_0, KC_0,
_______, _______, _______,
_______, _______
),
[3] = LAYOUT_std(
_______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______,
KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, KC_ESC,
KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, KC_MENU,
KC_BTN1, KC_BTN2, KC_BTN3, KC_MS_L, KC_MS_R, KC_WH_R,
KC_0, KC_0,
_______, _______, _______,
_______, _______
)
};

View File

@@ -0,0 +1,5 @@
/* SPDX-License-Identifier: GPL-2.0-or-later */
#pragma once
#define VIAL_KEYBOARD_UID {0x28, 0xE4, 0x4F, 0x0E, 0x49, 0xB9, 0x48, 0x2C}

View File

@@ -0,0 +1,56 @@
#include QMK_KEYBOARD_H
// TD(0) = On Tap -> MO(2); On hold -> MO(2); On double tap -> TO(3)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_std(
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_TILD, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, SH_TG,
KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_F24,
KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, KC_CAPS,
CAPSWRD, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLASH, KC_RSFT,
KC_LGUI, KC_LALT, KC_MINS, KC_EQL,
KC_LCTL, MO(1), KC_LSFT, KC_ENT, TD(0), KC_SPC,
KC_LCTL, KC_LALT, KC_LGUI, KC_LSFT
),
[1] = LAYOUT_std(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, KC_ESC, KC_WH_U, KC_WBAK, KC_WFWD, KC_MS_U, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_DEL, KC_ESC,
_______, KC_LALT, KC_WH_D, KC_LSFT, KC_LCTL, KC_MS_D, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, KC_MENU,
_______, KC_WH_L, KC_UNDO, KC_CUT, KC_COPY, C(S(KC_V)), KC_BTN1, KC_BTN2, KC_BTN3, KC_MS_L, KC_MS_R, KC_WH_R,
_______, _______, KC_0, KC_INS,
_______, _______, _______, _______, _______, _______,
_______, _______, _______, _______
),
[2] = LAYOUT_std(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, S(KC_1), S(KC_COMM), S(KC_DOT), KC_EQL, S(KC_7), _______,
_______, _______, _______, _______, _______, _______, S(KC_SLSH), S(KC_9), S(KC_0), KC_MINS, S(KC_SCLN),S(KC_2),
_______, _______, _______, _______, _______, _______, S(KC_EQL), S(KC_5), S(KC_COMM), KC_DOT, KC_SCLN, _______,
_______, _______, _______, _______,
_______, _______, _______, _______, TO(0), _______,
_______, _______, _______, _______
),
[3] = LAYOUT_std(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
_______, _______, _______, _______, _______, _______, KC_PSCR, KC_7, KC_8, KC_9, KC_PPLS, KC_F12,
_______, _______, _______, _______, _______, _______, KC_0, KC_4, KC_5, KC_6, KC_0, _______,
_______, _______, _______, _______, _______, _______, KC_0, KC_1, KC_2, KC_3, KC_DOT, KC_COMM,
_______, _______, _______, _______,
_______, _______, _______, _______, TO(0), _______,
_______, _______, _______, _______
)
};

View File

@@ -0,0 +1,6 @@
VIA_ENABLE = yes
VIAL_ENABLE = yes
VIAL_INSECURE = yes
SPLIT_KEYBOARD = yes
LTO_ENABLE = yes
COMBO_ENABLE = no

View File

@@ -0,0 +1,212 @@
{
"lighting": "none",
"matrix": {
"rows": 14,
"cols": 6
},
"layouts": {
"keymap":
[
{
"name": "Dactyl",
"author": "Arne Weiß",
"plate": false,
"pcb": false
},
[
{
"x": 2,
"sm": "cherry",
"sb": "gateron",
"st": "KS-3-Red"
},
"0,2",
"0,3",
"0,4",
"0,5",
{
"x": 8
},
"7,0",
"7,1",
"7,2",
"7,3"
],
[
{
"y": -0.5
},
"0,0",
"0,1",
{
"x": 16
},
"7,4",
"7,5"
],
[
{
"y": -0.5,
"x": 2
},
"1,2",
"1,3",
"1,4",
"1,5",
{
"x": 8
},
"8,0",
"8,1",
"8,2",
"8,3"
],
[
{
"y": -0.5
},
"1,0",
"1,1",
{
"x": 16
},
"8,4",
"8,5"
],
[
{
"y": -0.5,
"x": 2
},
"2,2",
"2,3",
"2,4",
"2,5",
{
"x": 8
},
"9,0",
"9,1",
"9,2",
"9,3"
],
[
{
"y": -0.5
},
"2,0",
"2,1",
{
"x": 16
},
"9,4",
"9,5"
],
[
{
"y": -0.5,
"x": 2
},
"3,2",
"3,3",
"3,4",
"3,5",
{
"x": 8
},
"10,0",
"10,1",
"10,2",
"10,3"
],
[
{
"y": -0.5
},
"3,0",
"3,1",
{
"x": 16
},
"10,4",
"10,5"
],
[
{
"y": -0.5,
"x": 2
},
"4,2",
"4,3",
"4,4",
"4,5",
{
"x": 8
},
"11,0",
"11,1",
"11,2",
"11,3"
],
[
{
"y": -0.5
},
"4,0",
"4,1",
{
"x": 16
},
"11,4",
"11,5"
],
[
{
"y": -0.5,
"x": 2
},
"5,2",
"5,3",
{
"x": 12
},
"12,2",
"12,3"
],
[
{
"r": 15,
"y": -2.25,
"x": 6.25
},
"5,4",
"5,5",
"6,5"
],
[
{
"x": 7.25
},
"6,4",
"6,3"
],
[
{
"r": -15,
"y": 3.25,
"x": 10.25
},
"13,0",
"12,0",
"12,1"
],
[
{
"x": 10.25
},
"13,2",
"13,1"
]
]
}
}

View File

@@ -0,0 +1,27 @@
# wdactyl_dummy
![wdactyl_dummy](imgur.com image replace me!)
*A short description of the keyboard/project*
* Keyboard Maintainer: [Arne Weiss](https://github.com/smarwei)
* Hardware Supported: *The PCBs, controllers supported*
* Hardware Availability: *Links to where you can find this hardware*
Make example for this keyboard (after setting up your build environment):
make wdactyl_dummy:default
Flashing example for this keyboard:
make wdactyl_dummy: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 `RESET` if it is available

View File

@@ -0,0 +1,7 @@
# This file intentionally left blank
#VIA_ENABLE = yes
#VIAL_ENABLE = yes
#VIAL_INSECURE = yes
SPLIT_KEYBOARD = yes
CAPS_WORD_ENABLE = yes
TAP_DANCE_ENABLE = yes

View File

@@ -0,0 +1,20 @@
// Copyright 2022 Arne Weiss (@smarwei)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
/*
* 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

View File

@@ -0,0 +1,76 @@
{
"manufacturer": "Arne Weiss",
"keyboard_name": "wdactyl_dummy",
"maintainer": "smarwei",
"bootloader": "caterina",
"diode_direction": "COL2ROW",
"features": {
"bootmagic": true,
"command": false,
"console": false,
"extrakey": true,
"mousekey": true,
"nkro": true
},
"matrix_pins": {
"cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6", "B4"],
"rows": ["D1", "D0", "D4", "C6", "D7", "E6", "B5"]
},
"processor": "atmega32u4",
"url": "",
"usb": {
"device_version": "1.0.0",
"pid": "0x0000",
"vid": "0xFEED"
},
"layouts": {
"LAYOUT_std": {
"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": [1, 4], "x": 4, "y": 0 },
{ "matrix": [1, 5], "x": 5, "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": [2, 4], "x": 4, "y": 1 },
{ "matrix": [2, 5], "x": 5, "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": [3, 4], "x": 4, "y": 2 },
{ "matrix": [3, 5], "x": 5, "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": [4, 4], "x": 4, "y": 3 },
{ "matrix": [4, 5], "x": 5, "y": 3 },
{ "matrix": [4, 0], "x": 0, "y": 4 },
{ "matrix": [4, 1], "x": 1, "y": 4 },
{ "matrix": [4, 2], "x": 2, "y": 4 },
{ "matrix": [4, 3], "x": 3, "y": 4 },
{ "matrix": [5, 4], "x": 4, "y": 4 },
{ "matrix": [5, 5], "x": 5, "y": 4 },
{ "matrix": [5, 2], "x": 0, "y": 5 },
{ "matrix": [5, 3], "x": 1, "y": 5 },
{ "matrix": [6, 6], "x": 0, "y": 6 },
{ "matrix": [5, 0], "x": 1, "y": 6 },
{ "matrix": [5, 1], "x": 2, "y": 6 },
{ "matrix": [6, 7], "x": 0, "y": 7 },
{ "matrix": [6, 8], "x": 1, "y": 7 }
]
}
}
}

View File

@@ -0,0 +1 @@
../../../wdactyl/keymap_right.c

View File

@@ -0,0 +1,3 @@
# VIA_ENABLE = yes
# VIAL_ENABLE = yes
# VIAL_INSECURE = yes

View File

@@ -0,0 +1,27 @@
# wdactyl_dummy
![wdactyl_dummy](imgur.com image replace me!)
*A short description of the keyboard/project*
* Keyboard Maintainer: [Arne Weiss](https://github.com/smarwei)
* Hardware Supported: *The PCBs, controllers supported*
* Hardware Availability: *Links to where you can find this hardware*
Make example for this keyboard (after setting up your build environment):
make wdactyl_dummy:default
Flashing example for this keyboard:
make wdactyl_dummy: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 `RESET` if it is available

View File

@@ -0,0 +1,4 @@
# This file intentionally left blank
#VIA_ENABLE = yes
#VIAL_ENABLE = yes
#VIAL_INSECURE = yes

View File

@@ -0,0 +1,26 @@
// Copyright 2022 Arne Weiss (@smarwei)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
/*
* 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
// Split stuff
#define SOFT_SERIAL_PIN D2
#define MASTER_LEFT

View File

@@ -0,0 +1,76 @@
{
"manufacturer": "Arne Weiss",
"keyboard_name": "wdactyl_left",
"maintainer": "smarwei",
"bootloader": "caterina",
"diode_direction": "COL2ROW",
"features": {
"bootmagic": true,
"command": false,
"console": false,
"extrakey": true,
"mousekey": true,
"nkro": true
},
"matrix_pins": {
"rows": ["F4", "F5", "F6", "F7", "B1", "B3", "B2"],
"cols": ["E6", "D7", "C6", "D4", "D0", "D1"]
},
"processor": "atmega32u4",
"url": "",
"usb": {
"device_version": "1.0.0",
"pid": "0x0000",
"vid": "0xFEED"
},
"layouts": {
"LAYOUT_left": {
"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": [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": [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": [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": [4, 0], "x": 0, "y": 4 },
{ "matrix": [4, 1], "x": 1, "y": 4 },
{ "matrix": [4, 2], "x": 2, "y": 4 },
{ "matrix": [4, 3], "x": 3, "y": 4 },
{ "matrix": [4, 4], "x": 4, "y": 4 },
{ "matrix": [4, 5], "x": 5, "y": 4 },
{ "matrix": [5, 2], "x": 0, "y": 5 },
{ "matrix": [5, 3], "x": 1, "y": 5 },
{ "matrix": [5, 4], "x": 0, "y": 6 },
{ "matrix": [5, 5], "x": 1, "y": 6 },
{ "matrix": [6, 5], "x": 2, "y": 6 },
{ "matrix": [6, 4], "x": 0, "y": 7 },
{ "matrix": [6, 3], "x": 1, "y": 7 }
]
}
}
}

View File

@@ -0,0 +1 @@
../../../wdactyl/keymap_left.c

View File

@@ -0,0 +1,3 @@
# VIA_ENABLE = yes
# VIAL_ENABLE = yes
# VIAL_INSECURE = yes

View File

@@ -0,0 +1,27 @@
# wdactyl_dummy
![wdactyl_dummy](imgur.com image replace me!)
*A short description of the keyboard/project*
* Keyboard Maintainer: [Arne Weiss](https://github.com/smarwei)
* Hardware Supported: *The PCBs, controllers supported*
* Hardware Availability: *Links to where you can find this hardware*
Make example for this keyboard (after setting up your build environment):
make wdactyl_dummy:default
Flashing example for this keyboard:
make wdactyl_dummy: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 `RESET` if it is available

View File

@@ -0,0 +1,5 @@
# This file intentionally left blank
#VIA_ENABLE = yes
#VIAL_ENABLE = yes
#VIAL_INSECURE = yes
SPLIT_KEYBOARD = yes

View File

@@ -0,0 +1,26 @@
// Copyright 2022 Arne Weiss (@smarwei)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
/*
* 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
// Split stuff
#define SOFT_SERIAL_PIN D2
#define MASTER_RIGHT

View File

@@ -0,0 +1,76 @@
{
"manufacturer": "Arne Weiss",
"keyboard_name": "wdactyl_right",
"maintainer": "smarwei",
"bootloader": "caterina",
"diode_direction": "COL2ROW",
"features": {
"bootmagic": true,
"command": false,
"console": false,
"extrakey": true,
"mousekey": true,
"nkro": true
},
"matrix_pins": {
"rows": ["F4", "F5", "F6", "F7", "B1", "B3", "B2"],
"cols": ["E6", "D7", "C6", "D4", "D0", "D1"]
},
"processor": "atmega32u4",
"url": "",
"usb": {
"device_version": "1.0.0",
"pid": "0x0000",
"vid": "0xFEED"
},
"layouts": {
"LAYOUT_std": {
"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": [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": [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": [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": [4, 0], "x": 0, "y": 4 },
{ "matrix": [4, 1], "x": 1, "y": 4 },
{ "matrix": [4, 2], "x": 2, "y": 4 },
{ "matrix": [4, 3], "x": 3, "y": 4 },
{ "matrix": [4, 4], "x": 4, "y": 4 },
{ "matrix": [4, 5], "x": 5, "y": 4 },
{ "matrix": [5, 2], "x": 1, "y": 5 },
{ "matrix": [5, 3], "x": 0, "y": 5 },
{ "matrix": [6, 0], "x": 0, "y": 6 },
{ "matrix": [5, 0], "x": 1, "y": 6 },
{ "matrix": [5, 1], "x": 2, "y": 6 },
{ "matrix": [6, 2], "x": 0, "y": 7 },
{ "matrix": [6, 1], "x": 1, "y": 7 }
]
}
}
}

View File

@@ -0,0 +1 @@
../../../wdactyl/keymap_right.c

View File

@@ -0,0 +1,3 @@
# VIA_ENABLE = yes
# VIAL_ENABLE = yes
# VIAL_INSECURE = yes

View File

@@ -0,0 +1,27 @@
# wdactyl_dummy
![wdactyl_dummy](imgur.com image replace me!)
*A short description of the keyboard/project*
* Keyboard Maintainer: [Arne Weiss](https://github.com/smarwei)
* Hardware Supported: *The PCBs, controllers supported*
* Hardware Availability: *Links to where you can find this hardware*
Make example for this keyboard (after setting up your build environment):
make wdactyl_dummy:default
Flashing example for this keyboard:
make wdactyl_dummy: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 `RESET` if it is available

View File

@@ -0,0 +1,5 @@
# This file intentionally left blank
#VIA_ENABLE = yes
#VIAL_ENABLE = yes
#VIAL_INSECURE = yes
SPLIT_KEYBOARD = yes