add dactyl_manuform_pi_pico vial support (#889)

This commit is contained in:
GustawXYZ 2025-06-09 07:31:10 +00:00 committed by GitHub
parent e27f5f46ba
commit 06563c902c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 172 additions and 0 deletions

View file

@ -0,0 +1,10 @@
/* SPDX-License-Identifier: GPL-2.0-or-later */
#pragma once
#define VIAL_KEYBOARD_UID {0x46, 0x7C, 0x9A, 0xFE, 0xB6, 0x9A, 0xFD, 0x90}
#define DYNAMIC_KEYMAP_LAYER_COUNT 9
#define VIAL_UNLOCK_COMBO_ROWS { 0, 0 }
#define VIAL_UNLOCK_COMBO_COLS { 0, 5 }

View file

@ -0,0 +1,65 @@
// Copyright 2023 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
enum layers {
_QWERTY,
_SYMBOLS,
_GAMING,
_ARROWS,
_WINMGR,
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT(
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
LALT(KC_LSFT), LALT(KC_SPC), LALT(KC_SPC), LGUI(KC_LALT),
KC_SPC, TT(_SYMBOLS), TT(_ARROWS), LALT(KC_ENTER),
KC_LCTL, KC_LGUI, KC_LGUI, KC_RCTL,
KC_LALT, TT(_WINMGR), TT(_GAMING), KC_LALT),
[_SYMBOLS] = LAYOUT(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_CAPS_LOCK, LSFT(KC_BSLS), KC_BSLS, LSFT(KC_LBRC), LSFT(KC_RBRC), KC_TRNS, KC_TRNS, LSFT(KC_7), LSFT(KC_8), LSFT(KC_9), LCTL(KC_EQUAL), LGUI(KC_EQUAL),
TO(_QWERTY), LSFT(KC_EQUAL), KC_MINUS, LSFT(KC_9), LSFT(KC_0), KC_GRAVE, KC_BSLS, LSFT(KC_4), LSFT(KC_5), LSFT(KC_6), LCTL(KC_MINUS), LGUI(KC_MINUS),
KC_TRNS, KC_EQUAL, LSFT(KC_MINUS), KC_LBRC, KC_RBRC, LSFT(KC_GRAVE), LSFT(KC_BSLS), LSFT(KC_1), LSFT(KC_2), LSFT(KC_3), KC_COMMA, KC_CALC,
KC_TRNS, KC_TRNS, LSFT(KC_0), KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, LSFT(KC_0),
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
QK_RBT, KC_TRNS, KC_TRNS, KC_TRNS),
[_GAMING] = LAYOUT(
KC_6, KC_1, KC_2, KC_3, KC_4, KC_5, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_7, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS,
KC_ESC, KC_LSFT, KC_A, KC_S, KC_D, KC_F, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS,
KC_8, KC_LCTL, KC_Z, KC_X, KC_C, KC_V, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_9, KC_0, KC_TRNS, KC_TRNS,
KC_SPC, MO(_ARROWS), KC_TRNS, KC_ENTER,
KC_G, KC_M, KC_TRNS, KC_TRNS,
KC_LALT, TO(_QWERTY), TO(_QWERTY), KC_TRNS),
[_ARROWS] = LAYOUT(
KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
KC_NUM, KC_KP_SLASH, KC_P7, KC_P8, KC_P9, KC_MINUS, LCTL(KC_LEFT), LCTL(KC_DOWN), LCTL(KC_UP), LCTL(KC_RGHT), KC_TRNS, KC_DELETE,
TO(_QWERTY), KC_KP_PLUS, KC_P4, KC_P5, KC_P6, KC_DOT, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_END, KC_PSCR,
KC_UNDS, KC_KP_MINUS, KC_P1, KC_P2, KC_P3, KC_COMMA, KC_HOME, KC_MPLY, KC_MPRV, KC_MNXT, KC_MUTE, KC_INS,
KC_KP_DOT, KC_P0, KC_VOLD, KC_VOLU,
KC_P0, TO(_WINMGR), KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, QK_RBT),
[_WINMGR] = LAYOUT(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_F1, LGUI(KC_7), LGUI(KC_8), LGUI(KC_9), KC_F4, KC_F7, SGUI(KC_7), SGUI(KC_8), SGUI(KC_9), KC_F10, KC_TRNS,
TO(_QWERTY), KC_F2, LGUI(KC_4), LGUI(KC_5), LGUI(KC_6), KC_F5, KC_F8, SGUI(KC_4), SGUI(KC_5), SGUI(KC_6), KC_F11, KC_TRNS,
KC_TRNS, KC_F3, LGUI(KC_1), LGUI(KC_2), LGUI(KC_3), KC_F6, KC_F9, SGUI(KC_1), SGUI(KC_2), SGUI(KC_3), KC_F12, KC_TRNS,
KC_TRNS, LGUI(KC_0), SGUI(KC_0), KC_TRNS,
LGUI(KC_0), KC_TRNS, KC_TRNS, SGUI(KC_0),
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
LCTL(LGUI(KC_Q)), KC_TRNS, KC_TRNS, KC_TRNS)
};

View file

@ -0,0 +1,6 @@
VIA_ENABLE = yes
VIAL_ENABLE = yes
# reduce firmware size
LTO_ENABLE = yes
# QMK_SETTINGS = no

View file

@ -0,0 +1,91 @@
{
"name": "Dactyl Manuform (5x6)",
"vendorId": "0x444D",
"productId": "0x3536",
"lighting": "none",
"matrix": {"rows": 12, "cols": 6},
"layouts": {
"keymap": [
[
"0,0",
"0,1",
"0,2",
"0,3",
"0,4",
"0,5",
{"x": 4.5},
"6,0",
"6,1",
"6,2",
"6,3",
"6,4",
"6,5"
],
[
"1,0",
"1,1",
"1,2",
"1,3",
"1,4",
"1,5",
{"x": 4.5},
"7,0",
"7,1",
"7,2",
"7,3",
"7,4",
"7,5"
],
[
"2,0",
"2,1",
"2,2",
"2,3",
"2,4",
"2,5",
{"x": 4.5},
"8,0",
"8,1",
"8,2",
"8,3",
"8,4",
"8,5"
],
[
"3,0",
"3,1",
"3,2",
"3,3",
"3,4",
"3,5",
{"x": 4.5},
"9,0",
"9,1",
"9,2",
"9,3",
"9,4",
"9,5"
],
[
{"x": 2},
"4,2",
"4,3",
{"x": 8.5},
"10,2",
"10,3"
],
[{"r": 30, "rx": 5, "ry": 4.25, "y": -0.25, "x": 1, "h": 1.5}, "4,5"],
[{"y": -0.5, "h": 1.5}, "4,4"],
[{"r": 75, "y": -2.5, "x": 2.5}, "5,5", "5,3"],
[{"x": 2.5}, "5,4", "5,2"],
[{"r": -75, "rx": 11, "y": -1.25, "x": -4.5}, "11,2", "11,0"],
[{"x": -4.5}, "11,3", "11,1"],
[{"r": -30, "y": -1, "x": -2, "h": 1.5}, "10,0"],
[{"y": -0.5, "x": -1, "h": 1.5}, "10,1"]
]
}
}