aboutsummaryrefslogtreecommitdiff
path: root/keyboards/basekeys/trifecta/config.h
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/basekeys/trifecta/config.h')
-rw-r--r--keyboards/basekeys/trifecta/config.h144
1 files changed, 144 insertions, 0 deletions
diff --git a/keyboards/basekeys/trifecta/config.h b/keyboards/basekeys/trifecta/config.h
new file mode 100644
index 000000000..ffdf6d2d2
--- /dev/null
+++ b/keyboards/basekeys/trifecta/config.h
@@ -0,0 +1,144 @@
1/* Copyright 2020 Swiftrax and Basekeys.com
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 "config_common.h"
20
21/* USB Device descriptor parameter */
22#define VENDOR_ID 0x04D8
23#define PRODUCT_ID 0xEAF3
24#define DEVICE_VER 0x0001
25#define MANUFACTURER Swiftrax
26#define PRODUCT Trifecta
27
28/* key matrix size */
29#define MATRIX_ROWS 10
30#define MATRIX_COLS 8
31
32/* key matrix pins */
33
34#define MATRIX_ROW_PINS { B0, B7, F7, B1, B6, C6, C7, B5, F6, D2 }
35#define MATRIX_COL_PINS { F0, F1, F4, F5, D1, B2, D0, B3 }
36
37
38#define ENCODERS_PAD_A { D4, D6, D7 }
39#define ENCODERS_PAD_B { B4, D3, D5 }
40
41/* COL2ROW, ROW2COL*/
42#define DIODE_DIRECTION COL2ROW
43
44
45#define RGB_DI_PIN E6
46#define DRIVER_LED_TOTAL 80
47
48/* RGB LED */
49#ifdef RGBLIGHT_ENABLE
50#define RGB_DI_PIN E6
51#define RGBLED_NUM 80 // Number of LEDs. backlight x69
52#define RGBLIGHT_HUE_STEP 10
53#define RGBLIGHT_SAT_STEP 17
54#define RGBLIGHT_VAL_STEP 17
55#define RGBLIGHT_ANIMATIONS
56#endif
57/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
58#define DEBOUNCE 5
59
60/* Limits the brightness of the LEDS range of 255-0 (255 is default)*/
61#define RGBLIGHT_LIMIT_VAL 128
62
63/* define if matrix has ghost (lacks anti-ghosting diodes) */
64//#define MATRIX_HAS_GHOST
65
66/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
67#define LOCKING_SUPPORT_ENABLE
68
69/* Locking resynchronize hack */
70#define LOCKING_RESYNC_ENABLE
71
72/* EEPROM for via */
73#define DYNAMIC_KEYMAP_LAYER_COUNT 3
74
75/* bootmagic row col assignment */
76#define BOOTMAGIC_LITE_ROW 1
77#define BOOTMAGIC_LITE_COLUMN 0
78
79#ifdef RGB_MATRIX_ENABLE
80# define RGB_MATRIX_KEYPRESSES // reacts to keypresses
81// # define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses)
82// # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects
83//# define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
84# define RGB_MATRIX_FRAMEBUFFER_EFFECTS
85# define RGB_MATRIX_LED_PROCESS_LIMIT (DRIVER_LED_TOTAL + 4) / 5 // limits the number of LEDs to process in an animation per task run (increases keyboard responsiveness)
86# define RGB_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness)
87# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 // limits maximum brightness of LEDs to 150 out of 255. Higher may cause the controller to crash.
88# define RGB_MATRIX_HUE_STEP 8
89# define RGB_MATRIX_SAT_STEP 8
90# define RGB_MATRIX_VAL_STEP 8
91# define RGB_MATRIX_SPD_STEP 10
92
93/* Disable the animations you don't want/need. You will need to disable a good number of these *
94 * because they take up a lot of space. Disable until you can successfully compile your firmware. */
95// RGB Matrix Animation modes. Explicitly enabled
96// For full list of effects, see:
97// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
98# define ENABLE_RGB_MATRIX_ALPHAS_MODS
99# define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
100# define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
101# define ENABLE_RGB_MATRIX_BREATHING
102# define ENABLE_RGB_MATRIX_BAND_SAT
103# define ENABLE_RGB_MATRIX_BAND_VAL
104# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
105# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
106# define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
107# define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
108# define ENABLE_RGB_MATRIX_CYCLE_ALL
109# define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
110# define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
111# define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
112# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
113# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
114# define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
115# define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
116# define ENABLE_RGB_MATRIX_DUAL_BEACON
117# define ENABLE_RGB_MATRIX_RAINBOW_BEACON
118# define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
119# define ENABLE_RGB_MATRIX_RAINDROPS
120# define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
121# define ENABLE_RGB_MATRIX_HUE_BREATHING
122# define ENABLE_RGB_MATRIX_HUE_PENDULUM
123# define ENABLE_RGB_MATRIX_HUE_WAVE
124# define ENABLE_RGB_MATRIX_PIXEL_RAIN
125# define ENABLE_RGB_MATRIX_PIXEL_FLOW
126# define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
127// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined
128# define ENABLE_RGB_MATRIX_TYPING_HEATMAP
129# define ENABLE_RGB_MATRIX_DIGITAL_RAIN
130// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined
131# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
132# define ENABLE_RGB_MATRIX_SOLID_REACTIVE
133# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
134# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
135# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
136# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
137# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
138# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
139# define ENABLE_RGB_MATRIX_SPLASH
140# define ENABLE_RGB_MATRIX_MULTISPLASH
141# define ENABLE_RGB_MATRIX_SOLID_SPLASH
142# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
143
144#endif