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.

147 lines
6.5 KiB

  1. {
  2. "keyboard_name": "pi40",
  3. "manufacturer": "1upkeyboards",
  4. "maintainer": "ziptyze",
  5. "processor": "RP2040",
  6. "bootloader": "rp2040",
  7. "usb": {
  8. "vid": "0x6F75",
  9. "pid": "0x5600",
  10. "device_version": "1.1.0"
  11. },
  12. "diode_direction": "COL2ROW",
  13. "dynamic_keymap": {
  14. "layer_count": 10
  15. },
  16. "ws2812": {
  17. "pin": "GP0",
  18. "driver": "vendor"
  19. },
  20. "features": {
  21. "bootmagic": true,
  22. "command": false,
  23. "console": false,
  24. "extrakey": true,
  25. "mousekey": true,
  26. "nkro": false,
  27. "rgb_matrix": true
  28. },
  29. "matrix_pins": {
  30. "rows": ["GP21", "GP20", "GP19", "GP18"],
  31. "cols": ["GP1", "GP2", "GP3", "GP4", "GP5", "GP6", "GP7", "GP8", "GP9", "GP10", "GP11", "GP12", "GP22"]
  32. },
  33. "encoder": {
  34. "enabled": true,
  35. "rotary": [
  36. {"pin_a": "GP14", "pin_b": "GP13"}
  37. ]
  38. },
  39. "rgb_matrix": {
  40. "driver": "ws2812",
  41. "layout": [
  42. {"flags": 1, "matrix": [0, 0], "x": 9, "y": 8},
  43. {"flags": 4, "matrix": [0, 1], "x": 28, "y": 8},
  44. {"flags": 4, "matrix": [0, 2], "x": 46, "y": 8},
  45. {"flags": 4, "matrix": [0, 3], "x": 65, "y": 8},
  46. {"flags": 4, "matrix": [0, 4], "x": 84, "y": 8},
  47. {"flags": 4, "matrix": [0, 5], "x": 102, "y": 8},
  48. {"flags": 4, "matrix": [0, 6], "x": 121, "y": 8},
  49. {"flags": 4, "matrix": [0, 7], "x": 140, "y": 8},
  50. {"flags": 4, "matrix": [0, 8], "x": 159, "y": 8},
  51. {"flags": 4, "matrix": [0, 9], "x": 177, "y": 8},
  52. {"flags": 4, "matrix": [0, 10], "x": 196, "y": 8},
  53. {"flags": 1, "matrix": [0, 11], "x": 215, "y": 8},
  54. {"flags": 1, "matrix": [1, 11], "x": 215, "y": 24},
  55. {"flags": 4, "matrix": [1, 10], "x": 196, "y": 24},
  56. {"flags": 4, "matrix": [1, 9], "x": 177, "y": 24},
  57. {"flags": 4, "matrix": [1, 8], "x": 159, "y": 24},
  58. {"flags": 4, "matrix": [1, 7], "x": 140, "y": 24},
  59. {"flags": 4, "matrix": [1, 6], "x": 121, "y": 24},
  60. {"flags": 4, "matrix": [1, 5], "x": 102, "y": 24},
  61. {"flags": 4, "matrix": [1, 4], "x": 84, "y": 24},
  62. {"flags": 4, "matrix": [1, 3], "x": 65, "y": 24},
  63. {"flags": 4, "matrix": [1, 2], "x": 46, "y": 24},
  64. {"flags": 4, "matrix": [1, 1], "x": 28, "y": 24},
  65. {"flags": 1, "matrix": [1, 0], "x": 9, "y": 24},
  66. {"flags": 1, "matrix": [2, 0], "x": 9, "y": 40},
  67. {"flags": 4, "matrix": [2, 1], "x": 28, "y": 40},
  68. {"flags": 4, "matrix": [2, 2], "x": 46, "y": 40},
  69. {"flags": 4, "matrix": [2, 3], "x": 65, "y": 40},
  70. {"flags": 4, "matrix": [2, 4], "x": 84, "y": 40},
  71. {"flags": 4, "matrix": [2, 5], "x": 102, "y": 40},
  72. {"flags": 4, "matrix": [2, 6], "x": 121, "y": 40},
  73. {"flags": 4, "matrix": [2, 7], "x": 140, "y": 40},
  74. {"flags": 4, "matrix": [2, 8], "x": 159, "y": 40},
  75. {"flags": 4, "matrix": [2, 9], "x": 177, "y": 40},
  76. {"flags": 4, "matrix": [2, 10], "x": 196, "y": 40},
  77. {"flags": 1, "matrix": [2, 11], "x": 215, "y": 40},
  78. {"flags": 1, "matrix": [3, 11], "x": 215, "y": 56},
  79. {"flags": 1, "matrix": [3, 10], "x": 196, "y": 56},
  80. {"flags": 1, "matrix": [3, 9], "x": 177, "y": 56},
  81. {"flags": 1, "matrix": [3, 8], "x": 159, "y": 56},
  82. {"flags": 1, "matrix": [3, 7], "x": 140, "y": 56},
  83. {"flags": 1, "matrix": [3, 6], "x": 121, "y": 56},
  84. {"flags": 1, "matrix": [3, 4], "x": 84, "y": 56},
  85. {"flags": 1, "matrix": [3, 3], "x": 65, "y": 56},
  86. {"flags": 1, "matrix": [3, 2], "x": 46, "y": 56},
  87. {"flags": 1, "matrix": [3, 1], "x": 28, "y": 56},
  88. {"flags": 1, "matrix": [3, 0], "x": 9, "y": 56},
  89. {"flags": 1, "matrix": [3, 5], "x": 102, "y": 56}
  90. ]
  91. },
  92. "layouts": {
  93. "LAYOUT_ortho_4x12": {
  94. "layout": [
  95. {"matrix": [0, 12], "x": 11, "y": 0},
  96. {"matrix": [0, 0], "x": 0, "y": 1},
  97. {"matrix": [0, 1], "x": 1, "y": 1},
  98. {"matrix": [0, 2], "x": 2, "y": 1},
  99. {"matrix": [0, 3], "x": 3, "y": 1},
  100. {"matrix": [0, 4], "x": 4, "y": 1},
  101. {"matrix": [0, 5], "x": 5, "y": 1},
  102. {"matrix": [0, 6], "x": 6, "y": 1},
  103. {"matrix": [0, 7], "x": 7, "y": 1},
  104. {"matrix": [0, 8], "x": 8, "y": 1},
  105. {"matrix": [0, 9], "x": 9, "y": 1},
  106. {"matrix": [0, 10], "x": 10, "y": 1},
  107. {"matrix": [0, 11], "x": 11, "y": 1},
  108. {"matrix": [1, 0], "x": 0, "y": 2},
  109. {"matrix": [1, 1], "x": 1, "y": 2},
  110. {"matrix": [1, 2], "x": 2, "y": 2},
  111. {"matrix": [1, 3], "x": 3, "y": 2},
  112. {"matrix": [1, 4], "x": 4, "y": 2},
  113. {"matrix": [1, 5], "x": 5, "y": 2},
  114. {"matrix": [1, 6], "x": 6, "y": 2},
  115. {"matrix": [1, 7], "x": 7, "y": 2},
  116. {"matrix": [1, 8], "x": 8, "y": 2},
  117. {"matrix": [1, 9], "x": 9, "y": 2},
  118. {"matrix": [1, 10], "x": 10, "y": 2},
  119. {"matrix": [1, 11], "x": 11, "y": 2},
  120. {"matrix": [2, 0], "x": 0, "y": 3},
  121. {"matrix": [2, 1], "x": 1, "y": 3},
  122. {"matrix": [2, 2], "x": 2, "y": 3},
  123. {"matrix": [2, 3], "x": 3, "y": 3},
  124. {"matrix": [2, 4], "x": 4, "y": 3},
  125. {"matrix": [2, 5], "x": 5, "y": 3},
  126. {"matrix": [2, 6], "x": 6, "y": 3},
  127. {"matrix": [2, 7], "x": 7, "y": 3},
  128. {"matrix": [2, 8], "x": 8, "y": 3},
  129. {"matrix": [2, 9], "x": 9, "y": 3},
  130. {"matrix": [2, 10], "x": 10, "y": 3},
  131. {"matrix": [2, 11], "x": 11, "y": 3},
  132. {"matrix": [3, 0], "x": 0, "y": 4},
  133. {"matrix": [3, 1], "x": 1, "y": 4},
  134. {"matrix": [3, 2], "x": 2, "y": 4},
  135. {"matrix": [3, 3], "x": 3, "y": 4},
  136. {"matrix": [3, 4], "x": 4, "y": 4},
  137. {"matrix": [3, 5], "x": 5, "y": 4},
  138. {"matrix": [3, 6], "x": 6, "y": 4},
  139. {"matrix": [3, 7], "x": 7, "y": 4},
  140. {"matrix": [3, 8], "x": 8, "y": 4},
  141. {"matrix": [3, 9], "x": 9, "y": 4},
  142. {"matrix": [3, 10], "x": 10, "y": 4},
  143. {"matrix": [3, 11], "x": 11, "y": 4}
  144. ]
  145. }
  146. }
  147. }