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.

274 lines
14 KiB

  1. {
  2. "keyboard_name": "CHOSFOX CF81",
  3. "manufacturer": "CHOSFOX",
  4. "maintainer": "jonylee@hfd",
  5. "usb": {
  6. "force_nkro": true,
  7. "vid": "0xFFFE",
  8. "pid": "0x0012",
  9. "device_version": "1.0.0",
  10. "suspend_wakeup_delay": 400
  11. },
  12. "eeprom": {
  13. "driver": "wear_leveling",
  14. "wear_leveling": {
  15. "driver": "spi_flash",
  16. "backing_size": 8192
  17. }
  18. },
  19. "processor": "WB32FQ95",
  20. "bootloader": "wb32-dfu",
  21. "features": {
  22. "bootmagic": true,
  23. "mousekey": false,
  24. "extrakey": true,
  25. "console": false,
  26. "command": false,
  27. "nkro": true,
  28. "encoder": true,
  29. "rgb_matrix": true
  30. },
  31. "matrix_pins": {
  32. "cols": ["C1","C2","C3","A0","A1","A2","A3","A4","A5","A6","A7","C4","C5","B0","B1","B2"],
  33. "rows": ["B15", "C6", "C7", "C8", "C9", "A8"]
  34. },
  35. "diode_direction": "ROW2COL",
  36. "encoder": {
  37. "rotary": [
  38. { "pin_a": "B14", "pin_b": "B13" }
  39. ]
  40. },
  41. "rgb_matrix": {
  42. "driver": "is31fl3733",
  43. "animations": {
  44. "breathing": true,
  45. "cycle_all": true,
  46. "cycle_left_right": true,
  47. "cycle_up_down": true,
  48. "rainbow_moving_chevron": true,
  49. "cycle_out_in": true,
  50. "cycle_out_in_dual": true,
  51. "cycle_pinwheel": true,
  52. "cycle_spiral": true,
  53. "dual_beacon": true,
  54. "rainbow_beacon": true,
  55. "raindrops": true,
  56. "typing_heatmap": true,
  57. "solid_reactive_simple": true,
  58. "solid_reactive": true,
  59. "solid_reactive_cross": true,
  60. "multisplash": true
  61. },
  62. "max_brightness": 200,
  63. "val_steps": 20,
  64. "layout":[
  65. { "flags": 4, "matrix": [0, 0], "x": 0, "y": 0 },
  66. { "flags": 4, "matrix": [0, 1], "x": 14, "y": 0 },
  67. { "flags": 4, "matrix": [0, 2], "x": 29, "y": 0 },
  68. { "flags": 4, "matrix": [0, 3], "x": 44, "y": 0 },
  69. { "flags": 4, "matrix": [0, 4], "x": 59, "y": 0 },
  70. { "flags": 4, "matrix": [0, 5], "x": 74, "y": 0 },
  71. { "flags": 4, "matrix": [0, 6], "x": 89, "y": 0 },
  72. { "flags": 4, "matrix": [0, 7], "x":104, "y": 0 },
  73. { "flags": 4, "matrix": [0, 8], "x":119, "y": 0 },
  74. { "flags": 4, "matrix": [0, 9], "x":134, "y": 0 },
  75. { "flags": 4, "matrix": [0, 10], "x":149, "y": 0 },
  76. { "flags": 4, "matrix": [0, 11], "x":164, "y": 0 },
  77. { "flags": 4, "matrix": [0, 12], "x":179, "y": 0 },
  78. { "flags": 4, "matrix": [0, 13], "x":196, "y": 0 },
  79. { "flags": 4, "matrix": [1, 0], "x": 0, "y": 12},
  80. { "flags": 4, "matrix": [1, 1], "x": 14, "y": 12},
  81. { "flags": 4, "matrix": [1, 2], "x": 28, "y": 12},
  82. { "flags": 4, "matrix": [1, 3], "x": 42, "y": 12},
  83. { "flags": 4, "matrix": [1, 4], "x": 56, "y": 12},
  84. { "flags": 4, "matrix": [1, 5], "x": 70, "y": 12},
  85. { "flags": 4, "matrix": [1, 6], "x": 84, "y": 12},
  86. { "flags": 4, "matrix": [1, 7], "x": 98, "y": 12},
  87. { "flags": 4, "matrix": [1, 8], "x":112, "y": 12},
  88. { "flags": 4, "matrix": [1, 9], "x":126, "y": 12},
  89. { "flags": 4, "matrix": [1, 10], "x":140, "y": 12},
  90. { "flags": 4, "matrix": [1, 11], "x":154, "y": 12},
  91. { "flags": 4, "matrix": [1, 12], "x":168, "y": 12},
  92. { "flags": 4, "matrix": [1, 13], "x":182, "y": 12},
  93. { "flags": 4, "matrix": [1, 15], "x":224, "y": 12},
  94. { "flags": 4, "matrix": [2, 0], "x": 0, "y": 25},
  95. { "flags": 4, "matrix": [2, 1], "x": 14, "y": 25},
  96. { "flags": 4, "matrix": [2, 2], "x": 28, "y": 25},
  97. { "flags": 4, "matrix": [2, 3], "x": 42, "y": 25},
  98. { "flags": 4, "matrix": [2, 4], "x": 56, "y": 25},
  99. { "flags": 4, "matrix": [2, 5], "x": 70, "y": 25},
  100. { "flags": 4, "matrix": [2, 6], "x": 84, "y": 25},
  101. { "flags": 4, "matrix": [2, 7], "x": 98, "y": 25},
  102. { "flags": 4, "matrix": [2, 8], "x":112, "y": 25},
  103. { "flags": 4, "matrix": [2, 9], "x":126, "y": 25},
  104. { "flags": 4, "matrix": [2, 10], "x":140, "y": 25},
  105. { "flags": 4, "matrix": [2, 11], "x":154, "y": 25},
  106. { "flags": 4, "matrix": [2, 12], "x":168, "y": 25},
  107. { "flags": 4, "matrix": [2, 13], "x":182, "y": 25},
  108. { "flags": 4, "matrix": [2, 15], "x":224, "y": 25},
  109. { "flags": 4, "matrix": [3, 0], "x": 0, "y": 38},
  110. { "flags": 4, "matrix": [3, 1], "x": 28, "y": 38},
  111. { "flags": 4, "matrix": [3, 2], "x": 42, "y": 38},
  112. { "flags": 4, "matrix": [3, 3], "x": 56, "y": 38},
  113. { "flags": 4, "matrix": [3, 4], "x": 70, "y": 38},
  114. { "flags": 4, "matrix": [3, 5], "x": 84, "y": 38},
  115. { "flags": 4, "matrix": [3, 6], "x": 98, "y": 38},
  116. { "flags": 4, "matrix": [3, 7], "x":112, "y": 38},
  117. { "flags": 4, "matrix": [3, 8], "x":126, "y": 38},
  118. { "flags": 4, "matrix": [3, 9], "x":140, "y": 38},
  119. { "flags": 4, "matrix": [3, 10], "x":154, "y": 38},
  120. { "flags": 4, "matrix": [3, 11], "x":168, "y": 38},
  121. { "flags": 4, "matrix": [3, 12], "x":182, "y": 38},
  122. { "flags": 4, "matrix": [3, 13], "x":196, "y": 38},
  123. { "flags": 4, "matrix": [3, 15], "x":224, "y": 38},
  124. { "flags": 4, "matrix": [4, 0], "x": 0, "y": 51},
  125. { "flags": 4, "matrix": [4, 11], "x": 14, "y": 51},
  126. { "flags": 4, "matrix": [4, 1], "x": 28, "y": 51},
  127. { "flags": 4, "matrix": [4, 2], "x": 37, "y": 51},
  128. { "flags": 4, "matrix": [4, 3], "x": 56, "y": 51},
  129. { "flags": 4, "matrix": [4, 4], "x": 74, "y": 51},
  130. { "flags": 4, "matrix": [4, 5], "x": 93, "y": 51},
  131. { "flags": 4, "matrix": [4, 6], "x":112, "y": 51},
  132. { "flags": 4, "matrix": [4, 7], "x":130, "y": 51},
  133. { "flags": 4, "matrix": [4, 8], "x":149, "y": 51},
  134. { "flags": 4, "matrix": [4, 9], "x":168, "y": 51},
  135. { "flags": 4, "matrix": [4, 10], "x":186, "y": 51},
  136. { "flags": 4, "matrix": [4, 13], "x":200, "y": 51},
  137. { "flags": 4, "matrix": [4, 14], "x":214, "y": 51},
  138. { "flags": 4, "matrix": [5, 0], "x": 0, "y": 64},
  139. { "flags": 4, "matrix": [5, 1], "x": 18, "y": 64},
  140. { "flags": 4, "matrix": [5, 2], "x": 37, "y": 64},
  141. { "flags": 4, "matrix": [5, 5], "x": 92, "y": 64},
  142. { "flags": 4, "matrix": [5, 9], "x":140, "y": 64},
  143. { "flags": 4, "matrix": [5, 10], "x":154, "y": 64},
  144. { "flags": 4, "matrix": [5, 11], "x":168, "y": 64},
  145. { "flags": 4, "matrix": [5, 13], "x":196, "y": 64},
  146. { "flags": 4, "matrix": [5, 14], "x":210, "y": 64},
  147. { "flags": 4, "matrix": [5, 15], "x":224, "y": 64},
  148. { "flags": 2, "x":0, "y":0},
  149. { "flags": 2, "x":0, "y":6},
  150. { "flags": 2, "x":0, "y":13},
  151. { "flags": 2, "x":0, "y":19},
  152. { "flags": 2, "x":0, "y":25},
  153. { "flags": 2, "x":0, "y":32},
  154. { "flags": 2, "x":0, "y":38},
  155. { "flags": 2, "x":0, "y":45},
  156. { "flags": 2, "x":0, "y":51},
  157. { "flags": 2, "x":0, "y":57},
  158. { "flags": 2, "x":0, "y":64},
  159. { "flags": 2, "x":224, "y":0},
  160. { "flags": 2, "x":224, "y":6},
  161. { "flags": 2, "x":224, "y":13},
  162. { "flags": 2, "x":224, "y":19},
  163. { "flags": 2, "x":224, "y":25},
  164. { "flags": 2, "x":224, "y":32},
  165. { "flags": 2, "x":224, "y":38},
  166. { "flags": 2, "x":224, "y":45},
  167. { "flags": 2, "x":224, "y":51},
  168. { "flags": 2, "x":224, "y":57},
  169. { "flags": 2, "x":224, "y":64}
  170. ]
  171. },
  172. "layouts": {
  173. "LAYOUT": {
  174. "layout": [
  175. { "label": "Esc", "matrix": [0, 0], "x": 0, "y": 0 },
  176. { "label": "F1", "matrix": [0, 1], "x": 1.25, "y": 0 },
  177. { "label": "F2", "matrix": [0, 2], "x": 2.25, "y": 0 },
  178. { "label": "F3", "matrix": [0, 3], "x": 3.25, "y": 0 },
  179. { "label": "F4", "matrix": [0, 4], "x": 4.25, "y": 0 },
  180. { "label": "F5", "matrix": [0, 5], "x": 5.5, "y": 0 },
  181. { "label": "F6", "matrix": [0, 6], "x": 6.5, "y": 0 },
  182. { "label": "F7", "matrix": [0, 7], "x": 7.5, "y": 0 },
  183. { "label": "F8", "matrix": [0, 8], "x": 8.5, "y": 0 },
  184. { "label": "F9", "matrix": [0, 9], "x": 9.75, "y": 0 },
  185. { "label": "F10", "matrix": [0, 10], "x": 10.75, "y": 0 },
  186. { "label": "F11", "matrix": [0, 11], "x": 11.75, "y": 0 },
  187. { "label": "F12", "matrix": [0, 12], "x": 12.75, "y": 0 },
  188. { "label": "Del", "matrix": [0, 13], "x": 14, "y": 0 },
  189. { "label": "Mute", "matrix": [0, 15], "x": 15.5, "y": 0 },
  190. { "label": "~", "matrix": [1, 0], "x": 0, "y": 1.25 },
  191. { "label": "!", "matrix": [1, 1], "x": 1, "y": 1.25 },
  192. { "label": "@", "matrix": [1, 2], "x": 2, "y": 1.25 },
  193. { "label": "#", "matrix": [1, 3], "x": 3, "y": 1.25 },
  194. { "label": "$", "matrix": [1, 4], "x": 4, "y": 1.25 },
  195. { "label": "%", "matrix": [1, 5], "x": 5, "y": 1.25 },
  196. { "label": "^", "matrix": [1, 6], "x": 6, "y": 1.25 },
  197. { "label": "&", "matrix": [1, 7], "x": 7, "y": 1.25 },
  198. { "label": "*", "matrix": [1, 8], "x": 8, "y": 1.25 },
  199. { "label": "(", "matrix": [1, 9], "x": 9, "y": 1.25 },
  200. { "label": ")", "matrix": [1, 10], "x": 10, "y": 1.25 },
  201. { "label": "_", "matrix": [1, 11], "x": 11, "y": 1.25 },
  202. { "label": "+", "matrix": [1, 12], "x": 12, "y": 1.25 },
  203. { "label": "Bksp", "matrix": [1, 13], "w": 2, "x": 13, "y": 1.25 },
  204. { "label": "Home", "matrix": [1, 15], "x": 15.5, "y": 1.25 },
  205. { "label": "Tab", "matrix": [2, 0], "w": 1.5, "x": 0, "y": 2.25 },
  206. { "label": "Q", "matrix": [2, 1], "x": 1.5, "y": 2.25 },
  207. { "label": "W", "matrix": [2, 2], "x": 2.5, "y": 2.25 },
  208. { "label": "E", "matrix": [2, 3], "x": 3.5, "y": 2.25 },
  209. { "label": "R", "matrix": [2, 4], "x": 4.5, "y": 2.25 },
  210. { "label": "T", "matrix": [2, 5], "x": 5.5, "y": 2.25 },
  211. { "label": "Y", "matrix": [2, 6], "x": 6.5, "y": 2.25 },
  212. { "label": "U", "matrix": [2, 7], "x": 7.5, "y": 2.25 },
  213. { "label": "I", "matrix": [2, 8], "x": 8.5, "y": 2.25 },
  214. { "label": "O", "matrix": [2, 9], "x": 9.5, "y": 2.25 },
  215. { "label": "P", "matrix": [2, 10], "x": 10.5, "y": 2.25 },
  216. { "label": "{", "matrix": [2, 11], "x": 11.5, "y": 2.25 },
  217. { "label": "}", "matrix": [2, 12], "x": 12.5, "y": 2.25 },
  218. { "label": "|", "matrix": [2, 13], "w": 1.5, "x": 13.5, "y": 2.25 },
  219. { "label": "PageUp", "matrix": [2, 15], "x": 15.5, "y": 2.25 },
  220. { "label": "Caps Lock", "matrix": [3, 0], "w": 1.75, "x": 0, "y": 3.25 },
  221. { "label": "A", "matrix": [3, 1], "x": 1.75, "y": 3.25 },
  222. { "label": "S", "matrix": [3, 2], "x": 2.75, "y": 3.25 },
  223. { "label": "D", "matrix": [3, 3], "x": 3.75, "y": 3.25 },
  224. { "label": "F", "matrix": [3, 4], "x": 4.75, "y": 3.25 },
  225. { "label": "G", "matrix": [3, 5], "x": 5.75, "y": 3.25 },
  226. { "label": "H", "matrix": [3, 6], "x": 6.75, "y": 3.25 },
  227. { "label": "J", "matrix": [3, 7], "x": 7.75, "y": 3.25 },
  228. { "label": "K", "matrix": [3, 8], "x": 8.75, "y": 3.25 },
  229. { "label": "L", "matrix": [3, 9], "x": 9.75, "y": 3.25 },
  230. { "label": ":", "matrix": [3, 10], "x": 10.75, "y": 3.25 },
  231. { "label": "\"", "matrix": [3, 11], "x": 11.75, "y": 3.25 },
  232. { "label": ":", "matrix": [3, 12], "x": 12.75, "y": 3.25 },
  233. { "label": "Enter", "matrix": [3, 13], "w": 1.25, "x": 13.75, "y": 3.25 },
  234. { "label": "PageDn", "matrix": [3, 15], "x": 15.5, "y": 3.25 },
  235. { "label": "Shift", "matrix": [4, 0], "w": 1.25, "x": 0, "y": 4.25 },
  236. { "label": ":", "matrix": [4, 11], "x": 1.25, "y": 4.25 },
  237. { "label": "Z", "matrix": [4, 1], "x": 2.25, "y": 4.25 },
  238. { "label": "X", "matrix": [4, 2], "x": 3.25, "y": 4.25 },
  239. { "label": "C", "matrix": [4, 3], "x": 4.25, "y": 4.25 },
  240. { "label": "V", "matrix": [4, 4], "x": 5.25, "y": 4.25 },
  241. { "label": "B", "matrix": [4, 5], "x": 6.25, "y": 4.25 },
  242. { "label": "N", "matrix": [4, 6], "x": 7.25, "y": 4.25 },
  243. { "label": "M", "matrix": [4, 7], "x": 8.25, "y": 4.25 },
  244. { "label": "<", "matrix": [4, 8], "x": 9.25, "y": 4.25 },
  245. { "label": ">", "matrix": [4, 9], "x": 10.25, "y": 4.25 },
  246. { "label": "?", "matrix": [4, 10], "x": 11.25, "y": 4.25 },
  247. { "label": "Shift", "matrix": [4, 13], "w": 1.75, "x": 12.25, "y": 4.25 },
  248. { "label": "Up", "matrix": [4, 14], "x": 14.25, "y": 4.5 },
  249. { "label": "Ctrl", "matrix": [5, 0], "w": 1.25, "x": 0, "y": 5.25 },
  250. { "label": "Win", "matrix": [5, 1], "w": 1.25, "x": 1.25, "y": 5.25 },
  251. { "label": "Alt", "matrix": [5, 2], "w": 1.25, "x": 2.5, "y": 5.25 },
  252. { "label": "Space", "matrix": [5, 5], "w": 6.25, "x": 3.75, "y": 5.25 },
  253. { "label": "Alt", "matrix": [5, 9], "x": 10, "y": 5.25 },
  254. { "label": "Fn", "matrix": [5, 10], "x": 11, "y": 5.25 },
  255. { "label": "Ctrl", "matrix": [5, 11], "x": 12, "y": 5.25 },
  256. { "label": "Left", "matrix": [5, 13], "x": 13.25, "y": 5.5 },
  257. { "label": "Down", "matrix": [5, 14], "x": 14.25, "y": 5.5 },
  258. { "label": "Right", "matrix": [5, 15], "x": 15.25, "y": 5.5 }
  259. ]
  260. }
  261. }
  262. }