qmk_firmware

QMK firmware for my keyboards (Corne, Sweep Ferris) and trackball (Ploopy Adept)
Log | Files | Refs | Submodules | LICENSE

keyboard.json (22811B)


      1 {
      2   "keyboard_name": "1UP RGB Underglow PCB",
      3   "manufacturer": "1upkeyboards",
      4   "maintainer": "qmk",
      5   "usb": {
      6     "vid": "0x6F75",
      7     "pid": "0x7267",
      8     "device_version": "0.0.1"
      9   },
     10   "features": {
     11     "backlight": true,
     12     "bootmagic": true,
     13     "extrakey": true,
     14     "mousekey": true,
     15     "nkro": true,
     16     "rgblight": true
     17   },
     18   "qmk": {
     19     "locking": {
     20       "enabled": true,
     21       "resync": true
     22     }
     23   },
     24   "matrix_pins": {
     25     "cols": ["F0", "F1", "E6", "C7", "C6", "B7", "D4", "B1", "B0", "B5", "B4", "D7", "D6", "B3", "F4"],
     26     "rows": ["D0", "D1", "D2", "D3", "D5"]
     27   },
     28   "diode_direction": "COL2ROW",
     29   "backlight": {
     30     "pin": "B6",
     31     "levels": 5
     32   },
     33   "rgblight": {
     34     "saturation_steps": 8,
     35     "brightness_steps": 8,
     36     "led_count": 16,
     37     "animations": {
     38       "breathing": true,
     39       "rainbow_mood": true,
     40       "rainbow_swirl": true,
     41       "snake": true,
     42       "knight": true,
     43       "christmas": true,
     44       "static_gradient": true,
     45       "rgb_test": true,
     46       "alternating": true,
     47       "twinkle": true
     48     }
     49   },
     50   "ws2812": {
     51     "pin": "E2"
     52   },
     53   "processor": "atmega32u4",
     54   "bootloader": "atmel-dfu",
     55   "community_layouts": ["60_ansi", "60_iso", "60_ansi_split_bs_rshift", "60_hhkb"],
     56   "layouts": {
     57     "LAYOUT_all": {
     58       "layout": [
     59         {"matrix": [0, 0], "x": 0, "y": 0},
     60         {"matrix": [0, 1], "x": 1, "y": 0},
     61         {"matrix": [0, 2], "x": 2, "y": 0},
     62         {"matrix": [0, 3], "x": 3, "y": 0},
     63         {"matrix": [0, 4], "x": 4, "y": 0},
     64         {"matrix": [0, 5], "x": 5, "y": 0},
     65         {"matrix": [0, 6], "x": 6, "y": 0},
     66         {"matrix": [0, 7], "x": 7, "y": 0},
     67         {"matrix": [0, 8], "x": 8, "y": 0},
     68         {"matrix": [0, 9], "x": 9, "y": 0},
     69         {"matrix": [0, 10], "x": 10, "y": 0},
     70         {"matrix": [0, 11], "x": 11, "y": 0},
     71         {"matrix": [0, 12], "x": 12, "y": 0},
     72         {"matrix": [0, 13], "x": 13, "y": 0},
     73         {"matrix": [0, 14], "x": 14, "y": 0},
     74 
     75         {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
     76         {"matrix": [1, 2], "x": 1.5, "y": 1},
     77         {"matrix": [1, 3], "x": 2.5, "y": 1},
     78         {"matrix": [1, 4], "x": 3.5, "y": 1},
     79         {"matrix": [1, 5], "x": 4.5, "y": 1},
     80         {"matrix": [1, 6], "x": 5.5, "y": 1},
     81         {"matrix": [1, 7], "x": 6.5, "y": 1},
     82         {"matrix": [1, 8], "x": 7.5, "y": 1},
     83         {"matrix": [1, 9], "x": 8.5, "y": 1},
     84         {"matrix": [1, 10], "x": 9.5, "y": 1},
     85         {"matrix": [1, 11], "x": 10.5, "y": 1},
     86         {"matrix": [1, 12], "x": 11.5, "y": 1},
     87         {"matrix": [1, 13], "x": 12.5, "y": 1},
     88         {"matrix": [1, 14], "x": 13.5, "y": 1, "w": 1.5},
     89 
     90         {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
     91         {"matrix": [2, 2], "x": 1.75, "y": 2},
     92         {"matrix": [2, 3], "x": 2.75, "y": 2},
     93         {"matrix": [2, 4], "x": 3.75, "y": 2},
     94         {"matrix": [2, 5], "x": 4.75, "y": 2},
     95         {"matrix": [2, 6], "x": 5.75, "y": 2},
     96         {"matrix": [2, 7], "x": 6.75, "y": 2},
     97         {"matrix": [2, 8], "x": 7.75, "y": 2},
     98         {"matrix": [2, 9], "x": 8.75, "y": 2},
     99         {"matrix": [2, 10], "x": 9.75, "y": 2},
    100         {"matrix": [2, 11], "x": 10.75, "y": 2},
    101         {"matrix": [2, 12], "x": 11.75, "y": 2},
    102         {"matrix": [2, 13], "x": 12.75, "y": 2},
    103         {"matrix": [2, 14], "x": 13.75, "y": 2, "w": 1.25},
    104 
    105         {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
    106         {"matrix": [3, 1], "x": 1.25, "y": 3},
    107         {"matrix": [3, 2], "x": 2.25, "y": 3},
    108         {"matrix": [3, 3], "x": 3.25, "y": 3},
    109         {"matrix": [3, 4], "x": 4.25, "y": 3},
    110         {"matrix": [3, 5], "x": 5.25, "y": 3},
    111         {"matrix": [3, 6], "x": 6.25, "y": 3},
    112         {"matrix": [3, 7], "x": 7.25, "y": 3},
    113         {"matrix": [3, 8], "x": 8.25, "y": 3},
    114         {"matrix": [3, 9], "x": 9.25, "y": 3},
    115         {"matrix": [3, 10], "x": 10.25, "y": 3},
    116         {"matrix": [3, 11], "x": 11.25, "y": 3},
    117         {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
    118         {"matrix": [3, 14], "x": 14, "y": 3},
    119 
    120         {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
    121         {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
    122         {"matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.25},
    123         {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
    124         {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
    125         {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
    126         {"matrix": [4, 13], "x": 12.5, "y": 4, "w": 1.25},
    127         {"matrix": [4, 14], "x": 13.75, "y": 4, "w": 1.25}
    128       ]
    129     },
    130     "LAYOUT_60_ansi": {
    131       "layout": [
    132         {"matrix": [0, 0], "x": 0, "y": 0},
    133         {"matrix": [0, 1], "x": 1, "y": 0},
    134         {"matrix": [0, 2], "x": 2, "y": 0},
    135         {"matrix": [0, 3], "x": 3, "y": 0},
    136         {"matrix": [0, 4], "x": 4, "y": 0},
    137         {"matrix": [0, 5], "x": 5, "y": 0},
    138         {"matrix": [0, 6], "x": 6, "y": 0},
    139         {"matrix": [0, 7], "x": 7, "y": 0},
    140         {"matrix": [0, 8], "x": 8, "y": 0},
    141         {"matrix": [0, 9], "x": 9, "y": 0},
    142         {"matrix": [0, 10], "x": 10, "y": 0},
    143         {"matrix": [0, 11], "x": 11, "y": 0},
    144         {"matrix": [0, 12], "x": 12, "y": 0},
    145         {"matrix": [0, 14], "x": 13, "y": 0, "w": 2},
    146 
    147         {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    148         {"matrix": [1, 2], "x": 1.5, "y": 1},
    149         {"matrix": [1, 3], "x": 2.5, "y": 1},
    150         {"matrix": [1, 4], "x": 3.5, "y": 1},
    151         {"matrix": [1, 5], "x": 4.5, "y": 1},
    152         {"matrix": [1, 6], "x": 5.5, "y": 1},
    153         {"matrix": [1, 7], "x": 6.5, "y": 1},
    154         {"matrix": [1, 8], "x": 7.5, "y": 1},
    155         {"matrix": [1, 9], "x": 8.5, "y": 1},
    156         {"matrix": [1, 10], "x": 9.5, "y": 1},
    157         {"matrix": [1, 11], "x": 10.5, "y": 1},
    158         {"matrix": [1, 12], "x": 11.5, "y": 1},
    159         {"matrix": [1, 13], "x": 12.5, "y": 1},
    160         {"matrix": [1, 14], "x": 13.5, "y": 1, "w": 1.5},
    161 
    162         {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    163         {"matrix": [2, 2], "x": 1.75, "y": 2},
    164         {"matrix": [2, 3], "x": 2.75, "y": 2},
    165         {"matrix": [2, 4], "x": 3.75, "y": 2},
    166         {"matrix": [2, 5], "x": 4.75, "y": 2},
    167         {"matrix": [2, 6], "x": 5.75, "y": 2},
    168         {"matrix": [2, 7], "x": 6.75, "y": 2},
    169         {"matrix": [2, 8], "x": 7.75, "y": 2},
    170         {"matrix": [2, 9], "x": 8.75, "y": 2},
    171         {"matrix": [2, 10], "x": 9.75, "y": 2},
    172         {"matrix": [2, 11], "x": 10.75, "y": 2},
    173         {"matrix": [2, 12], "x": 11.75, "y": 2},
    174         {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
    175 
    176         {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
    177         {"matrix": [3, 2], "x": 2.25, "y": 3},
    178         {"matrix": [3, 3], "x": 3.25, "y": 3},
    179         {"matrix": [3, 4], "x": 4.25, "y": 3},
    180         {"matrix": [3, 5], "x": 5.25, "y": 3},
    181         {"matrix": [3, 6], "x": 6.25, "y": 3},
    182         {"matrix": [3, 7], "x": 7.25, "y": 3},
    183         {"matrix": [3, 8], "x": 8.25, "y": 3},
    184         {"matrix": [3, 9], "x": 9.25, "y": 3},
    185         {"matrix": [3, 10], "x": 10.25, "y": 3},
    186         {"matrix": [3, 11], "x": 11.25, "y": 3},
    187         {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},
    188 
    189         {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
    190         {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
    191         {"matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.25},
    192         {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
    193         {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
    194         {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
    195         {"matrix": [4, 13], "x": 12.5, "y": 4, "w": 1.25},
    196         {"matrix": [4, 14], "x": 13.75, "y": 4, "w": 1.25}
    197       ]
    198     },
    199     "LAYOUT_60_iso": {
    200       "layout": [
    201         {"matrix": [0, 0], "x": 0, "y": 0},
    202         {"matrix": [0, 1], "x": 1, "y": 0},
    203         {"matrix": [0, 2], "x": 2, "y": 0},
    204         {"matrix": [0, 3], "x": 3, "y": 0},
    205         {"matrix": [0, 4], "x": 4, "y": 0},
    206         {"matrix": [0, 5], "x": 5, "y": 0},
    207         {"matrix": [0, 6], "x": 6, "y": 0},
    208         {"matrix": [0, 7], "x": 7, "y": 0},
    209         {"matrix": [0, 8], "x": 8, "y": 0},
    210         {"matrix": [0, 9], "x": 9, "y": 0},
    211         {"matrix": [0, 10], "x": 10, "y": 0},
    212         {"matrix": [0, 11], "x": 11, "y": 0},
    213         {"matrix": [0, 12], "x": 12, "y": 0},
    214         {"matrix": [0, 14], "x": 13, "y": 0, "w": 2},
    215 
    216         {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    217         {"matrix": [1, 2], "x": 1.5, "y": 1},
    218         {"matrix": [1, 3], "x": 2.5, "y": 1},
    219         {"matrix": [1, 4], "x": 3.5, "y": 1},
    220         {"matrix": [1, 5], "x": 4.5, "y": 1},
    221         {"matrix": [1, 6], "x": 5.5, "y": 1},
    222         {"matrix": [1, 7], "x": 6.5, "y": 1},
    223         {"matrix": [1, 8], "x": 7.5, "y": 1},
    224         {"matrix": [1, 9], "x": 8.5, "y": 1},
    225         {"matrix": [1, 10], "x": 9.5, "y": 1},
    226         {"matrix": [1, 11], "x": 10.5, "y": 1},
    227         {"matrix": [1, 12], "x": 11.5, "y": 1},
    228         {"matrix": [1, 13], "x": 12.5, "y": 1},
    229 
    230         {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    231         {"matrix": [2, 2], "x": 1.75, "y": 2},
    232         {"matrix": [2, 3], "x": 2.75, "y": 2},
    233         {"matrix": [2, 4], "x": 3.75, "y": 2},
    234         {"matrix": [2, 5], "x": 4.75, "y": 2},
    235         {"matrix": [2, 6], "x": 5.75, "y": 2},
    236         {"matrix": [2, 7], "x": 6.75, "y": 2},
    237         {"matrix": [2, 8], "x": 7.75, "y": 2},
    238         {"matrix": [2, 9], "x": 8.75, "y": 2},
    239         {"matrix": [2, 10], "x": 9.75, "y": 2},
    240         {"matrix": [2, 11], "x": 10.75, "y": 2},
    241         {"matrix": [2, 12], "x": 11.75, "y": 2},
    242         {"matrix": [2, 13], "x": 12.75, "y": 2},
    243         {"matrix": [2, 14], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
    244 
    245         {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
    246         {"matrix": [3, 1], "x": 1.25, "y": 3},
    247         {"matrix": [3, 2], "x": 2.25, "y": 3},
    248         {"matrix": [3, 3], "x": 3.25, "y": 3},
    249         {"matrix": [3, 4], "x": 4.25, "y": 3},
    250         {"matrix": [3, 5], "x": 5.25, "y": 3},
    251         {"matrix": [3, 6], "x": 6.25, "y": 3},
    252         {"matrix": [3, 7], "x": 7.25, "y": 3},
    253         {"matrix": [3, 8], "x": 8.25, "y": 3},
    254         {"matrix": [3, 9], "x": 9.25, "y": 3},
    255         {"matrix": [3, 10], "x": 10.25, "y": 3},
    256         {"matrix": [3, 11], "x": 11.25, "y": 3},
    257         {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},
    258 
    259         {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
    260         {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
    261         {"matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.25},
    262         {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
    263         {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
    264         {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
    265         {"matrix": [4, 13], "x": 12.5, "y": 4, "w": 1.25},
    266         {"matrix": [4, 14], "x": 13.75, "y": 4, "w": 1.25}
    267       ]
    268     },
    269     "LAYOUT_60_ansi_split_bs_rshift": {
    270       "layout": [
    271         {"matrix": [0, 0], "x": 0, "y": 0},
    272         {"matrix": [0, 1], "x": 1, "y": 0},
    273         {"matrix": [0, 2], "x": 2, "y": 0},
    274         {"matrix": [0, 3], "x": 3, "y": 0},
    275         {"matrix": [0, 4], "x": 4, "y": 0},
    276         {"matrix": [0, 5], "x": 5, "y": 0},
    277         {"matrix": [0, 6], "x": 6, "y": 0},
    278         {"matrix": [0, 7], "x": 7, "y": 0},
    279         {"matrix": [0, 8], "x": 8, "y": 0},
    280         {"matrix": [0, 9], "x": 9, "y": 0},
    281         {"matrix": [0, 10], "x": 10, "y": 0},
    282         {"matrix": [0, 11], "x": 11, "y": 0},
    283         {"matrix": [0, 12], "x": 12, "y": 0},
    284         {"matrix": [0, 13], "x": 13, "y": 0},
    285         {"matrix": [0, 14], "x": 14, "y": 0},
    286 
    287         {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    288         {"matrix": [1, 2], "x": 1.5, "y": 1},
    289         {"matrix": [1, 3], "x": 2.5, "y": 1},
    290         {"matrix": [1, 4], "x": 3.5, "y": 1},
    291         {"matrix": [1, 5], "x": 4.5, "y": 1},
    292         {"matrix": [1, 6], "x": 5.5, "y": 1},
    293         {"matrix": [1, 7], "x": 6.5, "y": 1},
    294         {"matrix": [1, 8], "x": 7.5, "y": 1},
    295         {"matrix": [1, 9], "x": 8.5, "y": 1},
    296         {"matrix": [1, 10], "x": 9.5, "y": 1},
    297         {"matrix": [1, 11], "x": 10.5, "y": 1},
    298         {"matrix": [1, 12], "x": 11.5, "y": 1},
    299         {"matrix": [1, 13], "x": 12.5, "y": 1},
    300         {"matrix": [1, 14], "x": 13.5, "y": 1, "w": 1.5},
    301 
    302         {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    303         {"matrix": [2, 2], "x": 1.75, "y": 2},
    304         {"matrix": [2, 3], "x": 2.75, "y": 2},
    305         {"matrix": [2, 4], "x": 3.75, "y": 2},
    306         {"matrix": [2, 5], "x": 4.75, "y": 2},
    307         {"matrix": [2, 6], "x": 5.75, "y": 2},
    308         {"matrix": [2, 7], "x": 6.75, "y": 2},
    309         {"matrix": [2, 8], "x": 7.75, "y": 2},
    310         {"matrix": [2, 9], "x": 8.75, "y": 2},
    311         {"matrix": [2, 10], "x": 9.75, "y": 2},
    312         {"matrix": [2, 11], "x": 10.75, "y": 2},
    313         {"matrix": [2, 12], "x": 11.75, "y": 2},
    314         {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
    315 
    316         {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
    317         {"matrix": [3, 2], "x": 2.25, "y": 3},
    318         {"matrix": [3, 3], "x": 3.25, "y": 3},
    319         {"matrix": [3, 4], "x": 4.25, "y": 3},
    320         {"matrix": [3, 5], "x": 5.25, "y": 3},
    321         {"matrix": [3, 6], "x": 6.25, "y": 3},
    322         {"matrix": [3, 7], "x": 7.25, "y": 3},
    323         {"matrix": [3, 8], "x": 8.25, "y": 3},
    324         {"matrix": [3, 9], "x": 9.25, "y": 3},
    325         {"matrix": [3, 10], "x": 10.25, "y": 3},
    326         {"matrix": [3, 11], "x": 11.25, "y": 3},
    327         {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
    328         {"matrix": [3, 14], "x": 14, "y": 3},
    329 
    330         {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
    331         {"matrix": [4, 1], "x": 1.5, "y": 4},
    332         {"matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.5},
    333         {"matrix": [4, 6], "x": 4, "y": 4, "w": 6},
    334         {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.5},
    335         {"matrix": [4, 11], "x": 11.5, "y": 4},
    336         {"matrix": [4, 13], "x": 12.5, "y": 4},
    337         {"matrix": [4, 14], "x": 13.5, "y": 4, "w": 1.5}
    338       ]
    339     },
    340     "LAYOUT_60_ansi_split_rshift": {
    341       "layout": [
    342         {"matrix": [0, 0], "x": 0, "y": 0},
    343         {"matrix": [0, 1], "x": 1, "y": 0},
    344         {"matrix": [0, 2], "x": 2, "y": 0},
    345         {"matrix": [0, 3], "x": 3, "y": 0},
    346         {"matrix": [0, 4], "x": 4, "y": 0},
    347         {"matrix": [0, 5], "x": 5, "y": 0},
    348         {"matrix": [0, 6], "x": 6, "y": 0},
    349         {"matrix": [0, 7], "x": 7, "y": 0},
    350         {"matrix": [0, 8], "x": 8, "y": 0},
    351         {"matrix": [0, 9], "x": 9, "y": 0},
    352         {"matrix": [0, 10], "x": 10, "y": 0},
    353         {"matrix": [0, 11], "x": 11, "y": 0},
    354         {"matrix": [0, 12], "x": 12, "y": 0},
    355         {"matrix": [0, 14], "x": 13, "y": 0, "w": 2},
    356 
    357         {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    358         {"matrix": [1, 2], "x": 1.5, "y": 1},
    359         {"matrix": [1, 3], "x": 2.5, "y": 1},
    360         {"matrix": [1, 4], "x": 3.5, "y": 1},
    361         {"matrix": [1, 5], "x": 4.5, "y": 1},
    362         {"matrix": [1, 6], "x": 5.5, "y": 1},
    363         {"matrix": [1, 7], "x": 6.5, "y": 1},
    364         {"matrix": [1, 8], "x": 7.5, "y": 1},
    365         {"matrix": [1, 9], "x": 8.5, "y": 1},
    366         {"matrix": [1, 10], "x": 9.5, "y": 1},
    367         {"matrix": [1, 11], "x": 10.5, "y": 1},
    368         {"matrix": [1, 12], "x": 11.5, "y": 1},
    369         {"matrix": [1, 13], "x": 12.5, "y": 1},
    370         {"matrix": [1, 14], "x": 13.5, "y": 1, "w": 1.5},
    371 
    372         {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    373         {"matrix": [2, 2], "x": 1.75, "y": 2},
    374         {"matrix": [2, 3], "x": 2.75, "y": 2},
    375         {"matrix": [2, 4], "x": 3.75, "y": 2},
    376         {"matrix": [2, 5], "x": 4.75, "y": 2},
    377         {"matrix": [2, 6], "x": 5.75, "y": 2},
    378         {"matrix": [2, 7], "x": 6.75, "y": 2},
    379         {"matrix": [2, 8], "x": 7.75, "y": 2},
    380         {"matrix": [2, 9], "x": 8.75, "y": 2},
    381         {"matrix": [2, 10], "x": 9.75, "y": 2},
    382         {"matrix": [2, 11], "x": 10.75, "y": 2},
    383         {"matrix": [2, 12], "x": 11.75, "y": 2},
    384         {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
    385 
    386         {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
    387         {"matrix": [3, 2], "x": 2.25, "y": 3},
    388         {"matrix": [3, 3], "x": 3.25, "y": 3},
    389         {"matrix": [3, 4], "x": 4.25, "y": 3},
    390         {"matrix": [3, 5], "x": 5.25, "y": 3},
    391         {"matrix": [3, 6], "x": 6.25, "y": 3},
    392         {"matrix": [3, 7], "x": 7.25, "y": 3},
    393         {"matrix": [3, 8], "x": 8.25, "y": 3},
    394         {"matrix": [3, 9], "x": 9.25, "y": 3},
    395         {"matrix": [3, 10], "x": 10.25, "y": 3},
    396         {"matrix": [3, 11], "x": 11.25, "y": 3},
    397         {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
    398         {"matrix": [3, 14], "x": 14, "y": 3},
    399 
    400         {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
    401         {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
    402         {"matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.25},
    403         {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
    404         {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
    405         {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
    406         {"matrix": [4, 13], "x": 12.5, "y": 4, "w": 1.25},
    407         {"matrix": [4, 14], "x": 13.75, "y": 4, "w": 1.25}
    408       ]
    409     },
    410     "LAYOUT_60_ansi_tsangan_split_rshift": {
    411       "layout": [
    412         {"matrix": [0, 0], "x": 0, "y": 0},
    413         {"matrix": [0, 1], "x": 1, "y": 0},
    414         {"matrix": [0, 2], "x": 2, "y": 0},
    415         {"matrix": [0, 3], "x": 3, "y": 0},
    416         {"matrix": [0, 4], "x": 4, "y": 0},
    417         {"matrix": [0, 5], "x": 5, "y": 0},
    418         {"matrix": [0, 6], "x": 6, "y": 0},
    419         {"matrix": [0, 7], "x": 7, "y": 0},
    420         {"matrix": [0, 8], "x": 8, "y": 0},
    421         {"matrix": [0, 9], "x": 9, "y": 0},
    422         {"matrix": [0, 10], "x": 10, "y": 0},
    423         {"matrix": [0, 11], "x": 11, "y": 0},
    424         {"matrix": [0, 12], "x": 12, "y": 0},
    425         {"matrix": [0, 14], "x": 13, "y": 0, "w": 2},
    426 
    427         {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    428         {"matrix": [1, 2], "x": 1.5, "y": 1},
    429         {"matrix": [1, 3], "x": 2.5, "y": 1},
    430         {"matrix": [1, 4], "x": 3.5, "y": 1},
    431         {"matrix": [1, 5], "x": 4.5, "y": 1},
    432         {"matrix": [1, 6], "x": 5.5, "y": 1},
    433         {"matrix": [1, 7], "x": 6.5, "y": 1},
    434         {"matrix": [1, 8], "x": 7.5, "y": 1},
    435         {"matrix": [1, 9], "x": 8.5, "y": 1},
    436         {"matrix": [1, 10], "x": 9.5, "y": 1},
    437         {"matrix": [1, 11], "x": 10.5, "y": 1},
    438         {"matrix": [1, 12], "x": 11.5, "y": 1},
    439         {"matrix": [1, 13], "x": 12.5, "y": 1},
    440         {"matrix": [1, 14], "x": 13.5, "y": 1, "w": 1.5},
    441 
    442         {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    443         {"matrix": [2, 2], "x": 1.75, "y": 2},
    444         {"matrix": [2, 3], "x": 2.75, "y": 2},
    445         {"matrix": [2, 4], "x": 3.75, "y": 2},
    446         {"matrix": [2, 5], "x": 4.75, "y": 2},
    447         {"matrix": [2, 6], "x": 5.75, "y": 2},
    448         {"matrix": [2, 7], "x": 6.75, "y": 2},
    449         {"matrix": [2, 8], "x": 7.75, "y": 2},
    450         {"matrix": [2, 9], "x": 8.75, "y": 2},
    451         {"matrix": [2, 10], "x": 9.75, "y": 2},
    452         {"matrix": [2, 11], "x": 10.75, "y": 2},
    453         {"matrix": [2, 12], "x": 11.75, "y": 2},
    454         {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
    455 
    456         {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
    457         {"matrix": [3, 2], "x": 2.25, "y": 3},
    458         {"matrix": [3, 3], "x": 3.25, "y": 3},
    459         {"matrix": [3, 4], "x": 4.25, "y": 3},
    460         {"matrix": [3, 5], "x": 5.25, "y": 3},
    461         {"matrix": [3, 6], "x": 6.25, "y": 3},
    462         {"matrix": [3, 7], "x": 7.25, "y": 3},
    463         {"matrix": [3, 8], "x": 8.25, "y": 3},
    464         {"matrix": [3, 9], "x": 9.25, "y": 3},
    465         {"matrix": [3, 10], "x": 10.25, "y": 3},
    466         {"matrix": [3, 11], "x": 11.25, "y": 3},
    467         {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
    468         {"matrix": [3, 14], "x": 14, "y": 3},
    469 
    470         {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
    471         {"matrix": [4, 1], "x": 1.5, "y": 4},
    472         {"matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.5},
    473         {"matrix": [4, 6], "x": 4, "y": 4, "w": 7},
    474         {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
    475         {"matrix": [4, 13], "x": 12.5, "y": 4},
    476         {"matrix": [4, 14], "x": 13.5, "y": 4, "w": 1.5}
    477       ]
    478     },
    479     "LAYOUT_60_hhkb": {
    480       "layout": [
    481         {"matrix": [0, 0], "x": 0, "y": 0},
    482         {"matrix": [0, 1], "x": 1, "y": 0},
    483         {"matrix": [0, 2], "x": 2, "y": 0},
    484         {"matrix": [0, 3], "x": 3, "y": 0},
    485         {"matrix": [0, 4], "x": 4, "y": 0},
    486         {"matrix": [0, 5], "x": 5, "y": 0},
    487         {"matrix": [0, 6], "x": 6, "y": 0},
    488         {"matrix": [0, 7], "x": 7, "y": 0},
    489         {"matrix": [0, 8], "x": 8, "y": 0},
    490         {"matrix": [0, 9], "x": 9, "y": 0},
    491         {"matrix": [0, 10], "x": 10, "y": 0},
    492         {"matrix": [0, 11], "x": 11, "y": 0},
    493         {"matrix": [0, 12], "x": 12, "y": 0},
    494         {"matrix": [0, 13], "x": 13, "y": 0},
    495         {"matrix": [0, 14], "x": 14, "y": 0},
    496 
    497         {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    498         {"matrix": [1, 2], "x": 1.5, "y": 1},
    499         {"matrix": [1, 3], "x": 2.5, "y": 1},
    500         {"matrix": [1, 4], "x": 3.5, "y": 1},
    501         {"matrix": [1, 5], "x": 4.5, "y": 1},
    502         {"matrix": [1, 6], "x": 5.5, "y": 1},
    503         {"matrix": [1, 7], "x": 6.5, "y": 1},
    504         {"matrix": [1, 8], "x": 7.5, "y": 1},
    505         {"matrix": [1, 9], "x": 8.5, "y": 1},
    506         {"matrix": [1, 10], "x": 9.5, "y": 1},
    507         {"matrix": [1, 11], "x": 10.5, "y": 1},
    508         {"matrix": [1, 12], "x": 11.5, "y": 1},
    509         {"matrix": [1, 13], "x": 12.5, "y": 1},
    510         {"matrix": [1, 14], "x": 13.5, "y": 1, "w": 1.5},
    511 
    512         {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    513         {"matrix": [2, 2], "x": 1.75, "y": 2},
    514         {"matrix": [2, 3], "x": 2.75, "y": 2},
    515         {"matrix": [2, 4], "x": 3.75, "y": 2},
    516         {"matrix": [2, 5], "x": 4.75, "y": 2},
    517         {"matrix": [2, 6], "x": 5.75, "y": 2},
    518         {"matrix": [2, 7], "x": 6.75, "y": 2},
    519         {"matrix": [2, 8], "x": 7.75, "y": 2},
    520         {"matrix": [2, 9], "x": 8.75, "y": 2},
    521         {"matrix": [2, 10], "x": 9.75, "y": 2},
    522         {"matrix": [2, 11], "x": 10.75, "y": 2},
    523         {"matrix": [2, 12], "x": 11.75, "y": 2},
    524         {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
    525 
    526         {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
    527         {"matrix": [3, 2], "x": 2.25, "y": 3},
    528         {"matrix": [3, 3], "x": 3.25, "y": 3},
    529         {"matrix": [3, 4], "x": 4.25, "y": 3},
    530         {"matrix": [3, 5], "x": 5.25, "y": 3},
    531         {"matrix": [3, 6], "x": 6.25, "y": 3},
    532         {"matrix": [3, 7], "x": 7.25, "y": 3},
    533         {"matrix": [3, 8], "x": 8.25, "y": 3},
    534         {"matrix": [3, 9], "x": 9.25, "y": 3},
    535         {"matrix": [3, 10], "x": 10.25, "y": 3},
    536         {"matrix": [3, 11], "x": 11.25, "y": 3},
    537         {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
    538         {"matrix": [3, 14], "x": 14, "y": 3},
    539 
    540         {"matrix": [4, 1], "x": 1.5, "y": 4},
    541         {"matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.5},
    542         {"matrix": [4, 6], "x": 4, "y": 4, "w": 7},
    543         {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
    544         {"matrix": [4, 13], "x": 12.5, "y": 4}
    545       ]
    546     }
    547   }
    548 }