aboutsummaryrefslogtreecommitdiff
path: root/users/drashna/config.h
diff options
context:
space:
mode:
Diffstat (limited to 'users/drashna/config.h')
-rw-r--r--users/drashna/config.h203
1 files changed, 157 insertions, 46 deletions
diff --git a/users/drashna/config.h b/users/drashna/config.h
index 5f7c32ff3..75e1c11c6 100644
--- a/users/drashna/config.h
+++ b/users/drashna/config.h
@@ -17,57 +17,71 @@
17#pragma once 17#pragma once
18 18
19// Use custom magic number so that when switching branches, EEPROM always gets reset 19// Use custom magic number so that when switching branches, EEPROM always gets reset
20#define EECONFIG_MAGIC_NUMBER (uint16_t)0x1339 20#define EECONFIG_MAGIC_NUMBER (uint16_t)0x1339
21 21
22/* Set Polling rate to 1000Hz */ 22/* Set Polling rate to 1000Hz */
23#define USB_POLLING_INTERVAL_MS 1 23#define USB_POLLING_INTERVAL_MS 1
24 24
25#if defined(SPLIT_KEYBOARD) 25#if defined(SPLIT_KEYBOARD)
26// # define SPLIT_TRANSPORT_MIRROR
27# define SPLIT_LAYER_STATE_ENABLE
28# define SPLIT_LED_STATE_ENABLE
26# define SPLIT_MODS_ENABLE 29# define SPLIT_MODS_ENABLE
27# define SPLIT_TRANSPORT_MIRROR 30# ifdef WPM_ENABLE
28# define SERIAL_USE_MULTI_TRANSACTION 31# define SPLIT_WPM_ENABLE
29// # define SPLIT_NUM_TRANSACTIONS_KB 2 32# endif
33# ifdef OLED_DRIVER_ENABLE
34# define SPLIT_OLED_ENABLE
35# endif
36# if defined(__AVR__) && !defined(SELECT_SOFT_SERIAL_SPEED)
37# define SELECT_SOFT_SERIAL_SPEED 1
38# endif
39# ifdef CUSTOM_SPLIT_TRANSPORT_SYNC
40# define SPLIT_TRANSACTION_IDS_USER RPC_ID_USER_STATE_SYNC, RPC_ID_USER_KEYMAP_SYNC, RPC_ID_USER_CONFIG_SYNC
41# endif
30#endif 42#endif
31 43
32#ifdef AUDIO_ENABLE 44#ifdef AUDIO_ENABLE
33
34# define AUDIO_CLICKY 45# define AUDIO_CLICKY
35# define STARTUP_SONG SONG(RICK_ROLL)
36# define GOODBYE_SONG SONG(SONIC_RING)
37# define DEFAULT_LAYER_SONGS \
38 { SONG(QWERTY_SOUND), SONG(COLEMAK_SOUND), SONG(DVORAK_SOUND), SONG(OVERWATCH_THEME) }
39
40# define AUDIO_CLICKY_FREQ_RANDOMNESS 1.5f 46# define AUDIO_CLICKY_FREQ_RANDOMNESS 1.5f
41 47
42# define UNICODE_SONG_MAC SONG(RICK_ROLL) 48# ifdef USER_SONG_LIST
43# define UNICODE_SONG_LNX SONG(RICK_ROLL) 49# define STARTUP_SONG SONG(RICK_ROLL)
44# define UNICODE_SONG_WIN SONG(RICK_ROLL) 50# define GOODBYE_SONG SONG(SONIC_RING)
45# define UNICODE_SONG_BSD SONG(RICK_ROLL) 51# define DEFAULT_LAYER_SONGS \
46# define UNICODE_SONG_WINC SONG(RICK_ROLL) 52 { SONG(QWERTY_SOUND), SONG(COLEMAK_SOUND), SONG(DVORAK_SOUND), SONG(OVERWATCH_THEME) }
53# define UNICODE_SONG_MAC SONG(MARIO_THEME)
54# define UNICODE_SONG_LNX SONG(MARIO_POWERUP)
55# define UNICODE_SONG_WIN SONG(MARIO_ONEUP)
56# define UNICODE_SONG_BSD SONG(RICK_ROLL)
57# define UNICODE_SONG_WINC SONG(RICK_ROLL)
58# else
59# define STARTUP_SONG SONG(STARTUP_SOUND)
60# define GOODBYE_SONG SONG(GOODBYE_SOUND)
61# define DEFAULT_LAYER_SONGS \
62 { SONG(QWERTY_SOUND), SONG(COLEMAK_SOUND), SONG(DVORAK_SOUND), SONG(WORKMAN_SOUND) }
63# define UNICODE_SONG_MAC SONG(QWERTY_SOUND)
64# define UNICODE_SONG_LNX SONG(COLEMAK_SOUND)
65# define UNICODE_SONG_WIN SONG(DVORAK_SOUND)
66# define UNICODE_SONG_BSD SONG(WORKMAN_SOUND)
67# define UNICODE_SONG_WINC SONG(PLOVER_GOODBYE_SOUND)
68# endif
47#endif // !AUDIO_ENABLE 69#endif // !AUDIO_ENABLE
48 70
71#define UNICODE_SELECTED_MODES UC_WIN, UC_MAC
72
49#ifdef RGBLIGHT_ENABLE 73#ifdef RGBLIGHT_ENABLE
50# define RGBLIGHT_SLEEP 74# define RGBLIGHT_SLEEP
51# if defined(__AVR__) && !defined(__AVR_AT90USB1286__) 75# define RGBLIGHT_EFFECT_TWINKLE_LIFE 250
52# undef RGBLIGHT_ANIMATIONS 76# define RGBLIGHT_EFFECT_TWINKLE_PROBABILITY 1 / 24
53# define RGBLIGHT_EFFECT_BREATHING
54# define RGBLIGHT_EFFECT_SNAKE
55# define RGBLIGHT_EFFECT_KNIGHT
56# else
57# define RGBLIGHT_ANIMATIONS
58# endif
59# define RGBLIGHT_EFFECT_TWINKLE_LIFE 250
60# define RGBLIGHT_EFFECT_TWINKLE_PROBABILITY 1/24
61#endif // RGBLIGHT_ENABLE 77#endif // RGBLIGHT_ENABLE
62 78
63#ifdef RGB_MATRIX_ENABLE 79#ifdef RGB_MATRIX_ENABLE
64# define RGB_MATRIX_KEYPRESSES // reacts to keypresses (will slow down matrix scan by a lot) 80# define RGB_MATRIX_KEYPRESSES // reacts to keypresses (will slow down matrix scan by a lot)
65// # define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (not recommened) 81// # define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (not recommened)
66# define RGB_MATRIX_FRAMEBUFFER_EFFECTS 82# define RGB_MATRIX_FRAMEBUFFER_EFFECTS
67// # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects 83// # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects
68# define RGB_DISABLE_WHEN_USB_SUSPENDED true // turn off effects when suspended 84// # define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
69// # define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255
70// # define EECONFIG_RGB_MATRIX (uint32_t *)16
71 85
72# if defined(__AVR__) && !defined(__AVR_AT90USB1286__) && !defined(KEYBOARD_launchpad) 86# if defined(__AVR__) && !defined(__AVR_AT90USB1286__) && !defined(KEYBOARD_launchpad)
73# define DISABLE_RGB_MATRIX_ALPHAS_MODS 87# define DISABLE_RGB_MATRIX_ALPHAS_MODS
@@ -83,8 +97,10 @@
83# define DISABLE_RGB_MATRIX_CYCLE_ALL 97# define DISABLE_RGB_MATRIX_CYCLE_ALL
84# define DISABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT 98# define DISABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
85# define DISABLE_RGB_MATRIX_CYCLE_UP_DOWN 99# define DISABLE_RGB_MATRIX_CYCLE_UP_DOWN
86// # define DISABLE_RGB_MATRIX_CYCLE_OUT_IN 100# if defined(SPLIT_KEYBOARD) || defined(KEYBOARD_ergodox_ez) || defined(KEYBOARD_moonlander)
101# define DISABLE_RGB_MATRIX_CYCLE_OUT_IN
87// # define DISABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL 102// # define DISABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
103# endif
88# define DISABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON 104# define DISABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
89# define DISABLE_RGB_MATRIX_DUAL_BEACON 105# define DISABLE_RGB_MATRIX_DUAL_BEACON
90# define DISABLE_RGB_MATRIX_CYCLE_PINWHEEL 106# define DISABLE_RGB_MATRIX_CYCLE_PINWHEEL
@@ -93,6 +109,12 @@
93# define DISABLE_RGB_MATRIX_RAINBOW_PINWHEELS 109# define DISABLE_RGB_MATRIX_RAINBOW_PINWHEELS
94# define DISABLE_RGB_MATRIX_RAINDROPS 110# define DISABLE_RGB_MATRIX_RAINDROPS
95# define DISABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS 111# define DISABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
112# define DISABLE_RGB_MATRIX_HUE_BREATHING
113# define DISABLE_RGB_MATRIX_HUE_PENDULUM
114# define DISABLE_RGB_MATRIX_HUE_WAVE
115# define DISABLE_RGB_MATRIX_PIXEL_RAIN
116# define DISABLE_RGB_MATRIX_PIXEL_FLOW
117# define DISABLE_RGB_MATRIX_PIXEL_FRACTAL
96// # define DISABLE_RGB_MATRIX_TYPING_HEATMAP 118// # define DISABLE_RGB_MATRIX_TYPING_HEATMAP
97# define DISABLE_RGB_MATRIX_DIGITAL_RAIN 119# define DISABLE_RGB_MATRIX_DIGITAL_RAIN
98# define DISABLE_RGB_MATRIX_SOLID_REACTIVE 120# define DISABLE_RGB_MATRIX_SOLID_REACTIVE
@@ -108,9 +130,17 @@
108# define DISABLE_RGB_MATRIX_SOLID_SPLASH 130# define DISABLE_RGB_MATRIX_SOLID_SPLASH
109# define DISABLE_RGB_MATRIX_SOLID_MULTISPLASH 131# define DISABLE_RGB_MATRIX_SOLID_MULTISPLASH
110# endif // AVR 132# endif // AVR
111#endif // RGB_MATRIX_ENABLE 133# ifndef RGB_MATRIX_REST_MODE
134# if defined(SPLIT_KEYBOARD) || defined(KEYBOARD_ergodox_ez) || defined(KEYBOARD_moonlander)
135# define RGB_MATRIX_REST_MODE RGB_MATRIX_CYCLE_OUT_IN_DUAL
136# else
137# define RGB_MATRIX_REST_MODE RGB_MATRIX_CYCLE_OUT_IN
138# endif
139# endif
140# define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_REST_MODE
141#endif // RGB_MATRIX_ENABLE
112 142
113#ifdef OLED_DRIVER_ENABLE 143#ifdef OLED_ENABLE
114# ifdef SPLIT_KEYBOARD 144# ifdef SPLIT_KEYBOARD
115# define OLED_UPDATE_INTERVAL 60 145# define OLED_UPDATE_INTERVAL 60
116# else 146# else
@@ -120,7 +150,7 @@
120# ifdef OLED_FONT_H 150# ifdef OLED_FONT_H
121# undef OLED_FONT_H 151# undef OLED_FONT_H
122# endif 152# endif
123# define OLED_FONT_H "drashna_font.h" 153# define OLED_FONT_H "drashna_font.h"
124# define OLED_FONT_END 255 154# define OLED_FONT_END 255
125// # define OLED_FONT_5X5 155// # define OLED_FONT_5X5
126// # define OLED_FONT_AZTECH 156// # define OLED_FONT_AZTECH
@@ -143,8 +173,8 @@
143 173
144#ifdef QMK_KEYS_PER_SCAN 174#ifdef QMK_KEYS_PER_SCAN
145# undef QMK_KEYS_PER_SCAN 175# undef QMK_KEYS_PER_SCAN
146# define QMK_KEYS_PER_SCAN 2 176#endif
147#endif // !QMK_KEYS_PER_SCAN 177#define QMK_KEYS_PER_SCAN 4
148 178
149// this makes it possible to do rolling combos (zx) with keys that 179// this makes it possible to do rolling combos (zx) with keys that
150// convert to other keys on hold (z becomes ctrl when you hold it, 180// convert to other keys on hold (z becomes ctrl when you hold it,
@@ -152,14 +182,12 @@
152// actually sends Ctrl-x. That's bad.) 182// actually sends Ctrl-x. That's bad.)
153#define IGNORE_MOD_TAP_INTERRUPT 183#define IGNORE_MOD_TAP_INTERRUPT
154#undef PERMISSIVE_HOLD 184#undef PERMISSIVE_HOLD
155//#define TAPPING_FORCE_HOLD 185//#define TAPPING_FORCE_HOLD_PER_KEY
156//#define RETRO_TAPPING 186//#define RETRO_TAPPING_PER_KEY
157#ifndef KEYBOARD_kyria_rev1 187#if !defined(KEYBOARD_kyria) && !defined(KEYBOARD_splitkb_kyria)
158# define TAPPING_TERM_PER_KEY 188# define TAPPING_TERM_PER_KEY
159#endif 189#endif
160 190
161#define FORCE_NKRO
162
163#ifndef TAPPING_TOGGLE 191#ifndef TAPPING_TOGGLE
164# define TAPPING_TOGGLE 1 192# define TAPPING_TOGGLE 1
165#endif 193#endif
@@ -185,14 +213,21 @@
185# undef LOCKING_RESYNC_ENABLE 213# undef LOCKING_RESYNC_ENABLE
186#endif 214#endif
187 215
216#if !defined(LAYER_STATE_16BIT) && !defined(LAYER_STATE_8BIT) && !defined(LAYER_STATE_32BIT)
217# define LAYER_STATE_16BIT
218#endif
219#ifndef DYNAMIC_KEYMAP_LAYER_COUNT
220# define DYNAMIC_KEYMAP_LAYER_COUNT 11
221#endif
222
188#ifdef CONVERT_TO_PROTON_C 223#ifdef CONVERT_TO_PROTON_C
189// pins that are available but not present on Pro Micro 224// pins that are available but not present on Pro Micro
190# define A3 PAL_LINE(GPIOA, 3) 225# define A3 PAL_LINE(GPIOA, 3)
191# define A4 PAL_LINE(GPIOA, 4) 226# define A4 PAL_LINE(GPIOA, 4)
192# define A5 PAL_LINE(GPIOA, 5) 227# define A5 PAL_LINE(GPIOA, 5)
193# define A6 PAL_LINE(GPIOA, 6) 228# define A6 PAL_LINE(GPIOA, 6)
194# define A7 PAL_LINE(GPIOA, 7) 229# define A7 PAL_LINE(GPIOA, 7)
195# define A8 PAL_LINE(GPIOA, 8) 230# define A8 PAL_LINE(GPIOA, 8)
196# define A13 PAL_LINE(GPIOA, 13) 231# define A13 PAL_LINE(GPIOA, 13)
197# define A14 PAL_LINE(GPIOA, 14) 232# define A14 PAL_LINE(GPIOA, 14)
198# define A15 PAL_LINE(GPIOA, 15) 233# define A15 PAL_LINE(GPIOA, 15)
@@ -203,3 +238,79 @@
203# define C14 PAL_LINE(GPIOC, 14) 238# define C14 PAL_LINE(GPIOC, 14)
204# define C15 PAL_LINE(GPIOC, 15) 239# define C15 PAL_LINE(GPIOC, 15)
205#endif 240#endif
241
242#ifdef MOUSEKEY_ENABLE
243// mouse movement config
244# ifdef MK_3_SPEED
245# undef MK_3_SPEED
246# endif
247# define MK_KINETIC_SPEED
248# ifdef MK_KINETIC_SPEED
249# ifndef MOUSEKEY_DELAY
250# define MOUSEKEY_DELAY 8
251# endif
252# ifndef MOUSEKEY_INTERVAL
253# define MOUSEKEY_INTERVAL 20
254# endif
255# ifdef MOUSEKEY_MOVE_DELTA
256# define MOUSEKEY_MOVE_DELTA 25
257# endif
258# else
259# ifndef MOUSEKEY_DELAY
260# define MOUSEKEY_DELAY 300
261# endif
262# ifndef MOUSEKEY_INTERVAL
263# define MOUSEKEY_INTERVAL 50
264# endif
265# ifndef MOUSEKEY_MOVE_DELTA
266# define MOUSEKEY_MOVE_DELTA 5
267# endif
268# endif
269# ifndef MOUSEKEY_MAX_SPEED
270# define MOUSEKEY_MAX_SPEED 7
271# endif
272# ifndef MOUSEKEY_TIME_TO_MAX
273# define MOUSEKEY_TIME_TO_MAX 60
274# endif
275# ifndef MOUSEKEY_INITIAL_SPEED
276# define MOUSEKEY_INITIAL_SPEED 100
277# endif
278# ifndef MOUSEKEY_BASE_SPEED
279# define MOUSEKEY_BASE_SPEED 1000
280# endif
281# ifndef MOUSEKEY_DECELERATED_SPEED
282# define MOUSEKEY_DECELERATED_SPEED 400
283# endif
284# ifndef MOUSEKEY_ACCELERATED_SPEED
285# define MOUSEKEY_ACCELERATED_SPEED 3000
286# endif
287// mouse scroll config
288# ifndef MOUSEKEY_WHEEL_DELAY
289# define MOUSEKEY_WHEEL_DELAY 15
290# endif
291# ifndef MOUSEKEY_WHEEL_DELTA
292# define MOUSEKEY_WHEEL_DELTA 1
293# endif
294# ifndef MOUSEKEY_WHEEL_INTERVAL
295# define MOUSEKEY_WHEEL_INTERVAL 50
296# endif
297# ifndef MOUSEKEY_WHEEL_MAX_SPEED
298# define MOUSEKEY_WHEEL_MAX_SPEED 8
299# endif
300# ifndef MOUSEKEY_WHEEL_TIME_TO_MAX
301# define MOUSEKEY_WHEEL_TIME_TO_MAX 80
302# endif
303// mouse scroll kinetic config
304# ifndef MOUSEKEY_WHEEL_INITIAL_MOVEMENTS
305# define MOUSEKEY_WHEEL_INITIAL_MOVEMENTS 8
306# endif
307# ifndef MOUSEKEY_WHEEL_BASE_MOVEMENTS
308# define MOUSEKEY_WHEEL_BASE_MOVEMENTS 48
309# endif
310# ifndef MOUSEKEY_WHEEL_ACCELERATED_MOVEMENTS
311# define MOUSEKEY_WHEEL_ACCELERATED_MOVEMENTS 48
312# endif
313# ifndef MOUSEKEY_WHEEL_DECELERATED_MOVEMENTS
314# define MOUSEKEY_WHEEL_DECELERATED_MOVEMENTS 8
315# endif
316#endif // MOUSEKEY_ENABLE