summaryrefslogtreecommitdiffstats
path: root/keyboards/mechwild/mercutio/config.h
blob: c6aa1e90254f0c3a951e903bd1a4cf884fd68652 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
/* Copyright 2021 Kyle McCreery 
 * 
 * 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/>. 
 */


#pragma once

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID       0x6D77 // mw = "MechWild"
#define PRODUCT_ID      0x1703
#define DEVICE_VER      0x0100
#define MANUFACTURER    MechWild
#define PRODUCT         Mercutio

/* key matrix size */
#define MATRIX_ROWS 7
#define MATRIX_COLS 7

/* key matrix pins */
#define MATRIX_ROW_PINS { D0, D1, D4, C3, C0, C1, C2}
#define MATRIX_COL_PINS { B0, D7, D6, D5, B1, B2, B3}
#define UNUSED_PINS

/* encoder pins */
#define ENCODERS_PAD_A { B4 }
#define ENCODERS_PAD_B { B5 }

/* encoder resolution */
#define ENCODER_RESOLUTION 4
#define TAP_CODE_DELAY 10

/* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW

/* Define custom font */
#define OLED_FONT_H "lib/mercutiofont.c"

/* Set 0 if debouncing isn't needed */
#define DEBOUNCE 5

/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE

/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE