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.

93 lines
2.9 KiB

  1. /* Copyright 2021 Jessica Sullivan and Don Kjer
  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 VENDOR_ID 0xD60D
  20. #define MANUFACTURER Hoksi Technology
  21. /* COL2ROW, ROW2COL*/
  22. #define DIODE_DIRECTION ROW2COL
  23. // Dynamic EEPROM
  24. // Something sensible or else VIA may crash
  25. // Users may enable more if they wish
  26. #define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 4095
  27. // Increase VIA layer count
  28. #define DYNAMIC_KEYMAP_LAYER_COUNT 16
  29. /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
  30. #define DEBOUNCE 5
  31. /* Bootmagic Lite key configuration */
  32. #define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE
  33. #define BOOTMAGIC_LITE_ROW 0
  34. #define BOOTMAGIC_LITE_COLUMN 0
  35. /* LED indicator pins */
  36. #define LED_CAPS_LOCK_PIN C4
  37. #define LED_WIN_LOCK_PIN C5
  38. #define LED_SCROLL_LOCK_PIN A8
  39. #define LED_MR_LOCK_PIN LED_SCROLL_LOCK_PIN
  40. #define LED_PIN_ON_STATE 0
  41. #ifdef RGB_MATRIX_ENABLE
  42. // This is a 7-bit address, that gets left-shifted and bit 0
  43. // set to 0 for write, 1 for read (as per I2C protocol)
  44. // The address will vary depending on your wiring:
  45. // 00 <-> GND
  46. // 01 <-> SCL
  47. // 10 <-> SDA
  48. // 11 <-> VCC
  49. // ADDR1 represents A1:A0 of the 7-bit address.
  50. // ADDR2 represents A3:A2 of the 7-bit address.
  51. // The result is: 0b101(ADDR2)(ADDR1)
  52. #define DRIVER_ADDR_1 0b1010000
  53. #define DRIVER_ADDR_2 0b1010011
  54. #define DRIVER_COUNT 2
  55. #define DRIVER_LED_TOTAL (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
  56. /* I2C Alternate function settings */
  57. #define I2C1_SCL_PAL_MODE 1
  58. #define I2C1_SDA_PAL_MODE 1
  59. /* Set I2C speed to 400kHz, 300ns Tr, 14ns Tf */
  60. #define I2C1_TIMINGR_PRESC 0x1U
  61. #define I2C1_TIMINGR_SCLDEL 0x9U
  62. #define I2C1_TIMINGR_SDADEL 0x0U
  63. #define I2C1_TIMINGR_SCLH 0x0cU
  64. #define I2C1_TIMINGR_SCLL 0x22U
  65. # define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
  66. # define RGB_MATRIX_FRAMEBUFFER_EFFECTS
  67. # define RGB_MATRIX_KEYPRESSES
  68. # define RGB_MATRIX_LED_PROCESS_LIMIT 4
  69. # define RGB_MATRIX_LED_FLUSH_LIMIT 26
  70. # define DISABLE_RGB_MATRIX_HUE_BREATHING
  71. # define DISABLE_RGB_MATRIX_HUE_PENDULUM
  72. # define DISABLE_RGB_MATRIX_HUE_WAVE
  73. // This allows VIA to control RGB Matrix settings in the 'Lighting' section.
  74. #define VIA_QMK_RGBLIGHT_ENABLE
  75. #endif /* RGB_MATRIX_ENABLE */