Repository: pwr-Solaar/Solaar

Issue:
Battery incorrectly shows 0% when charging
When I plug my MX Master in to charge both the CLI and GUI window (that obnoxiously pops up) show, incorrectly, that the battery is at 0%. 



Discussion:
On Windows, it does not tell you how full is the battery either. It only shows a white battery with a charge symbol with "Charging" tooltip. Not an issue with the program, but it is the device being too secret.

Same problem here (with Anywhere Mouse MX). It would be nice if the GUI showed a "Charging" message instead of just "0%".

Same here, with MX Anywhere 2.

```
Bus 001 Device 002: ID 046d:c52b Logitech, Inc. Unifying Receiver
```

There have been several changes to solaar over the past couple of years so this issue may have already been addressed.

If you are still using solaar and this issue has not been resolved please download and run the current version from this github repository. If the problem still persists add a new comment here, providing the output of solaar -V and solaar show and any new information about the issue.

If you are still using solaar you should be able to download and run its current version (in Linux) as follows:

    Install git on your machine if it is not already installed. This is generally done via sudo apt install git or sudo dnf install git
    Change to a directory where you want the code.
    Download solaar via git clone https://github.com/pwr-Solaar/Solaar.git
    Run solaar via Solaar/bin/solaar

For more information on installing solaar from github see https://github.com/pwr-Solaar/Solaar/blob/master/docs/installation.md
Hi @pfps, this issue is still current:

```
# solaar -V
solaar 1.0.1
```

![Screenshot from 2020-02-07 18-19-52](https://user-images.githubusercontent.com/318490/74050510-8451be00-49d6-11ea-80e1-3ab334bf7c51.png)

![image](https://user-images.githubusercontent.com/318490/74050550-9895bb00-49d6-11ea-91ff-5d25f0eff30a.png)

When unplugging the USB cable, it then shows proper information:

![image](https://user-images.githubusercontent.com/318490/74050637-c1b64b80-49d6-11ea-9beb-2ae06b261098.png)

Weird.  What does `solaar show` show? 
It was the same for me at the previous week. I'll post additional info on Monday.
OK.  Attaching the output of `solaar show` will be helpful.
Here is the output from `solaar show` with the mouse plugged:

```
# solaar show
Unifying Receiver
  Device path  : /dev/hidraw7
  USB id       : 046d:c52b
  Serial       : 2******F
    Firmware   : 24.10.B0036
    Bootloader : 01.08
  Has 1 paired device(s) out of a maximum of 6.
  Notifications: wireless (0x000100)
  Device activity counters: 1=193

  1: Wireless Mouse MX Master
     Codename     : MX Master
     Kind         : mouse
     Wireless PID : 4041
     Protocol     : HID++ 4.5
     Polling rate : 8 ms (125Hz)
     Serial number: A******E
        Bootloader: BOT 18.01.B0014
          Firmware: MPM 11.02.B0014
          Firmware: MPM 11.02.B0014
             Other:
     The power switch is located on the base.
     Supports 29 HID++ 2.0 features:
         0: ROOT                   {0000}
         1: FEATURE SET            {0001}
         2: DEVICE FW VERSION      {0003}
         3: DEVICE NAME            {0005}
         4: WIRELESS DEVICE STATUS {1D4B}
         5: RESET                  {0020}
         6: BATTERY STATUS         {1000}
         7: CHANGE HOST            {1814}
         8: REPROG CONTROLS V4     {1B04}
         9: ADJUSTABLE DPI         {2201}
        10: VERTICAL SCROLLING     {2100}
            Roller type: 3G
            Ratchet per turn: 24
            Scroll lines: 0
        11: SMART SHIFT            {2110}
        12: HIRES WHEEL            {2121}
            Multiplier: 8
            Has invert
              Normal wheel motion
            Has ratchet switch
              Normal wheel mode
            High resolution mode
            HID notification
        13: GESTURE 2              {6501}
        14: DFUCONTROL 2           {00C1}
        15: unknown:1813           {1813}   internal, hidden
        16: unknown:1830           {1830}   internal, hidden
        17: unknown:1890           {1890}   internal, hidden
        18: unknown:18A1           {18A1}   internal, hidden
        19: unknown:18C0           {18C0}   internal, hidden
        20: unknown:1DF3           {1DF3}   internal, hidden
        21: unknown:1E00           {1E00}   hidden
        22: unknown:1EB0           {1EB0}   internal, hidden
        23: unknown:1803           {1803}   internal, hidden
        24: unknown:1861           {1861}   internal, hidden
        25: unknown:9000           {9000}   internal, hidden
        26: unknown:9200           {9200}   internal, hidden
        27: unknown:9240           {9240}   internal, hidden
        28: unknown:1805           {1805}   internal, hidden
     Has 7 reprogrammable keys:
         0: LEFT CLICK                , default: LeftClick                   => LEFT CLICK
             mse, reprogrammable, pos:0, group:1, gmask:1
         1: RIGHT CLICK               , default: RightClick                  => RIGHT CLICK
             mse, reprogrammable, pos:0, group:1, gmask:1
         2: MIDDLE BUTTON             , default: MiddleMouseButton           => MIDDLE BUTTON
             divertable, mse, reprogrammable, pos:0, group:2, gmask:7
         3: BACK AS BUTTON 4          , default: BackEx                      => BACK AS BUTTON 4
             divertable, mse, reprogrammable, pos:0, group:2, gmask:3
         4: FORWARD AS BUTTON 5       , default: BrowserForwardEx            => FORWARD AS BUTTON 5
             divertable, mse, reprogrammable, pos:0, group:2, gmask:3
         5: unknown:00C3              , default: unknown:009C                => unknown:00C3
             divertable, mse, reprogrammable, pos:0, group:3, gmask:7
         6: unknown:00C4              , default: unknown:009D                => unknown:00C4
             divertable, mse, reprogrammable, pos:0, group:3, gmask:7
     Battery: 0%, full.
```
And here with the mouse unplugged:

```
# solaar show
Unifying Receiver
  Device path  : /dev/hidraw7
  USB id       : 046d:c52b
  Serial       : 2******F
    Firmware   : 24.10.B0036
    Bootloader : 01.08
    Other      : AA.AC
  Has 1 paired device(s) out of a maximum of 6.
  Notifications: wireless (0x000100)
  Device activity counters: 1=112

  1: Wireless Mouse MX Master
     Codename     : MX Master
     Kind         : mouse
     Wireless PID : 4041
     Protocol     : HID++ 4.5
     Polling rate : 8 ms (125Hz)
     Serial number: A******E
        Bootloader: BOT 18.01.B0014
          Firmware: MPM 11.02.B0014
          Firmware: MPM 11.02.B0014
             Other:
     The power switch is located on the base.
     Supports 29 HID++ 2.0 features:
         0: ROOT                   {0000}
         1: FEATURE SET            {0001}
         2: DEVICE FW VERSION      {0003}
         3: DEVICE NAME            {0005}
         4: WIRELESS DEVICE STATUS {1D4B}
         5: RESET                  {0020}
         6: BATTERY STATUS         {1000}
         7: CHANGE HOST            {1814}
         8: REPROG CONTROLS V4     {1B04}
         9: ADJUSTABLE DPI         {2201}
        10: VERTICAL SCROLLING     {2100}
            Roller type: 3G
            Ratchet per turn: 24
            Scroll lines: 0
        11: SMART SHIFT            {2110}
        12: HIRES WHEEL            {2121}
            Multiplier: 8
            Has invert
              Normal wheel motion
            Has ratchet switch
              Normal wheel mode
            High resolution mode
            HID notification
        13: GESTURE 2              {6501}
        14: DFUCONTROL 2           {00C1}
        15: unknown:1813           {1813}   internal, hidden
        16: unknown:1830           {1830}   internal, hidden
        17: unknown:1890           {1890}   internal, hidden
        18: unknown:18A1           {18A1}   internal, hidden
        19: unknown:18C0           {18C0}   internal, hidden
        20: unknown:1DF3           {1DF3}   internal, hidden
        21: unknown:1E00           {1E00}   hidden
        22: unknown:1EB0           {1EB0}   internal, hidden
        23: unknown:1803           {1803}   internal, hidden
        24: unknown:1861           {1861}   internal, hidden
        25: unknown:9000           {9000}   internal, hidden
        26: unknown:9200           {9200}   internal, hidden
        27: unknown:9240           {9240}   internal, hidden
        28: unknown:1805           {1805}   internal, hidden
     Has 7 reprogrammable keys:
         0: LEFT CLICK                , default: LeftClick                   => LEFT CLICK
             mse, reprogrammable, pos:0, group:1, gmask:1
         1: RIGHT CLICK               , default: RightClick                  => RIGHT CLICK
             mse, reprogrammable, pos:0, group:1, gmask:1
         2: MIDDLE BUTTON             , default: MiddleMouseButton           => MIDDLE BUTTON
             divertable, mse, reprogrammable, pos:0, group:2, gmask:7
         3: BACK AS BUTTON 4          , default: BackEx                      => BACK AS BUTTON 4
             divertable, mse, reprogrammable, pos:0, group:2, gmask:3
         4: FORWARD AS BUTTON 5       , default: BrowserForwardEx            => FORWARD AS BUTTON 5
             divertable, mse, reprogrammable, pos:0, group:2, gmask:3
         5: unknown:00C3              , default: unknown:009C                => unknown:00C3
             divertable, mse, reprogrammable, pos:0, group:3, gmask:7
         6: unknown:00C4              , default: unknown:009D                => unknown:00C4
             divertable, mse, reprogrammable, pos:0, group:3, gmask:7
     Battery: 90%, discharging.```
@pdecat Weird.  I'll dig around a bit.
@pdecat Looking at the code it sure looks as if this is a "feature".  Solaar is just parroting what it gets from the device, I think.  If you could attach output from `solaar -dd show` that might help to see exactly where the information is coming from.
Thanks @pfps!

Here you go:

```
# solaar -dd show
19:32:44,322    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 83B5 030000]
19:32:44,325    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 FF 83B5 032******F0506080000000000000000]
19:32:44,325    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 80B2 000000]
19:32:44,329    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 4101 41401E0000000400000000]
19:32:44,331    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 00 4102 0000000000000000000000]
19:32:44,333    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 8F80 B20300]
19:32:44,333    DEBUG [MainThread] logitech_receiver.base: (3) device 0xFF error on request {80B2}: 3 = invalid value
19:32:44,333    DEBUG [MainThread] solaar.cli: [/dev/hidraw7] => <UnifyingReceiver(/dev/hidraw7,3)>
19:32:44,392    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 8102 000000]
19:32:44,394    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000E 00000000000000000000000000000000]
19:32:44,395    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 8102 000100]
Unifying Receiver
  Device path  : /dev/hidraw7
  USB id       : 046d:c52b
  Serial       : 2******F
19:32:44,395    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 81F1 010000]
19:32:44,399    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 81F1 012410]
19:32:44,399    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 81F1 020000]
19:32:44,403    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 81F1 020036]
19:32:44,403    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 81F1 040000]
19:32:44,407    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 81F1 040108]
19:32:44,407    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 81F1 030000]
19:32:44,409    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000D 00000000000000000000000000000000]
19:32:44,411    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 81F1 03AAAC]
    Firmware   : 24.10.B0036
    Bootloader : 01.08
    Other      : AA.AC
  Has 1 paired device(s) out of a maximum of 6.
19:32:44,411    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 8100 000000]
19:32:44,413    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 8100 000100]
  Notifications: wireless (0x000100)
19:32:44,414    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 83B3 000000]
19:32:44,417    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 FF 83B3 9C000000000000000000000000000000]
  Device activity counters: 1=156
19:32:44,418    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 8102 000000]
19:32:44,419    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 8102 000100]
19:32:44,419    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 83B5 200000]
19:32:44,423    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 FF 83B5 20080840410402020700000000000000]
19:32:44,423     INFO [MainThread] logitech_receiver.receiver: <UnifyingReceiver(/dev/hidraw7,3)>: found new device 1 (4041)

19:32:44,424    DEBUG [MainThread] logitech_receiver.base: (3) pinging device 1
19:32:44,424    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0019 000041]
19:32:44,425    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000F 00000000000000000000000000000000]
19:32:44,441    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0019 04054100000000000000000000000000]
  1: Wireless Mouse MX Master
     Codename     : MX Master
     Kind         : mouse
     Wireless PID : 4041
     Protocol     : HID++ 4.5
     Polling rate : 8 ms (125Hz)
19:32:44,442    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 83B5 300000]
19:32:44,445    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 FF 83B5 30A******E1E00000001000000000000]
     Serial number: A******E
19:32:44,445    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0009 000100]
19:32:44,465    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0009 01000100000000000000000000000000]
19:32:44,466    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 010C 000000]
19:32:44,481    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 010C 1C000000000000000000000000000000]
19:32:44,482    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000E 000300]
19:32:44,497    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000E 02000100000000000000000000000000]
19:32:44,498    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 020E 000000]
19:32:44,521    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 020E 04AF2292770006B01240410000000000]
19:32:44,522    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0219 000000]
19:32:44,537    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0219 01424F54180100140040410862AB8000]
19:32:44,538    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 021E 010000]
19:32:44,553    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 021E 004D504D1102001400B0120862AB8000]
19:32:44,554    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 021E 020000]
19:32:44,569    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 021E 004D504D110200140140410862AB8000]
19:32:44,570    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 021A 030000]
19:32:44,585    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 021A 050000000000005A0000000000000000]
        Bootloader: BOT 18.01.B0014
          Firmware: MPM 11.02.B0014
          Firmware: MPM 11.02.B0014
             Other:
     The power switch is located on the base.
     Supports 29 HID++ 2.0 features:
19:32:44,586    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000F 000000]
19:32:44,601    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000F 00000100000000000000000000000000]
         0: ROOT                   {0000}
19:32:44,601    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0008 000100]
19:32:44,619    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0008 01000100000000000000000000000000]
         1: FEATURE SET            {0001}
19:32:44,620    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000F 000300]
19:32:44,647    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000F 02000100000000000000000000000000]
         2: DEVICE FW VERSION      {0003}
19:32:44,648    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011E 030000]
19:32:44,663    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011E 00050000000000000000000000000000]
19:32:44,664    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000D 000500]
19:32:44,691    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000D 03000000000000000000000000000000]
         3: DEVICE NAME            {0005}
19:32:44,692    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011F 040000]
19:32:44,707    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011F 1D4B0000000000000000000000000000]
19:32:44,708    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0009 1D4B00]
19:32:44,731    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0009 04000000000000000000000000000000]
         4: WIRELESS DEVICE STATUS {1D4B}
19:32:44,732    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0119 050000]
19:32:44,747    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0119 00200000000000000000000000000000]
19:32:44,747    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0008 002000]
19:32:44,763    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0008 05000000000000000000000000000000]
         5: RESET                  {0020}
19:32:44,764    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011D 060000]
19:32:44,779    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011D 10000000000000000000000000000000]
19:32:44,780    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000A 100000]
19:32:44,795    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000A 06000000000000000000000000000000]
         6: BATTERY STATUS         {1000}
19:32:44,796    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011B 070000]
19:32:44,819    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011B 18140000000000000000000000000000]
19:32:44,820    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000E 181400]
19:32:44,843    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000E 07000000000000000000000000000000]
         7: CHANGE HOST            {1814}
19:32:44,844    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011D 080000]
19:32:44,863    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011D 1B040001000000000000000000000000]
19:32:44,864    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000E 1B0400]
19:32:44,885    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000E 08000100000000000000000000000000]
         8: REPROG CONTROLS V4     {1B04}
19:32:44,886    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011F 090000]
19:32:44,899    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011F 22010001000000000000000000000000]
19:32:44,900    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0009 220100]
19:32:44,917    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0009 09000100000000000000000000000000]
         9: ADJUSTABLE DPI         {2201}
19:32:44,918    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011C 0A0000]
19:32:44,933    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011C 21000000000000000000000000000000]
19:32:44,934    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000F 210000]
19:32:44,949    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000F 0A000000000000000000000000000000]
        10: VERTICAL SCROLLING     {2100}
19:32:44,950    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0A08 000000]
19:32:44,965    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0A08 03180000000000000000000000000000]
            Roller type: 3G
            Ratchet per turn: 24
            Scroll lines: 0
19:32:44,966    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011B 0B0000]
19:32:44,981    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011B 21100000000000000000000000000000]
19:32:44,982    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000A 211000]
19:32:44,997    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000A 0B000000000000000000000000000000]
        11: SMART SHIFT            {2110}
19:32:44,998    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0119 0C0000]
19:32:45,021    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0119 21210000000000000000000000000000]
19:32:45,022    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000D 212100]
19:32:45,037    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000D 0C000000000000000000000000000000]
        12: HIRES WHEEL            {2121}
19:32:45,038    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0C0D 000000]
19:32:45,061    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0C0D 080C0000000000000000000000000000]
19:32:45,062    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0C19 000000]
19:32:45,081    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0C19 02000000000000000000000000000000]
19:32:45,082    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0C3D 000000]
19:32:45,101    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0C3D 01000000000000000000000000000000]
            Multiplier: 8
            Has invert
              Normal wheel motion
            Has ratchet switch
              Normal wheel mode
            High resolution mode
            HID notification
19:32:45,102    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011F 0D0000]
19:32:45,121    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011F 65010000000000000000000000000000]
19:32:45,122    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000C 650100]
19:32:45,137    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000C 0D000000000000000000000000000000]
        13: GESTURE 2              {6501}
19:32:45,138    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011C 0E0000]
19:32:45,153    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011C 00C10000000000000000000000000000]
19:32:45,154    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000B 00C100]
19:32:45,169    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000B 0E000000000000000000000000000000]
        14: DFUCONTROL 2           {00C1}
19:32:45,170    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011B 0F0000]
19:32:45,185    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011B 18136000000000000000000000000000]
19:32:45,186    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000D 181300]
19:32:45,203    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000D 0F600000000000000000000000000000]
        15: unknown:1813           {1813}   internal, hidden
19:32:45,204    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011F 100000]
19:32:45,219    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011F 18306000000000000000000000000000]
19:32:45,220    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000D 183000]
19:32:45,235    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000D 10600000000000000000000000000000]
        16: unknown:1830           {1830}   internal, hidden
19:32:45,236    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011E 110000]
19:32:45,251    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011E 18906000000000000000000000000000]
19:32:45,252    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000C 189000]
19:32:45,267    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000C 11600000000000000000000000000000]
        17: unknown:1890           {1890}   internal, hidden
19:32:45,268    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011C 120000]
19:32:45,283    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011C 18A16000000000000000000000000000]
19:32:45,284    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000D 18A100]
19:32:45,299    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000D 12600000000000000000000000000000]
        18: unknown:18A1           {18A1}   internal, hidden
19:32:45,300    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0119 130000]
19:32:45,315    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0119 18C06000000000000000000000000000]
19:32:45,316    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000D 18C000]
19:32:45,333    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000D 13600000000000000000000000000000]
        19: unknown:18C0           {18C0}   internal, hidden
19:32:45,334    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011B 140000]
19:32:45,347    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011B 1DF36000000000000000000000000000]
19:32:45,348    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000B 1DF300]
19:32:45,363    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000B 14600000000000000000000000000000]
        20: unknown:1DF3           {1DF3}   internal, hidden
19:32:45,364    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011D 150000]
19:32:45,379    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011D 1E004000000000000000000000000000]
19:32:45,380    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0009 1E0000]
19:32:45,395    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0009 15400000000000000000000000000000]
        21: unknown:1E00           {1E00}   hidden
19:32:45,396    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0118 160000]
19:32:45,412    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0118 1EB06000000000000000000000000000]
19:32:45,412    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000B 1EB000]
19:32:45,429    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000B 16600000000000000000000000000000]
        22: unknown:1EB0           {1EB0}   internal, hidden
19:32:45,430    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011E 170000]
19:32:45,443    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011E 18036000000000000000000000000000]
19:32:45,444    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0008 180300]
19:32:45,461    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0008 17600000000000000000000000000000]
        23: unknown:1803           {1803}   internal, hidden
19:32:45,462    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011F 180000]
19:32:45,475    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011F 18616000000000000000000000000000]
19:32:45,476    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000A 186100]
19:32:45,493    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000A 18600000000000000000000000000000]
        24: unknown:1861           {1861}   internal, hidden
19:32:45,494    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0119 190000]
19:32:45,509    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0119 90006000000000000000000000000000]
19:32:45,510    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0008 900000]
19:32:45,525    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0008 19600000000000000000000000000000]
        25: unknown:9000           {9000}   internal, hidden
19:32:45,526    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0118 1A0000]
19:32:45,541    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0118 92006000000000000000000000000000]
19:32:45,542    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000D 920000]
19:32:45,557    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000D 1A600000000000000000000000000000]
        26: unknown:9200           {9200}   internal, hidden
19:32:45,558    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011A 1B0000]
19:32:45,573    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011A 92406000000000000000000000000000]
19:32:45,574    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000E 924000]
19:32:45,589    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000E 1B600000000000000000000000000000]
        27: unknown:9240           {9240}   internal, hidden
19:32:45,590    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011A 1C0000]
19:32:45,605    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011A 18056000000000000000000000000000]
19:32:45,606    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000C 180500]
19:32:45,621    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000C 1C600000000000000000000000000000]
        28: unknown:1805           {1805}   internal, hidden
19:32:45,622    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 080D 000000]
19:32:45,639    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 080D 07000000000000000000000000000000]
     Has 7 reprogrammable keys:
19:32:45,640    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 081B 000000]
19:32:45,655    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 081B 00500038110001010000000000000000]
19:32:45,656    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 082E 005000]
19:32:45,677    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 082E 00500000000000000000000000000000]
         0: LEFT CLICK                , default: LeftClick                   => LEFT CLICK
             mse, reprogrammable, pos:0, group:1, gmask:1
19:32:45,678    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 081D 010000]
19:32:45,693    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 081D 00510039110001010000000000000000]
19:32:45,694    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 082A 005100]
19:32:45,709    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 082A 00510000000000000000000000000000]
         1: RIGHT CLICK               , default: RightClick                  => RIGHT CLICK
             mse, reprogrammable, pos:0, group:1, gmask:1
19:32:45,710    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 081C 020000]
19:32:45,725    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 081C 0052003A310002070000000000000000]
19:32:45,726    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 082B 005200]
19:32:45,741    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 082B 00520000000000000000000000000000]
         2: MIDDLE BUTTON             , default: MiddleMouseButton           => MIDDLE BUTTON
             divertable, mse, reprogrammable, pos:0, group:2, gmask:7
19:32:45,742    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 081D 030000]
19:32:45,757    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 081D 0053003C310002030000000000000000]
19:32:45,758    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0829 005300]
19:32:45,773    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0829 00530000000000000000000000000000]
         3: BACK AS BUTTON 4          , default: BackEx                      => BACK AS BUTTON 4
             divertable, mse, reprogrammable, pos:0, group:2, gmask:3
19:32:45,774    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 081F 040000]
19:32:45,791    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 081F 0056003E310002030000000000000000]
19:32:45,792    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 082F 005600]
19:32:45,807    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 082F 00560000000000000000000000000000]
         4: FORWARD AS BUTTON 5       , default: BrowserForwardEx            => FORWARD AS BUTTON 5
             divertable, mse, reprogrammable, pos:0, group:2, gmask:3
19:32:45,808    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0819 050000]
19:32:45,825    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0819 00C3009C310003070000000000000000]
19:32:45,826    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 082E 00C300]
19:32:45,855    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 082E 00C30000000000000000000000000000]
         5: unknown:00C3              , default: unknown:009C                => unknown:00C3
             divertable, mse, reprogrammable, pos:0, group:3, gmask:7
19:32:45,856    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 081E 060000]
19:32:45,879    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 081E 00C4009D310003070000000000000000]
19:32:45,880    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 082B 00C400]
19:32:45,895    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 082B 00C40000000000000000000000000000]
         6: unknown:00C4              , default: unknown:009D                => unknown:00C4
             divertable, mse, reprogrammable, pos:0, group:3, gmask:7
19:32:45,896    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 060B 000000]
19:32:45,911    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 060B 00000300000000000000000000000000]
19:32:45,912    DEBUG [MainThread] logitech_receiver.hidpp20: device 1 battery 0% charged, next level 0% charge, status 3 = full
     Battery: 0%, full.
```
Current status when unplugged:

<details>
<summary>Output</summary>

```
> bin/solaar -dd show
15:18:33,959    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 83B5 030000]
15:18:33,962    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 FF 83B5 0393E690D50106070000000000000000]
15:18:33,962    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 80B2 000000]
15:18:33,964    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 4101 69401E0000000000000000]
15:18:33,966    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 00 4102 0000000000000000000000]
15:18:33,968    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 8F80 B20300]
15:18:33,968    DEBUG [MainThread] logitech_receiver.base: (3) device 0xFF error on request {80B2}: 3 = invalid value
15:18:33,968    DEBUG [MainThread] solaar.cli: [/dev/hidraw0] => <UnifyingReceiver(/dev/hidraw0,3)>
15:18:34,066    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 8102 000000]
15:18:34,068    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 8102 000100]
Unifying Receiver
  Device path  : /dev/hidraw0
  USB id       : 046d:c52b
  Serial       : 93E690D5
15:18:34,068    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 81F1 010000]
15:18:34,070    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 81F1 012401]
15:18:34,070    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 81F1 020000]
15:18:34,072    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 81F1 020023]
15:18:34,072    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 81F1 040000]
15:18:34,074    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 81F1 040108]
15:18:34,074    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 81F1 030000]
15:18:34,076    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 81F1 03AAAC]
    Firmware   : 24.01.B0023
    Bootloader : 01.08
    Other      : AA.AC
  Has 1 paired device(s) out of a maximum of 6.
15:18:34,076    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 8100 000000]
15:18:34,078    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 8100 000900]
  Notifications: wireless, software present (0x000900)
15:18:34,078    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 83B3 000000]
15:18:34,080    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 FF 83B3 68000000000000000000000000000000]
  Device activity counters: 1=104
15:18:34,080    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 8102 000000]
15:18:34,082    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 8102 000100]
15:18:34,082    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 83B5 200000]
15:18:34,084    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 FF 83B5 20070840690402020700000000000000]
15:18:34,084     INFO [MainThread] logitech_receiver.receiver: <UnifyingReceiver(/dev/hidraw0,3)>: found new device 1 (4069)

15:18:34,084    DEBUG [MainThread] logitech_receiver.base: (3) pinging device 1
15:18:34,084    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0018 000092]
15:18:34,148    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0018 04059200000000000000000000000000]
  1: Wireless Mouse MX Master 2S
     Codename     : MX Master 2S
     Kind         : mouse
     Wireless PID : 4069
     Protocol     : HID++ 4.5
     Polling rate : 8 ms (125Hz)
15:18:34,148    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 83B5 300000]
15:18:34,150    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 FF 83B5 302C4E32741E00000001000000000000]
     Serial number: 2C4E3274
15:18:34,150    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0008 000100]
15:18:34,172    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0008 01000100000000000000000000000000]
15:18:34,172    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0109 000000]
15:18:34,192    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0109 1F000000000000000000000000000000]
15:18:34,192    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000E 000300]
15:18:34,212    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000E 02000200000000000000000000000000]
15:18:34,212    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 020A 000000]
15:18:34,232    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 020A 047797FCF20006B01940690000000000]
15:18:34,232    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 021F 000000]
15:18:34,252    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 021F 01424F5456000003004069D22DCF4D01]
15:18:34,252    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0218 010000]
15:18:34,272    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0218 004D504D1200000300B019D22DCF4D01]
15:18:34,272    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 021B 020000]
15:18:34,292    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 021B 004D504D12000003014069D22DCF4D01]
15:18:34,292    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0219 030000]
15:18:34,314    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0219 050000000000005A0000000000000000]
        Bootloader: BOT 56.00.B0003
          Firmware: MPM 12.00.B0003
          Firmware: MPM 12.00.B0003
             Other: 
     The power switch is located on the base.
     Supports 32 HID++ 2.0 features:
15:18:34,314    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000B 000000]
15:18:34,334    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000B 00000100000000000000000000000000]
         0: ROOT                   {0000}   
15:18:34,334    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000A 000100]
15:18:34,354    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000A 01000100000000000000000000000000]
         1: FEATURE SET            {0001}   
15:18:34,354    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000C 000300]
15:18:34,374    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000C 02000200000000000000000000000000]
         2: DEVICE FW VERSION      {0003}   
15:18:34,374    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0118 030000]
15:18:34,394    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0118 00050000000000000000000000000000]
15:18:34,394    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0008 000500]
15:18:34,414    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0008 03000000000000000000000000000000]
         3: DEVICE NAME            {0005}   
15:18:34,414    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011A 040000]
15:18:34,434    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011A 1D4B0000000000000000000000000000]
15:18:34,434    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0009 1D4B00]
15:18:34,454    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0009 04000000000000000000000000000000]
         4: WIRELESS DEVICE STATUS {1D4B}   
15:18:34,454    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011A 050000]
15:18:34,474    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011A 00200000000000000000000000000000]
15:18:34,474    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000D 002000]
15:18:34,494    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000D 05000000000000000000000000000000]
         5: RESET                  {0020}   
15:18:34,494    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0118 060000]
15:18:34,514    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0118 10000000000000000000000000000000]
15:18:34,514    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000E 100000]
15:18:34,536    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000E 06000000000000000000000000000000]
         6: BATTERY STATUS         {1000}   
15:18:34,537    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011E 070000]
15:18:34,556    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011E 18066000000000000000000000000000]
15:18:34,556    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0009 180600]
15:18:34,576    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0009 07600000000000000000000000000000]
         7: CONFIG DEVICE PROPS    {1806}   internal, hidden
15:18:34,577    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011D 080000]
15:18:34,596    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011D 18140001000000000000000000000000]
15:18:34,596    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000D 181400]
15:18:34,616    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000D 08000100000000000000000000000000]
         8: CHANGE HOST            {1814}   
15:18:34,616    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0119 090000]
15:18:34,624    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 0001000000003D00000000]
15:18:34,632    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0119 1B040003000000000000000000000000]
15:18:34,632    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000D 1B0400]
15:18:34,640    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 0001000000003D00000000]
15:18:34,648    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000D 09000300000000000000000000000000]
         9: REPROG CONTROLS V4     {1B04}   
15:18:34,648    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011A 0A0000]
15:18:34,656    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 0003F0FF00004C00000000]
15:18:34,664    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011A 22010001000000000000000000000000]
15:18:34,664    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000C 220100]
15:18:34,680    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000C 0A000100000000000000000000000000]
        10: ADJUSTABLE DPI         {2201}   
15:18:34,680    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0118 0B0000]
15:18:34,700    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0118 21000000000000000000000000000000]
15:18:34,700    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0009 210000]
15:18:34,720    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0009 0B000000000000000000000000000000]
        11: VERTICAL SCROLLING     {2100}   
15:18:34,720    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0B0C 000000]
15:18:34,740    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0B0C 03180000000000000000000000000000]
            Roller type: 3G
            Ratchet per turn: 24
            Scroll lines: 0
15:18:34,740    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011F 0C0000]
15:18:34,760    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011F 21100000000000000000000000000000]
15:18:34,760    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000C 211000]
15:18:34,782    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000C 0C000000000000000000000000000000]
        12: SMART SHIFT            {2110}   
15:18:34,782    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0118 0D0000]
15:18:34,802    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0118 21210000000000000000000000000000]
15:18:34,802    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000D 212100]
15:18:34,822    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000D 0D000000000000000000000000000000]
        13: HIRES WHEEL            {2121}   
15:18:34,822    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0D08 000000]
15:18:34,842    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0D08 080C0000000000000000000000000000]
15:18:34,842    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0D1D 000000]
15:18:34,862    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0D1D 02000000000000000000000000000000]
15:18:34,862    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0D38 000000]
15:18:34,882    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0D38 01000000000000000000000000000000]
            Multiplier: 8
            Has invert
              Normal wheel motion
            Has ratchet switch
              Normal wheel mode
            High resolution mode
            HID notification
15:18:34,883    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011A 0E0000]
15:18:34,902    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011A 65010000000000000000000000000000]
15:18:34,902    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000B 650100]
15:18:34,922    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000B 0E000000000000000000000000000000]
        14: GESTURE 2              {6501}   
15:18:34,922    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011B 0F0000]
15:18:34,938    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011B 00C10000000000000000000000000000]
15:18:34,938    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000A 00C100]
15:18:34,958    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000A 0F000000000000000000000000000000]
        15: DFUCONTROL UNSIGNED    {00C1}   
15:18:34,958    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011B 100000]
15:18:34,978    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011B 00C20000000000000000000000000000]
15:18:34,979    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000C 00C200]
15:18:34,998    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000C 10000000000000000000000000000000]
        16: DFUCONTROL SIGNED      {00C2}   
15:18:34,998    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011A 110000]
15:18:35,020    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011A 18136000000000000000000000000000]
15:18:35,020    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000F 181300]
15:18:35,040    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000F 11600000000000000000000000000000]
        17: unknown:1813           {1813}   internal, hidden
15:18:35,040    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0119 120000]
15:18:35,060    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0119 18306000000000000000000000000000]
15:18:35,060    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0009 183000]
15:18:35,080    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0009 12600000000000000000000000000000]
        18: unknown:1830           {1830}   internal, hidden
15:18:35,080    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011B 130000]
15:18:35,100    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011B 18906000000000000000000000000000]
15:18:35,100    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000A 189000]
15:18:35,120    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000A 13600000000000000000000000000000]
        19: unknown:1890           {1890}   internal, hidden
15:18:35,121    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011C 140000]
15:18:35,140    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011C 18916000000000000000000000000000]
15:18:35,140    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0009 189100]
15:18:35,160    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0009 14600000000000000000000000000000]
        20: unknown:1891           {1891}   internal, hidden
15:18:35,160    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011F 150000]
15:18:35,180    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011F 18A16000000000000000000000000000]
15:18:35,180    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000B 18A100]
15:18:35,200    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000B 15600000000000000000000000000000]
        21: unknown:18A1           {18A1}   internal, hidden
15:18:35,201    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011E 160000]
15:18:35,220    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011E 18C06000000000000000000000000000]
15:18:35,220    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000D 18C000]
15:18:35,242    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000D 16600000000000000000000000000000]
        22: unknown:18C0           {18C0}   internal, hidden
15:18:35,242    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011F 170000]
15:18:35,262    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011F 1DF36000000000000000000000000000]
15:18:35,263    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000A 1DF300]
15:18:35,282    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000A 17600000000000000000000000000000]
        23: unknown:1DF3           {1DF3}   internal, hidden
15:18:35,282    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011D 180000]
15:18:35,302    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011D 1E004000000000000000000000000000]
15:18:35,302    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0009 1E0000]
15:18:35,322    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0009 18400000000000000000000000000000]
        24: unknown:1E00           {1E00}   hidden
15:18:35,322    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011D 190000]
15:18:35,342    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011D 1EB06000000000000000000000000000]
15:18:35,342    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0009 1EB000]
15:18:35,350    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FF0F0000003000000000]
15:18:35,358    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0009 19600000000000000000000000000000]
        25: unknown:1EB0           {1EB0}   internal, hidden
15:18:35,359    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011E 1A0000]
15:18:35,366    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FF0F0000003000000000]
15:18:35,374    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011E 18036000000000000000000000000000]
15:18:35,374    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000F 180300]
15:18:35,382    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FE1F0000002100000000]
15:18:35,390    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000F 1A600000000000000000000000000000]
        26: unknown:1803           {1803}   internal, hidden
15:18:35,390    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011B 1B0000]
15:18:35,398    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FF1F0000002000000000]
15:18:35,406    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011B 18616000000000000000000000000000]
15:18:35,406    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000F 186100]
15:18:35,414    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FE1F0000002100000000]
15:18:35,422    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000F 1B600000000000000000000000000000]
        27: unknown:1861           {1861}   internal, hidden
15:18:35,423    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011A 1C0000]
15:18:35,430    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FD2F0000001200000000]
15:18:35,438    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011A 90016000000000000000000000000000]
15:18:35,438    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000C 900100]
15:18:35,446    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FC4F000000F300000000]
15:18:35,454    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000C 1C600000000000000000000000000000]
        28: unknown:9001           {9001}   internal, hidden
15:18:35,454    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011D 1D0000]
15:18:35,462    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FC4F000000F300000000]
15:18:35,470    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011D 92006000000000000000000000000000]
15:18:35,470    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000A 920000]
15:18:35,478    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FD6F000000D200000000]
15:18:35,486    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000A 1D600000000000000000000000000000]
        29: unknown:9200           {9200}   internal, hidden
15:18:35,486    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011E 1E0000]
15:18:35,496    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FD7F000000C200000000]
15:18:35,504    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011E 92406000000000000000000000000000]
15:18:35,504    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0009 924000]
15:18:35,510    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FEBF0000008100000000]
15:18:35,520    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0009 1E600000000000000000000000000000]
        30: unknown:9240           {9240}   internal, hidden
15:18:35,520    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011C 1F0000]
15:18:35,526    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 0000A00000009E00000000]
15:18:35,536    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011C 18056000000000000000000000000000]
15:18:35,536    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000C 180500]
15:18:35,544    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 0000E00000005E00000000]
15:18:35,552    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000C 1F600000000000000000000000000000]
        31: OOBSTATE               {1805}   internal, hidden
15:18:35,553    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 090A 000000]
15:18:35,560    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 0001B00000008D00000000]
15:18:35,568    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 000390000000AB00000000]
15:18:35,576    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 090A 08000000000000000000000000000000]
     Has 8 reprogrammable keys:
15:18:35,576    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0918 000000]
15:18:35,584    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 000240000000FC00000000]
15:18:35,592    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0918 00500038010001010000000000000000]
15:18:35,592    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 092C 005000]
15:18:35,600    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 000670000000C800000000]
15:18:35,608    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 092C 00500000000000000000000000000000]
         0: LEFT CLICK                , default: LeftClick                   => LEFT CLICK                
             mse, pos:0, group:1, gmask:1
15:18:35,609    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 091C 010000]
15:18:35,616    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 000560000000D900000000]
15:18:35,624    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 091C 00510039010001010000000000000000]
15:18:35,624    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0928 005100]
15:18:35,632    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 000CC00000007200000000]
15:18:35,640    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0928 00510000000000000000000000000000]
         1: RIGHT CLICK               , default: RightClick                  => RIGHT CLICK               
             mse, pos:0, group:1, gmask:1
15:18:35,641    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 091A 020000]
15:18:35,648    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 000CD00000006200000000]
15:18:35,656    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 091A 0052003A310003070100000000000000]
15:18:35,656    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 092F 005200]
15:18:35,664    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 001760010000C600000000]
15:18:35,672    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 092F 00520000000000000000000000000000]
         2: MIDDLE BUTTON             , default: MiddleMouseButton           => MIDDLE BUTTON             
             mse, reprogrammable, divertable, pos:0, group:3, gmask:7
15:18:35,673    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0919 030000]
15:18:35,680    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 0012F00000003C00000000]
15:18:35,688    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0919 0053003C310002030100000000000000]
15:18:35,688    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 092B 005300]
15:18:35,696    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 0012C00000006C00000000]
15:18:35,704    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 092B 00530000000000000000000000000000]
         3: BACK AS BUTTON 4          , default: BackEx                      => BACK AS BUTTON 4          
             mse, reprogrammable, divertable, pos:0, group:2, gmask:3
15:18:35,704    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 091F 040000]
15:18:35,712    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 0012A00000008C00000000]
15:18:35,720    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 091F 0056003E310002030100000000000000]
15:18:35,720    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0929 005600]
15:18:35,728    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 000A40000000F400000000]
15:18:35,736    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0929 00560000000000000000000000000000]
         4: FORWARD AS BUTTON 5       , default: BrowserForwardEx            => FORWARD AS BUTTON 5       
             mse, reprogrammable, divertable, pos:0, group:2, gmask:3
15:18:35,736    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0918 050000]
15:18:35,744    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 000A40000000F400000000]
15:18:35,752    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0918 00C300A9310003070100000000000000]
15:18:35,753    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 092D 00C300]
15:18:35,760    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 0006300000000800000000]
15:18:35,768    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 092D 00C30000000000000000000000000000]
         5: unknown:00C3              , default: unknown:00A9                => unknown:00C3              
             mse, reprogrammable, divertable, pos:0, group:3, gmask:7
15:18:35,769    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 091F 060000]
15:18:35,776    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 0004200000001A00000000]
15:18:35,786    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 091F 00C4009D310003070100000000000000]
15:18:35,786    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 092F 00C400]
15:18:35,792    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 0003000000003B00000000]
15:18:35,800    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 092F 00C40000000000000000000000000000]
         6: unknown:00C4              , default: unknown:009D                => unknown:00C4              
             mse, reprogrammable, divertable, pos:0, group:3, gmask:7
15:18:35,800    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 091C 070000]
15:18:35,818    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 091C 00D700B4A00004000300000000000000]
15:18:35,819    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 092A 00D700]
15:18:35,834    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 092A 00D70000000000000000000000000000]
         7: unknown:00D7              , default: unknown:00B4                => unknown:00D7              
             divertable, virtual, pos:0, group:4, gmask:0
15:18:35,834    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 060D 000000]
15:18:35,842    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 0000F0FF00004F00000000]
15:18:35,850    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 060D 5A320000000000000000000000000000]
15:18:35,850    DEBUG [MainThread] logitech_receiver.hidpp20: device 1 battery 90% charged, next level 50% charge, status 0 = discharging
     Battery: 90%, discharging.
```
</details>

When plugged in:

<details>
<summary>Output</summary>

```
> bin/solaar -dd show
15:20:03,413    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 83B5 030000]
15:20:03,415    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 FF 83B5 0393E690D50106070000000000000000]
15:20:03,415    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 80B2 000000]
15:20:03,417    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 4101 69401E0000000000000000]
15:20:03,419    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 00 4102 0000000000000000000000]
15:20:03,421    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 8F80 B20300]
15:20:03,421    DEBUG [MainThread] logitech_receiver.base: (3) device 0xFF error on request {80B2}: 3 = invalid value
15:20:03,421    DEBUG [MainThread] solaar.cli: [/dev/hidraw0] => <UnifyingReceiver(/dev/hidraw0,3)>
15:20:03,505    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 8102 000000]
15:20:03,507    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 8102 000100]
Unifying Receiver
  Device path  : /dev/hidraw0
  USB id       : 046d:c52b
  Serial       : 93E690D5
15:20:03,507    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 81F1 010000]
15:20:03,509    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 81F1 012401]
15:20:03,509    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 81F1 020000]
15:20:03,511    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 81F1 020023]
15:20:03,511    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 81F1 040000]
15:20:03,513    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 81F1 040108]
15:20:03,513    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 81F1 030000]
15:20:03,515    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 81F1 03AAAC]
    Firmware   : 24.01.B0023
    Bootloader : 01.08
    Other      : AA.AC
  Has 1 paired device(s) out of a maximum of 6.
15:20:03,515    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 8100 000000]
15:20:03,517    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 8100 000900]
  Notifications: wireless, software present (0x000900)
15:20:03,517    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 83B3 000000]
15:20:03,519    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 FF 83B3 C5000000000000000000000000000000]
  Device activity counters: 1=197
15:20:03,519    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 8102 000000]
15:20:03,521    DEBUG [MainThread] logitech_receiver.base: (3) => r[10 FF 8102 000100]
15:20:03,521    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 83B5 200000]
15:20:03,523    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 FF 83B5 20070840690402020700000000000000]
15:20:03,523     INFO [MainThread] logitech_receiver.receiver: <UnifyingReceiver(/dev/hidraw0,3)>: found new device 1 (4069)

15:20:03,523    DEBUG [MainThread] logitech_receiver.base: (3) pinging device 1
15:20:03,523    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0018 0000CB]
15:20:03,541    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0018 0405CB00000000000000000000000000]
  1: Wireless Mouse MX Master 2S
     Codename     : MX Master 2S
     Kind         : mouse
     Wireless PID : 4069
     Protocol     : HID++ 4.5
     Polling rate : 8 ms (125Hz)
15:20:03,541    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 FF 83B5 300000]
15:20:03,543    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 FF 83B5 302C4E32741E00000001000000000000]
     Serial number: 2C4E3274
15:20:03,543    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000F 000100]
15:20:03,557    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000F 01000100000000000000000000000000]
15:20:03,557    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 010B 000000]
15:20:03,573    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 010B 1F000000000000000000000000000000]
15:20:03,573    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0009 000300]
15:20:03,589    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0009 02000200000000000000000000000000]
15:20:03,589    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 020C 000000]
15:20:03,605    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 020C 047797FCF20006B01940690000000000]
15:20:03,605    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 021C 000000]
15:20:03,621    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 021C 01424F5456000003004069D22DCF4D01]
15:20:03,621    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 021C 010000]
15:20:03,637    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 021C 004D504D1200000300B019D22DCF4D01]
15:20:03,637    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 021B 020000]
15:20:03,653    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 021B 004D504D12000003014069D22DCF4D01]
15:20:03,653    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 021D 030000]
15:20:03,669    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 021D 050000000000005A0000000000000000]
        Bootloader: BOT 56.00.B0003
          Firmware: MPM 12.00.B0003
          Firmware: MPM 12.00.B0003
             Other: 
     The power switch is located on the base.
     Supports 32 HID++ 2.0 features:
15:20:03,669    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000C 000000]
15:20:03,685    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000C 00000100000000000000000000000000]
         0: ROOT                   {0000}   
15:20:03,685    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000D 000100]
15:20:03,703    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000D 01000100000000000000000000000000]
         1: FEATURE SET            {0001}   
15:20:03,703    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000A 000300]
15:20:03,719    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000A 02000200000000000000000000000000]
         2: DEVICE FW VERSION      {0003}   
15:20:03,719    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0118 030000]
15:20:03,743    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0118 00050000000000000000000000000000]
15:20:03,743    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0009 000500]
15:20:03,767    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0009 03000000000000000000000000000000]
         3: DEVICE NAME            {0005}   
15:20:03,767    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011B 040000]
15:20:03,783    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011B 1D4B0000000000000000000000000000]
15:20:03,783    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000E 1D4B00]
15:20:03,799    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000E 04000000000000000000000000000000]
         4: WIRELESS DEVICE STATUS {1D4B}   
15:20:03,799    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011F 050000]
15:20:03,815    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011F 00200000000000000000000000000000]
15:20:03,815    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000B 002000]
15:20:03,823    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 0001000000003D00000000]
15:20:03,831    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000B 05000000000000000000000000000000]
         5: RESET                  {0020}   
15:20:03,831    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011C 060000]
15:20:03,839    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 0000F0FF00004F00000000]
15:20:03,847    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011C 10000000000000000000000000000000]
15:20:03,847    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000F 100000]
15:20:03,855    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 0005A0FF00009A00000000]
15:20:03,863    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000F 06000000000000000000000000000000]
         6: BATTERY STATUS         {1000}   
15:20:03,863    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011D 070000]
15:20:03,871    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 000470FF0000CB00000000]
15:20:03,879    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011D 18066000000000000000000000000000]
15:20:03,879    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000E 180600]
15:20:03,887    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 000340FF0000FC00000000]
15:20:03,895    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000E 07600000000000000000000000000000]
         7: CONFIG DEVICE PROPS    {1806}   internal, hidden
15:20:03,895    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0119 080000]
15:20:03,903    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 000030FF00000F00000000]
15:20:03,911    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0119 18140001000000000000000000000000]
15:20:03,911    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000E 181400]
15:20:03,919    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FFAFFF00009100000000]
15:20:03,927    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000E 08000100000000000000000000000000]
         8: CHANGE HOST            {1814}   
15:20:03,927    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0119 090000]
15:20:03,943    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0119 1B040003000000000000000000000000]
15:20:03,943    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0008 1B0400]
15:20:03,967    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0008 09000300000000000000000000000000]
         9: REPROG CONTROLS V4     {1B04}   
15:20:03,967    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0119 0A0000]
15:20:03,985    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0119 22010001000000000000000000000000]
15:20:03,985    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000C 220100]
15:20:04,001    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000C 0A000100000000000000000000000000]
        10: ADJUSTABLE DPI         {2201}   
15:20:04,001    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011A 0B0000]
15:20:04,017    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011A 21000000000000000000000000000000]
15:20:04,017    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000B 210000]
15:20:04,033    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000B 0B000000000000000000000000000000]
        11: VERTICAL SCROLLING     {2100}   
15:20:04,033    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0B0C 000000]
15:20:04,049    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0B0C 03180000000000000000000000000000]
            Roller type: 3G
            Ratchet per turn: 24
            Scroll lines: 0
15:20:04,049    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011C 0C0000]
15:20:04,065    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011C 21100000000000000000000000000000]
15:20:04,065    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000C 211000]
15:20:04,081    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000C 0C000000000000000000000000000000]
        12: SMART SHIFT            {2110}   
15:20:04,081    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011A 0D0000]
15:20:04,097    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011A 21210000000000000000000000000000]
15:20:04,097    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000A 212100]
15:20:04,113    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000A 0D000000000000000000000000000000]
        13: HIRES WHEEL            {2121}   
15:20:04,113    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0D09 000000]
15:20:04,129    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0D09 080C0000000000000000000000000000]
15:20:04,129    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0D1C 000000]
15:20:04,145    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0D1C 02000000000000000000000000000000]
15:20:04,145    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0D39 000000]
15:20:04,161    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0D39 01000000000000000000000000000000]
            Multiplier: 8
            Has invert
              Normal wheel motion
            Has ratchet switch
              Normal wheel mode
            High resolution mode
            HID notification
15:20:04,161    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011A 0E0000]
15:20:04,185    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011A 65010000000000000000000000000000]
15:20:04,185    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000B 650100]
15:20:04,201    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 0000F0FF00004F00000000]
15:20:04,209    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000B 0E000000000000000000000000000000]
        14: GESTURE 2              {6501}   
15:20:04,209    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0118 0F0000]
15:20:04,217    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 0000F0FF00004F00000000]
15:20:04,225    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0118 00C10000000000000000000000000000]
15:20:04,225    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000F 00C100]
15:20:04,233    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FE8FFF0000B200000000]
15:20:04,243    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000F 0F000000000000000000000000000000]
        15: DFUCONTROL UNSIGNED    {00C1}   
15:20:04,243    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0118 100000]
15:20:04,251    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FCAFFF00009400000000]
15:20:04,259    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0118 00C20000000000000000000000000000]
15:20:04,259    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000C 00C200]
15:20:04,267    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FACFFF00007600000000]
15:20:04,275    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000C 10000000000000000000000000000000]
        16: DFUCONTROL SIGNED      {00C2}   
15:20:04,275    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011C 110000]
15:20:04,283    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FADFFF00006600000000]
15:20:04,291    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011C 18136000000000000000000000000000]
15:20:04,291    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0008 181300]
15:20:04,307    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0008 11600000000000000000000000000000]
        17: unknown:1813           {1813}   internal, hidden
15:20:04,307    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011F 120000]
15:20:04,323    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011F 18306000000000000000000000000000]
15:20:04,323    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000E 183000]
15:20:04,339    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000E 12600000000000000000000000000000]
        18: unknown:1830           {1830}   internal, hidden
15:20:04,339    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011A 130000]
15:20:04,347    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FF0F0000003000000000]
15:20:04,355    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011A 18906000000000000000000000000000]
15:20:04,355    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000C 189000]
15:20:04,363    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FF0F0000003000000000]
15:20:04,371    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000C 13600000000000000000000000000000]
        19: unknown:1890           {1890}   internal, hidden
15:20:04,371    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011C 140000]
15:20:04,379    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FF1F0000002000000000]
15:20:04,387    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011C 18916000000000000000000000000000]
15:20:04,387    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000C 189100]
15:20:04,395    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FF3F0000000000000000]
15:20:04,403    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000C 14600000000000000000000000000000]
        20: unknown:1891           {1891}   internal, hidden
15:20:04,403    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011C 150000]
15:20:04,411    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FF6F000000D000000000]
15:20:04,419    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011C 18A16000000000000000000000000000]
15:20:04,419    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000E 18A100]
15:20:04,427    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00FC7F000000C300000000]
15:20:04,435    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000E 15600000000000000000000000000000]
        21: unknown:18A1           {18A1}   internal, hidden
15:20:04,435    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011C 160000]
15:20:04,443    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00F39F000000AC00000000]
15:20:04,451    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011C 18C06000000000000000000000000000]
15:20:04,451    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000F 18C000]
15:20:04,459    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00EFDF0000007000000000]
15:20:04,467    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000F 16600000000000000000000000000000]
        22: unknown:18C0           {18C0}   internal, hidden
15:20:04,467    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011D 170000]
15:20:04,475    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00E8EF0100006600000000]
15:20:04,483    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011D 1DF36000000000000000000000000000]
15:20:04,483    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000C 1DF300]
15:20:04,491    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 00F23F0200000B00000000]
15:20:04,499    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000C 17600000000000000000000000000000]
        23: unknown:1DF3           {1DF3}   internal, hidden
15:20:04,499    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011E 180000]
15:20:04,507    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 0000100200002C00000000]
15:20:04,515    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011E 1E004000000000000000000000000000]
15:20:04,515    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000F 1E0000]
15:20:04,525    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 000C000100003100000000]
15:20:04,533    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000F 18400000000000000000000000000000]
        24: unknown:1E00           {1E00}   hidden
15:20:04,533    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011F 190000]
15:20:04,539    DEBUG [MainThread] logitech_receiver.base: (3) => r[20 01 0200 000C300000000200000000]
15:20:04,547    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011F 1EB06000000000000000000000000000]
15:20:04,547    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0009 1EB000]
15:20:04,565    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0009 19600000000000000000000000000000]
        25: unknown:1EB0           {1EB0}   internal, hidden
15:20:04,565    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0119 1A0000]
15:20:04,581    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0119 18036000000000000000000000000000]
15:20:04,581    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000C 180300]
15:20:04,597    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000C 1A600000000000000000000000000000]
        26: unknown:1803           {1803}   internal, hidden
15:20:04,597    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0119 1B0000]
15:20:04,613    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0119 18616000000000000000000000000000]
15:20:04,614    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000C 186100]
15:20:04,629    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000C 1B600000000000000000000000000000]
        27: unknown:1861           {1861}   internal, hidden
15:20:04,629    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011F 1C0000]
15:20:04,645    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011F 90016000000000000000000000000000]
15:20:04,645    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000C 900100]
15:20:04,661    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000C 1C600000000000000000000000000000]
        28: unknown:9001           {9001}   internal, hidden
15:20:04,661    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011A 1D0000]
15:20:04,677    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011A 92006000000000000000000000000000]
15:20:04,677    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000D 920000]
15:20:04,693    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000D 1D600000000000000000000000000000]
        29: unknown:9200           {9200}   internal, hidden
15:20:04,693    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0118 1E0000]
15:20:04,709    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0118 92406000000000000000000000000000]
15:20:04,709    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000D 924000]
15:20:04,725    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000D 1E600000000000000000000000000000]
        30: unknown:9240           {9240}   internal, hidden
15:20:04,725    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 011D 1F0000]
15:20:04,741    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 011D 18056000000000000000000000000000]
15:20:04,741    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 000B 180500]
15:20:04,765    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 000B 1F600000000000000000000000000000]
        31: OOBSTATE               {1805}   internal, hidden
15:20:04,765    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 090D 000000]
15:20:04,781    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 090D 08000000000000000000000000000000]
     Has 8 reprogrammable keys:
15:20:04,781    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 091C 000000]
15:20:04,797    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 091C 00500038010001010000000000000000]
15:20:04,797    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 092E 005000]
15:20:04,813    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 092E 00500000000000000000000000000000]
         0: LEFT CLICK                , default: LeftClick                   => LEFT CLICK                
             mse, pos:0, group:1, gmask:1
15:20:04,813    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 091D 010000]
15:20:04,831    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 091D 00510039010001010000000000000000]
15:20:04,831    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 092D 005100]
15:20:04,847    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 092D 00510000000000000000000000000000]
         1: RIGHT CLICK               , default: RightClick                  => RIGHT CLICK               
             mse, pos:0, group:1, gmask:1
15:20:04,847    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 091F 020000]
15:20:04,863    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 091F 0052003A310003070100000000000000]
15:20:04,863    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 092D 005200]
15:20:04,879    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 092D 00520000000000000000000000000000]
         2: MIDDLE BUTTON             , default: MiddleMouseButton           => MIDDLE BUTTON             
             mse, reprogrammable, divertable, pos:0, group:3, gmask:7
15:20:04,879    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 091B 030000]
15:20:04,895    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 091B 0053003C310002030100000000000000]
15:20:04,895    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 092F 005300]
15:20:04,911    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 092F 00530000000000000000000000000000]
         3: BACK AS BUTTON 4          , default: BackEx                      => BACK AS BUTTON 4          
             mse, reprogrammable, divertable, pos:0, group:2, gmask:3
15:20:04,911    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 091E 040000]
15:20:04,927    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 091E 0056003E310002030100000000000000]
15:20:04,927    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 092B 005600]
15:20:04,943    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 092B 00560000000000000000000000000000]
         4: FORWARD AS BUTTON 5       , default: BrowserForwardEx            => FORWARD AS BUTTON 5       
             mse, reprogrammable, divertable, pos:0, group:2, gmask:3
15:20:04,944    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0919 050000]
15:20:04,959    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0919 00C300A9310003070100000000000000]
15:20:04,959    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 092C 00C300]
15:20:04,975    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 092C 00C30000000000000000000000000000]
         5: unknown:00C3              , default: unknown:00A9                => unknown:00C3              
             mse, reprogrammable, divertable, pos:0, group:3, gmask:7
15:20:04,975    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 091C 060000]
15:20:04,991    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 091C 00C4009D310003070100000000000000]
15:20:04,991    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 092B 00C400]
15:20:05,007    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 092B 00C40000000000000000000000000000]
         6: unknown:00C4              , default: unknown:009D                => unknown:00C4              
             mse, reprogrammable, divertable, pos:0, group:3, gmask:7
15:20:05,007    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 091F 070000]
15:20:05,023    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 091F 00D700B4A00004000300000000000000]
15:20:05,024    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 0928 00D700]
15:20:05,039    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 0928 00D70000000000000000000000000000]
         7: unknown:00D7              , default: unknown:00B4                => unknown:00D7              
             divertable, virtual, pos:0, group:4, gmask:0
15:20:05,039    DEBUG [MainThread] logitech_receiver.base: (3) <= w[10 01 060D 000000]
15:20:05,055    DEBUG [MainThread] logitech_receiver.base: (3) => r[11 01 060D 00000100000000000000000000000000]
15:20:05,055    DEBUG [MainThread] logitech_receiver.hidpp20: device 1 battery 0% charged, next level 0% charge, status 1 = recharging
     Battery: 0%, recharging.
```
</details>
@AlexWayfer @pdecat  Thanks.  That's a bug in Solaar!  Solaar assumes that the battery level is an integer, but the Logitech specs for 0x1000 say that battery level 0 is unknown.   There is going to have to be some careful checking to find all the places that the battery level is used and fix the places that need to be fixed. 
The file docs/logitech_hidpp_2.0_specification_draft_2012-06-04.pdf has the information on this feature.

Resolving patch:
diff --git a/lib/logitech_receiver/hidpp20.py b/lib/logitech_receiver/hidpp20.py
--- a/lib/logitech_receiver/hidpp20.py
+++ b/lib/logitech_receiver/hidpp20.py
@@ -520,6 +520,7 @@ def get_battery(device):
 	battery = feature_request(device, FEATURE.BATTERY_STATUS)
 	if battery:
 		discharge, dischargeNext, status = _unpack('!BBB', battery[:3])
+		discharge = None if discharge == 0 else discharge
 		if _log.isEnabledFor(_DEBUG):
 			_log.debug("device %d battery %d%% charged, next level %d%% charge, status %d = %s",
 						device.number, discharge, dischargeNext, status, BATTERY_STATUS[status])
diff --git a/lib/logitech_receiver/notifications.py b/lib/logitech_receiver/notifications.py
--- a/lib/logitech_receiver/notifications.py
+++ b/lib/logitech_receiver/notifications.py
@@ -211,6 +211,7 @@ def _process_feature_notification(device, status, n, feature):
 	if feature == _F.BATTERY_STATUS:
 		if n.address == 0x00:
 			discharge_level = ord(n.data[:1])
+			discharge_level = None if discharge_level == 0 else discharge_level
 			discharge_next_level = ord(n.data[1:2])
 			battery_status = ord(n.data[2:3])
 			status.set_battery_info(discharge_level, _hidpp20.BATTERY_STATUS[battery_status])
diff --git a/lib/logitech_receiver/status.py b/lib/logitech_receiver/status.py
--- a/lib/logitech_receiver/status.py
+++ b/lib/logitech_receiver/status.py
@@ -191,7 +191,7 @@ def set_battery_info(self, level, status, timestamp=None):
 		changed = old_level != level or old_status != status or old_charging != charging
 		alert, reason = ALERT.NONE, None
 
-		if _hidpp20.BATTERY_OK(status) and level > _BATTERY_ATTENTION_LEVEL:
+		if _hidpp20.BATTERY_OK(status) and ( level is None or level > _BATTERY_ATTENTION_LEVEL ):
 			self[KEYS.ERROR] = None
 		else:
 			_log.warn("%s: battery %d%%, ALERT %s", self._device, level, status)


Test patch: