Description of problem: $solaar show all solaar version 1.1.11 Bolt Receiver Device path : /dev/hidraw2 USB id : 046d:C548 Serial : 43393944353945333241433036344131 Has 2 paired device(s) out of a maximum of 6. Notifications: wireless, software present (0x000900) Device activity counters: 1=252, 2=95 1: MX Keys S Device path : None WPID : B378 Codename : MX KEYS S Kind : keyboard Protocol : HID++ 4.5 Report Rate : 0ms Serial number: B5A47E4F Model ID: B37800000000 Unit ID: B5A47E4F Bootloader: BL1 88.01.B0015 Firmware: RBK 81.01.B0015 Other: The power switch is located on the (unknown). Supports 34 HID++ 2.0 features: 0: ROOT {0000} V0 1: FEATURE SET {0001} V0 2: DEVICE FW VERSION {0003} V4 Firmware: Bootloader BL1 88.01.B0015 B37802EEF676 Firmware: Firmware RBK 81.01.B0015 B37802EEF676 Firmware: Other Unit ID: B5A47E4F Model ID: B37800000000 Transport IDs: {'btleid': 'B378'} 3: DEVICE NAME {0005} V0 Name: MX Keys S Kind: keyboard 4: WIRELESS DEVICE STATUS {1D4B} V0 5: CONFIG CHANGE {0020} V0 6: DEVICE FRIENDLY NAME {0007} V0 Friendly Name: MX KEYS S 7: unknown:0011 {0011} V0 8: UNIFIED BATTERY {1004} V3 Battery: 75%, discharging. 9: REPROG CONTROLS V4 {1B04} V5 Key/Button Diversion (saved): {Calculator:Regular, Lock PC:Regular, Brightness Down:Regular, Brightness Up:Regular, Backlight Down:Regular, Backlight Up:Regular, Previous Fn:Regular, Play/Pause Fn:Regular, Next Fn:Regular, Mute Fn:Regular, Volume Down Fn:Regular, Volume Up Fn:Regular, App Contextual Menu/Right Click:Regular, Voice Dictation:Regular, Open Emoji Panel:Regular, Snipping Tool:Regular, Mute Microphone:Regular} Key/Button Diversion : {Calculator:Regular, Lock PC:Regular, Brightness Down:Regular, Brightness Up:Regular, Backlight Down:Regular, Backlight Up:Regular, Previous Fn:Regular, Play/Pause Fn:Regular, Next Fn:Regular, Mute Fn:Regular, Volume Down Fn:Regular, Volume Up Fn:Regular, App Contextual Menu/Right Click:Regular, Voice Dictation:Regular, Open Emoji Panel:Regular, Snipping Tool:Regular, Mute Microphone:Regular} 10: CHANGE HOST {1814} V1 Change Host : 1:localhost 11: HOSTS INFO {1815} V2 Host 0 (paired): localhost Host 1 (unpaired): Host 2 (unpaired): 12: BACKLIGHT2 {1982} V3 Backlight (saved): Automatic solaar: error: Traceback (most recent call last): File "/usr/lib/python3.10/site-packages/solaar/cli/__init__.py", line 217, in run m.run(c, args, _find_receiver, _find_device) File "/usr/lib/python3.10/site-packages/solaar/cli/show.py", line 305, in run _print_device(dev, dev.number) File "/usr/lib/python3.10/site-packages/solaar/cli/show.py", line 243, in _print_device v = setting.val_to_string(setting.read(False)) File "/usr/lib/python3.10/site-packages/logitech_receiver/settings.py", line 287, in read self._value = self._validator.validate_read(reply) File "/usr/lib/python3.10/site-packages/logitech_receiver/settings.py", line 1026, in validate_read reply_value = _bytes2int(reply_bytes[self._read_skip_byte_count:self._read_skip_byte_count + self._byte_count]) TypeError: 'int' object is not subscriptable Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1. 2. 3.
Needs rebuild for python. I think it is good to at the same time update to latest version https://github.com/pwr-Solaar/Solaar/blob/master/CHANGELOG.md https://github.com/usb-tools/python-hid-parser David GEIGER, you did the previous update Bug 33104. Want to give it another round?
Assignee: bugsquad => geiger.david68210CC: (none) => fri
It's working for me in Mageia 9. I just installed it in my laptop which did not have it previously. The receiver did not show up when I started solaar, but did after I unplugged and replugged the receiver.
CC: (none) => davidwhodgins
$ rpm -q solaar solaar-1.1.11-1.mga9
Created attachment 14911 [details] output of working solaar show all
Looks like https://github.com/pwr-Solaar/Solaar/issues/2352 Fixed by https://github.com/pwr-Solaar/Solaar/pull/2353
Please test upcoming solaar-1.1.14-1.mga9 in Core/Updates_testing repo!
Package: solaar-1.1.14-1.mga9.noarch.rpm SRPM: solaar-1.1.14-1.mga9.src.rpm
Assignee: geiger.david68210 => qa-bugs
No regressions for my system. Mar 25 13:55:35 [RPM][301062]: Transaction ID 67e2ee17 started Mar 25 13:55:35 [RPM][301062]: erase solaar-1.1.11-1.mga9.noarch: success Mar 25 13:55:35 [RPM][301062]: erase python3-hid-parser-0.0.3-0.git20211206.1.mga9.noarch: success Mar 25 13:55:35 [RPM][301062]: install python3-typing-extensions-4.2.0-2.mga9.noarch: success Mar 25 13:55:35 [RPM][301062]: install solaar-1.1.14-1.mga9.noarch: success Mar 25 13:55:35 [RPM][301062]: erase solaar-1.1.11-1.mga9.noarch: success Mar 25 13:55:35 [RPM][301062]: erase python3-hid-parser-0.0.3-0.git20211206.1.mga9.noarch: success Mar 25 13:55:36 [RPM][301062]: install python3-typing-extensions-4.2.0-2.mga9.noarch: success Mar 25 13:55:36 [RPM][301062]: install solaar-1.1.14-1.mga9.noarch: success Killed and restarted solaar. Working as expected. Leaving for someone who had problems with the prior version to ok.
I also had no issues with the 1.1.11-1 version. I have three devices connected to my Unifying Receiver: M325 mouse, k330 keyboard, K400r keyboard. I quit solaar, then went after the update. The update wanted to remove python3-hid-parser, but with urpmq indicating solaar was the only package requiring it, I OKed the removal. The update also drew in a new dependency, python3-typing-extensions. There were no other installation issues. It shouldn't have been necessary, but I rebooted, with solaar shut off. When the desktop came up again, solaar had been started. It appeared to be working, with both keyboards and mouse operational. However, this is the output of solaar show all: $ solaar show all solaar version 1.1.14 Unifying Receiver Device path : /dev/hidraw0 USB id : 046d:C52B Serial : B803937B C Pending : ff FirmwareKind.Firmware: 24.00.B0018 FirmwareKind.Bootloader: 00.06 Has 3 paired device(s) out of a maximum of 6. Notifications: wireless, software present (0x000900) Device activity counters: 1=224, 2=64, 4=86 1: Wireless Mouse M325 Device path : /dev/hidraw1 WPID : 400A Codename : M325 Kind : mouse Protocol : HID++ 2.0 Report Rate : 8ms Serial number: FA5C8C85 Model ID: 400A00000000 Unit ID: FA5C8C85 0: RQM 40.02.B0020 The power switch is located on the base. Supports 21 HID++ 2.0 features: solaar: error: Traceback (most recent call last): File "/usr/lib/python3.10/site-packages/solaar/cli/__init__.py", line 221, in run m.run(c, args, _find_receiver, _find_device) File "/usr/lib/python3.10/site-packages/solaar/cli/show.py", line 325, in run _print_device(dev, dev.number) File "/usr/lib/python3.10/site-packages/solaar/cli/show.py", line 154, in _print_device feature_bytes = feature.to_bytes(2) TypeError: to_bytes() missing required argument 'byteorder' (pos 2)
CC: (none) => andrewsfarm
Created attachment 14915 [details] output of working solaar show all before update
M325 mouse and both keyboards working as before, including the touchpad of the K400r keyboard. I was able to pair a spare M325 mouse with the receiver, using the gui from the Plasma panel.
(In reply to Thomas Andrews from comment #9) > I also had no issues with the 1.1.11-1 version. I have three devices > connected to my Unifying Receiver: M325 mouse, k330 keyboard, K400r > keyboard. I quit solaar, then went after the update. > > The update wanted to remove python3-hid-parser, but with urpmq indicating > solaar was the only package requiring it, I OKed the removal. The update > also drew in a new dependency, python3-typing-extensions. There were no > other installation issues. > > It shouldn't have been necessary, but I rebooted, with solaar shut off. When > the desktop came up again, solaar had been started. It appeared to be > working, with both keyboards and mouse operational. However, this is the > output of solaar show all: > > $ solaar show all > solaar version 1.1.14 > > Unifying Receiver > Device path : /dev/hidraw0 > USB id : 046d:C52B > Serial : B803937B > C Pending : ff > FirmwareKind.Firmware: 24.00.B0018 > FirmwareKind.Bootloader: 00.06 > Has 3 paired device(s) out of a maximum of 6. > Notifications: wireless, software present (0x000900) > Device activity counters: 1=224, 2=64, 4=86 > > 1: Wireless Mouse M325 > Device path : /dev/hidraw1 > WPID : 400A > Codename : M325 > Kind : mouse > Protocol : HID++ 2.0 > Report Rate : 8ms > Serial number: FA5C8C85 > Model ID: 400A00000000 > Unit ID: FA5C8C85 > 0: RQM 40.02.B0020 > The power switch is located on the base. > Supports 21 HID++ 2.0 features: > solaar: error: Traceback (most recent call last): > File "/usr/lib/python3.10/site-packages/solaar/cli/__init__.py", line 221, > in run > m.run(c, args, _find_receiver, _find_device) > File "/usr/lib/python3.10/site-packages/solaar/cli/show.py", line 325, in > run > _print_device(dev, dev.number) > File "/usr/lib/python3.10/site-packages/solaar/cli/show.py", line 154, in > _print_device > feature_bytes = feature.to_bytes(2) > TypeError: to_bytes() missing required argument 'byteorder' (pos 2) I guess that needs report to upstream
I notice that the reporter and the user in katnatek's github reference are/were both using the Bolt receiver, while Dave and I are both using the Unifying receiver. Just a guess, but it seems to me to be too much of a coincidence to be insignificant. @Dave: You just said it was working as expected, as is mine except for the one cli command. Did you try solaar show all after the update? We still need to hear from a Bolt user, to know if the original issue is even fixed.
$ rpm -q solaar solaar-1.1.14-1.mga9 I didn't. That does show a regression wheras before it the show all was working, it now has ... $ solaar show all solaar version 1.1.14 Unifying Receiver Device path : /dev/hidraw1 USB id : 046d:C52B Serial : 3E4BFA0A C Pending : ff FirmwareKind.Firmware: 12.11.B0032 FirmwareKind.Bootloader: 04.16 FirmwareKind.Other: AA.AA Has 2 paired device(s) out of a maximum of 6. Notifications: wireless, software present (0x000900) Device activity counters: 1=255, 2=241 1: Wireless Mouse M185/M235/M310 Device path : /dev/hidraw2 WPID : 4055 Codename : M185/M235/M310 Kind : mouse Protocol : HID++ 4.5 Report Rate : 8ms Serial number: 3E4BFA0A Model ID: 405500000000 Unit ID: 3E4BFA0A 0: RQM 65.40.B0004 The power switch is located on the base. Supports 21 HID++ 2.0 features: solaar: error: Traceback (most recent call last): File "/usr/lib/python3.10/site-packages/solaar/cli/__init__.py", line 221, in run m.run(c, args, _find_receiver, _find_device) File "/usr/lib/python3.10/site-packages/solaar/cli/show.py", line 325, in run _print_device(dev, dev.number) File "/usr/lib/python3.10/site-packages/solaar/cli/show.py", line 154, in _print_device feature_bytes = feature.to_bytes(2) TypeError: to_bytes() missing required argument 'byteorder' (pos 2) It does show the battery levels when I left click on the icon in the systray, which is normally all I use it for.
(In reply to Dave Hodgins from comment #14) > > It does show the battery levels when I left click on the icon in the systray, > which is normally all I use it for. Same here. That, and pairing and unpairing devices as needed. Some mice seem to last longer than others. Everything in the GUI works as usual for me. I tried some of the cli commands, and while some failed because of syntax errors, there were no crashes other than 'show', which crashed with all variations.
The crashes I originally reported render solaar unable to program the mouse and keyboard using rules in rules.yaml. Solaar has always worked for me showing battery levels.
Steve, do the new version provided work for you to program the mouse and keyboard using rules in rules.yaml?
New version installed. solaar -d failed to load from /home/steved/.config/solaar/rules.yaml
$ solaar -dd failed to load from /home/steved/.config/solaar/rules.yaml 'NoneType' object is not iterable 2025-03-29 18:28:53,543,543 INFO [MainThread] solaar.gtk: version 1.1.14, language en_US (UTF-8) 2025-03-29 18:28:53,545,545 INFO [MainThread] solaar.dbus: connected to system dbus, watching for suspend/resume events 2025-03-29 18:28:53,546,546 INFO [MainThread] solaar.ui.desktop_notifications: starting desktop notifications 2025-03-29 18:28:53,572,572 INFO [MainThread] solaar.listener: starting receiver listening threads 2025-03-29 18:28:53,645,645 INFO [MainThread] hidapi.udev_impl: Found device /dev/hidraw2 BID 0003 VID 0000046D PID 0000C548 HID++ True True USB 2 2 2025-03-29 18:28:53,645,645 INFO [MainThread] solaar.listener: receiver event add DeviceInfo(path='/dev/hidraw2', 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) 2025-03-29 18:28:53,645,645 INFO [MainThread] hidapi.udev_impl: OPEN PATH /dev/hidraw2 2025-03-29 18:28:53,698,698 INFO [MainThread] logitech_receiver.base: New lock 13 2025-03-29 18:28:53,704,704 INFO [SolaarListener:hidraw2] logitech_receiver.listener: started with <BoltReceiver(/dev/hidraw2,T13)> (13) 2025-03-29 18:28:53,704,704 INFO [SolaarListener:hidraw2] solaar.listener: <BoltReceiver(/dev/hidraw2,T13)>: notifications listener has started (13) 2025-03-29 18:28:53,704,704 INFO [SolaarListener:hidraw2] logitech_receiver.base: New lock <_ThreadedHandle(/dev/hidraw2)> 2025-03-29 18:28:53,709,709 INFO [SolaarListener:hidraw2] logitech_receiver.receiver: <BoltReceiver(/dev/hidraw2,T13)>: receiver notifications enabled => ('wireless', 'software present') 2025-03-29 18:28:53,721,721 INFO [SolaarListener:hidraw2] solaar.listener: status_changed <BoltReceiver(/dev/hidraw2,T13)>: present (0) (solaar:777515): Gdk-CRITICAL **: 18:28:53.839: gdk_window_thaw_toplevel_updates: assertion 'window->update_and_descendants_freeze_count > 0' failed 2025-03-29 18:28:54,787,787 INFO [SolaarListener:hidraw2] logitech_receiver.receiver: <BoltReceiver(/dev/hidraw2,T13)>: found new device 1 (B378) 2025-03-29 18:28:54,788,788 INFO [SolaarListener:hidraw2] solaar.listener: connection Notification(10,1,41,10,0178B3) for device wpid B378 kind keyboard serial B5A47E4F 2025-03-29 18:28:54,788,788 INFO [SolaarListener:hidraw2] solaar.listener: status_changed <BoltReceiver(/dev/hidraw2,T13)>: present (0) 2025-03-29 18:28:56,517,517 INFO [SolaarListener:hidraw2] logitech_receiver.device: <Device(1,B378,MX Keys S,B5A47E4F)> pushing device settings [<Setting([feature:choice] MX KEYS S:backlight=None)>, <Setting([feature:range] MX KEYS S:backlight_level=None)>, <Setting([feature:range] MX KEYS S:backlight_duration_hands_out=None)>, <Setting([feature:range] MX KEYS S:backlight_duration_hands_in=None)>, <Setting([feature:range] MX KEYS S:backlight_duration_powered=None)>, <Setting([feature:toggle] MX KEYS S:fn-swap=None)>, <Setting([feature:map choice] MX KEYS S:divert-keys=None)>, <Setting([feature:multiple toggle] MX KEYS S:disable-keyboard-keys=None)>, <Setting([feature:choice] MX KEYS S:multiplatform=None)>, <Setting([feature:choice] MX KEYS S:change-host=None)>] 2025-03-29 18:28:56,998,998 INFO [SolaarListener:hidraw2] solaar.listener: status_changed <Device(1,B378,MX Keys S,B5A47E4F)>: paired online (0) 2025-03-29 18:28:57,012,012 INFO [SolaarListener:hidraw2] solaar.listener: status_changed <Device(1,B378,MX Keys S,B5A47E4F)>: paired online (0) 2025-03-29 18:28:58,077,077 INFO [SolaarListener:hidraw2] logitech_receiver.receiver: <BoltReceiver(/dev/hidraw2,T13)>: found new device 2 (B034) 2025-03-29 18:28:58,078,078 INFO [SolaarListener:hidraw2] solaar.listener: connection Notification(10,2,41,10,0234B0) for device wpid B034 kind mouse serial 271BC3A5 2025-03-29 18:28:58,078,078 INFO [SolaarListener:hidraw2] solaar.listener: status_changed <BoltReceiver(/dev/hidraw2,T13)>: present (0) 2025-03-29 18:28:58,654,654 INFO [SolaarListener:hidraw2] logitech_receiver.device: <Device(2,B034,MX Master 3S,271BC3A5)> 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)>] 2025-03-29 18:28:59,299,299 INFO [SolaarListener:hidraw2] solaar.listener: status_changed <Device(2,B034,MX Master 3S,271BC3A5)>: paired online (0) 2025-03-29 18:28:59,313,313 INFO [SolaarListener:hidraw2] solaar.listener: status_changed <Device(2,B034,MX Master 3S,271BC3A5)>: paired online (0)
Was able to fix the failed loading of rules.yaml (format problem). Rules do appear to load properly but the programed buttons are not performing. $ solaar -ddd 2025-03-30 14:51:08,648,648 INFO [MainThread] solaar.gtk: version 1.1.14, language en_US (UTF-8) 2025-03-30 14:51:08,650,650 DEBUG [MainThread] hidapi.udev_impl: Starting dbus monitoring 2025-03-30 14:51:08,650,650 INFO [MainThread] solaar.dbus: connected to system dbus, watching for suspend/resume events 2025-03-30 14:51:08,651,651 DEBUG [MainThread] solaar.ui: startup registered=True, remote=False 2025-03-30 14:51:08,651,651 DEBUG [AsyncUI] solaar.tasks: started ....................................................................... 2025-03-30 14:53:15,487,487 DEBUG [MainThread] logitech_receiver.diversion: evaluate rule: Rule[MouseGesture: Mouse Right, KeyPress: Super_L Page_Down click] 2025-03-30 14:53:15,488,488 DEBUG [MainThread] logitech_receiver.diversion: evaluate condition: MouseGesture: Mouse Right 2025-03-30 14:53:15,488,488 DEBUG [MainThread] logitech_receiver.diversion: evaluate rule: Rule[MouseGesture: Mouse Left, KeyPress: Super_L Page_Up click] 2025-03-30 14:53:15,488,488 DEBUG [MainThread] logitech_receiver.diversion: evaluate condition: MouseGesture: Mouse Left 2025-03-30 14:53:15,488,488 DEBUG [MainThread] logitech_receiver.diversion: evaluate rule: Rule[MouseGesture: Mouse Up, KeyPress: Super_L a click] 2025-03-30 14:53:15,488,488 DEBUG [MainThread] logitech_receiver.diversion: evaluate condition: MouseGesture: Mouse Up 2025-03-30 14:53:15,488,488 DEBUG [MainThread] logitech_receiver.diversion: evaluate rule: Rule[MouseGesture: Mouse Down, KeyPress: Super_L d click] 2025-03-30 14:53:15,488,488 DEBUG [MainThread] logitech_receiver.diversion: evaluate condition: MouseGesture: Mouse Down 2025-03-30 14:53:15,488,488 DEBUG [MainThread] logitech_receiver.diversion: evaluate rule: Rule[And: [Key: Mouse Gesture Button (released), MouseGesture: ], KeyPress: Super_L s click] 2025-03-30 14:53:15,488,488 DEBUG [MainThread] logitech_receiver.diversion: evaluate condition: And: [Key: Mouse Gesture Button (released), MouseGesture: ] 2025-03-30 14:53:15,488,488 DEBUG [MainThread] logitech_receiver.diversion: evaluate condition: Key: Mouse Gesture Button (released)
Logitech wireless keyboard/mouse combination on Mageia9 x86_64. Installed the release version and a battery icon appeared in the Mate panel. The PC is running off mains power. $ rpm -q solaar solaar-1.1.11-1.mga9 Right-click on the icon shows the status of mouse and keyboard. Wireless keyboard discharging; down to 30% Wireless mouse detected 'About solaar' works. $ solaar -dd 2025-04-03 18:11:04,615,615 INFO [MainThread] solaar.gtk: version 1.1.11, language en_GB (UTF-8) 2025-04-03 18:11:04,771,771 INFO [MainThread] logitech_receiver.diversion: GDK Keymap set up 2025-04-03 18:11:04,787,787 INFO [MainThread] solaar.upower: connected to system dbus, watching for suspend/resume events Another Solaar process is already running so just expose its window That shows an interactive Gui which includes the rules editor. The editor confirms that there are no user-defined rules. $ solar show all shows the same sort of information as displayed in comment 9 without the trailing errors, and "Battery status unavailable." for the mouse. Updated to solaar-1.1.14-1.mga9 Same message about removing python3-hid-parser. Removing the unifying receiver kills the panel icon. Replacing it shows a gear cog symbol which changes to the battery symbol a little later. $ solaar show all This returns all the previous information but now returns an error at the end, as reported in comment 14: solaar: error: Traceback (most recent call last): File "/usr/lib/python3.10/site-packages/solaar/cli/__init__.py", line 221, in run m.run(c, args, _find_receiver, _find_device) File "/usr/lib/python3.10/site-packages/solaar/cli/show.py", line 325, in run _print_device(dev, dev.number) File "/usr/lib/python3.10/site-packages/solaar/cli/show.py", line 154, in _print_device feature_bytes = feature.to_bytes(2) TypeError: to_bytes() missing required argument 'byteorder' (pos 2)
CC: (none) => tarazed25
I am attempting to program the mouse and keyboard using rules in rules.yaml Do I also need Solaar's uinput udev rule? https://pwr-solaar.github.io/Solaar/installation/#installing-in-macos
CC: (none) => yvesbrungardSource RPM: (none) => solaar-1.1.11