]> git.donarmstrong.com Git - tmk_firmware.git/blob - keyboard/ergodox/config.h
Decreasing default TAPPING_TERM
[tmk_firmware.git] / keyboard / ergodox / config.h
1 /*
2 Copyright 2013 Oleg Kostyuk <cub.uanic@gmail.com>
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 This work is heavily based on initial firmware for Ergodox keyboard.
19 Copyright (c) 2012, 2013 Ben Blazak <benblazak.dev@gmail.com>
20 Released under The MIT License (see "doc/licenses/MIT.md")
21 Project located at <https://github.com/benblazak/ergodox-firmware>
22 */
23
24 #ifndef CONFIG_H
25 #define CONFIG_H
26
27
28 /* USB Device descriptor parameter */
29 #define VENDOR_ID       0xFEED
30 #define PRODUCT_ID      0x1111
31 #define DEVICE_VER      0x0001
32 #define MANUFACTURER    TMK/Cub
33 #define PRODUCT         Ergodox
34 #define DESCRIPTION     t.m.k. keyboard firmware for Ergodox
35
36 #define MATRIX_ROWS 14
37 #define MATRIX_COLS 6
38
39 /* define if matrix has ghost */
40 //#define MATRIX_HAS_GHOST
41
42 /* Set 0 if debouncing isn't needed */
43 /*
44  * This constant define not debouncing time in msecs, but amount of matrix
45  * scan loops which should be made to get stable debounced results.
46  *
47  * On Ergodox matrix scan rate is relatively low, because of slow I2C.
48  * Now it's only 317 scans/second, or about 3.15 msec/scan.
49  * According to Cherry specs, debouncing time is 5 msec.
50  *
51  * And so, there is no sense to have DEBOUNCE higher than 2.
52  */
53 #define DEBOUNCE        2
54 #define TAPPING_TERM    180
55
56 /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
57 #define LOCKING_SUPPORT_ENABLE
58 /* Locking resynchronize hack */
59 #define LOCKING_RESYNC_ENABLE
60
61 /* key combination for command */
62 #define IS_COMMAND() ( \
63     keyboard_report->mods == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \
64 )
65
66
67
68 /*
69  * Feature disable options
70  *  These options are also useful to firmware size reduction.
71  */
72
73 /* disable debug print */
74 //#define NO_DEBUG
75
76 /* disable print */
77 //#define NO_PRINT
78
79 /* disable action features */
80 //#define NO_ACTION_LAYER
81 //#define NO_ACTION_TAPPING
82 //#define NO_ACTION_ONESHOT
83 //#define NO_ACTION_MACRO
84 //#define NO_ACTION_FUNCTION
85 //#define DEBUG_MATRIX_FREQ
86
87 #endif