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.

117 lines
3.4 KiB

  1. #pragma once
  2. #define RGBLIGHT_EFFECT_BREATHE_TABLE
  3. // clang-format off
  4. // Breathing center: 1.85
  5. // Breathing max: 255
  6. const uint8_t PROGMEM rgblight_effect_breathe_table[] = {
  7. #if RGBLIGHT_BREATHE_TABLE_SIZE == 256
  8. 0x22, 0x23, 0x25, 0x26, 0x28, 0x29, 0x2A, 0x2C,
  9. 0x2D, 0x2F, 0x30, 0x32, 0x33, 0x35, 0x36, 0x38,
  10. 0x3A, 0x3B, 0x3D, 0x3E, 0x40, 0x42, 0x43, 0x45,
  11. 0x47, 0x49, 0x4A, 0x4C, 0x4E, 0x50, 0x51, 0x53,
  12. 0x55, 0x57, 0x59, 0x5A, 0x5C, 0x5E, 0x60, 0x62,
  13. 0x64, 0x66, 0x68, 0x69, 0x6B, 0x6D, 0x6F, 0x71,
  14. 0x73, 0x75, 0x77, 0x79, 0x7B, 0x7D, 0x7F, 0x81,
  15. 0x83, 0x85, 0x87, 0x89, 0x8A, 0x8C, 0x8E, 0x90,
  16. 0x92, 0x94, 0x96, 0x98, 0x9A, 0x9C, 0x9E, 0x9F,
  17. 0xA1, 0xA3, 0xA5, 0xA7, 0xA8, 0xAA, 0xAC, 0xAE,
  18. 0xAF, 0xB1, 0xB3, 0xB4, 0xB6, 0xB8, 0xB9, 0xBB,
  19. 0xBC, 0xBE, 0xBF, 0xC1, 0xC2, 0xC3, 0xC5, 0xC6,
  20. 0xC7, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xD0,
  21. 0xD1, 0xD2, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD7,
  22. 0xD7, 0xD8, 0xD9, 0xD9, 0xDA, 0xDA, 0xDB, 0xDB,
  23. 0xDB, 0xDC, 0xDC, 0xDC, 0xDC, 0xDC, 0xDD, 0xDD,
  24. 0xDD, 0xDD, 0xDC, 0xDC, 0xDC, 0xDC, 0xDC, 0xDB,
  25. 0xDB, 0xDB, 0xDA, 0xDA, 0xD9, 0xD9, 0xD8, 0xD7,
  26. 0xD7, 0xD6, 0xD5, 0xD4, 0xD3, 0xD2, 0xD2, 0xD1,
  27. 0xD0, 0xCE, 0xCD, 0xCC, 0xCB, 0xCA, 0xC9, 0xC7,
  28. 0xC6, 0xC5, 0xC3, 0xC2, 0xC1, 0xBF, 0xBE, 0xBC,
  29. 0xBB, 0xB9, 0xB8, 0xB6, 0xB4, 0xB3, 0xB1, 0xAF,
  30. 0xAE, 0xAC, 0xAA, 0xA8, 0xA7, 0xA5, 0xA3, 0xA1,
  31. 0x9F, 0x9E, 0x9C, 0x9A, 0x98, 0x96, 0x94, 0x92,
  32. 0x90, 0x8E, 0x8C, 0x8A, 0x89, 0x87, 0x85, 0x83,
  33. 0x81, 0x7F, 0x7D, 0x7B, 0x79, 0x77, 0x75, 0x73,
  34. 0x71, 0x6F, 0x6D, 0x6B, 0x69, 0x68, 0x66, 0x64,
  35. 0x62, 0x60, 0x5E, 0x5C, 0x5A, 0x59, 0x57, 0x55,
  36. 0x53, 0x51, 0x50, 0x4E, 0x4C, 0x4A, 0x49, 0x47,
  37. 0x45, 0x43, 0x42, 0x40, 0x3E, 0x3D, 0x3B, 0x3A,
  38. 0x38, 0x36, 0x35, 0x33, 0x32, 0x30, 0x2F, 0x2D,
  39. 0x2C, 0x2A, 0x29, 0x28, 0x26, 0x25, 0x23, 0x22
  40. #endif
  41. #if RGBLIGHT_BREATHE_TABLE_SIZE == 128
  42. 0x22, 0x25, 0x28, 0x2A,
  43. 0x2D, 0x30, 0x33, 0x36,
  44. 0x3A, 0x3D, 0x40, 0x43,
  45. 0x47, 0x4A, 0x4E, 0x51,
  46. 0x55, 0x59, 0x5C, 0x60,
  47. 0x64, 0x68, 0x6B, 0x6F,
  48. 0x73, 0x77, 0x7B, 0x7F,
  49. 0x83, 0x87, 0x8A, 0x8E,
  50. 0x92, 0x96, 0x9A, 0x9E,
  51. 0xA1, 0xA5, 0xA8, 0xAC,
  52. 0xAF, 0xB3, 0xB6, 0xB9,
  53. 0xBC, 0xBF, 0xC2, 0xC5,
  54. 0xC7, 0xCA, 0xCC, 0xCE,
  55. 0xD1, 0xD2, 0xD4, 0xD6,
  56. 0xD7, 0xD9, 0xDA, 0xDB,
  57. 0xDB, 0xDC, 0xDC, 0xDD,
  58. 0xDD, 0xDC, 0xDC, 0xDC,
  59. 0xDB, 0xDA, 0xD9, 0xD8,
  60. 0xD7, 0xD5, 0xD3, 0xD2,
  61. 0xD0, 0xCD, 0xCB, 0xC9,
  62. 0xC6, 0xC3, 0xC1, 0xBE,
  63. 0xBB, 0xB8, 0xB4, 0xB1,
  64. 0xAE, 0xAA, 0xA7, 0xA3,
  65. 0x9F, 0x9C, 0x98, 0x94,
  66. 0x90, 0x8C, 0x89, 0x85,
  67. 0x81, 0x7D, 0x79, 0x75,
  68. 0x71, 0x6D, 0x69, 0x66,
  69. 0x62, 0x5E, 0x5A, 0x57,
  70. 0x53, 0x50, 0x4C, 0x49,
  71. 0x45, 0x42, 0x3E, 0x3B,
  72. 0x38, 0x35, 0x32, 0x2F,
  73. 0x2C, 0x29, 0x26, 0x23
  74. #endif
  75. #if RGBLIGHT_BREATHE_TABLE_SIZE == 64
  76. 0x22, 0x28,
  77. 0x2D, 0x33,
  78. 0x3A, 0x40,
  79. 0x47, 0x4E,
  80. 0x55, 0x5C,
  81. 0x64, 0x6B,
  82. 0x73, 0x7B,
  83. 0x83, 0x8A,
  84. 0x92, 0x9A,
  85. 0xA1, 0xA8,
  86. 0xAF, 0xB6,
  87. 0xBC, 0xC2,
  88. 0xC7, 0xCC,
  89. 0xD1, 0xD4,
  90. 0xD7, 0xDA,
  91. 0xDB, 0xDC,
  92. 0xDD, 0xDC,
  93. 0xDB, 0xD9,
  94. 0xD7, 0xD3,
  95. 0xD0, 0xCB,
  96. 0xC6, 0xC1,
  97. 0xBB, 0xB4,
  98. 0xAE, 0xA7,
  99. 0x9F, 0x98,
  100. 0x90, 0x89,
  101. 0x81, 0x79,
  102. 0x71, 0x69,
  103. 0x62, 0x5A,
  104. 0x53, 0x4C,
  105. 0x45, 0x3E,
  106. 0x38, 0x32,
  107. 0x2C, 0x26
  108. #endif
  109. };
  110. static const int table_scale = 256 / sizeof(rgblight_effect_breathe_table);