This commit is contained in:
cccywj 2025-07-24 16:13:22 +02:00 committed by GitHub
commit da62b5b451
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 156 additions and 0 deletions

View File

@ -0,0 +1,98 @@
{
"manufacturer": "flxlb",
"keyboard_name": "ZT60-HS",
"maintainer": "cccywj",
"bootloader": "atmel-dfu",
"diode_direction": "COL2ROW",
"features": {
"bootmagic": true,
"command": false,
"console": false,
"extrakey": true,
"mousekey": true,
"nkro": true
},
"matrix_pins": {
"cols": ["F7", "F0", "F1", "F4", "F5", "B7", "B3", "B2", "B1", "B0", "B4", "D7", "D6", "D4"],
"rows": ["F6", "B5", "B6", "C6", "C7"]
},
"processor": "atmega32u4",
"url": "https://www.flxlb.ca",
"usb": {
"device_version": "1.0.0",
"pid": "0x0002",
"vid": "0x7076"
},
"layouts": {
"LAYOUT_all": {
"layout": [
{"matrix": [0, 0], "x": 1, "y": 0},
{"matrix": [0, 1], "x": 2.25, "y": 0},
{"matrix": [0, 2], "x": 3.25, "y": 0},
{"matrix": [0, 3], "x": 4.25, "y": 0},
{"matrix": [0, 4], "x": 5.25, "y": 0},
{"matrix": [0, 5], "x": 6.25, "y": 0},
{"matrix": [0, 6], "x": 7.25, "y": 0},
{"matrix": [0, 7], "x": 8.25, "y": 0},
{"matrix": [0, 8], "x": 9.25, "y": 0},
{"matrix": [0, 9], "x": 10.25, "y": 0},
{"matrix": [0, 10], "x": 11.25, "y": 0},
{"matrix": [0, 11], "x": 12.25, "y": 0},
{"matrix": [0, 12], "x": 13.25, "y": 0},
{"matrix": [0, 13], "x": 14.25, "y": 0},
{"matrix": [2, 12], "x": 15.25, "y": 0},
{"matrix": [1, 0], "x": 0.75, "y": 1.25, "w": 1.5},
{"matrix": [1, 1], "x": 2.25, "y": 1.25},
{"matrix": [1, 2], "x": 3.25, "y": 1.25},
{"matrix": [1, 3], "x": 4.25, "y": 1.25},
{"matrix": [1, 4], "x": 5.25, "y": 1.25},
{"matrix": [1, 5], "x": 6.25, "y": 1.25},
{"matrix": [1, 6], "x": 7.25, "y": 1.25},
{"matrix": [1, 7], "x": 8.25, "y": 1.25},
{"matrix": [1, 8], "x": 9.25, "y": 1.25},
{"matrix": [1, 9], "x": 10.25, "y": 1.25},
{"matrix": [1, 10], "x": 11.25, "y": 1.25},
{"matrix": [1, 11], "x": 12.25, "y": 1.25},
{"matrix": [1, 12], "x": 13.25, "y": 1.25},
{"matrix": [1, 13], "x": 14.25, "y": 1.25, "w": 1.5},
{"matrix": [2, 0], "x": 0.5, "y": 2.25, "w": 1.75},
{"matrix": [2, 1], "x": 2.25, "y": 2.25},
{"matrix": [2, 2], "x": 3.25, "y": 2.25},
{"matrix": [2, 3], "x": 4.25, "y": 2.25},
{"matrix": [2, 4], "x": 5.25, "y": 2.25},
{"matrix": [2, 5], "x": 6.25, "y": 2.25},
{"matrix": [2, 6], "x": 7.25, "y": 2.25},
{"matrix": [2, 7], "x": 8.25, "y": 2.25},
{"matrix": [2, 8], "x": 9.25, "y": 2.25},
{"matrix": [2, 9], "x": 10.25, "y": 2.25},
{"matrix": [2, 10], "x": 11.25, "y": 2.25},
{"matrix": [2, 11], "x": 12.25, "y": 2.25},
{"matrix": [2, 13], "x": 13.25, "y": 2.25, "w": 2.25},
{"matrix": [3, 0], "x": 0.25, "y": 3.25, "w": 2},
{"matrix": [3, 1], "x": 2.25, "y": 3.25},
{"matrix": [3, 2], "x": 3.25, "y": 3.25},
{"matrix": [3, 3], "x": 4.25, "y": 3.25},
{"matrix": [3, 4], "x": 5.25, "y": 3.25},
{"matrix": [3, 5], "x": 6.25, "y": 3.25},
{"matrix": [3, 6], "x": 7.25, "y": 3.25},
{"matrix": [3, 7], "x": 8.25, "y": 3.25},
{"matrix": [3, 8], "x": 9.25, "y": 3.25},
{"matrix": [3, 9], "x": 10.25, "y": 3.25},
{"matrix": [3, 10], "x": 11.25, "y": 3.25},
{"matrix": [3, 11], "x": 12.25, "y": 3.25},
{"matrix": [3, 12], "x": 13.25, "y": 3.25},
{"matrix": [3, 13], "x": 14.25, "y": 3.25},
{"matrix": [4, 0], "x": 0, "y": 4.25, "w": 1.25},
{"matrix": [4, 1], "x": 1.25, "y": 4.25, "w": 1.25},
{"matrix": [4, 2], "x": 2.5, "y": 4.25, "w": 1.25},
{"matrix": [4, 3], "x": 3.75, "y": 4.25, "w": 1.25},
{"matrix": [4, 5], "x": 5, "y": 4.25, "w": 2.25},
{"matrix": [4, 7], "x": 7.25, "y": 4.25, "w": 2.75},
{"matrix": [4, 9], "x": 10, "y": 4.25, "w": 1.25},
{"matrix": [4, 10], "x": 11.25, "y": 4.25, "w": 1.25},
{"matrix": [4, 12], "x": 12.5, "y": 4.25, "w": 1.25},
{"matrix": [4, 13], "x": 13.75, "y": 4.25, "w": 1.25}
]
}
}
}

View File

@ -0,0 +1,31 @@
// Copyright 2025 flxlb (@cccywj)
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_all(
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_BSPC, KC_DEL,
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_BSLS,
KC_GRV, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, 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_LEFT, KC_DEL,
KC_LCTL, KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_BSPC, KC_RALT, KC_RGUI, MO(2), KC_RCTL
),
[1] = LAYOUT_all(
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_P7, KC_P8, KC_P9, KC_F10, KC_F11, KC_F12, _______, _______,
_______, _______, KC_UP, _______, _______, _______, _______, KC_P4, KC_P5, KC_P6, _______, _______, _______, _______,
_______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, KC_P1, KC_P2, KC_P3, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______
),
[2] = LAYOUT_all(
KC_ESC, 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_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_CAPS, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______
),
};

View File

@ -0,0 +1,27 @@
# flxlb ZT60
![ZT60](https://i.imgur.com/3t3Q4eN.jpeg)
A premium 60% ortholinear keyboard engineered for both form and function, the ZT60 features a clean ortholinear layout that enhances finger symmetry and ergonomics without compromising usability. Designed with meticulous attention to detail, it supports most standard keycap sets and offers extensive layout customization options, combining versatility with aesthetic elegance.
* Keyboard Maintainer: [cccywj](https://github.com/cccywj)
* Hardware Supported: ATMEGA32U4
* Hardware Availability: [flxlb](https://www.flxlb.ca)
Make example for this keyboard (after setting up your build environment):
make flxlb/zt60hs:default
Flashing example for this keyboard:
make flxlb/zt60hs: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