Repository: pwr-Solaar/Solaar

Issue:
G915 Keyboard causes error in 1.1.12rc1
My G915 Lightspeed Keyboard get not listed in Solaar.

![image](https://github.com/pwr-Solaar/Solaar/assets/43136984/fea19eee-ddf2-41a3-bd20-bbbe531e3a7a)

out put of `solaar -ddd`: 
[test.log](https://github.com/pwr-Solaar/Solaar/files/15041789/test.log)



Discussion:
Did this work in previous versions of Solaar?
yes. I previously used the 1.1.11 without any issues. And with the PRs I reviewed between these versions every thing worked as well.
I found this error in the debuggin messages:
```
2024-04-19 16:29:54,032,032  WARNING [SolaarListener:hidraw14] logitech_receiver.settings: onboard_profiles: error applying 511 so ignore it (<Device(1,407C,G915 WIRELESS RGB MECHANICAL GAMING KEYBOARD,A502B0E1)>): ValueError('invalid choice 511')
2024-04-19 16:29:54,042,042    ERROR [SolaarListener:hidraw14] logitech_receiver.base: (15) device 1 error on feature request {162B}: 2 = invalid argument
2024-04-19 16:29:54,042,042  WARNING [SolaarListener:hidraw14] logitech_receiver.settings: report_rate: error applying 1 so ignore it (<Device(1,407C,G915 WIRELESS RGB MECHANICAL GAMING KEYBOARD,A502B0E1)>): FeatureCallError({'number': 1, 'request': 5675, 'error': 2, 'params': b'\x01'})
2024-04-19 16:29:54,062,062    ERROR [SolaarListener:hidraw14] logitech_receiver.base: (15) device 1 error on feature request {0AED}: 7 = invalid function
2024-04-19 16:29:54,062,062  WARNING [SolaarListener:hidraw14] logitech_receiver.settings: rgb_zone_2: error applying None so ignore it (<Device(1,407C,G915 WIRELESS RGB MECHANICAL GAMING KEYBOARD,A502B0E1)>): FeatureCallError({'number': 1, 'request': 2797, 'error': 7, 'params': b'\x00'})
2024-04-19 16:29:54,072,072    ERROR [SolaarListener:hidraw14] logitech_receiver.base: (15) device 1 error on feature request {0AE9}: 7 = invalid function
2024-04-19 16:29:54,072,072  WARNING [SolaarListener:hidraw14] logitech_receiver.settings: rgb_zone_1: error applying None so ignore it (<Device(1,407C,G915 WIRELESS RGB MECHANICAL GAMING KEYBOARD,A502B0E1)>): FeatureCallError({'number': 1, 'request': 2793, 'error': 7, 'params': b'\x01'})
2024-04-19 16:29:54,298,298    ERROR [SolaarListener:hidraw14] logitech_receiver.listener: processing Notification(10,1,41,11,317C40)
Traceback (most recent call last):
  File "/nix/store/95pf2zw97qin7105z243y1kzsibimbga-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/logitech_receiver/listener.py", line 153, in run
    self._notifications_callback(n)
  File "/nix/store/95pf2zw97qin7105z243y1kzsibimbga-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/solaar/listener.py", line 219, in _notifications_handler
    _notifications.process(dev, n)
  File "/nix/store/95pf2zw97qin7105z243y1kzsibimbga-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/logitech_receiver/notifications.py", line 54, in process
    return _process_device_notification(device, notification)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/95pf2zw97qin7105z243y1kzsibimbga-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/logitech_receiver/notifications.py", line 163, in _process_device_notification
    return _process_hidpp10_notification(device, n)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/95pf2zw97qin7105z243y1kzsibimbga-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/logitech_receiver/notifications.py", line 267, in _process_hidpp10_notification
    device.changed(active=link_established)
  File "/nix/store/95pf2zw97qin7105z243y1kzsibimbga-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/logitech_receiver/device.py", line 417, in changed
    self.read_battery()  # battery information may have changed so try to read it now 
    ^^^^^^^^^^^^^^^^^^^
  File "/nix/store/95pf2zw97qin7105z243y1kzsibimbga-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/logitech_receiver/device.py", line 392, in read_battery
    self.set_battery_info(battery if battery is not None else Battery(None, None, None, None))
  File "/nix/store/95pf2zw97qin7105z243y1kzsibimbga-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/logitech_receiver/device.py", line 385, in set_battery_info
    _hidpp10.set_3leds(self, info.level, charging=info.charging(), warning=bool(alert))
  File "/nix/store/95pf2zw97qin7105z243y1kzsibimbga-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/logitech_receiver/hidpp10.py", line 120, in set_3leds
    if REGISTERS.three_leds not in device.registers:
       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: argument of type 'NoneType' is not iterable
```
What settings does the keyboard have?   

Please provide the other information asked for in bug reports.
config.yaml:
```yml
- 1.1.12rc1
- _NAME: G915 WIRELESS RGB MECHANICAL GAMING KEYBOARD
  _absent: [hi-res-scroll, lowres-scroll-mode, hires-smooth-invert, hires-smooth-resolution, hires-scroll-mode, scroll-ratchet, smart-shift, thumb-scroll-invert,
    thumb-scroll-mode, report_rate_extended, pointer_speed, dpi, dpi_extended, speed-change, backlight, backlight_level, backlight_duration_hands_out, backlight_duration_hands_in,
    backlight_duration_powered, backlight-timed, led_control, led_zone_, fn-swap, reprogrammable-keys, persistent-remappable-keys, disable-keyboard-keys,
    crown-smooth, divert-crown, multiplatform, gesture2-gestures, gesture2-divert, gesture2-params, sidetone, equalizer, adc_power_management]
  _battery: 4097
  _modelId: B354407CC33E
  _sensitive: {hires-scroll-mode: ignore, hires-smooth-invert: ignore, hires-smooth-resolution: ignore}
  _serial: A502B0E1
  _unitId: A502B0E1
  _wpid: 407C
  brightness_control: 12
  change-host: null
  divert-gkeys: false
  divert-keys: {209: 0, 210: 0}
  m-key-leds: {1: false, 2: false, 4: false}
  mr-key-led: false
  onboard_profiles: 511
  report_rate: 1
  rgb_control: 0
```
solaar 1.1.11:
![image](https://github.com/pwr-Solaar/Solaar/assets/43136984/98449f0f-3c71-4446-afd5-ded56df80fe4)

Thanks.  The low-level code for devices has been reorganized and an attribute was initialized incorrectly and this slipped through testing.

Try PR #2438 

To clone and use Solar from its GitHub repository
```
git clone https://github.com/pwr-Solaar/Solaar.git
cd Solaar
```
Run Solaar as bin/solaar from this directory.


To run PR #2438, first clone Solaar if you have not already done so and cd to the clone directory.  The first time you download the pull request, fetch it into a new branch and checkout that branch, as in:
```
git fetch origin pull/2438/head:pull_2438
git checkout pull_2438
```
To download a new version of the pull request, fetch it and then set your pull branch to the new fetch, as in:
```
git checkout pull_2438
git fetch origin pull/2438/head
git reset --hard FETCH_HEAD

Works :+1: 
But now the "LEDs Logo" and "LEDs Primary" options dont work:

```bash
Traceback (most recent call last):
  File "/nix/store/4gfcq9k6smggqdslyv8r8jfx28qswpsn-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/solaar/ui/config_panel.py", line 59, in _do_write
    v = setting.write(v)
        ^^^^^^^^^^^^^^^^
  File "/nix/store/4gfcq9k6smggqdslyv8r8jfx28qswpsn-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/logitech_receiver/settings.py", line 185, in write
    reply = self._rw.write(self._device, data_bytes)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/4gfcq9k6smggqdslyv8r8jfx28qswpsn-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/logitech_receiver/settings.py", line 650, in write
    reply = device.feature_request(self.feature, self.write_fnid, write_bytes, no_reply=self.no_reply)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/4gfcq9k6smggqdslyv8r8jfx28qswpsn-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/logitech_receiver/device.py", line 496, in feature_request
    return hidpp20.feature_request(self, feature, function, *params, no_reply=no_reply)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/4gfcq9k6smggqdslyv8r8jfx28qswpsn-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/logitech_receiver/hidpp20.py", line 1350, in feature_request
    return device.request((feature_index << 8) + (function & 0xFF), *params, no_reply=no_reply)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/4gfcq9k6smggqdslyv8r8jfx28qswpsn-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/logitech_receiver/device.py", line 484, in request
    return base.request(
           ^^^^^^^^^^^^^
  File "/nix/store/4gfcq9k6smggqdslyv8r8jfx28qswpsn-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/logitech_receiver/base.py", line 502, in request
    raise exceptions.FeatureCallError(number=devnumber, request=request_id, error=error, params=params)
logitech_receiver.exceptions.FeatureCallError: {'number': 1, 'request': 2587, 'error': 5, 'params': b'\x01\x01\xff\xa5\x00\x00\x00\x00\x00\x00\x00\x00\x01'}
```
Don't work in that they don't show up or don't work in that you cant change them?
I could change them in Solaar, but th echange does not get to the device.
That's somewhat as expected, but there should be better information available.  The issue is that these settings are overridden by onboard profiles on some devices, so you need to disable onboard profiles.   Other potentially-affected settings have a note in their tooltip, which will be added to these settings.
PR #2348 has expanded tooltips for these settings mentioning Onboard Profiles.  Please give it a try.
Still not working. I tryed with onboard profiles ignored, disabled and enabled:
```
Traceback (most recent call last):
  File "/nix/store/dij82abzvxg7nshavpqmvbdqzgipxxxd-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/solaar/ui/config_panel.py", line 59, in _do_write
    v = setting.write(v)
        ^^^^^^^^^^^^^^^^
  File "/nix/store/dij82abzvxg7nshavpqmvbdqzgipxxxd-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/logitech_receiver/settings.py", line 185, in write
    reply = self._rw.write(self._device, data_bytes)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/dij82abzvxg7nshavpqmvbdqzgipxxxd-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/logitech_receiver/settings.py", line 650, in write
    reply = device.feature_request(self.feature, self.write_fnid, write_bytes, no_reply=self.no_reply)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/dij82abzvxg7nshavpqmvbdqzgipxxxd-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/logitech_receiver/device.py", line 496, in feature_request
    return hidpp20.feature_request(self, feature, function, *params, no_reply=no_reply)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/dij82abzvxg7nshavpqmvbdqzgipxxxd-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/logitech_receiver/hidpp20.py", line 1350, in feature_request
    return device.request((feature_index << 8) + (function & 0xFF), *params, no_reply=no_reply)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/dij82abzvxg7nshavpqmvbdqzgipxxxd-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/logitech_receiver/device.py", line 484, in request
    return base.request(
           ^^^^^^^^^^^^^
  File "/nix/store/dij82abzvxg7nshavpqmvbdqzgipxxxd-solaar-flake-1.1.12rc1/lib/python3.11/site-packages/logitech_receiver/base.py", line 502, in request
    raise exceptions.FeatureCallError(number=devnumber, request=request_id, error=error, params=params)
logitech_receiver.exceptions.FeatureCallError: {'number': 1, 'request': 2591, 'error': 5, 'params': b'\x00\x01\xa5**\x00\x00\x00\x00\x00\x00\x00\x01'
```
Please provide output of `solaar show` and complete output of `solaar -ddd` from start until the error.  Solaar collects information about the capabilities of the device and uses that to determine how to change the setting. 

 Also, is the lighting for your mouse working?
`solaar show`:

```bash
rules cannot access modifier keys in Wayland, accessing process only works on GNOME with Solaar Gnome extension installed
[Errno 2] No such file or directory: '/home/sven/.config/solaar/keys.yaml'
solaar version 1.1.12rc1

Lightspeed Receiver
  Device path  : /dev/hidraw14
  USB id       : 046d:C541
  Serial       : DEE9CA1E
  C Pending    : ff
    Firmware   : 01.02.B0028
    Bootloader : 01.27
    Other      : 75.25
  Has 1 paired device(s) out of a maximum of 2.
  Notifications: wireless, software present (0x000900)
  Device activity counters: 1=8

  1: G915 WIRELESS RGB MECHANICAL GAMING KEYBOARD
     Device path  : None
     WPID         : 407C
     Codename     : G915 KEYBOARD
     Kind         : keyboard
     Protocol     : HID++ 4.2
     Report Rate : 1ms
     Serial number: A502B0E1
     Model ID:      B354407CC33E
     Unit ID:       A502B0E1
                 1: BOT 77.02.B0039
                 3: 
                 0: MPK 09.03.B0041
                 3: 
                 3: 
     The power switch is located on the top left corner.
     Supports 38 HID++ 2.0 features:
         0: ROOT                   {0000} V0     
         1: FEATURE SET            {0001} V0     
         2: DEVICE FW VERSION      {0003} V4     
            Firmware: Bootloader BOT 77.02.B0039 0000EC44D534
            Firmware: Other   
            Firmware: Firmware MPK 09.03.B0041 407C3791543D
            Firmware: Other   
            Firmware: Other   
            Unit ID: A502B0E1  Model ID: B354407CC33E  Transport IDs: {'btleid': 'B354', 'wpid': '407C', 'usbid': 'C33E'}
         3: DEVICE NAME            {0005} V0     
            Name: G915 WIRELESS RGB MECHANICAL GAMING KEYBOARD
            Kind: keyboard
         4: WIRELESS DEVICE STATUS {1D4B} V0     
         5: CONFIG CHANGE          {0020} V0     
            Configuration: 11000000000000000000000000000000
         6: DEVICE FRIENDLY NAME   {0007} V0     
            Friendly Name: G915 KEYBOARD�
         7: BATTERY VOLTAGE        {1001} V3     
            Battery: 80% 3998mV , discharging.
         8: CHANGE HOST            {1814} V1     
            Change Host        : 1:Yon
         9: HOSTS INFO             {1815} V1     
            Host 0 (paired): Yon
            Host 1 (paired): 
        10: RGB EFFECTS            {8071} V0     
            RGB Control (saved): Device
            RGB Control        : Device
            LEDs Logo (saved): !LEDEffectSetting {ID: 1, color: 11546720, intensity: 0, period: 100, ramp: 0, speed: 0}
            LEDs Logo        : HID++ error {'number': 1, 'request': 2799, 'error': 7, 'params': b'\x00'}
            LEDs Primary (saved): !LEDEffectSetting {ID: 1, color: 16776960, intensity: 0, period: 100, ramp: 0, speed: 0}
            LEDs Primary        : HID++ error {'number': 1, 'request': 2796, 'error': 7, 'params': b'\x01'}
        11: PER KEY LIGHTING V2    {8081} V2     
            Per-key Lighting (saved): {A:white, B:red, C:white, D:white, E:white, F:white, G:white, H:white, I:white, J:white, K:white, L:white, M:white, N:white, O:white, P:white, Q:white, R:white, S:white, T:white, U:white, V:white, W:white, X:white, Y:white, Z:white, 1:white, 2:white, 3:white, 4:white, 5:white, 6:white, 7:white, 8:white, 9:white, 0:white, ENTER:white, ESC:white, BACKSPACE:white, TAB:white, SPACE:white, -:white, =:white, [:white, \:white, KEY 46:white, ~:white, ;:white, ':white, `:white, ,:white, .:white, /:white, CAPS LOCK:white, F1:white, F2:white, F3:white, F4:white, F5:white, F6:white, F7:white, F8:white, F9:white, F10:white, F11:white, F12:white, PRINT:white, SCROLL LOCK:white, PASTE:white, INSERT:white, HOME:white, PAGE UP:white, DELETE:white, END:white, PAGE DOWN:white, RIGHT:white, LEFT:white, DOWN:white, UP:white, NUMLOCK:white, KEYPAD /:white, KEYPAD *:white, KEYPAD -:white, KEYPAD +:white, KEYPAD ENTER:white, KEYPAD 1:white, KEYPAD 2:white, KEYPAD 3:white, KEYPAD 4:white, KEYPAD 5:white, KEYPAD 6:white, KEYPAD 7:white, KEYPAD 8:white, KEYPAD 9:white, KEYPAD 0:white, KEYPAD .:white, KEY 97:white, COMPOSE:white, POWER:white, KEY 100:white, KEY 101:white, KEY 102:white, KEY 103:white, LEFT CTRL:white, LEFT SHIFT:white, LEFT ALT:white, LEFT WINDOWS:white, RIGHT CTRL:white, RIGHT SHIFT:white, RIGHT ALTGR:white, RIGHT WINDOWS:white, BRIGHTNESS:white, PAUSE:white, MUTE:white, NEXT:white, PREVIOUS:white, G1:white, G2:white, G3:white, G4:white, G5:white, LOGO:white}
            Per-key Lighting        : {A:white, B:white, C:white, D:white, E:white, F:white, G:white, H:white, I:white, J:white, K:white, L:white, M:white, N:white, O:white, P:white, Q:white, R:white, S:white, T:white, U:white, V:white, W:white, X:white, Y:white, Z:white, 1:white, 2:white, 3:white, 4:white, 5:white, 6:white, 7:white, 8:white, 9:white, 0:white, ENTER:white, ESC:white, BACKSPACE:white, TAB:white, SPACE:white, -:white, =:white, [:white, \:white, KEY 46:white, ~:white, ;:white, ':white, `:white, ,:white, .:white, /:white, CAPS LOCK:white, F1:white, F2:white, F3:white, F4:white, F5:white, F6:white, F7:white, F8:white, F9:white, F10:white, F11:white, F12:white, PRINT:white, SCROLL LOCK:white, PASTE:white, INSERT:white, HOME:white, PAGE UP:white, DELETE:white, END:white, PAGE DOWN:white, RIGHT:white, LEFT:white, DOWN:white, UP:white, NUMLOCK:white, KEYPAD /:white, KEYPAD *:white, KEYPAD -:white, KEYPAD +:white, KEYPAD ENTER:white, KEYPAD 1:white, KEYPAD 2:white, KEYPAD 3:white, KEYPAD 4:white, KEYPAD 5:white, KEYPAD 6:white, KEYPAD 7:white, KEYPAD 8:white, KEYPAD 9:white, KEYPAD 0:white, KEYPAD .:white, KEY 97:white, COMPOSE:white, POWER:white, KEY 100:white, KEY 101:white, KEY 102:white, KEY 103:white, LEFT CTRL:white, LEFT SHIFT:white, LEFT ALT:white, LEFT WINDOWS:white, RIGHT CTRL:white, RIGHT SHIFT:white, RIGHT ALTGR:white, RIGHT WINDOWS:white, BRIGHTNESS:white, PAUSE:white, MUTE:white, NEXT:white, PREVIOUS:white, G1:white, G2:white, G3:white, G4:white, G5:white, LOGO:white}
        12: REPROG CONTROLS V4     {1B04} V4     
            Key/Button Diversion (saved): {Host Switch Channel 1:Regular, Host Switch Channel 2:Regular}
            Key/Button Diversion        : {Host Switch Channel 1:Regular, Host Switch Channel 2:Regular}
        13: REPORT HID USAGE       {1BC0} V1     
        14: ENCRYPTION             {4100} V0     
        15: KEYBOARD DISABLE BY USAGE {4522} V0     
        16: KEYBOARD LAYOUT 2      {4540} V0     
        17: GKEY                   {8010} V0     
            Divert G and M Keys (saved): False
            Divert G and M Keys        : False
        18: MKEYS                  {8020} V0     
            M-Key LEDs (saved): {M1:False, M2:False, M3:False}
            M-Key LEDs        : {M1:False, M2:False, M3:False}
        19: MR                     {8030} V0     
            MR-Key LED (saved): False
            MR-Key LED        : False
        20: BRIGHTNESS CONTROL     {8040} V0     
            Brightness Control (saved): 12
            Brightness Control        : 12
        21: ONBOARD PROFILES       {8100} V0     
            Device Mode: Host
            Onboard Profiles (saved): Disabled
            Onboard Profiles        : Disabled
        22: REPORT RATE            {8060} V0     
            Report Rate: 1ms
            Report Rate (saved): 1ms
            Report Rate        : 1ms
        23: DFUCONTROL SIGNED      {00C2} V0     
        24: DFU                    {00D0} V3     
        25: DEVICE RESET           {1802} V0    internal, hidden 
        26: unknown:1803           {1803} V0    internal, hidden 
        27: CONFIG DEVICE PROPS    {1806} V8    internal, hidden 
        28: unknown:1813           {1813} V0    internal, hidden 
        29: OOBSTATE               {1805} V0    internal, hidden 
        30: unknown:1830           {1830} V0    internal, hidden 
        31: unknown:1890           {1890} V5    internal, hidden 
        32: unknown:1891           {1891} V5    internal, hidden 
        33: unknown:18A1           {18A1} V0    internal, hidden 
        34: unknown:1E00           {1E00} V0    hidden 
        35: unknown:1EB0           {1EB0} V0    internal, hidden 
        36: unknown:1861           {1861} V0    internal, hidden 
        37: unknown:18B0           {18B0} V0    internal, hidden 
     Has 2 reprogrammable keys:
         0: Host Switch Channel 1     , default: HostSwitch Channel 1        => HostSwitch Channel 1      
             divertable, persistently divertable, pos:1, group:0, group mask:empty
             reporting: default
         1: Host Switch Channel 2     , default: HostSwitch Channel 2        => HostSwitch Channel 2      
             divertable, persistently divertable, pos:2, group:0, group mask:empty
             reporting: default
     Battery: 80% 3998mV , discharging.

Lightspeed Receiver
  Device path  : /dev/hidraw18
  USB id       : 046d:C539
  Serial       : 2FD29E00
  C Pending    : fe
    Firmware   : 39.06.B0040
    Bootloader : 02.09
    Other      : AA.BE
  Has 1 paired device(s) out of a maximum of 1.
  Notifications: wireless, software present (0x000900)
  Device activity counters: (empty)

  1: G502 Gaming Mouse
     Device path  : /dev/hidraw20
     WPID         : 407F
     Codename     : G502
     Kind         : mouse
     Protocol     : HID++ 4.2
     Report Rate : 1ms
     Serial number: DDDAADBC
     Model ID:      407FC08D0000
     Unit ID:       DDDAADBC
                 1: BOT 92.00.B0008
                 0: MPM 17.00.B0008
                 3: 
     The power switch is located on the base.
     Supports 30 HID++ 2.0 features:
         0: ROOT                   {0000} V0     
         1: FEATURE SET            {0001} V0     
         2: DEVICE FW VERSION      {0003} V2     
            Firmware: Bootloader BOT 92.00.B0008 AAEF21F1FA5F
            Firmware: Firmware MPM 17.00.B0008 407F21F1FA5F
            Firmware: Other   
            Unit ID: DDDAADBC  Model ID: 407FC08D0000  Transport IDs: {'wpid': '407F', 'usbid': 'C08D'}
         3: DEVICE NAME            {0005} V0     
            Name: G502 LIGHTSPEED Wireless Gaming Mouse
            Kind: mouse
         4: WIRELESS DEVICE STATUS {1D4B} V0     
         5: CONFIG CHANGE          {0020} V0     
            Configuration: 11000000000000000000000000000000
         6: BATTERY VOLTAGE        {1001} V2     
            Battery: 90% 4166mV , discharging.
         7: COLOR LED EFFECTS      {8070} V4     
            LED Control (saved): Device
            LED Control        : Device
            LEDs Primary (saved): !LEDEffectSetting {ID: 1, color: 16711680, intensity: 0, period: 100, ramp: 0, speed: 0}
            LEDs Primary        : None
            LEDs Logo        : None
         8: LED CONTROL            {1300} V0     
         9: ONBOARD PROFILES       {8100} V0     
            Device Mode: On-Board
            Onboard Profiles (saved): Profile 1
            Onboard Profiles        : Profile 1
        10: MOUSE BUTTON SPY       {8110} V0     
        11: REPORT RATE            {8060} V0     
            Report Rate: 1ms
            Report Rate (saved): 1ms
            Report Rate        : 1ms
        12: ADJUSTABLE DPI         {2201} V1     
            Sensitivity (DPI) (saved): 900
            Sensitivity (DPI)        : 900
        13: DEVICE RESET           {1802} V0    internal, hidden 
        14: unknown:1803           {1803} V0    internal, hidden 
        15: OOBSTATE               {1805} V0    internal, hidden 
        16: CONFIG DEVICE PROPS    {1806} V4    internal, hidden 
        17: unknown:1811           {1811} V0    internal, hidden 
        18: unknown:1830           {1830} V0    internal, hidden 
        19: unknown:1890           {1890} V4    internal, hidden 
        20: unknown:1891           {1891} V4    internal, hidden 
        21: unknown:18A1           {18A1} V0    internal, hidden 
        22: unknown:1801           {1801} V0    internal, hidden 
        23: unknown:18B1           {18B1} V0    internal, hidden 
        24: unknown:1DF3           {1DF3} V0    internal, hidden 
        25: unknown:1E00           {1E00} V0    hidden 
        26: unknown:1EB0           {1EB0} V0    internal, hidden 
        27: unknown:1863           {1863} V0    internal, hidden 
        28: unknown:1E22           {1E22} V0    internal, hidden 
        29: HIRES WHEEL            {2121} V0     
            Multiplier: 8
            Has invert: Normal wheel motion
            Has ratchet switch: Normal wheel mode
            High resolution mode
            HID notification
            Scroll Wheel Direction (saved): False
            Scroll Wheel Direction        : False
            Scroll Wheel Resolution (saved): True
            Scroll Wheel Resolution        : True
            Scroll Wheel Diversion (saved): False
            Scroll Wheel Diversion        : False
     Battery: 90% 4166mV , discharging.
```

`solaar -ddd`:
[solaar.log](https://github.com/pwr-Solaar/Solaar/files/15044931/test.log)



Did you set the RGB Control setting to Solaar?  
Now I tryed wiht setting it to Solaar and it worked... :man_facepalming: 

Yes.   I'm going to update the tooltip to better state this requirement.
Sorry for the trouble... 
No problem.  You did find a real bug before general release.



Patch:
diff --git a/docs/devices/G502 Lightspeed Wireless Gaming Mouse 407F.txt b/docs/devices/G502 Lightspeed Wireless Gaming Mouse 407F.txt
index f69ae0991e..fefbfae962 100644
--- a/docs/devices/G502 Lightspeed Wireless Gaming Mouse 407F.txt
+++ b/docs/devices/G502 Lightspeed Wireless Gaming Mouse 407F.txt
@@ -1,18 +1,18 @@
-Solaar version 1.1.7
+solaar version 1.1.12rc1
 
   1: G502 Gaming Mouse
-     Device path  : /dev/hidraw4
+     Device path  : /dev/hidraw20
      WPID         : 407F
      Codename     : G502
      Kind         : mouse
      Protocol     : HID++ 4.2
-     Polling rate : 1 ms (1000Hz)
-     Serial number: 1F2DBC7E
+     Report Rate : 1ms
+     Serial number: DDDAADBC
      Model ID:      407FC08D0000
-     Unit ID:       1F2DBC7E
-        Bootloader: BOT 92.00.B0008
-          Firmware: MPM 17.00.B0008
-             Other:
+     Unit ID:       DDDAADBC
+                 1: BOT 92.00.B0008
+                 0: MPM 17.00.B0008
+                 3:
      The power switch is located on the base.
      Supports 30 HID++ 2.0 features:
          0: ROOT                   {0000} V0
@@ -21,28 +21,34 @@ Solaar version 1.1.7
             Firmware: Bootloader BOT 92.00.B0008 AAEF21F1FA5F
             Firmware: Firmware MPM 17.00.B0008 407F21F1FA5F
             Firmware: Other
-            Unit ID: 1F2DBC7E  Model ID: 407FC08D0000  Transport IDs: {'wpid': '407F', 'usbid': 'C08D'}
+            Unit ID: DDDAADBC  Model ID: 407FC08D0000  Transport IDs: {'wpid': '407F', 'usbid': 'C08D'}
          3: DEVICE NAME            {0005} V0
             Name: G502 LIGHTSPEED Wireless Gaming Mouse
             Kind: mouse
          4: WIRELESS DEVICE STATUS {1D4B} V0
-         5: RESET                  {0020} V0
+         5: CONFIG CHANGE          {0020} V0
+            Configuration: 11000000000000000000000000000000
          6: BATTERY VOLTAGE        {1001} V2
-            Battery: 70% 3978mV , discharging.
+            Battery: 90% 4166mV , discharging.
          7: COLOR LED EFFECTS      {8070} V4
+            LED Control (saved): Device
+            LED Control        : Device
+            LEDs Primary (saved): !LEDEffectSetting {ID: 1, color: 16711680, intensity: 0, period: 100, ramp: 0, speed: 0}
+            LEDs Primary        : None
+            LEDs Logo        : None
          8: LED CONTROL            {1300} V0
          9: ONBOARD PROFILES       {8100} V0
             Device Mode: On-Board
-            Onboard Profiles (saved): Enable
-            Onboard Profiles        : Enable
+            Onboard Profiles (saved): Profile 1
+            Onboard Profiles        : Profile 1
         10: MOUSE BUTTON SPY       {8110} V0
         11: REPORT RATE            {8060} V0
-            Polling Rate (ms): 1
-            Polling Rate (ms) (saved): 1
-            Polling Rate (ms)        : 1
+            Report Rate: 1ms
+            Report Rate (saved): 1ms
+            Report Rate        : 1ms
         12: ADJUSTABLE DPI         {2201} V1
-            Sensitivity (DPI) (saved): 800
-            Sensitivity (DPI)        : 800
+            Sensitivity (DPI) (saved): 900
+            Sensitivity (DPI)        : 900
         13: DEVICE RESET           {1802} V0    internal, hidden
         14: unknown:1803           {1803} V0    internal, hidden
         15: OOBSTATE               {1805} V0    internal, hidden
@@ -63,12 +69,12 @@ Solaar version 1.1.7
             Multiplier: 8
             Has invert: Normal wheel motion
             Has ratchet switch: Normal wheel mode
-            Low resolution mode
+            High resolution mode
             HID notification
             Scroll Wheel Direction (saved): False
             Scroll Wheel Direction        : False
-            Scroll Wheel Resolution (saved): False
-            Scroll Wheel Resolution        : False
+            Scroll Wheel Resolution (saved): True
+            Scroll Wheel Resolution        : True
             Scroll Wheel Diversion (saved): False
             Scroll Wheel Diversion        : False
-     Battery: 70% 3978mV , discharging.
+     Battery: 90% 4166mV , discharging.
diff --git a/docs/devices/G915 WIRELESS RGB MECHANICAL GAMING KEYBOARD 407C.text b/docs/devices/G915 WIRELESS RGB MECHANICAL GAMING KEYBOARD 407C.text
index 4e8f1ccf5a..34a573d290 100644
--- a/docs/devices/G915 WIRELESS RGB MECHANICAL GAMING KEYBOARD 407C.text
+++ b/docs/devices/G915 WIRELESS RGB MECHANICAL GAMING KEYBOARD 407C.text
@@ -1,15 +1,4 @@
-solaar version 1.1.10-22-g0b271eb
-
-Récepteur Lightspeed
-  Device path  : /dev/hidraw10
-  USB id       : 046d:C547
-  Serial       : 033DFAF7
-    Firmware   : 04.02.B0009
-    Bootloader : 02.09
-    Other      : B4.DA
-  Has 1 paired device(s) out of a maximum of 2.
-  Notifications: wireless, software present (0x000900)
-  Device activity counters: 1=78
+solaar version 1.1.12rc1
 
   1: G915 WIRELESS RGB MECHANICAL GAMING KEYBOARD
      Device path  : None
@@ -17,67 +6,78 @@ Récepteur Lightspeed
      Codename     : G915 KEYBOARD
      Kind         : keyboard
      Protocol     : HID++ 4.2
-     Polling rate : 1 ms (1000Hz)
-     Serial number: 8816D0DF
+     Report Rate : 1ms
+     Serial number: A502B0E1
      Model ID:      B354407CC33E
-     Unit ID:       8816D0DF
-        Bootloader: BOT 77.03.B0041
-             Other:
-          Firmware: MPK 09.04.B0042
-             Other:
-             Other:
+     Unit ID:       A502B0E1
+                 1: BOT 77.02.B0039
+                 3:
+                 0: MPK 09.03.B0041
+                 3:
+                 3:
      The power switch is located on the top left corner.
      Supports 38 HID++ 2.0 features:
          0: ROOT                   {0000} V0
          1: FEATURE SET            {0001} V0
          2: DEVICE FW VERSION      {0003} V4
-            Firmware: Bootloader BOT 77.03.B0041 00003791543D
+            Firmware: Bootloader BOT 77.02.B0039 0000EC44D534
             Firmware: Other
-            Firmware: Firmware MPK 09.04.B0042 407C8A23A76B
+            Firmware: Firmware MPK 09.03.B0041 407C3791543D
             Firmware: Other
             Firmware: Other
-            Unit ID: 8816D0DF  Model ID: B354407CC33E  Transport IDs: {'btleid': 'B354', 'wpid': '407C', 'usbid': 'C33E'}
+            Unit ID: A502B0E1  Model ID: B354407CC33E  Transport IDs: {'btleid': 'B354', 'wpid': '407C', 'usbid': 'C33E'}
          3: DEVICE NAME            {0005} V0
             Name: G915 WIRELESS RGB MECHANICAL GAMING KEYBOARD
             Kind: keyboard
          4: WIRELESS DEVICE STATUS {1D4B} V0
          5: CONFIG CHANGE          {0020} V0
+            Configuration: 11000000000000000000000000000000
          6: DEVICE FRIENDLY NAME   {0007} V0
-            Friendly Name: G915 KEYBOARD
+            Friendly Name: G915 KEYBOARD�
          7: BATTERY VOLTAGE        {1001} V3
-            Battery: 80% 4042mV , discharging.
+            Battery: 80% 3998mV , discharging.
          8: CHANGE HOST            {1814} V1
-            Changer d'hôte        : 1:stagcrown
+            Change Host        : 1:Yon
          9: HOSTS INFO             {1815} V1
-            Host 0 (paired): stagcrown
+            Host 0 (paired): Yon
             Host 1 (paired):
         10: RGB EFFECTS            {8071} V0
+            RGB Control (saved): Device
+            RGB Control        : Device
+            LEDs Logo (saved): !LEDEffectSetting {ID: 1, color: 11546720, intensity: 0, period: 100, ramp: 0, speed: 0}
+            LEDs Logo        : HID++ error {'number': 1, 'request': 2799, 'error': 7, 'params': b'\x00'}
+            LEDs Primary (saved): !LEDEffectSetting {ID: 1, color: 16776960, intensity: 0, period: 100, ramp: 0, speed: 0}
+            LEDs Primary        : HID++ error {'number': 1, 'request': 2796, 'error': 7, 'params': b'\x01'}
         11: PER KEY LIGHTING V2    {8081} V2
+            Per-key Lighting (saved): {A:white, B:red, C:white, D:white, E:white, F:white, G:white, H:white, I:white, J:white, K:white, L:white, M:white, N:white, O:white, P:white, Q:white, R:white, S:white, T:white, U:white, V:white, W:white, X:white, Y:white, Z:white, 1:white, 2:white, 3:white, 4:white, 5:white, 6:white, 7:white, 8:white, 9:white, 0:white, ENTER:white, ESC:white, BACKSPACE:white, TAB:white, SPACE:white, -:white, =:white, [:white, \:white, KEY 46:white, ~:white, ;:white, ':white, `:white, ,:white, .:white, /:white, CAPS LOCK:white, F1:white, F2:white, F3:white, F4:white, F5:white, F6:white, F7:white, F8:white, F9:white, F10:white, F11:white, F12:white, PRINT:white, SCROLL LOCK:white, PASTE:white, INSERT:white, HOME:white, PAGE UP:white, DELETE:white, END:white, PAGE DOWN:white, RIGHT:white, LEFT:white, DOWN:white, UP:white, NUMLOCK:white, KEYPAD /:white, KEYPAD *:white, KEYPAD -:white, KEYPAD +:white, KEYPAD ENTER:white, KEYPAD 1:white, KEYPAD 2:white, KEYPAD 3:white, KEYPAD 4:white, KEYPAD 5:white, KEYPAD 6:white, KEYPAD 7:white, KEYPAD 8:white, KEYPAD 9:white, KEYPAD 0:white, KEYPAD .:white, KEY 97:white, COMPOSE:white, POWER:white, KEY 100:white, KEY 101:white, KEY 102:white, KEY 103:white, LEFT CTRL:white, LEFT SHIFT:white, LEFT ALT:white, LEFT WINDOWS:white, RIGHT CTRL:white, RIGHT SHIFT:white, RIGHT ALTGR:white, RIGHT WINDOWS:white, BRIGHTNESS:white, PAUSE:white, MUTE:white, NEXT:white, PREVIOUS:white, G1:white, G2:white, G3:white, G4:white, G5:white, LOGO:white}
+            Per-key Lighting        : {A:white, B:white, C:white, D:white, E:white, F:white, G:white, H:white, I:white, J:white, K:white, L:white, M:white, N:white, O:white, P:white, Q:white, R:white, S:white, T:white, U:white, V:white, W:white, X:white, Y:white, Z:white, 1:white, 2:white, 3:white, 4:white, 5:white, 6:white, 7:white, 8:white, 9:white, 0:white, ENTER:white, ESC:white, BACKSPACE:white, TAB:white, SPACE:white, -:white, =:white, [:white, \:white, KEY 46:white, ~:white, ;:white, ':white, `:white, ,:white, .:white, /:white, CAPS LOCK:white, F1:white, F2:white, F3:white, F4:white, F5:white, F6:white, F7:white, F8:white, F9:white, F10:white, F11:white, F12:white, PRINT:white, SCROLL LOCK:white, PASTE:white, INSERT:white, HOME:white, PAGE UP:white, DELETE:white, END:white, PAGE DOWN:white, RIGHT:white, LEFT:white, DOWN:white, UP:white, NUMLOCK:white, KEYPAD /:white, KEYPAD *:white, KEYPAD -:white, KEYPAD +:white, KEYPAD ENTER:white, KEYPAD 1:white, KEYPAD 2:white, KEYPAD 3:white, KEYPAD 4:white, KEYPAD 5:white, KEYPAD 6:white, KEYPAD 7:white, KEYPAD 8:white, KEYPAD 9:white, KEYPAD 0:white, KEYPAD .:white, KEY 97:white, COMPOSE:white, POWER:white, KEY 100:white, KEY 101:white, KEY 102:white, KEY 103:white, LEFT CTRL:white, LEFT SHIFT:white, LEFT ALT:white, LEFT WINDOWS:white, RIGHT CTRL:white, RIGHT SHIFT:white, RIGHT ALTGR:white, RIGHT WINDOWS:white, BRIGHTNESS:white, PAUSE:white, MUTE:white, NEXT:white, PREVIOUS:white, G1:white, G2:white, G3:white, G4:white, G5:white, LOGO:white}
         12: REPROG CONTROLS V4     {1B04} V4
-            Interception des boutons/touches (saved): {Host Switch Channel 1:Interception, Host Switch Channel 2:Interception}
-            Interception des boutons/touches        : {Host Switch Channel 1:Interception, Host Switch Channel 2:Interception}
+            Key/Button Diversion (saved): {Host Switch Channel 1:Regular, Host Switch Channel 2:Regular}
+            Key/Button Diversion        : {Host Switch Channel 1:Regular, Host Switch Channel 2:Regular}
         13: REPORT HID USAGE       {1BC0} V1
         14: ENCRYPTION             {4100} V0
         15: KEYBOARD DISABLE BY USAGE {4522} V0
         16: KEYBOARD LAYOUT 2      {4540} V0
         17: GKEY                   {8010} V0
-            Définir les touches G (saved): True
-            Définir les touches G        : False
+            Divert G and M Keys (saved): False
+            Divert G and M Keys        : False
         18: MKEYS                  {8020} V0
-            LEDs de touche M (saved): {M1:True, M2:True, M3:True}
-            LEDs de touche M        : {M1:False, M2:False, M3:False}
+            M-Key LEDs (saved): {M1:False, M2:False, M3:False}
+            M-Key LEDs        : {M1:False, M2:False, M3:False}
         19: MR                     {8030} V0
-            LED de touche MR (saved): True
-            LED de touche MR        : False
+            MR-Key LED (saved): False
+            MR-Key LED        : False
         20: BRIGHTNESS CONTROL     {8040} V0
+            Brightness Control (saved): 12
+            Brightness Control        : 12
         21: ONBOARD PROFILES       {8100} V0
-            Device Mode: On-Board
-            Profils embarqués (saved): Enable
-            Profils embarqués        : Enable
+            Device Mode: Host
+            Onboard Profiles (saved): Disabled
+            Onboard Profiles        : Disabled
         22: REPORT RATE            {8060} V0
-            Polling Rate (ms): 1
-            Taux de scrutation (ms) (saved): 1
-            Taux de scrutation (ms)        : 1
+            Report Rate: 1ms
+            Report Rate (saved): 1ms
+            Report Rate        : 1ms
         23: DFUCONTROL SIGNED      {00C2} V0
         24: DFU                    {00D0} V3
         25: DEVICE RESET           {1802} V0    internal, hidden
@@ -86,8 +86,8 @@ Récepteur Lightspeed
         28: unknown:1813           {1813} V0    internal, hidden
         29: OOBSTATE               {1805} V0    internal, hidden
         30: unknown:1830           {1830} V0    internal, hidden
-        31: unknown:1890           {1890} V9    internal, hidden
-        32: unknown:1891           {1891} V9    internal, hidden
+        31: unknown:1890           {1890} V5    internal, hidden
+        32: unknown:1891           {1891} V5    internal, hidden
         33: unknown:18A1           {18A1} V0    internal, hidden
         34: unknown:1E00           {1E00} V0    hidden
         35: unknown:1EB0           {1EB0} V0    internal, hidden
@@ -96,8 +96,8 @@ Récepteur Lightspeed
      Has 2 reprogrammable keys:
          0: Host Switch Channel 1     , default: HostSwitch Channel 1        => HostSwitch Channel 1
              divertable, persistently divertable, pos:1, group:0, group mask:empty
-             reporting: diverted
+             reporting: default
          1: Host Switch Channel 2     , default: HostSwitch Channel 2        => HostSwitch Channel 2
              divertable, persistently divertable, pos:2, group:0, group mask:empty
-             reporting: diverted
-     Battery: 80% 4042mV , discharging.
+             reporting: default
+     Battery: 80% 3998mV , discharging.
diff --git a/lib/logitech_receiver/device.py b/lib/logitech_receiver/device.py
index fa76de213c..f705e711b3 100644
--- a/lib/logitech_receiver/device.py
+++ b/lib/logitech_receiver/device.py
@@ -101,7 +101,8 @@ def __init__(self, receiver, number, online, pairing_info=None, handle=None, dev
         self._tid_map = None  # map from transports to product identifiers
         self._persister = None  # persister holds settings
         self._led_effects = self._firmware = self._keys = self._remap_keys = self._gestures = None
-        self._profiles = self._backlight = self.registers = self._settings = None
+        self._profiles = self._backlight = self._settings = None
+        self.registers = []
         self.notification_flags = None
         self.battery_info = None
         self.link_encrypted = None
diff --git a/lib/logitech_receiver/settings_templates.py b/lib/logitech_receiver/settings_templates.py
index bb39abaa64..7bdf1e4f8b 100644
--- a/lib/logitech_receiver/settings_templates.py
+++ b/lib/logitech_receiver/settings_templates.py
@@ -1568,7 +1568,7 @@ def build(cls, setting_class, device):
 class LEDControl(_Setting):
     name = "led_control"
     label = _("LED Control")
-    description = _("Switch control of LEDs between device and Solaar")
+    description = _("Switch control of LED zones between device and Solaar")
     feature = _F.COLOR_LED_EFFECTS
     rw_options = {"read_fnid": 0x70, "write_fnid": 0x80}
     choices_universe = _NamedInts(Device=0, Solaar=1)
@@ -1584,7 +1584,7 @@ class LEDControl(_Setting):
 class LEDZoneSetting(_Setting):
     name = "led_zone_"
     label = _("LED Zone Effects")
-    description = _("Set effect for LED Zone")
+    description = _("Set effect for LED Zone") + "\n" + _("LED Control needs to be set to Solaar to be effective.")
     feature = _F.COLOR_LED_EFFECTS
     color_field = {"name": _LEDP.color, "kind": _KIND.choice, "label": None, "choices": colors}
     speed_field = {"name": _LEDP.speed, "kind": _KIND.range, "label": _("Speed"), "min": 0, "max": 255}
@@ -1619,8 +1619,8 @@ def build(cls, device):
 
 class RGBControl(_Setting):
     name = "rgb_control"
-    label = _("RGB Control")
-    description = _("Switch control of RGB zones between device and Solaar")
+    label = _("LED Control")
+    description = _("Switch control of LED zones between device and Solaar")
     feature = _F.RGB_EFFECTS
     rw_options = {"read_fnid": 0x50, "write_fnid": 0x50}
     choices_universe = _NamedInts(Device=0, Solaar=1)
@@ -1631,7 +1631,7 @@ class RGBControl(_Setting):
 class RGBEffectSetting(LEDZoneSetting):
     name = "rgb_zone_"
     label = _("LED Zone Effects")
-    description = _("Set effect for LED Zone")
+    description = _("Set effect for LED Zone") + "\n" + _("LED Control needs to be set to Solaar to be effective.")
     feature = _F.RGB_EFFECTS
 
     @classmethod


Test patch:
diff --git a/tests/logitech_receiver/test_device.py b/tests/logitech_receiver/test_device.py
index 668e4187b7..468c5bd6e3 100644
--- a/tests/logitech_receiver/test_device.py
+++ b/tests/logitech_receiver/test_device.py
@@ -106,7 +106,7 @@ def test_Device_name(device_info, responses, codename, name, kind, mock_base):
         [None, "Illuminated", "Craft", "G700", "MX Vertical", None],
         [0xFF, 0x0, 0xFF, 0x0, 0xFF, 0xFF],
         [1.0, 1.0, 4.5, 1.0, 4.5, 4.5],
-        [None, [], [], (common.NamedInt(7, "battery status"), common.NamedInt(81, "three leds")), [], None],
+        [[], [], [], (common.NamedInt(7, "battery status"), common.NamedInt(81, "three leds")), [], []],
     ),
 )
 def test_Device_info(device_info, responses, handle, _name, _codename, number, protocol, registers, mock_base):