config.h 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. /*
  2. Copyright 2023 3araht
  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. // Right side has to be the master since 1, LED data is output from right side, and 2, Audio pin is prepared on right side as a reserve.
  16. #define MASTER_RIGHT
  17. // for "Generic" Promicro to be detected correctly as lefthand side (slave)
  18. #define SPLIT_USB_DETECT
  19. #define RGBLIGHT_LAYERS
  20. #ifdef RGB_MATRIX_ENABLE
  21. /* ws2812 RGB MATRIX */
  22. // for all fingers used at once.
  23. # define LED_HITS_TO_REMEMBER 10
  24. // the max brightness setting has no effect on rgb_matrix_set_color().
  25. // Use darker colors instead.
  26. /* RGB darker COLORS */
  27. # define RGB_DARKWHITE 0x66, 0x66, 0x66
  28. # define RGB_DARKRED 0x66, 0x0, 0x0
  29. # define RGB_DARKCORAL 0x66, 0x31, 0x1E
  30. # define RGB_DARKORANGE 0x66, 0x33, 0x0
  31. # define RGB_DARKGOLDENROD 0x56, 0x42, 0xD
  32. # define RGB_DARKGOLD 0x66, 0x56, 0x0
  33. # define RGB_DARKYELLOW 0x66, 0x66, 0x0
  34. # define RGB_DARKCHARTREUSE 0x33, 0x66, 0x0
  35. # define RGB_DARKGREEN 0x0, 0x66, 0x0
  36. # define RGB_DARKSPRINGGREEN 0x0, 0x66, 0x33
  37. # define RGB_DARKTURQUOISE 0x1C, 0x2C, 0x2A
  38. # define RGB_DARKTEAL 0x0, 0x33, 0x33
  39. # define RGB_DARKCYAN 0x0, 0x66, 0x66
  40. # define RGB_DARKAZURE 0x3D, 0x62, 0x66
  41. # define RGB_DARKBLUE 0x0, 0x0, 0x66
  42. # define RGB_DARKPURPLE 0x30, 0x0, 0x66
  43. # define RGB_DARKMAGENTA 0x66, 0x0, 0x66
  44. # define RGB_DARKPINK 0x66, 0x33, 0x4C
  45. #endif // RGB_MATRIX_ENABLE
  46. /*
  47. * Feature disable options
  48. * These options are also useful to firmware size reduction.
  49. */
  50. /* disable debug print */
  51. //#define NO_DEBUG
  52. /* disable print */
  53. //#define NO_PRINT
  54. /* disable action features */
  55. //#define NO_ACTION_LAYER
  56. //#define NO_ACTION_TAPPING
  57. //#define NO_ACTION_ONESHOT
  58. /* Audio */
  59. #ifdef AUDIO_ENABLE
  60. # define AUDIO_PIN B5 // use EX1 = PB5 = PIN9 as Audio output
  61. // #define DAC_SAMPLE_MAX 32768U
  62. # define DAC_SAMPLE_MAX 65535U
  63. // #define AUDIO_CLICKY
  64. # define NO_MUSIC_MODE
  65. // #define STARTUP_SONG SONG(FANTASIE_IMPROMPTU)
  66. // #define STARTUP_SONG SONG(NOCTURNE_OP_9_NO_1)
  67. // #define STARTUP_SONG SONG(USSR_ANTHEM)
  68. // #define STARTUP_SONG SONG(CAMPANELLA)
  69. #endif
  70. /*
  71. * MIDI options
  72. */
  73. /* enable basic MIDI features:
  74. - MIDI notes can be sent when in Music mode is on
  75. */
  76. //#define MIDI_BASIC
  77. /* enable advanced MIDI features:
  78. - MIDI notes can be added to the keymap
  79. - Octave shift and transpose
  80. - Virtual sustain, portamento, and modulation wheel
  81. - etc.
  82. */
  83. #ifdef MIDI_ENABLE
  84. # define MIDI_ADVANCED
  85. // Initial velocity value (avoid using 127 since it is used as a special number in some sound sources.)
  86. # define MIDI_INITIAL_VELOCITY 117
  87. #endif // MIDI_ENABLE
  88. /* 2021/01/22 added to shrink firmware size */
  89. // NO_ACTION_TAPPING -1964 bytes, however, this disables Layer mods...
  90. // #define NO_ACTION_TAPPING
  91. // NO_ACTION_ONESHOT -388 bytes
  92. #define NO_ACTION_ONESHOT