keyboard.json 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231
  1. {
  2. "manufacturer": "YMDK",
  3. "keyboard_name": "Oni Tsangan",
  4. "maintainer": "chrisgve",
  5. "bootloader": "atmel-dfu",
  6. "diode_direction": "ROW2COL",
  7. "features": {
  8. "bootmagic": true,
  9. "extrakey": true,
  10. "mousekey": true,
  11. "nkro": true,
  12. "rgb_matrix": true
  13. },
  14. "indicators": {
  15. "caps_lock": "F4",
  16. "on_state": 0
  17. },
  18. "matrix_pins": {
  19. "cols": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "F7", "B5", "B4", "D7", "D6", "B3", "B2"],
  20. "rows": ["D0", "D1", "D2", "D3", "D5"]
  21. },
  22. "processor": "atmega32u4",
  23. "qmk": {
  24. "locking": {
  25. "enabled": true
  26. }
  27. },
  28. "rgb_matrix": {
  29. "animations": {
  30. "alphas_mods": true,
  31. "band_pinwheel_sat": true,
  32. "band_pinwheel_val": true,
  33. "band_sat": true,
  34. "band_spiral_sat": true,
  35. "band_spiral_val": true,
  36. "band_val": true,
  37. "breathing": true,
  38. "cycle_all": true,
  39. "cycle_left_right": true,
  40. "cycle_out_in": true,
  41. "cycle_out_in_dual": true,
  42. "cycle_pinwheel": true,
  43. "cycle_spiral": true,
  44. "cycle_up_down": true,
  45. "digital_rain": true,
  46. "dual_beacon": true,
  47. "gradient_left_right": true,
  48. "gradient_up_down": true,
  49. "hue_breathing": true,
  50. "hue_pendulum": true,
  51. "hue_wave": true,
  52. "jellybean_raindrops": true,
  53. "multisplash": true,
  54. "pixel_flow": true,
  55. "pixel_fractal": true,
  56. "pixel_rain": true,
  57. "rainbow_beacon": true,
  58. "rainbow_moving_chevron": true,
  59. "rainbow_pinwheels": true,
  60. "raindrops": true,
  61. "solid_multisplash": true,
  62. "solid_reactive": true,
  63. "solid_reactive_cross": true,
  64. "solid_reactive_multicross": true,
  65. "solid_reactive_multinexus": true,
  66. "solid_reactive_multiwide": true,
  67. "solid_reactive_nexus": true,
  68. "solid_reactive_simple": true,
  69. "solid_reactive_wide": true,
  70. "solid_splash": true,
  71. "splash": true,
  72. "typing_heatmap": true
  73. },
  74. "driver": "ws2812",
  75. "layout": [
  76. {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
  77. {"matrix": [0, 1], "x": 16, "y": 0, "flags": 4},
  78. {"matrix": [0, 2], "x": 32, "y": 0, "flags": 4},
  79. {"matrix": [0, 3], "x": 48, "y": 0, "flags": 4},
  80. {"matrix": [0, 4], "x": 64, "y": 0, "flags": 4},
  81. {"matrix": [0, 5], "x": 80, "y": 0, "flags": 4},
  82. {"matrix": [0, 6], "x": 96, "y": 0, "flags": 4},
  83. {"matrix": [0, 7], "x": 112, "y": 0, "flags": 4},
  84. {"matrix": [0, 8], "x": 128, "y": 0, "flags": 4},
  85. {"matrix": [0, 9], "x": 144, "y": 0, "flags": 4},
  86. {"matrix": [0, 10], "x": 160, "y": 0, "flags": 4},
  87. {"matrix": [0, 11], "x": 176, "y": 0, "flags": 4},
  88. {"matrix": [0, 12], "x": 192, "y": 0, "flags": 4},
  89. {"matrix": [0, 13], "x": 208, "y": 0, "flags": 1},
  90. {"matrix": [0, 14], "x": 224, "y": 0, "flags": 4},
  91. {"matrix": [1, 0], "x": 4, "y": 16, "flags": 1},
  92. {"matrix": [1, 1], "x": 24, "y": 16, "flags": 4},
  93. {"matrix": [1, 2], "x": 40, "y": 16, "flags": 4},
  94. {"matrix": [1, 3], "x": 56, "y": 16, "flags": 4},
  95. {"matrix": [1, 4], "x": 72, "y": 16, "flags": 4},
  96. {"matrix": [1, 5], "x": 88, "y": 16, "flags": 4},
  97. {"matrix": [1, 6], "x": 104, "y": 16, "flags": 4},
  98. {"matrix": [1, 7], "x": 120, "y": 16, "flags": 4},
  99. {"matrix": [1, 8], "x": 136, "y": 16, "flags": 4},
  100. {"matrix": [1, 9], "x": 152, "y": 16, "flags": 4},
  101. {"matrix": [1, 10], "x": 168, "y": 16, "flags": 4},
  102. {"matrix": [1, 11], "x": 184, "y": 16, "flags": 4},
  103. {"matrix": [1, 12], "x": 200, "y": 16, "flags": 4},
  104. {"matrix": [1, 13], "x": 220, "y": 16, "flags": 1},
  105. {"matrix": [2, 0], "x": 6, "y": 32, "flags": 8},
  106. {"matrix": [2, 1], "x": 28, "y": 32, "flags": 4},
  107. {"matrix": [2, 2], "x": 44, "y": 32, "flags": 4},
  108. {"matrix": [2, 3], "x": 60, "y": 32, "flags": 4},
  109. {"matrix": [2, 4], "x": 76, "y": 32, "flags": 4},
  110. {"matrix": [2, 5], "x": 92, "y": 32, "flags": 4},
  111. {"matrix": [2, 6], "x": 108, "y": 32, "flags": 4},
  112. {"matrix": [2, 7], "x": 124, "y": 32, "flags": 4},
  113. {"matrix": [2, 8], "x": 140, "y": 32, "flags": 4},
  114. {"matrix": [2, 9], "x": 156, "y": 32, "flags": 4},
  115. {"matrix": [2, 10], "x": 172, "y": 32, "flags": 4},
  116. {"matrix": [2, 11], "x": 188, "y": 32, "flags": 4},
  117. {"matrix": [2, 13], "x": 214, "y": 32, "flags": 1},
  118. {"matrix": [3, 0], "x": 10, "y": 48, "flags": 1},
  119. {"matrix": [3, 2], "x": 36, "y": 48, "flags": 4},
  120. {"matrix": [3, 3], "x": 52, "y": 48, "flags": 4},
  121. {"matrix": [3, 4], "x": 68, "y": 48, "flags": 4},
  122. {"matrix": [3, 5], "x": 84, "y": 48, "flags": 4},
  123. {"matrix": [3, 6], "x": 100, "y": 48, "flags": 4},
  124. {"matrix": [3, 7], "x": 116, "y": 48, "flags": 4},
  125. {"matrix": [3, 8], "x": 132, "y": 48, "flags": 4},
  126. {"matrix": [3, 9], "x": 148, "y": 48, "flags": 4},
  127. {"matrix": [3, 10], "x": 164, "y": 48, "flags": 4},
  128. {"matrix": [3, 11], "x": 180, "y": 48, "flags": 4},
  129. {"matrix": [3, 13], "x": 202, "y": 48, "flags": 1},
  130. {"matrix": [3, 14], "x": 224, "y": 48, "flags": 4},
  131. {"matrix": [4, 0], "x": 4, "y": 64, "flags": 1},
  132. {"matrix": [4, 1], "x": 24, "y": 64, "flags": 1},
  133. {"matrix": [4, 2], "x": 44, "y": 64, "flags": 1},
  134. {"matrix": [4, 7], "x": 112, "y": 64, "flags": 4},
  135. {"matrix": [4, 10], "x": 180, "y": 64, "flags": 1},
  136. {"matrix": [4, 12], "x": 200, "y": 64, "flags": 1},
  137. {"matrix": [4, 13], "x": 220, "y": 64, "flags": 1},
  138. {"x": 8, "y": 4, "flags": 2},
  139. {"x": 48, "y": 4, "flags": 2},
  140. {"x": 88, "y": 4, "flags": 2},
  141. {"x": 132, "y": 4, "flags": 2},
  142. {"x": 180, "y": 4, "flags": 2},
  143. {"x": 216, "y": 4, "flags": 2},
  144. {"x": 8, "y": 52, "flags": 2},
  145. {"x": 48, "y": 52, "flags": 2},
  146. {"x": 96, "y": 52, "flags": 2},
  147. {"x": 132, "y": 52, "flags": 2},
  148. {"x": 180, "y": 52, "flags": 2},
  149. {"x": 216, "y": 52, "flags": 2}
  150. ],
  151. "max_brightness": 200
  152. },
  153. "url": "https://ymdkey.com/products/ymdk-gh60-hhkb-style-tsangan-oni-hot-swappable-both-underglow-switch-rgb-via-programmable-pcb-compatible-with-tokyo-60",
  154. "usb": {
  155. "device_version": "0.0.1",
  156. "pid": "0x0021",
  157. "vid": "0x45D4"
  158. },
  159. "ws2812": {
  160. "pin": "E2"
  161. },
  162. "community_layouts": ["60_ansi_tsangan_split_bs_rshift"],
  163. "layouts": {
  164. "LAYOUT_60_ansi_tsangan_split_bs_rshift": {
  165. "layout": [
  166. {"matrix": [0, 0], "x": 0, "y": 0},
  167. {"matrix": [0, 1], "x": 1, "y": 0},
  168. {"matrix": [0, 2], "x": 2, "y": 0},
  169. {"matrix": [0, 3], "x": 3, "y": 0},
  170. {"matrix": [0, 4], "x": 4, "y": 0},
  171. {"matrix": [0, 5], "x": 5, "y": 0},
  172. {"matrix": [0, 6], "x": 6, "y": 0},
  173. {"matrix": [0, 7], "x": 7, "y": 0},
  174. {"matrix": [0, 8], "x": 8, "y": 0},
  175. {"matrix": [0, 9], "x": 9, "y": 0},
  176. {"matrix": [0, 10], "x": 10, "y": 0},
  177. {"matrix": [0, 11], "x": 11, "y": 0},
  178. {"matrix": [0, 12], "x": 12, "y": 0},
  179. {"matrix": [0, 13], "x": 13, "y": 0},
  180. {"matrix": [0, 14], "x": 14, "y": 0},
  181. {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
  182. {"matrix": [1, 1], "x": 1.5, "y": 1},
  183. {"matrix": [1, 2], "x": 2.5, "y": 1},
  184. {"matrix": [1, 3], "x": 3.5, "y": 1},
  185. {"matrix": [1, 4], "x": 4.5, "y": 1},
  186. {"matrix": [1, 5], "x": 5.5, "y": 1},
  187. {"matrix": [1, 6], "x": 6.5, "y": 1},
  188. {"matrix": [1, 7], "x": 7.5, "y": 1},
  189. {"matrix": [1, 8], "x": 8.5, "y": 1},
  190. {"matrix": [1, 9], "x": 9.5, "y": 1},
  191. {"matrix": [1, 10], "x": 10.5, "y": 1},
  192. {"matrix": [1, 11], "x": 11.5, "y": 1},
  193. {"matrix": [1, 12], "x": 12.5, "y": 1},
  194. {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
  195. {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
  196. {"matrix": [2, 1], "x": 1.75, "y": 2},
  197. {"matrix": [2, 2], "x": 2.75, "y": 2},
  198. {"matrix": [2, 3], "x": 3.75, "y": 2},
  199. {"matrix": [2, 4], "x": 4.75, "y": 2},
  200. {"matrix": [2, 5], "x": 5.75, "y": 2},
  201. {"matrix": [2, 6], "x": 6.75, "y": 2},
  202. {"matrix": [2, 7], "x": 7.75, "y": 2},
  203. {"matrix": [2, 8], "x": 8.75, "y": 2},
  204. {"matrix": [2, 9], "x": 9.75, "y": 2},
  205. {"matrix": [2, 10], "x": 10.75, "y": 2},
  206. {"matrix": [2, 11], "x": 11.75, "y": 2},
  207. {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
  208. {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
  209. {"matrix": [3, 2], "x": 2.25, "y": 3},
  210. {"matrix": [3, 3], "x": 3.25, "y": 3},
  211. {"matrix": [3, 4], "x": 4.25, "y": 3},
  212. {"matrix": [3, 5], "x": 5.25, "y": 3},
  213. {"matrix": [3, 6], "x": 6.25, "y": 3},
  214. {"matrix": [3, 7], "x": 7.25, "y": 3},
  215. {"matrix": [3, 8], "x": 8.25, "y": 3},
  216. {"matrix": [3, 9], "x": 9.25, "y": 3},
  217. {"matrix": [3, 10], "x": 10.25, "y": 3},
  218. {"matrix": [3, 11], "x": 11.25, "y": 3},
  219. {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
  220. {"matrix": [3, 14], "x": 14, "y": 3},
  221. {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
  222. {"matrix": [4, 1], "x": 1.5, "y": 4},
  223. {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
  224. {"matrix": [4, 7], "x": 4, "y": 4, "w": 7},
  225. {"matrix": [4, 10], "x": 11, "y": 4, "w": 1.5},
  226. {"matrix": [4, 12], "x": 12.5, "y": 4},
  227. {"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5}
  228. ]
  229. }
  230. }
  231. }