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.

119 lines
4.0 KiB

  1. /*
  2. Copyright 2020 joshajohnson
  3. Copyright 2021 peepeetee
  4. This program is free software: you can redistribute it and/or modify
  5. it under the terms of the GNU General Public License as published by
  6. the Free Software Foundation, either version 2 of the License, or
  7. (at your option) any later version.
  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. You should have received a copy of the GNU General Public License
  13. along with this program. If not, see <http://www.gnu.org/licenses/>.
  14. */
  15. #pragma once
  16. /* USB Device descriptor parameter */
  17. #define VENDOR_ID 0x6A6A // JJ
  18. #define PRODUCT_ID 0x4414 // H20
  19. #define DEVICE_VER 0x0001
  20. #define MANUFACTURER Josh Johnson
  21. #define PRODUCT Hub20
  22. /* key matrix */
  23. #define MATRIX_ROWS 6
  24. #define MATRIX_COLS 4
  25. #define MATRIX_ROW_PINS { A13, B14, A10, A0, A2, A1 }
  26. #define MATRIX_COL_PINS { A6, A7, B7, B6 }
  27. /* COL2ROW, ROW2COL*/
  28. #define DIODE_DIRECTION COL2ROW
  29. /* Rotary Encoder Things */
  30. // #define ENCODER_DIRECTION_FLIP
  31. #define ENCODERS_PAD_A { B12, A8 }
  32. #define ENCODERS_PAD_B { B13, A9 }
  33. #define RGB_DI_PIN B15
  34. #define RGBLED_NUM 27
  35. #define DRIVER_LED_TOTAL 27
  36. #ifdef RGB_DI_PIN
  37. #define RGBLED_NUM 27
  38. #endif
  39. #define RGB_MATRIX_FRAMEBUFFER_EFFECTS
  40. #define RGB_MATRIX_KEYPRESSES
  41. // RGB Matrix Animation modes. Explicitly enabled
  42. // For full list of effects, see:
  43. // https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
  44. // #define ENABLE_RGB_MATRIX_ALPHAS_MODS
  45. #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
  46. #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
  47. #define ENABLE_RGB_MATRIX_BREATHING
  48. // #define ENABLE_RGB_MATRIX_BAND_SAT
  49. // #define ENABLE_RGB_MATRIX_BAND_VAL
  50. // #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
  51. // #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
  52. // #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
  53. // #define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
  54. // #define ENABLE_RGB_MATRIX_CYCLE_ALL
  55. #define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
  56. #define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
  57. // #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
  58. // #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
  59. // #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
  60. // #define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
  61. // #define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
  62. // #define ENABLE_RGB_MATRIX_DUAL_BEACON
  63. // #define ENABLE_RGB_MATRIX_RAINBOW_BEACON
  64. // #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
  65. #define ENABLE_RGB_MATRIX_RAINDROPS
  66. #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
  67. #define ENABLE_RGB_MATRIX_HUE_BREATHING
  68. #define ENABLE_RGB_MATRIX_HUE_PENDULUM
  69. #define ENABLE_RGB_MATRIX_HUE_WAVE
  70. #define ENABLE_RGB_MATRIX_PIXEL_RAIN
  71. #define ENABLE_RGB_MATRIX_PIXEL_FLOW
  72. #define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
  73. // enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined
  74. #define ENABLE_RGB_MATRIX_TYPING_HEATMAP
  75. #define ENABLE_RGB_MATRIX_DIGITAL_RAIN
  76. // enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined
  77. #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
  78. #define ENABLE_RGB_MATRIX_SOLID_REACTIVE
  79. // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
  80. // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
  81. // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
  82. // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
  83. // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
  84. // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
  85. // #define ENABLE_RGB_MATRIX_SPLASH
  86. // #define ENABLE_RGB_MATRIX_MULTISPLASH
  87. // #define ENABLE_RGB_MATRIX_SOLID_SPLASH
  88. // #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
  89. /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
  90. #define DEBOUNCE 5
  91. /* Tap delay for tap vs hold */
  92. #define TAPPING_TERM 200
  93. /* Slow down key press speed to ensure computer picks it up */
  94. #define TAP_CODE_DELAY 10
  95. /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
  96. #define LOCKING_SUPPORT_ENABLE
  97. /* Locking resynchronize hack */
  98. #define LOCKING_RESYNC_ENABLE
  99. /* disable these deprecated features by default */
  100. #define NO_ACTION_MACRO
  101. #define NO_ACTION_FUNCTION