keyboard.json (11264B)
1 { 2 "manufacturer": "Ryan Neff", 3 "keyboard_name": "Sofle Pico", 4 "maintainer": "Ryan Neff <github@JellyTitan.com>", 5 "bootloader": "rp2040", 6 "bootloader_instructions": "Hold the BOOT button while plugging in the usb cable", 7 "diode_direction": "COL2ROW", 8 "encoder": { 9 "rotary": [ 10 {"pin_a": "GP14", "pin_b": "GP15"} 11 ] 12 }, 13 "features": { 14 "bootmagic": true, 15 "encoder": true, 16 "extrakey": true, 17 "mousekey": true, 18 "nkro": true, 19 "oled": true, 20 "rgb_matrix": true 21 }, 22 "matrix_pins": { 23 "cols": ["GP1", "GP2", "GP3", "GP4", "GP5", "GP8"], 24 "rows": ["GP9", "GP10", "GP11", "GP12", "GP13"] 25 }, 26 "processor": "RP2040", 27 "rgb_matrix": { 28 "animations": { 29 "band_pinwheel_sat": true, 30 "band_pinwheel_val": true, 31 "band_sat": true, 32 "band_spiral_sat": true, 33 "band_spiral_val": true, 34 "band_val": true, 35 "breathing": true, 36 "cycle_all": true, 37 "cycle_left_right": true, 38 "cycle_out_in": true, 39 "cycle_out_in_dual": true, 40 "cycle_pinwheel": true, 41 "cycle_spiral": true, 42 "cycle_up_down": true, 43 "digital_rain": true, 44 "dual_beacon": true, 45 "gradient_left_right": true, 46 "gradient_up_down": true, 47 "hue_breathing": true, 48 "hue_pendulum": true, 49 "hue_wave": true, 50 "jellybean_raindrops": true, 51 "multisplash": true, 52 "pixel_flow": true, 53 "pixel_rain": true, 54 "rainbow_beacon": true, 55 "rainbow_moving_chevron": true, 56 "rainbow_pinwheels": true, 57 "raindrops": true, 58 "solid_multisplash": true, 59 "solid_reactive": true, 60 "solid_reactive_cross": true, 61 "solid_reactive_multicross": true, 62 "solid_reactive_multinexus": true, 63 "solid_reactive_multiwide": true, 64 "solid_reactive_nexus": true, 65 "solid_reactive_simple": true, 66 "solid_reactive_wide": true, 67 "solid_splash": true, 68 "splash": true, 69 "typing_heatmap": true 70 }, 71 "default": { 72 "animation": "cycle_out_in_dual", 73 "speed": 16 74 }, 75 "driver": "ws2812", 76 "layout": [ 77 {"matrix": [0, 5], "x": 95, "y": 7, "flags": 4}, 78 {"matrix": [1, 5], "x": 95, "y": 21, "flags": 4}, 79 {"matrix": [2, 5], "x": 95, "y": 36, "flags": 4}, 80 {"matrix": [3, 5], "x": 95, "y": 50, "flags": 4}, 81 {"matrix": [4, 4], "x": 115, "y": 64, "flags": 4}, 82 {"matrix": [4, 3], "x": 95, "y": 64, "flags": 4}, 83 {"matrix": [4, 2], "x": 76, "y": 62, "flags": 4}, 84 {"matrix": [3, 4], "x": 76, "y": 48, "flags": 4}, 85 {"matrix": [2, 4], "x": 76, "y": 33, "flags": 4}, 86 {"matrix": [1, 4], "x": 76, "y": 19, "flags": 4}, 87 {"matrix": [0, 4], "x": 76, "y": 5, "flags": 4}, 88 {"matrix": [0, 3], "x": 57, "y": 3, "flags": 4}, 89 {"matrix": [1, 3], "x": 57, "y": 17, "flags": 4}, 90 {"matrix": [2, 3], "x": 57, "y": 31, "flags": 4}, 91 {"matrix": [3, 3], "x": 57, "y": 46, "flags": 4}, 92 {"matrix": [4, 1], "x": 57, "y": 62, "flags": 4}, 93 {"matrix": [4, 0], "x": 38, "y": 64, "flags": 4}, 94 {"matrix": [3, 2], "x": 38, "y": 48, "flags": 4}, 95 {"matrix": [2, 2], "x": 38, "y": 33, "flags": 4}, 96 {"matrix": [1, 2], "x": 38, "y": 19, "flags": 4}, 97 {"matrix": [0, 2], "x": 38, "y": 5, "flags": 4}, 98 {"matrix": [0, 1], "x": 19, "y": 7, "flags": 4}, 99 {"matrix": [1, 1], "x": 19, "y": 21, "flags": 4}, 100 {"matrix": [2, 1], "x": 19, "y": 36, "flags": 4}, 101 {"matrix": [3, 1], "x": 19, "y": 50, "flags": 4}, 102 {"matrix": [3, 0], "x": 0, "y": 50, "flags": 4}, 103 {"matrix": [2, 0], "x": 0, "y": 36, "flags": 4}, 104 {"matrix": [1, 0], "x": 0, "y": 21, "flags": 4}, 105 {"matrix": [0, 0], "x": 0, "y": 7, "flags": 4}, 106 {"matrix": [5, 5], "x": 129, "y": 7, "flags": 4}, 107 {"matrix": [6, 5], "x": 129, "y": 21, "flags": 4}, 108 {"matrix": [7, 5], "x": 129, "y": 36, "flags": 4}, 109 {"matrix": [8, 5], "x": 129, "y": 50, "flags": 4}, 110 {"matrix": [9, 4], "x": 119, "y": 64, "flags": 4}, 111 {"matrix": [9, 3], "x": 129, "y": 64, "flags": 4}, 112 {"matrix": [9, 2], "x": 148, "y": 62, "flags": 4}, 113 {"matrix": [8, 4], "x": 148, "y": 48, "flags": 4}, 114 {"matrix": [7, 4], "x": 148, "y": 33, "flags": 4}, 115 {"matrix": [6, 4], "x": 148, "y": 19, "flags": 4}, 116 {"matrix": [5, 4], "x": 148, "y": 5, "flags": 4}, 117 {"matrix": [5, 3], "x": 167, "y": 3, "flags": 4}, 118 {"matrix": [6, 3], "x": 167, "y": 17, "flags": 4}, 119 {"matrix": [7, 3], "x": 167, "y": 31, "flags": 4}, 120 {"matrix": [8, 3], "x": 167, "y": 46, "flags": 4}, 121 {"matrix": [9, 1], "x": 167, "y": 62, "flags": 4}, 122 {"matrix": [9, 0], "x": 186, "y": 64, "flags": 4}, 123 {"matrix": [8, 2], "x": 186, "y": 48, "flags": 4}, 124 {"matrix": [7, 2], "x": 186, "y": 33, "flags": 4}, 125 {"matrix": [6, 2], "x": 186, "y": 19, "flags": 4}, 126 {"matrix": [5, 2], "x": 186, "y": 5, "flags": 4}, 127 {"matrix": [5, 1], "x": 209, "y": 7, "flags": 4}, 128 {"matrix": [6, 1], "x": 209, "y": 21, "flags": 4}, 129 {"matrix": [7, 1], "x": 209, "y": 36, "flags": 4}, 130 {"matrix": [8, 1], "x": 209, "y": 50, "flags": 4}, 131 {"matrix": [8, 0], "x": 224, "y": 50, "flags": 4}, 132 {"matrix": [7, 0], "x": 224, "y": 36, "flags": 4}, 133 {"matrix": [6, 0], "x": 224, "y": 21, "flags": 4}, 134 {"matrix": [5, 0], "x": 224, "y": 7, "flags": 4} 135 ], 136 "max_brightness": 127, 137 "sleep": true, 138 "split_count": [29, 29] 139 }, 140 "split": { 141 "bootmagic": { 142 "matrix": [5, 0] 143 }, 144 "enabled": true, 145 "encoder": { 146 "right": { 147 "rotary": [ 148 {"pin_a": "GP14", "pin_b": "GP15"} 149 ] 150 } 151 }, 152 "serial": { 153 "driver": "vendor" 154 }, 155 "transport": { 156 "sync": { 157 "layer_state": true, 158 "matrix_state": true 159 } 160 } 161 }, 162 "tags": ["ortho", "split", "rgb", "encoder", "OLED", "128x64", "tenting_puck"], 163 "url": "https://github.com/JellyTitan/Sofle-Pico", 164 "usb": { 165 "device_version": "3.5.4", 166 "pid": "0x5350", 167 "vid": "0x4A54" 168 }, 169 "ws2812": { 170 "driver": "vendor", 171 "pin": "GP0" 172 }, 173 "layouts": { 174 "LAYOUT": { 175 "layout": [ 176 {"label": "`", "matrix": [0, 0], "x": 0, "y": 0.7}, 177 {"label": "1", "matrix": [0, 1], "x": 1, "y": 0.7}, 178 {"label": "2", "matrix": [0, 2], "x": 2, "y": 0.3}, 179 {"label": "3", "matrix": [0, 3], "x": 3, "y": 0}, 180 {"label": "4", "matrix": [0, 4], "x": 4, "y": 0.3}, 181 {"label": "5", "matrix": [0, 5], "x": 5, "y": 0.45}, 182 {"label": "6", "matrix": [5, 5], "x": 9, "y": 0.45}, 183 {"label": "7", "matrix": [5, 4], "x": 10, "y": 0.3}, 184 {"label": "8", "matrix": [5, 3], "x": 11, "y": 0}, 185 {"label": "9", "matrix": [5, 2], "x": 12, "y": 0.3}, 186 {"label": "0", "matrix": [5, 1], "x": 13, "y": 0.7}, 187 {"label": "`", "matrix": [5, 0], "x": 14, "y": 0.7}, 188 {"label": "Esc", "matrix": [1, 0], "x": 0, "y": 1.7}, 189 {"label": "Q", "matrix": [1, 1], "x": 1, "y": 1.7}, 190 {"label": "W", "matrix": [1, 2], "x": 2, "y": 1.3}, 191 {"label": "E", "matrix": [1, 3], "x": 3, "y": 1}, 192 {"label": "R", "matrix": [1, 4], "x": 4, "y": 1.3}, 193 {"label": "T", "matrix": [1, 5], "x": 5, "y": 1.45}, 194 {"label": "Y", "matrix": [6, 5], "x": 9, "y": 1.45}, 195 {"label": "U", "matrix": [6, 4], "x": 10, "y": 1.3}, 196 {"label": "I", "matrix": [6, 3], "x": 11, "y": 1}, 197 {"label": "O", "matrix": [6, 2], "x": 12, "y": 1.3}, 198 {"label": "P", "matrix": [6, 1], "x": 13, "y": 1.7}, 199 {"label": "Bspc", "matrix": [6, 0], "x": 14, "y": 1.7}, 200 {"label": "Tab", "matrix": [2, 0], "x": 0, "y": 2.7}, 201 {"label": "A", "matrix": [2, 1], "x": 1, "y": 2.7}, 202 {"label": "S", "matrix": [2, 2], "x": 2, "y": 2.3}, 203 {"label": "D", "matrix": [2, 3], "x": 3, "y": 2}, 204 {"label": "F", "matrix": [2, 4], "x": 4, "y": 2.3}, 205 {"label": "G", "matrix": [2, 5], "x": 5, "y": 2.45}, 206 {"label": "H", "matrix": [7, 5], "x": 9, "y": 2.45}, 207 {"label": "J", "matrix": [7, 4], "x": 10, "y": 2.3}, 208 {"label": "K", "matrix": [7, 3], "x": 11, "y": 2}, 209 {"label": "L", "matrix": [7, 2], "x": 12, "y": 2.3}, 210 {"label": ";", "matrix": [7, 1], "x": 13, "y": 2.7}, 211 {"label": "'", "matrix": [7, 0], "x": 14, "y": 2.7}, 212 {"label": "LShift", "matrix": [3, 0], "x": 0, "y": 3.7}, 213 {"label": "Z", "matrix": [3, 1], "x": 1, "y": 3.7}, 214 {"label": "X", "matrix": [3, 2], "x": 2, "y": 3.3}, 215 {"label": "C", "matrix": [3, 3], "x": 3, "y": 3}, 216 {"label": "V", "matrix": [3, 4], "x": 4, "y": 3.3}, 217 {"label": "B", "matrix": [3, 5], "x": 5, "y": 3.45}, 218 {"label": "Mute", "matrix": [4, 5], "x": 6.2, "y": 3.45}, 219 {"label": "Pause", "matrix": [9, 5], "x": 7.8, "y": 3.45}, 220 {"label": "N", "matrix": [8, 5], "x": 9, "y": 3.45}, 221 {"label": "M", "matrix": [8, 4], "x": 10, "y": 3.3}, 222 {"label": ",", "matrix": [8, 3], "x": 11, "y": 3}, 223 {"label": ".", "matrix": [8, 2], "x": 12, "y": 3.3}, 224 {"label": "/", "matrix": [8, 1], "x": 13, "y": 3.7}, 225 {"label": "RShift", "matrix": [8, 0], "x": 14, "y": 3.7}, 226 {"label": "LCtrl", "matrix": [4, 0], "x": 2, "y": 4.3}, 227 {"label": "LGUI", "matrix": [4, 1], "x": 3, "y": 4}, 228 {"label": "LCmnd", "matrix": [4, 2], "x": 4, "y": 4.3}, 229 {"label": "LAlt", "matrix": [4, 3], "x": 5.1, "y": 4.5, "h": 1.5}, 230 {"label": "Enter", "matrix": [4, 4], "x": 6.1, "y": 4.5, "h": 1.5}, 231 {"label": "Space", "matrix": [9, 4], "x": 7.9, "y": 4.5, "h": 1.5}, 232 {"label": "RAlt", "matrix": [9, 3], "x": 8.9, "y": 4.5, "h": 1.5}, 233 {"label": "RCmnd", "matrix": [9, 2], "x": 10, "y": 4.3}, 234 {"label": "RGui", "matrix": [9, 1], "x": 11, "y": 4}, 235 {"label": "RCtrl", "matrix": [9, 0], "x": 12, "y": 4.3} 236 ] 237 } 238 } 239 }