info.json 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161
  1. {
  2. "manufacturer": "MATTMCCA",
  3. "keyboard_name": "heliotrope",
  4. "maintainer": "MATTMCCA",
  5. "bootloader": "stm32-dfu",
  6. "diode_direction": "COL2ROW",
  7. "features": {
  8. "bootmagic": true,
  9. "command": false,
  10. "console": false,
  11. "extrakey": true,
  12. "mousekey": true,
  13. "nkro": true,
  14. "rgb_matrix": true
  15. },
  16. "matrix_pins": {
  17. "cols": ["B3", "A15", "B4", "B6", "A2", "A3", "B5", "B12", "B13", "B14", "B15", "A8", "A10", "A13"],
  18. "rows": ["B1", "B0", "A7", "A6", "A5"]
  19. },
  20. "processor": "STM32F411",
  21. "url": "https://github.com/MATTMCCA/Heliotrope",
  22. "usb": {
  23. "device_version": "1.0.0",
  24. "pid": "0x4466",
  25. "vid": "0x3141"
  26. },
  27. "rgb_matrix": {
  28. "driver": "WS2812",
  29. "layout": [
  30. { "flags": 4, "matrix": [0, 0] , "x": 7 , "y": 5 } ,
  31. { "flags": 4, "matrix": [0, 1] , "x": 22 , "y": 5 } ,
  32. { "flags": 4, "matrix": [0, 2] , "x": 37 , "y": 5 } ,
  33. { "flags": 4, "matrix": [0, 3] , "x": 52 , "y": 5 } ,
  34. { "flags": 4, "matrix": [0, 4] , "x": 67 , "y": 5 } ,
  35. { "flags": 4, "matrix": [0, 5] , "x": 82 , "y": 5 } ,
  36. { "flags": 4, "matrix": [0, 6] , "x": 97 , "y": 5 } ,
  37. { "flags": 4, "matrix": [0, 7] , "x": 112, "y": 5 } ,
  38. { "flags": 4, "matrix": [0, 8] , "x": 127, "y": 5 } ,
  39. { "flags": 4, "matrix": [0, 9] , "x": 142, "y": 5 } ,
  40. { "flags": 4, "matrix": [0, 10], "x": 157, "y": 5 } ,
  41. { "flags": 4, "matrix": [0, 11], "x": 172, "y": 5 } ,
  42. { "flags": 4, "matrix": [0, 12], "x": 187, "y": 5 } ,
  43. { "flags": 4, "matrix": [0, 13], "x": 209, "y": 5 } ,
  44. { "flags": 4, "matrix": [1, 13], "x": 213, "y": 17 },
  45. { "flags": 4, "matrix": [1, 12], "x": 194, "y": 17 },
  46. { "flags": 4, "matrix": [1, 11], "x": 179, "y": 17 },
  47. { "flags": 4, "matrix": [1, 10], "x": 164, "y": 17 },
  48. { "flags": 4, "matrix": [1, 9] , "x": 149, "y": 17 },
  49. { "flags": 4, "matrix": [1, 8] , "x": 134, "y": 17 },
  50. { "flags": 4, "matrix": [1, 7] , "x": 119, "y": 17 },
  51. { "flags": 4, "matrix": [1, 6] , "x": 104, "y": 17 },
  52. { "flags": 4, "matrix": [1, 5] , "x": 90 , "y": 17 },
  53. { "flags": 4, "matrix": [1, 4] , "x": 75 , "y": 17 },
  54. { "flags": 4, "matrix": [1, 3] , "x": 60 , "y": 17 },
  55. { "flags": 4, "matrix": [1, 2] , "x": 45 , "y": 17 },
  56. { "flags": 4, "matrix": [1, 1] , "x": 30 , "y": 17 },
  57. { "flags": 4, "matrix": [1, 0] , "x": 11 , "y": 17 },
  58. { "flags": 4, "matrix": [2, 0] , "x": 13 , "y": 29 },
  59. { "flags": 4, "matrix": [2, 1] , "x": 34 , "y": 29 },
  60. { "flags": 4, "matrix": [2, 2] , "x": 49 , "y": 29 },
  61. { "flags": 4, "matrix": [2, 3] , "x": 63 , "y": 29 },
  62. { "flags": 4, "matrix": [2, 4] , "x": 78 , "y": 29 },
  63. { "flags": 4, "matrix": [2, 5] , "x": 93 , "y": 29 },
  64. { "flags": 4, "matrix": [2, 6] , "x": 108, "y": 29 },
  65. { "flags": 4, "matrix": [2, 7] , "x": 123, "y": 29 },
  66. { "flags": 4, "matrix": [2, 8] , "x": 138, "y": 29 },
  67. { "flags": 4, "matrix": [2, 9] , "x": 153, "y": 29 },
  68. { "flags": 4, "matrix": [2, 10], "x": 168, "y": 29 },
  69. { "flags": 4, "matrix": [2, 11], "x": 183, "y": 29 },
  70. { "flags": 4, "matrix": [2, 13], "x": 207, "y": 29 },
  71. { "flags": 4, "matrix": [3, 13], "x": 203, "y": 41 },
  72. { "flags": 4, "matrix": [3, 10], "x": 175, "y": 41 },
  73. { "flags": 4, "matrix": [3, 9] , "x": 161, "y": 41 },
  74. { "flags": 4, "matrix": [3, 8] , "x": 146, "y": 41 },
  75. { "flags": 4, "matrix": [3, 7] , "x": 131, "y": 41 },
  76. { "flags": 4, "matrix": [3, 6] , "x": 116, "y": 41 },
  77. { "flags": 4, "matrix": [3, 5] , "x": 101, "y": 41 },
  78. { "flags": 4, "matrix": [3, 4] , "x": 86 , "y": 41 },
  79. { "flags": 4, "matrix": [3, 3] , "x": 71 , "y": 41 },
  80. { "flags": 4, "matrix": [3, 2] , "x": 56 , "y": 41 },
  81. { "flags": 4, "matrix": [3, 1] , "x": 41 , "y": 41 },
  82. { "flags": 4, "matrix": [3, 0] , "x": 17 , "y": 41 },
  83. { "flags": 4, "matrix": [4, 0] , "x": 9 , "y": 54 },
  84. { "flags": 4, "matrix": [4, 1] , "x": 28 , "y": 54 },
  85. { "flags": 4, "matrix": [4, 2] , "x": 47 , "y": 54 },
  86. { "flags": 4, "matrix": [4, 5] , "x": 103, "y": 54 },
  87. { "flags": 4, "matrix": [4, 9] , "x": 159, "y": 54 },
  88. { "flags": 4, "matrix": [4, 10], "x": 177, "y": 54 },
  89. { "flags": 4, "matrix": [4, 11], "x": 196, "y": 54 },
  90. { "flags": 4, "matrix": [4, 13], "x": 215, "y": 54 }
  91. ]
  92. },
  93. "layouts": {
  94. "LAYOUT_60_ansi": {
  95. "layout": [
  96. { "matrix": [0, 0] , "x": 0 , "y": 0 },
  97. { "matrix": [0, 1] , "x": 1 , "y": 0 },
  98. { "matrix": [0, 2] , "x": 2 , "y": 0 },
  99. { "matrix": [0, 3] , "x": 3 , "y": 0 },
  100. { "matrix": [0, 4] , "x": 4 , "y": 0 },
  101. { "matrix": [0, 5] , "x": 5 , "y": 0 },
  102. { "matrix": [0, 6] , "x": 6 , "y": 0 },
  103. { "matrix": [0, 7] , "x": 7 , "y": 0 },
  104. { "matrix": [0, 8] , "x": 8 , "y": 0 },
  105. { "matrix": [0, 9] , "x": 9 , "y": 0 },
  106. { "matrix": [0, 10] , "x": 10 , "y": 0 },
  107. { "matrix": [0, 11] , "x": 11 , "y": 0 },
  108. { "matrix": [0, 12] , "x": 12 , "y": 0 },
  109. { "matrix": [0, 13], "w": 2 , "x": 13 , "y": 0 },
  110. { "matrix": [1, 0] , "w": 1.5 , "x": 0 , "y": 1 },
  111. { "matrix": [1, 1] , "x": 1.5 , "y": 1 },
  112. { "matrix": [1, 2] , "x": 2.5 , "y": 1 },
  113. { "matrix": [1, 3] , "x": 3.5 , "y": 1 },
  114. { "matrix": [1, 4] , "x": 4.5 , "y": 1 },
  115. { "matrix": [1, 5] , "x": 5.5 , "y": 1 },
  116. { "matrix": [1, 6] , "x": 6.5 , "y": 1 },
  117. { "matrix": [1, 7] , "x": 7.5 , "y": 1 },
  118. { "matrix": [1, 8] , "x": 8.5 , "y": 1 },
  119. { "matrix": [1, 9] , "x": 9.5 , "y": 1 },
  120. { "matrix": [1, 10] , "x": 10.5 , "y": 1 },
  121. { "matrix": [1, 11] , "x": 11.5 , "y": 1 },
  122. { "matrix": [1, 12] , "x": 12.5 , "y": 1 },
  123. { "matrix": [1, 13], "w": 1.5 , "x": 13.5 , "y": 1 },
  124. { "matrix": [2, 0] , "w": 1.75 , "x": 0 , "y": 2 },
  125. { "matrix": [2, 1] , "x": 1.75 , "y": 2 },
  126. { "matrix": [2, 2] , "x": 2.75 , "y": 2 },
  127. { "matrix": [2, 3] , "x": 3.75 , "y": 2 },
  128. { "matrix": [2, 4] , "x": 4.75 , "y": 2 },
  129. { "matrix": [2, 5] , "x": 5.75 , "y": 2 },
  130. { "matrix": [2, 6] , "x": 6.75 , "y": 2 },
  131. { "matrix": [2, 7] , "x": 7.75 , "y": 2 },
  132. { "matrix": [2, 8] , "x": 8.75 , "y": 2 },
  133. { "matrix": [2, 9] , "x": 9.75 , "y": 2 },
  134. { "matrix": [2, 10] , "x": 10.75, "y": 2 },
  135. { "matrix": [2, 11] , "x": 11.75, "y": 2 },
  136. { "matrix": [2, 13], "w": 2.25 , "x": 12.75, "y": 2 },
  137. { "matrix": [3, 0] , "w": 2.25 , "x": 0 , "y": 3 },
  138. { "matrix": [3, 1] , "x": 2.25 , "y": 3 },
  139. { "matrix": [3, 2] , "x": 3.25 , "y": 3 },
  140. { "matrix": [3, 3] , "x": 4.25 , "y": 3 },
  141. { "matrix": [3, 4] , "x": 5.25 , "y": 3 },
  142. { "matrix": [3, 5] , "x": 6.25 , "y": 3 },
  143. { "matrix": [3, 6] , "x": 7.25 , "y": 3 },
  144. { "matrix": [3, 7] , "x": 8.25 , "y": 3 },
  145. { "matrix": [3, 8] , "x": 9.25 , "y": 3 },
  146. { "matrix": [3, 9] , "x": 10.25, "y": 3 },
  147. { "matrix": [3, 10] , "x": 11.25, "y": 3 },
  148. { "matrix": [3, 13], "w": 2.75 , "x": 12.25, "y": 3 },
  149. { "matrix": [4, 0] , "w": 1.25 , "x": 0 , "y": 4 },
  150. { "matrix": [4, 1] , "w": 1.25 , "x": 1.25 , "y": 4 },
  151. { "matrix": [4, 2] , "w": 1.25 , "x": 2.5 , "y": 4 },
  152. { "matrix": [4, 5] , "w": 6.25 , "x": 3.75 , "y": 4 },
  153. { "matrix": [4, 9] , "w": 1.25 , "x": 10 , "y": 4 },
  154. { "matrix": [4, 10], "w": 1.25 , "x": 11.25, "y": 4 },
  155. { "matrix": [4, 11], "w": 1.25 , "x": 12.5 , "y": 4 },
  156. { "matrix": [4, 13], "w": 1.25 , "x": 13.75, "y": 4 }
  157. ]
  158. }
  159. }
  160. }