2
0

rev1.c 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. #include "crkbd.h"
  2. #ifdef AUDIO_ENABLE
  3. float tone_startup[][2] = SONG(STARTUP_SOUND);
  4. float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
  5. #endif
  6. #ifdef SSD1306OLED
  7. void led_set_kb(uint8_t usb_led) {
  8. // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
  9. //led_set_user(usb_led);
  10. }
  11. #endif
  12. #ifdef RGB_MATRIX_ENABLE
  13. // Logical Layout
  14. // Columns
  15. // Left
  16. // 0 1 2 3 4 5
  17. // ROWS
  18. // 25 24 19 18 11 10 0
  19. // 03 02 01
  20. // 26 23 20 17 12 09 1
  21. // 04 05 06
  22. // 27 22 21 16 13 08 2
  23. //
  24. // 15 14 07 3
  25. //
  26. // Right
  27. // 0 1 2 3 4 5
  28. // ROWS
  29. // 25 24 19 18 11 10 4
  30. // 03 02 01
  31. // 26 23 20 17 12 09 5
  32. // 04 05 06
  33. // 27 22 21 16 13 08 6
  34. //
  35. // 15 14 07 7
  36. //
  37. // Physical Layout
  38. // Columns
  39. // 0 1 2 3 4 5 6 7 8 9 10 11 12 13
  40. // ROWS
  41. // 25 24 19 18 11 10 10 11 18 19 24 25 0
  42. // 03 02 01 01 02 03
  43. // 26 23 20 17 12 09 09 12 17 20 23 26 1
  44. // 04 04
  45. // 27 22 21 16 13 08 08 13 16 21 22 27 2
  46. // 05 06 06 05
  47. // 15 14 07 07 14 15 3
  48. #ifdef RGB_MATRIX_SPLIT_RIGHT
  49. led_config_t g_led_config = { {
  50. { 51, 50, 45, 44, 37, 36, NO_LED },
  51. { 52, 49, 46, 43, 38, 35, NO_LED },
  52. { 53, 48, 47, 42, 39, 34, NO_LED },
  53. { NO_LED, NO_LED, NO_LED, 41, 40, 33, NO_LED },
  54. { 24, 23, 18, 17, 10, 9, NO_LED },
  55. { 25, 22, 19, 16, 11, 8, NO_LED },
  56. { 26, 21, 20, 15, 12, 7, NO_LED },
  57. { NO_LED, NO_LED, NO_LED, 14, 13, 6, NO_LED }
  58. }, {
  59. { 139, 16 }, { 174, 13 }, { 208, 20 }, { 208, 38 }, { 174, 48 }, { 139, 52 }, { 129, 63 },
  60. { 139, 39 }, { 139, 21 }, { 139, 4 }, { 156, 2 }, { 156, 19 }, { 156, 37 }, { 144, 58 },
  61. { 164, 55 }, { 174, 35 }, { 174, 13 }, { 174, 0 }, { 191, 3 }, { 191, 20 }, { 191, 37 },
  62. { 208, 42 }, { 208, 24 }, { 208, 7 }, { 224, 7 }, { 224, 24 }, { 224, 41 }, { 85, 16 },
  63. { 50, 13 }, { 16, 20 }, { 16, 38 }, { 50, 48 }, { 85, 52 }, { 95, 63 }, { 85, 39 },
  64. { 85, 21 }, { 85, 4 }, { 68, 2 }, { 68, 19 }, { 68, 37 }, { 80, 58 }, { 60, 55 },
  65. { 50, 35 }, { 50, 13 }, { 50, 0 }, { 33, 3 }, { 33, 20 }, { 33, 37 }, { 16, 42 },
  66. { 16, 24 }, { 16, 7 }, { 0, 7 }, { 0, 24 }, { 0, 41 }
  67. }, {
  68. 2, 2, 2, 2, 2, 2, 1,
  69. 4, 4, 4, 4, 4, 4, 1,
  70. 1, 4, 4, 4, 4, 4, 4,
  71. 4, 4, 4, 1, 1, 1, 2,
  72. 2, 2, 2, 2, 2, 1, 4,
  73. 4, 4, 4, 4, 4, 1, 1,
  74. 4, 4, 4, 4, 4, 4, 4,
  75. 4, 4, 1, 1, 1
  76. } };
  77. #else
  78. led_config_t g_led_config = { {
  79. { 24, 23, 18, 17, 10, 9, NO_LED },
  80. { 25, 22, 19, 16, 11, 8, NO_LED },
  81. { 26, 21, 20, 15, 12, 7, NO_LED },
  82. { NO_LED, NO_LED, NO_LED, 14, 13, 6, NO_LED },
  83. { 51, 50, 45, 44, 37, 36, NO_LED },
  84. { 52, 49, 46, 43, 38, 35, NO_LED },
  85. { 53, 48, 47, 42, 39, 34, NO_LED },
  86. { NO_LED, NO_LED, NO_LED, 41, 40, 33, NO_LED }
  87. }, {
  88. { 85, 16 }, { 50, 13 }, { 16, 20 }, { 16, 38 }, { 50, 48 }, { 85, 52 }, { 95, 63 },
  89. { 85, 39 }, { 85, 21 }, { 85, 4 }, { 68, 2 }, { 68, 19 }, { 68, 37 }, { 80, 58 },
  90. { 60, 55 }, { 50, 35 }, { 50, 13 }, { 50, 0 }, { 33, 3 }, { 33, 20 }, { 33, 37 },
  91. { 16, 42 }, { 16, 24 }, { 16, 7 }, { 0, 7 }, { 0, 24 }, { 0, 41 }, { 139, 16 },
  92. { 174, 13 }, { 208, 20 }, { 208, 38 }, { 174, 48 }, { 139, 52 }, { 129, 63 }, { 139, 39 },
  93. { 139, 21 }, { 139, 4 }, { 156, 2 }, { 156, 19 }, { 156, 37 }, { 144, 58 }, { 164, 55 },
  94. { 174, 35 }, { 174, 13 }, { 174, 0 }, { 191, 3 }, { 191, 20 }, { 191, 37 }, { 208, 42 },
  95. { 208, 24 }, { 208, 7 }, { 224, 7 }, { 224, 24 }, { 224, 41 }
  96. }, {
  97. 2, 2, 2, 2, 2, 2, 1,
  98. 4, 4, 4, 4, 4, 4, 1,
  99. 1, 4, 4, 4, 4, 4, 4,
  100. 4, 4, 4, 1, 1, 1, 2,
  101. 2, 2, 2, 2, 2, 1, 4,
  102. 4, 4, 4, 4, 4, 1, 1,
  103. 4, 4, 4, 4, 4, 4, 4,
  104. 4, 4, 1, 1, 1
  105. } };
  106. #endif
  107. #endif
  108. void matrix_init_kb(void) {
  109. #ifdef AUDIO_ENABLE
  110. _delay_ms(20); // gets rid of tick
  111. PLAY_SONG(tone_startup);
  112. #endif
  113. matrix_init_user();
  114. };
  115. void shutdown_kb(void) {
  116. #ifdef AUDIO_ENABLE
  117. PLAY_SONG(tone_goodbye);
  118. _delay_ms(150);
  119. stop_all_notes();
  120. #endif
  121. }