]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/ergodash/mini/config.h
a7be1635c1b47bc8923b0aefe1c43b9e2d74e9df
[qmk_firmware.git] / keyboards / ergodash / mini / config.h
1 /*
2 Copyright 2012 Jun Wako <wakojun@gmail.com>
3 Copyright 2015 Jack Humbert
4
5 This program is free software: you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation, either version 2 of the License, or
8 (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with this program.  If not, see <http://www.gnu.org/licenses/>.
17 */
18
19 #pragma once
20
21 #include "config_common.h"
22
23 /* USB Device descriptor parameter */
24 #define VENDOR_ID       0xFEED
25 #define PRODUCT_ID      0x6060
26 #define DEVICE_VER      0x0100
27 #define MANUFACTURER    Omkbd
28 #define PRODUCT         ErgoDashmini
29 #define DESCRIPTION     Power
30
31 /* key matrix size */
32 // Rows are doubled-up
33 #define MATRIX_ROWS 8
34 #define MATRIX_COLS 7
35
36 // wiring of each half
37 #define MATRIX_ROW_PINS { D7, E6, B4, B5 }
38 #define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2 }
39 // #define MATRIX_COL_PINS { B2, B3, B1, F7, F6, F5, F4 } //uncomment this line and comment line above if you need to reverse left-to-right key order
40
41 /* define tapping term */
42 #define TAPPING_TERM 120
43
44 /* define if matrix has ghost */
45 //#define MATRIX_HAS_GHOST
46
47 #define C6_AUDIO
48 #ifdef AUDIO_ENABLE
49   #define STARTUP_SONG SONG(STARTUP_SOUND)
50   #define GOODBYE_SONG SONG(GOODBYE_SOUND)
51 #endif
52
53 /* number of backlight levels */
54 #ifdef BACKLIGHT_ENABLE
55   #define BACKLIGHT_PIN B6
56   #define BACKLIGHT_LEVELS 7
57 //  #define BACKLIGHT_BREATHING
58 //  #define BREATHING_PERIOD 4
59 #endif
60
61 /* Set 0 if debouncing isn't needed */
62 #define DEBOUNCING_DELAY 5
63
64 /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
65 #define LOCKING_SUPPORT_ENABLE
66 /* Locking resynchronize hack */
67 #define LOCKING_RESYNC_ENABLE
68
69 /* key combination for command */
70 #define IS_COMMAND() ( \
71     keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \
72 )
73
74 /* ws2812 RGB LED */
75 #define RGB_DI_PIN D3
76 #define RGBLIGHT_TIMER
77 #define RGBLED_NUM 20    // Number of LEDs
78 #define ws2812_PORTREG  PORTD
79 #define ws2812_DDRREG   DDRD
80
81 /*
82  * Feature disable options
83  *  These options are also useful to firmware size reduction.
84  */
85
86 /* disable debug print */
87 // #define NO_DEBUG
88
89 /* disable print */
90 // #define NO_PRINT
91
92 /* disable action features */
93 //#define NO_ACTION_LAYER
94 //#define NO_ACTION_TAPPING
95 //#define NO_ACTION_ONESHOT
96 //#define NO_ACTION_MACRO
97 //#define NO_ACTION_FUNCTION