Configure keyboard matrix from info.json (#10817)

* Make parameters from info.json available to the build system

* move all clueboard settings to info.json

* code formatting

* make flake8 happy

* make flake8 happy

* make qmk lint happy

* Add support for specifying led indicators in json

* move led indicators to the clueboard info.json

* Apply suggestions from code review

Co-authored-by: Erovia <Erovia@users.noreply.github.com>

* add missing docstring

Co-authored-by: Erovia <Erovia@users.noreply.github.com>
This commit is contained in:
Zach White
2020-12-30 10:27:37 -08:00
committed by GitHub
parent f231f24dda
commit 47b9b11009
79 changed files with 4791 additions and 3901 deletions

View File

@@ -2,68 +2,12 @@
#include "config_common.h"
/* USB Device descriptor parameter */
#define VENDOR_ID 0xC1ED
#define PRODUCT_ID 0x2320
#define DEVICE_VER 0x0001
#define MANUFACTURER Clueboard
#define PRODUCT Clueboard
#define DESCRIPTION QMK keyboard firmware for Clueboard
/* key matrix size */
#define MATRIX_ROWS 10
#define MATRIX_COLS 8
/* ROWS: Top to bottom, COLS: Left to right
*/
#define MATRIX_ROW_PINS { B2, C7, C6, B6, B5, B0, B3, D5, D3, D2 }
#define MATRIX_COL_PINS { F0, F1, F4, F5, F6, F7, E6, B1 }
#define UNUSED_PINS
/* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW
/* Set 0 if debouncing isn't needed */
#define DEBOUNCE 5
/* 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
/*
* 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
#define LED_CAPS_LOCK_PIN B4
/* Backlight configuration
*/
#define BACKLIGHT_LEVELS 1
/* Underlight configuration
*/
#define RGB_DI_PIN D7
#define RGBLED_NUM 14 // Number of LEDs
#define RGBLIGHT_HUE_STEP 32
#define RGBLIGHT_SAT_STEP 17
#define RGBLIGHT_VAL_STEP 17
#define RGBLIGHT_ANIMATIONS
#define RGBLIGHT_EFFECT_BREATHE_CENTER 1
#define RGBLIGHT_EFFECT_BREATHE_MAX 200
#define RGBLIGHT_EFFECT_CHRISTMAS_INTERVAL 666*2

View File

@@ -0,0 +1,273 @@
{
"manufacturer": "Clueboard",
"keyboard_name": "Clueboard 66%",
"maintainer": "skullydazed",
"height": 5,
"width": 16.5,
"debounce": "5",
"diode_direction": "COL2ROW",
"features": {
"audio": false,
"backlight": true,
"bluetooth": false,
"bootmagic": false,
"command": false,
"console": true,
"extrakey": true,
"midi": false,
"mousekey": true,
"nkro": true,
"rgblight": true,
"unicode": false
},
"indicators": {
"caps_lock": "B4"
},
"matrix_pins": {
"cols": ["F0", " F1", " F4", " F5", " F6", " F7", " E6", " B1"],
"rows": ["B2", " C7", " C6", " B6", " B5", " B0", " B3", " D5", " D3", " D2"]
},
"rgblight": {
"animations": {
"all": true
},
"brightness_steps": "17",
"hue_steps": "32",
"led_count": "14",
"pin": "D7",
"saturation_steps": "17"
},
"usb": {
"device_ver": "0x0001",
"pid": "0x2320",
"vid": "0xC1ED"
},
"community_layouts": ["66_ansi", "66_iso"],
"layout_aliases": {
"KEYMAP": "LAYOUT_all",
"LAYOUT": "LAYOUT_all"
},
"layouts": {
"LAYOUT_66_ansi": {
"key_count": 66,
"layout": [
{ "label": "~", "matrix": [0, 0], "w": 1, "x": 0, "y": 0 },
{ "label": "!", "matrix": [0, 1], "w": 1, "x": 1, "y": 0 },
{ "label": "@", "matrix": [0, 2], "w": 1, "x": 2, "y": 0 },
{ "label": "#", "matrix": [0, 3], "w": 1, "x": 3, "y": 0 },
{ "label": "$", "matrix": [0, 4], "w": 1, "x": 4, "y": 0 },
{ "label": "%", "matrix": [0, 5], "w": 1, "x": 5, "y": 0 },
{ "label": "^", "matrix": [0, 6], "w": 1, "x": 6, "y": 0 },
{ "label": "&", "matrix": [0, 7], "w": 1, "x": 7, "y": 0 },
{ "label": "*", "matrix": [5, 0], "w": 1, "x": 8, "y": 0 },
{ "label": "(", "matrix": [5, 1], "w": 1, "x": 9, "y": 0 },
{ "label": ")", "matrix": [5, 2], "w": 1, "x": 10, "y": 0 },
{ "label": "_", "matrix": [5, 3], "w": 1, "x": 11, "y": 0 },
{ "label": "+", "matrix": [5, 4], "w": 1, "x": 12, "y": 0 },
{ "label": "Backspace", "matrix": [5, 6], "w": 2, "x": 13, "y": 0 },
{ "label": "k57", "matrix": [5, 7], "w": 1, "x": 15.5, "y": 0 },
{ "label": "Tab", "matrix": [1, 0], "w": 1.5, "x": 0, "y": 1 },
{ "label": "Q", "matrix": [1, 1], "w": 1, "x": 1.5, "y": 1 },
{ "label": "W", "matrix": [1, 2], "w": 1, "x": 2.5, "y": 1 },
{ "label": "E", "matrix": [1, 3], "w": 1, "x": 3.5, "y": 1 },
{ "label": "R", "matrix": [1, 4], "w": 1, "x": 4.5, "y": 1 },
{ "label": "T", "matrix": [1, 5], "w": 1, "x": 5.5, "y": 1 },
{ "label": "Y", "matrix": [1, 6], "w": 1, "x": 6.5, "y": 1 },
{ "label": "U", "matrix": [1, 7], "w": 1, "x": 7.5, "y": 1 },
{ "label": "I", "matrix": [6, 0], "w": 1, "x": 8.5, "y": 1 },
{ "label": "O", "matrix": [6, 1], "w": 1, "x": 9.5, "y": 1 },
{ "label": "P", "matrix": [6, 2], "w": 1, "x": 10.5, "y": 1 },
{ "label": "{", "matrix": [6, 3], "w": 1, "x": 11.5, "y": 1 },
{ "label": "}", "matrix": [6, 4], "w": 1, "x": 12.5, "y": 1 },
{ "label": "|", "matrix": [6, 5], "w": 1.5, "x": 13.5, "y": 1 },
{ "label": "k67", "matrix": [6, 7], "w": 1, "x": 15.5, "y": 1 },
{ "label": "Caps Lock", "matrix": [2, 0], "w": 1.75, "x": 0, "y": 2 },
{ "label": "A", "matrix": [2, 1], "w": 1, "x": 1.75, "y": 2 },
{ "label": "S", "matrix": [2, 2], "w": 1, "x": 2.75, "y": 2 },
{ "label": "D", "matrix": [2, 3], "w": 1, "x": 3.75, "y": 2 },
{ "label": "F", "matrix": [2, 4], "w": 1, "x": 4.75, "y": 2 },
{ "label": "G", "matrix": [2, 5], "w": 1, "x": 5.75, "y": 2 },
{ "label": "H", "matrix": [2, 6], "w": 1, "x": 6.75, "y": 2 },
{ "label": "J", "matrix": [2, 7], "w": 1, "x": 7.75, "y": 2 },
{ "label": "K", "matrix": [7, 0], "w": 1, "x": 8.75, "y": 2 },
{ "label": "L", "matrix": [7, 1], "w": 1, "x": 9.75, "y": 2 },
{ "label": ":", "matrix": [7, 2], "w": 1, "x": 10.75, "y": 2 },
{ "label": "\"", "matrix": [7, 3], "w": 1, "x": 11.75, "y": 2 },
{ "label": "Enter", "matrix": [7, 5], "w": 2.25, "x": 12.75, "y": 2 },
{ "label": "Shift", "matrix": [3, 0], "w": 2.25, "x": 0, "y": 3 },
{ "label": "Z", "matrix": [3, 2], "w": 1, "x": 2.25, "y": 3 },
{ "label": "X", "matrix": [3, 3], "w": 1, "x": 3.25, "y": 3 },
{ "label": "C", "matrix": [3, 4], "w": 1, "x": 4.25, "y": 3 },
{ "label": "V", "matrix": [3, 5], "w": 1, "x": 5.25, "y": 3 },
{ "label": "B", "matrix": [3, 6], "w": 1, "x": 6.25, "y": 3 },
{ "label": "N", "matrix": [3, 7], "w": 1, "x": 7.25, "y": 3 },
{ "label": "M", "matrix": [8, 0], "w": 1, "x": 8.25, "y": 3 },
{ "label": "<", "matrix": [8, 1], "w": 1, "x": 9.25, "y": 3 },
{ "label": ">", "matrix": [8, 2], "w": 1, "x": 10.25, "y": 3 },
{ "label": "?", "matrix": [8, 3], "w": 1, "x": 11.25, "y": 3 },
{ "label": "Shift", "matrix": [8, 5], "w": 2.25, "x": 12.25, "y": 3 },
{ "label": "k86", "matrix": [8, 6], "w": 1, "x": 14.5, "y": 3 },
{ "label": "Ctrl", "matrix": [4, 0], "w": 1.25, "x": 0, "y": 4 },
{ "label": "Win", "matrix": [4, 1], "w": 1.25, "x": 1.25, "y": 4 },
{ "label": "Alt", "matrix": [4, 2], "w": 1.25, "x": 2.5, "y": 4 },
{ "label": "k46", "matrix": [4, 6], "w": 6, "x": 3.75, "y": 4 },
{ "label": "Alt", "matrix": [9, 2], "w": 1.25, "x": 9.75, "y": 4 },
{ "label": "Win", "matrix": [9, 3], "w": 1.25, "x": 11, "y": 4 },
{ "label": "Menu", "matrix": [9, 4], "w": 1.25, "x": 12.25, "y": 4 },
{ "label": "k95", "matrix": [9, 5], "w": 1, "x": 13.5, "y": 4 },
{ "label": "k96", "matrix": [9, 6], "w": 1, "x": 14.5, "y": 4 },
{ "label": "k97", "matrix": [9, 7], "w": 1, "x": 15.5, "y": 4 }
]
},
"LAYOUT_66_iso": {
"key_count": 67,
"layout": [
{ "label": "~", "matrix": [0, 0], "w": 1, "x": 0, "y": 0 },
{ "label": "!", "matrix": [0, 1], "w": 1, "x": 1, "y": 0 },
{ "label": "@", "matrix": [0, 2], "w": 1, "x": 2, "y": 0 },
{ "label": "#", "matrix": [0, 3], "w": 1, "x": 3, "y": 0 },
{ "label": "$", "matrix": [0, 4], "w": 1, "x": 4, "y": 0 },
{ "label": "%", "matrix": [0, 5], "w": 1, "x": 5, "y": 0 },
{ "label": "^", "matrix": [0, 6], "w": 1, "x": 6, "y": 0 },
{ "label": "&", "matrix": [0, 7], "w": 1, "x": 7, "y": 0 },
{ "label": "*", "matrix": [5, 0], "w": 1, "x": 8, "y": 0 },
{ "label": "(", "matrix": [5, 1], "w": 1, "x": 9, "y": 0 },
{ "label": ")", "matrix": [5, 2], "w": 1, "x": 10, "y": 0 },
{ "label": "_", "matrix": [5, 3], "w": 1, "x": 11, "y": 0 },
{ "label": "+", "matrix": [5, 4], "w": 1, "x": 12, "y": 0 },
{ "label": "Backspace", "matrix": [5, 6], "w": 2, "x": 13, "y": 0 },
{ "label": "Insert", "matrix": [5, 7], "w": 1, "x": 15.5, "y": 0 },
{ "label": "Tab", "matrix": [1, 0], "w": 1.5, "x": 0, "y": 1 },
{ "label": "Q", "matrix": [1, 1], "w": 1, "x": 1.5, "y": 1 },
{ "label": "W", "matrix": [1, 2], "w": 1, "x": 2.5, "y": 1 },
{ "label": "E", "matrix": [1, 3], "w": 1, "x": 3.5, "y": 1 },
{ "label": "R", "matrix": [1, 4], "w": 1, "x": 4.5, "y": 1 },
{ "label": "T", "matrix": [1, 5], "w": 1, "x": 5.5, "y": 1 },
{ "label": "Y", "matrix": [1, 6], "w": 1, "x": 6.5, "y": 1 },
{ "label": "U", "matrix": [1, 7], "w": 1, "x": 7.5, "y": 1 },
{ "label": "I", "matrix": [6, 0], "w": 1, "x": 8.5, "y": 1 },
{ "label": "O", "matrix": [6, 1], "w": 1, "x": 9.5, "y": 1 },
{ "label": "P", "matrix": [6, 2], "w": 1, "x": 10.5, "y": 1 },
{ "label": "{", "matrix": [6, 3], "w": 1, "x": 11.5, "y": 1 },
{ "label": "}", "matrix": [6, 4], "w": 1, "x": 12.5, "y": 1 },
{ "label": "Delete", "matrix": [6, 7], "w": 1, "x": 15.5, "y": 1 },
{ "label": "Caps Lock", "matrix": [2, 0], "w": 1.75, "x": 0, "y": 2 },
{ "label": "A", "matrix": [2, 1], "w": 1, "x": 1.75, "y": 2 },
{ "label": "S", "matrix": [2, 2], "w": 1, "x": 2.75, "y": 2 },
{ "label": "D", "matrix": [2, 3], "w": 1, "x": 3.75, "y": 2 },
{ "label": "F", "matrix": [2, 4], "w": 1, "x": 4.75, "y": 2 },
{ "label": "G", "matrix": [2, 5], "w": 1, "x": 5.75, "y": 2 },
{ "label": "H", "matrix": [2, 6], "w": 1, "x": 6.75, "y": 2 },
{ "label": "J", "matrix": [2, 7], "w": 1, "x": 7.75, "y": 2 },
{ "label": "K", "matrix": [7, 0], "w": 1, "x": 8.75, "y": 2 },
{ "label": "L", "matrix": [7, 1], "w": 1, "x": 9.75, "y": 2 },
{ "label": ":", "matrix": [7, 2], "w": 1, "x": 10.75, "y": 2 },
{ "label": "\"", "matrix": [7, 3], "w": 1, "x": 11.75, "y": 2 },
{ "label": "", "matrix": [7, 4], "w": 1, "x": 12.75, "y": 2 },
{ "h": 2, "label": "Enter", "matrix": [7, 5], "w": 1.25, "x": 13.75, "y": 1 },
{ "label": "Shift", "matrix": [3, 0], "w": 1.25, "x": 0, "y": 3 },
{ "label": "\\", "matrix": [3, 1], "w": 1, "x": 1.25, "y": 3 },
{ "label": "Z", "matrix": [3, 2], "w": 1, "x": 2.25, "y": 3 },
{ "label": "X", "matrix": [3, 3], "w": 1, "x": 3.25, "y": 3 },
{ "label": "C", "matrix": [3, 4], "w": 1, "x": 4.25, "y": 3 },
{ "label": "V", "matrix": [3, 5], "w": 1, "x": 5.25, "y": 3 },
{ "label": "B", "matrix": [3, 6], "w": 1, "x": 6.25, "y": 3 },
{ "label": "N", "matrix": [3, 7], "w": 1, "x": 7.25, "y": 3 },
{ "label": "M", "matrix": [8, 0], "w": 1, "x": 8.25, "y": 3 },
{ "label": "<", "matrix": [8, 1], "w": 1, "x": 9.25, "y": 3 },
{ "label": ">", "matrix": [8, 2], "w": 1, "x": 10.25, "y": 3 },
{ "label": "?", "matrix": [8, 3], "w": 1, "x": 11.25, "y": 3 },
{ "label": "Shift", "matrix": [8, 5], "w": 2.25, "x": 12.25, "y": 3 },
{ "label": "\u2191", "matrix": [8, 6], "w": 1, "x": 14.5, "y": 3 },
{ "label": "Ctrl", "matrix": [4, 0], "w": 1.25, "x": 0, "y": 4 },
{ "label": "Win", "matrix": [4, 1], "w": 1.25, "x": 1.25, "y": 4 },
{ "label": "Alt", "matrix": [4, 2], "w": 1.25, "x": 2.5, "y": 4 },
{ "label": "k46", "matrix": [4, 6], "w": 6, "x": 3.75, "y": 4 },
{ "label": "Alt", "matrix": [9, 2], "w": 1.25, "x": 9.75, "y": 4 },
{ "label": "Ctrl", "matrix": [9, 3], "w": 1.25, "x": 11, "y": 4 },
{ "label": "Menu", "matrix": [9, 4], "w": 1.25, "x": 12.25, "y": 4 },
{ "label": "\u2190", "matrix": [9, 5], "w": 1, "x": 13.5, "y": 4 },
{ "label": "\u2193", "matrix": [9, 6], "w": 1, "x": 14.5, "y": 4 },
{ "label": "\u2192", "matrix": [9, 7], "w": 1, "x": 15.5, "y": 4 }
]
},
"LAYOUT_all": {
"key_count": 73,
"layout": [
{ "label": "GRAVE", "matrix": [0, 0], "w": 1, "x": 0, "y": 0 },
{ "label": "1", "matrix": [0, 1], "w": 1, "x": 1, "y": 0 },
{ "label": "2", "matrix": [0, 2], "w": 1, "x": 2, "y": 0 },
{ "label": "3", "matrix": [0, 3], "w": 1, "x": 3, "y": 0 },
{ "label": "4", "matrix": [0, 4], "w": 1, "x": 4, "y": 0 },
{ "label": "5", "matrix": [0, 5], "w": 1, "x": 5, "y": 0 },
{ "label": "6", "matrix": [0, 6], "w": 1, "x": 6, "y": 0 },
{ "label": "7", "matrix": [0, 7], "w": 1, "x": 7, "y": 0 },
{ "label": "8", "matrix": [5, 0], "w": 1, "x": 8, "y": 0 },
{ "label": "9", "matrix": [5, 1], "w": 1, "x": 9, "y": 0 },
{ "label": "0", "matrix": [5, 2], "w": 1, "x": 10, "y": 0 },
{ "label": "DASH", "matrix": [5, 3], "w": 1, "x": 11, "y": 0 },
{ "label": "EQUALSIGN", "matrix": [5, 4], "w": 1, "x": 12, "y": 0 },
{ "label": "YEN", "matrix": [5, 5], "w": 1, "x": 13, "y": 0 },
{ "label": "BACKSPACE", "matrix": [5, 6], "w": 1, "x": 14, "y": 0 },
{ "label": "PAGEUP", "matrix": [5, 7], "w": 1, "x": 15.5, "y": 0 },
{ "label": "TAB", "matrix": [1, 0], "w": 1.5, "x": 0, "y": 1 },
{ "label": "Q", "matrix": [1, 1], "w": 1, "x": 1.5, "y": 1 },
{ "label": "W", "matrix": [1, 2], "w": 1, "x": 2.5, "y": 1 },
{ "label": "E", "matrix": [1, 3], "w": 1, "x": 3.5, "y": 1 },
{ "label": "R", "matrix": [1, 4], "w": 1, "x": 4.5, "y": 1 },
{ "label": "T", "matrix": [1, 5], "w": 1, "x": 5.5, "y": 1 },
{ "label": "Y", "matrix": [1, 6], "w": 1, "x": 6.5, "y": 1 },
{ "label": "U", "matrix": [1, 7], "w": 1, "x": 7.5, "y": 1 },
{ "label": "I", "matrix": [6, 0], "w": 1, "x": 8.5, "y": 1 },
{ "label": "O", "matrix": [6, 1], "w": 1, "x": 9.5, "y": 1 },
{ "label": "P", "matrix": [6, 2], "w": 1, "x": 10.5, "y": 1 },
{ "label": "LBRACKET", "matrix": [6, 3], "w": 1, "x": 11.5, "y": 1 },
{ "label": "RBRACKET", "matrix": [6, 4], "w": 1, "x": 12.5, "y": 1 },
{ "label": "BACKSLASH", "matrix": [6, 5], "w": 1.5, "x": 13.5, "y": 1 },
{ "label": "PAGEDOWN", "matrix": [6, 7], "w": 1, "x": 15.5, "y": 1 },
{ "label": "CAPSLOCK", "matrix": [2, 0], "w": 1.75, "x": 0, "y": 2 },
{ "label": "A", "matrix": [2, 1], "w": 1, "x": 1.75, "y": 2 },
{ "label": "S", "matrix": [2, 2], "w": 1, "x": 2.75, "y": 2 },
{ "label": "D", "matrix": [2, 3], "w": 1, "x": 3.75, "y": 2 },
{ "label": "F", "matrix": [2, 4], "w": 1, "x": 4.75, "y": 2 },
{ "label": "G", "matrix": [2, 5], "w": 1, "x": 5.75, "y": 2 },
{ "label": "H", "matrix": [2, 6], "w": 1, "x": 6.75, "y": 2 },
{ "label": "J", "matrix": [2, 7], "w": 1, "x": 7.75, "y": 2 },
{ "label": "K", "matrix": [7, 0], "w": 1, "x": 8.75, "y": 2 },
{ "label": "L", "matrix": [7, 1], "w": 1, "x": 9.75, "y": 2 },
{ "label": "SEMICOLON", "matrix": [7, 2], "w": 1, "x": 10.75, "y": 2 },
{ "label": "QUOTE", "matrix": [7, 3], "w": 1, "x": 11.75, "y": 2 },
{ "label": "ISOHASH", "matrix": [7, 4], "w": 1, "x": 12.75, "y": 2 },
{ "label": "ENTER", "matrix": [7, 5], "w": 1.25, "x": 13.75, "y": 2 },
{ "label": "LSHIFT", "matrix": [3, 0], "w": 1.25, "x": 0, "y": 3 },
{ "label": "ISOBACKSLASH", "matrix": [3, 1], "w": 1, "x": 1.25, "y": 3 },
{ "label": "Z", "matrix": [3, 2], "w": 1, "x": 2.25, "y": 3 },
{ "label": "X", "matrix": [3, 3], "w": 1, "x": 3.25, "y": 3 },
{ "label": "C", "matrix": [3, 4], "w": 1, "x": 4.25, "y": 3 },
{ "label": "V", "matrix": [3, 5], "w": 1, "x": 5.25, "y": 3 },
{ "label": "B", "matrix": [3, 6], "w": 1, "x": 6.25, "y": 3 },
{ "label": "N", "matrix": [3, 7], "w": 1, "x": 7.25, "y": 3 },
{ "label": "M", "matrix": [8, 0], "w": 1, "x": 8.25, "y": 3 },
{ "label": "COMMA", "matrix": [8, 1], "w": 1, "x": 9.25, "y": 3 },
{ "label": "PERIOD", "matrix": [8, 2], "w": 1, "x": 10.25, "y": 3 },
{ "label": "SLASH", "matrix": [8, 3], "w": 1, "x": 11.25, "y": 3 },
{ "label": "JPBACKSLASH", "matrix": [8, 4], "w": 1, "x": 12.25, "y": 3 },
{ "label": "RSHIFT", "matrix": [8, 5], "w": 1.25, "x": 13.25, "y": 3 },
{ "label": "UP", "matrix": [8, 6], "w": 1, "x": 14.5, "y": 3 },
{ "label": "LCTRL", "matrix": [4, 0], "w": 1.25, "x": 0, "y": 4 },
{ "label": "LALT", "matrix": [4, 1], "w": 1, "x": 1.25, "y": 4 },
{ "label": "LCMD", "matrix": [4, 2], "w": 1.25, "x": 2.25, "y": 4 },
{ "label": "MUHENKAN", "matrix": [4, 3], "w": 1.25, "x": 3.5, "y": 4 },
{ "label": "SPACE1", "matrix": [4, 5], "w": 2, "x": 4.75, "y": 4 },
{ "label": "SPACE2", "matrix": [4, 6], "w": 2, "x": 6.75, "y": 4 },
{ "label": "HENKAN", "matrix": [9, 0], "w": 1.25, "x": 8.75, "y": 4 },
{ "label": "RCMD", "matrix": [9, 2], "w": 1.25, "x": 10, "y": 4 },
{ "label": "RCTRL", "matrix": [9, 3], "w": 1, "x": 11.25, "y": 4 },
{ "label": "FN", "matrix": [9, 4], "w": 1.25, "x": 12.25, "y": 4 },
{ "label": "LEFT", "matrix": [9, 5], "w": 1, "x": 13.5, "y": 4 },
{ "label": "DOWN", "matrix": [9, 6], "w": 1, "x": 14.5, "y": 4 },
{ "label": "RIGHT", "matrix": [9, 7], "w": 1, "x": 15.5, "y": 4 }
]
}
}
}

View File

@@ -0,0 +1,15 @@
# Clueboard 66%
![Clueboard](https://i.imgur.com/hLePwJu.jpg)
A fully customizable 66% keyboard.
* Keyboard Maintainer: [Zach White](https://github.com/skullydazed)
* Hardware Supported: Clueboard 66% PCB rev2 (atmega32u4)
* Hardware Availability: [clueboard.co](https://clueboard.co/)
Make example for this keyboard (after setting up your build environment):
make clueboard/66/rev2:default
See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then 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).

View File

@@ -2,93 +2,3 @@
#include "quantum.h"
/* Clueboard matrix layout
* ,-----------------------------------------------------------. ,---.
* | 00| 01| 02| 03| 04| 05| 06| 07| 50| 51| 52| 53| 54| 55| 56| | 57|
* |-----------------------------------------------------------| |---|
* | 10| 11| 12| 13| 14| 15| 16| 17| 60| 61| 62| 63| 64| 65| | 67|
* |-----------------------------------------------------------| `---'
* | 20| 21| 22| 23| 24| 25| 26| 27| 70| 71| 72| 73| 74| 75|
* |------------------------------------------------------------.
* | 30| 31| 32| 33| 34| 35| 36| 37| 80| 81| 82| 83| 84| 85|86|
* |------------------------------------------------------------------.
* | 40| 41| 42| 43| 45| 46| 90| 92| 93| 94| 95| 96| 97|
* `------------------------------------------------------------------'
* ,-----------------------------------------------------------. ,---.
* | `| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Yen| BS| |Ins|
* |-----------------------------------------------------------| |---|
* |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \| |Del|
* |-----------------------------------------------------------| `---'
* |Caps | A| S| D| F| G| H| J| k| L| ;| '| # | Ent|
* |--------------------------------------------------------------.
* |Shift| \| Z| X| C| V| B| N| M| ,| .| /| \|Shift| Up|
* |------------------------------------------------------------------.
* |Ctrl|Alt|Gui |MHen| Space| Space|Henk|Gui |Ctrl| Fn|Left|Down|Rgt|
* `------------------------------------------------------------------'
*/
// The first section contains all of the arguments
// The second converts the arguments into a two-dimensional array
#define LAYOUT_all( \
k00, k01, k02, k03, k04, k05, k06, k07, k50, k51, k52, k53, k54, k55, k56, k57, \
k10, k11, k12, k13, k14, k15, k16, k17, k60, k61, k62, k63, k64, k65, k67, \
k20, k21, k22, k23, k24, k25, k26, k27, k70, k71, k72, k73, k74, k75, \
k30, k31, k32, k33, k34, k35, k36, k37, k80, k81, k82, k83, k84, k85, k86, \
k40, k41, k42, k43, k45, k46, k90, k92, k93, k94, k95, k96, k97 \
) { \
{ 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, KC_NO, k45, k46, KC_NO }, \
{ k50, k51, k52, k53, k54, k55, k56, k57 }, \
{ k60, k61, k62, k63, k64, k65, KC_NO, k67 }, \
{ k70, k71, k72, k73, k74, k75, KC_NO, KC_NO }, \
{ k80, k81, k82, k83, k84, k85, k86, KC_NO }, \
{ k90, KC_NO, k92, k93, k94, k95, k96, k97 } \
}
/* LAYOUT_66_ansi, standard 66 key ANSI layout
*/
#define LAYOUT_66_ansi( \
k00, k01, k02, k03, k04, k05, k06, k07, k50, k51, k52, k53, k54, k56, k57, \
k10, k11, k12, k13, k14, k15, k16, k17, k60, k61, k62, k63, k64, k65, k67, \
k20, k21, k22, k23, k24, k25, k26, k27, k70, k71, k72, k73, k75, \
k30, k32, k33, k34, k35, k36, k37, k80, k81, k82, k83, k85, k86, \
k40, k41, k42, k46, k92, k93, k94, k95, k96, k97 \
) { \
{ 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, KC_NO, k32, k33, k34, k35, k36, k37 }, \
{ k40, k41, k42, KC_NO, KC_NO, KC_NO, k46, KC_NO }, \
{ k50, k51, k52, k53, k54, KC_NO, k56, k57 }, \
{ k60, k61, k62, k63, k64, k65, KC_NO, k67 }, \
{ k70, k71, k72, k73, KC_NO, k75, KC_NO, KC_NO }, \
{ k80, k81, k82, k83, KC_NO, k85, k86, KC_NO }, \
{ KC_NO, KC_NO, k92, k93, k94, k95, k96, k97 } \
}
/* LAYOUT_66_iso, standard 67 key ISO layout
*/
#define LAYOUT_66_iso( \
k00, k01, k02, k03, k04, k05, k06, k07, k50, k51, k52, k53, k54, k56, k57, \
k10, k11, k12, k13, k14, k15, k16, k17, k60, k61, k62, k63, k64, k67, \
k20, k21, k22, k23, k24, k25, k26, k27, k70, k71, k72, k73, k74, k75, \
k30, k31, k32, k33, k34, k35, k36, k37, k80, k81, k82, k83, k85, k86, \
k40, k41, k42, k46, k92, k93, k94, k95, k96, k97 \
) { \
{ 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, KC_NO, KC_NO, KC_NO, k46, KC_NO }, \
{ k50, k51, k52, k53, k54, KC_NO, k56, k57 }, \
{ k60, k61, k62, k63, k64, KC_NO, KC_NO, k67 }, \
{ k70, k71, k72, k73, k74, k75, KC_NO, KC_NO }, \
{ k80, k81, k82, k83, KC_NO, k85, k86, KC_NO }, \
{ KC_NO, KC_NO, k92, k93, k94, k95, k96, k97 } \
}
#define KEYMAP LAYOUT_all
#define LAYOUT LAYOUT_all

View File

@@ -12,18 +12,4 @@ MCU = atmega32u4
BOOTLOADER = atmel-dfu
# Build Options
BACKLIGHT_ENABLE = yes
BACKLIGHT_DRIVER = custom
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration
MOUSEKEY_ENABLE = yes # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = yes # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
AUDIO_ENABLE = no
RGBLIGHT_ENABLE = yes # Enable keyboard underlight functionality
MIDI_ENABLE = no # MIDI controls
UNICODE_ENABLE = no # Unicode
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
LAYOUTS = 66_ansi 66_iso