You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

60 lines
1.9 KiB

  1. /* Copyright 2021 drhigsby
  2. *
  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. *
  8. * This program is distributed in the hope that it will be useful,
  9. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. * GNU General Public License for more details.
  12. *
  13. * You should have received a copy of the GNU General Public License
  14. * along with this program. If not, see <http://www.gnu.org/licenses/>.
  15. */
  16. #pragma once
  17. #include "config_common.h"
  18. /* USB Device descriptor parameter */
  19. #define MANUFACTURER DrHigsby
  20. #define PRODUCT BKF - Base Kit Forty
  21. #define VENDOR_ID 0x0007
  22. #define PRODUCT_ID 0x0003
  23. #define DEVICE_VER 0x0001
  24. /* key matrix size */
  25. #define MATRIX_ROWS 4
  26. #define MATRIX_COLS 12
  27. /*
  28. * Keyboard Matrix Assignments
  29. *
  30. * Change this to how you wired your keyboard
  31. * COLS: AVR pins used for columns, left to right
  32. * ROWS: AVR pins used for rows, top to bottom
  33. * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
  34. * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
  35. *
  36. */
  37. /* key matrix pins */
  38. #define MATRIX_ROW_PINS { F6, F7, B1, B3 }
  39. #define MATRIX_COL_PINS { B6, B2, D3, D2, D1, D0, D4, C6, D7, E6, B4, B5 }
  40. #define UNUSED_PINS
  41. /* Define encoder pads */
  42. #define ENCODERS_PAD_A { F4 }
  43. #define ENCODERS_PAD_B { F5 }
  44. /* COL2ROW or ROW2COL */
  45. #define DIODE_DIRECTION COL2ROW
  46. /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
  47. #define DEBOUNCE 5
  48. /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
  49. #define LOCKING_SUPPORT_ENABLE
  50. /* Locking resynchronize hack */
  51. #define LOCKING_RESYNC_ENABLE