mirror of
https://github.com/qmk/qmk_firmware
synced 2024-11-18 09:55:48 +00:00
[Keyboard] KBD75 refactor (#6755)
* convert codebase to #pragma once * fix file includes - quantum.h is included at keyboard level, redundant at revision level - keyboard-level path is accessible at revision level, remove relative pathing * duplicate common layout macros from rev1 to rev2 Add the layout macros supported by both rev1 and rev2 to rev2.h directly, which exposes these layouts to QMK Configurator. * enable community layout support (75_ansi, 75_iso) * add LAYOUT_75_iso layout data It needs its own tree because its keys are in a different order from LAYOUT_iso_1u even though the physical layout is the same. * minimize rules.mk files (use QMK defaults) * use atmel-dfu bootloader rule * fix typo on rev1 info.json
This commit is contained in:
parent
c427023b31
commit
86d59f1034
8 changed files with 347 additions and 104 deletions
|
@ -1,5 +1,4 @@
|
|||
#ifndef CONFIG_H
|
||||
#define CONFIG_H
|
||||
#pragma once
|
||||
|
||||
#include "config_common.h"
|
||||
|
||||
|
@ -46,5 +45,3 @@
|
|||
#define RGBLIGHT_SAT_STEP 8
|
||||
#define RGBLIGHT_VAL_STEP 8
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
|
|
@ -2,12 +2,8 @@
|
|||
|
||||
#include "quantum.h"
|
||||
|
||||
#ifdef KEYBOARD_kbdfans_kbd75_rev1
|
||||
#if defined(KEYBOARD_kbdfans_kbd75_rev1)
|
||||
#include "rev1.h"
|
||||
#endif
|
||||
|
||||
#ifdef KEYBOARD_kbdfans_kbd75_rev2
|
||||
#include "../rev1/rev1.h"
|
||||
#elif defined(KEYBOARD_kbdfans_kbd75_rev2)
|
||||
#include "rev2.h"
|
||||
#endif
|
||||
|
||||
|
|
|
@ -28,6 +28,96 @@
|
|||
"LAYOUT_iso": {
|
||||
"key_count": 84,
|
||||
"layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1, "y":0}, {"label":"F2", "x":2, "y":0}, {"label":"F3", "x":3, "y":0}, {"label":"F4", "x":4, "y":0}, {"label":"F5", "x":5, "y":0}, {"label":"F6", "x":6, "y":0}, {"label":"F7", "x":7, "y":0}, {"label":"F8", "x":8, "y":0}, {"label":"F9", "x":9, "y":0}, {"label":"F10", "x":10, "y":0}, {"label":"F11", "x":11, "y":0}, {"label":"F12", "x":12, "y":0}, {"label":"PrtSc", "x":13, "y":0}, {"label":"Pause", "x":14, "y":0}, {"label":"Delete", "x":15, "y":0}, {"label":"\u00ac", "x":0, "y":1}, {"label":"!", "x":1, "y":1}, {"label":"\"", "x":2, "y":1}, {"label":"\u00a3", "x":3, "y":1}, {"label":"$", "x":4, "y":1}, {"label":"%", "x":5, "y":1}, {"label":"^", "x":6, "y":1}, {"label":"&", "x":7, "y":1}, {"label":"*", "x":8, "y":1}, {"label":"(", "x":9, "y":1}, {"label":")", "x":10, "y":1}, {"label":"_", "x":11, "y":1}, {"label":"+", "x":12, "y":1}, {"label":"Backspace", "x":13, "y":1, "w":2}, {"label":"Home", "x":15, "y":1}, {"label":"Tab", "x":0, "y":2, "w":1.5}, {"label":"Q", "x":1.5, "y":2}, {"label":"W", "x":2.5, "y":2}, {"label":"E", "x":3.5, "y":2}, {"label":"R", "x":4.5, "y":2}, {"label":"T", "x":5.5, "y":2}, {"label":"Y", "x":6.5, "y":2}, {"label":"U", "x":7.5, "y":2}, {"label":"I", "x":8.5, "y":2}, {"label":"O", "x":9.5, "y":2}, {"label":"P", "x":10.5, "y":2}, {"label":"{", "x":11.5, "y":2}, {"label":"}", "x":12.5, "y":2}, {"label":"Enter", "x":13.75, "y":2, "w":1.25, "h":2}, {"label":"Page Up", "x":15, "y":2}, {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, {"label":"A", "x":1.75, "y":3}, {"label":"S", "x":2.75, "y":3}, {"label":"D", "x":3.75, "y":3}, {"label":"F", "x":4.75, "y":3}, {"label":"G", "x":5.75, "y":3}, {"label":"H", "x":6.75, "y":3}, {"label":"J", "x":7.75, "y":3}, {"label":"K", "x":8.75, "y":3}, {"label":"L", "x":9.75, "y":3}, {"label":":", "x":10.75, "y":3}, {"label":"@", "x":11.75, "y":3}, {"label":"~", "x":12.75, "y":3}, {"label":"Page Down", "x":15, "y":3}, {"label":"Shift", "x":0, "y":4, "w":1.25}, {"label":"|", "x":1.25, "y":4}, {"label":"Z", "x":2.25, "y":4}, {"label":"X", "x":3.25, "y":4}, {"label":"C", "x":4.25, "y":4}, {"label":"V", "x":5.25, "y":4}, {"label":"B", "x":6.25, "y":4}, {"label":"N", "x":7.25, "y":4}, {"label":"M", "x":8.25, "y":4}, {"label":"<", "x":9.25, "y":4}, {"label":">", "x":10.25, "y":4}, {"label":"?", "x":11.25, "y":4}, {"label":"Shift", "x":12.25, "y":4, "w":1.75}, {"label":"\u2191", "x":14, "y":4}, {"label":"End", "x":15, "y":4}, {"label":"Ctrl", "x":0, "y":5, "w":1.25}, {"label":"Win", "x":1.25, "y":5, "w":1.25}, {"label":"Alt", "x":2.5, "y":5, "w":1.25}, {"x":3.75, "y":5, "w":6.25}, {"label":"AltGr", "x":10, "y":5, "w":1.5}, {"label":"Ctrl", "x":11.5, "y":5, "w":1.5}, {"label":"\u2190", "x":13, "y":5}, {"label":"\u2193", "x":14, "y":5}, {"label":"\u2192", "x":15, "y":5}]
|
||||
},
|
||||
|
||||
"LAYOUT_75_iso": {
|
||||
"layout": [
|
||||
{"label":"Esc", "x":0, "y":0},
|
||||
{"label":"F1", "x":1, "y":0},
|
||||
{"label":"F2", "x":2, "y":0},
|
||||
{"label":"F3", "x":3, "y":0},
|
||||
{"label":"F4", "x":4, "y":0},
|
||||
{"label":"F5", "x":5, "y":0},
|
||||
{"label":"F6", "x":6, "y":0},
|
||||
{"label":"F7", "x":7, "y":0},
|
||||
{"label":"F8", "x":8, "y":0},
|
||||
{"label":"F9", "x":9, "y":0},
|
||||
{"label":"F10", "x":10, "y":0},
|
||||
{"label":"F11", "x":11, "y":0},
|
||||
{"label":"F12", "x":12, "y":0},
|
||||
{"label":"PrtSc", "x":13, "y":0},
|
||||
{"label":"Scroll Lock", "x":14, "y":0},
|
||||
{"label":"Pause", "x":15, "y":0},
|
||||
{"label":"`", "x":0, "y":1},
|
||||
{"label":"1", "x":1, "y":1},
|
||||
{"label":"2", "x":2, "y":1},
|
||||
{"label":"3", "x":3, "y":1},
|
||||
{"label":"4", "x":4, "y":1},
|
||||
{"label":"5", "x":5, "y":1},
|
||||
{"label":"6", "x":6, "y":1},
|
||||
{"label":"7", "x":7, "y":1},
|
||||
{"label":"8", "x":8, "y":1},
|
||||
{"label":"9", "x":9, "y":1},
|
||||
{"label":"0", "x":10, "y":1},
|
||||
{"label":"-", "x":11, "y":1},
|
||||
{"label":"=", "x":12, "y":1},
|
||||
{"label":"Backspace", "x":13, "y":1, "w":2},
|
||||
{"label":"Home", "x":15, "y":1},
|
||||
{"label":"Tab", "x":0, "y":2, "w":1.5},
|
||||
{"label":"Q", "x":1.5, "y":2},
|
||||
{"label":"W", "x":2.5, "y":2},
|
||||
{"label":"E", "x":3.5, "y":2},
|
||||
{"label":"R", "x":4.5, "y":2},
|
||||
{"label":"T", "x":5.5, "y":2},
|
||||
{"label":"Y", "x":6.5, "y":2},
|
||||
{"label":"U", "x":7.5, "y":2},
|
||||
{"label":"I", "x":8.5, "y":2},
|
||||
{"label":"O", "x":9.5, "y":2},
|
||||
{"label":"P", "x":10.5, "y":2},
|
||||
{"label":"[", "x":11.5, "y":2},
|
||||
{"label":"]", "x":12.5, "y":2},
|
||||
{"label":"PgUp", "x":15, "y":2},
|
||||
{"label":"Caps Lock", "x":0, "y":3, "w":1.75},
|
||||
{"label":"A", "x":1.75, "y":3},
|
||||
{"label":"S", "x":2.75, "y":3},
|
||||
{"label":"D", "x":3.75, "y":3},
|
||||
{"label":"F", "x":4.75, "y":3},
|
||||
{"label":"G", "x":5.75, "y":3},
|
||||
{"label":"H", "x":6.75, "y":3},
|
||||
{"label":"J", "x":7.75, "y":3},
|
||||
{"label":"K", "x":8.75, "y":3},
|
||||
{"label":"L", "x":9.75, "y":3},
|
||||
{"label":";", "x":10.75, "y":3},
|
||||
{"label":"'", "x":11.75, "y":3},
|
||||
{"label":"ISO #", "x":12.75, "y":3},
|
||||
{"label":"Enter", "x":13.75, "y":2, "w":1.25, "h":2},
|
||||
{"label":"PgDn", "x":15, "y":3},
|
||||
{"label":"Shift", "x":0, "y":4, "w":1.25},
|
||||
{"label":"ISO \\", "x":1.25, "y":4},
|
||||
{"label":"Z", "x":2.25, "y":4},
|
||||
{"label":"X", "x":3.25, "y":4},
|
||||
{"label":"C", "x":4.25, "y":4},
|
||||
{"label":"V", "x":5.25, "y":4},
|
||||
{"label":"B", "x":6.25, "y":4},
|
||||
{"label":"N", "x":7.25, "y":4},
|
||||
{"label":"M", "x":8.25, "y":4},
|
||||
{"label":",", "x":9.25, "y":4},
|
||||
{"label":".", "x":10.25, "y":4},
|
||||
{"label":"/", "x":11.25, "y":4},
|
||||
{"label":"Shift", "x":12.25, "y":4, "w":1.75},
|
||||
{"label":"Up", "x":14, "y":4},
|
||||
{"label":"End", "x":15, "y":4},
|
||||
{"label":"Ctrl", "x":0, "y":5, "w":1.25},
|
||||
{"label":"GUI", "x":1.25, "y":5, "w":1.25},
|
||||
{"label":"Alt", "x":2.5, "y":5, "w":1.25},
|
||||
{"label":"Space", "x":3.75, "y":5, "w":6.25},
|
||||
{"label":"AltGr", "x":10, "y":5},
|
||||
{"label":"Fn", "x":11, "y":5},
|
||||
{"label":"Ctrl", "x":12, "y":5},
|
||||
{"label":"Left", "x":13, "y":5},
|
||||
{"label":"Down", "x":14, "y":5},
|
||||
{"label":"Right", "x":15, "y":5}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
#ifndef REV1_H
|
||||
#define REV1_H
|
||||
#pragma once
|
||||
|
||||
#include "quantum.h"
|
||||
#include "../kbd75.h"
|
||||
#include "kbd75.h"
|
||||
|
||||
/* LAYOUT
|
||||
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
|
||||
|
@ -20,7 +18,7 @@
|
|||
* └────┴────┴────┴────────┴────┴──────────┴───┴───┴───┴───┴───┴───┘
|
||||
*/
|
||||
|
||||
// LAYOUT for all possible switch positions on a KBD75
|
||||
// LAYOUT for all possible switch positions on a KBD75 rev 1
|
||||
#define LAYOUT( \
|
||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
|
||||
K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
|
||||
|
@ -44,7 +42,7 @@
|
|||
* └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┘
|
||||
*/
|
||||
|
||||
#define LAYOUT_ansi_1u( \
|
||||
#define LAYOUT_ansi_1u( \
|
||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
|
||||
K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \
|
||||
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, \
|
||||
|
@ -53,13 +51,15 @@
|
|||
K500, K501, K503, K506, K510, K511, K512, K513, K514, K515 \
|
||||
) { \
|
||||
{ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
|
||||
{ K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, K114, K115 }, \
|
||||
{ K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, K114, K115 }, \
|
||||
{ K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \
|
||||
{ K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \
|
||||
{ K400, KC_NO, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \
|
||||
{ K500, K501, KC_NO, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, K511, K512, K513, K514, K515 } \
|
||||
}
|
||||
|
||||
#define LAYOUT_75_ansi LAYOUT_ansi_1u
|
||||
|
||||
#define LAYOUT_iso_1u( \
|
||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
|
||||
K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \
|
||||
|
@ -76,6 +76,22 @@
|
|||
{ K500, K501, KC_NO, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, K511, K512, K513, K514, K515 } \
|
||||
}
|
||||
|
||||
#define LAYOUT_75_iso( \
|
||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
|
||||
K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \
|
||||
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K215, \
|
||||
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K214, K313, K315, \
|
||||
K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \
|
||||
K500, K501, K503, K506, K510, K511, K512, K513, K514, K515 \
|
||||
) LAYOUT_iso_1u( \
|
||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
|
||||
K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \
|
||||
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K313, K215, \
|
||||
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K214, K315, \
|
||||
K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \
|
||||
K500, K501, K503, K506, K510, K511, K512, K513, K514, K515 \
|
||||
)
|
||||
|
||||
|
||||
/* normal bottom row ──────────────────────── ↓ ─── ↓
|
||||
* ┌────┬────┬────┬────────────────────────┬─────┬─────┬───┬───┬───┐
|
||||
|
@ -83,7 +99,7 @@
|
|||
* └────┴────┴────┴────────────────────────┴─────┴─────┴───┴───┴───┘
|
||||
*/
|
||||
|
||||
#define LAYOUT_ansi( \
|
||||
#define LAYOUT_ansi( \
|
||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
|
||||
K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \
|
||||
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, \
|
||||
|
@ -114,5 +130,3 @@
|
|||
{ K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \
|
||||
{ K500, K501, KC_NO, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, KC_NO, K512, K513, K514, K515 } \
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
|
@ -1,44 +1,8 @@
|
|||
# MCU name
|
||||
MCU = atmega32u4
|
||||
|
||||
# Processor frequency.
|
||||
# This will define a symbol, F_CPU, in all source code files equal to the
|
||||
# processor frequency in Hz. You can then use this symbol in your source code to
|
||||
# calculate timings. Do NOT tack on a 'UL' at the end, this will be done
|
||||
# automatically to create a 32-bit value in your source code.
|
||||
#
|
||||
# This will be an integer division of F_USB below, as it is sourced by
|
||||
# F_USB after it has run through any CPU prescalers. Note that this value
|
||||
# does not *change* the processor frequency - it should merely be updated to
|
||||
# reflect the processor speed set externally so that the code can use accurate
|
||||
# software delays.
|
||||
F_CPU = 16000000
|
||||
|
||||
#
|
||||
# LUFA specific
|
||||
#
|
||||
# Target architecture (see library "Board Types" documentation).
|
||||
ARCH = AVR8
|
||||
|
||||
# Input clock frequency.
|
||||
# This will define a symbol, F_USB, in all source code files equal to the
|
||||
# input clock frequency (before any prescaling is performed) in Hz. This value may
|
||||
# differ from F_CPU if prescaling is used on the latter, and is required as the
|
||||
# raw input clock is fed directly to the PLL sections of the AVR for high speed
|
||||
# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
|
||||
# at the end, this will be done automatically to create a 32-bit value in your
|
||||
# source code.
|
||||
#
|
||||
# If no clock division is performed on the input clock inside the AVR (via the
|
||||
# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
|
||||
F_USB = $(F_CPU)
|
||||
|
||||
# Interrupt driven control endpoint task(+60)
|
||||
OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
|
||||
|
||||
|
||||
# Boot Section Size in *bytes*
|
||||
OPT_DEFS += -DBOOTLOADER_SIZE=4096
|
||||
# Bootloader selection
|
||||
BOOTLOADER = atmel-dfu
|
||||
|
||||
|
||||
# Build Options
|
||||
|
@ -53,4 +17,6 @@ SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
|||
NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
||||
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
|
||||
AUDIO_ENABLE = no
|
||||
RGBLIGHT_ENABLE = yes
|
||||
RGBLIGHT_ENABLE = yes
|
||||
|
||||
LAYOUTS = 75_ansi 75_iso
|
||||
|
|
|
@ -32,6 +32,96 @@
|
|||
|
||||
"LAYOUT_numpad": {
|
||||
"layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1, "y":0}, {"label":"F2", "x":2, "y":0}, {"label":"F3", "x":3, "y":0}, {"label":"F4", "x":4, "y":0}, {"label":"F5", "x":5, "y":0}, {"label":"F6", "x":6, "y":0}, {"label":"F7", "x":7, "y":0}, {"label":"F8", "x":8, "y":0}, {"label":"F9", "x":9, "y":0}, {"label":"F10", "x":10, "y":0}, {"label":"F11", "x":11, "y":0}, {"label":"F12", "x":12, "y":0}, {"label":"PrtSc", "x":13, "y":0}, {"label":"Pause", "x":14, "y":0}, {"label":"Delete", "x":15, "y":0}, {"label":"~", "x":0, "y":1}, {"label":"!", "x":1, "y":1}, {"label":"@", "x":2, "y":1}, {"label":"#", "x":3, "y":1}, {"label":"$", "x":4, "y":1}, {"label":"%", "x":5, "y":1}, {"label":"^", "x":6, "y":1}, {"label":"&", "x":7, "y":1}, {"label":"*", "x":8, "y":1}, {"label":"(", "x":9, "y":1}, {"label":")", "x":10, "y":1}, {"x":11, "y":1}, {"x":12, "y":1}, {"label":"Home", "x":13, "y":1}, {"label":"_", "x":14, "y":1}, {"label":"+", "x":15, "y":1}, {"label":"Tab", "x":0, "y":2, "w":1.5}, {"label":"Q", "x":1.5, "y":2}, {"label":"W", "x":2.5, "y":2}, {"label":"E", "x":3.5, "y":2}, {"label":"R", "x":4.5, "y":2}, {"label":"T", "x":5.5, "y":2}, {"label":"Y", "x":6.5, "y":2}, {"label":"U", "x":7.5, "y":2}, {"label":"I", "x":8.5, "y":2}, {"label":"O", "x":9.5, "y":2}, {"label":"P", "x":10.5, "y":2}, {"label":"|", "x":11.5, "y":2, "w":1.5}, {"label":"Page Up", "x":13, "y":2}, {"label":"{", "x":14, "y":2}, {"label":"}", "x":15, "y":2}, {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, {"label":"A", "x":1.75, "y":3}, {"label":"S", "x":2.75, "y":3}, {"label":"D", "x":3.75, "y":3}, {"label":"F", "x":4.75, "y":3}, {"label":"G", "x":5.75, "y":3}, {"label":"H", "x":6.75, "y":3}, {"label":"J", "x":7.75, "y":3}, {"label":"K", "x":8.75, "y":3}, {"label":"L", "x":9.75, "y":3}, {"label":"Enter", "x":10.75, "y":3, "w":2.25}, {"label":"Page Down", "x":13, "y":3}, {"label":":", "x":14, "y":3}, {"label":"\"", "x":15, "y":3}, {"label":"Shift", "x":0, "y":4, "w":1.25}, {"x":1.25, "y":4}, {"label":"Z", "x":2.25, "y":4}, {"label":"X", "x":3.25, "y":4}, {"label":"C", "x":4.25, "y":4}, {"label":"V", "x":5.25, "y":4}, {"label":"B", "x":6.25, "y":4}, {"label":"N", "x":7.25, "y":4}, {"label":"M", "x":8.25, "y":4}, {"label":"?", "x":9.25, "y":4}, {"label":"Shift", "x":10.25, "y":4, "w":1.75}, {"label":"\u2191", "x":12, "y":4}, {"label":"End", "x":13, "y":4}, {"label":"<", "x":14, "y":4}, {"label":">", "x":15, "y":4}, {"label":"Ctrl", "x":0, "y":5, "w":1.25}, {"label":"Win", "x":1.25, "y":5, "w":1.25}, {"label":"Alt", "x":2.5, "y":5, "w":1.25}, {"x":3.75, "y":5, "w":1.25}, {"x":5, "y":5, "w":2.25}, {"x":7.25, "y":5, "w":1.75}, {"x":9, "y":5}, {"label":"Alt", "x":10, "y":5}, {"label":"\u2190", "x":11, "y":5}, {"label":"\u2193", "x":12, "y":5}, {"label":"\u2192", "x":13, "y":5}, {"label":"Fn", "x":14, "y":5}, {"label":"Ctrl", "x":15, "y":5}]
|
||||
},
|
||||
|
||||
"LAYOUT_75_iso": {
|
||||
"layout": [
|
||||
{"label":"Esc", "x":0, "y":0},
|
||||
{"label":"F1", "x":1, "y":0},
|
||||
{"label":"F2", "x":2, "y":0},
|
||||
{"label":"F3", "x":3, "y":0},
|
||||
{"label":"F4", "x":4, "y":0},
|
||||
{"label":"F5", "x":5, "y":0},
|
||||
{"label":"F6", "x":6, "y":0},
|
||||
{"label":"F7", "x":7, "y":0},
|
||||
{"label":"F8", "x":8, "y":0},
|
||||
{"label":"F9", "x":9, "y":0},
|
||||
{"label":"F10", "x":10, "y":0},
|
||||
{"label":"F11", "x":11, "y":0},
|
||||
{"label":"F12", "x":12, "y":0},
|
||||
{"label":"PrtSc", "x":13, "y":0},
|
||||
{"label":"Scroll Lock", "x":14, "y":0},
|
||||
{"label":"Pause", "x":15, "y":0},
|
||||
{"label":"`", "x":0, "y":1},
|
||||
{"label":"1", "x":1, "y":1},
|
||||
{"label":"2", "x":2, "y":1},
|
||||
{"label":"3", "x":3, "y":1},
|
||||
{"label":"4", "x":4, "y":1},
|
||||
{"label":"5", "x":5, "y":1},
|
||||
{"label":"6", "x":6, "y":1},
|
||||
{"label":"7", "x":7, "y":1},
|
||||
{"label":"8", "x":8, "y":1},
|
||||
{"label":"9", "x":9, "y":1},
|
||||
{"label":"0", "x":10, "y":1},
|
||||
{"label":"-", "x":11, "y":1},
|
||||
{"label":"=", "x":12, "y":1},
|
||||
{"label":"Backspace", "x":13, "y":1, "w":2},
|
||||
{"label":"Home", "x":15, "y":1},
|
||||
{"label":"Tab", "x":0, "y":2, "w":1.5},
|
||||
{"label":"Q", "x":1.5, "y":2},
|
||||
{"label":"W", "x":2.5, "y":2},
|
||||
{"label":"E", "x":3.5, "y":2},
|
||||
{"label":"R", "x":4.5, "y":2},
|
||||
{"label":"T", "x":5.5, "y":2},
|
||||
{"label":"Y", "x":6.5, "y":2},
|
||||
{"label":"U", "x":7.5, "y":2},
|
||||
{"label":"I", "x":8.5, "y":2},
|
||||
{"label":"O", "x":9.5, "y":2},
|
||||
{"label":"P", "x":10.5, "y":2},
|
||||
{"label":"[", "x":11.5, "y":2},
|
||||
{"label":"]", "x":12.5, "y":2},
|
||||
{"label":"PgUp", "x":15, "y":2},
|
||||
{"label":"Caps Lock", "x":0, "y":3, "w":1.75},
|
||||
{"label":"A", "x":1.75, "y":3},
|
||||
{"label":"S", "x":2.75, "y":3},
|
||||
{"label":"D", "x":3.75, "y":3},
|
||||
{"label":"F", "x":4.75, "y":3},
|
||||
{"label":"G", "x":5.75, "y":3},
|
||||
{"label":"H", "x":6.75, "y":3},
|
||||
{"label":"J", "x":7.75, "y":3},
|
||||
{"label":"K", "x":8.75, "y":3},
|
||||
{"label":"L", "x":9.75, "y":3},
|
||||
{"label":";", "x":10.75, "y":3},
|
||||
{"label":"'", "x":11.75, "y":3},
|
||||
{"label":"ISO #", "x":12.75, "y":3},
|
||||
{"label":"Enter", "x":13.75, "y":2, "w":1.25, "h":2},
|
||||
{"label":"PgDn", "x":15, "y":3},
|
||||
{"label":"Shift", "x":0, "y":4, "w":1.25},
|
||||
{"label":"ISO \\", "x":1.25, "y":4},
|
||||
{"label":"Z", "x":2.25, "y":4},
|
||||
{"label":"X", "x":3.25, "y":4},
|
||||
{"label":"C", "x":4.25, "y":4},
|
||||
{"label":"V", "x":5.25, "y":4},
|
||||
{"label":"B", "x":6.25, "y":4},
|
||||
{"label":"N", "x":7.25, "y":4},
|
||||
{"label":"M", "x":8.25, "y":4},
|
||||
{"label":",", "x":9.25, "y":4},
|
||||
{"label":".", "x":10.25, "y":4},
|
||||
{"label":"/", "x":11.25, "y":4},
|
||||
{"label":"Shift", "x":12.25, "y":4, "w":1.75},
|
||||
{"label":"Up", "x":14, "y":4},
|
||||
{"label":"End", "x":15, "y":4},
|
||||
{"label":"Ctrl", "x":0, "y":5, "w":1.25},
|
||||
{"label":"GUI", "x":1.25, "y":5, "w":1.25},
|
||||
{"label":"Alt", "x":2.5, "y":5, "w":1.25},
|
||||
{"label":"Space", "x":3.75, "y":5, "w":6.25},
|
||||
{"label":"AltGr", "x":10, "y":5},
|
||||
{"label":"Fn", "x":11, "y":5},
|
||||
{"label":"Ctrl", "x":12, "y":5},
|
||||
{"label":"Left", "x":13, "y":5},
|
||||
{"label":"Down", "x":14, "y":5},
|
||||
{"label":"Right", "x":15, "y":5}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,9 +1,135 @@
|
|||
#ifndef REV2_H
|
||||
#define REV2_H
|
||||
#pragma once
|
||||
|
||||
#include "quantum.h"
|
||||
#include "../kbd75.h"
|
||||
#include "kbd75.h"
|
||||
|
||||
/* LAYOUT
|
||||
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
|
||||
* │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
|
||||
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
|
||||
* │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
|
||||
* ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
|
||||
* │1.5U │ │ │ │ │ │ │ │ │ │ │ │ │1.5U │ │
|
||||
* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
|
||||
* │1.75U │ │ │ │ │ │ │ │ │ │ │ │2.25U │ │
|
||||
* ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
|
||||
* │2.25U │ │ │ │ │ │ │ │ │ │ │1.75U │ │ │
|
||||
* ├────┬───┴┬──┴─┬─┴───┴──┬┴───┼───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┤
|
||||
* │1.25│1.25│1.25│2.25U │1.25│2.75U │ │ │ │ │ │ │
|
||||
* └────┴────┴────┴────────┴────┴──────────┴───┴───┴───┴───┴───┴───┘
|
||||
*/
|
||||
|
||||
// LAYOUT for all possible switch positions on a KBD75 rev 1
|
||||
#define LAYOUT( \
|
||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
|
||||
K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
|
||||
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, \
|
||||
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K315, \
|
||||
K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \
|
||||
K500, K501, K503, K504, K506, K508, K510, K511, K512, K513, K514, K515 \
|
||||
) { \
|
||||
{ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
|
||||
{ K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
|
||||
{ K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \
|
||||
{ K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \
|
||||
{ K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \
|
||||
{ K500, K501, KC_NO, K503, K504, KC_NO, K506, KC_NO, K508, KC_NO, K510, K511, K512, K513, K514, K515 } \
|
||||
}
|
||||
|
||||
|
||||
/* 1U bottom row ─────────────────────────── ↓ ─ ↓ ─ ↓
|
||||
* ┌────┬────┬────┬────────────────────────┬───┬───┬───┬───┬───┬───┐
|
||||
* │1.25│1.25│1.25│6.25U │1U │1U │1U │1U │1U │1U │
|
||||
* └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┘
|
||||
*/
|
||||
|
||||
#define LAYOUT_ansi_1u( \
|
||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
|
||||
K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \
|
||||
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, \
|
||||
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K315, \
|
||||
K400, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \
|
||||
K500, K501, K503, K506, K510, K511, K512, K513, K514, K515 \
|
||||
) { \
|
||||
{ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
|
||||
{ K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, K114, K115 }, \
|
||||
{ K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \
|
||||
{ K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \
|
||||
{ K400, KC_NO, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \
|
||||
{ K500, K501, KC_NO, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, K511, K512, K513, K514, K515 } \
|
||||
}
|
||||
|
||||
#define LAYOUT_75_ansi LAYOUT_ansi_1u
|
||||
|
||||
#define LAYOUT_iso_1u( \
|
||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
|
||||
K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \
|
||||
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K313, K215, \
|
||||
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K214, K315, \
|
||||
K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \
|
||||
K500, K501, K503, K506, K510, K511, K512, K513, K514, K515 \
|
||||
) { \
|
||||
{ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
|
||||
{ K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, K114, K115 }, \
|
||||
{ K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \
|
||||
{ K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \
|
||||
{ K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \
|
||||
{ K500, K501, KC_NO, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, K511, K512, K513, K514, K515 } \
|
||||
}
|
||||
|
||||
#define LAYOUT_75_iso( \
|
||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
|
||||
K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \
|
||||
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K215, \
|
||||
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K214, K313, K315, \
|
||||
K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \
|
||||
K500, K501, K503, K506, K510, K511, K512, K513, K514, K515 \
|
||||
) LAYOUT_iso_1u( \
|
||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
|
||||
K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \
|
||||
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K313, K215, \
|
||||
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K214, K315, \
|
||||
K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \
|
||||
K500, K501, K503, K506, K510, K511, K512, K513, K514, K515 \
|
||||
)
|
||||
|
||||
|
||||
/* normal bottom row ──────────────────────── ↓ ─── ↓
|
||||
* ┌────┬────┬────┬────────────────────────┬─────┬─────┬───┬───┬───┐
|
||||
* │1.25│1.25│1.25│6.25U │1.5U │1.5U │1U │1U │1U │
|
||||
* └────┴────┴────┴────────────────────────┴─────┴─────┴───┴───┴───┘
|
||||
*/
|
||||
|
||||
#define LAYOUT_ansi( \
|
||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
|
||||
K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \
|
||||
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, \
|
||||
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K315, \
|
||||
K400, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \
|
||||
K500, K501, K503, K506, K510, K512, K513, K514, K515 \
|
||||
) { \
|
||||
{ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
|
||||
{ K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, K114, K115 }, \
|
||||
{ K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \
|
||||
{ K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \
|
||||
{ K400, KC_NO, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \
|
||||
{ K500, K501, KC_NO, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, KC_NO, K512, K513, K514, K515 } \
|
||||
}
|
||||
|
||||
#define LAYOUT_iso( \
|
||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
|
||||
K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \
|
||||
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K313, K215, \
|
||||
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K214, K315, \
|
||||
K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \
|
||||
K500, K501, K503, K506, K510, K512, K513, K514, K515 \
|
||||
) { \
|
||||
{ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
|
||||
{ K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, K114, K115 }, \
|
||||
{ K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \
|
||||
{ K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \
|
||||
{ K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \
|
||||
{ K500, K501, KC_NO, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, KC_NO, K512, K513, K514, K515 } \
|
||||
}
|
||||
|
||||
// LAYOUT for all possible switch positions on a KBD75 rev 2
|
||||
#define LAYOUT_numpad( \
|
||||
|
@ -21,5 +147,3 @@
|
|||
{ K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \
|
||||
{ K500, K501, KC_NO, K503, K504, KC_NO, K506, KC_NO, K508, K509, K510, K511, K512, K513, K514, K515 } \
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
|
@ -1,44 +1,8 @@
|
|||
# MCU name
|
||||
MCU = atmega32u4
|
||||
|
||||
# Processor frequency.
|
||||
# This will define a symbol, F_CPU, in all source code files equal to the
|
||||
# processor frequency in Hz. You can then use this symbol in your source code to
|
||||
# calculate timings. Do NOT tack on a 'UL' at the end, this will be done
|
||||
# automatically to create a 32-bit value in your source code.
|
||||
#
|
||||
# This will be an integer division of F_USB below, as it is sourced by
|
||||
# F_USB after it has run through any CPU prescalers. Note that this value
|
||||
# does not *change* the processor frequency - it should merely be updated to
|
||||
# reflect the processor speed set externally so that the code can use accurate
|
||||
# software delays.
|
||||
F_CPU = 16000000
|
||||
|
||||
#
|
||||
# LUFA specific
|
||||
#
|
||||
# Target architecture (see library "Board Types" documentation).
|
||||
ARCH = AVR8
|
||||
|
||||
# Input clock frequency.
|
||||
# This will define a symbol, F_USB, in all source code files equal to the
|
||||
# input clock frequency (before any prescaling is performed) in Hz. This value may
|
||||
# differ from F_CPU if prescaling is used on the latter, and is required as the
|
||||
# raw input clock is fed directly to the PLL sections of the AVR for high speed
|
||||
# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
|
||||
# at the end, this will be done automatically to create a 32-bit value in your
|
||||
# source code.
|
||||
#
|
||||
# If no clock division is performed on the input clock inside the AVR (via the
|
||||
# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
|
||||
F_USB = $(F_CPU)
|
||||
|
||||
# Interrupt driven control endpoint task(+60)
|
||||
OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
|
||||
|
||||
|
||||
# Boot Section Size in *bytes*
|
||||
OPT_DEFS += -DBOOTLOADER_SIZE=4096
|
||||
# Bootloader selection
|
||||
BOOTLOADER = atmel-dfu
|
||||
|
||||
|
||||
# Build Options
|
||||
|
@ -53,4 +17,6 @@ SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
|||
NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
||||
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
|
||||
AUDIO_ENABLE = no
|
||||
RGBLIGHT_ENABLE = yes
|
||||
RGBLIGHT_ENABLE = yes
|
||||
|
||||
LAYOUTS = 75_ansi 75_iso
|
||||
|
|
Loading…
Reference in a new issue