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.

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