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.

106 lines
4.3 KiB

  1. /* Copyright 2020 Shulin Huang <mumu@x-bows.com>
  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. #define VENDOR_ID 0xFEED
  19. #define PRODUCT_ID 0x1226
  20. #define DEVICE_VER 0x0001
  21. #define MANUFACTURER X-BOWS
  22. #define PRODUCT NATURE
  23. #define MATRIX_ROWS 6
  24. #define MATRIX_COLS 15
  25. #define MATRIX_ROW_PINS { F7, F6, F5, F4, F1, F0 }
  26. #define MATRIX_COL_PINS { B0, B1, B2, B3, B7, D2, D3, D5, D4, D6, D7, B4, B5, B6, C6 }
  27. #define DIODE_DIRECTION COL2ROW
  28. #define DEBOUNCE 3
  29. /* disable these deprecated features by default */
  30. #define NO_ACTION_MACRO
  31. #define NO_ACTION_FUNCTION
  32. #ifdef RGB_MATRIX_ENABLE
  33. # define RGB_MATRIX_LED_PROCESS_LIMIT 18
  34. # define RGB_MATRIX_LED_FLUSH_LIMIT 16
  35. # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects
  36. # define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
  37. # define RGB_MATRIX_KEYPRESSES
  38. # define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200
  39. # define RGB_MATRIX_CENTER \
  40. { 92, 33 }
  41. # define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_CYCLE_LEFT_RIGHT // Sets the default mode, if none has been set
  42. // RGB Matrix Animation modes. Explicitly enabled
  43. // For full list of effects, see:
  44. // https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
  45. # define ENABLE_RGB_MATRIX_ALPHAS_MODS
  46. // # define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
  47. # define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
  48. # define ENABLE_RGB_MATRIX_BREATHING
  49. // # define ENABLE_RGB_MATRIX_BAND_SAT
  50. # define ENABLE_RGB_MATRIX_BAND_VAL
  51. // # define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
  52. # define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
  53. // # define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
  54. # define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
  55. # define ENABLE_RGB_MATRIX_CYCLE_ALL
  56. # define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
  57. # define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
  58. # define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
  59. # define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
  60. // # define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
  61. # define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
  62. # define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
  63. # define ENABLE_RGB_MATRIX_DUAL_BEACON
  64. # define ENABLE_RGB_MATRIX_RAINBOW_BEACON
  65. # define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
  66. # define ENABLE_RGB_MATRIX_RAINDROPS
  67. # define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
  68. // # define ENABLE_RGB_MATRIX_HUE_BREATHING
  69. // # define ENABLE_RGB_MATRIX_HUE_PENDULUM
  70. // # define ENABLE_RGB_MATRIX_HUE_WAVE
  71. // # define ENABLE_RGB_MATRIX_PIXEL_RAIN
  72. // # define ENABLE_RGB_MATRIX_PIXEL_FLOW
  73. // # define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
  74. // enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined
  75. # define ENABLE_RGB_MATRIX_TYPING_HEATMAP
  76. // # define ENABLE_RGB_MATRIX_DIGITAL_RAIN
  77. // enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined
  78. # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
  79. # define ENABLE_RGB_MATRIX_SOLID_REACTIVE
  80. // # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
  81. // # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
  82. // # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
  83. // # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
  84. // # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
  85. // # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
  86. // # define ENABLE_RGB_MATRIX_SPLASH
  87. // # define ENABLE_RGB_MATRIX_MULTISPLASH
  88. // # define ENABLE_RGB_MATRIX_SOLID_SPLASH
  89. // # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
  90. # define DRIVER_ADDR_1 0b1110100
  91. # define DRIVER_ADDR_2 0b1110110
  92. # define DRIVER_ADDR_3 0b1110101
  93. # define DRIVER_COUNT 3
  94. # define DRIVER_1_LED_TOTAL 36
  95. # define DRIVER_2_LED_TOTAL 36
  96. # define DRIVER_3_LED_TOTAL 15
  97. # define DRIVER_LED_TOTAL (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL + DRIVER_3_LED_TOTAL)
  98. #endif