config.h 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. /*
  2. Copyright 2019 Danny Nguyen <danny@keeb.io>
  3. This program is free software: you can redistribute it and/or modify
  4. it under the terms of the GNU General Public License as published by
  5. the Free Software Foundation, either version 2 of the License, or
  6. (at your option) any later version.
  7. This program is distributed in the hope that it will be useful,
  8. but WITHOUT ANY WARRANTY; without even the implied warranty of
  9. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  10. GNU General Public License for more details.
  11. You should have received a copy of the GNU General Public License
  12. along with this program. If not, see <http://www.gnu.org/licenses/>.
  13. */
  14. #pragma once
  15. #include "config_common.h"
  16. /* USB Device descriptor parameter */
  17. #define VENDOR_ID 0xCB10
  18. #define PRODUCT_ID 0x1133
  19. #define DEVICE_VER 0x0100
  20. #define MANUFACTURER Keebio
  21. #define PRODUCT BDN9
  22. #define DESCRIPTION 3x3 Macropad with Rotary Encoders
  23. /* key matrix size */
  24. #define MATRIX_ROWS 1
  25. #define MATRIX_COLS 9
  26. /* Keyboard Matrix Assignments */
  27. #define NO_PIN (~0)
  28. #define MATRIX_ROW_PINS { NO_PIN }
  29. #define MATRIX_COL_PINS { D2, D4, F4, D7, B1, B3, E6, B4, B2 }
  30. /* COL2ROW, ROW2COL, or CUSTOM_MATRIX */
  31. #define DIODE_DIRECTION COL2ROW
  32. #define NUMBER_OF_ENCODERS 2
  33. #define ENCODERS_PAD_A { D1, F5 }
  34. #define ENCODERS_PAD_B { D0, F6 }
  35. #define BACKLIGHT_PIN B5
  36. // #define BACKLIGHT_BREATHING
  37. #define BACKLIGHT_LEVELS 7
  38. #define RGB_DI_PIN D3
  39. #ifdef RGB_DI_PIN
  40. #define RGBLED_NUM 3
  41. #define RGBLIGHT_HUE_STEP 8
  42. #define RGBLIGHT_SAT_STEP 8
  43. #define RGBLIGHT_VAL_STEP 8
  44. #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */
  45. #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */
  46. /*== all animations enable ==*/
  47. #define RGBLIGHT_ANIMATIONS
  48. #endif
  49. /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
  50. #define DEBOUNCING_DELAY 5
  51. /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
  52. #define LOCKING_SUPPORT_ENABLE
  53. /* Locking resynchronize hack */
  54. #define LOCKING_RESYNC_ENABLE