]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/snagpad/config.h
[Keyboard] wilba.tech PCB refactoring (#6982)
[qmk_firmware.git] / keyboards / snagpad / config.h
1 #pragma once
2
3 #include "config_common.h"
4
5 /* USB Device descriptor parameter */
6 #define VENDOR_ID       0x4443 // "DC" = Don Chiou
7 #define PRODUCT_ID      0x5350 // "SP" = Snagpad
8 #define DEVICE_VER      0x0001
9 #define MANUFACTURER    Flehrad
10 #define PRODUCT         Snagpad
11 #define DESCRIPTION     A Pro Micro-Powered 5x4 macropad/numpad
12
13 /* key matrix size */
14 #define MATRIX_ROWS 5
15 #define MATRIX_COLS 4
16
17 /* key matrix pins */
18 #define MATRIX_ROW_PINS { D1, D0, D4, C6, D7 }
19 #define MATRIX_COL_PINS { F4, F5, F6, F7 }
20 #define UNUSED_PINS
21
22 /* COL2ROW or ROW2COL */
23 #define DIODE_DIRECTION COL2ROW
24
25 /* number of backlight levels */
26
27 #ifdef BACKLIGHT_PIN
28 #define BACKLIGHT_LEVELS 3
29 #endif
30
31 /* Set 0 if debouncing isn't needed */
32 #define DEBOUNCE 5
33
34 /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
35 #define LOCKING_SUPPORT_ENABLE
36
37 /* Locking resynchronize hack */
38 #define LOCKING_RESYNC_ENABLE
39
40 /* prevent stuck modifiers */
41 //#define STRICT_LAYER_RELEASE
42
43 #ifdef RGB_DI_PIN
44 #define RGBLIGHT_ANIMATIONS
45 #define RGBLED_NUM 0
46 #define RGBLIGHT_HUE_STEP 8
47 #define RGBLIGHT_SAT_STEP 8
48 #define RGBLIGHT_VAL_STEP 8
49 #endif
50
51 #define DYNAMIC_KEYMAP_LAYER_COUNT 4
52
53 // EEPROM usage
54
55 // TODO: refactor with new user EEPROM code (coming soon)
56 #define EEPROM_MAGIC 0x451F
57 #define EEPROM_MAGIC_ADDR 34
58 // Bump this every time we change what we store
59 // This will automatically reset the EEPROM with defaults
60 // and avoid loading invalid data from the EEPROM
61 #define EEPROM_VERSION 0x08
62 #define EEPROM_VERSION_ADDR 36
63
64 // Dynamic keymap starts after EEPROM version
65 #define DYNAMIC_KEYMAP_EEPROM_ADDR 37
66 // Dynamic macro starts after dynamic keymaps (37+(4*5*4*2)) = (37+160)
67 #define DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR 197
68 #define DYNAMIC_KEYMAP_MACRO_EEPROM_SIZE 827
69 #define DYNAMIC_KEYMAP_MACRO_COUNT 16