{
  "$schema": "https://o2csi.github.io/candeo/device-definition.schema.json",
  "name": "Dell G5 5500",
  "notes": [
    "Unverified: never tried on this machine. Written on 2026-10-16 by alienfx.mjs from alienfx-tools, https://github.com/T-Troll/alienfx-tools, MIT licence, commit 3289c320 (2026-10-14): alienfx-gui/Mappings/devices.csv, each machine's map of its lights.",
    "Its map there: “Dell G5 5500”, line 571, device “Main lights”. Which id lights what is that map's; the names are its own, in plain words.",
    "The protocol is verified: the AW-ELC's live preview, as alienware-17-r5-zones.json sends it, which stores nothing in the device.",
    "Matched on the machine (#326): SMBIOS names it “G5 5500”, as dmidecode reports it in linuxhw/DMI, https://github.com/linuxhw/DMI (CC BY 4.0), commit 57b21bc6 (2025-01-06): Notebook/Dell/G5/G5 5500, SKU 09E2.",
    "alienfx-tools names ids 4 to 15 by number alone, 12 down to 01: taken for the light bar along the front, which Dell fits with the RGB keyboard (Dell's community forum, “G5 5500 Alienware FX options”), and drawn there from 1 to 12.",
    "Drawn from the front, lid open, the lights at the back seen through the hinge. Where a light sits is not in the source: the keyboard zones keep the order and widths of alienfx-tools' grid, the rest is drawn where its name puts it.",
    "Does it light? Say so: https://github.com/o2csi/candeo/issues/new?template=device-report.yml"
  ],
  "match": { "vid": "187c", "pid": "0550", "usagePage": "ff00", "usage": "0001", "machine": "G5 5500" },
  "report": { "wire": "output", "length": 33, "prefix": "00" },
  "frame": {
    "pace": { "atLeastMs": 100, "skipUnchanged": true },
    "open": ["03 21 00 01 ff ff"],
    "each": {
      "group": "colour",
      "chunk": 4,
      "send": ["03 23 01 00 {count} {addresses}", "03 24 00 07 d0 00 fa {r} {g} {b}"]
    },
    "close": ["03 21 00 03 00 ff"]
  },
  "lights": {
    "kind": "zones",
    "items": [
      { "name": "keyboard, left", "address": 0, "rect": [1.6, 10.5, 3.38, 4.6] },
      { "name": "keyboard, centre", "address": 1, "rect": [5.08, 10.5, 3.38, 4.6] },
      { "name": "keyboard, right", "address": 2, "rect": [8.55, 10.5, 3.38, 4.6] },
      { "name": "keyboard, numeric keypad", "address": 3, "rect": [12.03, 10.5, 3.38, 4.6] },
      { "name": "light bar, 12", "address": 4, "rect": [13.93, 17.95, 1.08, 0.3] },
      { "name": "light bar, 11", "address": 5, "rect": [12.75, 17.95, 1.08, 0.3] },
      { "name": "light bar, 10", "address": 6, "rect": [11.58, 17.95, 1.08, 0.3] },
      { "name": "light bar, 9", "address": 7, "rect": [10.4, 17.95, 1.08, 0.3] },
      { "name": "light bar, 8", "address": 8, "rect": [9.23, 17.95, 1.08, 0.3] },
      { "name": "light bar, 7", "address": 9, "rect": [8.05, 17.95, 1.08, 0.3] },
      { "name": "light bar, 6", "address": 10, "rect": [6.87, 17.95, 1.08, 0.3] },
      { "name": "light bar, 5", "address": 11, "rect": [5.7, 17.95, 1.08, 0.3] },
      { "name": "light bar, 4", "address": 12, "rect": [4.52, 17.95, 1.08, 0.3] },
      { "name": "light bar, 3", "address": 13, "rect": [3.35, 17.95, 1.08, 0.3] },
      { "name": "light bar, 2", "address": 14, "rect": [2.17, 17.95, 1.08, 0.3] },
      { "name": "light bar, 1", "address": 15, "rect": [1, 17.95, 1.08, 0.3] }
    ]
  },
  "outline": [{ "rect": [0.5, 0, 15, 8], "r": 0.5 }, { "rect": [0, 9, 16, 9.5], "r": 0.8 }],
  "examples": [
    {
      "colours": ["ff0000", "00ff00", "0000ff"],
      "reports": [
        "03 21 00 01 ff ff",
        "03 23 01 00 01 00",
        "03 24 00 07 d0 00 fa ff 00 00",
        "03 23 01 00 01 01",
        "03 24 00 07 d0 00 fa 00 ff 00",
        "03 23 01 00 01 02",
        "03 24 00 07 d0 00 fa 00 00 ff",
        "03 23 01 00 04 03 04 05 06",
        "03 24 00 07 d0 00 fa",
        "03 23 01 00 04 07 08 09 0a",
        "03 24 00 07 d0 00 fa",
        "03 23 01 00 04 0b 0c 0d 0e",
        "03 24 00 07 d0 00 fa",
        "03 23 01 00 01 0f",
        "03 24 00 07 d0 00 fa",
        "03 21 00 03 00 ff"
      ]
    }
  ]
}
