[Keyboard] Move Nyquist/Iris rules.mk files, update READMEs (#7196)
[jackhill/qmk/firmware.git] / keyboards / ergodone / config.h
CommitLineData
52f4a38c
YH
1#ifndef ERGODOX_ERGODONE_CONFIG_H
2#define ERGODOX_ERGODONE_CONFIG_H
3
52f4a38c
YH
4#include "config_common.h"
5
6/* USB Device descriptor parameter */
57bf00f2 7#define VENDOR_ID 0xFEED // You may want to use 0x47EC for "KTEC", which doesn't seem to be in official use as of October 2017.
8#define PRODUCT_ID 0xE60D // For "EGOD"/"ErgoDone".
9// The official ErgoDone VID and PID are documented at http://pid.codes/1209/2328/.
52f4a38c 10#define DEVICE_VER 0x0001
57bf00f2 11#define MANUFACTURER K.T.E.C.
52f4a38c
YH
12#define PRODUCT ErgoDone
13#define DESCRIPTION QMK keyboard firmware for ErgoDone
14
15/* key matrix size */
16#define MATRIX_ROWS 6
17#define MATRIX_COLS 14
18
d2ff66a9
JH
19#define MOUSEKEY_INTERVAL 20
20#define MOUSEKEY_DELAY 0
21#define MOUSEKEY_TIME_TO_MAX 60
22#define MOUSEKEY_MAX_SPEED 7
23#define MOUSEKEY_WHEEL_DELAY 0
24
25#define TAPPING_TOGGLE 1
26
27/* define if matrix has ghost */
28//#define MATRIX_HAS_GHOST
29
30#define TAPPING_TERM 200
31#define IGNORE_MOD_TAP_INTERRUPT // this makes it possible to do rolling combos (zx) with keys that convert to other keys on hold (z becomes ctrl when you hold it, and when this option isn't enabled, z rapidly followed by x actually sends Ctrl-x. That's bad.)
32
33/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
34#define LOCKING_SUPPORT_ENABLE
35/* Locking resynchronize hack */
36#define LOCKING_RESYNC_ENABLE
37
38/* key combination for command */
39#define IS_COMMAND() ( \
4d9b11af
40 get_mods() == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \
41 get_mods() == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \
d2ff66a9
JH
42)
43
cb74c8dc
YH
44/* number of backlight levels */
45#define BACKLIGHT_LEVELS 3
46
47#define LED_BRIGHTNESS_LO 15
48#define LED_BRIGHTNESS_HI 255
49
52f4a38c
YH
50/* fix space cadet rollover issue */
51#define DISABLE_SPACE_CADET_ROLLOVER
52
53/* Set 0 if debouncing isn't needed */
54#define DEBOUNCE 5
55
52f4a38c
YH
56#define USB_MAX_POWER_CONSUMPTION 500
57
57bf00f2 58/* NKRO */
59#ifndef FORCE_NKRO
60 #define FORCE_NKRO // Depends on NKRO_ENABLE.
61#endif
62
52f4a38c
YH
63/*
64 * Feature disable options
65 * These options are also useful to firmware size reduction.
66 */
67
68/* disable debug print */
69// #define NO_DEBUG
70
71/* disable print */
72// #define NO_PRINT
73
74/* disable action features */
75//#define NO_ACTION_LAYER
76//#define NO_ACTION_TAPPING
77//#define NO_ACTION_ONESHOT
78//#define NO_ACTION_MACRO
79//#define NO_ACTION_FUNCTION
80//#define DEBUG_MATRIX_SCAN_RATE
81
82#endif