logo

qmk_firmware

custom branch of QMK firmware git clone https://anongit.hacktivis.me/git/qmk_firmware.git

keyboard.json (7752B)


  1. {
  2. "manufacturer": "Controller Works",
  3. "keyboard_name": "city42",
  4. "maintainer": "controller-works",
  5. "bootloader": "rp2040",
  6. "build": {
  7. "lto": true
  8. },
  9. "diode_direction": "COL2ROW",
  10. "features": {
  11. "bootmagic": true,
  12. "extrakey": true,
  13. "mousekey": true,
  14. "nkro": true,
  15. "rgb_matrix": true,
  16. "pointing_device": true
  17. },
  18. "matrix_pins": {
  19. "cols": ["GP28", "GP27", "GP26", "GP25", "GP24", "GP23", "GP0", "GP1", "GP2", "GP3", "GP4", "GP5"],
  20. "rows": ["GP12", "GP13", "GP14", "GP15"]
  21. },
  22. "processor": "RP2040",
  23. "rgb_matrix": {
  24. "animations": {
  25. "alphas_mods": true,
  26. "gradient_up_down": true,
  27. "gradient_left_right": true,
  28. "breathing": true,
  29. "band_sat": true,
  30. "band_val": true,
  31. "band_pinwheel_sat": true,
  32. "band_pinwheel_val": true,
  33. "band_spiral_sat": true,
  34. "band_spiral_val": true,
  35. "cycle_all": true,
  36. "cycle_left_right": true,
  37. "cycle_up_down": true,
  38. "cycle_out_in": true,
  39. "cycle_out_in_dual": true,
  40. "rainbow_moving_chevron": true,
  41. "cycle_pinwheel": true,
  42. "cycle_spiral": true,
  43. "dual_beacon": true,
  44. "rainbow_beacon": true,
  45. "rainbow_pinwheels": true,
  46. "raindrops": true,
  47. "jellybean_raindrops": true,
  48. "hue_breathing": true,
  49. "hue_pendulum": true,
  50. "hue_wave": true,
  51. "pixel_fractal": true,
  52. "pixel_flow": true,
  53. "pixel_rain": true,
  54. "typing_heatmap": true,
  55. "digital_rain": true,
  56. "solid_reactive_simple": true,
  57. "solid_reactive": true,
  58. "solid_reactive_wide": true,
  59. "solid_reactive_multiwide": true,
  60. "solid_reactive_cross": true,
  61. "solid_reactive_multicross": true,
  62. "solid_reactive_nexus": true,
  63. "solid_reactive_multinexus": true,
  64. "splash": true,
  65. "multisplash": true,
  66. "solid_splash": true,
  67. "solid_multisplash": true
  68. },
  69. "driver": "ws2812",
  70. "layout": [
  71. {"matrix": [0, 5], "x": 80, "y": 17, "flags": 4},
  72. {"matrix": [0, 4], "x": 66, "y": 11, "flags": 4},
  73. {"matrix": [0, 3], "x": 52, "y": 6, "flags": 4},
  74. {"matrix": [0, 2], "x": 37, "y": 4, "flags": 4},
  75. {"matrix": [0, 1], "x": 22, "y": 4, "flags": 4},
  76. {"matrix": [0, 0], "x": 8, "y": 0, "flags": 1},
  77. {"matrix": [1, 0], "x": 4, "y": 13, "flags": 1},
  78. {"matrix": [1, 1], "x": 18, "y": 17, "flags": 4},
  79. {"matrix": [1, 2], "x": 34, "y": 17, "flags": 4},
  80. {"matrix": [1, 3], "x": 49, "y": 18, "flags": 4},
  81. {"matrix": [1, 4], "x": 63, "y": 24, "flags": 4},
  82. {"matrix": [1, 5], "x": 76, "y": 29, "flags": 4},
  83. {"matrix": [2, 5], "x": 73, "y": 43, "flags": 4},
  84. {"matrix": [2, 4], "x": 59, "y": 37, "flags": 4},
  85. {"matrix": [2, 3], "x": 45, "y": 32, "flags": 4},
  86. {"matrix": [2, 2], "x": 30, "y": 30, "flags": 4},
  87. {"matrix": [2, 1], "x": 15, "y": 29, "flags": 4},
  88. {"matrix": [2, 0], "x": 0, "y": 26, "flags": 1},
  89. {"matrix": [3, 3], "x": 49, "y": 50, "flags": 1},
  90. {"matrix": [3, 4], "x": 66, "y": 56, "flags": 1},
  91. {"matrix": [3, 5], "x": 76, "y": 64, "flags": 1},
  92. {"matrix": [3, 6], "x": 148, "y": 64, "flags": 1},
  93. {"matrix": [3, 7], "x": 158, "y": 56, "flags": 1},
  94. {"matrix": [3, 8], "x": 175, "y": 50, "flags": 1},
  95. {"matrix": [2, 11], "x": 224, "y": 26, "flags": 1},
  96. {"matrix": [2, 10], "x": 209, "y": 29, "flags": 4},
  97. {"matrix": [2, 9], "x": 193, "y": 29, "flags": 4},
  98. {"matrix": [2, 8], "x": 179, "y": 32, "flags": 4},
  99. {"matrix": [2, 7], "x": 165, "y": 37, "flags": 4},
  100. {"matrix": [2, 6], "x": 151, "y": 43, "flags": 4},
  101. {"matrix": [1, 6], "x": 148, "y": 30, "flags": 4},
  102. {"matrix": [1, 7], "x": 161, "y": 24, "flags": 4},
  103. {"matrix": [1, 8], "x": 175, "y": 18, "flags": 4},
  104. {"matrix": [1, 9], "x": 190, "y": 17, "flags": 4},
  105. {"matrix": [1, 10], "x": 206, "y": 17, "flags": 4},
  106. {"matrix": [1, 11], "x": 220, "y": 13, "flags": 1},
  107. {"matrix": [0, 11], "x": 217, "y": 0, "flags": 1},
  108. {"matrix": [0, 10], "x": 202, "y": 4, "flags": 4},
  109. {"matrix": [0, 9], "x": 187, "y": 4, "flags": 4},
  110. {"matrix": [0, 8], "x": 172, "y": 6, "flags": 4},
  111. {"matrix": [0, 7], "x": 158, "y": 11, "flags": 4},
  112. {"matrix": [0, 6], "x": 144, "y": 17, "flags": 4}
  113. ],
  114. "max_brightness": 150
  115. },
  116. "tags": ["RP2040", "choc v1", "choc spaced"],
  117. "url": "https://controller.works/products/city42-ergonomic-keyboard",
  118. "usb": {
  119. "device_version": "1.0.0",
  120. "pid": "0x0005",
  121. "vid": "0x4357"
  122. },
  123. "ws2812": {
  124. "driver": "vendor",
  125. "pin": "GP29"
  126. },
  127. "community_layouts": ["split_3x6_3"],
  128. "layouts": {
  129. "LAYOUT_split_3x6_3": {
  130. "layout": [
  131. {"matrix": [0, 0], "x": 0, "y": 0.4},
  132. {"matrix": [0, 1], "x": 1, "y": 0.4},
  133. {"matrix": [0, 2], "x": 2, "y": 0.125},
  134. {"matrix": [0, 3], "x": 3, "y": 0},
  135. {"matrix": [0, 4], "x": 4, "y": 0.125},
  136. {"matrix": [0, 5], "x": 5, "y": 0.25},
  137. {"matrix": [0, 6], "x": 8, "y": 0.25},
  138. {"matrix": [0, 7], "x": 9, "y": 0.125},
  139. {"matrix": [0, 8], "x": 10, "y": 0},
  140. {"matrix": [0, 9], "x": 11, "y": 0.125},
  141. {"matrix": [0, 10], "x": 12, "y": 0.4},
  142. {"matrix": [0, 11], "x": 13, "y": 0.4},
  143. {"matrix": [1, 0], "x": 0, "y": 1.4},
  144. {"matrix": [1, 1], "x": 1, "y": 1.4},
  145. {"matrix": [1, 2], "x": 2, "y": 1.125},
  146. {"matrix": [1, 3], "x": 3, "y": 1},
  147. {"matrix": [1, 4], "x": 4, "y": 1.125},
  148. {"matrix": [1, 5], "x": 5, "y": 1.25},
  149. {"matrix": [1, 6], "x": 8, "y": 1.25},
  150. {"matrix": [1, 7], "x": 9, "y": 1.125},
  151. {"matrix": [1, 8], "x": 10, "y": 1},
  152. {"matrix": [1, 9], "x": 11, "y": 1.125},
  153. {"matrix": [1, 10], "x": 12, "y": 1.4},
  154. {"matrix": [1, 11], "x": 13, "y": 1.4},
  155. {"matrix": [2, 0], "x": 0, "y": 2.4},
  156. {"matrix": [2, 1], "x": 1, "y": 2.4},
  157. {"matrix": [2, 2], "x": 2, "y": 2.125},
  158. {"matrix": [2, 3], "x": 3, "y": 2},
  159. {"matrix": [2, 4], "x": 4, "y": 2.125},
  160. {"matrix": [2, 5], "x": 5, "y": 2.25},
  161. {"matrix": [2, 6], "x": 8, "y": 2.25},
  162. {"matrix": [2, 7], "x": 9, "y": 2.125},
  163. {"matrix": [2, 8], "x": 10, "y": 2},
  164. {"matrix": [2, 9], "x": 11, "y": 2.125},
  165. {"matrix": [2, 10], "x": 12, "y": 2.4},
  166. {"matrix": [2, 11], "x": 13, "y": 2.4},
  167. {"matrix": [3, 3], "x": 3.5, "y": 3.25},
  168. {"matrix": [3, 4], "x": 4.5, "y": 3.5},
  169. {"matrix": [3, 5], "x": 5.5, "y": 3.75, "h": 1.5},
  170. {"matrix": [3, 6], "x": 7.5, "y": 3.75, "h": 1.5},
  171. {"matrix": [3, 7], "x": 8.5, "y": 3.5},
  172. {"matrix": [3, 8], "x": 9.5, "y": 3.25}
  173. ]
  174. }
  175. }
  176. }