aboutsummaryrefslogtreecommitdiff
path: root/keyboards/boardsource/technik_o/config.h
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/boardsource/technik_o/config.h')
-rw-r--r--keyboards/boardsource/technik_o/config.h169
1 files changed, 169 insertions, 0 deletions
diff --git a/keyboards/boardsource/technik_o/config.h b/keyboards/boardsource/technik_o/config.h
new file mode 100644
index 000000000..51c9529da
--- /dev/null
+++ b/keyboards/boardsource/technik_o/config.h
@@ -0,0 +1,169 @@
1/*
2Copyright 2020 Boardsource
3
4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by
6the Free Software Foundation, either version 2 of the License, or
7(at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13
14You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/
17
18#pragma once
19
20#include "config_common.h"
21
22/* USB Device descriptor parameter */
23#define VENDOR_ID 0x4273
24#define PRODUCT_ID 0x0079
25#define DEVICE_VER 0x0001
26#define MANUFACTURER Boardsource
27#define PRODUCT Technik-O
28
29/* key matrix size */
30#define MATRIX_ROWS 4
31#define MATRIX_COLS 12
32
33/*
34 * Keyboard Matrix Assignments
35 *
36 * Change this to how you wired your keyboard
37 * COLS: AVR pins used for columns, left to right
38 * ROWS: AVR pins used for rows, top to bottom
39 * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
40 * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
41 *
42 */
43#define MATRIX_ROW_PINS {B0, B1, B2, B3}
44#define MATRIX_COL_PINS {B5, B6, B7, F5, C7, D0, D1, D2, D3, D4, D5, D6}
45#define UNUSED_PINS
46
47/* COL2ROW, ROW2COL */
48#define DIODE_DIRECTION COL2ROW
49
50//#define BACKLIGHT_PIN B7
51//#define BACKLIGHT_LEVELS 3
52#define BACKLIGHT_BREATHING
53#define RGBLIGHT_ANIMATIONS
54#define RGB_DI_PIN C6
55#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 120
56// RGB Matrix Animation modes. Explicitly enabled
57// For full list of effects, see:
58// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
59#define ENABLE_RGB_MATRIX_ALPHAS_MODS
60#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
61#define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
62#define ENABLE_RGB_MATRIX_BREATHING
63#define ENABLE_RGB_MATRIX_BAND_SAT
64#define ENABLE_RGB_MATRIX_BAND_VAL
65#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
66#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
67#define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
68#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
69#define ENABLE_RGB_MATRIX_CYCLE_ALL
70#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
71#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
72#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
73#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
74#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
75#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
76#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
77#define ENABLE_RGB_MATRIX_DUAL_BEACON
78#define ENABLE_RGB_MATRIX_RAINBOW_BEACON
79#define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
80#define ENABLE_RGB_MATRIX_RAINDROPS
81#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
82#define ENABLE_RGB_MATRIX_HUE_BREATHING
83#define ENABLE_RGB_MATRIX_HUE_PENDULUM
84#define ENABLE_RGB_MATRIX_HUE_WAVE
85#define ENABLE_RGB_MATRIX_PIXEL_RAIN
86#define ENABLE_RGB_MATRIX_PIXEL_FLOW
87#define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
88// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined
89#define ENABLE_RGB_MATRIX_TYPING_HEATMAP
90#define ENABLE_RGB_MATRIX_DIGITAL_RAIN
91// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined
92#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
93#define ENABLE_RGB_MATRIX_SOLID_REACTIVE
94#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
95#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
96#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
97#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
98#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
99#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
100#define ENABLE_RGB_MATRIX_SPLASH
101#define ENABLE_RGB_MATRIX_MULTISPLASH
102#define ENABLE_RGB_MATRIX_SOLID_SPLASH
103#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
104#ifdef RGBLIGHT_ENABLE
105# define RGBLED_NUM 10 // Number of LEDs
106#endif
107
108#define DRIVER_LED_TOTAL 58
109
110/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
111#define DEBOUNCE 5
112
113/* define if matrix has ghost (lacks anti-ghosting diodes) */
114//#define MATRIX_HAS_GHOST
115
116/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
117//#define LOCKING_SUPPORT_ENABLE
118/* Locking resynchronize hack */
119//#define LOCKING_RESYNC_ENABLE
120
121/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
122 * This is useful for the Windows task manager shortcut (ctrl+shift+esc).
123 */
124//#define GRAVE_ESC_CTRL_OVERRIDE
125
126/*
127 * Force NKRO
128 *
129 * Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
130 * state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
131 * makefile for this to work.)
132 *
133 * If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
134 * until the next keyboard reset.
135 *
136 * NKRO may prevent your keystrokes from being detected in the BIOS, but it is
137 * fully operational during normal computer usage.
138 *
139 * For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
140 * or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
141 * bootmagic, NKRO mode will always be enabled until it is toggled again during a
142 * power-up.
143 *
144 */
145//#define FORCE_NKRO
146
147/*
148 * Feature disable options
149 * These options are also useful to firmware size reduction.
150 */
151
152/* disable debug print */
153//#define NO_DEBUG
154
155/* disable print */
156//#define NO_PRINT
157
158/* disable action features */
159//#define NO_ACTION_LAYER
160//#define NO_ACTION_TAPPING
161//#define NO_ACTION_ONESHOT
162
163/* disable these deprecated features by default */
164#define NO_ACTION_MACRO
165#define NO_ACTION_FUNCTION
166
167/* Bootmagic Lite key configuration */
168//#define BOOTMAGIC_LITE_ROW 0
169//#define BOOTMAGIC_LITE_COLUMN 0