keyboard.json 9.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260
  1. {
  2. "keyboard_name": "Iris LM-G Rev. 1",
  3. "bootloader": "stm32-dfu",
  4. "diode_direction": "COL2ROW",
  5. "features": {
  6. "bootmagic": true,
  7. "encoder": true,
  8. "extrakey": true,
  9. "mousekey": true,
  10. "rgb_matrix": true
  11. },
  12. "encoder": {
  13. "rotary": [
  14. {"pin_a": "A15", "pin_b": "C10"},
  15. {"pin_a": "B13", "pin_b": "B12"}
  16. ]
  17. },
  18. "ws2812": {
  19. "driver": "pwm",
  20. "pin": "B7"
  21. },
  22. "matrix_pins": {
  23. "cols": ["C4", "B2", "A5", "C11", "C13", "C14"],
  24. "rows": ["A4", "A3", "B14", "B5", "F1"]
  25. },
  26. "split": {
  27. "enabled": true,
  28. "encoder": {
  29. "right": {
  30. "rotary": [
  31. {"pin_a": "A5", "pin_b": "A6"},
  32. {"pin_a": "A15", "pin_b": "C10"}
  33. ]
  34. }
  35. },
  36. "handedness": {
  37. "pin": "A0"
  38. },
  39. "matrix_pins": {
  40. "right": {
  41. "cols": ["C11", "C13", "B6", "B9", "B12", "B2"],
  42. "rows": ["C4", "A7", "B14", "B5", "F1"]
  43. }
  44. },
  45. "serial": {
  46. "driver": "usart"
  47. },
  48. "transport": {
  49. "sync" :{
  50. "matrix_state": true
  51. }
  52. }
  53. },
  54. "processor": "STM32G431",
  55. "usb": {
  56. "device_version": "1.0.0",
  57. "pid": "0x1656"
  58. },
  59. "layouts": {
  60. "LAYOUT": {
  61. "layout": [
  62. {"matrix": [0, 0], "x": 0, "y": 0.375},
  63. {"matrix": [0, 1], "x": 1, "y": 0.375},
  64. {"matrix": [0, 2], "x": 2, "y": 0.125},
  65. {"matrix": [0, 3], "x": 3, "y": 0},
  66. {"matrix": [0, 4], "x": 4, "y": 0.125},
  67. {"matrix": [0, 5], "x": 5, "y": 0.25},
  68. {"matrix": [5, 5], "x": 9, "y": 0.25},
  69. {"matrix": [5, 4], "x": 10, "y": 0.125},
  70. {"matrix": [5, 3], "x": 11, "y": 0},
  71. {"matrix": [5, 2], "x": 12, "y": 0.125},
  72. {"matrix": [5, 1], "x": 13, "y": 0.375},
  73. {"matrix": [5, 0], "x": 14, "y": 0.375},
  74. {"matrix": [1, 0], "x": 0, "y": 1.375},
  75. {"matrix": [1, 1], "x": 1, "y": 1.375},
  76. {"matrix": [1, 2], "x": 2, "y": 1.125},
  77. {"matrix": [1, 3], "x": 3, "y": 1},
  78. {"matrix": [1, 4], "x": 4, "y": 1.125},
  79. {"matrix": [1, 5], "x": 5, "y": 1.25},
  80. {"matrix": [6, 5], "x": 9, "y": 1.25},
  81. {"matrix": [6, 4], "x": 10, "y": 1.125},
  82. {"matrix": [6, 3], "x": 11, "y": 1},
  83. {"matrix": [6, 2], "x": 12, "y": 1.125},
  84. {"matrix": [6, 1], "x": 13, "y": 1.375},
  85. {"matrix": [6, 0], "x": 14, "y": 1.375},
  86. {"matrix": [2, 0], "x": 0, "y": 2.375},
  87. {"matrix": [2, 1], "x": 1, "y": 2.375},
  88. {"matrix": [2, 2], "x": 2, "y": 2.125},
  89. {"matrix": [2, 3], "x": 3, "y": 2},
  90. {"matrix": [2, 4], "x": 4, "y": 2.125},
  91. {"matrix": [2, 5], "x": 5, "y": 2.25},
  92. {"matrix": [7, 5], "x": 9, "y": 2.25},
  93. {"matrix": [7, 4], "x": 10, "y": 2.125},
  94. {"matrix": [7, 3], "x": 11, "y": 2},
  95. {"matrix": [7, 2], "x": 12, "y": 2.125},
  96. {"matrix": [7, 1], "x": 13, "y": 2.375},
  97. {"matrix": [7, 0], "x": 14, "y": 2.375},
  98. {"matrix": [3, 0], "x": 0, "y": 3.375},
  99. {"matrix": [3, 1], "x": 1, "y": 3.375},
  100. {"matrix": [3, 2], "x": 2, "y": 3.125},
  101. {"matrix": [3, 3], "x": 3, "y": 3},
  102. {"matrix": [3, 4], "x": 4, "y": 3.125},
  103. {"matrix": [3, 5], "x": 5, "y": 3.25},
  104. {"matrix": [4, 5], "x": 6.15, "y": 3.75},
  105. {"matrix": [9, 5], "x": 7.85, "y": 3.75},
  106. {"matrix": [8, 5], "x": 9, "y": 3.25},
  107. {"matrix": [8, 4], "x": 10, "y": 3.125},
  108. {"matrix": [8, 3], "x": 11, "y": 3},
  109. {"matrix": [8, 2], "x": 12, "y": 3.125},
  110. {"matrix": [8, 1], "x": 13, "y": 3.375},
  111. {"matrix": [8, 0], "x": 14, "y": 3.375},
  112. {"matrix": [4, 2], "x": 3.5, "y": 4.25},
  113. {"matrix": [4, 3], "x": 4.5, "y": 4.375},
  114. {"matrix": [4, 4], "x": 5.6, "y": 4.75},
  115. {"matrix": [9, 4], "x": 8.4, "y": 4.75},
  116. {"matrix": [9, 3], "x": 9.5, "y": 4.375},
  117. {"matrix": [9, 2], "x": 10.5, "y": 4.25}
  118. ]
  119. }
  120. },
  121. "rgb_matrix": {
  122. "animations": {
  123. "alphas_mods": true,
  124. "gradient_up_down": true,
  125. "gradient_left_right": true,
  126. "breathing": true,
  127. "band_sat": true,
  128. "band_val": true,
  129. "band_pinwheel_sat": true,
  130. "band_pinwheel_val": true,
  131. "band_spiral_sat": true,
  132. "band_spiral_val": true,
  133. "cycle_all": true,
  134. "cycle_left_right": true,
  135. "cycle_up_down": true,
  136. "cycle_out_in": true,
  137. "cycle_out_in_dual": true,
  138. "rainbow_moving_chevron": true,
  139. "cycle_pinwheel": true,
  140. "cycle_spiral": true,
  141. "dual_beacon": true,
  142. "rainbow_beacon": true,
  143. "rainbow_pinwheels": true,
  144. "raindrops": true,
  145. "jellybean_raindrops": true,
  146. "hue_breathing": true,
  147. "hue_pendulum": true,
  148. "hue_wave": true,
  149. "pixel_fractal": true,
  150. "pixel_flow": true,
  151. "pixel_rain": true,
  152. "typing_heatmap": true,
  153. "digital_rain": true,
  154. "solid_reactive_simple": true,
  155. "solid_reactive": true,
  156. "solid_reactive_wide": true,
  157. "solid_reactive_multiwide": true,
  158. "solid_reactive_cross": true,
  159. "solid_reactive_multicross": true,
  160. "solid_reactive_nexus": true,
  161. "solid_reactive_multinexus": true,
  162. "splash": true,
  163. "multisplash": true,
  164. "solid_splash": true,
  165. "solid_multisplash": true
  166. },
  167. "driver": "ws2812",
  168. "split_count": [34, 34],
  169. "max_brightness": 120,
  170. "layout": [
  171. {"matrix": [0,0], "flags":4, "x":0, "y":5},
  172. {"flags":2, "x":8, "y":5},
  173. {"matrix": [0,1], "flags":4, "x":16, "y":5},
  174. {"matrix": [0,2], "flags":4, "x":32, "y":2},
  175. {"flags":2, "x":40, "y":1},
  176. {"matrix": [0,3], "flags":4, "x":48, "y":0},
  177. {"matrix": [0,4], "flags":4, "x":64, "y":5},
  178. {"flags":2, "x":72, "y":3},
  179. {"matrix": [0,5], "flags":4, "x":80, "y":3},
  180. {"matrix": [1,5], "flags":4, "x":80, "y":17},
  181. {"matrix": [1,4], "flags":4, "x":64, "y":15},
  182. {"matrix": [1,3], "flags":4, "x":48, "y":13},
  183. {"matrix": [1,2], "flags":4, "x":32, "y":15},
  184. {"matrix": [1,1], "flags":4, "x":16, "y":18},
  185. {"matrix": [1,0], "flags":4, "x":0, "y":18},
  186. {"matrix": [2,0], "flags":4, "x":0, "y":32},
  187. {"matrix": [2,1], "flags":4, "x":16, "y":32},
  188. {"matrix": [2,2], "flags":4, "x":32, "y":28},
  189. {"matrix": [2,3], "flags":4, "x":48, "y":27},
  190. {"matrix": [2,4], "flags":4, "x":64, "y":28},
  191. {"matrix": [2,5], "flags":4, "x":80, "y":30},
  192. {"matrix": [3,5], "flags":4, "x":80, "y":43},
  193. {"matrix": [3,4], "flags":4, "x":64, "y":42},
  194. {"matrix": [3,3], "flags":4, "x":48, "y":40},
  195. {"flags":2, "x":40, "y":50},
  196. {"matrix": [3,2], "flags":4, "x":32, "y":42},
  197. {"matrix": [3,1], "flags":4, "x":16, "y":45},
  198. {"flags":2, "x":8, "y":43},
  199. {"matrix": [3,0], "flags":4, "x":0, "y":45},
  200. {"matrix": [4,5], "flags":4, "x":98, "y":52},
  201. {"matrix": [4,4], "flags":4, "x":90, "y":64},
  202. {"flags":2, "x":80, "y":58},
  203. {"matrix": [4,3], "flags":4, "x":72, "y":58},
  204. {"matrix": [4,2], "flags":4, "x":56, "y":47},
  205. {"matrix": [5,0], "flags":4, "x":224, "y":5},
  206. {"flags":2, "x":216, "y":5},
  207. {"matrix": [5,1], "flags":4, "x":208, "y":5},
  208. {"matrix": [5,2], "flags":4, "x":192, "y":2},
  209. {"flags":2, "x":184, "y":1},
  210. {"matrix": [5,3], "flags":4, "x":176, "y":0},
  211. {"matrix": [5,4], "flags":4, "x":160, "y":5},
  212. {"flags":2, "x":152, "y":3},
  213. {"matrix": [5,5], "flags":4, "x":144, "y":3},
  214. {"matrix": [6,5], "flags":4, "x":144, "y":17},
  215. {"matrix": [6,4], "flags":4, "x":160, "y":15},
  216. {"matrix": [6,3], "flags":4, "x":176, "y":13},
  217. {"matrix": [6,2], "flags":4, "x":192, "y":15},
  218. {"matrix": [6,1], "flags":4, "x":208, "y":18},
  219. {"matrix": [6,0], "flags":4, "x":224, "y":18},
  220. {"matrix": [7,0], "flags":4, "x":224, "y":32},
  221. {"matrix": [7,1], "flags":4, "x":208, "y":32},
  222. {"matrix": [7,2], "flags":4, "x":192, "y":28},
  223. {"matrix": [7,3], "flags":4, "x":176, "y":27},
  224. {"matrix": [7,4], "flags":4, "x":160, "y":28},
  225. {"matrix": [7,5], "flags":4, "x":144, "y":30},
  226. {"matrix": [8,5], "flags":4, "x":144, "y":43},
  227. {"matrix": [8,4], "flags":4, "x":160, "y":42},
  228. {"matrix": [8,3], "flags":4, "x":176, "y":40},
  229. {"flags":2, "x":184, "y":50},
  230. {"matrix": [8,2], "flags":4, "x":192, "y":42},
  231. {"matrix": [8,1], "flags":4, "x":208, "y":45},
  232. {"flags":2, "x":216, "y":43},
  233. {"matrix": [8,0], "flags":4, "x":224, "y":45},
  234. {"matrix": [9,2], "flags":4, "x":168, "y":47},
  235. {"matrix": [9,3], "flags":4, "x":152, "y":58},
  236. {"flags":2, "x":144, "y":58},
  237. {"matrix": [9,4], "flags":4, "x":134, "y":64},
  238. {"matrix": [9,5], "flags":4, "x":126, "y":52}
  239. ],
  240. "sleep": true
  241. }
  242. }