diff --git a/keyboards/converter/thinkpad_t6x/info.json b/keyboards/converter/thinkpad_t6x/info.json new file mode 100644 index 000000000000..5e7c564c4a77 --- /dev/null +++ b/keyboards/converter/thinkpad_t6x/info.json @@ -0,0 +1,116 @@ +{ + "board": "GENERIC_RP_RP2040", + "bootloader": "rp2040", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "extrakey": true, + "mousekey": true + }, + "processor": "RP2040", + "ps2": { + "driver": "vendor", + "enabled": true, + "mouse_enabled": true + }, + "layouts": { + "LAYOUT_iso": { + "layout": [ + {"label": "Esc", "matrix": [5, 0], "x": 0, "y": 0, "w": 0.9, "h": 0.75}, + {"label": "Mute", "matrix": [4, 10], "x": 0.9, "y": 0, "w": 0.75, "h": 0.5}, + {"label": "Vol -", "matrix": [3, 10], "x": 1.65, "y": 0, "w": 0.75, "h": 0.5}, + {"label": "Vol +", "matrix": [2, 10], "x": 2.4, "y": 0, "w": 0.75, "h": 0.5}, + {"label": "ThinkVantage", "matrix": [5, 10], "x": 3.5, "y": 0, "w": 1.25, "h": 0.5}, + {"label": "PrtSc", "matrix": [1, 13], "x": 8.9, "y": 0, "w": 0.9, "h": 0.65}, + {"label": "ScrLk", "matrix": [2, 13], "x": 9.8, "y": 0, "w": 0.9, "h": 0.65}, + {"label": "Pause", "matrix": [6, 12], "x": 10.7, "y": 0, "w": 0.9, "h": 0.65}, + {"label": "Insert", "matrix": [0, 9], "x": 12, "y": 0, "w": 0.9, "h": 0.65}, + {"label": "Home", "matrix": [0, 12], "x": 12.9, "y": 0, "w": 0.9, "h": 0.65}, + {"label": "PgUp", "matrix": [0, 11], "x": 13.8, "y": 0, "w": 0.9, "h": 0.65}, + {"label": "F1", "matrix": [0, 1], "x": 0, "y": 0.75, "w": 0.9, "h": 0.65}, + {"label": "F2", "matrix": [0, 2], "x": 0.9, "y": 0.75, "w": 0.9, "h": 0.65}, + {"label": "F3", "matrix": [3, 2], "x": 1.8, "y": 0.75, "w": 0.9, "h": 0.65}, + {"label": "F4", "matrix": [5, 2], "x": 2.7, "y": 0.75, "w": 0.9, "h": 0.65}, + {"label": "F5", "matrix": [5, 8], "x": 4, "y": 0.75, "w": 0.9, "h": 0.65}, + {"label": "F6", "matrix": [5, 5], "x": 4.9, "y": 0.75, "w": 0.9, "h": 0.65}, + {"label": "F7", "matrix": [3, 6], "x": 5.8, "y": 0.75, "w": 0.9, "h": 0.65}, + {"label": "F8", "matrix": [0, 6], "x": 6.7, "y": 0.75, "w": 0.9, "h": 0.65}, + {"label": "F9", "matrix": [0, 8], "x": 8, "y": 0.75, "w": 0.9, "h": 0.65}, + {"label": "F10", "matrix": [1, 8], "x": 8.9, "y": 0.75, "w": 0.9, "h": 0.65}, + {"label": "F11", "matrix": [1, 10], "x": 9.8, "y": 0.75, "w": 0.9, "h": 0.65}, + {"label": "F12", "matrix": [1, 9], "x": 10.7, "y": 0.75, "w": 0.9, "h": 0.65}, + {"label": "Delete", "matrix": [0, 10], "x": 12, "y": 0.75, "w": 0.9, "h": 0.65}, + {"label": "End", "matrix": [1, 12], "x": 12.9, "y": 0.75, "w": 0.9, "h": 0.65}, + {"label": "PgDn", "matrix": [1, 11], "x": 13.8, "y": 0.75, "w": 0.9, "h": 0.65}, + {"label": "`\u00ac", "matrix": [0, 0], "x": 0, "y": 1.4}, + {"label": "1!", "matrix": [1, 0], "x": 1, "y": 1.4}, + {"label": "2\"", "matrix": [1, 1], "x": 2, "y": 1.4}, + {"label": "3\u00a3", "matrix": [1, 2], "x": 3, "y": 1.4}, + {"label": "4$", "matrix": [1, 3], "x": 4, "y": 1.4}, + {"label": "5%", "matrix": [0, 3], "x": 5, "y": 1.4}, + {"label": "6^", "matrix": [0, 4], "x": 6, "y": 1.4}, + {"label": "7&", "matrix": [1, 4], "x": 7, "y": 1.4}, + {"label": "8*", "matrix": [1, 5], "x": 8, "y": 1.4}, + {"label": "9(", "matrix": [1, 6], "x": 9, "y": 1.4}, + {"label": "0)", "matrix": [1, 7], "x": 10, "y": 1.4}, + {"label": "-_", "matrix": [0, 7], "x": 11, "y": 1.4}, + {"label": "=+", "matrix": [0, 5], "x": 12, "y": 1.4}, + {"label": "Bksp", "matrix": [3, 8], "x": 13, "y": 1.4, "w": 2}, + {"label": "Tab", "matrix": [3, 0], "x": 0, "y": 2.4, "w": 1.5}, + {"label": "Q", "matrix": [2, 0], "x": 1.5, "y": 2.4}, + {"label": "W", "matrix": [2, 1], "x": 2.5, "y": 2.4}, + {"label": "E", "matrix": [2, 2], "x": 3.5, "y": 2.4}, + {"label": "R", "matrix": [2, 3], "x": 4.5, "y": 2.4}, + {"label": "T", "matrix": [3, 3], "x": 5.5, "y": 2.4}, + {"label": "Y", "matrix": [3, 4], "x": 6.5, "y": 2.4}, + {"label": "U", "matrix": [2, 4], "x": 7.5, "y": 2.4}, + {"label": "I", "matrix": [2, 5], "x": 8.5, "y": 2.4}, + {"label": "O", "matrix": [2, 6], "x": 9.5, "y": 2.4}, + {"label": "P", "matrix": [2, 7], "x": 10.5, "y": 2.4}, + {"label": "[{", "matrix": [3, 7], "x": 11.5, "y": 2.4}, + {"label": "]}", "matrix": [3, 5], "x": 12.5, "y": 2.4}, + {"label": "Caps Lock", "matrix": [3, 1], "x": 0, "y": 3.4, "w": 1.75}, + {"label": "A", "matrix": [4, 0], "x": 1.75, "y": 3.4}, + {"label": "S", "matrix": [4, 1], "x": 2.75, "y": 3.4}, + {"label": "D", "matrix": [4, 2], "x": 3.75, "y": 3.4}, + {"label": "F", "matrix": [4, 3], "x": 4.75, "y": 3.4}, + {"label": "G", "matrix": [5, 3], "x": 5.75, "y": 3.4}, + {"label": "H", "matrix": [5, 4], "x": 6.75, "y": 3.4}, + {"label": "J", "matrix": [4, 4], "x": 7.75, "y": 3.4}, + {"label": "K", "matrix": [4, 5], "x": 8.75, "y": 3.4}, + {"label": "L", "matrix": [4, 6], "x": 9.75, "y": 3.4}, + {"label": ";:", "matrix": [4, 7], "x": 10.75, "y": 3.4}, + {"label": "'@", "matrix": [5, 7], "x": 11.75, "y": 3.4}, + {"label": "#~", "matrix": [6, 7], "x": 12.75, "y": 3.4}, + {"label": "Enter", "matrix": [6, 8], "x": 13.75, "y": 2.4, "w": 1.25, "h": 2}, + {"label": "Shift", "matrix": [3, 14], "x": 0, "y": 4.4, "w": 1.25}, + {"label": "\\|", "matrix": [5, 1], "x": 1.25, "y": 4.4}, + {"label": "Z", "matrix": [6, 0], "x": 2.25, "y": 4.4}, + {"label": "X", "matrix": [6, 1], "x": 3.25, "y": 4.4}, + {"label": "C", "matrix": [6, 2], "x": 4.25, "y": 4.4}, + {"label": "V", "matrix": [6, 3], "x": 5.25, "y": 4.4}, + {"label": "B", "matrix": [7, 3], "x": 6.25, "y": 4.4}, + {"label": "N", "matrix": [7, 4], "x": 7.25, "y": 4.4}, + {"label": "M", "matrix": [6, 4], "x": 8.25, "y": 4.4}, + {"label": ",<", "matrix": [6, 5], "x": 9.25, "y": 4.4}, + {"label": ".>", "matrix": [6, 6], "x": 10.25, "y": 4.4}, + {"label": "/?", "matrix": [7, 7], "x": 11.25, "y": 4.4}, + {"label": "Shift", "matrix": [6, 14], "x": 12.25, "y": 4.4, "w": 2.75}, + {"label": "Fn", "matrix": [4, 9], "x": 0, "y": 5.4}, + {"label": "Ctrl", "matrix": [0, 15], "x": 1, "y": 5.4, "w": 1.25}, + {"label": "Left OS", "matrix": [2, 11], "x": 2.25, "y": 5.4, "w": 0.9}, + {"label": "Alt", "matrix": [5, 13], "x": 3.15, "y": 5.4}, + {"label": "Space", "matrix": [7, 8], "x": 4.15, "y": 5.4, "w": 5}, + {"label": "AltGr", "matrix": [7, 13], "x": 9.25, "y": 5.4}, + {"label": "Menu", "matrix": [4, 11], "x": 10.25, "y": 5.4}, + {"label": "Ctrl", "matrix": [6, 15], "x": 11.25, "y": 5.4}, + {"label": "Browser Back", "matrix": [6, 11], "x": 12.25, "y": 5.4, "w": 0.9, "h": 0.75}, + {"label": "Up", "matrix": [5, 12], "x": 13.15, "y": 5.4, "w": 0.9, "h": 0.75}, + {"label": "Browser Forward", "matrix": [7, 11], "x": 14.05, "y": 5.4, "w": 0.9, "h": 0.75}, + {"label": "Left", "matrix": [7, 12], "x": 12.25, "y": 6.15, "w": 0.9, "h": 0.75}, + {"label": "Down", "matrix": [7, 10], "x": 13.15, "y": 6.15, "w": 0.9, "h": 0.75}, + {"label": "Right", "matrix": [7, 9], "x": 14.05, "y": 6.15, "w": 0.9, "h": 0.75} + ] + } + } +} diff --git a/keyboards/converter/thinkpad_t6x/rpi_pico/keymaps/default/keymap.c b/keyboards/converter/thinkpad_t6x/keymaps/default/keymap.c similarity index 100% rename from keyboards/converter/thinkpad_t6x/rpi_pico/keymaps/default/keymap.c rename to keyboards/converter/thinkpad_t6x/keymaps/default/keymap.c diff --git a/keyboards/converter/thinkpad_t6x/pico_t61/keyboard.json b/keyboards/converter/thinkpad_t6x/pico_t61/keyboard.json new file mode 100644 index 000000000000..78a6a8e3bed0 --- /dev/null +++ b/keyboards/converter/thinkpad_t6x/pico_t61/keyboard.json @@ -0,0 +1,19 @@ +{ + "manufacturer": "Frank Adams", + "keyboard_name": "converter/thinkpad_t6x/pico_t61", + "maintainer": "Al En", + "matrix_pins": { + "cols": ["GP27", "GP26", "GP17", "GP14", "GP12", "GP19", "GP18", "GP15", "GP13", "GP6", "GP16", "GP5", "GP28", "GP2", "GP4", "GP3"], + "rows": ["GP11", "GP22", "GP10", "GP21", "GP9", "GP20", "GP8", "GP7"] + }, + "ps2": { + "clock_pin": "GP0", + "data_pin": "GP1" + }, + "url": "https://github.com/thedalles77/USB_Laptop_Keyboard_Controller/tree/master/Example_Keyboards/Pico_T61_Keyboard", + "usb": { + "device_version": "1.0.0", + "pid": "0xBACA", + "vid": "0xFEED" + } +} diff --git a/keyboards/converter/thinkpad_t6x/pico_t61/readme.md b/keyboards/converter/thinkpad_t6x/pico_t61/readme.md new file mode 100644 index 000000000000..a849795e3fa3 --- /dev/null +++ b/keyboards/converter/thinkpad_t6x/pico_t61/readme.md @@ -0,0 +1,27 @@ +# converter/thinkpad_t6x/pico_t61 + +![converter/thinkpad_t6x/pico_t61](https://i.imgur.com/KDouWIc.jpeg) + +This is a converter PCB for Lenovo Thinkpad keyboards from T60, T400 and X200 series, based on the Raspberry Pi Pico W. The QMK implementation here is specific to the converter in the link below. Similar PCB designs to convert a Thinkpad keyboard to USB exist, but they use a different microcontroller and wiring of the keyboard connector with the MCU. + +* Keyboard Maintainer: [Al En](https://github.com/gitaen) +* Hardware Supported: The linked converter PCB with keyboards from various Thinkpad models +* Hardware Availability: [Custom PCB](https://github.com/thedalles77/USB_Laptop_Keyboard_Controller/tree/master/Example_Keyboards/Pico_T61_Keyboard) + +Make example for this keyboard (after setting up your build environment): + + make converter/thinkpad_t6x/pico_t61:default + +Flashing example for this keyboard: + + make converter/thinkpad_t6x/pico_t61:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (\`~) and plug in the keyboard +* **Physical BOOTSEL button**: Hold down the BOOTSEL button on the Raspberry PiPico W and plug the keyboard +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available diff --git a/keyboards/converter/thinkpad_t6x/rpi_pico/keyboard.json b/keyboards/converter/thinkpad_t6x/rpi_pico/keyboard.json index 4f876a4a94e2..9c899db53405 100644 --- a/keyboards/converter/thinkpad_t6x/rpi_pico/keyboard.json +++ b/keyboards/converter/thinkpad_t6x/rpi_pico/keyboard.json @@ -2,130 +2,18 @@ "manufacturer": "strobo5", "keyboard_name": "converter/thinkpad_t6x/rpi_pico", "maintainer": "strobo5", - "board": "GENERIC_RP_RP2040", - "bootloader": "rp2040", - "diode_direction": "COL2ROW", - "features": { - "bootmagic": true, - "extrakey": true, - "mousekey": true - }, "matrix_pins": { "cols": ["GP7", "GP9", "GP11", "GP13", "GP17", "GP16", "GP14", "GP12", "GP15", "GP8", "GP10", "GP6", "GP4", "GP2", "GP5", "GP3"], "rows": ["GP20", "GP26", "GP22", "GP21", "GP18", "GP19", "GP27", "GP28"] }, - "processor": "RP2040", "ps2": { "clock_pin": "GP1", - "data_pin": "GP0", - "driver": "vendor", - "enabled": true, - "mouse_enabled": true + "data_pin": "GP0" }, "url": "https://github.com/strobo5/T61_PiPico_Scanner", "usb": { "device_version": "1.0.0", "pid": "0x0000", "vid": "0xFEED" - }, - "layouts": { - "LAYOUT_iso": { - "layout": [ - {"label": "Esc", "matrix": [5, 0], "x": 0, "y": 0, "w": 0.9, "h": 0.75}, - {"label": "Mute", "matrix": [4, 10], "x": 0.9, "y": 0, "w": 0.75, "h": 0.5}, - {"label": "Vol -", "matrix": [3, 10], "x": 1.65, "y": 0, "w": 0.75, "h": 0.5}, - {"label": "Vol +", "matrix": [2, 10], "x": 2.4, "y": 0, "w": 0.75, "h": 0.5}, - {"label": "ThinkVantage", "matrix": [5, 10], "x": 3.5, "y": 0, "w": 1.25, "h": 0.5}, - {"label": "PrtSc", "matrix": [1, 13], "x": 8.9, "y": 0, "w": 0.9, "h": 0.65}, - {"label": "ScrLk", "matrix": [2, 13], "x": 9.8, "y": 0, "w": 0.9, "h": 0.65}, - {"label": "Pause", "matrix": [6, 12], "x": 10.7, "y": 0, "w": 0.9, "h": 0.65}, - {"label": "Insert", "matrix": [0, 9], "x": 12, "y": 0, "w": 0.9, "h": 0.65}, - {"label": "Home", "matrix": [0, 12], "x": 12.9, "y": 0, "w": 0.9, "h": 0.65}, - {"label": "PgUp", "matrix": [0, 11], "x": 13.8, "y": 0, "w": 0.9, "h": 0.65}, - {"label": "F1", "matrix": [0, 1], "x": 0, "y": 0.75, "w": 0.9, "h": 0.65}, - {"label": "F2", "matrix": [0, 2], "x": 0.9, "y": 0.75, "w": 0.9, "h": 0.65}, - {"label": "F3", "matrix": [3, 2], "x": 1.8, "y": 0.75, "w": 0.9, "h": 0.65}, - {"label": "F4", "matrix": [5, 2], "x": 2.7, "y": 0.75, "w": 0.9, "h": 0.65}, - {"label": "F5", "matrix": [5, 8], "x": 4, "y": 0.75, "w": 0.9, "h": 0.65}, - {"label": "F6", "matrix": [5, 5], "x": 4.9, "y": 0.75, "w": 0.9, "h": 0.65}, - {"label": "F7", "matrix": [3, 6], "x": 5.8, "y": 0.75, "w": 0.9, "h": 0.65}, - {"label": "F8", "matrix": [0, 6], "x": 6.7, "y": 0.75, "w": 0.9, "h": 0.65}, - {"label": "F9", "matrix": [0, 8], "x": 8, "y": 0.75, "w": 0.9, "h": 0.65}, - {"label": "F10", "matrix": [1, 8], "x": 8.9, "y": 0.75, "w": 0.9, "h": 0.65}, - {"label": "F11", "matrix": [1, 10], "x": 9.8, "y": 0.75, "w": 0.9, "h": 0.65}, - {"label": "F12", "matrix": [1, 9], "x": 10.7, "y": 0.75, "w": 0.9, "h": 0.65}, - {"label": "Delete", "matrix": [0, 10], "x": 12, "y": 0.75, "w": 0.9, "h": 0.65}, - {"label": "End", "matrix": [1, 12], "x": 12.9, "y": 0.75, "w": 0.9, "h": 0.65}, - {"label": "PgDn", "matrix": [1, 11], "x": 13.8, "y": 0.75, "w": 0.9, "h": 0.65}, - {"label": "`\u00ac", "matrix": [0, 0], "x": 0, "y": 1.4}, - {"label": "1!", "matrix": [1, 0], "x": 1, "y": 1.4}, - {"label": "2\"", "matrix": [1, 1], "x": 2, "y": 1.4}, - {"label": "3\u00a3", "matrix": [1, 2], "x": 3, "y": 1.4}, - {"label": "4$", "matrix": [1, 3], "x": 4, "y": 1.4}, - {"label": "5%", "matrix": [0, 3], "x": 5, "y": 1.4}, - {"label": "6^", "matrix": [0, 4], "x": 6, "y": 1.4}, - {"label": "7&", "matrix": [1, 4], "x": 7, "y": 1.4}, - {"label": "8*", "matrix": [1, 5], "x": 8, "y": 1.4}, - {"label": "9(", "matrix": [1, 6], "x": 9, "y": 1.4}, - {"label": "0)", "matrix": [1, 7], "x": 10, "y": 1.4}, - {"label": "-_", "matrix": [0, 7], "x": 11, "y": 1.4}, - {"label": "=+", "matrix": [0, 5], "x": 12, "y": 1.4}, - {"label": "Bksp", "matrix": [3, 8], "x": 13, "y": 1.4, "w": 2}, - {"label": "Tab", "matrix": [3, 0], "x": 0, "y": 2.4, "w": 1.5}, - {"label": "Q", "matrix": [2, 0], "x": 1.5, "y": 2.4}, - {"label": "W", "matrix": [2, 1], "x": 2.5, "y": 2.4}, - {"label": "E", "matrix": [2, 2], "x": 3.5, "y": 2.4}, - {"label": "R", "matrix": [2, 3], "x": 4.5, "y": 2.4}, - {"label": "T", "matrix": [3, 3], "x": 5.5, "y": 2.4}, - {"label": "Y", "matrix": [3, 4], "x": 6.5, "y": 2.4}, - {"label": "U", "matrix": [2, 4], "x": 7.5, "y": 2.4}, - {"label": "I", "matrix": [2, 5], "x": 8.5, "y": 2.4}, - {"label": "O", "matrix": [2, 6], "x": 9.5, "y": 2.4}, - {"label": "P", "matrix": [2, 7], "x": 10.5, "y": 2.4}, - {"label": "[{", "matrix": [3, 7], "x": 11.5, "y": 2.4}, - {"label": "]}", "matrix": [3, 5], "x": 12.5, "y": 2.4}, - {"label": "Caps Lock", "matrix": [3, 1], "x": 0, "y": 3.4, "w": 1.75}, - {"label": "A", "matrix": [4, 0], "x": 1.75, "y": 3.4}, - {"label": "S", "matrix": [4, 1], "x": 2.75, "y": 3.4}, - {"label": "D", "matrix": [4, 2], "x": 3.75, "y": 3.4}, - {"label": "F", "matrix": [4, 3], "x": 4.75, "y": 3.4}, - {"label": "G", "matrix": [5, 3], "x": 5.75, "y": 3.4}, - {"label": "H", "matrix": [5, 4], "x": 6.75, "y": 3.4}, - {"label": "J", "matrix": [4, 4], "x": 7.75, "y": 3.4}, - {"label": "K", "matrix": [4, 5], "x": 8.75, "y": 3.4}, - {"label": "L", "matrix": [4, 6], "x": 9.75, "y": 3.4}, - {"label": ";:", "matrix": [4, 7], "x": 10.75, "y": 3.4}, - {"label": "'@", "matrix": [5, 7], "x": 11.75, "y": 3.4}, - {"label": "#~", "matrix": [6, 7], "x": 12.75, "y": 3.4}, - {"label": "Enter", "matrix": [6, 8], "x": 13.75, "y": 2.4, "w": 1.25, "h": 2}, - {"label": "Shift", "matrix": [3, 14], "x": 0, "y": 4.4, "w": 1.25}, - {"label": "\\|", "matrix": [5, 1], "x": 1.25, "y": 4.4}, - {"label": "Z", "matrix": [6, 0], "x": 2.25, "y": 4.4}, - {"label": "X", "matrix": [6, 1], "x": 3.25, "y": 4.4}, - {"label": "C", "matrix": [6, 2], "x": 4.25, "y": 4.4}, - {"label": "V", "matrix": [6, 3], "x": 5.25, "y": 4.4}, - {"label": "B", "matrix": [7, 3], "x": 6.25, "y": 4.4}, - {"label": "N", "matrix": [7, 4], "x": 7.25, "y": 4.4}, - {"label": "M", "matrix": [6, 4], "x": 8.25, "y": 4.4}, - {"label": ",<", "matrix": [6, 5], "x": 9.25, "y": 4.4}, - {"label": ".>", "matrix": [6, 6], "x": 10.25, "y": 4.4}, - {"label": "/?", "matrix": [7, 7], "x": 11.25, "y": 4.4}, - {"label": "Shift", "matrix": [6, 14], "x": 12.25, "y": 4.4, "w": 2.75}, - {"label": "Fn", "matrix": [4, 9], "x": 0, "y": 5.4}, - {"label": "Ctrl", "matrix": [0, 15], "x": 1, "y": 5.4, "w": 1.25}, - {"label": "Left OS", "matrix": [2, 11], "x": 2.25, "y": 5.4, "w": 0.9}, - {"label": "Alt", "matrix": [5, 13], "x": 3.15, "y": 5.4}, - {"label": "Space", "matrix": [7, 8], "x": 4.15, "y": 5.4, "w": 5}, - {"label": "AltGr", "matrix": [7, 13], "x": 9.25, "y": 5.4}, - {"label": "Menu", "matrix": [4, 11], "x": 10.25, "y": 5.4}, - {"label": "Ctrl", "matrix": [6, 15], "x": 11.25, "y": 5.4}, - {"label": "Browser Back", "matrix": [6, 11], "x": 12.25, "y": 5.4, "w": 0.9, "h": 0.75}, - {"label": "Up", "matrix": [5, 12], "x": 13.15, "y": 5.4, "w": 0.9, "h": 0.75}, - {"label": "Browser Forward", "matrix": [7, 11], "x": 14.05, "y": 5.4, "w": 0.9, "h": 0.75}, - {"label": "Left", "matrix": [7, 12], "x": 12.25, "y": 6.15, "w": 0.9, "h": 0.75}, - {"label": "Down", "matrix": [7, 10], "x": 13.15, "y": 6.15, "w": 0.9, "h": 0.75}, - {"label": "Right", "matrix": [7, 9], "x": 14.05, "y": 6.15, "w": 0.9, "h": 0.75} - ] - } } }