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.

84 lines
2.6 KiB

  1. /* Copyright 2021 Jay Greco
  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. // clang-format off
  17. #pragma once
  18. /* Used to set host for remote KB if VUSB detect doesn't work. */
  19. // #define KEYBOARD_HOST // Force host mode
  20. // #define KEYBOARD_REMOTE // Force remote mode
  21. // Workarounds for sleep/wake issues
  22. #define USB_SUSPEND_WAKEUP_DELAY 250
  23. // NOTE: There is a bug in AVR deep sleep, which
  24. // causes the MCU to stop responding in some cases.
  25. // Disabling the watchdog prevents the MCU from entering
  26. // power down, while still turning off LEDs, audio, etc.
  27. // See qmk_firmware/issues/20087 for background
  28. #undef WDT_vect
  29. /* split config */
  30. // #define SPLIT_USB_DETECT // Enable if you have issues with USB
  31. #define SOFT_SERIAL_PIN E6
  32. #define SPLIT_HAND_PIN B6
  33. #define DISABLE_SYNC_TIMER
  34. #define SPLIT_HAND_PIN_LOW_IS_LEFT
  35. /* key matrix size */
  36. #define MATRIX_ROWS 12
  37. #define MATRIX_COLS 9
  38. #define MATRIX_MUX_COLS 3
  39. /*
  40. * Keyboard Matrix Assignments
  41. * The snap uses a demultiplexer for the cols.
  42. * to free up more IOs for awesomeness!
  43. * See matrix.c for more details.
  44. */
  45. // Left side
  46. #define MATRIX_ROW_PINS { D4, C6, D7, F4, B4, B5 }
  47. #define MATRIX_COL_MUX_PINS { F7, F6, F5 }
  48. //Right side
  49. #define MATRIX_ROW_PINS_RIGHT { F4, F5, F6, F7, B1, B3 }
  50. #define MATRIX_COL_MUX_PINS_RIGHT { D7, C6, D4 }
  51. #define MATRIX_EXT_PIN_RIGHT B6
  52. /* Optional SMT LED pins */
  53. #define RGBLED_NUM 10
  54. #define RGBLIGHT_SLEEP
  55. #define RGBLIGHT_EFFECT_BREATHING
  56. #define RGBLIGHT_EFFECT_RAINBOW_MOOD
  57. #define RGBLIGHT_EFFECT_RAINBOW_SWIRL
  58. #define RGBLIGHT_EFFECT_SNAKE
  59. #define RGBLIGHT_EFFECT_KNIGHT
  60. #define RGBLIGHT_EFFECT_CHRISTMAS
  61. #define RGBLIGHT_EFFECT_STATIC_GRADIENT
  62. #define RGBLIGHT_EFFECT_RGB_TEST
  63. #define RGBLIGHT_EFFECT_ALTERNATING
  64. #define RGBLIGHT_EFFECT_TWINKLE
  65. /* Optional encoder pins */
  66. #define ENCODERS_PAD_A { B3 }
  67. #define ENCODERS_PAD_B { B1 }
  68. #define ENCODERS_PAD_A_RIGHT { B4 }
  69. #define ENCODERS_PAD_B_RIGHT { B5 }
  70. /* Optional speaker pin */
  71. #define AUDIO_PIN B6
  72. /* Optional split transactions */
  73. #define SPLIT_OLED_ENABLE