aboutsummaryrefslogtreecommitdiff
path: root/keyboards/kinesis
diff options
context:
space:
mode:
authorJames Young <18669334+noroadsleft@users.noreply.github.com>2021-05-29 14:38:50 -0700
committerGitHub <noreply@github.com>2021-05-29 14:38:50 -0700
commit1646c0f26cfa21a7023d404008e4d0aa4917193d (patch)
tree337ab0498a929285a234518fee34a4d9dcf51656 /keyboards/kinesis
parentf55e39e8a2246f6f96fd5d4a84a866e2615cde7b (diff)
downloadqmk_firmware-1646c0f26cfa21a7023d404008e4d0aa4917193d.tar.gz
qmk_firmware-1646c0f26cfa21a7023d404008e4d0aa4917193d.zip
2021 May 29 Breaking Changes Update (#13034)
* Add Per Key functionality for AutoShift (#11536) * LED Matrix: Reactive effect buffers & advanced indicators (#12588) * [Keyboard] kint36: switch to sym_eager_pk debouncing (#12626) * [Keyboard] kint2pp: reduce input latency by ≈10ms (#12625) * LED Matrix: Split (#12633) * [CI] Format code according to conventions (#12650) * feat: infinite timeout for leader key (#6580) * feat: implement leader_no_timeout logic * docs(leader_key): infinite leader timeout docs * Format code according to conventions (#12680) * Update ADC driver for STM32F1xx, STM32F3xx, STM32F4xx (#12403) * Fix default ADC_RESOLUTION for ADCv3 (and ADCv4) Recent ChibiOS update removed ADC_CFGR1_RES_10BIT from the ADCv3 headers (that macro should not have been there, because ADCv3 has CFGR instead of CFGR1). Fix the default value for ADC_RESOLUTION to use ADC_CFGR_RES_10BITS if it is defined (that name is used for ADCv3 and ADCv4). * Update ADC docs to match the actually used resolution ADC driver for ChibiOS actually uses the 10-bit resolution by default (probably to match AVR); fix the documentation accordingly. Also add both ADC_CFGR_RES_10BITS and ADC_CFGR1_RES_10BIT constants (these names differ according to the ADC implementation in the particular MCU). * Fix pinToMux() for B12 and B13 on STM32F3xx Testing on STM32F303CCT6 revealed that the ADC mux values for B12 and B13 pins were wrong. * Add support for all possible analog pins on STM32F1xx Added ADC mux values for pins A0...A7, B0, B1, C0...C5 on STM32F1xx (they are the same at least for STM32F103x8 and larger F103 devices, and also F102, F105, F107 families). Actually tested on STM32F103C8T6 (therefore pins C0...C5 were not tested). Pins F6...F10, which are present on STM32F103x[C-G] in 144-pin packages, cannot be supported at the moment, because those pins are connected only to ADC3, but the ChibiOS ADC driver for STM32F1xx supports only ADC1. * Add support for all possible analog pins on STM32F4xx Added ADC mux values for pins A0...A7, B0, B1, C0...C5 and optionally F3...F10 (if STM32_ADC_USE_ADC3 is enabled). These mux values are apparently the same for all F4xx devices, except some smaller devices may not have ADC3. Actually tested on STM32F401CCU6, STM32F401CEU6, STM32F411CEU6 (using various WeAct “Blackpill” boards); only pins A0...A7, B0, B1 were tested. Pins F3...F10 are inside `#if STM32_ADC_USE_ADC3` because some devices which don't have ADC3 also don't have the GPIOF port, therefore the code which refers to Fx pins does not compile. * Fix STM32F3xx ADC mux table in documentation The ADC driver documentation had some errors in the mux table for STM32F3xx. Fix this table to match the datasheet and the actual code (mux settings for B12 and B13 were also tested on a real STM32F303CCT6 chip). * Add STM32F1xx ADC pins to the documentation * Add STM32F4xx ADC pins to the documentation * Add initial support for tinyuf2 bootloader (when hosted on F411 blackpill) (#12600) * Add support for jumping to tinyuf2 bootloader. Adds blackpill UF2 example. * Update flashing.md * Update chconf.h * Update config.h * Update halconf.h * Update mcuconf.h * eeprom driver: Refactor where eeprom driver initialisation (and EEPROM emulation initialisation) occurs to make it non-target-specific. (#12671) * Add support for MCU = STM32F446 (#12619) * Add support for MCU = STM32F446 * Update platforms/chibios/GENERIC_STM32_F446XE/configs/config.h * Restore mcuconf.h to the one used by RT-STM32F446RE-NUCLEO64 * stm32f446: update mcuconf.h and board.h for 16MHz operation, with USB enabled, and other peripherals disabled. * Format code according to conventions (#12682) * Format code according to conventions (#12687) * Add STM32L433 and L443 support (#12063) * initial L433 commit * change to XC * fix L433 * disable all peripherals * update system and peripheral clocks * 433 change * use its own board files * revert its own board files * l433 specific change * fix stm32l432xx define * remove duplicate #define * fix bootloader jump * move to L443xx and add i2c2, spi2, usart3 to mcuconf.h * move to L443 * move to L443 * fix sdmmc in mcuconf.h * include STM32L443 * add L443 * Include L443 in compatible microcontrollers * Include L443 in compatible microcontrollers * Update config bootloader jump description * Update ChibiOS define reasoning * Update quantum/mcu_selection.mk * fix git conflict * Updated Function96 with V2 files and removed chconf.h and halconf.h (#12613) * Fix bad PR merge for #6580. (#12721) * Change RGB/LED Matrix to use a simple define for USB suspend (#12697) * [CI] Format code according to conventions (#12731) * Fixing transport's led/rgb matrix suspend state logic (#12770) * [CI] Format code according to conventions (#12772) * Fix comment parsing (#12750) * Added OLED fade out support (#12086) * fix some references to bin/qmk that slipped in (#12832) * Resolve a number of warnings in `qmk generate-api` (#12833) * New command: qmk console (#12828) * stash poc * stash * tidy up implementation * Tidy up slightly for review * Tidy up slightly for review * Bodge environment to make tests pass * Refactor away from asyncio due to windows issues * Filter devices * align vid/pid printing * Add hidapi to the installers * start preparing for multiple hid_listeners * udev rules for hid_listen * refactor to move closer to end state * very basic implementation of the threaded model * refactor how vid/pid/index are supplied and parsed * windows improvements * read the report directly when usage page isn't available * add per-device colors, the choice to show names or numbers, and refactor * add timestamps * Add support for showing bootloaders * tweak the color for bootloaders * Align bootloader disconnect with connect color * add support for showing all bootloaders * fix the pyusb check * tweaks * fix exception * hide a stack trace behind -v * add --no-bootloaders option * add documentation for qmk console * Apply suggestions from code review * pyformat * clean up and flesh out KNOWN_BOOTLOADERS * Remove pointless SERIAL_LINK_ENABLE rules (#12846) * Make Swap Hands use PROGMEM (#12284) This converts the array that the Swap Hands feature uses to use PROGMEM, and to read from that array, as such. Since this array never changes at runtime, there is no reason to keep it in memory. Especially for AVR boards, as memory is a precious resource. * Fix another bin/qmk reference (#12856) * [Keymap] Turn OLED off on suspend in soundmonster keymap (#10419) * Fixup build errors on `develop` branch. (#12723) * LED Matrix: Effects! (#12651) * Fix syntax error when compiling for ARM (#12866) * Remove KEYMAP and LAYOUT_kc (#12160) * alias KEYMAP to LAYOUT * remove KEYMAP and LAYOUT_kc * Add setup, clone, and env to the list of commands we allow even with broken modules (#12868) * Rename `point_t` -> `led_point_t` (#12864) * [Keyboard] updated a vendor name / fixed minor keymap issues (#12881) * Add missing LED Matrix suspend code to suspend.c (#12878) * LED Matrix: Documentation (#12685) * Deprecate `send_unicode_hex_string()` (#12602) * Fix spelling mistake regarding LED Matrix in split_common. (#12888) * [Keymap] Fix QWERTY/DVORAK status output for kzar keymap (#12895) * Use milc.subcommand.config instead of qmk.cli.config (#12915) * Use milc.subcommand.config instead * pyformat * remove the config test * Add function to allow repeated blinking of one layer (#12237) * Implement function rgblight_blink_layer_repeat to allow repeated blinking of one layer at a time * Update doc * Rework rgblight blinking according to requested change * optimize storage * Fixup housekeeping from being invoked twice per loop. (#12933) * matrix: wait for row signal to go HIGH for every row (#12945) I noticed this discrepancy (last row of the matrix treated differently than the others) when optimizing the input latency of my keyboard controller, see also https://michael.stapelberg.ch/posts/2021-05-08-keyboard-input-latency-qmk-kinesis/ Before this commit, when tuning the delays I noticed ghost key presses when pressing the F2 key, which is on the last row of the keyboard matrix: the dead_grave key, which is on the first row of the keyboard matrix, would be incorrectly detected as pressed. After this commit, all keyboard matrix rows are interpreted correctly. I suspect that my setup is more susceptible to this nuance than others because I use GPIO_INPUT_PIN_DELAY=0 and hence don’t have another delay that might mask the problem. * ensure we do not conflict with existing keymap aliases (#12976) * Add support for up to 4 IS31FL3733 drivers (#12342) * Convert Encoder callbacks to be boolean functions (#12805) * [Keyboard] Fix Terrazzo build failure (#12977) * Do not hard set config in CPTC files (#11864) * [Keyboard] Corne - Remove legacy revision support (#12226) * [Keymap] Update to Drashna keymap and user code (based on develop) (#12936) * Add Full-duplex serial driver for ARM boards (#9842) * Document LED_MATRIX_FRAMEBUFFER_EFFECTS (#12987) * Backlight: add defines for default level and breathing state (#12560) * Add dire message about LUFA mass storage bootloader (#13014) * [Keyboard] Remove redundant legacy and common headers for crkbd (#13023) Was causing compiler errors on some systems. * Fix keyboards/keymaps for boolean encoder callback changes (#12985) * `backlight.c`: include `eeprom.h` (#13024) * Add changelog for 2021-05-29 Breaking Changes merge (#12939) * Add ChangeLog for 2021-05-29 Breaking Changes Merge: initial version * Add recent develop changes * Sort recent develop changes * Remove sections for ChibiOS changes per tzarc No ChibiOS changes this round. * Add and sort recent develop changes * add notes about keyboard moves/deletions * import changelog for PR 12172 Documents the change to BOOTMAGIC_ENABLE. * update section headings * re-sort changelog * add additional note regarding Bootmagic changes * remove changelog timestamp * update dates in main Breaking Changes docs * fix broken section anchors in previous changelogs * add link to backlight/eeprom patch to changelog * highlight some more changes * link PRs from section headers * Restore standard readme * run: qmk cformat --core-only
Diffstat (limited to 'keyboards/kinesis')
-rw-r--r--keyboards/kinesis/alvicstep/config.h1
-rw-r--r--keyboards/kinesis/config.h2
-rw-r--r--keyboards/kinesis/kinesis.h3
-rw-r--r--keyboards/kinesis/kint2pp/config.h4
-rw-r--r--keyboards/kinesis/kint2pp/rules.mk3
-rw-r--r--keyboards/kinesis/kint36/chconf.h28
-rw-r--r--keyboards/kinesis/kint36/config.h66
-rw-r--r--keyboards/kinesis/kint36/keymaps/kzar/config.h19
-rw-r--r--keyboards/kinesis/kint36/keymaps/kzar/keymap.c405
-rw-r--r--keyboards/kinesis/kint36/keymaps/kzar/readme.md9
-rw-r--r--keyboards/kinesis/kint36/keymaps/kzar/rules.mk5
-rw-r--r--keyboards/kinesis/kint36/kint36.c26
-rw-r--r--keyboards/kinesis/kint36/kint36.h92
-rw-r--r--keyboards/kinesis/kint36/mcuconf.h65
-rw-r--r--keyboards/kinesis/kint36/readme.md3
-rw-r--r--keyboards/kinesis/kint36/rules.mk6
-rw-r--r--keyboards/kinesis/nguyenvietyen/rules.mk2
-rw-r--r--keyboards/kinesis/rules.mk2
-rw-r--r--keyboards/kinesis/stapelberg/config.h1
19 files changed, 738 insertions, 4 deletions
diff --git a/keyboards/kinesis/alvicstep/config.h b/keyboards/kinesis/alvicstep/config.h
index 88b7e2644..73aa4dd4d 100644
--- a/keyboards/kinesis/alvicstep/config.h
+++ b/keyboards/kinesis/alvicstep/config.h
@@ -2,6 +2,7 @@
2#define ALVICSTEP_CONFIG_H 2#define ALVICSTEP_CONFIG_H
3 3
4#include "../config.h" 4#include "../config.h"
5#include "config_common.h"
5 6
6/* USB Device descriptor parameter */ 7/* USB Device descriptor parameter */
7#define PRODUCT_ID 0x6060 8#define PRODUCT_ID 0x6060
diff --git a/keyboards/kinesis/config.h b/keyboards/kinesis/config.h
index ddb16d33b..c5a89d453 100644
--- a/keyboards/kinesis/config.h
+++ b/keyboards/kinesis/config.h
@@ -18,8 +18,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
18#ifndef CONFIG_H 18#ifndef CONFIG_H
19#define CONFIG_H 19#define CONFIG_H
20 20
21#include "config_common.h"
22
23/* USB Device descriptor parameter */ 21/* USB Device descriptor parameter */
24#define VENDOR_ID 0xFEED 22#define VENDOR_ID 0xFEED
25#define MANUFACTURER You 23#define MANUFACTURER You
diff --git a/keyboards/kinesis/kinesis.h b/keyboards/kinesis/kinesis.h
index 444322d1f..0833992b8 100644
--- a/keyboards/kinesis/kinesis.h
+++ b/keyboards/kinesis/kinesis.h
@@ -13,6 +13,9 @@
13#ifdef KEYBOARD_kinesis_nguyenvietyen 13#ifdef KEYBOARD_kinesis_nguyenvietyen
14 #include "nguyenvietyen.h" 14 #include "nguyenvietyen.h"
15#endif 15#endif
16#ifdef KEYBOARD_kinesis_kint36
17 #include "kint36.h"
18#endif
16 19
17#include "quantum.h" 20#include "quantum.h"
18 21
diff --git a/keyboards/kinesis/kint2pp/config.h b/keyboards/kinesis/kint2pp/config.h
index 902c9b24a..ff5761b6b 100644
--- a/keyboards/kinesis/kint2pp/config.h
+++ b/keyboards/kinesis/kint2pp/config.h
@@ -36,3 +36,7 @@
36#define DEBOUNCE 5 36#define DEBOUNCE 5
37 37
38#define IGNORE_MOD_TAP_INTERRUPT 38#define IGNORE_MOD_TAP_INTERRUPT
39
40// Reduce input latency by lowering the USB polling interval
41// from its 10ms default to the 1ms minimum that USB 1.x (Full Speed) allows:
42#define USB_POLLING_INTERVAL_MS 1
diff --git a/keyboards/kinesis/kint2pp/rules.mk b/keyboards/kinesis/kint2pp/rules.mk
index e69de29bb..7c48a98bf 100644
--- a/keyboards/kinesis/kint2pp/rules.mk
+++ b/keyboards/kinesis/kint2pp/rules.mk
@@ -0,0 +1,3 @@
1# Debounce eagerly (report change immediately), keep per-key timers. We can use
2# this because the kinT does not have to deal with noise.
3DEBOUNCE_TYPE = sym_eager_pk
diff --git a/keyboards/kinesis/kint36/chconf.h b/keyboards/kinesis/kint36/chconf.h
new file mode 100644
index 000000000..81dfcd5a2
--- /dev/null
+++ b/keyboards/kinesis/kint36/chconf.h
@@ -0,0 +1,28 @@
1/* Copyright 2020 QMK
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17/*
18 * This file was auto-generated by:
19 * `qmk chibios-confmigrate -i keyboards/kinesis/kint36/chconf.h -r platforms/chibios/common/configs/chconf.h`
20 */
21
22#pragma once
23
24#define CH_CFG_ST_TIMEDELTA 0
25
26#define CH_CFG_TIME_QUANTUM 20
27
28#include_next <chconf.h>
diff --git a/keyboards/kinesis/kint36/config.h b/keyboards/kinesis/kint36/config.h
new file mode 100644
index 000000000..be5752603
--- /dev/null
+++ b/keyboards/kinesis/kint36/config.h
@@ -0,0 +1,66 @@
1/* Copyright 2020 QMK
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#pragma once
18
19/* USB Device descriptor parameter */
20#undef VENDOR_ID
21#define VENDOR_ID 0x1209
22#undef PRODUCT_ID
23#define PRODUCT_ID 0x345C
24#undef DEVICE_VER
25#define DEVICE_VER 0x0001
26#undef MANUFACTURER
27#define MANUFACTURER "https://github.com/stapelberg"
28#undef PRODUCT
29#define PRODUCT "kinT (kint36)"
30
31/* key matrix size */
32#define MATRIX_ROWS 15
33#define MATRIX_COLS 7
34
35/*
36 * Keyboard Matrix Assignments
37 *
38 * Change this to how you wired your keyboard
39 * COLS: AVR pins used for columns, left to right
40 * ROWS: AVR pins used for rows, top to bottom
41 * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
42 * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
43 *
44 */
45#define MATRIX_ROW_PINS { D3, C3, C4, C6, D2, B0, D7, A12, A13, B17, B16, D0, B1, C2, D6 }
46#define MATRIX_COL_PINS { B3, D1, C0, D5, C1, B2, D4 }
47
48#define UNUSED_PINS
49
50/* COL2ROW or ROW2COL */
51#define DIODE_DIRECTION COL2ROW
52
53/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
54#define DEBOUNCE 5
55
56#define IGNORE_MOD_TAP_INTERRUPT
57
58// Reduce input latency by lowering the USB polling interval
59// from its 10ms default to the 1ms minimum that USB 1.x (Full Speed) allows:
60#define USB_POLLING_INTERVAL_MS 1
61
62#define LED_PIN_ON_STATE 0
63#define LED_NUM_LOCK_PIN A14
64#define LED_CAPS_LOCK_PIN C7
65#define LED_SCROLL_LOCK_PIN A5
66#define LED_COMPOSE_PIN E26
diff --git a/keyboards/kinesis/kint36/keymaps/kzar/config.h b/keyboards/kinesis/kint36/keymaps/kzar/config.h
new file mode 100644
index 000000000..6b03aa6a7
--- /dev/null
+++ b/keyboards/kinesis/kint36/keymaps/kzar/config.h
@@ -0,0 +1,19 @@
1/* Copyright 2021 Dave Vandyke <kzar@kzar.co.uk>
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#pragma once
18
19#undef LED_COMPOSE_PIN
diff --git a/keyboards/kinesis/kint36/keymaps/kzar/keymap.c b/keyboards/kinesis/kint36/keymaps/kzar/keymap.c
new file mode 100644
index 000000000..524792de8
--- /dev/null
+++ b/keyboards/kinesis/kint36/keymaps/kzar/keymap.c
@@ -0,0 +1,405 @@
1/* Copyright 2021 Dave Vandyke <kzar@kzar.co.uk>,
2 * Based upon Xyverz's Kinesis keymap Copyright 2017-2020.
3 *
4 * This program is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation, either version 2 of the License, or
7 * (at your option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program. If not, see <http://www.gnu.org/licenses/>.
16 */
17
18#include QMK_KEYBOARD_H
19#include "version.h"
20
21enum layer_names {_QWERTY, _DVORAK, _MAC, _PC, _KEYPAD, _PROGRAM};
22enum my_keycodes {QWERTY = SAFE_RANGE, DVORAK, WIN, MAC, PC, STATUS, PROGRAM};
23
24#define LED_KEYPAD E26
25
26// clang-format off
27
28/*
29 QWERTY layer:
30 ,---------------------------------------------------------------------------.
31 | ESC | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 |
32 `---------------------------------------------------------------------------'
33 ,---------------------------------------------------------------------------.
34 | F9 | F10 | F11 | F12 | PScr | SLck | Pause | Keypad | Prgrm |
35 `---------------------------------------------------------------------------'
36 ,-------------------------------------------.,-------------------------------------------.
37 | = | 1 | 2 | 3 | 4 | 5 || 6 | 7 | 8 | 9 | 0 | - |
38 |--------+------+------+------+------+------||------+------+------+------+------+--------|
39 | Tab | Q | W | E | R | T || Y | U | I | O | P | \ |
40 |--------+------+------+------+------+------||------+------+------+------+------+--------|
41 | CapsLk | A | S | D | F | G || H | J | K | L | ; | ' |
42 |--------+------+------+------+------+------||------+------+------+------+------+--------|
43 | LShift | Z | X | C | V | B || N | M | , | . | / | RShift |
44 `--------+------+------+------+------+------'`------+------+------+------+------+--------'
45 | ` | \ | Left | Rght | | Up | Dn | [ | ] |
46 `---------------------------' `---------------------------'
47 ,--------------.,--------------.
48 | LCtl | LAlt || LGUI | RCtl |
49 ,------|-------|------||------+-------+-------.
50 | | | Home || PgUp | Enter | |
51 | BkSp | Del |------||------| / | Space |
52 | | | End || PgDn | KeyPd | |
53 `---------------------'`----------------------'
54
55 Dvorak layer:
56 ,---------------------------------------------------------------------------.
57 | | | | | | | | | |
58 `---------------------------------------------------------------------------'
59 ,---------------------------------------------------------------------------.
60 | | | | | | | | | |
61 `---------------------------------------------------------------------------'
62 ,-------------------------------------------.,-------------------------------------------.
63 | | | | | | || | | | | | |
64 |--------+------+------+------+------+------||------+------+------+------+------+--------|
65 | | ' | , | . | P | Y || F | G | C | R | L | / |
66 |--------+------+------+------+------+------||------+------+------+------+------+--------|
67 | | A | O | E | U | I || D | H | T | N | S | \ |
68 |--------+------+------+------+------+------||------+------+------+------+------+--------|
69 | | ; | Q | J | K | X || B | M | W | V | Z | |
70 `--------+------+------+------+------+------'`------+------+------+------+------+--------'
71 | | | | | | | | | |
72 `---------------------------' `---------------------------'
73 ,--------------.,--------------.
74 | | || | |
75 ,------|-------|------||------+-------+-------.
76 | | | || | | |
77 | | |------||------| | |
78 | | | || | | |
79 `---------------------'`----------------------'
80
81 Mac layer:
82 ,-------------------------------------------------------------------------------.
83 | | | | | | | | | |
84 `-------------------------------------------------------------------------------'
85 ,-------------------------------------------------------------------------------.
86 | | | | | | Power | | | |
87 `-------------------------------------------------------------------------------'
88 ,-------------------------------------------.,-------------------------------------------.
89 | | | | | | || | | | | | |
90 |--------+------+------+------+------+------||------+------+------+------+------+--------|
91 | | | | | | || | | | | | |
92 |--------+------+------+------+------+------||------+------+------+------+------+--------|
93 | | | | | | || | | | | | |
94 |--------+------+------+------+------+------||------+------+------+------+------+--------|
95 | | | | | | || | | | | | |
96 `--------+------+------+------+------+------'`------+------+------+------+------+--------'
97 | | | | | | | | | |
98 `---------------------------' `---------------------------'
99 ,-------------.,-------------.
100 | LGUI | LAlt || RCtl | RGUI |
101 ,------|------|------||------+------+------.
102 | | | || | | |
103 | | |------||------| | |
104 | | | || | | |
105 `--------------------'`--------------------'
106
107 PC layer:
108 ,-------------------------------------------------------------------------------.
109 | | | | | | | | | |
110 `-------------------------------------------------------------------------------'
111 ,-------------------------------------------------------------------------------.
112 | | | | | | | | | |
113 `-------------------------------------------------------------------------------'
114 ,-------------------------------------------.,-------------------------------------------.
115 | | | | | | || | | | | | |
116 |--------+------+------+------+------+------||------+------+------+------+------+--------|
117 | | | | | | || | | | | | |
118 |--------+------+------+------+------+------||------+------+------+------+------+--------|
119 | | | | | | || | | | | | |
120 |--------+------+------+------+------+------||------+------+------+------+------+--------|
121 | | | | | | || | | | | | |
122 `--------+------+------+------+------+------'`------+------+------+------+------+--------'
123 | | | | | | | | | |
124 `---------------------------' `---------------------------'
125 ,-------------.,-------------.
126 | | || RAlt | |
127 ,------|------|------||------+------+------.
128 | | | || | | |
129 | | |------||------| | |
130 | | | || | | |
131 `--------------------'`--------------------'
132
133 Keypad layer:
134 ,---------------------------------------------------------------------------.
135 | | | | | | | | | |
136 `---------------------------------------------------------------------------'
137 ,---------------------------------------------------------------------------.
138 | | | | | Mute | Vol Down | Vol Up | Keypad | |
139 `---------------------------------------------------------------------------'
140 ,-------------------------------------------.,-------------------------------------------.
141 | | | | | | || | NmLk | KP = | KP / | KP * | |
142 |--------+------+------+------+------+------||------+------+------+------+------+--------|
143 | | | | | | || | KP 7 | KP 8 | KP 9 | KP - | |
144 |--------+------+------+------+------+------||------+------+------+------+------+--------|
145 | | | | | | || | KP 4 | KP 5 | KP 6 | KP + | |
146 |--------+------+------+------+------+------||------+------+------+------+------+--------|
147 | | | | | | || | KP 1 | KP 2 | KP 3 |KP Ent| |
148 `--------+------+------+------+------+------'`------+------+------+------+------+--------'
149 | | INS | | | | | | KP . |KP Ent|
150 `---------------------------' `---------------------------'
151 ,-------------.,-------------.
152 | | || | |
153 ,------|------|------||------+------+------.
154 | | | || | | |
155 | | |------||------| | KP 0 |
156 | | | || | | |
157 `--------------------'`--------------------'
158
159 Program layer:
160 ,-------------------------------------------------------------------------------.
161 | STATUS | | | QWERTY | DVORAK | | | | |
162 `-------------------------------------------------------------------------------'
163 ,-------------------------------------------------------------------------------.
164 | RESET | | | | | | | | |
165 `-------------------------------------------------------------------------------'
166 ,-------------------------------------------.,-------------------------------------------.
167 | | | | | | || | | | | | |
168 |--------+------+------+------+------+------||------+------+------+------+------+--------|
169 | | | | | | || | | | | | |
170 |--------+------+------+------+------+------||------+------+------+------+------+--------|
171 | | | | | | || | | | | | |
172 |--------+------+------+------+------+------||------+------+------+------+------+--------|
173 | | | | | | || | | | | | |
174 `--------+------+------+------+------+------'`------+------+------+------+------+--------'
175 | | | | | | | | | |
176 `---------------------------' `---------------------------'
177 ,-------------.,-------------.
178 | | || | |
179 ,------|------|------||------+------+------.
180 | | | || | | |
181 | | |------||------| | |
182 | | | || | | |
183 `--------------------'`--------------------'
184
185*/
186
187const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
188
189[_QWERTY] = LAYOUT (
190 // Left Hand
191 KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8,
192 KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5,
193 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T,
194 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G,
195 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B,
196 KC_GRV, KC_NUBS, KC_LEFT, KC_RGHT,
197 // Left Thumb
198 KC_LCTL, KC_LALT,
199 KC_HOME,
200 KC_BSPC, KC_DEL, KC_END,
201
202 // Right Hand
203 KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_KEYPAD), MO(_PROGRAM),
204 KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
205 KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
206 KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
207 KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
208 KC_UP, KC_DOWN, KC_LBRC, KC_RBRC,
209 // Right Thumb
210 KC_LGUI, KC_RCTL,
211 KC_PGUP,
212 KC_PGDN, KC_ENT, KC_SPC
213 ),
214
215[_DVORAK] = LAYOUT (
216 // Left Hand
217 _______, _______, _______, _______, _______, _______, _______, _______, _______,
218 _______, _______, _______, _______, _______, _______,
219 _______, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y,
220 _______, KC_A, KC_O, KC_E, KC_U, KC_I,
221 _______, KC_SCLN, KC_Q, KC_J, KC_K, KC_X,
222 _______, _______, _______, _______,
223 // Left Thumb
224 _______, _______,
225 _______,
226 _______, _______, _______,
227
228 // Right Hand
229 _______, _______, _______, _______, _______, _______, _______, _______, _______,
230 _______, _______, _______, _______, _______, _______,
231 KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH,
232 KC_D, KC_H, KC_T, KC_N, KC_S, KC_BSLS,
233 KC_B, KC_M, KC_W, KC_V, KC_Z, _______,
234 _______, _______, _______, _______,
235 // Right Thumb
236 _______, _______,
237 _______,
238 _______, _______, _______
239 ),
240
241[_MAC] = LAYOUT (
242 // Left Hand
243 _______, _______, _______, _______, _______, _______, _______, _______, _______,
244 _______, _______, _______, _______, _______, _______,
245 _______, _______, _______, _______, _______, _______,
246 _______, _______, _______, _______, _______, _______,
247 _______, _______, _______, _______, _______, _______,
248 _______, _______, _______, _______,
249 // Left Thumb
250 KC_LGUI, KC_LALT,
251 _______,
252 _______, _______, _______,
253
254 // Right Hand
255 _______, _______, _______, _______, _______, KC_POWER, _______, _______, _______,
256 _______, _______, _______, _______, _______, _______,
257 _______, _______, _______, _______, _______, _______,
258 _______, _______, _______, _______, _______, _______,
259 _______, _______, _______, _______, _______, _______,
260 _______, _______, _______, _______,
261 // Right Thumb
262 KC_RCTL, KC_RGUI,
263 _______,
264 _______, _______, _______
265 ),
266
267[_PC] = LAYOUT (
268 // Left Hand
269 _______, _______, _______, _______, _______, _______, _______, _______, _______,
270 _______, _______, _______, _______, _______, _______,
271 _______, _______, _______, _______, _______, _______,
272 _______, _______, _______, _______, _______, _______,
273 _______, _______, _______, _______, _______, _______,
274 _______, _______, _______, _______,
275 // Left Thumb
276 _______, _______,
277 _______,
278 _______, _______, _______,
279
280 // Right Hand
281 _______, _______, _______, _______, _______, _______, _______, _______, _______,
282 _______, _______, _______, _______, _______, _______,
283 _______, _______, _______, _______, _______, _______,
284 _______, _______, _______, _______, _______, _______,
285 _______, _______, _______, _______, _______, _______,
286 _______, _______, _______, _______,
287 // Right Thumb
288 KC_RALT, _______,
289 _______,
290 _______, _______, _______
291 ),
292
293[_KEYPAD] = LAYOUT (
294 // Left Hand
295 _______, _______, _______, _______, _______, _______, _______, _______, _______,
296 _______, _______, _______, _______, _______, _______,
297 _______, _______, _______, _______, _______, _______,
298 _______, _______, _______, _______, _______, _______,
299 _______, _______, _______, _______, _______, _______,
300 _______, KC_INS, _______, _______,
301 // Left Thumb
302 _______, _______,
303 _______,
304 _______, _______, _______,
305
306 // Right Hand
307 _______, _______, _______, _______, KC__MUTE, KC__VOLDOWN, KC__VOLUP, _______, _______,
308 _______, KC_NLCK, KC_PEQL, KC_PSLS, KC_PAST, _______,
309 _______, KC_P7, KC_P8, KC_P9, KC_PMNS, _______,
310 _______, KC_P4, KC_P5, KC_P6, KC_PPLS, _______,
311 _______, KC_P1, KC_P2, KC_P3, KC_PENT, _______,
312 _______, _______, KC_PDOT, KC_PENT,
313 // Right Thumb
314 _______, _______,
315 _______,
316 _______, _______, KC_P0
317 ),
318
319[_PROGRAM] = LAYOUT (
320 // Left Hand
321 STATUS, _______, _______, QWERTY, DVORAK, MAC, PC, WIN, _______,
322 _______, _______, _______, _______ , _______, _______,
323 _______, _______, _______, _______ , _______, _______,
324 _______, _______, _______, _______ , _______, _______,
325 _______, _______, _______, _______ , _______, _______,
326 _______, _______, _______ , _______,
327 // Left Thumb
328 _______, _______,
329 _______,
330 _______, _______, _______,
331
332 // Right Hand
333 RESET, _______, _______, _______, _______, _______, _______, _______, _______,
334 _______, _______, _______, _______, _______, _______,
335 _______, _______, _______, _______, _______, _______,
336 _______, _______, _______, _______, _______, _______,
337 _______, _______, _______, _______, _______, _______,
338 _______, _______, _______, _______,
339 // Right Thumb
340 _______, _______,
341 _______,
342 _______, _______, _______
343 )
344
345};
346
347layer_state_t layer_state_set_user(layer_state_t state) {
348 writePin(LED_KEYPAD, !layer_state_cmp(state, _KEYPAD));
349 return state;
350}
351
352bool process_record_user(uint16_t keycode, keyrecord_t *record) {
353 if (record->event.pressed) {
354 switch (keycode) {
355 case QWERTY:
356 set_single_persistent_default_layer(_QWERTY);
357 return false;
358 case DVORAK:
359 set_single_persistent_default_layer(_DVORAK);
360 return false;
361 case MAC:
362 layer_on(_MAC);
363 layer_off(_PC);
364 return false;
365 case PC:
366 layer_off(_MAC);
367 layer_on(_PC);
368 return false;
369 case WIN:
370 layer_off(_MAC);
371 layer_off(_PC);
372 return false;
373 case STATUS:
374 SEND_STRING("Firmware> QMK " QMK_VERSION ", " QMK_BUILDDATE "\n");
375 SEND_STRING("Keyboard> " QMK_KEYBOARD "\n");
376 SEND_STRING("Keymap> " QMK_KEYMAP "\n");
377
378 if (layer_state_cmp(default_layer_state, _QWERTY))
379 SEND_STRING("Layout> QWERTY\n");
380 else
381 SEND_STRING("Layout> DVORAK\n");
382
383 if (layer_state_is(_MAC))
384 SEND_STRING("Thumb keys mode> MAC\n");
385 else if (layer_state_is(_PC))
386 SEND_STRING("Thumb keys mode> PC\n");
387 else
388 SEND_STRING("Thumb keys mode> WIN\n");
389
390 if (keymap_config.nkro)
391 SEND_STRING("NKRO> Enabled\n");
392 else
393 SEND_STRING("NKRO> Disabled\n");
394
395 if (debug_enable)
396 SEND_STRING("Debug> Enabled\n");
397 else
398 SEND_STRING("Debug> Disabled\n");
399
400 return false;
401 }
402 }
403
404 return true;
405}
diff --git a/keyboards/kinesis/kint36/keymaps/kzar/readme.md b/keyboards/kinesis/kint36/keymaps/kzar/readme.md
new file mode 100644
index 000000000..b45808892
--- /dev/null
+++ b/keyboards/kinesis/kint36/keymaps/kzar/readme.md
@@ -0,0 +1,9 @@
1# Dave's Kinesis Advantage keymap
2
3Kinesis Advantage keymap aiming to emulate the stock controller. QWERTY, DVORAK,
4WIN, MAC, PC, program and keypad layers are all supported, along with the
5keypad LED and RESET + STATUS keys.
6
7Tested with a Kinesis Advantage2, kinT (stapelberg) keyboard controller built
8with a Teensy 3.6 microcontroller and a UK system layout. Originally based upon
9the xyvers keymap.
diff --git a/keyboards/kinesis/kint36/keymaps/kzar/rules.mk b/keyboards/kinesis/kint36/keymaps/kzar/rules.mk
new file mode 100644
index 000000000..753718884
--- /dev/null
+++ b/keyboards/kinesis/kint36/keymaps/kzar/rules.mk
@@ -0,0 +1,5 @@
1BOOTMAGIC_ENABLE = no
2COMMAND_ENABLE = yes
3MOUSEKEY_ENABLE = no
4NKRO_ENABLE = yes
5RGBLIGHT_ENABLE = no
diff --git a/keyboards/kinesis/kint36/kint36.c b/keyboards/kinesis/kint36/kint36.c
new file mode 100644
index 000000000..108c14c7b
--- /dev/null
+++ b/keyboards/kinesis/kint36/kint36.c
@@ -0,0 +1,26 @@
1/* Copyright 2020 QMK
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include "kint36.h"
18
19void matrix_init_kb(void) {
20 matrix_init_user();
21
22// Turn on the Teensy 3.6 Power LED:
23#define LED_POWER C5
24 setPinOutput(LED_POWER);
25 writePinHigh(LED_POWER);
26}
diff --git a/keyboards/kinesis/kint36/kint36.h b/keyboards/kinesis/kint36/kint36.h
new file mode 100644
index 000000000..d427a1c2d
--- /dev/null
+++ b/keyboards/kinesis/kint36/kint36.h
@@ -0,0 +1,92 @@
1/* Copyright 2020 QMK
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#pragma once
18
19#include "quantum.h"
20
21#define ___ KC_NO
22
23// This a shortcut to help you visually see your layout.
24// The first section contains all of the arguments as on the physical keyboard
25// The second converts the arguments into the 2-D scanned array
26
27#define LAYOUT( \
28 kC0, kD0, kE0, kC1, kD1, kE1, kC2, kD2, kE2, \
29 k00, k10, k20, k30, k40, k50, \
30 k01, k11, k21, k31, k41, k51, \
31 k02, k12, k22, k32, k42, k52, \
32 k03, k13, k23, k33, k43, k53, \
33 k14, k24, k34, k54, \
34 k56, k55, \
35 k35, \
36 k36, k46, k25, \
37 \
38 kC3, kD3, kE3, kC4, kD4, kE4, kC5, kE5, kD5, \
39 k60, k70, k80, k90, kA0, kB0, \
40 k61, k71, k81, k91, kA1, kB1, \
41 k62, k72, k82, k92, kA2, kB2, \
42 k63, k73, k83, k93, kA3, kB3, \
43 k64, k84, k94, kA4, \
44 k96, k85, \
45 k86, \
46 k66, k75, k65 \
47) { \
48 { k00, k01, k02, k03, ___, ___, ___ }, \
49 { k10, k11, k12, k13, k14, ___, ___ }, \
50 { k20, k21, k22, k23, k24, k25, ___ }, \
51 { k30, k31, k32, k33, k34, k35, k36 }, \
52 { k40, k41, k42, k43, ___, ___, k46 }, \
53 { k50, k51, k52, k53, k54, k55, k56 }, \
54 { k60, k61, k62, k63, k64, k65, k66 }, \
55 { k70, k71, k72, k73, ___, k75, ___ }, \
56 { k80, k81, k82, k83, k84, k85, k86 }, \
57 { k90, k91, k92, k93, k94, ___, k96 }, \
58 { kA0, kA1, kA2, kA3, kA4, ___, ___ }, \
59 { kB0, kB1, kB2, kB3, ___, ___, ___ }, \
60 { kC0, kC1, kC2, kC3, kC4, kC5, ___ }, \
61 { kD0, kD1, kD2, kD3, kD4, kD5, ___ }, \
62 { kE0, kE1, kE2, kE3, kE4, kE5, ___ }, \
63}
64
65/* ---------------- LEFT HAND ----------------- ---------------- RIGHT HAND ---------------- */
66#define LAYOUT_pretty( \
67 kC0, kD0, kE0, kC1, kD1, kE1, kC2, kD2, kE2, kC3, kD3, kE3, kC4, kD4, kE4, kC5, kE5, kD5, \
68 k00, k10, k20, k30, k40, k50, k60, k70, k80, k90, kA0, kB0, \
69 k01, k11, k21, k31, k41, k51, k61, k71, k81, k91, kA1, kB1, \
70 k02, k12, k22, k32, k42, k52, k62, k72, k82, k92, kA2, kB2, \
71 k03, k13, k23, k33, k43, k53, k63, k73, k83, k93, kA3, kB3, \
72 k14, k24, k34, k54, k64, k84, k94, kA4, \
73 k56, k55, k96, k85, \
74 k35, k86, \
75 k36, k46, k25, k66, k75, k65 \
76) { \
77 { k00, k01, k02, k03, ___, ___, ___ }, \
78 { k10, k11, k12, k13, k14, ___, ___ }, \
79 { k20, k21, k22, k23, k24, k25, ___ }, \
80 { k30, k31, k32, k33, k34, k35, k36 }, \
81 { k40, k41, k42, k43, ___, ___, k46 }, \
82 { k50, k51, k52, k53, k54, k55, k56 }, \
83 { k60, k61, k62, k63, k64, k65, k66 }, \
84 { k70, k71, k72, k73, ___, k75, ___ }, \
85 { k80, k81, k82, k83, k84, k85, k86 }, \
86 { k90, k91, k92, k93, k94, ___, k96 }, \
87 { kA0, kA1, kA2, kA3, kA4, ___, ___ }, \
88 { kB0, kB1, kB2, kB3, ___, ___, ___ }, \
89 { kC0, kC1, kC2, kC3, kC4, kC5, ___ }, \
90 { kD0, kD1, kD2, kD3, kD4, kD5, ___ }, \
91 { kE0, kE1, kE2, kE3, kE4, kE5, ___ } \
92}
diff --git a/keyboards/kinesis/kint36/mcuconf.h b/keyboards/kinesis/kint36/mcuconf.h
new file mode 100644
index 000000000..b0ea44567
--- /dev/null
+++ b/keyboards/kinesis/kint36/mcuconf.h
@@ -0,0 +1,65 @@
1// based on lib/chibios-contrib/demos/KINETIS/RT-TEENSY3_6/mcuconf.h:
2/*
3 ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio
4
5 Licensed under the Apache License, Version 2.0 (the "License");
6 you may not use this file except in compliance with the License.
7 You may obtain a copy of the License at
8
9 http://www.apache.org/licenses/LICENSE-2.0
10
11 Unless required by applicable law or agreed to in writing, software
12 distributed under the License is distributed on an "AS IS" BASIS,
13 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 See the License for the specific language governing permissions and
15 limitations under the License.
16*/
17
18#ifndef _MCUCONF_H_
19#define _MCUCONF_H_
20
21#define MK66FX1M0_MCUCONF
22
23/*
24 * HAL driver system settings.
25 */
26
27/* Select the MCU clocking mode below by enabling the appropriate block. */
28
29/* PEE mode - 180 MHz system clock driving by 16 MHz xtal */
30#define KINETIS_MCG_MODE KINETIS_MCG_MODE_PEE
31//#define KINETIS_PLLCLK_FREQUENCY 180000000UL // 180 MHz (HSRUN)
32#define KINETIS_PLLCLK_FREQUENCY 120000000UL // 120 MHz (RUN)
33#define KINETIS_SYSCLK_FREQUENCY KINETIS_PLLCLK_FREQUENCY
34#define KINETIS_BUSCLK_FREQUENCY 60000000UL
35//#define KINETIS_FLASHCLK_FREQUENCY 28000000UL // 28 MHz (HSRUN)
36#define KINETIS_FLASHCLK_FREQUENCY 24000000UL // 24 MHz (RUN)
37
38#if KINETIS_PLLCLK_FREQUENCY == 180000000UL
39# define KINETIS_CLKDIV1_OUTDIV1 1 // -> 0
40# define KINETIS_CLKDIV1_OUTDIV2 3 // -> 2
41# define KINETIS_CLKDIV1_OUTDIV4 7 // -> 6
42#else
43# define KINETIS_CLKDIV1_OUTDIV1 1 // -> 0
44# define KINETIS_CLKDIV1_OUTDIV2 2 // -> 1
45# define KINETIS_CLKDIV1_OUTDIV4 5 // -> 4
46#endif
47
48/*
49 * SERIAL driver system settings.
50 */
51#define KINETIS_SERIAL_USE_UART4 TRUE
52
53/*
54 * USB driver settings
55 */
56#define KINETIS_USB_USE_USB0 TRUE
57#define KINETIS_USB_USB0_IRQ_PRIORITY 5
58
59/*
60 * I2C driver settings
61 */
62#define KINETIS_I2C_USE_I2C0 TRUE
63#define KINETIS_I2C_I2C0_PRIORITY 4
64
65#endif /* _MCUCONF_H_ */
diff --git a/keyboards/kinesis/kint36/readme.md b/keyboards/kinesis/kint36/readme.md
new file mode 100644
index 000000000..a2bb0c1cf
--- /dev/null
+++ b/keyboards/kinesis/kint36/readme.md
@@ -0,0 +1,3 @@
1# kinesis_kint36 keyboard firmware
2
3Please see https://github.com/kinx-project/kint for details.
diff --git a/keyboards/kinesis/kint36/rules.mk b/keyboards/kinesis/kint36/rules.mk
new file mode 100644
index 000000000..cf58cb913
--- /dev/null
+++ b/keyboards/kinesis/kint36/rules.mk
@@ -0,0 +1,6 @@
1BOARD = PJRC_TEENSY_3_6
2MCU = MK66F18
3
4# Debounce eagerly (report change immediately), keep per-key timers. We can use
5# this because the kinT does not have to deal with noise.
6DEBOUNCE_TYPE = sym_eager_pk
diff --git a/keyboards/kinesis/nguyenvietyen/rules.mk b/keyboards/kinesis/nguyenvietyen/rules.mk
index c2d5f729b..a401973aa 100644
--- a/keyboards/kinesis/nguyenvietyen/rules.mk
+++ b/keyboards/kinesis/nguyenvietyen/rules.mk
@@ -7,7 +7,7 @@ BOOTLOADER = caterina
7# Build Options 7# Build Options
8# change yes to no to disable 8# change yes to no to disable
9# 9#
10BOOTMAGIC_ENABLE = yes 10BOOTMAGIC_ENABLE = full
11MOUSEKEY_ENABLE = yes 11MOUSEKEY_ENABLE = yes
12EXTRAKEY_ENABLE = yes 12EXTRAKEY_ENABLE = yes
13COMMAND_ENABLE = yes 13COMMAND_ENABLE = yes
diff --git a/keyboards/kinesis/rules.mk b/keyboards/kinesis/rules.mk
index cc0691e98..651751fa6 100644
--- a/keyboards/kinesis/rules.mk
+++ b/keyboards/kinesis/rules.mk
@@ -14,7 +14,7 @@ BOOTLOADER = halfkay
14# Build Options 14# Build Options
15# change yes to no to disable 15# change yes to no to disable
16# 16#
17BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration 17BOOTMAGIC_ENABLE = full # Virtual DIP switch configuration
18MOUSEKEY_ENABLE = yes # Mouse keys 18MOUSEKEY_ENABLE = yes # Mouse keys
19EXTRAKEY_ENABLE = yes # Audio control and System control 19EXTRAKEY_ENABLE = yes # Audio control and System control
20CONSOLE_ENABLE = no # Console for debug 20CONSOLE_ENABLE = no # Console for debug
diff --git a/keyboards/kinesis/stapelberg/config.h b/keyboards/kinesis/stapelberg/config.h
index 5037baebd..8f920c19c 100644
--- a/keyboards/kinesis/stapelberg/config.h
+++ b/keyboards/kinesis/stapelberg/config.h
@@ -2,6 +2,7 @@
2#define STAPELBERG_CONFIG_H 2#define STAPELBERG_CONFIG_H
3 3
4#include "../config.h" 4#include "../config.h"
5#include "config_common.h"
5 6
6/* USB Device descriptor parameter */ 7/* USB Device descriptor parameter */
7#define PRODUCT_ID 0x6060 8#define PRODUCT_ID 0x6060