Repository: pwr-Solaar/Solaar

Issue:
`/dev/uinput` write permission (not sure if its granted)
**Information**
<!-- Make sure that your issue is not one of the known issues in the Solaar documentation at https://pwr-solaar.github.io/Solaar/ -->
<!-- Do not bother opening an issue for a version older than 1.1.0.  Upgrade to the latest version and see if your issue persists. -->
<!-- If you not running the current version of Solaar, strongly consider upgrading to the newest version. -->
- Solaar version (`solaar --version` or `git describe --tags` if cloned from this repository): 1.1.9
- Distribution: Fedora 38 Wayland
- Kernel version (ex. `uname -srmo`): Linux 6.3.12-200.fc38.x86_64 x86_64 GNU/Linux
- Output of `solaar show`:

<details>

```
solaar version 1.1.9

Bolt Receiver
  Device path  : /dev/hidraw9
  USB id       : 046d:C548
  Serial       : 32393243363931324237364332303434
  Has 1 paired device(s) out of a maximum of 6.
  Notifications: wireless, software present (0x000900)
  Device activity counters: 2=9

  2: MX Master 3S
     Device path  : None
     WPID         : B034
     Codename     : MX Master 3S
     Kind         : mouse
     Protocol     : HID++ 4.5
     Serial number: 29E2D456
     Model ID:      B03400000000
     Unit ID:       29E2D456
        Bootloader: BL1 69.01.B0006
          Firmware: RBM 22.01.B0006
             Other: 
     The power switch is located on the (unknown).
     Supports 36 HID++ 2.0 features:
         0: ROOT                   {0000} V0     
         1: FEATURE SET            {0001} V0     
         2: DEVICE FW VERSION      {0003} V4     
            Firmware: Bootloader BL1 69.01.B0006 B034BB5190E8
            Firmware: Firmware RBM 22.01.B0006 B034BB5190E8
            Firmware: Other   
            Unit ID: 29E2D456  Model ID: B03400000000  Transport IDs: {'btleid': 'B034'}
         3: DEVICE NAME            {0005} V0     
            Name: MX Master 3S
            Kind: mouse
         4: WIRELESS DEVICE STATUS {1D4B} V0     
         5: CONFIG CHANGE          {0020} V0     
         6: CRYPTO ID              {0021} V1     
         7: DEVICE FRIENDLY NAME   {0007} V0     
            Friendly Name: MX Master 3S
         8: UNIFIED BATTERY        {1004} V3     
            Battery: 85%, discharging.
         9: REPROG CONTROLS V4     {1B04} V5     
            Key/Button Actions (saved): {Left Button:Left Click, Right Button:Right Click, Middle Button:Mouse Middle Button, Back Button:Mouse Back Button, Forward Button:Mouse Forward Button, Mouse Gesture Button:Gesture Button Navigation, Smart Shift:Smart Shift}
            Key/Button Actions        : {Left Button:Left Click, Right Button:Right Click, Middle Button:Mouse Middle Button, Back Button:Mouse Back Button, Forward Button:Mouse Forward Button, Mouse Gesture Button:Gesture Button Navigation, Smart Shift:Smart Shift}
            Key/Button Diversion (saved): {Middle Button:Regular, Back Button:Regular, Forward Button:Regular, Mouse Gesture Button:Regular, Smart Shift:Regular}
            Key/Button Diversion        : {Middle Button:Regular, Back Button:Regular, Forward Button:Regular, Mouse Gesture Button:Regular, Smart Shift:Regular}
        10: CHANGE HOST            {1814} V1     
            Change Host        : 1:lamyer
        11: HOSTS INFO             {1815} V2     
            Host 0 (paired): lamyer
            Host 1 (paired): BHAVYAGUNTUPALL
            Host 2 (paired): lamyer
        12: XY STATS               {2250} V1     
        13: ADJUSTABLE DPI         {2201} V2     
            Sensitivity (DPI) (saved): 4000
            Sensitivity (DPI)        : 4000
        14: SMART SHIFT            {2110} V0     
            Scroll Wheel Ratcheted (saved): Ratcheted
            Scroll Wheel Ratcheted        : Ratcheted
            Scroll Wheel Ratchet Speed (saved): 10
            Scroll Wheel Ratchet Speed        : 10
        15: HIRES WHEEL            {2121} V1     
            Multiplier: 15
            Has invert: Normal wheel motion
            Has ratchet switch: Normal wheel mode
            Low resolution mode
            HID notification
            Scroll Wheel Direction (saved): False
            Scroll Wheel Direction        : False
            Scroll Wheel Resolution (saved): False
            Scroll Wheel Resolution        : False
            Scroll Wheel Diversion (saved): False
            Scroll Wheel Diversion        : False
        16: THUMB WHEEL            {2150} V0     
            Thumb Wheel Direction (saved): False
            Thumb Wheel Direction        : False
            Thumb Wheel Diversion (saved): False
            Thumb Wheel Diversion        : False
        17: WHEEL STATS            {2251} V0     
        18: DFUCONTROL             {00C3} V0     
        19: DEVICE RESET           {1802} V0    internal, hidden, unknown:000010 
        20: unknown:1803           {1803} V0    internal, hidden, unknown:000010 
        21: CONFIG DEVICE PROPS    {1806} V8    internal, hidden, unknown:000010 
        22: unknown:1816           {1816} V0    internal, hidden, unknown:000010 
        23: OOBSTATE               {1805} V0    internal, hidden 
        24: unknown:1830           {1830} V0    internal, hidden, unknown:000010 
        25: unknown:1891           {1891} V7    internal, hidden, unknown:000008 
        26: unknown:18A1           {18A1} V0    internal, hidden, unknown:000010 
        27: unknown:1E00           {1E00} V0    hidden 
        28: unknown:1E02           {1E02} V0    internal, hidden 
        29: unknown:1602           {1602} V0     
        30: unknown:1EB0           {1EB0} V0    internal, hidden, unknown:000010 
        31: unknown:1861           {1861} V1    internal, hidden, unknown:000010 
        32: unknown:9300           {9300} V0    internal, hidden, unknown:000010 
        33: unknown:9001           {9001} V0    internal, hidden, unknown:000010 
        34: unknown:1E22           {1E22} V0    internal, hidden, unknown:000010 
        35: unknown:9205           {9205} V0    internal, hidden, unknown:000010 
     Has 8 reprogrammable keys:
         0: Left Button               , default: Left Click                  => Left Click                
             mse, analytics key events, pos:0, group:1, group mask:g1
             reporting: default
         1: Right Button              , default: Right Click                 => Right Click               
             mse, analytics key events, pos:0, group:1, group mask:g1
             reporting: default
         2: Middle Button             , default: Mouse Middle Button         => Mouse Middle Button       
             mse, reprogrammable, divertable, raw XY, analytics key events, pos:0, group:2, group mask:g1,g2
             reporting: default
         3: Back Button               , default: Mouse Back Button           => Mouse Back Button         
             mse, reprogrammable, divertable, raw XY, analytics key events, pos:0, group:2, group mask:g1,g2
             reporting: default
         4: Forward Button            , default: Mouse Forward Button        => Mouse Forward Button      
             mse, reprogrammable, divertable, raw XY, analytics key events, pos:0, group:2, group mask:g1,g2
             reporting: default
         5: Mouse Gesture Button      , default: Gesture Button Navigation   => Gesture Button Navigation 
             mse, reprogrammable, divertable, raw XY, analytics key events, pos:0, group:2, group mask:g1,g2
             reporting: default
         6: Smart Shift               , default: Smart Shift                 => Smart Shift               
             mse, reprogrammable, divertable, raw XY, analytics key events, pos:0, group:2, group mask:g1,g2
             reporting: default
         7: Virtual Gesture Button    , default: Virtual Gesture Button      => Virtual Gesture Button    
             divertable, virtual, raw XY, force raw XY, pos:0, group:3, group mask:empty
             reporting: default
     Battery: 85%, discharging.
```
</details>

- Contents of `~/.config/solaar/config.yaml` (or `~/.config/solaar/config.json` if `~/.config/solaar/config.yaml` not present):

<details>

```
- 1.1.9
- _NAME: Wireless Mouse M185 new
  _modelId: '000000000000'
  _sensitive: {pointer_speed: false}
  _serial: 1D22C762
  _unitId: '00000000'
  _wpid: '4054'
  divert-keys: {82: 0}
  fn-swap: false
  lowres-scroll-mode: false
  lowres-smooth-scroll: false
  pointer_speed: 256
  reprogrammable-keys: {80: 80, 81: 81, 82: 82}
- _NAME: Wireless Keyboard MK270
  _modelId: '000000000000'
  _sensitive: {hires-scroll-mode: ignore, hires-smooth-invert: ignore, hires-smooth-resolution: ignore}
  _serial: '00000000'
  _unitId: '00000000'
  _wpid: '4023'
  fn-swap: false
- _NAME: Wireless Mouse M185 new
  _modelId: '000000000000'
  _sensitive: {hires-scroll-mode: ignore, hires-smooth-invert: ignore, hires-smooth-resolution: ignore}
  _serial: FB010AB5
  _unitId: '00000000'
  _wpid: '4054'
  divert-keys: {82: 0}
  lowres-scroll-mode: false
  pointer_speed: 256
  reprogrammable-keys: {80: 80, 81: 81, 82: 82}
- _NAME: M350 Wireless Mouse
  _absent: [hi-res-scroll, hires-smooth-invert, hires-smooth-resolution, hires-scroll-mode, scroll-ratchet, smart-shift, thumb-scroll-invert, thumb-scroll-mode,
    onboard_profiles, report_rate, pointer_speed, speed-change, backlight, backlight-timed, fn-swap, persistent-remappable-keys, disable-keyboard-keys,
    crown-smooth, divert-crown, divert-gkeys, m-key-leds, mr-key-led, multiplatform, gesture2-gestures, gesture2-divert, gesture2-params, sidetone, equalizer,
    adc_power_management]
  _battery: 4096
  _modelId: B02140800000
  _sensitive: {dpi: true, hires-scroll-mode: ignore, hires-smooth-invert: ignore, hires-smooth-resolution: ignore, lowres-scroll-mode: true}
  _unitId: AC2FB520
  change-host: null
  divert-keys: {82: 0}
  dpi: 4000
  lowres-scroll-mode: false
  reprogrammable-keys: {80: 80, 81: 81, 82: 82}
- _NAME: MX Master 3S
  _absent: [hi-res-scroll, lowres-scroll-mode, onboard_profiles, report_rate, pointer_speed, speed-change, backlight, backlight-timed, fn-swap, persistent-remappable-keys,
    disable-keyboard-keys, crown-smooth, divert-crown, divert-gkeys, m-key-leds, mr-key-led, multiplatform, gesture2-gestures, gesture2-divert, gesture2-params,
    sidetone, equalizer, adc_power_management]
  _battery: 4100
  _modelId: B03400000000
  _sensitive: {dpi: false, hires-smooth-resolution: false, reprogrammable-keys: false, scroll-ratchet: false, smart-shift: false}
  _serial: 29E2D456
  _unitId: 29E2D456
  _wpid: B034
  change-host: null
  divert-keys: {82: 0, 83: 0, 86: 0, 195: 0, 196: 0}
  dpi: 4000
  hires-scroll-mode: false
  hires-smooth-invert: false
  hires-smooth-resolution: false
  reprogrammable-keys: {80: 80, 81: 81, 82: 82, 83: 83, 86: 86, 195: 195, 196: 196}
  scroll-ratchet: 2
  smart-shift: 10
  thumb-scroll-invert: false
  thumb-scroll-mode: false
```
</details>


- Errors or warrnings from Solaar:
<!-- Under normal operation Solaar keeps a log of warning and error messages in ~/.tmp
while it is running as a file starting with 'Solaar'.
If this file is not available or does not have useful information you can
run Solaar as `solaar -dd`, after killing any running Solaar processes to
have Solaar log informational, warning, and error messages to stdout. -->

```
2023-07-30 18:56:29,265,265     INFO [MainThread] root: language en_GB (UTF-8), translations path None
2023-07-30 18:56:29,458,458     INFO [MainThread] logitech_receiver.diversion: GDK Keymap set up
2023-07-30 18:56:29,458,458  WARNING [MainThread] logitech_receiver.diversion: rules cannot access active process or modifier keys in Wayland
2023-07-30 18:56:29,459,459  WARNING [MainThread] logitech_receiver.diversion: cannot create uinput device: "/dev/uinput" cannot be opened for writing
2023-07-30 18:56:29,464,464     INFO [MainThread] logitech_receiver.diversion: loaded 1 rules from /home/lamy/.config/solaar/rules.yaml
2023-07-30 18:56:29,496,496     INFO [MainThread] solaar.upower: connected to system dbus, watching for suspend/resume events
2023-07-30 18:56:29,561,561     INFO [MainThread] solaar.ui.notify: starting desktop notifications
2023-07-30 18:56:29,689,689     INFO [MainThread] solaar.listener: starting receiver listening threads
2023-07-30 18:56:29,969,969     INFO [MainThread] hidapi.udev: Found device BID 0003 VID 0000046D PID 0000C548 HID++ True True USB 2 2
2023-07-30 18:56:29,970,970     INFO [MainThread] solaar.listener: receiver event add DeviceInfo(path='/dev/hidraw9', bus_id=3, vendor_id='046D', product_id='C548', interface=2, driver='hid-generic', manufacturer=None, product=None, serial='', release=None, isDevice=None, hidpp_short=True, hidpp_long=True)
2023-07-30 18:56:29,970,970     INFO [MainThread] logitech_receiver.base: New lock 14
2023-07-30 18:56:29,973,973     INFO [ReceiverListener:hidraw9] logitech_receiver.listener: started with <BoltReceiver(/dev/hidraw9,14)> (14)
2023-07-30 18:56:29,974,974     INFO [ReceiverListener:hidraw9] solaar.listener: <BoltReceiver(/dev/hidraw9,14)>: notifications listener has started (14)
2023-07-30 18:56:29,974,974     INFO [ReceiverListener:hidraw9] logitech_receiver.base: New lock <_ThreadedHandle(/dev/hidraw9)>
2023-07-30 18:56:29,978,978  WARNING [MainThread] hidapi.udev: Report Descriptor not processed for BID 0003 VID 000005AC PID 0000110A: Expecting 63 usages but got 1
2023-07-30 18:56:29,978,978     INFO [ReceiverListener:hidraw9] logitech_receiver.receiver: <BoltReceiver(/dev/hidraw9,14)>: receiver notifications enabled => ('wireless', 'software present')
2023-07-30 18:56:29,980,980  WARNING [MainThread] hidapi.udev: Report Descriptor not processed for BID 0003 VID 000032AC PID 00000002: Expecting 63 usages but got 1
2023-07-30 18:56:29,981,981  WARNING [MainThread] hidapi.udev: Report Descriptor not processed for BID 0018 VID 0000093A PID 00000274: Unsupported global tag: 0b101
2023-07-30 18:56:29,983,983     INFO [ReceiverListener:hidraw9] solaar.listener: status_changed <BoltReceiver(/dev/hidraw9,14)>: present, No paired devices. (0) 
2023-07-30 18:56:31,002,002     INFO [ReceiverListener:hidraw9] logitech_receiver.receiver: <BoltReceiver(/dev/hidraw9,14)>: found new device 2 (B034)
2023-07-30 18:56:31,002,002     INFO [ReceiverListener:hidraw9] solaar.listener: connection Notification(10,2,41,10,0234B0) for <Device(2,B034,MX Master 3S,29E2D456)> (mouse)
2023-07-30 18:56:31,148,148     INFO [ReceiverListener:hidraw9] solaar.listener: status_changed <BoltReceiver(/dev/hidraw9,14)>: present, 1 paired device. (0) 
2023-07-30 18:56:31,243,243     INFO [ReceiverListener:hidraw9] solaar.listener: status_changed <Device(2,B034,MX Master 3S,29E2D456)>: paired online, {'LINK ENCRYPTED': True, 'BATTERY LEVEL': 85, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': None, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (0) 
2023-07-30 18:56:31,753,753     INFO [ReceiverListener:hidraw9] logitech_receiver.status: <Device(2,B034,MX Master 3S,29E2D456)> pushing device settings [<Setting([feature:toggle] MX Master 3S:hires-smooth-invert=None)>, <Setting([feature:toggle] MX Master 3S:hires-smooth-resolution=None)>, <Setting([feature:toggle] MX Master 3S:hires-scroll-mode=None)>, <Setting([feature:choice] MX Master 3S:scroll-ratchet=None)>, <Setting([feature:range] MX Master 3S:smart-shift=None)>, <Setting([feature:toggle] MX Master 3S:thumb-scroll-invert=None)>, <Setting([feature:toggle] MX Master 3S:thumb-scroll-mode=None)>, <Setting([feature:choice] MX Master 3S:dpi=None)>, <Setting([feature:map choice] MX Master 3S:reprogrammable-keys=None)>, <Setting([feature:map choice] MX Master 3S:divert-keys=None)>, <Setting([feature:choice] MX Master 3S:change-host=None)>]
2023-07-30 18:56:32,421,421     INFO [ReceiverListener:hidraw9] solaar.listener: status_changed <Device(2,B034,MX Master 3S,29E2D456)>: paired online, {'LINK ENCRYPTED': True, 'BATTERY LEVEL': 85, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': None, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (0) 
```

**Describe the bug**
- As per [Rule Processing of HID++ Notifications  Solaar](https://pwr-solaar.github.io/Solaar/rules), I downloaded `https://raw.githubusercontent.com/pwr-Solaar/Solaar/master/rules.d-uinput/42-logitech-unify-permissions.rules` and copied it as root into the `/etc/udev/rules.d` directory and rebooted.

```
$ \cat /etc/udev/rules.d/42-logitech-unifying-receiver.rules
# This rule was added by Solaar.
#
# Allows non-root users to have raw access to Logitech devices.
# Allowing users to write to the device is potentially dangerous
# because they could perform firmware updates.

ACTION != "add", GOTO="solaar_end"
SUBSYSTEM != "hidraw", GOTO="solaar_end"

# USB-connected Logitech receivers and devices
ATTRS{idVendor}=="046d", GOTO="solaar_apply"

# Lenovo nano receiver
ATTRS{idVendor}=="17ef", ATTRS{idProduct}=="6042", GOTO="solaar_apply"

# Bluetooth-connected Logitech devices
KERNELS == "0005:046D:*", GOTO="solaar_apply"

GOTO="solaar_end"

LABEL="solaar_apply"

# Allow any seated user to access the receiver.
# uaccess: modern ACL-enabled udev
# udev-acl: for Ubuntu 12.10 and older
TAG+="uaccess", TAG+="udev-acl"

# Grant members of the "plugdev" group access to receiver (useful for SSH users)
#MODE="0660", GROUP="plugdev"

LABEL="solaar_end"
# vim: ft=udevrules
```

```
$ ls -la /etc/udev/rules.d/42-logitech-unifying-receiver.rules
-rw-r--r--. 1 root 910 Jun 30 21:46 /etc/udev/rules.d/42-logitech-unifying-receiver.rules
```

- But I get the following 

```
$ getfacl /dev/uinput
getfacl: Removing leading '/' from absolute path names
# file: dev/uinput
# owner: root
# group: root
user::rw-
group::---
other::---

$ ls -la /dev/uinput
crw-------. 1 root 10, 223 Jul 29 20:51 /dev/uinput
```
## Issue: Is it expected or is the write permission not granted?

Also, I added `~/.config/solaar/rules.yaml`

```
%YAML 1.3
---
- Rule:
  - MouseGesture: Mouse Right
  - KeyPress:
    - [Super_L, Page_Down]
    - click
- Rule:
  - MouseGesture: Mouse Left
  - KeyPress:
    - [Super_L, Page_Up]
    - click
- Rule:
  - MouseGesture: Mouse Up
  - KeyPress:
    - [Super_L, a]
    - click
- Rule:
  - MouseGesture: Mouse Down
  - KeyPress:
    - [Super_L, d]
    - click
- Rule:
  - And:
    - Key: [Mouse Gesture Button, released]
    - MouseGesture: []
  - KeyPress:
    - [Super_L, s]
    - click
...
```

But the rules don't work for Logitech Mx Master 3S as nothing moves.


![image](https://github.com/pwr-Solaar/Solaar/assets/42092626/79e3b8c3-d78e-473a-86d1-a3db0481d0c9)

![image](https://github.com/pwr-Solaar/Solaar/assets/42092626/032a3b50-d2e9-4acc-adc8-1838b275c426)




Discussion:
The udev rule that you need includes the line
```
KERNEL=="uinput", SUBSYSTEM=="misc", TAG+="uaccess", OPTIONS+="static_node=uinput"
```
which is not present in your listing so I expect that you need to reinstall the correct udev rule.

Note that installing or updating Solaar may install the other Solaar udev rule.
The output from getfacl is also missing permissions for you.   What I see is 
```
> getfacl /dev/uinput
getfacl: Removing leading '/' from absolute path names
# file: dev/uinput
# owner: root
# group: root
user::rw-
user:pfps:rw-
group::---
mask::rw-
other::---
```
You should see a line with your user name instead of `pfps`.

Is there anything more to be done here?
Hi,
My `getfacl /dev/uinput` output is same as you show and there is `KERNEL=="uinput", SUBSYSTEM=="misc", TAG+="uaccess", OPTIONS+="static_node=uinput"` line on my `42-logitech-unify-permissions.rules` file but i am still having warning `rules cannot access modifier keys in Wayland`

if i triger a rule from mouse, it is working but i can not triger the same action from keyboard. My full output is here;

```
abdullah@abdullah-EUL-WX9:~$ getfacl /dev/uinput
getfacl: Removing leading '/' from absolute path names
# file: dev/uinput
# owner: root
# group: root
user::rw-
user:abdullah:rw-
group::---
mask::rw-
other::---

abdullah@abdullah-EUL-WX9:~$ cat /etc/udev/rules.d/42-logitech-unify-permissions.rules
# This rule was added by Solaar.
#
# Allows non-root users to have raw access to Logitech devices.
# Allowing users to write to the device is potentially dangerous
# because they could perform firmware updates.
KERNEL=="uinput", SUBSYSTEM=="misc", TAG+="uaccess", OPTIONS+="static_node=uinput"

ACTION != "add", GOTO="solaar_end"
SUBSYSTEM != "hidraw", GOTO="solaar_end"

# USB-connected Logitech receivers and devices
ATTRS{idVendor}=="046d", GOTO="solaar_apply"

# Lenovo nano receiver
ATTRS{idVendor}=="17ef", ATTRS{idProduct}=="6042", GOTO="solaar_apply"

# Bluetooth-connected Logitech devices
KERNELS == "0005:046D:*", GOTO="solaar_apply"

GOTO="solaar_end"

LABEL="solaar_apply"

# Allow any seated user to access the receiver.
# uaccess: modern ACL-enabled udev
TAG+="uaccess"

# Grant members of the "plugdev" group access to receiver (useful for SSH users)
#MODE="0660", GROUP="plugdev"

LABEL="solaar_end"
# vim: ft=udevrules
abdullah@abdullah-EUL-WX9:~$ solaar -ddd
2023-09-28 16:54:46,841,841     INFO [MainThread] root: version 1.1.10, language en_US (UTF-8)
2023-09-28 16:54:46,997,997     INFO [MainThread] logitech_receiver.diversion: GDK Keymap set up
2023-09-28 16:54:46,997,997  WARNING [MainThread] logitech_receiver.diversion: rules cannot access modifier keys in Wayland, accessing process only works on GNOME with Solaar Gnome extension installed
2023-09-28 16:54:47,099,099     INFO [MainThread] logitech_receiver.diversion: uinput device set up
2023-09-28 16:54:47,101,101    DEBUG [MainThread] logitech_receiver.diversion: load rule: Rule(/home/abdullah/.config/solaar/rules.yaml)[Key: Mouse Gesture Button (released), Set: 3EBB3C9B change-host 2]
2023-09-28 16:54:47,101,101     INFO [MainThread] logitech_receiver.diversion: loaded 1 rules from /home/abdullah/.config/solaar/rules.yaml
2023-09-28 16:54:47,114,114    DEBUG [MainThread] solaar.ui.tray: using Ayatana AppIndicator3
2023-09-28 16:54:47,117,117     INFO [MainThread] solaar.upower: connected to system dbus, watching for suspend/resume events
Another Solaar process is already running so just expose its window
```
Accessing modifier keys is different from simulating input so the warning is not relevant.
Run Solaar as `solaar -ddd` and post the output around when you are trying to run the rule that simulates keyboard input.  Also post your rules file.
```
abdullah@abdullah-EUL-WX9:~$ solaar -ddd
2023-09-29 08:48:19,445,445     INFO [MainThread] root: version 1.1.10, language en_US (UTF-8)
2023-09-29 08:48:19,603,603     INFO [MainThread] logitech_receiver.diversion: GDK Keymap set up
2023-09-29 08:48:19,603,603  WARNING [MainThread] logitech_receiver.diversion: rules cannot access modifier keys in Wayland, accessing process only works on GNOME with Solaar Gnome extension installed
2023-09-29 08:48:19,705,705     INFO [MainThread] logitech_receiver.diversion: uinput device set up
2023-09-29 08:48:19,708,708    DEBUG [MainThread] logitech_receiver.diversion: load rule: Rule(/home/abdullah/.config/solaar/rules.yaml)[Key: Mouse Gesture Button (released), Set: 3EBB3C9B change-host 2]
2023-09-29 08:48:19,708,708     INFO [MainThread] logitech_receiver.diversion: loaded 1 rules from /home/abdullah/.config/solaar/rules.yaml
2023-09-29 08:48:19,725,725    DEBUG [MainThread] solaar.ui.tray: using Ayatana AppIndicator3
2023-09-29 08:48:19,728,728     INFO [MainThread] solaar.upower: connected to system dbus, watching for suspend/resume events
2023-09-29 08:48:19,770,770    DEBUG [MainThread] solaar.ui: startup registered=True, remote=False
2023-09-29 08:48:19,771,771    DEBUG [AsyncUI] solaar.tasks: started
2023-09-29 08:48:19,771,771     INFO [MainThread] solaar.ui.notify: starting desktop notifications
2023-09-29 08:48:19,773,773    DEBUG [MainThread] solaar.ui.icons: sys.path[0] = /home/abdullah/.local/bin
2023-09-29 08:48:19,774,774    DEBUG [MainThread] solaar.ui.icons: looking for icons in /home/abdullah/.local/icons
2023-09-29 08:48:19,774,774    DEBUG [MainThread] solaar.ui.icons: looking for icons in /home/abdullah/.local/share/solaar/icons
2023-09-29 08:48:19,774,774    DEBUG [MainThread] solaar.ui.icons: icon theme paths: ['/home/abdullah/.local/share/solaar/icons', '/home/abdullah/.local/share/icons', '/home/abdullah/.icons', '/usr/share/ubuntu/icons', '/usr/share/gnome/icons', '/usr/local/share/icons', '/usr/share/icons', '/var/lib/snapd/desktop/icons', '/usr/share/ubuntu/pixmaps', '/usr/share/gnome/pixmaps', '/usr/local/share/pixmaps', '/usr/share/pixmaps', '/var/lib/snapd/desktop/pixmaps']
2023-09-29 08:48:19,826,826     INFO [MainThread] solaar.listener: starting receiver listening threads
2023-09-29 08:48:19,961,961     INFO [MainThread] hidapi.udev: Found device BID 0003 VID 0000046D PID 0000C52B HID++ True True USB 2 2
2023-09-29 08:48:19,961,961     INFO [MainThread] solaar.listener: receiver event add DeviceInfo(path='/dev/hidraw2', bus_id=3, vendor_id='046D', product_id='C52B', interface=2, driver='logitech-djreceiver', manufacturer=None, product=None, serial='', release=None, isDevice=None, hidpp_short=True, hidpp_long=True)
2023-09-29 08:48:19,962,962     INFO [MainThread] hidapi.udev: OPEN PATH /dev/hidraw2
2023-09-29 08:48:19,962,962     INFO [MainThread] logitech_receiver.base: New lock 17
2023-09-29 08:48:19,962,962    DEBUG [MainThread] logitech_receiver.base: (17) <= w[10 FF 83B5 030000]
2023-09-29 08:48:19,964,964    DEBUG [MainThread] logitech_receiver.base: (17) => r[11 FF 83B5 0361E9957D0106070000000000000000]
2023-09-29 08:48:19,964,964     INFO [ReceiverListener:hidraw2] logitech_receiver.listener: started with <UnifyingReceiver(/dev/hidraw2,17)> (17)
2023-09-29 08:48:19,964,964     INFO [ReceiverListener:hidraw2] solaar.listener: <UnifyingReceiver(/dev/hidraw2,17)>: notifications listener has started (17)
2023-09-29 08:48:19,964,964     INFO [ReceiverListener:hidraw2] logitech_receiver.base: New lock <_ThreadedHandle(/dev/hidraw2)>
2023-09-29 08:48:19,964,964    DEBUG [ReceiverListener:hidraw2] logitech_receiver.base: (17) <= w[10 FF 8000 100900]
2023-09-29 08:48:19,966,966    DEBUG [ReceiverListener:hidraw2] logitech_receiver.base: (17) => r[20 01 4101 8A401E4000000400000000]
2023-09-29 08:48:19,970,970    DEBUG [ReceiverListener:hidraw2] logitech_receiver.base: (17) => r[20 00 4102 0000000000000000000000]
2023-09-29 08:48:19,970,970    DEBUG [ReceiverListener:hidraw2] logitech_receiver.base: (17) => r[10 FF 8000 000000]
2023-09-29 08:48:19,971,971    DEBUG [ReceiverListener:hidraw2] logitech_receiver.base: (17) <= w[10 FF 8100 000000]
2023-09-29 08:48:19,971,971     INFO [MainThread] hidapi.udev: Found device BID 0003 VID 0000046D PID 0000C548 HID++ True True USB 2 2
2023-09-29 08:48:19,971,971     INFO [MainThread] solaar.listener: receiver event add DeviceInfo(path='/dev/hidraw7', bus_id=3, vendor_id='046D', product_id='C548', interface=2, driver='hid-generic', manufacturer=None, product=None, serial='', release=None, isDevice=None, hidpp_short=True, hidpp_long=True)
2023-09-29 08:48:19,972,972     INFO [MainThread] hidapi.udev: OPEN PATH /dev/hidraw7
2023-09-29 08:48:19,972,972     INFO [MainThread] logitech_receiver.base: New lock 18
2023-09-29 08:48:19,972,972    DEBUG [MainThread] logitech_receiver.base: (18) <= w[10 FF 83FB 000000]
2023-09-29 08:48:19,972,972    DEBUG [ReceiverListener:hidraw2] logitech_receiver.base: (17) => r[10 FF 8100 000900]
2023-09-29 08:48:19,972,972     INFO [ReceiverListener:hidraw2] logitech_receiver.receiver: <UnifyingReceiver(/dev/hidraw2,17)>: receiver notifications enabled => ('wireless', 'software present')
2023-09-29 08:48:19,972,972    DEBUG [ReceiverListener:hidraw2] logitech_receiver.base: (17) <= w[10 FF 8002 020000]
2023-09-29 08:48:19,973,973    DEBUG [MainThread] logitech_receiver.base: (18) => r[11 FF 83FB 44423443373032423936313142314145]
2023-09-29 08:48:19,973,973     INFO [ReceiverListener:hidraw7] logitech_receiver.listener: started with <BoltReceiver(/dev/hidraw7,18)> (18)
2023-09-29 08:48:19,973,973     INFO [ReceiverListener:hidraw7] solaar.listener: <BoltReceiver(/dev/hidraw7,18)>: notifications listener has started (18)
2023-09-29 08:48:19,973,973     INFO [ReceiverListener:hidraw7] logitech_receiver.base: New lock <_ThreadedHandle(/dev/hidraw7)>
2023-09-29 08:48:19,974,974    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) <= w[10 FF 8000 100900]
2023-09-29 08:48:19,974,974    DEBUG [ReceiverListener:hidraw2] logitech_receiver.base: (17) => r[10 01 4104 718A40]
2023-09-29 08:48:19,974,974  WARNING [MainThread] hidapi.udev: Report Descriptor not processed for BID 0018 VID 000004F3 PID 00003114: Expecting 4 usages but got 2
2023-09-29 08:48:19,975,975  WARNING [MainThread] hidapi.udev: Report Descriptor not processed for BID 0018 VID 000006CB PID 00001A1B: Unsupported global tag: 0b101
2023-09-29 08:48:19,975,975    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) => r[10 FF 8000 000000]
2023-09-29 08:48:19,975,975    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) <= w[10 FF 8100 000000]
2023-09-29 08:48:19,975,975     INFO [MainThread] hidapi.udev: Found device BID 0005 VID 0000046D PID 0000B034 HID++ False True USB None None
2023-09-29 08:48:19,976,976     INFO [MainThread] solaar.listener: receiver event add DeviceInfo(path='/dev/hidraw8', bus_id=5, vendor_id='046D', product_id='B034', interface=None, driver='logitech-hidpp-device', manufacturer=None, product=None, serial='d9:ab:c3:0a:f7:b4', release=None, isDevice=True, hidpp_short=False, hidpp_long=True)
2023-09-29 08:48:19,976,976     INFO [MainThread] hidapi.udev: OPEN PATH /dev/hidraw8
2023-09-29 08:48:19,976,976    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) => r[10 FF 8100 000900]
2023-09-29 08:48:19,976,976     INFO [ReceiverListener:hidraw7] logitech_receiver.receiver: <BoltReceiver(/dev/hidraw7,18)>: receiver notifications enabled => ('wireless', 'software present')
2023-09-29 08:48:19,976,976    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) pinging device 255
2023-09-29 08:48:19,976,976    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) <= w[10 FF 8002 020000]
2023-09-29 08:48:19,976,976    DEBUG [ReceiverListener:hidraw2] logitech_receiver.base: (17) => r[10 FF 8002 000000]
2023-09-29 08:48:19,976,976     INFO [ReceiverListener:hidraw8] logitech_receiver.base: New lock <_ThreadedHandle(/dev/hidraw8)>
2023-09-29 08:48:19,977,977    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 001B 0000EA00000000000000000000000000]
2023-09-29 08:48:19,982,982    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) => r[10 02 4110 4234B0]
2023-09-29 08:48:19,982,982    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) => r[10 FF 8002 000000]
2023-09-29 08:48:20,413,413    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 001B 0405EA00000000000000000000000000]
2023-09-29 08:48:20,413,413    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 000C 00010000000000000000000000000000]
2023-09-29 08:48:20,440,440    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 000C 01000200000000000000000000000000]
2023-09-29 08:48:20,440,440    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 010C 00000000000000000000000000000000]
2023-09-29 08:48:20,456,456    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 010C 23000000000000000000000000000000]
2023-09-29 08:48:20,456,456    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 000E 00050000000000000000000000000000]
2023-09-29 08:48:20,484,484    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 000E 03000000000000000000000000000000]
2023-09-29 08:48:20,485,485    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 030C 00000000000000000000000000000000]
2023-09-29 08:48:20,508,508    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 030C 0C000000000000000000000000000000]
2023-09-29 08:48:20,508,508    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 031D 00000000000000000000000000000000]
2023-09-29 08:48:20,540,540    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 031D 4D58204D617374657220335300000000]
2023-09-29 08:48:19,976,976     INFO [ReceiverListener:hidraw8] logitech_receiver.listener: started with <Device(255,B034,MX Master 3S,)> (19)
2023-09-29 08:48:19,977,977     INFO [ReceiverListener:hidraw2] solaar.listener: status_changed <UnifyingReceiver(/dev/hidraw2,17)>: present, No paired devices. (0) 
2023-09-29 08:48:19,982,982     INFO [MainThread] hidapi.udev: Found device BID 0005 VID 0000046D PID 0000B35B HID++ False True USB None None
2023-09-29 08:48:20,541,541     INFO [ReceiverListener:hidraw8] solaar.listener: <Device(255,B034,MX Master 3S,)>: notifications listener has started (19)
2023-09-29 08:48:19,982,982     INFO [ReceiverListener:hidraw7] solaar.listener: status_changed <BoltReceiver(/dev/hidraw7,18)>: present, No paired devices. (0) 
2023-09-29 08:48:20,542,542    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 032A 00000000000000000000000000000000]
2023-09-29 08:48:20,542,542     INFO [ReceiverListener:hidraw2] solaar.listener: ignoring DJ pairing notification Notification(20,1,41,01,8A401E4000000400000000)
2023-09-29 08:48:20,542,542     INFO [MainThread] solaar.listener: receiver event add DeviceInfo(path='/dev/hidraw4', bus_id=5, vendor_id='046D', product_id='B35B', interface=None, driver='hid-generic', manufacturer=None, product=None, serial='f1:82:b3:d6:b0:5f', release=None, isDevice=True, hidpp_short=False, hidpp_long=True)
2023-09-29 08:48:20,544,544     INFO [ReceiverListener:hidraw2] solaar.listener: ignoring DJ pairing notification Notification(20,0,41,02,0000000000000000000000)
2023-09-29 08:48:20,544,544     INFO [MainThread] hidapi.udev: OPEN PATH /dev/hidraw4
2023-09-29 08:48:20,545,545     INFO [ReceiverListener:hidraw4] logitech_receiver.listener: started with <Device(255,B35B,MX Keys Keyboard,)> (22)
2023-09-29 08:48:20,545,545     INFO [ReceiverListener:hidraw4] solaar.listener: <Device(255,B35B,MX Keys Keyboard,)>: notifications listener has started (22)
2023-09-29 08:48:20,546,546     INFO [ReceiverListener:hidraw4] solaar.listener: status_changed <Device(255,B35B,MX Keys Keyboard,)>: paired offline, {'NOTIFICATION FLAGS': False} (0) 
2023-09-29 08:48:20,546,546    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) pinging device 255
2023-09-29 08:48:20,546,546     INFO [ReceiverListener:hidraw4] logitech_receiver.base: New lock <_ThreadedHandle(/dev/hidraw4)>
2023-09-29 08:48:20,546,546    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 001E 0000E000000000000000000000000000]
2023-09-29 08:48:20,547,547    DEBUG [MainThread] solaar.ui: activate
2023-09-29 08:48:20,550,550     INFO [ReceiverListener:hidraw2] hidapi.udev: OPEN PATH /dev/hidraw3
2023-09-29 08:48:20,550,550     INFO [ReceiverListener:hidraw2] logitech_receiver.receiver: <UnifyingReceiver(/dev/hidraw2,17)>: found new device 1 (408A)
2023-09-29 08:48:20,551,551    DEBUG [ReceiverListener:hidraw2] logitech_receiver.base: (17) <= w[10 FF 83B5 300000]
2023-09-29 08:48:20,554,554    DEBUG [ReceiverListener:hidraw2] logitech_receiver.base: (17) => r[11 FF 83B5 30028C98161E40000003000000000000]
2023-09-29 08:48:20,554,554    DEBUG [MainThread] solaar.ui: status changed: <UnifyingReceiver(/dev/hidraw2,17)> (NONE) None
2023-09-29 08:48:20,551,551     INFO [ReceiverListener:hidraw2] solaar.listener: connection Notification(10,1,41,04,718A40) for <Device(1,408A,MX Keys Keyboard,028C9816)> (keyboard)
2023-09-29 08:48:20,555,555     INFO [ReceiverListener:hidraw2] solaar.listener: status_changed <UnifyingReceiver(/dev/hidraw2,17)>: present, 1 paired device. (0) 
2023-09-29 08:48:20,555,555    DEBUG [ReceiverListener:hidraw2] logitech_receiver.notifications: <Device(1,408A,MX Keys Keyboard,028C9816)>: protocol 4 connection notification: software=True, encrypted=True, link=False, payload=False
2023-09-29 08:48:20,555,555     INFO [ReceiverListener:hidraw2] solaar.listener: status_changed <Device(1,408A,MX Keys Keyboard,028C9816)>: paired offline, {'LINK ENCRYPTED': True} (0) 
2023-09-29 08:48:20,556,556    DEBUG [MainThread] solaar.ui.window: new receiver row ('/dev/hidraw2', 0, True, 'Unifying Receiver', 'preferences-desktop-peripherals', None, None, <UnifyingReceiver(/dev/hidraw2,17)>)
2023-09-29 08:48:20,556,556    DEBUG [MainThread] solaar.ui: status changed: <BoltReceiver(/dev/hidraw7,18)> (NONE) None
2023-09-29 08:48:20,557,557    DEBUG [MainThread] solaar.ui.window: new receiver row ('/dev/hidraw7', 0, True, 'Bolt Receiver', 'preferences-desktop-peripherals', None, None, <BoltReceiver(/dev/hidraw7,18)>)
2023-09-29 08:48:20,557,557    DEBUG [MainThread] solaar.ui: status changed: <Device(255,B35B,MX Keys Keyboard,)> (NONE) None
2023-09-29 08:48:20,558,558    DEBUG [MainThread] solaar.ui.icons: battery icon for None:None = battery-missing
2023-09-29 08:48:20,558,558    DEBUG [MainThread] solaar.ui.tray: picked device with lowest battery: None
2023-09-29 08:48:20,558,558    DEBUG [MainThread] solaar.ui.window: new device row ('/dev/hidraw4', 255, False, 'MX Keys', 'input-keyboard', None, None, <Device(255,B35B,MX Keys Keyboard,)>) at index 0
2023-09-29 08:48:20,567,567    DEBUG [MainThread] solaar.configuration: load => ['1.1.10', {'_NAME': 'MX Master 3S', '_absent': ['hi-res-scroll', 'lowres-scroll-mode', 'onboard_profiles', 'report_rate', 'pointer_speed', 'speed-change', 'backlight', 'backlight-timed', 'fn-swap', 'persistent-remappable-keys', 'disable-keyboard-keys', 'crown-smooth', 'divert-crown', 'divert-gkeys', 'm-key-leds', 'mr-key-led', 'multiplatform', 'gesture2-gestures', 'gesture2-divert', 'gesture2-params', 'sidetone', 'equalizer', 'adc_power_management'], '_battery': 4100, '_dpi-sliding': 16, '_modelId': 'B03400000000', '_sensitive': {'change-host': True, 'divert-keys': True, 'dpi': True, 'hires-smooth-invert': True, 'reprogrammable-keys': True}, '_serial': '3EBB3C9B', '_unitId': '3EBB3C9B', '_wpid': 'B034', 'change-host': None, 'divert-keys': {82: 0, 83: 0, 86: 0, 195: 2, 196: 0}, 'dpi': 4000, 'hires-scroll-mode': False, 'hires-smooth-invert': False, 'hires-smooth-resolution': True, 'reprogrammable-keys': {80: 80, 81: 81, 82: 82, 83: 83, 86: 86, 195: 195, 196: 196}, 'scroll-ratchet': 2, 'smart-shift': 10, 'thumb-scroll-invert': False, 'thumb-scroll-mode': False}, {'_NAME': 'MX Keys 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', 'onboard_profiles', 'report_rate', 'pointer_speed', 'dpi', 'speed-change', 'backlight-timed', 'reprogrammable-keys', 'persistent-remappable-keys', 'crown-smooth', 'divert-crown', 'divert-gkeys', 'm-key-leds', 'mr-key-led', 'gesture2-gestures', 'gesture2-divert', 'gesture2-params', 'sidetone', 'equalizer', 'adc_power_management'], '_battery': 4096, '_modelId': 'B35B408A0000', '_sensitive': {'backlight': False, 'change-host': True, 'divert-keys': True, 'multiplatform': True}, '_serial': '028C9816', '_unitId': '028C9816', '_wpid': '408A', 'backlight': True, 'change-host': None, 'disable-keyboard-keys': {1: False, 2: False, 4: False, 8: False, 16: False}, 'divert-keys': {10: 0, 110: 0, 111: 0, 191: 0, 199: 0, 200: 0, 209: 0, 210: 0, 211: 0, 224: 0, 225: 0, 226: 0, 227: 0, 228: 0, 229: 0, 230: 0, 231: 0, 232: 0, 233: 0, 234: 0, 235: 0, 236: 0}, 'fn-swap': True, 'multiplatform': 0}, {'_sensitive': {'hires-scroll-mode': 'ignore', 'hires-smooth-invert': 'ignore', 'hires-smooth-resolution': 'ignore'}}]
2023-09-29 08:48:20,568,568    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 032A 03000000000000000000000000000000]
2023-09-29 08:48:20,567,567     INFO [MainThread] solaar.configuration: not setting up persister for offline device MX Keys Keyboard with missing serial number
2023-09-29 08:48:20,568,568     INFO [ReceiverListener:hidraw8] solaar.listener: status_changed <Device(255,B034,MX Master 3S,)>: paired online, {'NOTIFICATION FLAGS': False} (0) 
2023-09-29 08:48:20,568,568    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) pinging device 255
2023-09-29 08:48:20,568,568    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 001C 00002500000000000000000000000000]
2023-09-29 08:48:20,584,584    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 001C 04052500000000000000000000000000]
2023-09-29 08:48:20,584,584    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0009 00030000000000000000000000000000]
2023-09-29 08:48:20,591,591    DEBUG [MainThread] solaar.ui: status changed: <UnifyingReceiver(/dev/hidraw2,17)> (NONE) None
2023-09-29 08:48:20,592,592    DEBUG [MainThread] solaar.ui: status changed: <Device(1,408A,MX Keys Keyboard,028C9816)> (NONE) None
2023-09-29 08:48:20,592,592    DEBUG [MainThread] solaar.ui.icons: battery icon for None:None = battery-missing
2023-09-29 08:48:20,592,592    DEBUG [MainThread] solaar.ui.tray: picked device with lowest battery: None
2023-09-29 08:48:20,593,593    DEBUG [MainThread] solaar.ui.window: new device row ('/dev/hidraw2', 1, False, 'MX Keys', 'input-keyboard', None, None, <Device(1,408A,MX Keys Keyboard,028C9816)>) at index 0
2023-09-29 08:48:20,593,593    DEBUG [MainThread] solaar.ui: status changed: <Device(255,B034,MX Master 3S,)> (NONE) None
2023-09-29 08:48:20,594,594    DEBUG [MainThread] solaar.ui.icons: battery icon for None:None = battery-missing
2023-09-29 08:48:20,594,594    DEBUG [MainThread] solaar.ui.tray: picked device with lowest battery: None
2023-09-29 08:48:20,612,612    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0009 02000400000000000000000000000000]
2023-09-29 08:48:20,612,612     INFO [MainThread] hidapi.udev: OPEN PATH /dev/hidraw8
2023-09-29 08:48:20,612,612    DEBUG [MainThread] logitech_receiver.base: (25) <= w[11 FF 000B 00070000000000000000000000000000]
2023-09-29 08:48:20,632,632    DEBUG [MainThread] logitech_receiver.base: (25) => r[11 FF 000B 07000000000000000000000000000000]
2023-09-29 08:48:20,632,632    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 020C 00000000000000000000000000000000]
2023-09-29 08:48:20,652,652    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 020C 033EBB3C9B0002B03400000000000100]
2023-09-29 08:48:20,652,652    DEBUG [MainThread] logitech_receiver.base: (25) <= w[11 FF 070E 00000000000000000000000000000000]
2023-09-29 08:48:20,676,676    DEBUG [MainThread] logitech_receiver.base: (25) => r[11 FF 070E 0C120C00000000000000000000000000]
2023-09-29 08:48:20,676,676    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 000E 10040000000000000000000000000000]
2023-09-29 08:48:20,708,708    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 000E 08000300000000000000000000000000]
2023-09-29 08:48:20,708,708    DEBUG [MainThread] logitech_receiver.base: (25) <= w[11 FF 071C 00000000000000000000000000000000]
2023-09-29 08:48:20,732,732    DEBUG [MainThread] logitech_receiver.base: (25) => r[11 FF 071C 004D58204D6173746572203353000000]
2023-09-29 08:48:20,732,732    DEBUG [MainThread] solaar.ui.window: new device row ('/dev/hidraw8', 255, True, 'MX Master 3S', 'input-mouse', None, None, <Device(255,B034,MX Master 3S,)>) at index 0
2023-09-29 08:48:20,732,732    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 081F 00000000000000000000000000000000]
2023-09-29 08:48:20,748,748    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 081F 23040000000000000000000000000000]
2023-09-29 08:48:20,748,748    DEBUG [ReceiverListener:hidraw8] logitech_receiver.hidpp20: battery unified 35% charged, level 4, charging discharging
2023-09-29 08:48:20,748,748    DEBUG [ReceiverListener:hidraw8] logitech_receiver.status: <Device(255,B034,MX Master 3S,)>: battery 35, discharging
2023-09-29 08:48:20,748,748     INFO [ReceiverListener:hidraw8] solaar.listener: status_changed <Device(255,B034,MX Master 3S,)>: paired online, {'NOTIFICATION FLAGS': False, 'BATTERY LEVEL': 35, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': None, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (0) 
2023-09-29 08:48:20,748,748    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0008 21210000000000000000000000000000]
2023-09-29 08:48:20,748,748    DEBUG [MainThread] solaar.ui: status changed: <Device(255,B034,MX Master 3S,)> (NONE) None
2023-09-29 08:48:20,748,748    DEBUG [MainThread] solaar.ui.icons: battery icon for 35:False = battery-good
2023-09-29 08:48:20,749,749    DEBUG [MainThread] solaar.ui.tray: picked device with lowest battery: ('/dev/hidraw8', 255, 'MX Master 3S', {'NOTIFICATION FLAGS': False, 'BATTERY LEVEL': 35, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': None, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None})
2023-09-29 08:48:20,749,749    DEBUG [MainThread] solaar.ui.icons: battery icon for 35:False = battery-good
2023-09-29 08:48:20,751,751    DEBUG [MainThread] solaar.ui.icons: battery icon for 35:False = battery-good
2023-09-29 08:48:20,768,768    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0008 0F000100000000000000000000000000]
2023-09-29 08:48:20,768,768    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings_templates: check_feature hires-smooth-invert [HIRES WHEEL] detected <Setting([feature:toggle] MX Master 3S:hires-smooth-invert=None)>
2023-09-29 08:48:20,768,768    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings_templates: check_feature hires-smooth-resolution [HIRES WHEEL] detected <Setting([feature:toggle] MX Master 3S:hires-smooth-resolution=None)>
2023-09-29 08:48:20,768,768    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings_templates: check_feature hires-scroll-mode [HIRES WHEEL] detected <Setting([feature:toggle] MX Master 3S:hires-scroll-mode=None)>
2023-09-29 08:48:20,768,768    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0008 21100000000000000000000000000000]
2023-09-29 08:48:20,788,788    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0008 0E000000000000000000000000000000]
2023-09-29 08:48:20,788,788    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings_templates: check_feature scroll-ratchet [SMART SHIFT] detected <Setting([feature:choice] MX Master 3S:scroll-ratchet=None)>
2023-09-29 08:48:20,788,788    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings_templates: check_feature smart-shift [SMART SHIFT] detected <Setting([feature:range] MX Master 3S:smart-shift=None)>
2023-09-29 08:48:20,788,788    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0009 21500000000000000000000000000000]
2023-09-29 08:48:20,812,812    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0009 10000000000000000000000000000000]
2023-09-29 08:48:20,812,812    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings_templates: check_feature thumb-scroll-invert [THUMB WHEEL] detected <Setting([feature:toggle] MX Master 3S:thumb-scroll-invert=None)>
2023-09-29 08:48:20,812,812    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings_templates: check_feature thumb-scroll-mode [THUMB WHEEL] detected <Setting([feature:toggle] MX Master 3S:thumb-scroll-mode=None)>
2023-09-29 08:48:20,812,812    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0009 22010000000000000000000000000000]
2023-09-29 08:48:20,832,832    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0009 0D000200000000000000000000000000]
2023-09-29 08:48:20,832,832    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0D18 00000000000000000000000000000000]
2023-09-29 08:48:20,856,856    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0D18 0000C8E0321F40000000000000000000]
2023-09-29 08:48:20,856,856    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings_templates: check_feature dpi [ADJUSTABLE DPI] detected <Setting([feature:choice] MX Master 3S:dpi=None)>
2023-09-29 08:48:20,856,856    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 000C 1B040000000000000000000000000000]
2023-09-29 08:48:20,884,884    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 000C 09000500000000000000000000000000]
2023-09-29 08:48:20,884,884    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 000C 1B010000000000000000000000000000]
2023-09-29 08:48:20,909,909    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 000C 00000000000000000000000000000000]
2023-09-29 08:48:20,909,909    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 090F 00000000000000000000000000000000]
2023-09-29 08:48:20,924,924    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 001E 0405E000000000000000000000000000]
2023-09-29 08:48:20,924,924    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 000C 00010000000000000000000000000000]
2023-09-29 08:48:20,940,940    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 090F 08000000000000000000000000000000]
2023-09-29 08:48:20,940,940    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 091C 00000000000000000000000000000000]
2023-09-29 08:48:20,964,964    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 091C 00500038010001010400000000000000]
2023-09-29 08:48:20,964,964    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0919 01000000000000000000000000000000]
2023-09-29 08:48:20,964,964    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 000C 01000100000000000000000000000000]
2023-09-29 08:48:20,964,964    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 010E 00000000000000000000000000000000]
2023-09-29 08:48:20,984,984    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0919 00510039010001010400000000000000]
2023-09-29 08:48:20,984,984    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0918 02000000000000000000000000000000]
2023-09-29 08:48:21,009,009    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 010E 1D000000000000000000000000000000]
2023-09-29 08:48:21,009,009    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0009 00030000000000000000000000000000]
2023-09-29 08:48:21,009,009    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0918 0052003A310002030500000000000000]
2023-09-29 08:48:21,009,009    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 091D 03000000000000000000000000000000]
2023-09-29 08:48:21,024,024    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 091D 0053003C310002030500000000000000]
2023-09-29 08:48:21,024,024    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0919 04000000000000000000000000000000]
2023-09-29 08:48:21,040,040    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0919 0056003E310002030500000000000000]
2023-09-29 08:48:21,040,040    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0918 05000000000000000000000000000000]
2023-09-29 08:48:21,052,052    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0009 02000200000000000000000000000000]
2023-09-29 08:48:21,052,052    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 020A 00000000000000000000000000000000]
2023-09-29 08:48:21,052,052    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0918 00C300A9310002030500000000000000]
2023-09-29 08:48:21,052,052    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 091F 06000000000000000000000000000000]
2023-09-29 08:48:21,073,073    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 091F 00C4009D310002030500000000000000]
2023-09-29 08:48:21,073,073    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0919 07000000000000000000000000000000]
2023-09-29 08:48:21,100,100    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0919 00D700B4A00003000300000000000000]
2023-09-29 08:48:21,100,100    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings_templates: check_feature reprogrammable-keys [REPROG CONTROLS V4] detected <Setting([feature:map choice] MX Master 3S:reprogrammable-keys=None)>
2023-09-29 08:48:21,100,100    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings_templates: check_feature divert-keys [REPROG CONTROLS V4] detected <Setting([feature:map choice] MX Master 3S:divert-keys=None)>
2023-09-29 08:48:21,100,100    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 000F 18140000000000000000000000000000]
2023-09-29 08:48:21,100,100    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 020A 03028C98160006B35B408A0000000000]
2023-09-29 08:48:21,101,101    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 000D 10000000000000000000000000000000]
2023-09-29 08:48:21,116,116    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 000F 0A000100000000000000000000000000]
2023-09-29 08:48:21,116,116    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0A0A 00000000000000000000000000000000]
2023-09-29 08:48:21,140,140    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 000D 07000100000000000000000000000000]
2023-09-29 08:48:21,140,140    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 070E 00000000000000000000000000000000]
2023-09-29 08:48:21,148,148    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0A0A 03010000000000000000000000000000]
2023-09-29 08:48:21,148,148    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 000E 18150000000000000000000000000000]
2023-09-29 08:48:21,168,168    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 000E 0B000200000000000000000000000000]
2023-09-29 08:48:21,168,168    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0B0D 00000000000000000000000000000000]
2023-09-29 08:48:21,184,184    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 070E 32140000000000000000000000000000]
2023-09-29 08:48:21,184,184    DEBUG [ReceiverListener:hidraw4] logitech_receiver.hidpp20: battery status 50% charged, next 20%, status discharging
2023-09-29 08:48:21,184,184    DEBUG [ReceiverListener:hidraw4] logitech_receiver.status: <Device(255,B35B,MX Keys Keyboard,)>: battery 50, discharging
2023-09-29 08:48:21,184,184     INFO [ReceiverListener:hidraw4] solaar.listener: status_changed <Device(255,B35B,MX Keys Keyboard,)>: paired online, {'NOTIFICATION FLAGS': False, 'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (0) 
2023-09-29 08:48:21,184,184    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 000C 19820000000000000000000000000000]
2023-09-29 08:48:21,184,184    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0B0D 13080301000000000000000000000000]
2023-09-29 08:48:21,184,184    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0B1B 00000000000000000000000000000000]
2023-09-29 08:48:21,184,184    DEBUG [MainThread] solaar.ui: status changed: <Device(255,B35B,MX Keys Keyboard,)> (NONE) None
2023-09-29 08:48:21,184,184    DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good
2023-09-29 08:48:21,185,185    DEBUG [MainThread] solaar.ui.tray: picked device with lowest battery: ('/dev/hidraw8', 255, 'MX Master 3S', {'NOTIFICATION FLAGS': False, 'BATTERY LEVEL': 35, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': None, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None})
2023-09-29 08:48:21,185,185    DEBUG [MainThread] solaar.ui.icons: battery icon for 35:False = battery-good
2023-09-29 08:48:21,185,185    DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good
2023-09-29 08:48:21,186,186    DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good
2023-09-29 08:48:21,212,212    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0B1B 00010501161800000000000000000000]
2023-09-29 08:48:21,212,212    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0B39 00000000000000000000000000000000]
2023-09-29 08:48:21,232,232    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 000C 0B000100000000000000000000000000]
2023-09-29 08:48:21,232,232    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings_templates: check_feature backlight [BACKLIGHT2] detected <Setting([feature:toggle] MX Keys:backlight=None)>
2023-09-29 08:48:21,232,232    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 000B 40A00000000000000000000000000000]
2023-09-29 08:48:21,232,232    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0B39 00004C6F67697465636820426F6C7420]
2023-09-29 08:48:21,232,232    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0B3D 000E0000000000000000000000000000]
2023-09-29 08:48:21,252,252    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0B3D 000E7265636569766572000000000000]
2023-09-29 08:48:21,253,253    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0B1D 01000000000000000000000000000000]
2023-09-29 08:48:21,280,280    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 000B 00000000000000000000000000000000]
2023-09-29 08:48:21,280,280    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 000E 40A20000000000000000000000000000]
2023-09-29 08:48:21,280,280    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0B1D 01010401101800000000000000000000]
2023-09-29 08:48:21,280,280    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0B3F 01000000000000000000000000000000]
2023-09-29 08:48:21,296,296    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0B3F 0100616264756C6C61682D45554C2D57]
2023-09-29 08:48:21,296,296    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0B38 010E0000000000000000000000000000]
2023-09-29 08:48:21,312,312    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0B38 010E5839000000000000000000000000]
2023-09-29 08:48:21,312,312    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0B1A 02000000000000000000000000000000]
2023-09-29 08:48:21,324,324    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 000E 00000000000000000000000000000000]
2023-09-29 08:48:21,324,324    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0008 40A30000000000000000000000000000]
2023-09-29 08:48:21,340,340    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0B1A 020104010F1800000000000000000000]
2023-09-29 08:48:21,340,340    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0B3D 02000000000000000000000000000000]
2023-09-29 08:48:21,356,356    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0B3D 02004445534B544F502D4F3550465138]
2023-09-29 08:48:21,357,357    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0B3A 020E0000000000000000000000000000]
2023-09-29 08:48:21,368,368    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0008 0C000000000000000000000000000000]
2023-09-29 08:48:21,368,368    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings_templates: check_feature fn-swap [K375S FN INVERSION] detected <Setting([feature:toggle] MX Keys:fn-swap=None)>
2023-09-29 08:48:21,368,368    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 000A 1B040000000000000000000000000000]
2023-09-29 08:48:21,388,388    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0B3A 020E3600000000000000000000000000]
2023-09-29 08:48:21,388,388    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings_templates: check_feature change-host [CHANGE HOST] detected <Setting([feature:choice] MX Master 3S:change-host=None)>
2023-09-29 08:48:21,388,388     INFO [ReceiverListener:hidraw8] logitech_receiver.status: <Device(255,B034,MX Master 3S,)> pushing device settings [<Setting([feature:toggle] MX Master 3S:hires-smooth-invert=None)>, <Setting([feature:toggle] MX Master 3S:hires-smooth-resolution=None)>, <Setting([feature:toggle] MX Master 3S:hires-scroll-mode=None)>, <Setting([feature:choice] MX Master 3S:scroll-ratchet=None)>, <Setting([feature:range] MX Master 3S:smart-shift=None)>, <Setting([feature:toggle] MX Master 3S:thumb-scroll-invert=None)>, <Setting([feature:toggle] MX Master 3S:thumb-scroll-mode=None)>, <Setting([feature:choice] MX Master 3S:dpi=None)>, <Setting([feature:map choice] MX Master 3S:reprogrammable-keys=None)>, <Setting([feature:map choice] MX Master 3S:divert-keys=None)>, <Setting([feature:choice] MX Master 3S:change-host=None)>]
2023-09-29 08:48:21,412,412    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 000A 08000400000000000000000000000000]
2023-09-29 08:48:21,412,412    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0009 1B010000000000000000000000000000]
2023-09-29 08:48:21,460,460    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0009 00000000000000000000000000000000]
2023-09-29 08:48:21,460,460    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0809 00000000000000000000000000000000]
2023-09-29 08:48:21,504,504    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0809 18000000000000000000000000000000]
2023-09-29 08:48:21,504,504    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 081E 00000000000000000000000000000000]
2023-09-29 08:48:21,547,547    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) <= w[10 FF 83B5 620100]
2023-09-29 08:48:21,548,548    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 081E 00D100AE640000000400000000000000]
2023-09-29 08:48:21,548,548    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 081E 01000000000000000000000000000000]
2023-09-29 08:48:21,549,549    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) => r[11 FF 83B5 62010C4D58204D617374657220335300]
2023-09-29 08:48:21,549,549     INFO [ReceiverListener:hidraw7] logitech_receiver.receiver: <BoltReceiver(/dev/hidraw7,18)>: found new device 2 (B034)
2023-09-29 08:48:21,549,549    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) pinging device 2
2023-09-29 08:48:21,549,549    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) <= w[10 02 0018 000022]
2023-09-29 08:48:21,550,550    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) => r[10 02 8F00 180400]
2023-09-29 08:48:21,588,588    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: hires-smooth-invert: apply (<Device(255,B034,MX Master 3S,)>)
2023-09-29 08:48:21,589,589    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: hires-smooth-invert: cached value False on <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,589,589    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: hires-smooth-invert: write False to <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,589,589    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0F1E 00000000000000000000000000000000]
2023-09-29 08:48:21,596,596    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 081E 00D200AF640000000400000000000000]
2023-09-29 08:48:21,596,596    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 081A 02000000000000000000000000000000]
2023-09-29 08:48:21,628,628    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0F1E 02000000000000000000000000000000]
2023-09-29 08:48:21,628,628    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: hires-smooth-invert: current value b'\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' on <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,628,628    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: hires-smooth-resolution: apply (<Device(255,B034,MX Master 3S,)>)
2023-09-29 08:48:21,628,628    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: hires-smooth-resolution: cached value True on <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,628,628    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: hires-smooth-resolution: write True to <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,628,628    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0F1F 00000000000000000000000000000000]
2023-09-29 08:48:21,640,640    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 081A 00D300B0640000000400000000000000]
2023-09-29 08:48:21,641,641    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 081B 03000000000000000000000000000000]
2023-09-29 08:48:21,656,656    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0F1F 02000000000000000000000000000000]
2023-09-29 08:48:21,656,656    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: hires-smooth-resolution: current value b'\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' on <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,656,656    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: hires-scroll-mode: apply (<Device(255,B034,MX Master 3S,)>)
2023-09-29 08:48:21,656,656    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: hires-scroll-mode: cached value False on <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,656,656    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: hires-scroll-mode: write False to <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,656,656    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0F1C 00000000000000000000000000000000]
2023-09-29 08:48:21,680,680    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 081B 00C700A37A0100000400000000000000]
2023-09-29 08:48:21,680,680    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0818 04000000000000000000000000000000]
2023-09-29 08:48:21,688,688    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0F1C 02000000000000000000000000000000]
2023-09-29 08:48:21,688,688    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: hires-scroll-mode: current value b'\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' on <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,688,688    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: scroll-ratchet: apply (<Device(255,B034,MX Master 3S,)>)
2023-09-29 08:48:21,688,688    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: scroll-ratchet: cached value 2 on <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,688,688    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: scroll-ratchet: write 2 to <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,688,688    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: scroll-ratchet: prepare write(2) => b'\x02'
2023-09-29 08:48:21,688,688    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0E1D 02000000000000000000000000000000]
2023-09-29 08:48:21,716,716    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0E1D 02000000000000000000000000000000]
2023-09-29 08:48:21,716,716    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: smart-shift: apply (<Device(255,B034,MX Master 3S,)>)
2023-09-29 08:48:21,716,716    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: smart-shift: cached value 10 on <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,716,716    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: smart-shift: write 10 to <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,716,716    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0E09 00000000000000000000000000000000]
2023-09-29 08:48:21,728,728    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0818 00C800A47A0200000400000000000000]
2023-09-29 08:48:21,728,728    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 081F 05000000000000000000000000000000]
2023-09-29 08:48:21,740,740    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0E09 020A0A00000000000000000000000000]
2023-09-29 08:48:21,741,741    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: smart-shift: current value b'\n' on <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,741,741    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: thumb-scroll-invert: apply (<Device(255,B034,MX Master 3S,)>)
2023-09-29 08:48:21,741,741    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: thumb-scroll-invert: cached value False on <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,741,741    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: thumb-scroll-invert: write False to <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,741,741    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 101B 00000000000000000000000000000000]
2023-09-29 08:48:21,772,772    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 081F 00E000BF7A0300000400000000000000]
2023-09-29 08:48:21,773,773    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 081D 06000000000000000000000000000000]
2023-09-29 08:48:21,773,773    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 101B 00000000000000000000000000000000]
2023-09-29 08:48:21,773,773    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: thumb-scroll-invert: current value b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' on <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,773,773    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: thumb-scroll-mode: apply (<Device(255,B034,MX Master 3S,)>)
2023-09-29 08:48:21,773,773    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: thumb-scroll-mode: cached value False on <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,773,773    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: thumb-scroll-mode: write False to <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,773,773    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 101F 00000000000000000000000000000000]
2023-09-29 08:48:21,797,797    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 101F 00000000000000000000000000000000]
2023-09-29 08:48:21,797,797    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: thumb-scroll-mode: current value b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' on <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,797,797    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: dpi: apply (<Device(255,B034,MX Master 3S,)>)
2023-09-29 08:48:21,797,797    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: dpi: cached value 4000 on <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,797,797    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: dpi: write 4000 to <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,797,797    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: dpi: prepare write(4000) => b'\x00\x0f\xa0'
2023-09-29 08:48:21,798,798    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0D3E 000FA000000000000000000000000000]
2023-09-29 08:48:21,812,812    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0D3E 000FA000000000000000000000000000]
2023-09-29 08:48:21,812,812    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: reprogrammable-keys: apply (<Device(255,B034,MX Master 3S,)>)
2023-09-29 08:48:21,813,813    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: reprogrammable-keys: settings read None from <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,813,813    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: reprogrammable-keys: settings write {80: 80, 81: 81, 82: 82, 83: 83, 86: 86, 195: 195, 196: 196} to <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,813,813    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: reprogrammable-keys: settings prepare map write(80,80) => b'\x00P'
2023-09-29 08:48:21,813,813    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 093F 00500000500000000000000000000000]
2023-09-29 08:48:21,820,820    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 081D 00E100C07A0400000400000000000000]
2023-09-29 08:48:21,820,820    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0819 07000000000000000000000000000000]
2023-09-29 08:48:21,844,844    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 093F 00500000500000000000000000000000]
2023-09-29 08:48:21,844,844    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: reprogrammable-keys: settings prepare map write(81,81) => b'\x00Q'
2023-09-29 08:48:21,845,845    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 093A 00510000510000000000000000000000]
2023-09-29 08:48:21,864,864    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0819 006E00437A0500000400000000000000]
2023-09-29 08:48:21,864,864    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 081A 08000000000000000000000000000000]
2023-09-29 08:48:21,872,872    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 093A 00510000510000000000000000000000]
2023-09-29 08:48:21,872,872    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: reprogrammable-keys: settings prepare map write(82,82) => b'\x00R'
2023-09-29 08:48:21,872,872    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0938 00520000520000000000000000000000]
2023-09-29 08:48:21,888,888    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0938 00520000520000000000000000000000]
2023-09-29 08:48:21,888,888    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: reprogrammable-keys: settings prepare map write(83,83) => b'\x00S'
2023-09-29 08:48:21,888,888    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 093F 00530000530000000000000000000000]
2023-09-29 08:48:21,904,904    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 081A 00E200C17A0600000400000000000000]
2023-09-29 08:48:21,904,904    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 081A 09000000000000000000000000000000]
2023-09-29 08:48:21,912,912    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 093F 00530000530000000000000000000000]
2023-09-29 08:48:21,912,912    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: reprogrammable-keys: settings prepare map write(86,86) => b'\x00V'
2023-09-29 08:48:21,912,912    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 093D 00560000560000000000000000000000]
2023-09-29 08:48:21,940,940    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 093D 00560000560000000000000000000000]
2023-09-29 08:48:21,940,940    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: reprogrammable-keys: settings prepare map write(195,195) => b'\x00\xc3'
2023-09-29 08:48:21,940,940    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 093D 00C30000C30000000000000000000000]
2023-09-29 08:48:21,952,952    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 093D 00C30000C30000000000000000000000]
2023-09-29 08:48:21,952,952    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: reprogrammable-keys: settings prepare map write(196,196) => b'\x00\xc4'
2023-09-29 08:48:21,952,952    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 093C 00C40000C40000000000000000000000]
2023-09-29 08:48:21,952,952    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 081A 00E300C27A0700000400000000000000]
2023-09-29 08:48:21,952,952    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0818 0A000000000000000000000000000000]
2023-09-29 08:48:21,980,980    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 093C 00C40000C40000000000000000000000]
2023-09-29 08:48:21,980,980    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: divert-keys: apply (<Device(255,B034,MX Master 3S,)>)
2023-09-29 08:48:21,980,980    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: divert-keys: settings read None from <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,981,981    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: divert-keys: settings write {82: 0, 83: 0, 86: 0, 195: 2, 196: 0} to <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:21,981,981    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: divert-keys: settings prepare map write(82,0) => b'\x00'
2023-09-29 08:48:21,981,981    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0938 00520200000000000000000000000000]
2023-09-29 08:48:22,000,000    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0818 00E400067A0800000400000000000000]
2023-09-29 08:48:22,000,000    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 081B 0B000000000000000000000000000000]
2023-09-29 08:48:22,008,008    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0938 00520200000000000000000000000000]
2023-09-29 08:48:22,008,008    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: divert-keys: settings prepare map write(83,0) => b'\x00'
2023-09-29 08:48:22,008,008    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0939 00530200000000000000000000000000]
2023-09-29 08:48:22,024,024    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0939 00530200000000000000000000000000]
2023-09-29 08:48:22,024,024    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: divert-keys: settings prepare map write(86,0) => b'\x00'
2023-09-29 08:48:22,024,024    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 093C 00560200000000000000000000000000]
2023-09-29 08:48:22,044,044    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 081B 00E500047A0900000400000000000000]
2023-09-29 08:48:22,044,044    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 081F 0C000000000000000000000000000000]
2023-09-29 08:48:22,064,064    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 093C 00560200000000000000000000000000]
2023-09-29 08:48:22,064,064    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 093C 00C33000000000000000000000000000]
2023-09-29 08:48:22,084,084    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 081F 00E600057A0A00000400000000000000]
2023-09-29 08:48:22,084,084    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 081C 0D000000000000000000000000000000]
2023-09-29 08:48:22,092,092    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 093C 00C33000000000000000000000000000]
2023-09-29 08:48:22,092,092    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: divert-keys: settings prepare map write(195,2) => b'\x02'
2023-09-29 08:48:22,092,092    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 093E 00C30300000000000000000000000000]
2023-09-29 08:48:22,120,120    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 093E 00C30300000000000000000000000000]
2023-09-29 08:48:22,120,120    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: divert-keys: settings prepare map write(196,0) => b'\x00'
2023-09-29 08:48:22,120,120    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0939 00C40200000000000000000000000000]
2023-09-29 08:48:22,132,132    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 081C 00E700037A0B00000400000000000000]
2023-09-29 08:48:22,133,133    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 081E 0E000000000000000000000000000000]
2023-09-29 08:48:22,144,144    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0939 00C40200000000000000000000000000]
2023-09-29 08:48:22,144,144    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: change-host: apply (<Device(255,B034,MX Master 3S,)>)
2023-09-29 08:48:22,144,144    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) <= w[11 FF 0A0E 00000000000000000000000000000000]
2023-09-29 08:48:22,172,172    DEBUG [ReceiverListener:hidraw8] logitech_receiver.base: (19) => r[11 FF 0A0E 03010000000000000000000000000000]
2023-09-29 08:48:22,172,172    DEBUG [ReceiverListener:hidraw8] logitech_receiver.settings: change-host: read value NamedInt(1, '2:abdullah-EUL-WX9') on <Device(255,B034,MX Master 3S,)>
2023-09-29 08:48:22,180,180    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 081E 00E800027A0C00000400000000000000]
2023-09-29 08:48:22,180,180    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 081B 0F000000000000000000000000000000]
2023-09-29 08:48:22,224,224    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 081B 00E90001740000000400000000000000]
2023-09-29 08:48:22,224,224    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 081A 10000000000000000000000000000000]
2023-09-29 08:48:22,268,268    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 081A 000A000A740000000400000000000000]
2023-09-29 08:48:22,268,268    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 081E 11000000000000000000000000000000]
2023-09-29 08:48:22,312,312    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 081E 00BF009B740000000400000000000000]
2023-09-29 08:48:22,312,312    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 081C 12000000000000000000000000000000]
2023-09-29 08:48:22,360,360    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 081C 00EA00C3740000000400000000000000]
2023-09-29 08:48:22,360,360    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0818 13000000000000000000000000000000]
2023-09-29 08:48:22,404,404    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0818 006F0044740000000400000000000000]
2023-09-29 08:48:22,404,404    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0818 14000000000000000000000000000000]
2023-09-29 08:48:22,448,448    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0818 00EC00B8640000000400000000000000]
2023-09-29 08:48:22,448,448    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0819 15000000000000000000000000000000]
2023-09-29 08:48:22,492,492    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0819 00EB00B6640000000400000000000000]
2023-09-29 08:48:22,492,492    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 081A 16000000000000000000000000000000]
2023-09-29 08:48:22,540,540    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 081A 00DE0062020000000400000000000000]
2023-09-29 08:48:22,541,541    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0818 17000000000000000000000000000000]
2023-09-29 08:48:22,584,584    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0818 00340062040000000400000000000000]
2023-09-29 08:48:22,585,585    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings_templates: check_feature divert-keys [REPROG CONTROLS V4] detected <Setting([feature:map choice] MX Keys:divert-keys=None)>
2023-09-29 08:48:22,585,585    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0009 45210000000000000000000000000000]
2023-09-29 08:48:22,628,628    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0009 0F000000000000000000000000000000]
2023-09-29 08:48:22,628,628    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0F0F 00000000000000000000000000000000]
2023-09-29 08:48:22,672,672    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0F0F 1F000000000000000000000000000000]
2023-09-29 08:48:22,672,672    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings_templates: check_feature disable-keyboard-keys [KEYBOARD DISABLE KEYS] detected <Setting([feature:multiple toggle] MX Keys:disable-keyboard-keys=None)>
2023-09-29 08:48:22,673,673    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0009 45310000000000000000000000000000]
2023-09-29 08:48:22,720,720    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0009 10000100000000000000000000000000]
2023-09-29 08:48:22,721,721    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 100F 00000000000000000000000000000000]
2023-09-29 08:48:22,764,764    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 100F 03000404030100000000000000000000]
2023-09-29 08:48:22,764,764    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 101B 00000000000000000000000000000000]
2023-09-29 08:48:22,808,808    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 101B 00000100000000000000000000000000]
2023-09-29 08:48:22,808,808    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 101E 01000000000000000000000000000000]
2023-09-29 08:48:22,852,852    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 101E 01012000000000000000000000000000]
2023-09-29 08:48:22,852,852    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 1019 02000000000000000000000000000000]
2023-09-29 08:48:22,900,900    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 1019 02024000000000000000000000000000]
2023-09-29 08:48:22,901,901    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 101A 03000000000000000000000000000000]
2023-09-29 08:48:22,944,944    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 101A 03031000000000000000000000000000]
2023-09-29 08:48:22,945,945    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings_templates: check_feature multiplatform [MULTIPLATFORM] detected <Setting([feature:choice] MX Keys:multiplatform=None)>
2023-09-29 08:48:22,945,945    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 000F 18140000000000000000000000000000]
2023-09-29 08:48:22,988,988    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 000F 09000100000000000000000000000000]
2023-09-29 08:48:22,988,988    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 090D 00000000000000000000000000000000]
2023-09-29 08:48:23,032,032    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 090D 03010000000000000000000000000000]
2023-09-29 08:48:23,032,032    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 000A 18150000000000000000000000000000]
2023-09-29 08:48:23,080,080    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 000A 0A000100000000000000000000000000]
2023-09-29 08:48:23,080,080    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0A0A 00000000000000000000000000000000]
2023-09-29 08:48:23,124,124    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0A0A 13040301000000000000000000000000]
2023-09-29 08:48:23,124,124    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0A1C 00000000000000000000000000000000]
2023-09-29 08:48:23,168,168    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0A1C 00010100101800000000000000000000]
2023-09-29 08:48:23,168,168    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0A3F 00000000000000000000000000000000]
2023-09-29 08:48:23,212,212    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0A3F 0000616264756C6C61682D45554C2D57]
2023-09-29 08:48:23,213,213    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0A39 000E0000000000000000000000000000]
2023-09-29 08:48:23,260,260    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0A39 000E5839000000000000000000000000]
2023-09-29 08:48:23,260,260    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0A18 01000000000000000000000000000000]
2023-09-29 08:48:23,304,304    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0A18 01010402101800000000000000000000]
2023-09-29 08:48:23,304,304    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0A3D 01000000000000000000000000000000]
2023-09-29 08:48:23,348,348    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0A3D 0100616264756C6C61682D45554C2D57]
2023-09-29 08:48:23,348,348    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0A3C 010E0000000000000000000000000000]
2023-09-29 08:48:23,392,392    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0A3C 010E5839000000000000000000000000]
2023-09-29 08:48:23,392,392    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0A1A 02000000000000000000000000000000]
2023-09-29 08:48:23,444,444    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0A1A 020104020F1800000000000000000000]
2023-09-29 08:48:23,445,445    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0A3C 02000000000000000000000000000000]
2023-09-29 08:48:23,484,484    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0A3C 02004445534B544F502D4F3550465138]
2023-09-29 08:48:23,484,484    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0A3A 020E0000000000000000000000000000]
2023-09-29 08:48:23,528,528    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0A3A 020E3600000000000000000000000000]
2023-09-29 08:48:23,528,528    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings_templates: check_feature change-host [CHANGE HOST] detected <Setting([feature:choice] MX Keys:change-host=None)>
2023-09-29 08:48:23,531,531    DEBUG [AsyncUI] logitech_receiver.settings: backlight: cached value True on <Device(255,B35B,MX Keys Keyboard,)>
2023-09-29 08:48:23,532,532    DEBUG [AsyncUI] logitech_receiver.settings: fn-swap: cached value True on <Device(255,B35B,MX Keys Keyboard,)>
2023-09-29 08:48:23,540,540    DEBUG [AsyncUI] logitech_receiver.settings: divert-keys: settings read None from <Device(255,B35B,MX Keys Keyboard,)>
2023-09-29 08:48:23,544,544    DEBUG [AsyncUI] logitech_receiver.settings: disable-keyboard-keys: settings read None from <Device(255,B35B,MX Keys Keyboard,)>
2023-09-29 08:48:23,546,546    DEBUG [AsyncUI] logitech_receiver.settings: multiplatform: cached value 0 on <Device(255,B35B,MX Keys Keyboard,)>
2023-09-29 08:48:25,554,554  WARNING [ReceiverListener:hidraw7] logitech_receiver.base: (18) timeout (4.00/4.00) on device 2 ping
2023-09-29 08:48:25,555,555    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) <= w[10 FF 83B5 520000]
2023-09-29 08:48:25,560,560    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) => r[11 FF 83B5 524234B03EBB3C9B0100801401000000]
2023-09-29 08:48:25,561,561    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) pinging device 2
2023-09-29 08:48:25,561,561    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) <= w[10 02 0019 000083]
2023-09-29 08:48:25,562,562    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) => r[10 02 8F00 190400]
2023-09-29 08:48:27,195,195    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) => r[10 02 8F00 170400]
2023-09-29 08:48:31,200,200  WARNING [ReceiverListener:hidraw7] logitech_receiver.base: (18) timeout (5.64/4.00) on device 2 ping
2023-09-29 08:48:21,549,549     INFO [ReceiverListener:hidraw7] solaar.listener: connection Notification(10,2,41,10,4234B0) for <Device(2,B034,MX Master 3S,3EBB3C9B)> (mouse)
2023-09-29 08:48:22,172,172     INFO [ReceiverListener:hidraw8] solaar.listener: status_changed <Device(255,B034,MX Master 3S,)>: paired online, {'NOTIFICATION FLAGS': False, 'BATTERY LEVEL': 35, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': None, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (0) initialization
2023-09-29 08:48:23,528,528     INFO [ReceiverListener:hidraw4] logitech_receiver.status: <Device(255,B35B,MX Keys Keyboard,)> pushing device settings [<Setting([feature:toggle] MX Keys:backlight=True)>, <Setting([feature:toggle] MX Keys:fn-swap=True)>, <Setting([feature:map choice] MX Keys:divert-keys={10: 0, 110: 0, 111: 0, 191: 0, 199: 0, 200: 0, 209: 0, 210: 0, 211: 0, 224: 0, 225: 0, 226: 0, 227: 0, 228: 0, 229: 0, 230: 0, 231: 0, 232: 0, 233: 0, 234: 0, 235: 0, 236: 0})>, <Setting([feature:multiple toggle] MX Keys:disable-keyboard-keys={1: False, 2: False, 4: False, 8: False, 16: False})>, <Setting([feature:choice] MX Keys:multiplatform=0)>, <Setting([feature:choice] MX Keys:change-host=None)>]
2023-09-29 08:48:23,548,548     INFO [AsyncUI] hidapi.udev: OPEN PATH /dev/hidraw4
2023-09-29 08:48:31,200,200    DEBUG [MainThread] solaar.ui: status changed: <Device(255,B034,MX Master 3S,)> (NONE) initialization
2023-09-29 08:48:31,200,200    DEBUG [AsyncUI] logitech_receiver.base: (21) <= w[11 FF 090A 00000000000000000000000000000000]
2023-09-29 08:48:31,200,200     INFO [ReceiverListener:hidraw7] solaar.listener: status_changed <BoltReceiver(/dev/hidraw7,18)>: present, 1 paired device. (0) 
2023-09-29 08:48:31,201,201    DEBUG [MainThread] solaar.ui.icons: battery icon for 35:False = battery-good
2023-09-29 08:48:31,201,201    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) pinging device 2
2023-09-29 08:48:31,201,201    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) <= w[10 02 001E 00002C]
2023-09-29 08:48:31,202,202    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) => r[10 02 8F00 1E0400]
2023-09-29 08:48:35,204,204  WARNING [ReceiverListener:hidraw7] logitech_receiver.base: (18) timeout (4.00/4.00) on device 2 ping
2023-09-29 08:48:31,201,201    DEBUG [ReceiverListener:hidraw7] logitech_receiver.notifications: <Device(2,B034,MX Master 3S,3EBB3C9B)>: protocol 16 connection notification: software=False, encrypted=True, link=False, payload=False
2023-09-29 08:48:31,202,202    DEBUG [MainThread] solaar.ui.tray: picked device with lowest battery: ('/dev/hidraw8', 255, 'MX Master 3S', {'NOTIFICATION FLAGS': False, 'BATTERY LEVEL': 35, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': None, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None})
2023-09-29 08:48:31,609,609    DEBUG [AsyncUI] logitech_receiver.base: (21) => r[11 FF 090A 03010000000000000000000000000000]
2023-09-29 08:48:35,204,204    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) pinging device 2
2023-09-29 08:48:35,205,205    DEBUG [AsyncUI] logitech_receiver.settings: change-host: read value NamedInt(1, '2:abdullah-EUL-WX9') on <Device(255,B35B,MX Keys Keyboard,)>
2023-09-29 08:48:35,205,205    DEBUG [MainThread] solaar.ui.icons: battery icon for 35:False = battery-good
2023-09-29 08:48:35,205,205    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 000C 21210000000000000000000000000000]
2023-09-29 08:48:35,206,206    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) <= w[10 02 001A 000015]
2023-09-29 08:48:35,208,208    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) => r[10 02 8F00 1A0400]
2023-09-29 08:48:35,209,209    DEBUG [MainThread] solaar.ui.icons: battery icon for 35:False = battery-good
2023-09-29 08:48:35,217,217    DEBUG [MainThread] solaar.ui: status changed: <BoltReceiver(/dev/hidraw7,18)> (NONE) None
2023-09-29 08:48:35,218,218    DEBUG [MainThread] solaar.ui.icons: battery icon for 35:False = battery-good
2023-09-29 08:48:35,432,432    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 000C 00000000000000000000000000000000]
2023-09-29 08:48:35,432,432    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: backlight: apply (<Device(255,B35B,MX Keys Keyboard,)>)
2023-09-29 08:48:35,433,433    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: backlight: cached value True on <Device(255,B35B,MX Keys Keyboard,)>
2023-09-29 08:48:35,433,433    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: backlight: write True to <Device(255,B35B,MX Keys Keyboard,)>
2023-09-29 08:48:35,433,433    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: BooleanValidator: prepare_write(True, None) => b'\x01'
2023-09-29 08:48:35,433,433    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: backlight: prepare write(True) => b'\x01'
2023-09-29 08:48:35,433,433    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0B1E 01000000000000000000000000000000]
2023-09-29 08:48:35,476,476    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0B1E 00000000000000000000000000000000]
2023-09-29 08:48:35,476,476    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: fn-swap: apply (<Device(255,B35B,MX Keys Keyboard,)>)
2023-09-29 08:48:35,476,476    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: fn-swap: cached value True on <Device(255,B35B,MX Keys Keyboard,)>
2023-09-29 08:48:35,477,477    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: fn-swap: write True to <Device(255,B35B,MX Keys Keyboard,)>
2023-09-29 08:48:35,477,477    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: BooleanValidator: prepare_write(True, None) => b'\x01'
2023-09-29 08:48:35,477,477    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: fn-swap: prepare write(True) => b'\x01'
2023-09-29 08:48:35,477,477    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0C1E FF010000000000000000000000000000]
2023-09-29 08:48:35,520,520    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0C1E FF010101000000000000000000000000]
2023-09-29 08:48:35,520,520    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: apply (<Device(255,B35B,MX Keys Keyboard,)>)
2023-09-29 08:48:35,520,520    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings read {10: 0, 110: 0, 111: 0, 191: 0, 199: 0, 200: 0, 209: 0, 210: 0, 211: 0, 224: 0, 225: 0, 226: 0, 227: 0, 228: 0, 229: 0, 230: 0, 231: 0, 232: 0, 233: 0, 234: 0, 235: 0, 236: 0} from <Device(255,B35B,MX Keys Keyboard,)>
2023-09-29 08:48:35,520,520    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings write {10: 0, 110: 0, 111: 0, 191: 0, 199: 0, 200: 0, 209: 0, 210: 0, 211: 0, 224: 0, 225: 0, 226: 0, 227: 0, 228: 0, 229: 0, 230: 0, 231: 0, 232: 0, 233: 0, 234: 0, 235: 0, 236: 0} to <Device(255,B35B,MX Keys Keyboard,)>
2023-09-29 08:48:35,520,520    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(10,0) => b'\x00'
2023-09-29 08:48:35,520,520    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 083A 000A0200000000000000000000000000]
2023-09-29 08:48:35,568,568    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 083A 000A0200000000000000000000000000]
2023-09-29 08:48:35,569,569    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(110,0) => b'\x00'
2023-09-29 08:48:35,569,569    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0839 006E0200000000000000000000000000]
2023-09-29 08:48:35,612,612    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0839 006E0200000000000000000000000000]
2023-09-29 08:48:35,612,612    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(111,0) => b'\x00'
2023-09-29 08:48:35,613,613    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 083A 006F0200000000000000000000000000]
2023-09-29 08:48:35,656,656    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 083A 006F0200000000000000000000000000]
2023-09-29 08:48:35,656,656    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(191,0) => b'\x00'
2023-09-29 08:48:35,656,656    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 083B 00BF0200000000000000000000000000]
2023-09-29 08:48:35,700,700    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 083B 00BF0200000000000000000000000000]
2023-09-29 08:48:35,700,700    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(199,0) => b'\x00'
2023-09-29 08:48:35,700,700    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 083B 00C70200000000000000000000000000]
2023-09-29 08:48:35,748,748    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 083B 00C70200000000000000000000000000]
2023-09-29 08:48:35,748,748    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(200,0) => b'\x00'
2023-09-29 08:48:35,749,749    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 083E 00C80200000000000000000000000000]
2023-09-29 08:48:35,792,792    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 083E 00C80200000000000000000000000000]
2023-09-29 08:48:35,792,792    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(209,0) => b'\x00'
2023-09-29 08:48:35,792,792    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 083B 00D10200000000000000000000000000]
2023-09-29 08:48:35,836,836    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 083B 00D10200000000000000000000000000]
2023-09-29 08:48:35,836,836    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(210,0) => b'\x00'
2023-09-29 08:48:35,836,836    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 083C 00D20200000000000000000000000000]
2023-09-29 08:48:35,880,880    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 083C 00D20200000000000000000000000000]
2023-09-29 08:48:35,880,880    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(211,0) => b'\x00'
2023-09-29 08:48:35,881,881    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0839 00D30200000000000000000000000000]
2023-09-29 08:48:35,928,928    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0839 00D30200000000000000000000000000]
2023-09-29 08:48:35,929,929    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(224,0) => b'\x00'
2023-09-29 08:48:35,929,929    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 083B 00E00200000000000000000000000000]
2023-09-29 08:48:35,972,972    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 083B 00E00200000000000000000000000000]
2023-09-29 08:48:35,972,972    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(225,0) => b'\x00'
2023-09-29 08:48:35,972,972    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0838 00E10200000000000000000000000000]
2023-09-29 08:48:36,016,016    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0838 00E10200000000000000000000000000]
2023-09-29 08:48:36,016,016    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(226,0) => b'\x00'
2023-09-29 08:48:36,017,017    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 083F 00E20200000000000000000000000000]
2023-09-29 08:48:36,060,060    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 083F 00E20200000000000000000000000000]
2023-09-29 08:48:36,060,060    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(227,0) => b'\x00'
2023-09-29 08:48:36,061,061    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 083A 00E30200000000000000000000000000]
2023-09-29 08:48:36,108,108    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 083A 00E30200000000000000000000000000]
2023-09-29 08:48:36,108,108    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(228,0) => b'\x00'
2023-09-29 08:48:36,109,109    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 083D 00E40200000000000000000000000000]
2023-09-29 08:48:36,152,152    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 083D 00E40200000000000000000000000000]
2023-09-29 08:48:36,152,152    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(229,0) => b'\x00'
2023-09-29 08:48:36,152,152    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 083D 00E50200000000000000000000000000]
2023-09-29 08:48:36,200,200    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 083D 00E50200000000000000000000000000]
2023-09-29 08:48:36,201,201    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(230,0) => b'\x00'
2023-09-29 08:48:36,201,201    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 083C 00E60200000000000000000000000000]
2023-09-29 08:48:36,240,240    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 083C 00E60200000000000000000000000000]
2023-09-29 08:48:36,240,240    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(231,0) => b'\x00'
2023-09-29 08:48:36,241,241    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 083B 00E70200000000000000000000000000]
2023-09-29 08:48:36,288,288    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 083B 00E70200000000000000000000000000]
2023-09-29 08:48:36,288,288    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(232,0) => b'\x00'
2023-09-29 08:48:36,288,288    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 083A 00E80200000000000000000000000000]
2023-09-29 08:48:36,332,332    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 083A 00E80200000000000000000000000000]
2023-09-29 08:48:36,332,332    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(233,0) => b'\x00'
2023-09-29 08:48:36,332,332    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 083D 00E90200000000000000000000000000]
2023-09-29 08:48:36,376,376    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 083D 00E90200000000000000000000000000]
2023-09-29 08:48:36,376,376    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(234,0) => b'\x00'
2023-09-29 08:48:36,377,377    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 083A 00EA0200000000000000000000000000]
2023-09-29 08:48:36,420,420    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 083A 00EA0200000000000000000000000000]
2023-09-29 08:48:36,420,420    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(235,0) => b'\x00'
2023-09-29 08:48:36,420,420    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 083E 00EB0200000000000000000000000000]
2023-09-29 08:48:36,468,468    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 083E 00EB0200000000000000000000000000]
2023-09-29 08:48:36,468,468    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: divert-keys: settings prepare map write(236,0) => b'\x00'
2023-09-29 08:48:36,468,468    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 083A 00EC0200000000000000000000000000]
2023-09-29 08:48:36,512,512    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 083A 00EC0200000000000000000000000000]
2023-09-29 08:48:36,512,512    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: disable-keyboard-keys: apply (<Device(255,B35B,MX Keys Keyboard,)>)
2023-09-29 08:48:36,512,512    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: disable-keyboard-keys: settings read {1: False, 2: False, 4: False, 8: False, 16: False} from <Device(255,B35B,MX Keys Keyboard,)>
2023-09-29 08:48:36,513,513    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: disable-keyboard-keys: bit field settings write {1: False, 2: False, 4: False, 8: False, 16: False} to <Device(255,B35B,MX Keys Keyboard,)>
2023-09-29 08:48:36,513,513    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: disable-keyboard-keys: settings prepare map write({1: False, 2: False, 4: False, 8: False, 16: False}) => b'\x00'
2023-09-29 08:48:36,513,513    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 0F29 00000000000000000000000000000000]
2023-09-29 08:48:36,556,556    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 0F29 00000000000000000000000000000000]
2023-09-29 08:48:36,556,556    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: multiplatform: apply (<Device(255,B35B,MX Keys Keyboard,)>)
2023-09-29 08:48:36,556,556    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: multiplatform: cached value 0 on <Device(255,B35B,MX Keys Keyboard,)>
2023-09-29 08:48:36,556,556    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: multiplatform: write 0 to <Device(255,B35B,MX Keys Keyboard,)>
2023-09-29 08:48:36,556,556    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: multiplatform: prepare write(0) => b'\xff\x00'
2023-09-29 08:48:36,556,556    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 103E FF000000000000000000000000000000]
2023-09-29 08:48:36,600,600    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 103E 01000000000000000000000000000000]
2023-09-29 08:48:36,600,600    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: change-host: apply (<Device(255,B35B,MX Keys Keyboard,)>)
2023-09-29 08:48:36,600,600    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) <= w[11 FF 090F 00000000000000000000000000000000]
2023-09-29 08:48:36,648,648    DEBUG [ReceiverListener:hidraw4] logitech_receiver.base: (22) => r[11 FF 090F 03010000000000000000000000000000]
2023-09-29 08:48:36,648,648    DEBUG [ReceiverListener:hidraw4] logitech_receiver.settings: change-host: read value NamedInt(1, '2:abdullah-EUL-WX9') on <Device(255,B35B,MX Keys Keyboard,)>
2023-09-29 08:48:39,212,212  WARNING [ReceiverListener:hidraw7] logitech_receiver.base: (18) timeout (4.00/4.00) on device 2 ping
2023-09-29 08:48:39,213,213    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) pinging device 2
2023-09-29 08:48:39,213,213    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) <= w[10 02 001E 000055]
2023-09-29 08:48:39,214,214    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) => r[10 02 8F00 1E0400]
2023-09-29 08:48:43,216,216  WARNING [ReceiverListener:hidraw7] logitech_receiver.base: (18) timeout (4.00/4.00) on device 2 ping
2023-09-29 08:48:35,204,204     INFO [ReceiverListener:hidraw7] solaar.listener: status_changed <Device(2,B034,MX Master 3S,3EBB3C9B)>: paired offline, {'LINK ENCRYPTED': True} (0) 
2023-09-29 08:48:36,649,649     INFO [ReceiverListener:hidraw4] solaar.listener: status_changed <Device(255,B35B,MX Keys Keyboard,)>: paired online, {'NOTIFICATION FLAGS': False, 'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (0) initialization
2023-09-29 08:48:43,217,217     INFO [MainThread] hidapi.udev: OPEN PATH /dev/hidraw7
2023-09-29 08:48:43,217,217    DEBUG [MainThread] logitech_receiver.base: (24) pinging device 2
2023-09-29 08:48:43,218,218    DEBUG [MainThread] logitech_receiver.base: (24) <= w[10 02 0018 0000D1]
2023-09-29 08:48:43,219,219    DEBUG [MainThread] logitech_receiver.base: (24) => r[10 02 8F00 180400]
2023-09-29 08:48:47,224,224  WARNING [MainThread] logitech_receiver.base: (24) timeout (4.01/4.00) on device 2 ping
2023-09-29 08:48:43,217,217    DEBUG [MainThread] solaar.ui: status changed: <Device(2,B034,MX Master 3S,3EBB3C9B)> (NONE) None
2023-09-29 08:48:43,219,219    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) => r[10 02 8F00 180400]
2023-09-29 08:48:47,224,224    DEBUG [MainThread] logitech_receiver.base: (24) pinging device 2
2023-09-29 08:48:47,225,225    DEBUG [MainThread] logitech_receiver.base: (24) <= w[10 02 001B 0000E6]
2023-09-29 08:48:47,226,226    DEBUG [MainThread] logitech_receiver.base: (24) => r[10 02 8F00 1B0400]
2023-09-29 08:48:47,227,227    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) => r[10 02 8F00 1B0400]
2023-09-29 08:48:51,231,231  WARNING [MainThread] logitech_receiver.base: (24) timeout (4.01/4.00) on device 2 ping
2023-09-29 08:48:51,232,232    DEBUG [MainThread] logitech_receiver.base: (24) pinging device 2
2023-09-29 08:48:51,232,232    DEBUG [MainThread] logitech_receiver.base: (24) <= w[10 02 001C 0000D5]
2023-09-29 08:48:51,234,234    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) => r[10 02 8F00 1C0400]
2023-09-29 08:48:51,235,235    DEBUG [MainThread] logitech_receiver.base: (24) => r[10 02 8F00 1C0400]
2023-09-29 08:48:55,240,240  WARNING [MainThread] logitech_receiver.base: (24) timeout (4.01/4.00) on device 2 ping
2023-09-29 08:48:55,240,240    DEBUG [MainThread] solaar.ui.icons: battery icon for None:None = battery-missing
2023-09-29 08:48:55,240,240    DEBUG [MainThread] logitech_receiver.base: (24) pinging device 2
2023-09-29 08:48:55,240,240    DEBUG [MainThread] logitech_receiver.base: (24) <= w[10 02 001B 0000A1]
2023-09-29 08:48:55,241,241    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) => r[10 02 8F00 1B0400]
2023-09-29 08:48:55,241,241    DEBUG [MainThread] logitech_receiver.base: (24) => r[10 02 8F00 1B0400]
2023-09-29 08:48:57,195,195    DEBUG [MainThread] logitech_receiver.base: (24) => r[10 02 8F00 170400]
2023-09-29 08:48:57,195,195    DEBUG [ReceiverListener:hidraw7] logitech_receiver.base: (18) => r[10 02 8F00 170400]
Killed
```
My rule file is here; @pfps 
```
abdullah@abdullah-EUL-WX9:~$ cat /etc/udev/rules.d/42-logitech-unify-permissions.rules 
# This rule was added by Solaar.
#
# Allows non-root users to have raw access to Logitech devices.
# Allowing users to write to the device is potentially dangerous
# because they could perform firmware updates.
KERNEL=="uinput", SUBSYSTEM=="misc", TAG+="uaccess", OPTIONS+="static_node=uinput"

ACTION != "add", GOTO="solaar_end"
SUBSYSTEM != "hidraw", GOTO="solaar_end"

# USB-connected Logitech receivers and devices
ATTRS{idVendor}=="046d", GOTO="solaar_apply"

# Lenovo nano receiver
ATTRS{idVendor}=="17ef", ATTRS{idProduct}=="6042", GOTO="solaar_apply"

# Bluetooth-connected Logitech devices
KERNELS == "0005:046D:*", GOTO="solaar_apply"

GOTO="solaar_end"

LABEL="solaar_apply"

# Allow any seated user to access the receiver.
# uaccess: modern ACL-enabled udev
TAG+="uaccess"

# Grant members of the "plugdev" group access to receiver (useful for SSH users)
#MODE="0660", GROUP="plugdev"

LABEL="solaar_end"
# vim: ft=udevrules
```
Please post your Solaar rules file, in ~/.config/solaar/rules.yaml

I don't see any attempt to run rules in your Solaar debug output.  Did you divert any device settings to initiate rule processing?  The config file you posted initially does not show any diversions.
first rule working, second rule not working. @pfps
i don't change any setting about divert
```
abdullah@abdullah-EUL-WX9:~$ cat ~/.config/solaar/rules.yaml
%YAML 1.3
---
- Key: [Mouse Gesture Button, released]
- Set: [3EBB3C9B, change-host, 2]
...
---
- Key: [Host Switch Channel 3, pressed]
- Set: [3EBB3C9B, change-host, 2]
...
```
For either of the rules to work you have to set some diversion settings in Solaar.   For the first, the mouse gesture button has to be diverted using the Key/Button Diversion setting.   For the second the host switch channel 3 button has to be diverted.

These should  show up in the Solaar config file so if you are still having problems please post ~/.config/solaar/config.yaml
@pfps 
I don't understand what i need to change on the config file `~/.config/solaar/config.yaml`
But i found the divert setting on UI then it worket when i try for few times, then gone again and not even work keyboard switch 
![image](https://github.com/pwr-Solaar/Solaar/assets/49225281/5eba348f-3490-4ab5-9021-6a1d591164aa)

my config file;
```
abdullah@abdullah-EUL-WX9:~$ cat ~/.config/solaar/config.yaml 
- 1.1.10
- _NAME: MX Master 3S
  _absent: [hi-res-scroll, lowres-scroll-mode, onboard_profiles, report_rate, pointer_speed, speed-change, backlight, backlight-timed, fn-swap, persistent-remappable-keys,
    disable-keyboard-keys, crown-smooth, divert-crown, divert-gkeys, m-key-leds, mr-key-led, multiplatform, gesture2-gestures, gesture2-divert, gesture2-params,
    sidetone, equalizer, adc_power_management]
  _battery: 4100
  _dpi-sliding: 16
  _modelId: B03400000000
  _sensitive: {change-host: true, divert-keys: true, dpi: true, hires-smooth-invert: true, reprogrammable-keys: true}
  _serial: 3EBB3C9B
  _unitId: 3EBB3C9B
  _wpid: B034
  change-host: null
  divert-keys: {82: 0, 83: 0, 86: 0, 195: 2, 196: 0}
  dpi: 4000
  hires-scroll-mode: false
  hires-smooth-invert: false
  hires-smooth-resolution: true
  reprogrammable-keys: {80: 80, 81: 81, 82: 82, 83: 83, 86: 86, 195: 195, 196: 196}
  scroll-ratchet: 2
  smart-shift: 10
  thumb-scroll-invert: false
  thumb-scroll-mode: false
- _NAME: MX Keys 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, onboard_profiles, report_rate, pointer_speed, dpi, speed-change, backlight-timed, reprogrammable-keys, persistent-remappable-keys,
    crown-smooth, divert-crown, divert-gkeys, m-key-leds, mr-key-led, gesture2-gestures, gesture2-divert, gesture2-params, sidetone, equalizer, adc_power_management]
  _battery: 4096
  _modelId: B35B408A0000
  _sensitive: {backlight: false, change-host: true, divert-keys: false, multiplatform: true}
  _serial: 028C9816
  _unitId: 028C9816
  _wpid: 408A
  backlight: true
  change-host: null
  disable-keyboard-keys: {1: false, 2: false, 4: false, 8: false, 16: false}
  divert-keys: {10: 0, 110: 0, 111: 0, 191: 0, 199: 0, 200: 0, 209: 0, 210: 0, 211: 1, 224: 0, 225: 0, 226: 0, 227: 0, 228: 0, 229: 0, 230: 0, 231: 0, 232: 0,
    233: 0, 234: 0, 235: 0, 236: 0}
  fn-swap: true
  multiplatform: 0
- _sensitive: {hires-scroll-mode: ignore, hires-smooth-invert: ignore, hires-smooth-resolution: ignore}

```
You don't need to (nor should you) change config.yaml.  Changes are normally made in the Solaar gui and Solaar stores these changes in config.yaml so that it starts up in the same state as it was before.

That said, there appears to be an extra line in your config.yaml.  You should probably edit that file and remove the last line, but when Solaar is not running.

Your config file looks correct for the two diversions.  Run Solaar as `solaar -ddd` and post the output when you try to initiate the two rules. 

One thing that might be happening is that you have multiple copies of Solaar running.   List all processes on your machine (even those running as root) to check that there are no other copies of Solaar running.


This is my last try, thank you for all you done :/ @pfps

[solaar-ddd.txt](https://github.com/pwr-Solaar/Solaar/files/12789582/solaar-ddd.txt)
Your trace shows one rule being loaded into Solaar.

```
2023-10-03 10:11:10,893,893    DEBUG [MainThread] logitech_receiver.diversion: load rule: Rule(/home/abdullah/.config/solaar/rules.yaml)[Key: Host Switch Channel 3 (pressed), Set: 3EBB3C9B change-host 2]
```
As there is no rule that is trying to simulate input, there is no need for /dev/uinput to be writable.


I do see a problem, however, in ping responses.
```
2023-10-03 10:11:16,525,525    DEBUG [ReceiverListener:hidraw9] logitech_receiver.base: (18) <= w[10 02 001B 00003B]
2023-10-03 10:11:16,526,526    DEBUG [ReceiverListener:hidraw9] logitech_receiver.base: (18) => r[10 02 8F00 1B0400]
2023-10-03 10:11:20,529,529  WARNING [ReceiverListener:hidraw9] logitech_receiver.base: (18) timeout (4.00/4.00) on device 2 ping
```
This may be due to a recent change to Solaar.   I will investigate further.



Resolving patch:
diff --git a/lib/logitech_receiver/base.py b/lib/logitech_receiver/base.py
--- a/lib/logitech_receiver/base.py
+++ b/lib/logitech_receiver/base.py
@@ -534,8 +534,8 @@ def ping(handle, devnumber, long_message=False):
                         error = ord(reply_data[3:4])
                         if error == _hidpp10.ERROR.invalid_SubID__command:  # a valid reply from a HID++ 1.0 device
                             return 1.0
-                        if error == _hidpp10.ERROR.resource_error:  # device unreachable
-                            return
+                        if error == _hidpp10.ERROR.resource_error or error == _hidpp10.ERROR.connection_request_failed:
+                            return  # device unreachable
                         if error == _hidpp10.ERROR.unknown_device:  # no paired device with that number
                             _log.error('(%s) device %d error on ping request: unknown device', handle, devnumber)
                             raise NoSuchDevice(number=devnumber, request=request_id)


Test patch: