1# SPDX-License-Identifier: GPL-2.0 2 3# fmt: off 4wacom_pth660_v145 = [ 5 0x05, 0x01, # . Usage Page (Desktop), 6 0x09, 0x02, # . Usage (Mouse), 7 0xA1, 0x01, # . Collection (Application), 8 0x85, 0x01, # . Report ID (1), 9 0x09, 0x01, # . Usage (Pointer), 10 0xA1, 0x00, # . Collection (Physical), 11 0x05, 0x09, # . Usage Page (Button), 12 0x19, 0x01, # . Usage Minimum (01h), 13 0x29, 0x03, # . Usage Maximum (03h), 14 0x15, 0x00, # . Logical Minimum (0), 15 0x25, 0x01, # . Logical Maximum (1), 16 0x75, 0x01, # . Report Size (1), 17 0x95, 0x03, # . Report Count (3), 18 0x81, 0x02, # . Input (Variable), 19 0x75, 0x01, # . Report Size (1), 20 0x95, 0x05, # . Report Count (5), 21 0x81, 0x03, # . Input (Constant, Variable), 22 0x05, 0x01, # . Usage Page (Desktop), 23 0x09, 0x30, # . Usage (X), 24 0x09, 0x31, # . Usage (Y), 25 0x15, 0x81, # . Logical Minimum (-127), 26 0x25, 0x7F, # . Logical Maximum (127), 27 0x75, 0x08, # . Report Size (8), 28 0x95, 0x02, # . Report Count (2), 29 0x81, 0x06, # . Input (Variable, Relative), 30 0xC0, # . End Collection, 31 0xC0, # . End Collection, 32 0x06, 0x0D, 0xFF, # . Usage Page (FF0Dh), 33 0x09, 0x01, # . Usage (01h), 34 0xA1, 0x01, # . Collection (Application), 35 0x85, 0x10, # . Report ID (16), 36 0x09, 0x20, # . Usage (20h), 37 0xA1, 0x00, # . Collection (Physical), 38 0x09, 0x42, # . Usage (42h), 39 0x09, 0x44, # . Usage (44h), 40 0x09, 0x5A, # . Usage (5Ah), 41 0x09, 0x45, # . Usage (45h), 42 0x09, 0x3C, # . Usage (3Ch), 43 0x09, 0x32, # . Usage (32h), 44 0x09, 0x36, # . Usage (36h), 45 0x15, 0x00, # . Logical Minimum (0), 46 0x25, 0x01, # . Logical Maximum (1), 47 0x75, 0x01, # . Report Size (1), 48 0x95, 0x07, # . Report Count (7), 49 0x81, 0x02, # . Input (Variable), 50 0x95, 0x01, # . Report Count (1), 51 0x81, 0x03, # . Input (Constant, Variable), 52 0x0A, 0x30, 0x01, # . Usage (0130h), 53 0x65, 0x11, # . Unit (Centimeter), 54 0x55, 0x0D, # . Unit Exponent (13), 55 0x35, 0x00, # . Physical Minimum (0), 56 0x47, 0x80, 0x57, 0x00, 0x00, # . Physical Maximum (22400), 57 0x15, 0x00, # . Logical Minimum (0), 58 0x27, 0x00, 0xAF, 0x00, 0x00, # . Logical Maximum (44800), 59 0x75, 0x18, # . Report Size (24), 60 0x95, 0x01, # . Report Count (1), 61 0x81, 0x02, # . Input (Variable), 62 0x0A, 0x31, 0x01, # . Usage (0131h), 63 0x47, 0xD0, 0x39, 0x00, 0x00, # . Physical Maximum (14800), 64 0x27, 0xA0, 0x73, 0x00, 0x00, # . Logical Maximum (29600), 65 0x81, 0x02, # . Input (Variable), 66 0x09, 0x30, # . Usage (30h), 67 0x55, 0x00, # . Unit Exponent (0), 68 0x65, 0x00, # . Unit, 69 0x15, 0x00, # . Logical Minimum (0), 70 0x26, 0xFF, 0x1F, # . Logical Maximum (8191), # !!! Errata: Missing Physical Max = 0 71 0x75, 0x10, # . Report Size (16), 72 0x81, 0x02, # . Input (Variable), 73 0x09, 0x3D, # . Usage (3Dh), 74 0x09, 0x3E, # . Usage (3Eh), 75 0x65, 0x14, # . Unit (Degrees), 76 0x55, 0x00, # . Unit Exponent (0), 77 0x35, 0xC0, # . Physical Minimum (-64), 78 0x45, 0x3F, # . Physical Maximum (63), 79 0x15, 0xC0, # . Logical Minimum (-64), 80 0x25, 0x3F, # . Logical Maximum (63), 81 0x75, 0x08, # . Report Size (8), 82 0x95, 0x02, # . Report Count (2), 83 0x81, 0x02, # . Input (Variable), 84 0x09, 0x41, # . Usage (41h), 85 0x65, 0x14, # . Unit (Degrees), 86 0x55, 0x00, # . Unit Exponent (0), 87 0x36, 0x4C, 0xFF, # . Physical Minimum (-180), 88 0x46, 0xB3, 0x00, # . Physical Maximum (179), 89 0x16, 0x7C, 0xFC, # . Logical Minimum (-900), 90 0x26, 0x83, 0x03, # . Logical Maximum (899), 91 0x75, 0x10, # . Report Size (16), 92 0x95, 0x01, # . Report Count (1), 93 0x81, 0x0A, # . Input (Variable, Wrap), 94 0x0A, 0x03, 0x0D, # . Usage (0D03h), 95 0x65, 0x00, # . Unit, 96 0x55, 0x00, # . Unit Exponent (0), 97 0x15, 0x00, # . Logical Minimum (0), 98 0x26, 0xFF, 0x07, # . Logical Maximum (2047), # !!! Errata: Missing Physical Min/Max = 0 99 0x75, 0x10, # . Report Size (16), 100 0x95, 0x01, # . Report Count (1), 101 0x81, 0x02, # . Input (Variable), 102 0x0A, 0x32, 0x01, # . Usage (0132h), 103 0x15, 0x00, # . Logical Minimum (0), 104 0x25, 0x3F, # . Logical Maximum (63), 105 0x75, 0x08, # . Report Size (8), 106 0x95, 0x01, # . Report Count (1), 107 0x81, 0x02, # . Input (Variable), 108 0x09, 0x5B, # . Usage (5Bh), 109 0x09, 0x5C, # . Usage (5Ch), 110 0x17, 0x00, 0x00, 0x00, 0x80, # . Logical Minimum (-2147483648), 111 0x27, 0xFF, 0xFF, 0xFF, 0x7F, # . Logical Maximum (2147483647), 112 0x75, 0x20, # . Report Size (32), 113 0x95, 0x02, # . Report Count (2), 114 0x81, 0x02, # . Input (Variable), 115 0x09, 0x77, # . Usage (77h), 116 0x15, 0x00, # . Logical Minimum (0), 117 0x26, 0xFF, 0x0F, # . Logical Maximum (4095), 118 0x75, 0x10, # . Report Size (16), 119 0x95, 0x01, # . Report Count (1), 120 0x81, 0x02, # . Input (Variable), 121 0xC0, # . End Collection, 122 0x85, 0x11, # . Report ID (17), 123 0x09, 0x39, # . Usage (39h), 124 0xA1, 0x00, # . Collection (Physical), 125 0x1A, 0x10, 0x09, # . Usage Minimum (0910h), 126 0x2A, 0x17, 0x09, # . Usage Maximum (0917h), 127 0x15, 0x00, # . Logical Minimum (0), 128 0x25, 0x01, # . Logical Maximum (1), 129 0x75, 0x01, # . Report Size (1), 130 0x95, 0x08, # . Report Count (8), 131 0x81, 0x02, # . Input (Variable), 132 0x1A, 0x40, 0x09, # . Usage Minimum (0940h), 133 0x2A, 0x47, 0x09, # . Usage Maximum (0947h), 134 0x81, 0x02, # . Input (Variable), 135 0x0A, 0x95, 0x09, # . Usage (0995h), 136 0x95, 0x01, # . Report Count (1), 137 0x81, 0x02, # . Input (Variable), 138 0x95, 0x07, # . Report Count (7), 139 0x81, 0x03, # . Input (Constant, Variable), 140 0x0A, 0x38, 0x01, # . Usage (0138h), 141 0x65, 0x14, # . Unit (Degrees), 142 0x55, 0x00, # . Unit Exponent (0), 143 0x35, 0x00, # . Physical Minimum (0), 144 0x46, 0x67, 0x01, # . Physical Maximum (359), 145 0x15, 0x00, # . Logical Minimum (0), 146 0x25, 0x47, # . Logical Maximum (71), 147 0x75, 0x07, # . Report Size (7), 148 0x95, 0x01, # . Report Count (1), 149 0x81, 0x0A, # . Input (Variable, Wrap), 150 0x0A, 0x39, 0x01, # . Usage (0139h), 151 0x65, 0x00, # . Unit, 152 0x55, 0x00, # . Unit Exponent (0), 153 0x25, 0x01, # . Logical Maximum (1), # !!! Errata: Missing Physical Max = 0 154 0x75, 0x01, # . Report Size (1), 155 0x95, 0x01, # . Report Count (1), 156 0x81, 0x02, # . Input (Variable), 157 0x75, 0x08, # . Report Size (8), 158 0x95, 0x04, # . Report Count (4), 159 0x81, 0x03, # . Input (Constant, Variable), 160 0xC0, # . End Collection, 161 0x85, 0x13, # . Report ID (19), 162 0x0A, 0x13, 0x10, # . Usage (1013h), 163 0xA1, 0x00, # . Collection (Physical), 164 0x0A, 0x3B, 0x04, # . Usage (043Bh), 165 0x15, 0x00, # . Logical Minimum (0), 166 0x25, 0x64, # . Logical Maximum (100), 167 0x75, 0x07, # . Report Size (7), 168 0x95, 0x01, # . Report Count (1), 169 0x81, 0x02, # . Input (Variable), 170 0x0A, 0x04, 0x04, # . Usage (0404h), 171 0x25, 0x01, # . Logical Maximum (1), 172 0x75, 0x01, # . Report Size (1), 173 0x81, 0x02, # . Input (Variable), 174 0x0A, 0x52, 0x04, # . Usage (0452h), 175 0x15, 0x00, # . Logical Minimum (0), 176 0x25, 0x01, # . Logical Maximum (1), 177 0x75, 0x01, # . Report Size (1), 178 0x95, 0x01, # . Report Count (1), 179 0x81, 0x02, # . Input (Variable), 180 0x95, 0x06, # . Report Count (6), 181 0x81, 0x03, # . Input (Constant, Variable), 182 0x0A, 0x54, 0x04, # . Usage (0454h), 183 0x95, 0x01, # . Report Count (1), 184 0x81, 0x02, # . Input (Variable), 185 0x75, 0x08, # . Report Size (8), 186 0x95, 0x06, # . Report Count (6), 187 0x81, 0x03, # . Input (Constant, Variable), 188 0xC0, # . End Collection, 189 0x09, 0x0E, # . Usage (0Eh), 190 0xA1, 0x02, # . Collection (Logical), 191 0x15, 0x00, # . Logical Minimum (0), 192 0x85, 0x02, # . Report ID (2), 193 0x09, 0x01, # . Usage (01h), 194 0x75, 0x08, # . Report Size (8), 195 0x25, 0x01, # . Logical Maximum (1), 196 0x95, 0x01, # . Report Count (1), 197 0xB1, 0x02, # . Feature (Variable), 198 0x85, 0x03, # . Report ID (3), 199 0x0A, 0x03, 0x10, # . Usage (1003h), 200 0x26, 0xFF, 0x00, # . Logical Maximum (255), 201 0x95, 0x01, # . Report Count (1), 202 0xB1, 0x02, # . Feature (Variable), 203 0x85, 0x04, # . Report ID (4), 204 0x0A, 0x04, 0x10, # . Usage (1004h), 205 0x25, 0x01, # . Logical Maximum (1), 206 0x95, 0x01, # . Report Count (1), 207 0xB1, 0x02, # . Feature (Variable), 208 0x85, 0x07, # . Report ID (7), 209 0x0A, 0x09, 0x10, # . Usage (1009h), 210 0x25, 0x02, # . Logical Maximum (2), 211 0x95, 0x01, # . Report Count (1), 212 0xB1, 0x02, # . Feature (Variable), 213 0x95, 0x01, # . Report Count (1), 214 0xB1, 0x03, # . Feature (Constant, Variable), 215 0x0A, 0x07, 0x10, # . Usage (1007h), 216 0x09, 0x00, # . Usage (00h), 217 0x0A, 0x08, 0x10, # . Usage (1008h), 218 0x09, 0x00, # . Usage (00h), 219 0x09, 0x00, # . Usage (00h), 220 0x09, 0x00, # . Usage (00h), 221 0x27, 0xFF, 0xFF, 0x00, 0x00, # . Logical Maximum (65535), 222 0x75, 0x10, # . Report Size (16), 223 0x95, 0x06, # . Report Count (6), 224 0xB1, 0x02, # . Feature (Variable), 225 0x75, 0x08, # . Report Size (8), 226 0x95, 0x01, # . Report Count (1), 227 0xB1, 0x03, # . Feature (Constant, Variable), 228 0x85, 0x0C, # . Report ID (12), 229 0x0A, 0x30, 0x0D, # . Usage (0D30h), 230 0x0A, 0x31, 0x0D, # . Usage (0D31h), 231 0x0A, 0x32, 0x0D, # . Usage (0D32h), 232 0x0A, 0x33, 0x0D, # . Usage (0D33h), # !!! Errata: Missing Non-zero Physical Max 233 0x65, 0x11, # . Unit (Centimeter), 234 0x55, 0x0D, # . Unit Exponent (13), 235 0x75, 0x10, # . Report Size (16), 236 0x95, 0x04, # . Report Count (4), 237 0xB1, 0x03, # . Feature (Constant, Variable), 238 0x85, 0x0D, # . Report ID (13), 239 0x65, 0x00, # . Unit, 240 0x55, 0x00, # . Unit Exponent (0), 241 0x0A, 0x0D, 0x10, # . Usage (100Dh), 242 0x15, 0x00, # . Logical Minimum (0), 243 0x25, 0x01, # . Logical Maximum (1), 244 0x75, 0x08, # . Report Size (8), 245 0x95, 0x01, # . Report Count (1), 246 0xB1, 0x02, # . Feature (Variable), 247 0x85, 0x14, # . Report ID (20), 248 0x0A, 0x14, 0x10, # . Usage (1014h), 249 0x26, 0xFF, 0x00, # . Logical Maximum (255), 250 0x95, 0x0D, # . Report Count (13), 251 0xB1, 0x02, # . Feature (Variable), 252 0x85, 0x31, # . Report ID (49), 253 0x0A, 0x31, 0x10, # . Usage (1031h), 254 0x25, 0x64, # . Logical Maximum (100), 255 0x95, 0x05, # . Report Count (5), 256 0xB1, 0x02, # . Feature (Variable), 257 0x85, 0x32, # . Report ID (50), 258 0x0A, 0x31, 0x10, # . Usage (1031h), 259 0x25, 0x64, # . Logical Maximum (100), 260 0x95, 0x01, # . Report Count (1), 261 0xB1, 0x02, # . Feature (Variable), 262 0x0A, 0x32, 0x10, # . Usage (1032h), 263 0x25, 0x03, # . Logical Maximum (3), 264 0xB1, 0x02, # . Feature (Variable), 265 0x85, 0x34, # . Report ID (52), 266 0x0A, 0x34, 0x10, # . Usage (1034h), 267 0x25, 0x01, # . Logical Maximum (1), 268 0x95, 0x04, # . Report Count (4), 269 0xB1, 0x02, # . Feature (Variable), 270 0x85, 0x35, # . Report ID (53), 271 0x0A, 0x35, 0x10, # . Usage (1035h), 272 0x26, 0xFF, 0x00, # . Logical Maximum (255), 273 0x95, 0x0A, # . Report Count (10), 274 0xB1, 0x02, # . Feature (Variable), 275 0x85, 0x36, # . Report ID (54), 276 0x0A, 0x35, 0x10, # . Usage (1035h), 277 0x26, 0xFF, 0x00, # . Logical Maximum (255), 278 0x96, 0x01, 0x01, # . Report Count (257), 279 0xB1, 0x02, # . Feature (Variable), 280 0x85, 0xCC, # . Report ID (204), 281 0x0A, 0xCC, 0x10, # . Usage (10CCh), 282 0x26, 0xFF, 0x00, # . Logical Maximum (255), 283 0x95, 0x02, # . Report Count (2), 284 0xB1, 0x02, # . Feature (Variable), 285 0xC0, # . End Collection, 286 0x0A, 0xAC, 0x10, # . Usage (10ACh), 287 0xA1, 0x02, # . Collection (Logical), 288 0x15, 0x00, # . Logical Minimum (0), 289 0x26, 0xFF, 0x00, # . Logical Maximum (255), 290 0x75, 0x08, # . Report Size (8), 291 0x85, 0xAC, # . Report ID (172), 292 0x09, 0x00, # . Usage (00h), 293 0x95, 0xBF, # . Report Count (191), 294 0x81, 0x02, # . Input (Variable), 295 0x85, 0x33, # . Report ID (51), 296 0x09, 0x00, # . Usage (00h), 297 0x95, 0x12, # . Report Count (18), 298 0xB1, 0x02, # . Feature (Variable), 299 0x85, 0x64, # . Report ID (100), 300 0x09, 0x00, # . Usage (00h), 301 0x95, 0x0C, # . Report Count (12), 302 0xB1, 0x02, # . Feature (Variable), 303 0x85, 0x15, # . Report ID (21), 304 0x09, 0x00, # . Usage (00h), 305 0x95, 0x0E, # . Report Count (14), 306 0xB1, 0x02, # . Feature (Variable), 307 0x85, 0x12, # . Report ID (18), 308 0x09, 0x00, # . Usage (00h), 309 0x95, 0x04, # . Report Count (4), 310 0xB1, 0x02, # . Feature (Variable), 311 0x85, 0x16, # . Report ID (22), 312 0x09, 0x00, # . Usage (00h), 313 0x95, 0x0E, # . Report Count (14), 314 0xB1, 0x02, # . Feature (Variable), 315 0x85, 0x40, # . Report ID (64), 316 0x09, 0x00, # . Usage (00h), 317 0x95, 0x01, # . Report Count (1), 318 0xB1, 0x02, # . Feature (Variable), 319 0x85, 0x41, # . Report ID (65), 320 0x09, 0x00, # . Usage (00h), 321 0x95, 0x01, # . Report Count (1), 322 0xB1, 0x02, # . Feature (Variable), 323 0x85, 0x42, # . Report ID (66), 324 0x09, 0x00, # . Usage (00h), 325 0x95, 0x04, # . Report Count (4), 326 0xB1, 0x02, # . Feature (Variable), 327 0x85, 0x43, # . Report ID (67), 328 0x09, 0x00, # . Usage (00h), 329 0x95, 0x0D, # . Report Count (13), 330 0xB1, 0x02, # . Feature (Variable), 331 0x85, 0x44, # . Report ID (68), 332 0x09, 0x00, # . Usage (00h), 333 0x95, 0x3F, # . Report Count (63), 334 0xB1, 0x02, # . Feature (Variable), 335 0x85, 0x45, # . Report ID (69), 336 0x09, 0x00, # . Usage (00h), 337 0x95, 0x20, # . Report Count (32), 338 0xB1, 0x02, # . Feature (Variable), 339 0x85, 0x60, # . Report ID (96), 340 0x09, 0x00, # . Usage (00h), 341 0x95, 0x3F, # . Report Count (63), 342 0xB1, 0x02, # . Feature (Variable), 343 0x85, 0x61, # . Report ID (97), 344 0x09, 0x00, # . Usage (00h), 345 0x95, 0x3E, # . Report Count (62), 346 0xB1, 0x02, # . Feature (Variable), 347 0x85, 0x62, # . Report ID (98), 348 0x09, 0x00, # . Usage (00h), 349 0x95, 0x3E, # . Report Count (62), 350 0xB1, 0x02, # . Feature (Variable), 351 0xC0, # . End Collection, 352 0x85, 0xD0, # . Report ID (208), 353 0x09, 0x01, # . Usage (01h), 354 0x96, 0x08, 0x00, # . Report Count (8), 355 0xB1, 0x02, # . Feature (Variable), 356 0x85, 0xD1, # . Report ID (209), 357 0x09, 0x01, # . Usage (01h), 358 0x96, 0x04, 0x01, # . Report Count (260), 359 0xB1, 0x02, # . Feature (Variable), 360 0x85, 0xD2, # . Report ID (210), 361 0x09, 0x01, # . Usage (01h), 362 0x96, 0x04, 0x01, # . Report Count (260), 363 0xB1, 0x02, # . Feature (Variable), 364 0x85, 0xD3, # . Report ID (211), 365 0x09, 0x01, # . Usage (01h), 366 0x96, 0x04, 0x00, # . Report Count (4), 367 0xB1, 0x02, # . Feature (Variable), 368 0x85, 0xD4, # . Report ID (212), 369 0x09, 0x01, # . Usage (01h), 370 0x96, 0x04, 0x00, # . Report Count (4), 371 0xB1, 0x02, # . Feature (Variable), 372 0x85, 0xD5, # . Report ID (213), 373 0x09, 0x01, # . Usage (01h), 374 0x96, 0x04, 0x00, # . Report Count (4), 375 0xB1, 0x02, # . Feature (Variable), 376 0x85, 0xD6, # . Report ID (214), 377 0x09, 0x01, # . Usage (01h), 378 0x96, 0x04, 0x00, # . Report Count (4), 379 0xB1, 0x02, # . Feature (Variable), 380 0x85, 0xD7, # . Report ID (215), 381 0x09, 0x01, # . Usage (01h), 382 0x96, 0x08, 0x00, # . Report Count (8), 383 0xB1, 0x02, # . Feature (Variable), 384 0x85, 0xD8, # . Report ID (216), 385 0x09, 0x01, # . Usage (01h), 386 0x96, 0x0C, 0x00, # . Report Count (12), 387 0xB1, 0x02, # . Feature (Variable), 388 0x85, 0xD9, # . Report ID (217), 389 0x09, 0x01, # . Usage (01h), 390 0x96, 0x00, 0x0A, # . Report Count (2560), 391 0xB1, 0x02, # . Feature (Variable), 392 0x85, 0xDA, # . Report ID (218), 393 0x09, 0x01, # . Usage (01h), 394 0x96, 0x04, 0x04, # . Report Count (1028), 395 0xB1, 0x02, # . Feature (Variable), 396 0x85, 0xDB, # . Report ID (219), 397 0x09, 0x01, # . Usage (01h), 398 0x96, 0x06, 0x00, # . Report Count (6), 399 0xB1, 0x02, # . Feature (Variable), 400 0x85, 0xDC, # . Report ID (220), 401 0x09, 0x01, # . Usage (01h), 402 0x96, 0x02, 0x00, # . Report Count (2), 403 0xB1, 0x02, # . Feature (Variable), 404 0x85, 0xDD, # . Report ID (221), 405 0x09, 0x01, # . Usage (01h), 406 0x96, 0x04, 0x00, # . Report Count (4), 407 0xB1, 0x02, # . Feature (Variable), 408 0x85, 0xDE, # . Report ID (222), 409 0x09, 0x01, # . Usage (01h), 410 0x96, 0x04, 0x00, # . Report Count (4), 411 0xB1, 0x02, # . Feature (Variable), 412 0x85, 0xDF, # . Report ID (223), 413 0x09, 0x01, # . Usage (01h), 414 0x96, 0x22, 0x00, # . Report Count (34), 415 0xB1, 0x02, # . Feature (Variable), 416 0x85, 0xE0, # . Report ID (224), 417 0x09, 0x01, # . Usage (01h), 418 0x96, 0x01, 0x00, # . Report Count (1), 419 0xB1, 0x02, # . Feature (Variable), 420 0x85, 0xE1, # . Report ID (225), 421 0x09, 0x01, # . Usage (01h), 422 0x96, 0x02, 0x00, # . Report Count (2), 423 0xB1, 0x02, # . Feature (Variable), 424 0x85, 0xE2, # . Report ID (226), 425 0x09, 0x01, # . Usage (01h), 426 0x96, 0x02, 0x00, # . Report Count (2), 427 0xB1, 0x02, # . Feature (Variable), 428 0x85, 0xE3, # . Report ID (227), 429 0x09, 0x01, # . Usage (01h), 430 0x96, 0x02, 0x00, # . Report Count (2), 431 0xB1, 0x02, # . Feature (Variable), 432 0x85, 0xE4, # . Report ID (228), 433 0x09, 0x01, # . Usage (01h), 434 0x96, 0xFF, 0x01, # . Report Count (511), 435 0xB1, 0x02, # . Feature (Variable), 436 0xC0 # . End Collection 437] 438# fmt: on 439 440# Report ID (20), Usage (1014h), Report Count (13) -> 15 441wacom_pth660_v150 = wacom_pth660_v145.copy() 442wacom_pth660_v150[0x2CB] = 0x0F 443 444# fmt: off 445wacom_pth860_v145 = [ 446 0x05, 0x01, # . Usage Page (Desktop), 447 0x09, 0x02, # . Usage (Mouse), 448 0xA1, 0x01, # . Collection (Application), 449 0x85, 0x01, # . Report ID (1), 450 0x09, 0x01, # . Usage (Pointer), 451 0xA1, 0x00, # . Collection (Physical), 452 0x05, 0x09, # . Usage Page (Button), 453 0x19, 0x01, # . Usage Minimum (01h), 454 0x29, 0x03, # . Usage Maximum (03h), 455 0x15, 0x00, # . Logical Minimum (0), 456 0x25, 0x01, # . Logical Maximum (1), 457 0x75, 0x01, # . Report Size (1), 458 0x95, 0x03, # . Report Count (3), 459 0x81, 0x02, # . Input (Variable), 460 0x95, 0x05, # . Report Count (5), 461 0x81, 0x03, # . Input (Constant, Variable), 462 0x05, 0x01, # . Usage Page (Desktop), 463 0x09, 0x30, # . Usage (X), 464 0x09, 0x31, # . Usage (Y), 465 0x15, 0x80, # . Logical Minimum (-128), 466 0x25, 0x7F, # . Logical Maximum (127), 467 0x75, 0x08, # . Report Size (8), 468 0x95, 0x02, # . Report Count (2), 469 0x81, 0x06, # . Input (Variable, Relative), 470 0xC0, # . End Collection, 471 0xC0, # . End Collection, 472 0x06, 0x0D, 0xFF, # . Usage Page (FF0Dh), 473 0x09, 0x01, # . Usage (01h), 474 0xA1, 0x01, # . Collection (Application), 475 0x85, 0x10, # . Report ID (16), 476 0x09, 0x20, # . Usage (20h), 477 0xA1, 0x00, # . Collection (Physical), 478 0x09, 0x42, # . Usage (42h), 479 0x09, 0x44, # . Usage (44h), 480 0x09, 0x5A, # . Usage (5Ah), 481 0x09, 0x45, # . Usage (45h), 482 0x09, 0x3C, # . Usage (3Ch), 483 0x09, 0x32, # . Usage (32h), 484 0x09, 0x36, # . Usage (36h), 485 0x15, 0x00, # . Logical Minimum (0), 486 0x25, 0x01, # . Logical Maximum (1), 487 0x75, 0x01, # . Report Size (1), 488 0x95, 0x07, # . Report Count (7), 489 0x81, 0x02, # . Input (Variable), 490 0x95, 0x01, # . Report Count (1), 491 0x81, 0x03, # . Input (Constant, Variable), 492 0x0A, 0x30, 0x01, # . Usage (0130h), 493 0x65, 0x11, # . Unit (Centimeter), 494 0x55, 0x0D, # . Unit Exponent (13), 495 0x35, 0x00, # . Physical Minimum (0), 496 0x47, 0x7C, 0x79, 0x00, 0x00, # . Physical Maximum (31100), 497 0x15, 0x00, # . Logical Minimum (0), 498 0x27, 0xF8, 0xF2, 0x00, 0x00, # . Logical Maximum (62200), 499 0x75, 0x18, # . Report Size (24), 500 0x95, 0x01, # . Report Count (1), 501 0x81, 0x02, # . Input (Variable), 502 0x0A, 0x31, 0x01, # . Usage (0131h), 503 0x47, 0x60, 0x54, 0x00, 0x00, # . Physical Maximum (21600), 504 0x27, 0xC0, 0xA8, 0x00, 0x00, # . Logical Maximum (43200), 505 0x81, 0x02, # . Input (Variable), 506 0x09, 0x30, # . Usage (30h), # !!! Errata: Missing Physical Max = 0 507 0x55, 0x00, # . Unit Exponent (0), 508 0x65, 0x00, # . Unit, 509 0x15, 0x00, # . Logical Minimum (0), 510 0x26, 0xFF, 0x1F, # . Logical Maximum (8191), 511 0x75, 0x10, # . Report Size (16), 512 0x81, 0x02, # . Input (Variable), 513 0x09, 0x3D, # . Usage (3Dh), 514 0x09, 0x3E, # . Usage (3Eh), 515 0x65, 0x14, # . Unit (Degrees), 516 0x55, 0x00, # . Unit Exponent (0), 517 0x35, 0xC0, # . Physical Minimum (-64), 518 0x45, 0x3F, # . Physical Maximum (63), 519 0x15, 0xC0, # . Logical Minimum (-64), 520 0x25, 0x3F, # . Logical Maximum (63), 521 0x75, 0x08, # . Report Size (8), 522 0x95, 0x02, # . Report Count (2), 523 0x81, 0x02, # . Input (Variable), 524 0x09, 0x41, # . Usage (41h), 525 0x65, 0x14, # . Unit (Degrees), 526 0x55, 0x00, # . Unit Exponent (0), 527 0x36, 0x4C, 0xFF, # . Physical Minimum (-180), 528 0x46, 0xB3, 0x00, # . Physical Maximum (179), 529 0x16, 0x7C, 0xFC, # . Logical Minimum (-900), 530 0x26, 0x83, 0x03, # . Logical Maximum (899), 531 0x75, 0x10, # . Report Size (16), 532 0x95, 0x01, # . Report Count (1), 533 0x81, 0x0A, # . Input (Variable, Wrap), 534 0x0A, 0x03, 0x0D, # . Usage (0D03h), 535 0x65, 0x00, # . Unit, 536 0x55, 0x00, # . Unit Exponent (0), 537 0x15, 0x00, # . Logical Minimum (0), 538 0x26, 0xFF, 0x07, # . Logical Maximum (2047), # !!! Errata: Missing Physical Min/Max = 0 539 0x75, 0x10, # . Report Size (16), 540 0x95, 0x01, # . Report Count (1), 541 0x81, 0x02, # . Input (Variable), 542 0x0A, 0x32, 0x01, # . Usage (0132h), 543 0x15, 0x00, # . Logical Minimum (0), 544 0x25, 0x3F, # . Logical Maximum (63), 545 0x75, 0x08, # . Report Size (8), 546 0x95, 0x01, # . Report Count (1), 547 0x81, 0x02, # . Input (Variable), 548 0x09, 0x5B, # . Usage (5Bh), 549 0x09, 0x5C, # . Usage (5Ch), 550 0x17, 0x00, 0x00, 0x00, 0x80, # . Logical Minimum (-2147483648), 551 0x27, 0xFF, 0xFF, 0xFF, 0x7F, # . Logical Maximum (2147483647), 552 0x75, 0x20, # . Report Size (32), 553 0x95, 0x02, # . Report Count (2), 554 0x81, 0x02, # . Input (Variable), 555 0x09, 0x77, # . Usage (77h), 556 0x16, 0x00, 0x00, # . Logical Minimum (0), 557 0x26, 0xFF, 0x0F, # . Logical Maximum (4095), 558 0x75, 0x10, # . Report Size (16), 559 0x95, 0x01, # . Report Count (1), 560 0x81, 0x02, # . Input (Variable), 561 0xC0, # . End Collection, 562 0x85, 0x11, # . Report ID (17), 563 0x09, 0x39, # . Usage (39h), 564 0xA1, 0x00, # . Collection (Physical), 565 0x1A, 0x10, 0x09, # . Usage Minimum (0910h), 566 0x2A, 0x17, 0x09, # . Usage Maximum (0917h), 567 0x15, 0x00, # . Logical Minimum (0), 568 0x25, 0x01, # . Logical Maximum (1), 569 0x75, 0x01, # . Report Size (1), 570 0x95, 0x08, # . Report Count (8), 571 0x81, 0x02, # . Input (Variable), 572 0x1A, 0x40, 0x09, # . Usage Minimum (0940h), 573 0x2A, 0x47, 0x09, # . Usage Maximum (0947h), 574 0x81, 0x02, # . Input (Variable), 575 0x0A, 0x95, 0x09, # . Usage (0995h), 576 0x95, 0x01, # . Report Count (1), 577 0x81, 0x02, # . Input (Variable), 578 0x95, 0x07, # . Report Count (7), 579 0x81, 0x03, # . Input (Constant, Variable), 580 0x0A, 0x38, 0x01, # . Usage (0138h), 581 0x65, 0x14, # . Unit (Degrees), 582 0x55, 0x00, # . Unit Exponent (0), 583 0x35, 0x00, # . Physical Minimum (0), 584 0x46, 0x67, 0x01, # . Physical Maximum (359), 585 0x15, 0x00, # . Logical Minimum (0), 586 0x25, 0x47, # . Logical Maximum (71), 587 0x75, 0x07, # . Report Size (7), 588 0x95, 0x01, # . Report Count (1), 589 0x81, 0x0A, # . Input (Variable, Wrap), 590 0x0A, 0x39, 0x01, # . Usage (0139h), 591 0x65, 0x00, # . Unit, 592 0x55, 0x00, # . Unit Exponent (0), 593 0x25, 0x01, # . Logical Maximum (1), # !!! Errata: Missing Physical Max = 0 594 0x75, 0x01, # . Report Size (1), 595 0x95, 0x01, # . Report Count (1), 596 0x81, 0x02, # . Input (Variable), 597 0x75, 0x08, # . Report Size (8), 598 0x95, 0x04, # . Report Count (4), 599 0x81, 0x03, # . Input (Constant, Variable), 600 0xC0, # . End Collection, 601 0x85, 0x13, # . Report ID (19), 602 0x0A, 0x13, 0x10, # . Usage (1013h), 603 0xA1, 0x00, # . Collection (Physical), 604 0x0A, 0x3B, 0x04, # . Usage (043Bh), 605 0x15, 0x00, # . Logical Minimum (0), 606 0x25, 0x64, # . Logical Maximum (100), 607 0x75, 0x07, # . Report Size (7), 608 0x95, 0x01, # . Report Count (1), 609 0x81, 0x02, # . Input (Variable), 610 0x0A, 0x04, 0x04, # . Usage (0404h), 611 0x25, 0x01, # . Logical Maximum (1), 612 0x75, 0x01, # . Report Size (1), 613 0x81, 0x02, # . Input (Variable), 614 0x0A, 0x52, 0x04, # . Usage (0452h), 615 0x15, 0x00, # . Logical Minimum (0), 616 0x25, 0x01, # . Logical Maximum (1), 617 0x75, 0x01, # . Report Size (1), 618 0x95, 0x01, # . Report Count (1), 619 0x81, 0x02, # . Input (Variable), 620 0x95, 0x06, # . Report Count (6), 621 0x81, 0x03, # . Input (Constant, Variable), 622 0x0A, 0x54, 0x04, # . Usage (0454h), 623 0x95, 0x01, # . Report Count (1), 624 0x81, 0x02, # . Input (Variable), 625 0x75, 0x08, # . Report Size (8), 626 0x95, 0x06, # . Report Count (6), 627 0x81, 0x03, # . Input (Constant, Variable), 628 0xC0, # . End Collection, 629 0x09, 0x0E, # . Usage (0Eh), 630 0xA1, 0x02, # . Collection (Logical), 631 0x15, 0x00, # . Logical Minimum (0), 632 0x85, 0x02, # . Report ID (2), 633 0x09, 0x01, # . Usage (01h), 634 0x75, 0x08, # . Report Size (8), 635 0x25, 0x01, # . Logical Maximum (1), 636 0x95, 0x01, # . Report Count (1), 637 0xB1, 0x02, # . Feature (Variable), 638 0x85, 0x03, # . Report ID (3), 639 0x0A, 0x03, 0x10, # . Usage (1003h), 640 0x26, 0xFF, 0x00, # . Logical Maximum (255), 641 0x95, 0x01, # . Report Count (1), 642 0xB1, 0x02, # . Feature (Variable), 643 0x85, 0x04, # . Report ID (4), 644 0x0A, 0x04, 0x10, # . Usage (1004h), 645 0x25, 0x01, # . Logical Maximum (1), 646 0x95, 0x01, # . Report Count (1), 647 0xB1, 0x02, # . Feature (Variable), 648 0x85, 0x07, # . Report ID (7), 649 0x0A, 0x09, 0x10, # . Usage (1009h), 650 0x25, 0x02, # . Logical Maximum (2), 651 0x95, 0x01, # . Report Count (1), 652 0xB1, 0x02, # . Feature (Variable), 653 0x95, 0x01, # . Report Count (1), 654 0xB1, 0x03, # . Feature (Constant, Variable), 655 0x0A, 0x07, 0x10, # . Usage (1007h), 656 0x09, 0x00, # . Usage (00h), 657 0x0A, 0x08, 0x10, # . Usage (1008h), 658 0x09, 0x00, # . Usage (00h), 659 0x09, 0x00, # . Usage (00h), 660 0x09, 0x00, # . Usage (00h), 661 0x27, 0xFF, 0xFF, 0x00, 0x00, # . Logical Maximum (65535), 662 0x75, 0x10, # . Report Size (16), 663 0x95, 0x06, # . Report Count (6), 664 0xB1, 0x02, # . Feature (Variable), 665 0x75, 0x08, # . Report Size (8), 666 0x95, 0x01, # . Report Count (1), 667 0xB1, 0x03, # . Feature (Constant, Variable), 668 0x85, 0x0C, # . Report ID (12), 669 0x0A, 0x30, 0x0D, # . Usage (0D30h), 670 0x0A, 0x31, 0x0D, # . Usage (0D31h), 671 0x0A, 0x32, 0x0D, # . Usage (0D32h), 672 0x0A, 0x33, 0x0D, # . Usage (0D33h), # !!! Errata: Missing Non-zero Physical Max 673 0x65, 0x11, # . Unit (Centimeter), 674 0x55, 0x0D, # . Unit Exponent (13), 675 0x75, 0x10, # . Report Size (16), 676 0x95, 0x04, # . Report Count (4), 677 0xB1, 0x03, # . Feature (Constant, Variable), 678 0x85, 0x0D, # . Report ID (13), 679 0x65, 0x00, # . Unit, 680 0x55, 0x00, # . Unit Exponent (0), 681 0x0A, 0x0D, 0x10, # . Usage (100Dh), 682 0x15, 0x00, # . Logical Minimum (0), 683 0x25, 0x01, # . Logical Maximum (1), 684 0x75, 0x08, # . Report Size (8), 685 0x95, 0x01, # . Report Count (1), 686 0xB1, 0x02, # . Feature (Variable), 687 0x85, 0x14, # . Report ID (20), 688 0x0A, 0x14, 0x10, # . Usage (1014h), 689 0x26, 0xFF, 0x00, # . Logical Maximum (255), 690 0x95, 0x0D, # . Report Count (13), 691 0xB1, 0x02, # . Feature (Variable), 692 0x85, 0x31, # . Report ID (49), 693 0x0A, 0x31, 0x10, # . Usage (1031h), 694 0x25, 0x64, # . Logical Maximum (100), 695 0x95, 0x05, # . Report Count (5), 696 0xB1, 0x02, # . Feature (Variable), 697 0x85, 0x32, # . Report ID (50), 698 0x0A, 0x31, 0x10, # . Usage (1031h), 699 0x25, 0x64, # . Logical Maximum (100), 700 0x95, 0x01, # . Report Count (1), 701 0xB1, 0x02, # . Feature (Variable), 702 0x0A, 0x32, 0x10, # . Usage (1032h), 703 0x25, 0x03, # . Logical Maximum (3), 704 0xB1, 0x02, # . Feature (Variable), 705 0x85, 0x34, # . Report ID (52), 706 0x0A, 0x34, 0x10, # . Usage (1034h), 707 0x25, 0x01, # . Logical Maximum (1), 708 0x95, 0x04, # . Report Count (4), 709 0xB1, 0x02, # . Feature (Variable), 710 0x85, 0x35, # . Report ID (53), 711 0x0A, 0x35, 0x10, # . Usage (1035h), 712 0x26, 0xFF, 0x00, # . Logical Maximum (255), 713 0x95, 0x0A, # . Report Count (10), 714 0xB1, 0x02, # . Feature (Variable), 715 0x85, 0x36, # . Report ID (54), 716 0x0A, 0x35, 0x10, # . Usage (1035h), 717 0x26, 0xFF, 0x00, # . Logical Maximum (255), 718 0x96, 0x01, 0x01, # . Report Count (257), 719 0xB1, 0x02, # . Feature (Variable), 720 0x85, 0xCC, # . Report ID (204), 721 0x0A, 0xCC, 0x10, # . Usage (10CCh), 722 0x26, 0xFF, 0x00, # . Logical Maximum (255), 723 0x95, 0x02, # . Report Count (2), 724 0xB1, 0x02, # . Feature (Variable), 725 0xC0, # . End Collection, 726 0x0A, 0xAC, 0x10, # . Usage (10ACh), 727 0xA1, 0x02, # . Collection (Logical), 728 0x15, 0x00, # . Logical Minimum (0), 729 0x26, 0xFF, 0x00, # . Logical Maximum (255), 730 0x75, 0x08, # . Report Size (8), 731 0x85, 0xAC, # . Report ID (172), 732 0x09, 0x00, # . Usage (00h), 733 0x95, 0xBF, # . Report Count (191), 734 0x81, 0x02, # . Input (Variable), 735 0x85, 0x33, # . Report ID (51), 736 0x09, 0x00, # . Usage (00h), 737 0x95, 0x12, # . Report Count (18), 738 0xB1, 0x02, # . Feature (Variable), 739 0x85, 0x64, # . Report ID (100), 740 0x09, 0x00, # . Usage (00h), 741 0x95, 0x0C, # . Report Count (12), 742 0xB1, 0x02, # . Feature (Variable), 743 0x85, 0x15, # . Report ID (21), 744 0x09, 0x00, # . Usage (00h), 745 0x95, 0x0E, # . Report Count (14), 746 0xB1, 0x02, # . Feature (Variable), 747 0x85, 0x12, # . Report ID (18), 748 0x09, 0x00, # . Usage (00h), 749 0x95, 0x04, # . Report Count (4), 750 0xB1, 0x02, # . Feature (Variable), 751 0x85, 0x16, # . Report ID (22), 752 0x09, 0x00, # . Usage (00h), 753 0x95, 0x0E, # . Report Count (14), 754 0xB1, 0x02, # . Feature (Variable), 755 0x85, 0x40, # . Report ID (64), 756 0x09, 0x00, # . Usage (00h), 757 0x95, 0x01, # . Report Count (1), 758 0xB1, 0x02, # . Feature (Variable), 759 0x85, 0x41, # . Report ID (65), 760 0x09, 0x00, # . Usage (00h), 761 0x95, 0x01, # . Report Count (1), 762 0xB1, 0x02, # . Feature (Variable), 763 0x85, 0x42, # . Report ID (66), 764 0x09, 0x00, # . Usage (00h), 765 0x95, 0x04, # . Report Count (4), 766 0xB1, 0x02, # . Feature (Variable), 767 0x85, 0x43, # . Report ID (67), 768 0x09, 0x00, # . Usage (00h), 769 0x95, 0x0D, # . Report Count (13), 770 0xB1, 0x02, # . Feature (Variable), 771 0x85, 0x44, # . Report ID (68), 772 0x09, 0x00, # . Usage (00h), 773 0x95, 0x3F, # . Report Count (63), 774 0xB1, 0x02, # . Feature (Variable), 775 0x85, 0x45, # . Report ID (69), 776 0x09, 0x00, # . Usage (00h), 777 0x95, 0x20, # . Report Count (32), 778 0xB1, 0x02, # . Feature (Variable), 779 0x85, 0x60, # . Report ID (96), 780 0x09, 0x00, # . Usage (00h), 781 0x95, 0x3F, # . Report Count (63), 782 0xB1, 0x02, # . Feature (Variable), 783 0x85, 0x61, # . Report ID (97), 784 0x09, 0x00, # . Usage (00h), 785 0x95, 0x3E, # . Report Count (62), 786 0xB1, 0x02, # . Feature (Variable), 787 0x85, 0x62, # . Report ID (98), 788 0x09, 0x00, # . Usage (00h), 789 0x95, 0x3E, # . Report Count (62), 790 0xB1, 0x02, # . Feature (Variable), 791 0xC0, # . End Collection, 792 0x85, 0xD0, # . Report ID (208), 793 0x09, 0x01, # . Usage (01h), 794 0x96, 0x08, 0x00, # . Report Count (8), 795 0xB1, 0x02, # . Feature (Variable), 796 0x85, 0xD1, # . Report ID (209), 797 0x09, 0x01, # . Usage (01h), 798 0x96, 0x04, 0x01, # . Report Count (260), 799 0xB1, 0x02, # . Feature (Variable), 800 0x85, 0xD2, # . Report ID (210), 801 0x09, 0x01, # . Usage (01h), 802 0x96, 0x04, 0x01, # . Report Count (260), 803 0xB1, 0x02, # . Feature (Variable), 804 0x85, 0xD3, # . Report ID (211), 805 0x09, 0x01, # . Usage (01h), 806 0x96, 0x04, 0x00, # . Report Count (4), 807 0xB1, 0x02, # . Feature (Variable), 808 0x85, 0xD4, # . Report ID (212), 809 0x09, 0x01, # . Usage (01h), 810 0x96, 0x04, 0x00, # . Report Count (4), 811 0xB1, 0x02, # . Feature (Variable), 812 0x85, 0xD5, # . Report ID (213), 813 0x09, 0x01, # . Usage (01h), 814 0x96, 0x04, 0x00, # . Report Count (4), 815 0xB1, 0x02, # . Feature (Variable), 816 0x85, 0xD6, # . Report ID (214), 817 0x09, 0x01, # . Usage (01h), 818 0x96, 0x04, 0x00, # . Report Count (4), 819 0xB1, 0x02, # . Feature (Variable), 820 0x85, 0xD7, # . Report ID (215), 821 0x09, 0x01, # . Usage (01h), 822 0x96, 0x08, 0x00, # . Report Count (8), 823 0xB1, 0x02, # . Feature (Variable), 824 0x85, 0xD8, # . Report ID (216), 825 0x09, 0x01, # . Usage (01h), 826 0x96, 0x0C, 0x00, # . Report Count (12), 827 0xB1, 0x02, # . Feature (Variable), 828 0x85, 0xD9, # . Report ID (217), 829 0x09, 0x01, # . Usage (01h), 830 0x96, 0x00, 0x0A, # . Report Count (2560), 831 0xB1, 0x02, # . Feature (Variable), 832 0x85, 0xDA, # . Report ID (218), 833 0x09, 0x01, # . Usage (01h), 834 0x96, 0x04, 0x04, # . Report Count (1028), 835 0xB1, 0x02, # . Feature (Variable), 836 0x85, 0xDB, # . Report ID (219), 837 0x09, 0x01, # . Usage (01h), 838 0x96, 0x06, 0x00, # . Report Count (6), 839 0xB1, 0x02, # . Feature (Variable), 840 0x85, 0xDC, # . Report ID (220), 841 0x09, 0x01, # . Usage (01h), 842 0x96, 0x02, 0x00, # . Report Count (2), 843 0xB1, 0x02, # . Feature (Variable), 844 0x85, 0xDD, # . Report ID (221), 845 0x09, 0x01, # . Usage (01h), 846 0x96, 0x04, 0x00, # . Report Count (4), 847 0xB1, 0x02, # . Feature (Variable), 848 0x85, 0xDE, # . Report ID (222), 849 0x09, 0x01, # . Usage (01h), 850 0x96, 0x04, 0x00, # . Report Count (4), 851 0xB1, 0x02, # . Feature (Variable), 852 0x85, 0xDF, # . Report ID (223), 853 0x09, 0x01, # . Usage (01h), 854 0x96, 0x22, 0x00, # . Report Count (34), 855 0xB1, 0x02, # . Feature (Variable), 856 0x85, 0xE0, # . Report ID (224), 857 0x09, 0x01, # . Usage (01h), 858 0x96, 0x01, 0x00, # . Report Count (1), 859 0xB1, 0x02, # . Feature (Variable), 860 0x85, 0xE1, # . Report ID (225), 861 0x09, 0x01, # . Usage (01h), 862 0x96, 0x02, 0x00, # . Report Count (2), 863 0xB1, 0x02, # . Feature (Variable), 864 0x85, 0xE2, # . Report ID (226), 865 0x09, 0x01, # . Usage (01h), 866 0x96, 0x02, 0x00, # . Report Count (2), 867 0xB1, 0x02, # . Feature (Variable), 868 0x85, 0xE3, # . Report ID (227), 869 0x09, 0x01, # . Usage (01h), 870 0x96, 0x02, 0x00, # . Report Count (2), 871 0xB1, 0x02, # . Feature (Variable), 872 0x85, 0xE4, # . Report ID (228), 873 0x09, 0x01, # . Usage (01h), 874 0x96, 0xFF, 0x01, # . Report Count (511), 875 0xB1, 0x02, # . Feature (Variable), 876 0xC0 # . End Collection 877] 878# fmt: on 879 880# Report ID (20), Usage (1014h), Report Count (13) -> 15 881wacom_pth860_v150 = wacom_pth860_v145.copy() 882wacom_pth860_v150[0x2CA] = 0x0F 883 884# fmt: off 885wacom_pth460_v105 = [ 886 0x06, 0x0D, 0xFF, # . Usage Page (FF0Dh), 887 0x09, 0x01, # . Usage (01h), 888 0xA1, 0x01, # . Collection (Application), 889 0x85, 0x10, # . Report ID (16), 890 0x09, 0x20, # . Usage (20h), 891 0x35, 0x00, # . Physical Minimum (0), 892 0x45, 0x00, # . Physical Maximum (0), 893 0x15, 0x00, # . Logical Minimum (0), 894 0x25, 0x01, # . Logical Maximum (1), 895 0xA1, 0x00, # . Collection (Physical), 896 0x09, 0x42, # . Usage (42h), 897 0x09, 0x44, # . Usage (44h), 898 0x09, 0x5A, # . Usage (5Ah), 899 0x09, 0x45, # . Usage (45h), 900 0x09, 0x3C, # . Usage (3Ch), 901 0x09, 0x32, # . Usage (32h), 902 0x09, 0x36, # . Usage (36h), 903 0x25, 0x01, # . Logical Maximum (1), 904 0x75, 0x01, # . Report Size (1), 905 0x95, 0x07, # . Report Count (7), 906 0x81, 0x02, # . Input (Variable), 907 0x95, 0x01, # . Report Count (1), 908 0x81, 0x03, # . Input (Constant, Variable), 909 0x0A, 0x30, 0x01, # . Usage (0130h), 910 0x65, 0x11, # . Unit (Centimeter), 911 0x55, 0x0D, # . Unit Exponent (13), 912 0x47, 0x58, 0x3E, 0x00, 0x00, # . Physical Maximum (15960), 913 0x27, 0xB0, 0x7C, 0x00, 0x00, # . Logical Maximum (31920), 914 0x75, 0x18, # . Report Size (24), 915 0x95, 0x01, # . Report Count (1), 916 0x81, 0x02, # . Input (Variable), 917 0x0A, 0x31, 0x01, # . Usage (0131h), 918 0x47, 0xF7, 0x26, 0x00, 0x00, # . Physical Maximum (9975), 919 0x27, 0xEE, 0x4D, 0x00, 0x00, # . Logical Maximum (19950), 920 0x81, 0x02, # . Input (Variable), 921 0x09, 0x30, # . Usage (30h), 922 0x55, 0x00, # . Unit Exponent (0), 923 0x65, 0x00, # . Unit, 924 0x26, 0xFF, 0x1F, # . Logical Maximum (8191), # !!! Errata: Missing Physical Max = 0 925 0x75, 0x10, # . Report Size (16), 926 0x81, 0x02, # . Input (Variable), 927 0x09, 0x3D, # . Usage (3Dh), 928 0x09, 0x3E, # . Usage (3Eh), 929 0x65, 0x14, # . Unit (Degrees), 930 0x55, 0x00, # . Unit Exponent (0), 931 0x35, 0xC0, # . Physical Minimum (-64), 932 0x45, 0x3F, # . Physical Maximum (63), 933 0x15, 0xC0, # . Logical Minimum (-64), 934 0x25, 0x3F, # . Logical Maximum (63), 935 0x75, 0x08, # . Report Size (8), 936 0x95, 0x02, # . Report Count (2), 937 0x81, 0x02, # . Input (Variable), 938 0x09, 0x41, # . Usage (41h), 939 0x65, 0x14, # . Unit (Degrees), 940 0x55, 0x00, # . Unit Exponent (0), 941 0x36, 0x4C, 0xFF, # . Physical Minimum (-180), 942 0x46, 0xB3, 0x00, # . Physical Maximum (179), 943 0x16, 0x7C, 0xFC, # . Logical Minimum (-900), 944 0x26, 0x83, 0x03, # . Logical Maximum (899), 945 0x75, 0x10, # . Report Size (16), 946 0x95, 0x01, # . Report Count (1), 947 0x81, 0x0A, # . Input (Variable, Wrap), 948 0x0A, 0x03, 0x0D, # . Usage (0D03h), 949 0x65, 0x00, # . Unit, 950 0x55, 0x00, # . Unit Exponent (0), 951 0x35, 0x00, # . Physical Minimum (0), 952 0x45, 0x00, # . Physical Maximum (0), 953 0x15, 0x00, # . Logical Minimum (0), 954 0x26, 0xFF, 0x07, # . Logical Maximum (2047), 955 0x81, 0x02, # . Input (Variable), 956 0x0A, 0x32, 0x01, # . Usage (0132h), 957 0x25, 0x3F, # . Logical Maximum (63), 958 0x75, 0x08, # . Report Size (8), 959 0x95, 0x01, # . Report Count (1), 960 0x81, 0x02, # . Input (Variable), 961 0x09, 0x5B, # . Usage (5Bh), 962 0x09, 0x5C, # . Usage (5Ch), 963 0x17, 0x00, 0x00, 0x00, 0x80, # . Logical Minimum (-2147483648), 964 0x27, 0xFF, 0xFF, 0xFF, 0x7F, # . Logical Maximum (2147483647), 965 0x75, 0x20, # . Report Size (32), 966 0x95, 0x02, # . Report Count (2), 967 0x81, 0x02, # . Input (Variable), 968 0x09, 0x77, # . Usage (77h), 969 0x15, 0x00, # . Logical Minimum (0), 970 0x26, 0xFF, 0x0F, # . Logical Maximum (4095), 971 0x75, 0x10, # . Report Size (16), 972 0x95, 0x01, # . Report Count (1), 973 0x81, 0x02, # . Input (Variable), 974 0xC0, # . End Collection, 975 0x85, 0x11, # . Report ID (17), 976 0x65, 0x00, # . Unit, 977 0x55, 0x00, # . Unit Exponent (0), 978 0x35, 0x00, # . Physical Minimum (0), 979 0x45, 0x00, # . Physical Maximum (0), 980 0x09, 0x39, # . Usage (39h), 981 0xA1, 0x00, # . Collection (Physical), 982 0x09, 0x39, # . Usage (39h), 983 0xA1, 0x00, # . Collection (Physical), 984 0x35, 0x00, # . Physical Minimum (0), 985 0x45, 0x00, # . Physical Maximum (0), 986 0x15, 0x00, # . Logical Minimum (0), 987 0x1A, 0x10, 0x09, # . Usage Minimum (0910h), 988 0x2A, 0x15, 0x09, # . Usage Maximum (0915h), 989 0x15, 0x00, # . Logical Minimum (0), 990 0x25, 0x01, # . Logical Maximum (1), 991 0x75, 0x01, # . Report Size (1), 992 0x95, 0x06, # . Report Count (6), 993 0x81, 0x02, # . Input (Variable), 994 0x95, 0x02, # . Report Count (2), 995 0x81, 0x03, # . Input (Constant, Variable), 996 0xC0, # . End Collection, 997 0x75, 0x08, # . Report Size (8), 998 0x95, 0x01, # . Report Count (1), 999 0x81, 0x03, # . Input (Constant, Variable), 1000 0x09, 0x39, # . Usage (39h), 1001 0xA1, 0x00, # . Collection (Physical), 1002 0x35, 0x00, # . Physical Minimum (0), 1003 0x45, 0x00, # . Physical Maximum (0), 1004 0x0A, 0x95, 0x09, # . Usage (0995h), 1005 0x15, 0x00, # . Logical Minimum (0), 1006 0x25, 0x01, # . Logical Maximum (1), 1007 0x75, 0x01, # . Report Size (1), 1008 0x95, 0x01, # . Report Count (1), 1009 0x81, 0x02, # . Input (Variable), 1010 0x95, 0x07, # . Report Count (7), 1011 0x81, 0x03, # . Input (Constant, Variable), 1012 0xC0, # . End Collection, 1013 0x09, 0x39, # . Usage (39h), 1014 0xA1, 0x00, # . Collection (Physical), 1015 0x35, 0x00, # . Physical Minimum (0), 1016 0x15, 0x00, # . Logical Minimum (0), 1017 0x0A, 0x38, 0x01, # . Usage (0138h), 1018 0x65, 0x14, # . Unit (Degrees), 1019 0x55, 0x00, # . Unit Exponent (0), 1020 0x35, 0x00, # . Physical Minimum (0), 1021 0x46, 0x67, 0x01, # . Physical Maximum (359), 1022 0x15, 0x00, # . Logical Minimum (0), 1023 0x25, 0x47, # . Logical Maximum (71), 1024 0x75, 0x07, # . Report Size (7), 1025 0x95, 0x01, # . Report Count (1), 1026 0x81, 0x4A, # . Input (Variable, Wrap, Null State), 1027 0x0A, 0x39, 0x01, # . Usage (0139h), 1028 0x65, 0x00, # . Unit, 1029 0x55, 0x00, # . Unit Exponent (0), 1030 0x45, 0x00, # . Physical Maximum (0), 1031 0x25, 0x01, # . Logical Maximum (1), 1032 0x75, 0x01, # . Report Size (1), 1033 0x95, 0x01, # . Report Count (1), 1034 0x81, 0x02, # . Input (Variable), 1035 0xC0, # . End Collection, 1036 0x75, 0x08, # . Report Size (8), 1037 0x95, 0x04, # . Report Count (4), 1038 0x81, 0x03, # . Input (Constant, Variable), 1039 0xC0, # . End Collection, 1040 0x85, 0x13, # . Report ID (19), 1041 0x65, 0x00, # . Unit, 1042 0x55, 0x00, # . Unit Exponent (0), 1043 0x35, 0x00, # . Physical Minimum (0), 1044 0x45, 0x00, # . Physical Maximum (0), 1045 0x0A, 0x13, 0x10, # . Usage (1013h), 1046 0xA1, 0x00, # . Collection (Physical), 1047 0x0A, 0x13, 0x10, # . Usage (1013h), 1048 0xA1, 0x00, # . Collection (Physical), 1049 0x35, 0x00, # . Physical Minimum (0), 1050 0x45, 0x00, # . Physical Maximum (0), 1051 0x15, 0x00, # . Logical Minimum (0), 1052 0x0A, 0x3B, 0x04, # . Usage (043Bh), 1053 0x15, 0x00, # . Logical Minimum (0), 1054 0x25, 0x64, # . Logical Maximum (100), 1055 0x75, 0x07, # . Report Size (7), 1056 0x95, 0x01, # . Report Count (1), 1057 0x81, 0x02, # . Input (Variable), 1058 0x0A, 0x04, 0x04, # . Usage (0404h), 1059 0x25, 0x01, # . Logical Maximum (1), 1060 0x75, 0x01, # . Report Size (1), 1061 0x81, 0x02, # . Input (Variable), 1062 0xC0, # . End Collection, 1063 0x0A, 0x13, 0x10, # . Usage (1013h), 1064 0xA1, 0x00, # . Collection (Physical), 1065 0x35, 0x00, # . Physical Minimum (0), 1066 0x45, 0x00, # . Physical Maximum (0), 1067 0x0A, 0x52, 0x04, # . Usage (0452h), 1068 0x15, 0x00, # . Logical Minimum (0), 1069 0x25, 0x01, # . Logical Maximum (1), 1070 0x75, 0x01, # . Report Size (1), 1071 0x95, 0x01, # . Report Count (1), 1072 0x81, 0x02, # . Input (Variable), 1073 0x0A, 0x41, 0x04, # . Usage (0441h), 1074 0x15, 0x00, # . Logical Minimum (0), 1075 0x25, 0x07, # . Logical Maximum (7), 1076 0x75, 0x03, # . Report Size (3), 1077 0x95, 0x02, # . Report Count (2), 1078 0x81, 0x02, # . Input (Variable), 1079 0x0A, 0x54, 0x04, # . Usage (0454h), 1080 0x15, 0x00, # . Logical Minimum (0), 1081 0x25, 0x01, # . Logical Maximum (1), 1082 0x75, 0x01, # . Report Size (1), 1083 0x95, 0x01, # . Report Count (1), 1084 0x81, 0x02, # . Input (Variable), 1085 0xC0, # . End Collection, 1086 0x0A, 0x13, 0x10, # . Usage (1013h), 1087 0xA1, 0x00, # . Collection (Physical), 1088 0x35, 0x00, # . Physical Minimum (0), 1089 0x45, 0x00, # . Physical Maximum (0), 1090 0x15, 0x00, # . Logical Minimum (0), 1091 0x0A, 0x3C, 0x04, # . Usage (043Ch), 1092 0x55, 0x00, # . Unit Exponent (0), 1093 0x65, 0x00, # . Unit, 1094 0x15, 0xFB, # . Logical Minimum (-5), 1095 0x25, 0x32, # . Logical Maximum (50), 1096 0x75, 0x08, # . Report Size (8), 1097 0x95, 0x01, # . Report Count (1), 1098 0x81, 0x02, # . Input (Variable), 1099 0xC0, # . End Collection, 1100 0x0A, 0x13, 0x10, # . Usage (1013h), 1101 0xA1, 0x00, # . Collection (Physical), 1102 0x35, 0x00, # . Physical Minimum (0), 1103 0x45, 0x00, # . Physical Maximum (0), 1104 0x15, 0x00, # . Logical Minimum (0), 1105 0x0A, 0x3D, 0x04, # . Usage (043Dh), 1106 0x55, 0x00, # . Unit Exponent (0), 1107 0x65, 0x00, # . Unit, 1108 0x15, 0x00, # . Logical Minimum (0), 1109 0x26, 0xFF, 0x0F, # . Logical Maximum (4095), 1110 0x75, 0x10, # . Report Size (16), 1111 0x95, 0x01, # . Report Count (1), 1112 0x81, 0x02, # . Input (Variable), 1113 0xC0, # . End Collection, 1114 0x75, 0x08, # . Report Size (8), 1115 0x95, 0x03, # . Report Count (3), 1116 0x81, 0x03, # . Input (Constant, Variable), 1117 0xC0, # . End Collection, 1118 0x09, 0x0E, # . Usage (0Eh), 1119 0xA1, 0x02, # . Collection (Logical), 1120 0x85, 0x02, # . Report ID (2), 1121 0x0A, 0x02, 0x10, # . Usage (1002h), 1122 0x15, 0x02, # . Logical Minimum (2), 1123 0x25, 0x02, # . Logical Maximum (2), 1124 0x75, 0x08, # . Report Size (8), 1125 0x95, 0x01, # . Report Count (1), 1126 0xB1, 0x02, # . Feature (Variable), 1127 0x85, 0x03, # . Report ID (3), 1128 0x0A, 0x03, 0x10, # . Usage (1003h), 1129 0x15, 0x00, # . Logical Minimum (0), 1130 0x26, 0xFF, 0x00, # . Logical Maximum (255), 1131 0x95, 0x01, # . Report Count (1), 1132 0xB1, 0x02, # . Feature (Variable), 1133 0x85, 0x04, # . Report ID (4), 1134 0x0A, 0x04, 0x10, # . Usage (1004h), 1135 0x15, 0x00, # . Logical Minimum (0), 1136 0x25, 0x01, # . Logical Maximum (1), 1137 0x95, 0x01, # . Report Count (1), 1138 0xB1, 0x02, # . Feature (Variable), 1139 0x85, 0x07, # . Report ID (7), 1140 0x0A, 0x09, 0x10, # . Usage (1009h), 1141 0x15, 0x00, # . Logical Minimum (0), 1142 0x26, 0xFF, 0x00, # . Logical Maximum (255), 1143 0x95, 0x01, # . Report Count (1), 1144 0xB1, 0x02, # . Feature (Variable), 1145 0xB1, 0x03, # . Feature (Constant, Variable), 1146 0x0A, 0x07, 0x10, # . Usage (1007h), 1147 0x09, 0x00, # . Usage (00h), 1148 0x0A, 0x08, 0x10, # . Usage (1008h), 1149 0x09, 0x00, # . Usage (00h), 1150 0x09, 0x00, # . Usage (00h), 1151 0x09, 0x00, # . Usage (00h), 1152 0x27, 0xFF, 0xFF, 0x00, 0x00, # . Logical Maximum (65535), 1153 0x75, 0x10, # . Report Size (16), 1154 0x95, 0x06, # . Report Count (6), 1155 0xB1, 0x02, # . Feature (Variable), 1156 0x09, 0x00, # . Usage (00h), 1157 0x25, 0x00, # . Logical Maximum (0), 1158 0x75, 0x08, # . Report Size (8), 1159 0x95, 0x01, # . Report Count (1), 1160 0xB1, 0x03, # . Feature (Constant, Variable), 1161 0x85, 0x0C, # . Report ID (12), 1162 0x0A, 0x30, 0x0D, # . Usage (0D30h), 1163 0x0A, 0x31, 0x0D, # . Usage (0D31h), 1164 0x0A, 0x32, 0x0D, # . Usage (0D32h), 1165 0x0A, 0x33, 0x0D, # . Usage (0D33h), 1166 0x65, 0x11, # . Unit (Centimeter), 1167 0x55, 0x0D, # . Unit Exponent (13), 1168 0x35, 0x00, # . Physical Minimum (0), 1169 0x46, 0xC8, 0x00, # . Physical Maximum (200), 1170 0x15, 0x00, # . Logical Minimum (0), 1171 0x26, 0x90, 0x01, # . Logical Maximum (400), 1172 0x75, 0x10, # . Report Size (16), 1173 0x95, 0x04, # . Report Count (4), 1174 0xB1, 0x02, # . Feature (Variable), 1175 0x85, 0x0D, # . Report ID (13), 1176 0x0A, 0x0D, 0x10, # . Usage (100Dh), 1177 0x65, 0x00, # . Unit, 1178 0x55, 0x00, # . Unit Exponent (0), 1179 0x45, 0x00, # . Physical Maximum (0), 1180 0x25, 0x01, # . Logical Maximum (1), 1181 0x75, 0x08, # . Report Size (8), 1182 0x95, 0x01, # . Report Count (1), 1183 0xB1, 0x02, # . Feature (Variable), 1184 0x85, 0x14, # . Report ID (20), 1185 0x0A, 0x14, 0x10, # . Usage (1014h), 1186 0x26, 0xFF, 0x00, # . Logical Maximum (255), 1187 0x95, 0x0D, # . Report Count (13), 1188 0xB1, 0x02, # . Feature (Variable), 1189 0x85, 0xCC, # . Report ID (204), 1190 0x0A, 0xCC, 0x10, # . Usage (10CCh), 1191 0x95, 0x02, # . Report Count (2), 1192 0xB1, 0x02, # . Feature (Variable), 1193 0xC0, # . End Collection, 1194 0x09, 0x0E, # . Usage (0Eh), 1195 0xA1, 0x02, # . Collection (Logical), 1196 0x85, 0x31, # . Report ID (49), 1197 0x0A, 0x31, 0x10, # . Usage (1031h), 1198 0x25, 0x64, # . Logical Maximum (100), 1199 0x95, 0x03, # . Report Count (3), 1200 0xB1, 0x02, # . Feature (Variable), 1201 0x95, 0x02, # . Report Count (2), 1202 0xB1, 0x03, # . Feature (Constant, Variable), 1203 0xC0, # . End Collection, 1204 0x0A, 0xAC, 0x10, # . Usage (10ACh), 1205 0xA1, 0x02, # . Collection (Logical), 1206 0x15, 0x00, # . Logical Minimum (0), 1207 0x26, 0xFF, 0x00, # . Logical Maximum (255), 1208 0x75, 0x08, # . Report Size (8), 1209 0x85, 0xAC, # . Report ID (172), 1210 0x09, 0x00, # . Usage (00h), 1211 0x96, 0xBF, 0x00, # . Report Count (191), 1212 0x81, 0x02, # . Input (Variable), 1213 0x85, 0x15, # . Report ID (21), 1214 0x09, 0x00, # . Usage (00h), 1215 0x95, 0x0E, # . Report Count (14), 1216 0xB1, 0x02, # . Feature (Variable), 1217 0x85, 0x33, # . Report ID (51), 1218 0x09, 0x00, # . Usage (00h), 1219 0x95, 0x12, # . Report Count (18), 1220 0xB1, 0x02, # . Feature (Variable), 1221 0x85, 0x44, # . Report ID (68), 1222 0x09, 0x00, # . Usage (00h), 1223 0x95, 0x04, # . Report Count (4), 1224 0xB1, 0x02, # . Feature (Variable), 1225 0x85, 0x45, # . Report ID (69), 1226 0x09, 0x00, # . Usage (00h), 1227 0x95, 0x20, # . Report Count (32), 1228 0xB1, 0x02, # . Feature (Variable), 1229 0x85, 0x60, # . Report ID (96), 1230 0x09, 0x00, # . Usage (00h), 1231 0x95, 0x3F, # . Report Count (63), 1232 0xB1, 0x02, # . Feature (Variable), 1233 0x85, 0x61, # . Report ID (97), 1234 0x09, 0x00, # . Usage (00h), 1235 0x95, 0x3E, # . Report Count (62), 1236 0xB1, 0x02, # . Feature (Variable), 1237 0x85, 0x62, # . Report ID (98), 1238 0x09, 0x00, # . Usage (00h), 1239 0x95, 0x3E, # . Report Count (62), 1240 0xB1, 0x02, # . Feature (Variable), 1241 0x85, 0x65, # . Report ID (101), 1242 0x09, 0x00, # . Usage (00h), 1243 0x95, 0x04, # . Report Count (4), 1244 0xB1, 0x02, # . Feature (Variable), 1245 0x85, 0x66, # . Report ID (102), 1246 0x09, 0x00, # . Usage (00h), 1247 0x95, 0x04, # . Report Count (4), 1248 0xB1, 0x02, # . Feature (Variable), 1249 0x85, 0x67, # . Report ID (103), 1250 0x09, 0x00, # . Usage (00h), 1251 0x95, 0x04, # . Report Count (4), 1252 0xB1, 0x02, # . Feature (Variable), 1253 0x85, 0x68, # . Report ID (104), 1254 0x09, 0x00, # . Usage (00h), 1255 0x95, 0x11, # . Report Count (17), 1256 0xB1, 0x02, # . Feature (Variable), 1257 0x85, 0x6F, # . Report ID (111), 1258 0x09, 0x00, # . Usage (00h), 1259 0x95, 0x3E, # . Report Count (62), 1260 0xB1, 0x02, # . Feature (Variable), 1261 0x85, 0xCD, # . Report ID (205), 1262 0x09, 0x00, # . Usage (00h), 1263 0x95, 0x02, # . Report Count (2), 1264 0xB1, 0x02, # . Feature (Variable), 1265 0x85, 0x16, # . Report ID (22), 1266 0x09, 0x00, # . Usage (00h), 1267 0x95, 0x0E, # . Report Count (14), 1268 0xB1, 0x02, # . Feature (Variable), 1269 0x85, 0x35, # . Report ID (53), 1270 0x09, 0x00, # . Usage (00h), 1271 0x95, 0x0A, # . Report Count (10), 1272 0xB1, 0x02, # . Feature (Variable), 1273 0xC0, # . End Collection, 1274 0x85, 0xD1, # . Report ID (209), 1275 0x09, 0x01, # . Usage (01h), 1276 0x96, 0x04, 0x01, # . Report Count (260), 1277 0xB1, 0x02, # . Feature (Variable), 1278 0x85, 0xD2, # . Report ID (210), 1279 0x09, 0x01, # . Usage (01h), 1280 0x96, 0x04, 0x01, # . Report Count (260), 1281 0xB1, 0x02, # . Feature (Variable), 1282 0x85, 0xD3, # . Report ID (211), 1283 0x09, 0x01, # . Usage (01h), 1284 0x96, 0x04, 0x00, # . Report Count (4), 1285 0xB1, 0x02, # . Feature (Variable), 1286 0x85, 0xD4, # . Report ID (212), 1287 0x09, 0x01, # . Usage (01h), 1288 0x96, 0x04, 0x00, # . Report Count (4), 1289 0xB1, 0x02, # . Feature (Variable), 1290 0x85, 0xD5, # . Report ID (213), 1291 0x09, 0x01, # . Usage (01h), 1292 0x96, 0x04, 0x00, # . Report Count (4), 1293 0xB1, 0x02, # . Feature (Variable), 1294 0x85, 0xD6, # . Report ID (214), 1295 0x09, 0x01, # . Usage (01h), 1296 0x96, 0x04, 0x00, # . Report Count (4), 1297 0xB1, 0x02, # . Feature (Variable), 1298 0x85, 0xD7, # . Report ID (215), 1299 0x09, 0x01, # . Usage (01h), 1300 0x96, 0x08, 0x00, # . Report Count (8), 1301 0xB1, 0x02, # . Feature (Variable), 1302 0x85, 0xD8, # . Report ID (216), 1303 0x09, 0x01, # . Usage (01h), 1304 0x96, 0x0C, 0x00, # . Report Count (12), 1305 0xB1, 0x02, # . Feature (Variable), 1306 0x85, 0xD9, # . Report ID (217), 1307 0x09, 0x01, # . Usage (01h), 1308 0x96, 0x00, 0x0A, # . Report Count (2560), 1309 0xB1, 0x02, # . Feature (Variable), 1310 0x85, 0xDA, # . Report ID (218), 1311 0x09, 0x01, # . Usage (01h), 1312 0x96, 0x04, 0x04, # . Report Count (1028), 1313 0xB1, 0x02, # . Feature (Variable), 1314 0x85, 0xDB, # . Report ID (219), 1315 0x09, 0x01, # . Usage (01h), 1316 0x96, 0x06, 0x00, # . Report Count (6), 1317 0xB1, 0x02, # . Feature (Variable), 1318 0x85, 0xDC, # . Report ID (220), 1319 0x09, 0x01, # . Usage (01h), 1320 0x96, 0x02, 0x00, # . Report Count (2), 1321 0xB1, 0x02, # . Feature (Variable), 1322 0x85, 0xDD, # . Report ID (221), 1323 0x09, 0x01, # . Usage (01h), 1324 0x96, 0x04, 0x00, # . Report Count (4), 1325 0xB1, 0x02, # . Feature (Variable), 1326 0x85, 0xDE, # . Report ID (222), 1327 0x09, 0x01, # . Usage (01h), 1328 0x96, 0x04, 0x00, # . Report Count (4), 1329 0xB1, 0x02, # . Feature (Variable), 1330 0x85, 0xDF, # . Report ID (223), 1331 0x09, 0x01, # . Usage (01h), 1332 0x96, 0x22, 0x00, # . Report Count (34), 1333 0xB1, 0x02, # . Feature (Variable), 1334 0x85, 0xE0, # . Report ID (224), 1335 0x09, 0x01, # . Usage (01h), 1336 0x96, 0x01, 0x00, # . Report Count (1), 1337 0xB1, 0x02, # . Feature (Variable), 1338 0x85, 0xE1, # . Report ID (225), 1339 0x09, 0x01, # . Usage (01h), 1340 0x96, 0x02, 0x00, # . Report Count (2), 1341 0xB1, 0x02, # . Feature (Variable), 1342 0x85, 0xE2, # . Report ID (226), 1343 0x09, 0x01, # . Usage (01h), 1344 0x96, 0x02, 0x00, # . Report Count (2), 1345 0xB1, 0x02, # . Feature (Variable), 1346 0x85, 0xE3, # . Report ID (227), 1347 0x09, 0x01, # . Usage (01h), 1348 0x96, 0x02, 0x00, # . Report Count (2), 1349 0xB1, 0x02, # . Feature (Variable), 1350 0x85, 0xE4, # . Report ID (228), 1351 0x09, 0x01, # . Usage (01h), 1352 0x96, 0xFF, 0x01, # . Report Count (511), 1353 0xB1, 0x02, # . Feature (Variable), 1354 0x85, 0xCB, # . Report ID (203), 1355 0x09, 0x01, # . Usage (01h), 1356 0x96, 0x1F, 0x00, # . Report Count (31), 1357 0xB1, 0x02, # . Feature (Variable), 1358 0xC0 # . End Collection 1359] 1360# fmt: on 1361