config.h 1.8 KB

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