2020-10-17 20:46:57 +02:00
|
|
|
/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
|
|
|
|
*
|
|
|
|
* This program is free software: you can redistribute it and/or modify
|
|
|
|
* it under the terms of the GNU General Public License as published by
|
|
|
|
* the Free Software Foundation, either version 2 of the License, or
|
|
|
|
* (at your option) any later version.
|
|
|
|
*
|
|
|
|
* This program is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
* GNU General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU General Public License
|
|
|
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
*/
|
|
|
|
|
2018-07-17 03:04:32 +02:00
|
|
|
#pragma once
|
2018-03-25 22:01:15 +02:00
|
|
|
|
2019-09-07 17:57:30 +02:00
|
|
|
// Use custom magic number so that when switching branches, EEPROM always gets reset
|
2020-06-15 12:41:28 +02:00
|
|
|
#define EECONFIG_MAGIC_NUMBER (uint16_t)0x1339
|
2019-09-07 17:57:30 +02:00
|
|
|
|
|
|
|
/* Set Polling rate to 1000Hz */
|
|
|
|
#define USB_POLLING_INTERVAL_MS 1
|
|
|
|
|
2021-01-22 17:23:03 +01:00
|
|
|
#if defined(SPLIT_KEYBOAD)
|
|
|
|
# define SPLIT_MODS_ENABLE
|
|
|
|
#endif
|
|
|
|
|
2018-03-25 22:01:15 +02:00
|
|
|
#ifdef AUDIO_ENABLE
|
2019-07-23 05:22:33 +02:00
|
|
|
|
|
|
|
# define AUDIO_CLICKY
|
|
|
|
# define STARTUP_SONG SONG(RICK_ROLL)
|
|
|
|
# define GOODBYE_SONG SONG(SONIC_RING)
|
|
|
|
# define DEFAULT_LAYER_SONGS \
|
|
|
|
{ SONG(QWERTY_SOUND), SONG(COLEMAK_SOUND), SONG(DVORAK_SOUND), SONG(OVERWATCH_THEME) }
|
|
|
|
|
|
|
|
# define AUDIO_CLICKY_FREQ_RANDOMNESS 1.5f
|
|
|
|
|
2020-03-31 18:28:43 +02:00
|
|
|
# define UNICODE_SONG_MAC SONG(RICK_ROLL)
|
2019-07-23 05:22:33 +02:00
|
|
|
# define UNICODE_SONG_LNX SONG(RICK_ROLL)
|
|
|
|
# define UNICODE_SONG_WIN SONG(RICK_ROLL)
|
|
|
|
# define UNICODE_SONG_BSD SONG(RICK_ROLL)
|
|
|
|
# define UNICODE_SONG_WINC SONG(RICK_ROLL)
|
|
|
|
#endif // !AUDIO_ENABLE
|
2018-03-25 22:01:15 +02:00
|
|
|
|
|
|
|
#ifdef RGBLIGHT_ENABLE
|
2021-01-22 17:23:03 +01:00
|
|
|
# define RGBLIGHT_SLEEP
|
2019-11-20 21:37:24 +01:00
|
|
|
# if defined(__AVR__) && !defined(__AVR_AT90USB1286__)
|
2021-01-22 17:23:03 +01:00
|
|
|
# undef RGBLIGHT_ANIMATIONS
|
2019-11-20 21:37:24 +01:00
|
|
|
# define RGBLIGHT_EFFECT_BREATHING
|
|
|
|
# define RGBLIGHT_EFFECT_SNAKE
|
|
|
|
# define RGBLIGHT_EFFECT_KNIGHT
|
|
|
|
# else
|
|
|
|
# define RGBLIGHT_ANIMATIONS
|
|
|
|
# endif
|
2019-07-23 05:22:33 +02:00
|
|
|
#endif // RGBLIGHT_ENABLE
|
|
|
|
|
|
|
|
#ifdef RGB_MATRIX_ENABLE
|
|
|
|
# define RGB_MATRIX_KEYPRESSES // reacts to keypresses (will slow down matrix scan by a lot)
|
|
|
|
// # define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (not recommened)
|
|
|
|
# define RGB_MATRIX_FRAMEBUFFER_EFFECTS
|
|
|
|
// # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects
|
|
|
|
# define RGB_DISABLE_WHEN_USB_SUSPENDED true // turn off effects when suspended
|
|
|
|
// # 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
|
|
|
|
// # define EECONFIG_RGB_MATRIX (uint32_t *)16
|
|
|
|
|
2020-10-17 20:46:57 +02:00
|
|
|
# if defined(__AVR__) && !defined(__AVR_AT90USB1286__) && !defined(KEYBOARD_launchpad)
|
2019-07-23 05:22:33 +02:00
|
|
|
# define DISABLE_RGB_MATRIX_ALPHAS_MODS
|
|
|
|
# define DISABLE_RGB_MATRIX_GRADIENT_UP_DOWN
|
2020-04-01 01:26:43 +02:00
|
|
|
# define DISABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
|
2019-07-23 05:22:33 +02:00
|
|
|
# define DISABLE_RGB_MATRIX_BREATHING
|
|
|
|
# define DISABLE_RGB_MATRIX_BAND_SAT
|
|
|
|
# define DISABLE_RGB_MATRIX_BAND_VAL
|
|
|
|
# define DISABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
|
|
|
|
# define DISABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
|
|
|
|
# define DISABLE_RGB_MATRIX_BAND_SPIRAL_SAT
|
|
|
|
# define DISABLE_RGB_MATRIX_BAND_SPIRAL_VAL
|
|
|
|
# define DISABLE_RGB_MATRIX_CYCLE_ALL
|
|
|
|
# define DISABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
|
|
|
|
# define DISABLE_RGB_MATRIX_CYCLE_UP_DOWN
|
2020-10-17 20:46:57 +02:00
|
|
|
// # define DISABLE_RGB_MATRIX_CYCLE_OUT_IN
|
2019-07-23 05:22:33 +02:00
|
|
|
// # define DISABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
|
|
|
|
# define DISABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
|
|
|
|
# define DISABLE_RGB_MATRIX_DUAL_BEACON
|
|
|
|
# define DISABLE_RGB_MATRIX_CYCLE_PINWHEEL
|
|
|
|
# define DISABLE_RGB_MATRIX_CYCLE_SPIRAL
|
|
|
|
# define DISABLE_RGB_MATRIX_RAINBOW_BEACON
|
|
|
|
# define DISABLE_RGB_MATRIX_RAINBOW_PINWHEELS
|
|
|
|
# define DISABLE_RGB_MATRIX_RAINDROPS
|
|
|
|
# define DISABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
|
|
|
|
// # define DISABLE_RGB_MATRIX_TYPING_HEATMAP
|
|
|
|
# define DISABLE_RGB_MATRIX_DIGITAL_RAIN
|
|
|
|
# define DISABLE_RGB_MATRIX_SOLID_REACTIVE
|
|
|
|
# define DISABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
|
|
|
|
# define DISABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
|
|
|
|
# define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
|
|
|
|
# define DISABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
|
|
|
|
# define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
|
|
|
|
# define DISABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
|
|
|
|
# define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
|
|
|
|
# define DISABLE_RGB_MATRIX_SPLASH
|
|
|
|
# define DISABLE_RGB_MATRIX_MULTISPLASH
|
|
|
|
# define DISABLE_RGB_MATRIX_SOLID_SPLASH
|
|
|
|
# define DISABLE_RGB_MATRIX_SOLID_MULTISPLASH
|
|
|
|
# endif // AVR
|
|
|
|
#endif // RGB_MATRIX_ENABLE
|
2018-03-25 22:01:15 +02:00
|
|
|
|
2021-01-22 17:23:03 +01:00
|
|
|
#ifdef OLED_DRIVER_ENABLE
|
|
|
|
# ifdef SPLIT_KEYBOARD
|
|
|
|
# define OLED_UPDATE_INTERVAL 60
|
|
|
|
# else
|
|
|
|
# define OLED_UPDATE_INTERVAL 15
|
|
|
|
# endif
|
|
|
|
#endif
|
|
|
|
|
2018-03-25 22:01:15 +02:00
|
|
|
#ifndef ONESHOT_TAP_TOGGLE
|
2019-07-23 05:22:33 +02:00
|
|
|
# define ONESHOT_TAP_TOGGLE 2
|
|
|
|
#endif // !ONESHOT_TAP_TOGGLE
|
2018-03-25 22:01:15 +02:00
|
|
|
|
|
|
|
#ifndef ONESHOT_TIMEOUT
|
2019-07-23 05:22:33 +02:00
|
|
|
# define ONESHOT_TIMEOUT 3000
|
|
|
|
#endif // !ONESHOT_TIMEOUT
|
2018-03-25 22:01:15 +02:00
|
|
|
|
2020-06-15 12:41:28 +02:00
|
|
|
#ifdef QMK_KEYS_PER_SCAN
|
|
|
|
# undef QMK_KEYS_PER_SCAN
|
2020-10-17 20:46:57 +02:00
|
|
|
# define QMK_KEYS_PER_SCAN 2
|
2019-07-23 05:22:33 +02:00
|
|
|
#endif // !QMK_KEYS_PER_SCAN
|
2018-03-25 22:01:15 +02:00
|
|
|
|
|
|
|
// 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.)
|
|
|
|
#define IGNORE_MOD_TAP_INTERRUPT
|
2019-02-17 03:28:04 +01:00
|
|
|
#undef PERMISSIVE_HOLD
|
2018-11-06 06:36:26 +01:00
|
|
|
//#define TAPPING_FORCE_HOLD
|
2018-05-16 04:34:34 +02:00
|
|
|
//#define RETRO_TAPPING
|
2020-10-17 20:46:57 +02:00
|
|
|
#define TAPPING_TERM_PER_KEY
|
2018-03-25 22:01:15 +02:00
|
|
|
|
2018-04-01 04:38:06 +02:00
|
|
|
#define FORCE_NKRO
|
|
|
|
|
2018-03-25 22:01:15 +02:00
|
|
|
#ifndef TAPPING_TOGGLE
|
2019-07-23 05:22:33 +02:00
|
|
|
# define TAPPING_TOGGLE 1
|
2018-03-25 22:01:15 +02:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef TAPPING_TERM
|
2019-07-23 05:22:33 +02:00
|
|
|
# undef TAPPING_TERM
|
|
|
|
#endif // TAPPING_TERM
|
2018-11-27 01:45:24 +01:00
|
|
|
#if defined(KEYBOARD_ergodox_ez)
|
2019-07-23 05:22:33 +02:00
|
|
|
# define TAPPING_TERM 185
|
2018-11-27 01:45:24 +01:00
|
|
|
#elif defined(KEYBOARD_crkbd)
|
2019-07-23 05:22:33 +02:00
|
|
|
# define TAPPING_TERM 200
|
2018-10-02 03:00:14 +02:00
|
|
|
#else
|
2019-07-23 05:22:33 +02:00
|
|
|
# define TAPPING_TERM 175
|
2018-10-02 03:00:14 +02:00
|
|
|
#endif
|
2018-03-25 22:01:15 +02:00
|
|
|
|
2019-04-22 20:55:55 +02:00
|
|
|
#define TAP_CODE_DELAY 5
|
2019-05-07 07:34:09 +02:00
|
|
|
|
|
|
|
/* Disable unused and unneeded features to reduce on firmware size */
|
|
|
|
#ifdef LOCKING_SUPPORT_ENABLE
|
2019-07-23 05:22:33 +02:00
|
|
|
# undef LOCKING_SUPPORT_ENABLE
|
2019-05-07 07:34:09 +02:00
|
|
|
#endif
|
|
|
|
#ifdef LOCKING_RESYNC_ENABLE
|
2019-07-23 05:22:33 +02:00
|
|
|
# undef LOCKING_RESYNC_ENABLE
|
2019-05-07 07:34:09 +02:00
|
|
|
#endif
|