Description of problem: I have an ASUS UX550VE laptop, and recently i noticed that I received a notification with something along the lines of "keyboard only has 1% battery left". Upon further inspection, i noticed that it's the Elan touchscreen that reports 1% battery left. I found this bug report (https://github.com/linuxwacom/input-wacom/issues/37) to be very similar to what I experience, but I don't know if it's related (since i don't believe my laptop has a wacom touchscreen, but an Elan one) Version-Release number of selected component (if applicable): How reproducible: This is a reliable way i found: Steps to Reproduce: 1. Log out of the session Actual results: Notification (keyboard only has 1% battery left) will appear. Expected results: This notification won't appear. Additional info: Maybe i got the affected component wrong, but I'm not sure what other component could be responsible. Sorry in advance.
Most probably a device/kernel issue, libinput doesn't do anything with battery (and the libinput driver even less so). Can you attach a hid-recorder output for this device please? See the README here, easiest is to pip install it: https://gitlab.freedesktop.org/libevdev/hid-tools/
It seems that the issue has dissapeared for now. In the meantime I updated to kernel 5.9.8, so maybe it is fixed (although it stopped happening before the kernel update). I will post here if i see it happening again.
Ok, so the issue appeared again. It happens after the device resumes from suspend (such as when closing the lid, then opening it after a while) - but not always though. Logging out doesn't seem to be a reliable way to trigger that notification, except when it *already* appeared once (typically after resuming from suspend). Here is the hid-recorder output (hopefully i did it right): https://bin.privacytools.io/?6290b0b6b1d769fd#xCCfZEZybus9/L+cbPrAMuZzet+ms1JjlZUPbbylzP0=
I forgot to mention that i installed and started hid-recorder after that notification appeared
please **attach** the hid-recorder output here. Linking to outside pastebins just ensures that when we do get to look at the data, that data is not available.
# ELAN Touchscreen # 0x05, 0x0d, // Usage Page (Digitizers) 0 # 0x09, 0x02, // Usage (Pen) 2 # 0xa1, 0x01, // Collection (Application) 4 # 0x85, 0x07, // Report ID (7) 6 # 0x35, 0x00, // Physical Minimum (0) 8 # 0x09, 0x20, // Usage (Stylus) 10 # 0xa1, 0x00, // Collection (Physical) 12 # 0x09, 0x32, // Usage (In Range) 14 # 0x09, 0x42, // Usage (Tip Switch) 16 # 0x09, 0x44, // Usage (Barrel Switch) 18 # 0x09, 0x3c, // Usage (Invert) 20 # 0x09, 0x45, // Usage (Eraser) 22 # 0x15, 0x00, // Logical Minimum (0) 24 # 0x25, 0x01, // Logical Maximum (1) 26 # 0x75, 0x01, // Report Size (1) 28 # 0x95, 0x05, // Report Count (5) 30 # 0x81, 0x02, // Input (Data,Var,Abs) 32 # 0x95, 0x03, // Report Count (3) 34 # 0x81, 0x03, // Input (Cnst,Var,Abs) 36 # 0x05, 0x01, // Usage Page (Generic Desktop) 38 # 0x09, 0x30, // Usage (X) 40 # 0x75, 0x10, // Report Size (16) 42 # 0x95, 0x01, // Report Count (1) 44 # 0xa4, // Push 46 # 0x55, 0x0f, // Unit Exponent (-1) 47 # 0x65, 0x11, // Unit (Centimeter,SILinear) 49 # 0x46, 0x58, 0x01, // Physical Maximum (344) 51 # 0x26, 0x4c, 0x54, // Logical Maximum (21580) 54 # 0x81, 0x42, // Input (Data,Var,Abs,Null) 57 # 0x09, 0x31, // Usage (Y) 59 # 0x46, 0xc2, 0x00, // Physical Maximum (194) 61 # 0x26, 0xbc, 0x2f, // Logical Maximum (12220) 64 # 0x81, 0x42, // Input (Data,Var,Abs,Null) 67 # 0xb4, // Pop 69 # 0x05, 0x0d, // Usage Page (Digitizers) 70 # 0x09, 0x30, // Usage (Tip Pressure) 72 # 0x26, 0x00, 0x01, // Logical Maximum (256) 74 # 0x81, 0x02, // Input (Data,Var,Abs) 77 # 0x09, 0x3b, // Usage (Battery Strength) 79 # 0x75, 0x08, // Report Size (8) 81 # 0x25, 0x64, // Logical Maximum (100) 83 # 0x81, 0x42, // Input (Data,Var,Abs,Null) 85 # 0x06, 0x00, 0xff, // Usage Page (Vendor Defined Page 1) 87 # 0x95, 0x17, // Report Count (23) 90 # 0x09, 0x80, // Usage (Vendor Usage 0x80) 92 # 0x81, 0x02, // Input (Data,Var,Abs) 94 # 0xc0, // End Collection 96 # 0xc0, // End Collection 97 # 0x05, 0x0d, // Usage Page (Digitizers) 98 # 0x09, 0x04, // Usage (Touch Screen) 100 # 0xa1, 0x01, // Collection (Application) 102 # 0x85, 0x01, // Report ID (1) 104 # 0x09, 0x22, // Usage (Finger) 106 # 0xa1, 0x02, // Collection (Logical) 108 # 0x09, 0x42, // Usage (Tip Switch) 110 # 0x15, 0x00, // Logical Minimum (0) 112 # 0x25, 0x01, // Logical Maximum (1) 114 # 0x75, 0x01, // Report Size (1) 116 # 0x95, 0x01, // Report Count (1) 118 # 0x81, 0x02, // Input (Data,Var,Abs) 120 # 0x75, 0x01, // Report Size (1) 122 # 0x81, 0x03, // Input (Cnst,Var,Abs) 124 # 0x75, 0x06, // Report Size (6) 126 # 0x09, 0x51, // Usage (Contact Id) 128 # 0x25, 0x3f, // Logical Maximum (63) 130 # 0x81, 0x02, // Input (Data,Var,Abs) 132 # 0x26, 0xff, 0x00, // Logical Maximum (255) 134 # 0x75, 0x08, // Report Size (8) 137 # 0x09, 0x48, // Usage (Width) 139 # 0x81, 0x02, // Input (Data,Var,Abs) 141 # 0x09, 0x49, // Usage (Height) 143 # 0x81, 0x02, // Input (Data,Var,Abs) 145 # 0x95, 0x01, // Report Count (1) 147 # 0x05, 0x01, // Usage Page (Generic Desktop) 149 # 0xa4, // Push 151 # 0x26, 0x90, 0x0f, // Logical Maximum (3984) 152 # 0x75, 0x10, // Report Size (16) 155 # 0x55, 0x0f, // Unit Exponent (-1) 157 # 0x65, 0x11, // Unit (Centimeter,SILinear) 159 # 0x09, 0x30, // Usage (X) 161 # 0x35, 0x00, // Physical Minimum (0) 163 # 0x46, 0x58, 0x01, // Physical Maximum (344) 165 # 0x95, 0x02, // Report Count (2) 168 # 0x81, 0x02, // Input (Data,Var,Abs) 170 # 0x26, 0xd0, 0x08, // Logical Maximum (2256) 172 # 0x46, 0xc2, 0x00, // Physical Maximum (194) 175 # 0x09, 0x31, // Usage (Y) 178 # 0x81, 0x02, // Input (Data,Var,Abs) 180 # 0xb4, // Pop 182 # 0xc0, // End Collection 183 # 0x05, 0x0d, // Usage Page (Digitizers) 184 # 0x09, 0x22, // Usage (Finger) 186 # 0xa1, 0x02, // Collection (Logical) 188 # 0x05, 0x0d, // Usage Page (Digitizers) 190 # 0x09, 0x42, // Usage (Tip Switch) 192 # 0x15, 0x00, // Logical Minimum (0) 194 # 0x25, 0x01, // Logical Maximum (1) 196 # 0x75, 0x01, // Report Size (1) 198 # 0x95, 0x01, // Report Count (1) 200 # 0x81, 0x02, // Input (Data,Var,Abs) 202 # 0x75, 0x01, // Report Size (1) 204 # 0x81, 0x03, // Input (Cnst,Var,Abs) 206 # 0x75, 0x06, // Report Size (6) 208 # 0x09, 0x51, // Usage (Contact Id) 210 # 0x25, 0x3f, // Logical Maximum (63) 212 # 0x81, 0x02, // Input (Data,Var,Abs) 214 # 0x26, 0xff, 0x00, // Logical Maximum (255) 216 # 0x75, 0x08, // Report Size (8) 219 # 0x09, 0x48, // Usage (Width) 221 # 0x81, 0x02, // Input (Data,Var,Abs) 223 # 0x09, 0x49, // Usage (Height) 225 # 0x81, 0x02, // Input (Data,Var,Abs) 227 # 0x95, 0x01, // Report Count (1) 229 # 0x05, 0x01, // Usage Page (Generic Desktop) 231 # 0xa4, // Push 233 # 0x26, 0x90, 0x0f, // Logical Maximum (3984) 234 # 0x75, 0x10, // Report Size (16) 237 # 0x55, 0x0f, // Unit Exponent (-1) 239 # 0x65, 0x11, // Unit (Centimeter,SILinear) 241 # 0x09, 0x30, // Usage (X) 243 # 0x35, 0x00, // Physical Minimum (0) 245 # 0x46, 0x58, 0x01, // Physical Maximum (344) 247 # 0x95, 0x02, // Report Count (2) 250 # 0x81, 0x02, // Input (Data,Var,Abs) 252 # 0x26, 0xd0, 0x08, // Logical Maximum (2256) 254 # 0x46, 0xc2, 0x00, // Physical Maximum (194) 257 # 0x09, 0x31, // Usage (Y) 260 # 0x81, 0x02, // Input (Data,Var,Abs) 262 # 0xb4, // Pop 264 # 0xc0, // End Collection 265 # 0x05, 0x0d, // Usage Page (Digitizers) 266 # 0x09, 0x22, // Usage (Finger) 268 # 0xa1, 0x02, // Collection (Logical) 270 # 0x05, 0x0d, // Usage Page (Digitizers) 272 # 0x09, 0x42, // Usage (Tip Switch) 274 # 0x15, 0x00, // Logical Minimum (0) 276 # 0x25, 0x01, // Logical Maximum (1) 278 # 0x75, 0x01, // Report Size (1) 280 # 0x95, 0x01, // Report Count (1) 282 # 0x81, 0x02, // Input (Data,Var,Abs) 284 # 0x75, 0x01, // Report Size (1) 286 # 0x81, 0x03, // Input (Cnst,Var,Abs) 288 # 0x75, 0x06, // Report Size (6) 290 # 0x09, 0x51, // Usage (Contact Id) 292 # 0x25, 0x3f, // Logical Maximum (63) 294 # 0x81, 0x02, // Input (Data,Var,Abs) 296 # 0x26, 0xff, 0x00, // Logical Maximum (255) 298 # 0x75, 0x08, // Report Size (8) 301 # 0x09, 0x48, // Usage (Width) 303 # 0x81, 0x02, // Input (Data,Var,Abs) 305 # 0x09, 0x49, // Usage (Height) 307 # 0x81, 0x02, // Input (Data,Var,Abs) 309 # 0x95, 0x01, // Report Count (1) 311 # 0x05, 0x01, // Usage Page (Generic Desktop) 313 # 0xa4, // Push 315 # 0x26, 0x90, 0x0f, // Logical Maximum (3984) 316 # 0x75, 0x10, // Report Size (16) 319 # 0x55, 0x0f, // Unit Exponent (-1) 321 # 0x65, 0x11, // Unit (Centimeter,SILinear) 323 # 0x09, 0x30, // Usage (X) 325 # 0x35, 0x00, // Physical Minimum (0) 327 # 0x46, 0x58, 0x01, // Physical Maximum (344) 329 # 0x95, 0x02, // Report Count (2) 332 # 0x81, 0x02, // Input (Data,Var,Abs) 334 # 0x26, 0xd0, 0x08, // Logical Maximum (2256) 336 # 0x46, 0xc2, 0x00, // Physical Maximum (194) 339 # 0x09, 0x31, // Usage (Y) 342 # 0x81, 0x02, // Input (Data,Var,Abs) 344 # 0xb4, // Pop 346 # 0xc0, // End Collection 347 # 0x05, 0x0d, // Usage Page (Digitizers) 348 # 0x09, 0x22, // Usage (Finger) 350 # 0xa1, 0x02, // Collection (Logical) 352 # 0x05, 0x0d, // Usage Page (Digitizers) 354 # 0x09, 0x42, // Usage (Tip Switch) 356 # 0x15, 0x00, // Logical Minimum (0) 358 # 0x25, 0x01, // Logical Maximum (1) 360 # 0x75, 0x01, // Report Size (1) 362 # 0x95, 0x01, // Report Count (1) 364 # 0x81, 0x02, // Input (Data,Var,Abs) 366 # 0x75, 0x01, // Report Size (1) 368 # 0x81, 0x03, // Input (Cnst,Var,Abs) 370 # 0x75, 0x06, // Report Size (6) 372 # 0x09, 0x51, // Usage (Contact Id) 374 # 0x25, 0x3f, // Logical Maximum (63) 376 # 0x81, 0x02, // Input (Data,Var,Abs) 378 # 0x26, 0xff, 0x00, // Logical Maximum (255) 380 # 0x75, 0x08, // Report Size (8) 383 # 0x09, 0x48, // Usage (Width) 385 # 0x81, 0x02, // Input (Data,Var,Abs) 387 # 0x09, 0x49, // Usage (Height) 389 # 0x81, 0x02, // Input (Data,Var,Abs) 391 # 0x95, 0x01, // Report Count (1) 393 # 0x05, 0x01, // Usage Page (Generic Desktop) 395 # 0xa4, // Push 397 # 0x26, 0x90, 0x0f, // Logical Maximum (3984) 398 # 0x75, 0x10, // Report Size (16) 401 # 0x55, 0x0f, // Unit Exponent (-1) 403 # 0x65, 0x11, // Unit (Centimeter,SILinear) 405 # 0x09, 0x30, // Usage (X) 407 # 0x35, 0x00, // Physical Minimum (0) 409 # 0x46, 0x58, 0x01, // Physical Maximum (344) 411 # 0x95, 0x02, // Report Count (2) 414 # 0x81, 0x02, // Input (Data,Var,Abs) 416 # 0x26, 0xd0, 0x08, // Logical Maximum (2256) 418 # 0x46, 0xc2, 0x00, // Physical Maximum (194) 421 # 0x09, 0x31, // Usage (Y) 424 # 0x81, 0x02, // Input (Data,Var,Abs) 426 # 0xb4, // Pop 428 # 0xc0, // End Collection 429 # 0x05, 0x0d, // Usage Page (Digitizers) 430 # 0x09, 0x22, // Usage (Finger) 432 # 0xa1, 0x02, // Collection (Logical) 434 # 0x05, 0x0d, // Usage Page (Digitizers) 436 # 0x09, 0x42, // Usage (Tip Switch) 438 # 0x15, 0x00, // Logical Minimum (0) 440 # 0x25, 0x01, // Logical Maximum (1) 442 # 0x75, 0x01, // Report Size (1) 444 # 0x95, 0x01, // Report Count (1) 446 # 0x81, 0x02, // Input (Data,Var,Abs) 448 # 0x75, 0x01, // Report Size (1) 450 # 0x81, 0x03, // Input (Cnst,Var,Abs) 452 # 0x75, 0x06, // Report Size (6) 454 # 0x09, 0x51, // Usage (Contact Id) 456 # 0x25, 0x3f, // Logical Maximum (63) 458 # 0x81, 0x02, // Input (Data,Var,Abs) 460 # 0x26, 0xff, 0x00, // Logical Maximum (255) 462 # 0x75, 0x08, // Report Size (8) 465 # 0x09, 0x48, // Usage (Width) 467 # 0x81, 0x02, // Input (Data,Var,Abs) 469 # 0x09, 0x49, // Usage (Height) 471 # 0x81, 0x02, // Input (Data,Var,Abs) 473 # 0x95, 0x01, // Report Count (1) 475 # 0x05, 0x01, // Usage Page (Generic Desktop) 477 # 0xa4, // Push 479 # 0x26, 0x90, 0x0f, // Logical Maximum (3984) 480 # 0x75, 0x10, // Report Size (16) 483 # 0x55, 0x0f, // Unit Exponent (-1) 485 # 0x65, 0x11, // Unit (Centimeter,SILinear) 487 # 0x09, 0x30, // Usage (X) 489 # 0x35, 0x00, // Physical Minimum (0) 491 # 0x46, 0x58, 0x01, // Physical Maximum (344) 493 # 0x95, 0x02, // Report Count (2) 496 # 0x81, 0x02, // Input (Data,Var,Abs) 498 # 0x26, 0xd0, 0x08, // Logical Maximum (2256) 500 # 0x46, 0xc2, 0x00, // Physical Maximum (194) 503 # 0x09, 0x31, // Usage (Y) 506 # 0x81, 0x02, // Input (Data,Var,Abs) 508 # 0xb4, // Pop 510 # 0xc0, // End Collection 511 # 0x05, 0x0d, // Usage Page (Digitizers) 512 # 0x09, 0x22, // Usage (Finger) 514 # 0xa1, 0x02, // Collection (Logical) 516 # 0x05, 0x0d, // Usage Page (Digitizers) 518 # 0x09, 0x42, // Usage (Tip Switch) 520 # 0x15, 0x00, // Logical Minimum (0) 522 # 0x25, 0x01, // Logical Maximum (1) 524 # 0x75, 0x01, // Report Size (1) 526 # 0x95, 0x01, // Report Count (1) 528 # 0x81, 0x02, // Input (Data,Var,Abs) 530 # 0x75, 0x01, // Report Size (1) 532 # 0x81, 0x03, // Input (Cnst,Var,Abs) 534 # 0x75, 0x06, // Report Size (6) 536 # 0x09, 0x51, // Usage (Contact Id) 538 # 0x25, 0x3f, // Logical Maximum (63) 540 # 0x81, 0x02, // Input (Data,Var,Abs) 542 # 0x26, 0xff, 0x00, // Logical Maximum (255) 544 # 0x75, 0x08, // Report Size (8) 547 # 0x09, 0x48, // Usage (Width) 549 # 0x81, 0x02, // Input (Data,Var,Abs) 551 # 0x09, 0x49, // Usage (Height) 553 # 0x81, 0x02, // Input (Data,Var,Abs) 555 # 0x95, 0x01, // Report Count (1) 557 # 0x05, 0x01, // Usage Page (Generic Desktop) 559 # 0xa4, // Push 561 # 0x26, 0x90, 0x0f, // Logical Maximum (3984) 562 # 0x75, 0x10, // Report Size (16) 565 # 0x55, 0x0f, // Unit Exponent (-1) 567 # 0x65, 0x11, // Unit (Centimeter,SILinear) 569 # 0x09, 0x30, // Usage (X) 571 # 0x35, 0x00, // Physical Minimum (0) 573 # 0x46, 0x58, 0x01, // Physical Maximum (344) 575 # 0x95, 0x02, // Report Count (2) 578 # 0x81, 0x02, // Input (Data,Var,Abs) 580 # 0x26, 0xd0, 0x08, // Logical Maximum (2256) 582 # 0x46, 0xc2, 0x00, // Physical Maximum (194) 585 # 0x09, 0x31, // Usage (Y) 588 # 0x81, 0x02, // Input (Data,Var,Abs) 590 # 0xb4, // Pop 592 # 0xc0, // End Collection 593 # 0x05, 0x0d, // Usage Page (Digitizers) 594 # 0x09, 0x22, // Usage (Finger) 596 # 0xa1, 0x02, // Collection (Logical) 598 # 0x05, 0x0d, // Usage Page (Digitizers) 600 # 0x09, 0x42, // Usage (Tip Switch) 602 # 0x15, 0x00, // Logical Minimum (0) 604 # 0x25, 0x01, // Logical Maximum (1) 606 # 0x75, 0x01, // Report Size (1) 608 # 0x95, 0x01, // Report Count (1) 610 # 0x81, 0x02, // Input (Data,Var,Abs) 612 # 0x75, 0x01, // Report Size (1) 614 # 0x81, 0x03, // Input (Cnst,Var,Abs) 616 # 0x75, 0x06, // Report Size (6) 618 # 0x09, 0x51, // Usage (Contact Id) 620 # 0x25, 0x3f, // Logical Maximum (63) 622 # 0x81, 0x02, // Input (Data,Var,Abs) 624 # 0x26, 0xff, 0x00, // Logical Maximum (255) 626 # 0x75, 0x08, // Report Size (8) 629 # 0x09, 0x48, // Usage (Width) 631 # 0x81, 0x02, // Input (Data,Var,Abs) 633 # 0x09, 0x49, // Usage (Height) 635 # 0x81, 0x02, // Input (Data,Var,Abs) 637 # 0x95, 0x01, // Report Count (1) 639 # 0x05, 0x01, // Usage Page (Generic Desktop) 641 # 0xa4, // Push 643 # 0x26, 0x90, 0x0f, // Logical Maximum (3984) 644 # 0x75, 0x10, // Report Size (16) 647 # 0x55, 0x0f, // Unit Exponent (-1) 649 # 0x65, 0x11, // Unit (Centimeter,SILinear) 651 # 0x09, 0x30, // Usage (X) 653 # 0x35, 0x00, // Physical Minimum (0) 655 # 0x46, 0x58, 0x01, // Physical Maximum (344) 657 # 0x95, 0x02, // Report Count (2) 660 # 0x81, 0x02, // Input (Data,Var,Abs) 662 # 0x26, 0xd0, 0x08, // Logical Maximum (2256) 664 # 0x46, 0xc2, 0x00, // Physical Maximum (194) 667 # 0x09, 0x31, // Usage (Y) 670 # 0x81, 0x02, // Input (Data,Var,Abs) 672 # 0xb4, // Pop 674 # 0xc0, // End Collection 675 # 0x05, 0x0d, // Usage Page (Digitizers) 676 # 0x09, 0x22, // Usage (Finger) 678 # 0xa1, 0x02, // Collection (Logical) 680 # 0x05, 0x0d, // Usage Page (Digitizers) 682 # 0x09, 0x42, // Usage (Tip Switch) 684 # 0x15, 0x00, // Logical Minimum (0) 686 # 0x25, 0x01, // Logical Maximum (1) 688 # 0x75, 0x01, // Report Size (1) 690 # 0x95, 0x01, // Report Count (1) 692 # 0x81, 0x02, // Input (Data,Var,Abs) 694 # 0x75, 0x01, // Report Size (1) 696 # 0x81, 0x03, // Input (Cnst,Var,Abs) 698 # 0x75, 0x06, // Report Size (6) 700 # 0x09, 0x51, // Usage (Contact Id) 702 # 0x25, 0x3f, // Logical Maximum (63) 704 # 0x81, 0x02, // Input (Data,Var,Abs) 706 # 0x26, 0xff, 0x00, // Logical Maximum (255) 708 # 0x75, 0x08, // Report Size (8) 711 # 0x09, 0x48, // Usage (Width) 713 # 0x81, 0x02, // Input (Data,Var,Abs) 715 # 0x09, 0x49, // Usage (Height) 717 # 0x81, 0x02, // Input (Data,Var,Abs) 719 # 0x95, 0x01, // Report Count (1) 721 # 0x05, 0x01, // Usage Page (Generic Desktop) 723 # 0xa4, // Push 725 # 0x26, 0x90, 0x0f, // Logical Maximum (3984) 726 # 0x75, 0x10, // Report Size (16) 729 # 0x55, 0x0f, // Unit Exponent (-1) 731 # 0x65, 0x11, // Unit (Centimeter,SILinear) 733 # 0x09, 0x30, // Usage (X) 735 # 0x35, 0x00, // Physical Minimum (0) 737 # 0x46, 0x58, 0x01, // Physical Maximum (344) 739 # 0x95, 0x02, // Report Count (2) 742 # 0x81, 0x02, // Input (Data,Var,Abs) 744 # 0x26, 0xd0, 0x08, // Logical Maximum (2256) 746 # 0x46, 0xc2, 0x00, // Physical Maximum (194) 749 # 0x09, 0x31, // Usage (Y) 752 # 0x81, 0x02, // Input (Data,Var,Abs) 754 # 0xb4, // Pop 756 # 0xc0, // End Collection 757 # 0x05, 0x0d, // Usage Page (Digitizers) 758 # 0x09, 0x22, // Usage (Finger) 760 # 0xa1, 0x02, // Collection (Logical) 762 # 0x05, 0x0d, // Usage Page (Digitizers) 764 # 0x09, 0x42, // Usage (Tip Switch) 766 # 0x15, 0x00, // Logical Minimum (0) 768 # 0x25, 0x01, // Logical Maximum (1) 770 # 0x75, 0x01, // Report Size (1) 772 # 0x95, 0x01, // Report Count (1) 774 # 0x81, 0x02, // Input (Data,Var,Abs) 776 # 0x75, 0x01, // Report Size (1) 778 # 0x81, 0x03, // Input (Cnst,Var,Abs) 780 # 0x75, 0x06, // Report Size (6) 782 # 0x09, 0x51, // Usage (Contact Id) 784 # 0x25, 0x3f, // Logical Maximum (63) 786 # 0x81, 0x02, // Input (Data,Var,Abs) 788 # 0x26, 0xff, 0x00, // Logical Maximum (255) 790 # 0x75, 0x08, // Report Size (8) 793 # 0x09, 0x48, // Usage (Width) 795 # 0x81, 0x02, // Input (Data,Var,Abs) 797 # 0x09, 0x49, // Usage (Height) 799 # 0x81, 0x02, // Input (Data,Var,Abs) 801 # 0x95, 0x01, // Report Count (1) 803 # 0x05, 0x01, // Usage Page (Generic Desktop) 805 # 0xa4, // Push 807 # 0x26, 0x90, 0x0f, // Logical Maximum (3984) 808 # 0x75, 0x10, // Report Size (16) 811 # 0x55, 0x0f, // Unit Exponent (-1) 813 # 0x65, 0x11, // Unit (Centimeter,SILinear) 815 # 0x09, 0x30, // Usage (X) 817 # 0x35, 0x00, // Physical Minimum (0) 819 # 0x46, 0x58, 0x01, // Physical Maximum (344) 821 # 0x95, 0x02, // Report Count (2) 824 # 0x81, 0x02, // Input (Data,Var,Abs) 826 # 0x26, 0xd0, 0x08, // Logical Maximum (2256) 828 # 0x46, 0xc2, 0x00, // Physical Maximum (194) 831 # 0x09, 0x31, // Usage (Y) 834 # 0x81, 0x02, // Input (Data,Var,Abs) 836 # 0xb4, // Pop 838 # 0xc0, // End Collection 839 # 0x05, 0x0d, // Usage Page (Digitizers) 840 # 0x09, 0x22, // Usage (Finger) 842 # 0xa1, 0x02, // Collection (Logical) 844 # 0x05, 0x0d, // Usage Page (Digitizers) 846 # 0x09, 0x42, // Usage (Tip Switch) 848 # 0x15, 0x00, // Logical Minimum (0) 850 # 0x25, 0x01, // Logical Maximum (1) 852 # 0x75, 0x01, // Report Size (1) 854 # 0x95, 0x01, // Report Count (1) 856 # 0x81, 0x02, // Input (Data,Var,Abs) 858 # 0x75, 0x01, // Report Size (1) 860 # 0x81, 0x03, // Input (Cnst,Var,Abs) 862 # 0x75, 0x06, // Report Size (6) 864 # 0x09, 0x51, // Usage (Contact Id) 866 # 0x25, 0x3f, // Logical Maximum (63) 868 # 0x81, 0x02, // Input (Data,Var,Abs) 870 # 0x26, 0xff, 0x00, // Logical Maximum (255) 872 # 0x75, 0x08, // Report Size (8) 875 # 0x09, 0x48, // Usage (Width) 877 # 0x81, 0x02, // Input (Data,Var,Abs) 879 # 0x09, 0x49, // Usage (Height) 881 # 0x81, 0x02, // Input (Data,Var,Abs) 883 # 0x95, 0x01, // Report Count (1) 885 # 0x05, 0x01, // Usage Page (Generic Desktop) 887 # 0xa4, // Push 889 # 0x26, 0x90, 0x0f, // Logical Maximum (3984) 890 # 0x75, 0x10, // Report Size (16) 893 # 0x55, 0x0f, // Unit Exponent (-1) 895 # 0x65, 0x11, // Unit (Centimeter,SILinear) 897 # 0x09, 0x30, // Usage (X) 899 # 0x35, 0x00, // Physical Minimum (0) 901 # 0x46, 0x58, 0x01, // Physical Maximum (344) 903 # 0x95, 0x02, // Report Count (2) 906 # 0x81, 0x02, // Input (Data,Var,Abs) 908 # 0x26, 0xd0, 0x08, // Logical Maximum (2256) 910 # 0x46, 0xc2, 0x00, // Physical Maximum (194) 913 # 0x09, 0x31, // Usage (Y) 916 # 0x81, 0x02, // Input (Data,Var,Abs) 918 # 0xb4, // Pop 920 # 0xc0, // End Collection 921 # 0x05, 0x0d, // Usage Page (Digitizers) 922 # 0x09, 0x56, // Usage (Scan Time) 924 # 0x55, 0x00, // Unit Exponent (0) 926 # 0x65, 0x00, // Unit (None) 928 # 0x27, 0xff, 0xff, 0xff, 0x7f, // Logical Maximum (2147483647) 930 # 0x95, 0x01, // Report Count (1) 935 # 0x75, 0x20, // Report Size (32) 937 # 0x81, 0x02, // Input (Data,Var,Abs) 939 # 0x09, 0x54, // Usage (Contact Count) 941 # 0x25, 0x7f, // Logical Maximum (127) 943 # 0x95, 0x01, // Report Count (1) 945 # 0x75, 0x08, // Report Size (8) 947 # 0x81, 0x02, // Input (Data,Var,Abs) 949 # 0x85, 0x0a, // Report ID (10) 951 # 0x09, 0x55, // Usage (Contact Max) 953 # 0x25, 0x0a, // Logical Maximum (10) 955 # 0xb1, 0x02, // Feature (Data,Var,Abs) 957 # 0x85, 0x44, // Report ID (68) 959 # 0x06, 0x00, 0xff, // Usage Page (Vendor Defined Page 1) 961 # 0x09, 0xc5, // Usage (Vendor Usage 0xc5) 964 # 0x15, 0x00, // Logical Minimum (0) 966 # 0x26, 0xff, 0x00, // Logical Maximum (255) 968 # 0x75, 0x08, // Report Size (8) 971 # 0x96, 0x00, 0x01, // Report Count (256) 973 # 0xb1, 0x02, // Feature (Data,Var,Abs) 976 # 0xc0, // End Collection 978 # 0x06, 0xff, 0x01, // Usage Page (Vendor Usage Page 0x1ff) 979 # 0x09, 0x01, // Usage (Vendor Usage 0x01) 982 # 0xa1, 0x01, // Collection (Application) 984 # 0x85, 0x02, // Report ID (2) 986 # 0x15, 0x00, // Logical Minimum (0) 988 # 0x26, 0xff, 0x00, // Logical Maximum (255) 990 # 0x75, 0x08, // Report Size (8) 993 # 0x95, 0x40, // Report Count (64) 995 # 0x09, 0x00, // Usage (Vendor Usage 0x00) 997 # 0x81, 0x02, // Input (Data,Var,Abs) 999 # 0xc0, // End Collection 1001 # 0x06, 0x00, 0xff, // Usage Page (Vendor Defined Page 1) 1002 # 0x09, 0x01, // Usage (Vendor Usage 1) 1005 # 0xa1, 0x01, // Collection (Application) 1007 # 0x85, 0x03, // Report ID (3) 1009 # 0x75, 0x08, // Report Size (8) 1011 # 0x95, 0x3f, // Report Count (63) 1013 # 0x09, 0x01, // Usage (Vendor Usage 1) 1015 # 0x91, 0x02, // Output (Data,Var,Abs) 1017 # 0xc0, // End Collection 1019 # 0x06, 0x01, 0xff, // Usage Page (Vendor Usage Page 0xff01) 1020 # 0x09, 0x01, // Usage (Vendor Usage 0x01) 1023 # 0xa1, 0x01, // Collection (Application) 1025 # 0x85, 0x04, // Report ID (4) 1027 # 0x15, 0x00, // Logical Minimum (0) 1029 # 0x26, 0xff, 0x00, // Logical Maximum (255) 1031 # 0x75, 0x08, // Report Size (8) 1034 # 0x95, 0x13, // Report Count (19) 1036 # 0x09, 0x00, // Usage (Vendor Usage 0x00) 1038 # 0x81, 0x02, // Input (Data,Var,Abs) 1040 # 0xc0, // End Collection 1042 # R: 1043 05 0d 09 02 a1 01 85 07 35 00 09 20 a1 00 09 32 09 42 09 44 09 3c 09 45 15 00 25 01 75 01 95 05 81 02 95 03 81 03 05 01 09 30 75 10 95 01 a4 55 0f 65 11 46 58 01 26 4c 54 81 42 09 31 46 c2 00 26 bc 2f 81 42 b4 05 0d 09 30 26 00 01 81 02 09 3b 75 08 25 64 81 42 06 00 ff 95 17 09 80 81 02 c0 c0 05 0d 09 04 a1 01 85 01 09 22 a1 02 09 42 15 00 25 01 75 01 95 01 81 02 75 01 81 03 75 06 09 51 25 3f 81 02 26 ff 00 75 08 09 48 81 02 09 49 81 02 95 01 05 01 a4 26 90 0f 75 10 55 0f 65 11 09 30 35 00 46 58 01 95 02 81 02 26 d0 08 46 c2 00 09 31 81 02 b4 c0 05 0d 09 22 a1 02 05 0d 09 42 15 00 25 01 75 01 95 01 81 02 75 01 81 03 75 06 09 51 25 3f 81 02 26 ff 00 75 08 09 48 81 02 09 49 81 02 95 01 05 01 a4 26 90 0f 75 10 55 0f 65 11 09 30 35 00 46 58 01 95 02 81 02 26 d0 08 46 c2 00 09 31 81 02 b4 c0 05 0d 09 22 a1 02 05 0d 09 42 15 00 25 01 75 01 95 01 81 02 75 01 81 03 75 06 09 51 25 3f 81 02 26 ff 00 75 08 09 48 81 02 09 49 81 02 95 01 05 01 a4 26 90 0f 75 10 55 0f 65 11 09 30 35 00 46 58 01 95 02 81 02 26 d0 08 46 c2 00 09 31 81 02 b4 c0 05 0d 09 22 a1 02 05 0d 09 42 15 00 25 01 75 01 95 01 81 02 75 01 81 03 75 06 09 51 25 3f 81 02 26 ff 00 75 08 09 48 81 02 09 49 81 02 95 01 05 01 a4 26 90 0f 75 10 55 0f 65 11 09 30 35 00 46 58 01 95 02 81 02 26 d0 08 46 c2 00 09 31 81 02 b4 c0 05 0d 09 22 a1 02 05 0d 09 42 15 00 25 01 75 01 95 01 81 02 75 01 81 03 75 06 09 51 25 3f 81 02 26 ff 00 75 08 09 48 81 02 09 49 81 02 95 01 05 01 a4 26 90 0f 75 10 55 0f 65 11 09 30 35 00 46 58 01 95 02 81 02 26 d0 08 46 c2 00 09 31 81 02 b4 c0 05 0d 09 22 a1 02 05 0d 09 42 15 00 25 01 75 01 95 01 81 02 75 01 81 03 75 06 09 51 25 3f 81 02 26 ff 00 75 08 09 48 81 02 09 49 81 02 95 01 05 01 a4 26 90 0f 75 10 55 0f 65 11 09 30 35 00 46 58 01 95 02 81 02 26 d0 08 46 c2 00 09 31 81 02 b4 c0 05 0d 09 22 a1 02 05 0d 09 42 15 00 25 01 75 01 95 01 81 02 75 01 81 03 75 06 09 51 25 3f 81 02 26 ff 00 75 08 09 48 81 02 09 49 81 02 95 01 05 01 a4 26 90 0f 75 10 55 0f 65 11 09 30 35 00 46 58 01 95 02 81 02 26 d0 08 46 c2 00 09 31 81 02 b4 c0 05 0d 09 22 a1 02 05 0d 09 42 15 00 25 01 75 01 95 01 81 02 75 01 81 03 75 06 09 51 25 3f 81 02 26 ff 00 75 08 09 48 81 02 09 49 81 02 95 01 05 01 a4 26 90 0f 75 10 55 0f 65 11 09 30 35 00 46 58 01 95 02 81 02 26 d0 08 46 c2 00 09 31 81 02 b4 c0 05 0d 09 22 a1 02 05 0d 09 42 15 00 25 01 75 01 95 01 81 02 75 01 81 03 75 06 09 51 25 3f 81 02 26 ff 00 75 08 09 48 81 02 09 49 81 02 95 01 05 01 a4 26 90 0f 75 10 55 0f 65 11 09 30 35 00 46 58 01 95 02 81 02 26 d0 08 46 c2 00 09 31 81 02 b4 c0 05 0d 09 22 a1 02 05 0d 09 42 15 00 25 01 75 01 95 01 81 02 75 01 81 03 75 06 09 51 25 3f 81 02 26 ff 00 75 08 09 48 81 02 09 49 81 02 95 01 05 01 a4 26 90 0f 75 10 55 0f 65 11 09 30 35 00 46 58 01 95 02 81 02 26 d0 08 46 c2 00 09 31 81 02 b4 c0 05 0d 09 56 55 00 65 00 27 ff ff ff 7f 95 01 75 20 81 02 09 54 25 7f 95 01 75 08 81 02 85 0a 09 55 25 0a b1 02 85 44 06 00 ff 09 c5 15 00 26 ff 00 75 08 96 00 01 b1 02 c0 06 ff 01 09 01 a1 01 85 02 15 00 26 ff 00 75 08 95 40 09 00 81 02 c0 06 00 ff 09 01 a1 01 85 03 75 08 95 3f 09 01 91 02 c0 06 01 ff 09 01 a1 01 85 04 15 00 26 ff 00 75 08 95 13 09 00 81 02 c0 N: ELAN Touchscreen I: 3 04f3 2544
Yeah, the device itself is reporting battery, see this Usage: # 0x09, 0x3b, // Usage (Battery Strength) 79 This will be automatically handled by the kernel drivers and userspace picks up the exported values. I'm punting this to the kernel in case there's a quirk to disable exporting this, not sure there is though.
This message is a reminder that Fedora 33 is nearing its end of life. Fedora will stop maintaining and issuing updates for Fedora 33 on 2021-11-30. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as EOL if it remains open with a Fedora 'version' of '33'. Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, simply change the 'version' to a later Fedora version. Thank you for reporting this issue and we are sorry that we were not able to fix it before Fedora 33 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora, you are encouraged change the 'version' to a later Fedora version prior this bug is closed as described in the policy above. Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete.
Fedora 33 changed to end-of-life (EOL) status on 2021-11-30. Fedora 33 is no longer maintained, which means that it will not receive any further security or bug fix updates. As a result we are closing this bug. If you can reproduce this bug against a currently maintained version of Fedora please feel free to reopen this bug against that version. If you are unable to reopen this bug, please file a new report against the current release. If you experience problems, please add a comment to this bug. Thank you for reporting this bug and we are sorry it could not be fixed.
I noticed this bug report when all kernel bugs where closed because F33 is now EOL. The kernel does have a quirk mechanism to disable battery reporting on touchscreens which falsely report a battery level over HID. I've submitted a patch upstream which adds such a quirk for the 04f3:2544 touchscreen from the Asus UX550VE: https://lore.kernel.org/linux-input/20211207121053.136906-1-hdegoede@redhat.com/ This should get automatically backported to the 5.15.y stable kernels once it has been merged upstream, resolving this.