pwr-Solaar / Solaar

Linux device manager for Logitech devices
https://pwr-solaar.github.io/Solaar
GNU General Public License v2.0
5.18k stars 397 forks source link

Big amount of CPU #1440

Closed nguxx closed 2 years ago

nguxx commented 2 years ago

Information

``` Solaar version 1.1.1 Unifying Receiver Device path : /dev/hidraw1 USB id : 046d:C52B Serial : E341955E Firmware : 12.11.B0032 Bootloader : 04.16 Other : AA.AA Has 1 paired device(s) out of a maximum of 6. Notifications: wireless, software present (0x000900) Device activity counters: 1=66 1: Multi Device Silent Mouse M585/M590 Device path : /dev/hidraw2 WPID : 406B Codename : M585/M590 Kind : mouse Protocol : HID++ 4.5 Polling rate : 8 ms (125Hz) Serial number: FE035A84 Model ID: B01B406B0000 Unit ID: 85DA07C8 Bootloader: BOT 48.01.B0002 Firmware: MPM 05.10.B0011 Other: The power switch is located on the base. Supports 35 HID++ 2.0 features: 0: ROOT {0000} 1: FEATURE SET {0001} 2: DEVICE FW VERSION {0003} Firmware: Bootloader BOT 48.01.B0002 0000AE5E7277 Firmware: Firmware MPM 05.10.B0011 406BAE5E7277 Firmware: Other Unit ID: 85DA07C8 Model ID: B01B406B0000 Transport IDs: {'btleid': 'B01B', 'wpid': '406B'} 3: DEVICE NAME {0005} Name: M585/M590 Multi-Device Mouse Kind: mouse 4: WIRELESS DEVICE STATUS {1D4B} 5: RESET {0020} 6: CRYPTO ID {0021} 7: DEVICE FRIENDLY NAME {0007} Friendly Name: M585/M590 8: BATTERY STATUS {1000} Battery: 50%, discharging, next level 20%. 9: CHANGE HOST {1814} Change Host : 1:deb 10: HOSTS INFO {1815} Host 0 (paired): deb Host 1 (paired): 11: REPROG CONTROLS V4 {1B04} Mouse Gestures (saved): Off Mouse Gestures : Off 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, Left Tilt:Mouse Back Button, Right Tilt:Mouse Forward Button} 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, Left Tilt:Mouse Back Button, Right Tilt:Mouse Forward Button} Key/Button Diversion (saved): {Middle Button:Regular, Back Button:Regular, Forward Button:Regular, Left Tilt:Regular, Right Tilt:Regular} Key/Button Diversion : {Middle Button:Regular, Back Button:Regular, Forward Button:Regular, Left Tilt:Regular, Right Tilt:Regular} 12: PERSISTENT REMAPPABLE ACTION {1C00} 13: POINTER SPEED {2205} Pointer Speed: 1.0 Sensitivity (Pointer Speed) (saved): 256 Sensitivity (Pointer Speed) : 256 14: VERTICAL SCROLLING {2100} Roller type: standard Ratchet per turn: 18 Scroll lines: 0 15: DFUCONTROL SIGNED {00C2} 16: DEVICE RESET {1802} internal, hidden 17: unknown:1803 {1803} internal, hidden 18: CONFIG DEVICE PROPS {1806} internal, hidden 19: OOBSTATE {1805} internal, hidden 20: unknown:1813 {1813} internal, hidden 21: unknown:1830 {1830} internal, hidden 22: unknown:1861 {1861} internal, hidden 23: unknown:1890 {1890} internal, hidden 24: unknown:1891 {1891} internal, hidden 25: unknown:18A1 {18A1} internal, hidden 26: unknown:1DF3 {1DF3} internal, hidden 27: unknown:1E00 {1E00} hidden 28: unknown:1EB0 {1EB0} internal, hidden 29: unknown:18B1 {18B1} internal, hidden 30: unknown:1850 {1850} internal, hidden 31: unknown:1E22 {1E22} 32: unknown:1F03 {1F03} internal, hidden 33: unknown:18C0 {18C0} internal, hidden 34: LOWRES WHEEL {2130} Wheel Reports: HID Scroll Wheel Diversion (saved): False Scroll Wheel Diversion : False Has 8 reprogrammable keys: 0: Left Button , default: Left Click => Left Click mse, reprogrammable, pos:0, group:1, group mask:g1 reporting: default 1: Right Button , default: Right Click => Right Click mse, reprogrammable, pos:0, group:1, group mask:g1 reporting: default 2: Middle Button , default: Mouse Middle Button => Mouse Middle Button mse, reprogrammable, divertable, persistently divertable, raw XY, pos:0, group:2, group mask:g1,g2 reporting: default 3: Back Button , default: Mouse Back Button => Mouse Back Button mse, reprogrammable, divertable, persistently divertable, raw XY, pos:0, group:2, group mask:g1,g2 reporting: default 4: Forward Button , default: Mouse Forward Button => Mouse Forward Button mse, reprogrammable, divertable, persistently divertable, raw XY, pos:0, group:2, group mask:g1,g2 reporting: default 5: Left Tilt , default: Mouse Scroll Left Button => Mouse Back Button mse, reprogrammable, divertable, persistently divertable, raw XY, pos:0, group:2, group mask:g1,g2 reporting: default 6: Right Tilt , default: Mouse Scroll Right Button => Mouse Forward Button mse, reprogrammable, divertable, persistently divertable, raw XY, 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: 50%, discharging, next level 20%. USB and Bluetooth Devices 1: Bluetooth Multi-Device Keyboard K380 Device path : /dev/hidraw3 USB id : 046d:B342 Codename : Keyboard K380 Kind : ? Protocol : HID++ 4.5 Serial number: Model ID: B34200000000 Unit ID: 97000000 Firmware: RBK 42.01.B0017 Hardware: 72 Supports 15 HID++ 2.0 features: 0: ROOT {0000} 1: FEATURE SET {0001} 2: DEVICE FW VERSION {0003} Firmware: Firmware RBK 42.01.B0017 B342C18DBFDD Firmware: Hardware 72 Unit ID: 97000000 Model ID: B34200000000 Transport IDs: {'btid': 'B342'} 3: DEVICE NAME {0005} Name: Bluetooth Multi-Device Keyboard K380 Kind: keyboard 4: DEVICE FRIENDLY NAME {0007} Friendly Name: Keyboard K380 5: RESET {0020} 6: BATTERY STATUS {1000} Battery: 50%, discharging, next level 20%. 7: CHANGE HOST {1814} Change Host : 1:deb 8: HOSTS INFO {1815} Host 0 (paired): deb Host 1 (unpaired): Host 2 (paired): Tel 9: REPROG CONTROLS V4 {1B04} Key/Button Diversion (saved): {Volume Up:Regular, Multiplatform App Switch:Regular, Multiplatform Home:Regular, Multiplatform Menu:Regular, Multiplatform Back:Regular, Multiplatform Insert:Regular, Screen Capture/Print Screen:Regular, Fn Down:Regular, Fn Up:Regular, Multiplatform Lock:Regular, Volume Down:Regular, Mute:Regular, Play/Pause:Regular, Next:Regular, Previous:Regular, Search:Regular} Key/Button Diversion : {Volume Up:Regular, Multiplatform App Switch:Regular, Multiplatform Home:Regular, Multiplatform Menu:Regular, Multiplatform Back:Regular, Multiplatform Insert:Regular, Screen Capture/Print Screen:Regular, Fn Down:Regular, Fn Up:Regular, Multiplatform Lock:Regular, Volume Down:Regular, Mute:Regular, Play/Pause:Regular, Next:Regular, Previous:Regular, Search:Regular} 10: unknown:1E00 {1E00} hidden 11: NEW FN INVERSION {40A2} Fn-swap: disabled Fn-swap default: enabled Swap Fx function (saved): False Swap Fx function : False 12: LOCK KEY STATE {4220} 13: KEYBOARD DISABLE KEYS {4521} Disable keys (saved): {Caps Lock:False, Win:False, Scroll Lock:False, Insert:False} Disable keys : {Caps Lock:False, Scroll Lock:False, Insert:False, Win:False} 14: MULTIPLATFORM {4531} Set OS (saved): Linux Set OS : Linux Has 16 reprogrammable keys: 0: Multiplatform Home , default: MultiPlatform Home => MultiPlatform Home is FN, FN sensitive, reprogrammable, divertable, pos:4, group:0, group mask:empty reporting: default 1: Multiplatform App Switch , default: MultiPlatform App Switch => MultiPlatform App Switch is FN, FN sensitive, reprogrammable, divertable, pos:5, group:0, group mask:empty reporting: default 2: Multiplatform Menu , default: MultiPlatform Menu => MultiPlatform Menu is FN, FN sensitive, reprogrammable, divertable, pos:6, group:0, group mask:empty reporting: default 3: Multiplatform Back , default: MultiPlatform Back => MultiPlatform Back is FN, FN sensitive, reprogrammable, divertable, pos:7, group:0, group mask:empty reporting: default 4: Previous , default: Previous => Previous is FN, FN sensitive, divertable, pos:8, group:0, group mask:empty reporting: default 5: Play/Pause , default: Play/Pause => Play/Pause is FN, FN sensitive, divertable, pos:9, group:0, group mask:empty reporting: default 6: Next , default: Next => Next is FN, FN sensitive, divertable, pos:10, group:0, group mask:empty reporting: default 7: Mute , default: Mute => Mute is FN, FN sensitive, divertable, pos:11, group:0, group mask:empty reporting: default 8: Volume Down , default: Volume Down => Volume Down is FN, FN sensitive, divertable, pos:12, group:0, group mask:empty reporting: default 9: Volume Up , default: Volume Up => Volume Up is FN, FN sensitive, divertable, pos:0, group:0, group mask:empty reporting: default 10: Multiplatform Insert , default: Switch Language => Switch Language FN sensitive, reprogrammable, divertable, pos:0, group:0, group mask:empty reporting: default 11: Fn Up , default: unknown:0070 => unknown:0070 is FN, divertable, pos:0, group:0, group mask:empty reporting: default 12: Fn Down , default: unknown:006F => unknown:006F is FN, divertable, pos:0, group:0, group mask:empty reporting: default 13: Screen Capture/Print Screen, default: Screen Capture => Screen Capture is FN, reprogrammable, divertable, pos:0, group:0, group mask:empty reporting: default 14: Search , default: Search Files => Search Files is FN, reprogrammable, divertable, pos:0, group:0, group mask:empty reporting: default 15: Multiplatform Lock , default: WindowsLock => WindowsLock is FN, reprogrammable, divertable, pos:0, group:0, group mask:empty reporting: default Battery: 50%, discharging, next level 20%. ```

Describe the bug solaar take almost 100% of one logical CPU.

Tried :

Note The solaar showis from the last install from git Thanks

pfps commented 2 years ago

Please run Solaar from your clone of the GitHub respository as bin/solaar -dd. When Solaar is consuming too much CPU interrupt it with control-C and post the output including the backtrace from the interrupt.

nguxx commented 2 years ago

Hi, Sorry too be so late, very buzzy AFK. So this what I reproduce (htop give me up to 90 but ps stay under 80, still high no ?):

bash
:~/Solaar$ ps u -C python3
USER         PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
ngux        4860 79.5  0.1 793524 72044 pts/0    Sl+  02:40   1:56 python3 /home/ngux

But I have to say that the git clone version works better than the one I got on apt which was higher (reaching 100 most of the time). Usually, the git clone version is around 25% of CPU. Even 25 seems high, what do you think?


debug After the ^C I got the 500 last lines, enough ? (next code block I relauch a processus for you to see the begin of the debug):

``` bash (solaar:4860): Gtk-WARNING **: 02:40:41.451: Theme directory symbolic/devices of theme Hack-Lime has no size field (solaar:4860): Gtk-WARNING **: 02:40:41.451: Theme directory symbolic/emblems of theme Hack-Lime has no size field (solaar:4860): Gtk-WARNING **: 02:40:41.451: Theme directory symbolic/emotes of theme Hack-Lime has no size field (solaar:4860): Gtk-WARNING **: 02:40:41.451: Theme directory symbolic/mimetypes of theme Hack-Lime has no size field (solaar:4860): Gtk-WARNING **: 02:40:41.451: Theme directory symbolic/status of theme Hack-Lime has no size field 02:40:41,491 INFO [MainThread] solaar.listener: starting receiver listening threads 02:40:41,492 INFO [MainThread] solaar.listener: receiver event add DeviceInfo(path='/dev/hidraw1', vendor_id='046D', product_id='C52B', serial='', release=None, manufacturer=None, product=None, interface=2, driver='logitech-djreceiver', bus_id=3, isDevice=None) 02:40:41,493 INFO [MainThread] logitech_receiver.base: New lock 17 02:40:41,598 INFO [ReceiverListener:hidraw1] logitech_receiver.listener: started with (17) 02:40:41,598 INFO [ReceiverListener:hidraw1] solaar.listener: : notifications listener has started (17) 02:40:41,598 INFO [ReceiverListener:hidraw1] logitech_receiver.base: New lock <_ThreadedHandle(/dev/hidraw1)> 02:40:41,602 INFO [MainThread] solaar.listener: receiver event add DeviceInfo(path='/dev/hidraw3', vendor_id='046D', product_id='B342', serial='34:88:5d:d1:b2:a1', release=None, manufacturer=None, product=None, interface=0, driver='hid-generic', bus_id=5, isDevice=True) 02:40:41,603 INFO [MainThread] logitech_receiver.base: New lock 19 02:40:41,604 INFO [ReceiverListener:hidraw1] logitech_receiver.receiver: : receiver notifications enabled => ('wireless', 'software present') 02:40:41,608 INFO [ReceiverListener:hidraw1] solaar.listener: status_changed : present, No paired devices. (0) 02:40:41,613 INFO [ReceiverListener:hidraw1] logitech_receiver.receiver: : found new device 1 (406B) 02:40:41,613 INFO [ReceiverListener:hidraw1] solaar.listener: connection Notification(10,1,41,04,326B40) for (mouse) 02:40:41,616 INFO [ReceiverListener:hidraw1] solaar.listener: status_changed : present, 1 paired device. (0) 02:40:41,616 INFO [ReceiverListener:hidraw1] logitech_receiver.base: New lock 20 02:40:41,828 INFO [MainThread] solaar.listener: status_changed : paired online, {'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (0) 02:40:41,935 INFO [MainThread] logitech_receiver.settings_templates: check_feature fn-swap [NEW FN INVERSION] detected 02:40:42,188 INFO [MainThread] logitech_receiver.settings_templates: check_feature divert-keys [REPROG CONTROLS V4] detected 02:40:42,211 INFO [MainThread] logitech_receiver.settings_templates: check_feature disable-keyboard-keys [KEYBOARD DISABLE KEYS] detected 02:40:42,256 INFO [MainThread] logitech_receiver.settings_templates: check_feature multiplatform [MULTIPLATFORM] detected 02:40:42,368 INFO [MainThread] logitech_receiver.settings_templates: check_feature change-host [CHANGE HOST] detected 02:40:42,369 INFO [MainThread] logitech_receiver.status: pushing device settings [, , , , ] 02:40:42,497 INFO [ReceiverListener:hidraw1] solaar.listener: status_changed : paired online, {'LINK ENCRYPTED': True, 'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (0) 02:40:42,539 INFO [ReceiverListener:hidraw1] logitech_receiver.device: : unitId 85DA07C8 does not match serial FE035A84 02:40:42,617 INFO [MainThread] solaar.listener: status_changed : paired online, {'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (0) initialization 02:40:42,629 INFO [ReceiverListener:hidraw3] logitech_receiver.listener: started with (19) 02:40:42,629 INFO [ReceiverListener:hidraw3] solaar.listener: : notifications listener has started (19) 02:40:42,629 INFO [ReceiverListener:hidraw3] logitech_receiver.base: New lock <_ThreadedHandle(/dev/hidraw3)> 02:40:42,650 INFO [ReceiverListener:hidraw3] solaar.listener: status_changed : paired online, {'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None, 'NOTIFICATION FLAGS': False} (0) 02:40:42,760 INFO [ReceiverListener:hidraw1] logitech_receiver.settings_templates: check_feature mouse-gestures [REPROG CONTROLS V4] detected 02:40:42,762 INFO [ReceiverListener:hidraw1] logitech_receiver.settings_templates: check_feature reprogrammable-keys [REPROG CONTROLS V4] detected 02:40:42,763 INFO [ReceiverListener:hidraw1] logitech_receiver.settings_templates: check_feature divert-keys [REPROG CONTROLS V4] detected 02:40:42,906 INFO [ReceiverListener:hidraw1] logitech_receiver.hidpp20: Setting host name to bytearray(b'deb') 02:40:42,972 INFO [ReceiverListener:hidraw1] logitech_receiver.settings_templates: check_feature change-host [CHANGE HOST] detected 02:40:42,972 INFO [ReceiverListener:hidraw1] logitech_receiver.status: pushing device settings [, , , , , ] 02:40:43,074 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:40:43,093 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:40:43,122 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:40:43,146 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:40:43,170 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:40:43,196 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:40:43,220 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:40:43,244 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:40:43,268 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:40:43,292 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:40:43,316 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:40:43,340 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:40:43,364 INFO [ReceiverListener:hidraw1] solaar.listener: status_changed : paired online, {'LINK ENCRYPTED': True, 'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (0) 02:40:43,444 INFO [ReceiverListener:hidraw1] logitech_receiver.notifications: : spurious BATTERY status Notification(11,1,08,10,0400C21C0A0000000000000000000000) (solaar:4860): Gdk-CRITICAL **: 02:40:43.987: gdk_window_thaw_toplevel_updates: assertion 'window->update_and_descendants_freeze_count > 0' failed ^CThread 0x00007fc69dd1c640 (most recent call first): File "/usr/local/lib/python3.9/dist-packages/python_xlib-0.31-py3.9.egg/Xlib/protocol/display.py", line 429 in send_and_recv File "/usr/local/lib/python3.9/dist-packages/python_xlib-0.31-py3.9.egg/Xlib/protocol/rq.py", line 1381 in reply File "/usr/local/lib/python3.9/dist-packages/python_xlib-0.31-py3.9.egg/Xlib/protocol/rq.py", line 1369 in __init__ File "/usr/local/lib/python3.9/dist-packages/python_xlib-0.31-py3.9.egg/Xlib/xobject/drawable.py", line 455 in get_property File "/usr/local/lib/python3.9/dist-packages/python_xlib-0.31-py3.9.egg/Xlib/xobject/drawable.py", line 472 in get_full_property File "/home/ngux/Solaar/lib/logitech_receiver/diversion.py", line 295 in x11_focus_prog File "/home/ngux/Solaar/lib/logitech_receiver/diversion.py", line 333 in evaluate File "/home/ngux/Solaar/lib/logitech_receiver/diversion.py", line 209 in evaluate File "/home/ngux/Solaar/lib/logitech_receiver/diversion.py", line 209 in evaluate File "/home/ngux/Solaar/lib/logitech_receiver/diversion.py", line 209 in evaluate File "/home/ngux/Solaar/lib/logitech_receiver/diversion.py", line 844 in process_notification File "/home/ngux/Solaar/lib/logitech_receiver/notifications.py", line 432 in _process_feature_notification File "/home/ngux/Solaar/lib/logitech_receiver/notifications.py", line 197 in _process_device_notification File "/home/ngux/Solaar/lib/logitech_receiver/notifications.py", line 60 in process File "/home/ngux/Solaar/lib/solaar/listener.py", line 192 in _notifications_handler File "/home/ngux/Solaar/lib/logitech_receiver/listener.py", line 190 in run File "/usr/lib/python3.9/threading.py", line 973 in _bootstrap_inner File "/usr/lib/python3.9/threading.py", line 930 in _bootstrap Thread 0x00007fc684ecb640 (most recent call first): File "/usr/local/lib/python3.9/dist-packages/python_xlib-0.31-py3.9.egg/Xlib/protocol/display.py", line 561 in send_and_recv File "/usr/local/lib/python3.9/dist-packages/python_xlib-0.31-py3.9.egg/Xlib/protocol/rq.py", line 1381 in reply File "/usr/local/lib/python3.9/dist-packages/python_xlib-0.31-py3.9.egg/Xlib/protocol/rq.py", line 1369 in __init__ File "/usr/local/lib/python3.9/dist-packages/python_xlib-0.31-py3.9.egg/Xlib/xobject/drawable.py", line 455 in get_property File "/usr/local/lib/python3.9/dist-packages/python_xlib-0.31-py3.9.egg/Xlib/xobject/drawable.py", line 472 in get_full_property File "/home/ngux/Solaar/lib/logitech_receiver/diversion.py", line 295 in x11_focus_prog File "/home/ngux/Solaar/lib/logitech_receiver/diversion.py", line 333 in evaluate File "/home/ngux/Solaar/lib/logitech_receiver/diversion.py", line 209 in evaluate File "/home/ngux/Solaar/lib/logitech_receiver/diversion.py", line 209 in evaluate File "/home/ngux/Solaar/lib/logitech_receiver/diversion.py", line 209 in evaluate File "/home/ngux/Solaar/lib/logitech_receiver/diversion.py", line 844 in process_notification File "/home/ngux/Solaar/lib/logitech_receiver/notifications.py", line 432 in _process_feature_notification File "/home/ngux/Solaar/lib/logitech_receiver/notifications.py", line 197 in _process_device_notification File "/home/ngux/Solaar/lib/logitech_receiver/notifications.py", line 60 in process File "/home/ngux/Solaar/lib/solaar/listener.py", line 263 in _notifications_handler File "/home/ngux/Solaar/lib/logitech_receiver/listener.py", line 190 in run File "/usr/lib/python3.9/threading.py", line 973 in _bootstrap_inner File "/usr/lib/python3.9/threading.py", line 930 in _bootstrap Thread 0x00007fc69e5ea640 (most recent call first): File "/usr/lib/python3.9/threading.py", line 312 in wait File "/usr/lib/python3.9/queue.py", line 171 in get File "/home/ngux/Solaar/lib/solaar/tasks.py", line 60 in run File "/usr/lib/python3.9/threading.py", line 973 in _bootstrap_inner File "/usr/lib/python3.9/threading.py", line 930 in _bootstrap Thread 0x00007fc6a0159640 (most recent call first): File "/usr/local/lib/python3.9/dist-packages/python_xlib-0.31-py3.9.egg/Xlib/protocol/display.py", line 561 in send_and_recv File "/usr/local/lib/python3.9/dist-packages/python_xlib-0.31-py3.9.egg/Xlib/protocol/rq.py", line 1381 in reply File "/usr/local/lib/python3.9/dist-packages/python_xlib-0.31-py3.9.egg/Xlib/protocol/rq.py", line 1369 in __init__ File "/usr/local/lib/python3.9/dist-packages/python_xlib-0.31-py3.9.egg/Xlib/ext/record.py", line 220 in __init__ File "/usr/local/lib/python3.9/dist-packages/python_xlib-0.31-py3.9.egg/Xlib/ext/record.py", line 239 in enable_context Current thread 0x00007fc6a37ba740 (most recent call first): File "/home/ngux/Solaar/lib/solaar/gtk.py", line 127 in _handlesigint File "/usr/lib/python3/dist-packages/gi/_ossighelper.py", line 92 in signal_notify File "/usr/lib/python3/dist-packages/gi/overrides/Gio.py", line 42 in run File "/home/ngux/Solaar/lib/solaar/ui/__init__.py", line 161 in run_loop File "/home/ngux/Solaar/lib/solaar/gtk.py", line 169 in main File "/home/ngux/Solaar/bin/solaar", line 55 in solaar: exit due to keyboard interrupt :~/Solaar$ ```

Another processus from the begining:

``` bash :~/Solaar$ /home/ngux/Solaar/bin/solaar -dd 02:50:20,214 INFO [MainThread] root: language en_GB (UTF-8), translations path None 02:50:20,371 INFO [MainThread] solaar.upower: connected to system dbus, watching for suspend/resume events (solaar:5930): Gtk-WARNING **: 02:50:20.376: Theme parsing error: gtk.css:1:106: Failed to import: Error opening file /home/ngux/.local/share/gnome-shell/extensions/no-title-bar@jonaspoehler.de/stylesheet.css: No such file or directory (solaar:5930): Gtk-WARNING **: 02:50:20.376: Theme parsing error: gtk.css:2:112: Failed to import: Error opening file /home/ngux/.local/share/gnome-shell/extensions/no-title-bar@jonaspoehler.de/stylesheet-tiled.css: No such file or directory (solaar:5930): Gtk-WARNING **: 02:50:20.376: Theme parsing error: gtk.css:3:113: Failed to import: Error opening file /home/ngux/.local/share/gnome-shell/extensions/no-title-bar@franglais125.gmail.com/stylesheet.css: No such file or directory (solaar:5930): Gtk-WARNING **: 02:50:20.376: Theme parsing error: gtk.css:4:119: Failed to import: Error opening file /home/ngux/.local/share/gnome-shell/extensions/no-title-bar@franglais125.gmail.com/stylesheet-tiled.css: No such file or directory (solaar:5930): Gtk-WARNING **: 02:50:20.379: Theme parsing error: gtk.css:1969:72: The :insensitive pseudo-class is deprecated. Use :disabled instead. (solaar:5930): Gtk-WARNING **: 02:50:20.379: Theme parsing error: gtk.css:1969:117: The :insensitive pseudo-class is deprecated. Use :disabled instead. (solaar:5930): Gtk-WARNING **: 02:50:20.379: Theme parsing error: gtk.css:1993:72: The :insensitive pseudo-class is deprecated. Use :disabled instead. (solaar:5930): Gtk-WARNING **: 02:50:20.379: Theme parsing error: gtk.css:1993:117: The :insensitive pseudo-class is deprecated. Use :disabled instead. 02:50:20,401 INFO [MainThread] solaar.ui.notify: starting desktop notifications (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 8x8/emblems of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 16x16/actions of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 16x16/apps of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 16x16/categories of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 16x16/devices of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 16x16/emblems of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 16x16/emotes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 16x16/mimetypes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 16x16/panel of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 16x16/status of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 16x16@2x/actions of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 16x16@2x/apps of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 16x16@2x/categories of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 16x16@2x/devices of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 16x16@2x/emblems of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 16x16@2x/emotes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 16x16@2x/mimetypes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 16x16@2x/panel of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 16x16@2x/status of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 22x22/actions of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 22x22/animations of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 22x22/apps of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 22x22/categories of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 22x22/devices of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 22x22/emblems of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 22x22/emotes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 22x22/mimetypes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 22x22/panel of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 22x22/status of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 22x22@2x/actions of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 22x22@2x/animations of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 22x22@2x/apps of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 22x22@2x/categories of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 22x22@2x/devices of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 22x22@2x/emblems of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 22x22@2x/emotes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 22x22@2x/mimetypes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 22x22@2x/panel of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 22x22@2x/status of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 24x24/actions of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 24x24/animations of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 24x24/apps of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 24x24/categories of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 24x24/devices of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 24x24/emblems of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 24x24/emotes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 24x24/mimetypes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 24x24/panel of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 24x24/status of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 24x24@2x/actions of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 24x24@2x/animations of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 24x24@2x/apps of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 24x24@2x/categories of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 24x24@2x/devices of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 24x24@2x/emblems of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 24x24@2x/emotes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 24x24@2x/mimetypes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 24x24@2x/panel of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 24x24@2x/status of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 32x32/actions of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 32x32/apps of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 32x32/categories of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 32x32/devices of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 32x32/emblems of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 32x32/emotes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 32x32/mimetypes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 32x32/status of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 32x32@2x/actions of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 32x32@2x/apps of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 32x32@2x/categories of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 32x32@2x/devices of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 32x32@2x/emblems of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 32x32@2x/emotes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 32x32@2x/mimetypes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 32x32@2x/status of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 48x48/apps of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 48x48/categories of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 48x48/devices of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 48x48/emblems of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 48x48/emotes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 48x48/mimetypes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 48x48/status of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 48x48@2x/apps of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 48x48@2x/categories of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 48x48@2x/devices of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 48x48@2x/emblems of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 48x48@2x/emotes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 48x48@2x/mimetypes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.404: Theme directory 48x48@2x/places of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.405: Theme directory 48x48@2x/status of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.405: Theme directory 64x64/apps of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.405: Theme directory 64x64/categories of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.405: Theme directory 64x64/devices of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.405: Theme directory 64x64/mimetypes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.405: Theme directory 64x64@2x/apps of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.405: Theme directory 64x64@2x/categories of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.405: Theme directory 64x64@2x/devices of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.405: Theme directory 64x64@2x/mimetypes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.405: Theme directory symbolic/actions of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.405: Theme directory symbolic/apps of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.405: Theme directory symbolic/categories of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.405: Theme directory symbolic/devices of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.405: Theme directory symbolic/emblems of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.405: Theme directory symbolic/emotes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.405: Theme directory symbolic/mimetypes of theme Hack-Lime has no size field (solaar:5930): Gtk-WARNING **: 02:50:20.405: Theme directory symbolic/status of theme Hack-Lime has no size field 02:50:20,443 INFO [MainThread] solaar.listener: starting receiver listening threads 02:50:20,445 INFO [MainThread] solaar.listener: receiver event add DeviceInfo(path='/dev/hidraw1', vendor_id='046D', product_id='C52B', serial='', release=None, manufacturer=None, product=None, interface=2, driver='logitech-djreceiver', bus_id=3, isDevice=None) 02:50:20,445 INFO [MainThread] logitech_receiver.base: New lock 17 02:50:20,550 INFO [ReceiverListener:hidraw1] logitech_receiver.listener: started with (17) 02:50:20,550 INFO [ReceiverListener:hidraw1] solaar.listener: : notifications listener has started (17) 02:50:20,550 INFO [ReceiverListener:hidraw1] logitech_receiver.base: New lock <_ThreadedHandle(/dev/hidraw1)> 02:50:20,555 INFO [ReceiverListener:hidraw1] logitech_receiver.receiver: : receiver notifications enabled => ('wireless', 'software present') 02:50:20,556 INFO [MainThread] solaar.listener: receiver event add DeviceInfo(path='/dev/hidraw3', vendor_id='046D', product_id='B342', serial='34:88:5d:d1:b2:a1', release=None, manufacturer=None, product=None, interface=0, driver='hid-generic', bus_id=5, isDevice=True) 02:50:20,557 INFO [MainThread] logitech_receiver.base: New lock 19 02:50:20,559 INFO [ReceiverListener:hidraw1] solaar.listener: status_changed : present, No paired devices. (0) 02:50:20,564 INFO [ReceiverListener:hidraw1] logitech_receiver.receiver: : found new device 1 (406B) 02:50:20,565 INFO [ReceiverListener:hidraw1] solaar.listener: connection Notification(10,1,41,04,326B40) for (mouse) 02:50:20,567 INFO [ReceiverListener:hidraw1] solaar.listener: status_changed : present, 1 paired device. (0) 02:50:20,568 INFO [ReceiverListener:hidraw1] logitech_receiver.base: New lock 20 02:50:20,713 INFO [ReceiverListener:hidraw1] solaar.listener: status_changed : paired online, {'LINK ENCRYPTED': True, 'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (0) 02:50:20,757 INFO [ReceiverListener:hidraw1] logitech_receiver.device: : unitId 85DA07C8 does not match serial FE035A84 02:50:20,884 INFO [MainThread] solaar.listener: status_changed : paired online, {'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (0) 02:50:20,984 INFO [ReceiverListener:hidraw1] logitech_receiver.settings_templates: check_feature mouse-gestures [REPROG CONTROLS V4] detected 02:50:20,986 INFO [ReceiverListener:hidraw1] logitech_receiver.settings_templates: check_feature reprogrammable-keys [REPROG CONTROLS V4] detected 02:50:20,986 INFO [ReceiverListener:hidraw1] logitech_receiver.settings_templates: check_feature divert-keys [REPROG CONTROLS V4] detected 02:50:20,992 INFO [MainThread] logitech_receiver.settings_templates: check_feature fn-swap [NEW FN INVERSION] detected 02:50:21,125 INFO [ReceiverListener:hidraw1] logitech_receiver.settings_templates: check_feature change-host [CHANGE HOST] detected 02:50:21,126 INFO [ReceiverListener:hidraw1] logitech_receiver.status: pushing device settings [, , , , , ] 02:50:21,225 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:50:21,245 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:50:21,251 INFO [MainThread] logitech_receiver.settings_templates: check_feature divert-keys [REPROG CONTROLS V4] detected 02:50:21,265 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:50:21,273 INFO [MainThread] logitech_receiver.settings_templates: check_feature disable-keyboard-keys [KEYBOARD DISABLE KEYS] detected 02:50:21,285 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:50:21,305 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:50:21,318 INFO [MainThread] logitech_receiver.settings_templates: check_feature multiplatform [MULTIPLATFORM] detected 02:50:21,325 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:50:21,345 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:50:21,365 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:50:21,387 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:50:21,407 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:50:21,427 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:50:21,432 INFO [MainThread] logitech_receiver.settings_templates: check_feature change-host [CHANGE HOST] detected 02:50:21,432 INFO [MainThread] logitech_receiver.status: pushing device settings [, , , , ] 02:50:21,447 WARNING [ReceiverListener:hidraw1] logitech_receiver.hidpp20: REPROG_CONTROLS_v4 setCidReporting on device didn't echo request packet. 02:50:21,467 INFO [ReceiverListener:hidraw1] solaar.listener: status_changed : paired online, {'LINK ENCRYPTED': True, 'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (0) 02:50:21,472 INFO [ReceiverListener:hidraw1] logitech_receiver.notifications: : spurious BATTERY status Notification(11,1,08,10,0400C21C0A0000000000000000000000) 02:50:21,692 INFO [MainThread] solaar.listener: status_changed : paired online, {'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (0) initialization 02:50:21,703 INFO [ReceiverListener:hidraw3] logitech_receiver.listener: started with (19) 02:50:21,704 INFO [ReceiverListener:hidraw3] solaar.listener: : notifications listener has started (19) 02:50:21,704 INFO [ReceiverListener:hidraw3] logitech_receiver.base: New lock <_ThreadedHandle(/dev/hidraw3)> 02:50:21,723 INFO [ReceiverListener:hidraw3] solaar.listener: status_changed : paired online, {'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None, 'NOTIFICATION FLAGS': False} (0) (solaar:5930): Gdk-CRITICAL **: 02:50:22.988: gdk_window_thaw_toplevel_updates: assertion 'window->update_and_descendants_freeze_count > 0' failed ```
pfps commented 2 years ago

Does Solaar start consuming CPU immediately? Does this state continue indefinitely? Does the Solaar main window eventually show up and can you then change device settings?

It looks as if the debugging output you provided come very shortly after Solaar starts.

nguxx commented 2 years ago

Does Solaar start consuming CPU immediately?

Not aways. For now I didn't succeed to understand what is the trigger...

Does this state continue indefinitely?

When it starts to go up, it doesn't stop. Usually that the restless activity of the fan which warn me.

Does the Solaar main window eventually show up and can you then change device settings?

The window does not pop up but i can open it and I can change device settings.

I can say that the git version usually use 20% of CPU and works better than the apt repository version. Yesterday I hit 100% but I forgot to save the debug before killing the processes. I now always open solaar with -dd so, I'll give you another debug next time it goes awry.

pfps commented 2 years ago

OK. I'll wait for the next run.

By the way, please use -ddd to get even more debug information.

pfps commented 2 years ago

Seems to be the same as #1455

pfps commented 2 years ago

@nguxx Please try the testing suggested in issue #1455

pfps commented 2 years ago

@nguxx Have you had a chance to test the PR?

nguxx commented 2 years ago

Hi pfps, In deed I have plenty of no-op operation and in deed I have a K380 keyboard. Because I'm not enough familiar with git I'm not sure to have done the right thing I run the commands :

git fetch origin pull/1456/head:pull_1456
git checkout pull_1456

then

git checkout pull_1456
git fetch origin pull/1456/head
git reset --hard FETCH_HEAD

and eventually I run $HOME/Solaar/bin/solaar The amount of CPU is better than before but still around 10 and 15%

Did I get it right ?

pfps commented 2 years ago

You didn't have to do both of these, but there was no harm in doing the second group.

10-15% CPU utilization seems rather high, but if Solaar is behaving normally, i.e., you can make whatever changes you need to make, then I guess that is what you can expect. But let me see if detecting these no-ops earlier cuts down on the CPU utilization.

pfps commented 2 years ago

Try PR #1474. It detects no-op notifications even earlier.

In the Solaar directory:

git fetch origin pull/1474/head:pull_1474
git checkout pull_1474

Then kill Solaar and run bin/solaar. See how much CPU it uses when the keyboard is active.

nguxx commented 2 years ago

Try PR #1474. It detects no-op notifications even earlier.

In the Solaar directory:

git fetch origin pull/1474/head:pull_1474
git checkout pull_1474

Then kill Solaar and run bin/solaar. See how much CPU it uses when the keyboard is active.

This is perfect! take a look at this

$ ps u -C python3
PID    %CPU %MEM    VSZ         RSS     TTY      STAT START   TIME COMMAND
10211  0.9         0.1     719488    72372  pts/3    Sl+         11:14   0:01 python3 bin/solaar

even if I use intensively the keyboard it never reaches more than 2% for 1 sec and goes back less than 1%. Everything in the windows is functional (connection a K380 and a mouse M590) Thanks a lot for your work ! :100: