info.json 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238
  1. {
  2. "manufacturer": "Proto[Typist]",
  3. "keyboard_name": "PT-60",
  4. "maintainer": "Anjheos",
  5. "bootloader": "stm32-dfu",
  6. "diode_direction": "COL2ROW",
  7. "features": {
  8. "bootmagic": true,
  9. "command": false,
  10. "console": false,
  11. "extrakey": true,
  12. "mousekey": true,
  13. "nkro": true
  14. },
  15. "matrix_pins": {
  16. "cols": ["B12", "B14", "A8", "A9", "A15", "B3", "B7", "B4", "B5", "B6", "A4", "A5", "A6", "A7" ],
  17. "rows": ["B0", "B1", "B2", "B10", "B11"]
  18. },
  19. "processor": "STM32F303",
  20. "url": "",
  21. "usb": {
  22. "device_version": "1.0.0",
  23. "pid": "0x0001",
  24. "vid": "0x4A46"
  25. },
  26. "community_layouts": ["60_iso", "60_ansi"],
  27. "layouts": {
  28. "LAYOUT_all": {
  29. "layout": [
  30. { "matrix": [ 0, 0 ], "label": "\u00ac", "x": 0, "y": 0 },
  31. { "matrix": [ 0, 1 ], "label": "!", "x": 1, "y": 0 },
  32. { "matrix": [ 0, 2], "label": "\"", "x": 2, "y": 0 },
  33. { "matrix": [ 0, 3], "label": "\u00a3", "x": 3, "y": 0 },
  34. { "matrix": [ 0, 4], "label": "$", "x": 4, "y": 0 },
  35. { "matrix": [ 0, 5], "label": "%", "x": 5, "y": 0 },
  36. { "matrix": [ 0, 6], "label": "^", "x": 6, "y": 0 },
  37. { "matrix": [ 0, 7], "label": "&", "x": 7, "y": 0 },
  38. { "matrix": [ 0, 8], "label": "*", "x": 8, "y": 0 },
  39. { "matrix": [ 0, 9], "label": "(", "x": 9, "y": 0 },
  40. { "matrix": [ 0, 10], "label": ")", "x": 10, "y": 0 },
  41. { "matrix": [ 0, 11], "label": "_", "x": 11, "y": 0 },
  42. { "matrix": [ 0, 12], "label": "+", "x": 12, "y": 0 },
  43. { "matrix": [ 0, 13], "label": "Back", "x": 13, "y": 0 },
  44. { "matrix": [ 2, 13], "label": "Delete", "x": 14, "y": 0 },
  45. { "matrix": [ 1, 0], "label": "Tab", "w": 1.5, "x": 0, "y": 1 },
  46. { "matrix": [ 1, 1], "label": "Q", "x": 1.5, "y": 1 },
  47. { "matrix": [ 1, 2], "label": "W", "x": 2.5, "y": 1 },
  48. { "matrix": [ 1, 3], "label": "E", "x": 3.5, "y": 1 },
  49. { "matrix": [ 1, 4], "label": "R", "x": 4.5, "y": 1 },
  50. { "matrix": [ 1, 5], "label": "T", "x": 5.5, "y": 1 },
  51. { "matrix": [ 1, 6], "label": "Y", "x": 6.5, "y": 1 },
  52. { "matrix": [ 1, 7], "label": "U", "x": 7.5, "y": 1 },
  53. { "matrix": [ 1, 8], "label": "I", "x": 8.5, "y": 1 },
  54. { "matrix": [ 1, 9], "label": "O", "x": 9.5, "y": 1 },
  55. { "matrix": [ 1, 10], "label": "P", "x": 10.5, "y": 1 },
  56. { "matrix": [ 1, 11], "label": "{", "x": 11.5, "y": 1 },
  57. { "matrix": [ 1, 12], "label": "}", "x": 12.5, "y": 1 },
  58. { "matrix": [ 1, 13], "h": 2, "label": "Enter", "w": 1.25, "x": 13.75, "y": 1 },
  59. { "matrix": [ 2, 0], "label": "Caps Lock", "w": 1.75, "x": 0, "y": 2 },
  60. { "matrix": [ 2, 1], "label": "A", "x": 1.75, "y": 2 },
  61. { "matrix": [ 2, 2], "label": "S", "x": 2.75, "y": 2 },
  62. { "matrix": [ 2, 3], "label": "D", "x": 3.75, "y": 2 },
  63. { "matrix": [ 2, 4], "label": "F", "x": 4.75, "y": 2 },
  64. { "matrix": [ 2, 5], "label": "G", "x": 5.75, "y": 2 },
  65. { "matrix": [ 2, 6], "label": "H", "x": 6.75, "y": 2 },
  66. { "matrix": [ 2, 7], "label": "J", "x": 7.75, "y": 2 },
  67. { "matrix": [ 2, 8], "label": "K", "x": 8.75, "y": 2 },
  68. { "matrix": [ 2, 9], "label": "L", "x": 9.75, "y": 2 },
  69. { "matrix": [ 2, 10], "label": ":", "x": 10.75, "y": 2 },
  70. { "matrix": [ 2, 11], "label": "@", "x": 11.75, "y": 2 },
  71. { "matrix": [ 2, 12], "label": "~", "x": 12.75, "y": 2 },
  72. { "matrix": [ 3, 0], "label": "Shift", "w": 1.25, "x": 0, "y": 3 },
  73. { "matrix": [ 3, 1], "label": "|", "x": 1.25, "y": 3 },
  74. { "matrix": [ 3, 2], "label": "Z", "x": 2.25, "y": 3 },
  75. { "matrix": [ 3, 3], "label": "X", "x": 3.25, "y": 3 },
  76. { "matrix": [ 3, 4], "label": "C", "x": 4.25, "y": 3 },
  77. { "matrix": [ 3, 5], "label": "V", "x": 5.25, "y": 3 },
  78. { "matrix": [ 3, 6], "label": "B", "x": 6.25, "y": 3 },
  79. { "matrix": [ 3, 7], "label": "N", "x": 7.25, "y": 3 },
  80. { "matrix": [ 3, 8], "label": "M", "x": 8.25, "y": 3 },
  81. { "matrix": [ 3, 9], "label": "<", "x": 9.25, "y": 3 },
  82. { "matrix": [ 3, 10], "label": ">", "x": 10.25, "y": 3 },
  83. { "matrix": [ 3, 11], "label": "?", "x": 11.25, "y": 3 },
  84. { "matrix": [ 3, 12], "label": "Shift", "w": 1.75, "x": 12.25, "y": 3 },
  85. { "matrix": [ 3, 13], "label": "Fn", "x": 14, "y": 3 },
  86. { "matrix": [ 4, 0], "label": "Ctrl", "w": 1.25, "x": 0, "y": 4 },
  87. { "matrix": [ 4, 1], "label": "Win", "w": 1.25, "x": 1.25, "y": 4 },
  88. { "matrix": [ 4, 2], "label": "Alt", "w": 1.25, "x": 2.5, "y": 4 },
  89. { "matrix": [ 4, 6], "w": 6.25, "x": 3.75, "y": 4 },
  90. { "matrix": [ 4, 10], "label": "AltGr", "w": 1.25, "x": 10, "y": 4 },
  91. { "matrix": [ 4, 11], "label": "Win", "w": 1.25, "x": 11.25, "y": 4 },
  92. { "matrix": [ 4, 12], "label": "Fn", "w": 1.25, "x": 12.5, "y": 4 },
  93. { "matrix": [ 4, 13], "label": "Ctrl", "w": 1.25, "x": 13.75, "y": 4 }
  94. ]
  95. },
  96. "LAYOUT_60_iso": {
  97. "layout": [
  98. { "matrix": [ 0, 0 ], "label": "\u00ac", "x": 0, "y": 0 },
  99. { "matrix": [ 0, 1 ], "label": "!", "x": 1, "y": 0 },
  100. { "matrix": [ 0, 2], "label": "\"", "x": 2, "y": 0 },
  101. { "matrix": [ 0, 3], "label": "\u00a3", "x": 3, "y": 0 },
  102. { "matrix": [ 0, 4], "label": "$", "x": 4, "y": 0 },
  103. { "matrix": [ 0, 5], "label": "%", "x": 5, "y": 0 },
  104. { "matrix": [ 0, 6], "label": "^", "x": 6, "y": 0 },
  105. { "matrix": [ 0, 7], "label": "&", "x": 7, "y": 0 },
  106. { "matrix": [ 0, 8], "label": "*", "x": 8, "y": 0 },
  107. { "matrix": [ 0, 9], "label": "(", "x": 9, "y": 0 },
  108. { "matrix": [ 0, 10], "label": ")", "x": 10, "y": 0 },
  109. { "matrix": [ 0, 11], "label": "_", "x": 11, "y": 0 },
  110. { "matrix": [ 0, 12], "label": "+", "x": 12, "y": 0 },
  111. { "matrix": [ 0, 13], "label": "Back", "w": 2, "x": 13, "y": 0 },
  112. { "matrix": [ 1, 0], "label": "Tab", "w": 1.5, "x": 0, "y": 1 },
  113. { "matrix": [ 1, 1], "label": "Q", "x": 1.5, "y": 1 },
  114. { "matrix": [ 1, 2], "label": "W", "x": 2.5, "y": 1 },
  115. { "matrix": [ 1, 3], "label": "E", "x": 3.5, "y": 1 },
  116. { "matrix": [ 1, 4], "label": "R", "x": 4.5, "y": 1 },
  117. { "matrix": [ 1, 5], "label": "T", "x": 5.5, "y": 1 },
  118. { "matrix": [ 1, 6], "label": "Y", "x": 6.5, "y": 1 },
  119. { "matrix": [ 1, 7], "label": "U", "x": 7.5, "y": 1 },
  120. { "matrix": [ 1, 8], "label": "I", "x": 8.5, "y": 1 },
  121. { "matrix": [ 1, 9], "label": "O", "x": 9.5, "y": 1 },
  122. { "matrix": [ 1, 10], "label": "P", "x": 10.5, "y": 1 },
  123. { "matrix": [ 1, 11], "label": "{", "x": 11.5, "y": 1 },
  124. { "matrix": [ 1, 12], "label": "}", "x": 12.5, "y": 1 },
  125. { "matrix": [ 1, 13], "label": "Enter", "h": 2, "w": 1.25, "x": 13.75, "y": 1 },
  126. { "matrix": [ 2, 0], "label": "Caps Lock", "w": 1.75, "x": 0, "y": 2 },
  127. { "matrix": [ 2, 1], "label": "A", "x": 1.75, "y": 2 },
  128. { "matrix": [ 2, 2], "label": "S", "x": 2.75, "y": 2 },
  129. { "matrix": [ 2, 3], "label": "D", "x": 3.75, "y": 2 },
  130. { "matrix": [ 2, 4], "label": "F", "x": 4.75, "y": 2 },
  131. { "matrix": [ 2, 5], "label": "G", "x": 5.75, "y": 2 },
  132. { "matrix": [ 2, 6], "label": "H", "x": 6.75, "y": 2 },
  133. { "matrix": [ 2, 7], "label": "J", "x": 7.75, "y": 2 },
  134. { "matrix": [ 2, 8], "label": "K", "x": 8.75, "y": 2 },
  135. { "matrix": [ 2, 9], "label": "L", "x": 9.75, "y": 2 },
  136. { "matrix": [ 2, 10], "label": ":", "x": 10.75, "y": 2 },
  137. { "matrix": [ 2, 11], "label": "@", "x": 11.75, "y": 2 },
  138. { "matrix": [ 2, 12], "label": "~", "x": 12.75, "y": 2 },
  139. { "matrix": [ 3, 0], "label": "Shift", "w": 1.25, "x": 0, "y": 3 },
  140. { "matrix": [ 3, 1], "label": "|", "x": 1.25, "y": 3 },
  141. { "matrix": [ 3, 2], "label": "Z", "x": 2.25, "y": 3 },
  142. { "matrix": [ 3, 3], "label": "X", "x": 3.25, "y": 3 },
  143. { "matrix": [ 3, 4], "label": "C", "x": 4.25, "y": 3 },
  144. { "matrix": [ 3, 5], "label": "V", "x": 5.25, "y": 3 },
  145. { "matrix": [ 3, 6], "label": "B", "x": 6.25, "y": 3 },
  146. { "matrix": [ 3, 7], "label": "N", "x": 7.25, "y": 3 },
  147. { "matrix": [ 3, 8], "label": "M", "x": 8.25, "y": 3 },
  148. { "matrix": [ 3, 9], "label": "<", "x": 9.25, "y": 3 },
  149. { "matrix": [ 3, 10], "label": ">", "x": 10.25, "y": 3 },
  150. { "matrix": [ 3, 11], "label": "?", "x": 11.25, "y": 3 },
  151. { "matrix": [ 3, 12], "label": "Shift", "w": 2.75, "x": 12.25, "y": 3 },
  152. { "matrix": [ 4, 0], "label": "Ctrl", "w": 1.25, "x": 0, "y": 4 },
  153. { "matrix": [ 4, 1], "label": "Win", "w": 1.25, "x": 1.25, "y": 4 },
  154. { "matrix": [ 4, 2], "label": "Alt", "w": 1.25, "x": 2.5, "y": 4 },
  155. { "matrix": [ 4, 6], "w": 6.25, "x": 3.75, "y": 4 },
  156. { "matrix": [ 4, 10], "label": "AltGr", "w": 1.25, "x": 10, "y": 4 },
  157. { "matrix": [ 4, 11], "label": "Win", "w": 1.25, "x": 11.25, "y": 4 },
  158. { "matrix": [ 4, 12], "label": "Fn", "w": 1.25, "x": 12.5, "y": 4 },
  159. { "matrix": [ 4, 13], "label": "Ctrl", "w": 1.25, "x": 13.75, "y": 4 }
  160. ]
  161. },
  162. "LAYOUT_60_ansi": {
  163. "layout": [
  164. { "matrix": [ 0, 0 ], "label": "\u00ac", "x": 0, "y": 0 },
  165. { "matrix": [ 0, 1 ], "label": "!", "x": 1, "y": 0 },
  166. { "matrix": [ 0, 2], "label": "\"", "x": 2, "y": 0 },
  167. { "matrix": [ 0, 3], "label": "\u00a3", "x": 3, "y": 0 },
  168. { "matrix": [ 0, 4], "label": "$", "x": 4, "y": 0 },
  169. { "matrix": [ 0, 5], "label": "%", "x": 5, "y": 0 },
  170. { "matrix": [ 0, 6], "label": "^", "x": 6, "y": 0 },
  171. { "matrix": [ 0, 7], "label": "&", "x": 7, "y": 0 },
  172. { "matrix": [ 0, 8], "label": "*", "x": 8, "y": 0 },
  173. { "matrix": [ 0, 9], "label": "(", "x": 9, "y": 0 },
  174. { "matrix": [ 0, 10], "label": ")", "x": 10, "y": 0 },
  175. { "matrix": [ 0, 11], "label": "_", "x": 11, "y": 0 },
  176. { "matrix": [ 0, 12], "label": "+", "x": 12, "y": 0 },
  177. { "matrix": [ 0, 13], "label": "Back", "w": 2, "x": 13, "y": 0 },
  178. { "matrix": [ 1, 0], "label": "Tab", "w": 1.5, "x": 0, "y": 1 },
  179. { "matrix": [ 1, 1], "label": "Q", "x": 1.5, "y": 1 },
  180. { "matrix": [ 1, 2], "label": "W", "x": 2.5, "y": 1 },
  181. { "matrix": [ 1, 3], "label": "E", "x": 3.5, "y": 1 },
  182. { "matrix": [ 1, 4], "label": "R", "x": 4.5, "y": 1 },
  183. { "matrix": [ 1, 5], "label": "T", "x": 5.5, "y": 1 },
  184. { "matrix": [ 1, 6], "label": "Y", "x": 6.5, "y": 1 },
  185. { "matrix": [ 1, 7], "label": "U", "x": 7.5, "y": 1 },
  186. { "matrix": [ 1, 8], "label": "I", "x": 8.5, "y": 1 },
  187. { "matrix": [ 1, 9], "label": "O", "x": 9.5, "y": 1 },
  188. { "matrix": [ 1, 10], "label": "P", "x": 10.5, "y": 1 },
  189. { "matrix": [ 1, 11], "label": "{", "x": 11.5, "y": 1 },
  190. { "matrix": [ 1, 12], "label": "}", "x": 12.5, "y": 1 },
  191. { "matrix": [ 1, 13], "label": "|", "w": 1.5, "x": 13.5, "y": 1 },
  192. { "matrix": [ 2, 0], "label": "Caps Lock", "w": 1.75, "x": 0, "y": 2 },
  193. { "matrix": [ 2, 1], "label": "A", "x": 1.75, "y": 2 },
  194. { "matrix": [ 2, 2], "label": "S", "x": 2.75, "y": 2 },
  195. { "matrix": [ 2, 3], "label": "D", "x": 3.75, "y": 2 },
  196. { "matrix": [ 2, 4], "label": "F", "x": 4.75, "y": 2 },
  197. { "matrix": [ 2, 5], "label": "G", "x": 5.75, "y": 2 },
  198. { "matrix": [ 2, 6], "label": "H", "x": 6.75, "y": 2 },
  199. { "matrix": [ 2, 7], "label": "J", "x": 7.75, "y": 2 },
  200. { "matrix": [ 2, 8], "label": "K", "x": 8.75, "y": 2 },
  201. { "matrix": [ 2, 9], "label": "L", "x": 9.75, "y": 2 },
  202. { "matrix": [ 2, 10], "label": ":", "x": 10.75, "y": 2 },
  203. { "matrix": [ 2, 11], "label": "'", "x": 11.75, "y": 2 },
  204. { "matrix": [ 2, 12], "label": "Enter", "w": 2.25, "x": 12.75, "y": 2 },
  205. { "matrix": [ 3, 0], "label": "Shift", "w": 2.25, "x": 0, "y": 3 },
  206. { "matrix": [ 3, 2], "label": "Z", "x": 2.25, "y": 3 },
  207. { "matrix": [ 3, 3], "label": "X", "x": 3.25, "y": 3 },
  208. { "matrix": [ 3, 4], "label": "C", "x": 4.25, "y": 3 },
  209. { "matrix": [ 3, 5], "label": "V", "x": 5.25, "y": 3 },
  210. { "matrix": [ 3, 6], "label": "B", "x": 6.25, "y": 3 },
  211. { "matrix": [ 3, 7], "label": "N", "x": 7.25, "y": 3 },
  212. { "matrix": [ 3, 8], "label": "M", "x": 8.25, "y": 3 },
  213. { "matrix": [ 3, 9], "label": "<", "x": 9.25, "y": 3 },
  214. { "matrix": [ 3, 10], "label": ">", "x": 10.25, "y": 3 },
  215. { "matrix": [ 3, 11], "label": "?", "x": 11.25, "y": 3 },
  216. { "matrix": [ 3, 12], "label": "Shift", "w": 2.75, "x": 12.25, "y": 3 },
  217. { "matrix": [ 4, 0], "label": "Ctrl", "w": 1.25, "x": 0, "y": 4 },
  218. { "matrix": [ 4, 1], "label": "Win", "w": 1.25, "x": 1.25, "y": 4 },
  219. { "matrix": [ 4, 2], "label": "Alt", "w": 1.25, "x": 2.5, "y": 4 },
  220. { "matrix": [ 4, 6], "w": 6.25, "x": 3.75, "y": 4 },
  221. { "matrix": [ 4, 10], "label": "AltGr", "w": 1.25, "x": 10, "y": 4 },
  222. { "matrix": [ 4, 11], "label": "Win", "w": 1.25, "x": 11.25, "y": 4 },
  223. { "matrix": [ 4, 12], "label": "Fn", "w": 1.25, "x": 12.5, "y": 4 },
  224. { "matrix": [ 4, 13], "label": "Ctrl", "w": 1.25, "x": 13.75, "y": 4 }
  225. ]
  226. }
  227. }
  228. }