aboutsummaryrefslogtreecommitdiff
path: root/keyboards/kinesis/kint36
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/kinesis/kint36')
-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
11 files changed, 724 insertions, 0 deletions
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..20b135268
--- /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_is(_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