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.

333 lines
12 KiB

  1. {
  2. "keyboard_name": "Planck",
  3. "manufacturer": "Drop",
  4. "url": "https://olkb.com/planck",
  5. "maintainer": "jackhumbert",
  6. "usb": {
  7. "vid": "0x03A8",
  8. "pid": "0xA4F9",
  9. "device_version": "0.0.7"
  10. },
  11. "ws2812": {
  12. "pin": "A1",
  13. "driver": "pwm"
  14. },
  15. "rgb_matrix": {
  16. "driver": "ws2812",
  17. "sleep": true
  18. },
  19. "matrix_pins": {
  20. "cols": ["B11", "B10", "B2", "B1", "A7", "B0"],
  21. "rows": ["A10", "A9", "A8", "B15", "C13", "C14", "C15", "A2"]
  22. },
  23. "diode_direction": "COL2ROW",
  24. "dip_switch": {
  25. "pins": ["B14", "A15", "A0", "B9"]
  26. },
  27. "encoder": {
  28. "rotary": [
  29. {"pin_a": "B12", "pin_b": "B13"},
  30. {"pin_a": "B12", "pin_b": "B13"},
  31. {"pin_a": "B12", "pin_b": "B13"},
  32. {"pin_a": "B12", "pin_b": "B13"},
  33. {"pin_a": "B12", "pin_b": "B13"},
  34. {"pin_a": "B12", "pin_b": "B13"},
  35. {"pin_a": "B12", "pin_b": "B13"},
  36. {"pin_a": "B12", "pin_b": "B13"}
  37. ]
  38. },
  39. "features": {
  40. "audio": true,
  41. "bootmagic": true,
  42. "command": true,
  43. "console": true,
  44. "encoder": true,
  45. "extrakey": true,
  46. "mousekey": true,
  47. "nkro": true,
  48. "rgblight": true
  49. },
  50. "rgblight": {
  51. "led_count": 9
  52. },
  53. "processor": "STM32F303",
  54. "bootloader": "stm32-dfu",
  55. "community_layouts": ["ortho_4x12", "planck_mit"],
  56. "layout_aliases": {
  57. "LAYOUT": "LAYOUT_ortho_4x12",
  58. "LAYOUT_planck_grid": "LAYOUT_ortho_4x12",
  59. "LAYOUT_planck_mit": "LAYOUT_planck_1x2uC"
  60. },
  61. "layouts": {
  62. "LAYOUT_ortho_4x12": {
  63. "layout": [
  64. { "matrix": [0, 0], "x": 0, "y": 0 },
  65. { "matrix": [0, 1], "x": 1, "y": 0 },
  66. { "matrix": [0, 2], "x": 2, "y": 0 },
  67. { "matrix": [0, 3], "x": 3, "y": 0 },
  68. { "matrix": [0, 4], "x": 4, "y": 0 },
  69. { "matrix": [0, 5], "x": 5, "y": 0 },
  70. { "matrix": [4, 0], "x": 6, "y": 0 },
  71. { "matrix": [4, 1], "x": 7, "y": 0 },
  72. { "matrix": [4, 2], "x": 8, "y": 0 },
  73. { "matrix": [4, 3], "x": 9, "y": 0 },
  74. { "matrix": [4, 4], "x": 10, "y": 0 },
  75. { "matrix": [4, 5], "x": 11, "y": 0 },
  76. { "matrix": [1, 0], "x": 0, "y": 1 },
  77. { "matrix": [1, 1], "x": 1, "y": 1 },
  78. { "matrix": [1, 2], "x": 2, "y": 1 },
  79. { "matrix": [1, 3], "x": 3, "y": 1 },
  80. { "matrix": [1, 4], "x": 4, "y": 1 },
  81. { "matrix": [1, 5], "x": 5, "y": 1 },
  82. { "matrix": [5, 0], "x": 6, "y": 1 },
  83. { "matrix": [5, 1], "x": 7, "y": 1 },
  84. { "matrix": [5, 2], "x": 8, "y": 1 },
  85. { "matrix": [5, 3], "x": 9, "y": 1 },
  86. { "matrix": [5, 4], "x": 10, "y": 1 },
  87. { "matrix": [5, 5], "x": 11, "y": 1 },
  88. { "matrix": [2, 0], "x": 0, "y": 2 },
  89. { "matrix": [2, 1], "x": 1, "y": 2 },
  90. { "matrix": [2, 2], "x": 2, "y": 2 },
  91. { "matrix": [2, 3], "x": 3, "y": 2 },
  92. { "matrix": [2, 4], "x": 4, "y": 2 },
  93. { "matrix": [2, 5], "x": 5, "y": 2 },
  94. { "matrix": [6, 0], "x": 6, "y": 2 },
  95. { "matrix": [6, 1], "x": 7, "y": 2 },
  96. { "matrix": [6, 2], "x": 8, "y": 2 },
  97. { "matrix": [6, 3], "x": 9, "y": 2 },
  98. { "matrix": [6, 4], "x": 10, "y": 2 },
  99. { "matrix": [6, 5], "x": 11, "y": 2 },
  100. { "matrix": [3, 0], "x": 0, "y": 3 },
  101. { "matrix": [3, 1], "x": 1, "y": 3 },
  102. { "matrix": [3, 2], "x": 2, "y": 3 },
  103. { "matrix": [7, 3], "x": 3, "y": 3 },
  104. { "matrix": [7, 4], "x": 4, "y": 3 },
  105. { "matrix": [7, 5], "x": 5, "y": 3 },
  106. { "matrix": [7, 0], "x": 6, "y": 3 },
  107. { "matrix": [7, 1], "x": 7, "y": 3 },
  108. { "matrix": [7, 2], "x": 8, "y": 3 },
  109. { "matrix": [3, 3], "x": 9, "y": 3 },
  110. { "matrix": [3, 4], "x": 10, "y": 3 },
  111. { "matrix": [3, 5], "x": 11, "y": 3 }
  112. ]
  113. },
  114. "LAYOUT_planck_1x2uC": {
  115. "layout": [
  116. { "matrix": [0, 0], "x": 0, "y": 0 },
  117. { "matrix": [0, 1], "x": 1, "y": 0 },
  118. { "matrix": [0, 2], "x": 2, "y": 0 },
  119. { "matrix": [0, 3], "x": 3, "y": 0 },
  120. { "matrix": [0, 4], "x": 4, "y": 0 },
  121. { "matrix": [0, 5], "x": 5, "y": 0 },
  122. { "matrix": [4, 0], "x": 6, "y": 0 },
  123. { "matrix": [4, 1], "x": 7, "y": 0 },
  124. { "matrix": [4, 2], "x": 8, "y": 0 },
  125. { "matrix": [4, 3], "x": 9, "y": 0 },
  126. { "matrix": [4, 4], "x": 10, "y": 0 },
  127. { "matrix": [4, 5], "x": 11, "y": 0 },
  128. { "matrix": [1, 0], "x": 0, "y": 1 },
  129. { "matrix": [1, 1], "x": 1, "y": 1 },
  130. { "matrix": [1, 2], "x": 2, "y": 1 },
  131. { "matrix": [1, 3], "x": 3, "y": 1 },
  132. { "matrix": [1, 4], "x": 4, "y": 1 },
  133. { "matrix": [1, 5], "x": 5, "y": 1 },
  134. { "matrix": [5, 0], "x": 6, "y": 1 },
  135. { "matrix": [5, 1], "x": 7, "y": 1 },
  136. { "matrix": [5, 2], "x": 8, "y": 1 },
  137. { "matrix": [5, 3], "x": 9, "y": 1 },
  138. { "matrix": [5, 4], "x": 10, "y": 1 },
  139. { "matrix": [5, 5], "x": 11, "y": 1 },
  140. { "matrix": [2, 0], "x": 0, "y": 2 },
  141. { "matrix": [2, 1], "x": 1, "y": 2 },
  142. { "matrix": [2, 2], "x": 2, "y": 2 },
  143. { "matrix": [2, 3], "x": 3, "y": 2 },
  144. { "matrix": [2, 4], "x": 4, "y": 2 },
  145. { "matrix": [2, 5], "x": 5, "y": 2 },
  146. { "matrix": [6, 0], "x": 6, "y": 2 },
  147. { "matrix": [6, 1], "x": 7, "y": 2 },
  148. { "matrix": [6, 2], "x": 8, "y": 2 },
  149. { "matrix": [6, 3], "x": 9, "y": 2 },
  150. { "matrix": [6, 4], "x": 10, "y": 2 },
  151. { "matrix": [6, 5], "x": 11, "y": 2 },
  152. { "matrix": [3, 0], "x": 0, "y": 3 },
  153. { "matrix": [3, 1], "x": 1, "y": 3 },
  154. { "matrix": [3, 2], "x": 2, "y": 3 },
  155. { "matrix": [7, 3], "x": 3, "y": 3 },
  156. { "matrix": [7, 4], "x": 4, "y": 3 },
  157. { "matrix": [7, 0], "x": 5, "y": 3, "w": 2 },
  158. { "matrix": [7, 1], "x": 7, "y": 3 },
  159. { "matrix": [7, 2], "x": 8, "y": 3 },
  160. { "matrix": [3, 3], "x": 9, "y": 3 },
  161. { "matrix": [3, 4], "x": 10, "y": 3 },
  162. { "matrix": [3, 5], "x": 11, "y": 3 }
  163. ]
  164. },
  165. "LAYOUT_planck_1x2uL": {
  166. "layout": [
  167. { "matrix": [0, 0], "x": 0, "y": 0 },
  168. { "matrix": [0, 1], "x": 1, "y": 0 },
  169. { "matrix": [0, 2], "x": 2, "y": 0 },
  170. { "matrix": [0, 3], "x": 3, "y": 0 },
  171. { "matrix": [0, 4], "x": 4, "y": 0 },
  172. { "matrix": [0, 5], "x": 5, "y": 0 },
  173. { "matrix": [4, 0], "x": 6, "y": 0 },
  174. { "matrix": [4, 1], "x": 7, "y": 0 },
  175. { "matrix": [4, 2], "x": 8, "y": 0 },
  176. { "matrix": [4, 3], "x": 9, "y": 0 },
  177. { "matrix": [4, 4], "x": 10, "y": 0 },
  178. { "matrix": [4, 5], "x": 11, "y": 0 },
  179. { "matrix": [1, 0], "x": 0, "y": 1 },
  180. { "matrix": [1, 1], "x": 1, "y": 1 },
  181. { "matrix": [1, 2], "x": 2, "y": 1 },
  182. { "matrix": [1, 3], "x": 3, "y": 1 },
  183. { "matrix": [1, 4], "x": 4, "y": 1 },
  184. { "matrix": [1, 5], "x": 5, "y": 1 },
  185. { "matrix": [5, 0], "x": 6, "y": 1 },
  186. { "matrix": [5, 1], "x": 7, "y": 1 },
  187. { "matrix": [5, 2], "x": 8, "y": 1 },
  188. { "matrix": [5, 3], "x": 9, "y": 1 },
  189. { "matrix": [5, 4], "x": 10, "y": 1 },
  190. { "matrix": [5, 5], "x": 11, "y": 1 },
  191. { "matrix": [2, 0], "x": 0, "y": 2 },
  192. { "matrix": [2, 1], "x": 1, "y": 2 },
  193. { "matrix": [2, 2], "x": 2, "y": 2 },
  194. { "matrix": [2, 3], "x": 3, "y": 2 },
  195. { "matrix": [2, 4], "x": 4, "y": 2 },
  196. { "matrix": [2, 5], "x": 5, "y": 2 },
  197. { "matrix": [6, 0], "x": 6, "y": 2 },
  198. { "matrix": [6, 1], "x": 7, "y": 2 },
  199. { "matrix": [6, 2], "x": 8, "y": 2 },
  200. { "matrix": [6, 3], "x": 9, "y": 2 },
  201. { "matrix": [6, 4], "x": 10, "y": 2 },
  202. { "matrix": [6, 5], "x": 11, "y": 2 },
  203. { "matrix": [3, 0], "x": 0, "y": 3 },
  204. { "matrix": [3, 1], "x": 1, "y": 3 },
  205. { "matrix": [3, 2], "x": 2, "y": 3 },
  206. { "matrix": [7, 3], "x": 3, "y": 3 },
  207. { "matrix": [7, 5], "x": 4, "y": 3, "w": 2 },
  208. { "matrix": [7, 0], "x": 6, "y": 3 },
  209. { "matrix": [7, 1], "x": 7, "y": 3 },
  210. { "matrix": [7, 2], "x": 8, "y": 3 },
  211. { "matrix": [3, 3], "x": 9, "y": 3 },
  212. { "matrix": [3, 4], "x": 10, "y": 3 },
  213. { "matrix": [3, 5], "x": 11, "y": 3 }
  214. ]
  215. },
  216. "LAYOUT_planck_1x2uR": {
  217. "layout": [
  218. { "matrix": [0, 0], "x": 0, "y": 0 },
  219. { "matrix": [0, 1], "x": 1, "y": 0 },
  220. { "matrix": [0, 2], "x": 2, "y": 0 },
  221. { "matrix": [0, 3], "x": 3, "y": 0 },
  222. { "matrix": [0, 4], "x": 4, "y": 0 },
  223. { "matrix": [0, 5], "x": 5, "y": 0 },
  224. { "matrix": [4, 0], "x": 6, "y": 0 },
  225. { "matrix": [4, 1], "x": 7, "y": 0 },
  226. { "matrix": [4, 2], "x": 8, "y": 0 },
  227. { "matrix": [4, 3], "x": 9, "y": 0 },
  228. { "matrix": [4, 4], "x": 10, "y": 0 },
  229. { "matrix": [4, 5], "x": 11, "y": 0 },
  230. { "matrix": [1, 0], "x": 0, "y": 1 },
  231. { "matrix": [1, 1], "x": 1, "y": 1 },
  232. { "matrix": [1, 2], "x": 2, "y": 1 },
  233. { "matrix": [1, 3], "x": 3, "y": 1 },
  234. { "matrix": [1, 4], "x": 4, "y": 1 },
  235. { "matrix": [1, 5], "x": 5, "y": 1 },
  236. { "matrix": [5, 0], "x": 6, "y": 1 },
  237. { "matrix": [5, 1], "x": 7, "y": 1 },
  238. { "matrix": [5, 2], "x": 8, "y": 1 },
  239. { "matrix": [5, 3], "x": 9, "y": 1 },
  240. { "matrix": [5, 4], "x": 10, "y": 1 },
  241. { "matrix": [5, 5], "x": 11, "y": 1 },
  242. { "matrix": [2, 0], "x": 0, "y": 2 },
  243. { "matrix": [2, 1], "x": 1, "y": 2 },
  244. { "matrix": [2, 2], "x": 2, "y": 2 },
  245. { "matrix": [2, 3], "x": 3, "y": 2 },
  246. { "matrix": [2, 4], "x": 4, "y": 2 },
  247. { "matrix": [2, 5], "x": 5, "y": 2 },
  248. { "matrix": [6, 0], "x": 6, "y": 2 },
  249. { "matrix": [6, 1], "x": 7, "y": 2 },
  250. { "matrix": [6, 2], "x": 8, "y": 2 },
  251. { "matrix": [6, 3], "x": 9, "y": 2 },
  252. { "matrix": [6, 4], "x": 10, "y": 2 },
  253. { "matrix": [6, 5], "x": 11, "y": 2 },
  254. { "matrix": [3, 0], "x": 0, "y": 3 },
  255. { "matrix": [3, 1], "x": 1, "y": 3 },
  256. { "matrix": [3, 2], "x": 2, "y": 3 },
  257. { "matrix": [7, 3], "x": 3, "y": 3 },
  258. { "matrix": [7, 4], "x": 4, "y": 3 },
  259. { "matrix": [7, 5], "x": 5, "y": 3 },
  260. { "matrix": [7, 1], "x": 6, "y": 3, "w": 2 },
  261. { "matrix": [7, 2], "x": 8, "y": 3 },
  262. { "matrix": [3, 3], "x": 9, "y": 3 },
  263. { "matrix": [3, 4], "x": 10, "y": 3 },
  264. { "matrix": [3, 5], "x": 11, "y": 3 }
  265. ]
  266. },
  267. "LAYOUT_planck_2x2u": {
  268. "layout": [
  269. { "matrix": [0, 0], "x": 0, "y": 0 },
  270. { "matrix": [0, 1], "x": 1, "y": 0 },
  271. { "matrix": [0, 2], "x": 2, "y": 0 },
  272. { "matrix": [0, 3], "x": 3, "y": 0 },
  273. { "matrix": [0, 4], "x": 4, "y": 0 },
  274. { "matrix": [0, 5], "x": 5, "y": 0 },
  275. { "matrix": [4, 0], "x": 6, "y": 0 },
  276. { "matrix": [4, 1], "x": 7, "y": 0 },
  277. { "matrix": [4, 2], "x": 8, "y": 0 },
  278. { "matrix": [4, 3], "x": 9, "y": 0 },
  279. { "matrix": [4, 4], "x": 10, "y": 0 },
  280. { "matrix": [4, 5], "x": 11, "y": 0 },
  281. { "matrix": [1, 0], "x": 0, "y": 1 },
  282. { "matrix": [1, 1], "x": 1, "y": 1 },
  283. { "matrix": [1, 2], "x": 2, "y": 1 },
  284. { "matrix": [1, 3], "x": 3, "y": 1 },
  285. { "matrix": [1, 4], "x": 4, "y": 1 },
  286. { "matrix": [1, 5], "x": 5, "y": 1 },
  287. { "matrix": [5, 0], "x": 6, "y": 1 },
  288. { "matrix": [5, 1], "x": 7, "y": 1 },
  289. { "matrix": [5, 2], "x": 8, "y": 1 },
  290. { "matrix": [5, 3], "x": 9, "y": 1 },
  291. { "matrix": [5, 4], "x": 10, "y": 1 },
  292. { "matrix": [5, 5], "x": 11, "y": 1 },
  293. { "matrix": [2, 0], "x": 0, "y": 2 },
  294. { "matrix": [2, 1], "x": 1, "y": 2 },
  295. { "matrix": [2, 2], "x": 2, "y": 2 },
  296. { "matrix": [2, 3], "x": 3, "y": 2 },
  297. { "matrix": [2, 4], "x": 4, "y": 2 },
  298. { "matrix": [2, 5], "x": 5, "y": 2 },
  299. { "matrix": [6, 0], "x": 6, "y": 2 },
  300. { "matrix": [6, 1], "x": 7, "y": 2 },
  301. { "matrix": [6, 2], "x": 8, "y": 2 },
  302. { "matrix": [6, 3], "x": 9, "y": 2 },
  303. { "matrix": [6, 4], "x": 10, "y": 2 },
  304. { "matrix": [6, 5], "x": 11, "y": 2 },
  305. { "matrix": [3, 0], "x": 0, "y": 3 },
  306. { "matrix": [3, 1], "x": 1, "y": 3 },
  307. { "matrix": [3, 2], "x": 2, "y": 3 },
  308. { "matrix": [7, 3], "x": 3, "y": 3 },
  309. { "matrix": [7, 5], "x": 4, "y": 3, "w": 2 },
  310. { "matrix": [7, 1], "x": 6, "y": 3, "w": 2 },
  311. { "matrix": [7, 2], "x": 8, "y": 3 },
  312. { "matrix": [3, 3], "x": 9, "y": 3 },
  313. { "matrix": [3, 4], "x": 10, "y": 3 },
  314. { "matrix": [3, 5], "x": 11, "y": 3 }
  315. ]
  316. }
  317. }
  318. }