I installed solaar from the build service, but it does not work. Either it says it does not have permission to access the Logitech usb key, and I should reinsert it, or it cannot find my mouse (which is working), and the pair device button is greyed out.
In the meantime my mouse jumps, jerks, and does not respond properly, and is really difficult to use. Ditto for a wired mouse.
I installed from the standard repos. I’m not sure if that’s what you meant.
I got the same message. So I unplugged the receiver, and plugged it back in. Still no good.
I told solaar to quit. I restarted. And now it seems to be working properly.
Note that the mouse was already working properly before I started solaar.
I rebooted, and get the same permissions problem when I start it from the Start Menu. I unplug it, and plug it in again. The widget in the bottom bar is gray.
I stop it, and start it as root and it sees my Nano Receiver, but nothing is paired, and the add button is disabled.
So I uninstalled the version from the build service and installed the one from the distribution. But I get the same things, even after a reboot.
Mine shows the one paired device (my mouse), with options to pair with other devices.
I’m not sure what’s the difference between our systems.
Revisiting this.
You mention a nano receiver. My M325 mouse uses a unified receiver. Perhaps that’s why we are seeing differences.
I don’t have a device with a nano receiver to test.
Installed from standard repo, but I can’t even get it to start:
/usr/lib/python2.7/site-packages/solaar/gtk.py:33: PyGIWarning: Gtk was imported without specifying a version first. Use gi.require_version('Gtk', '3.0') before import to ensure that the right version gets loaded.
__import__(module)
solaar: error: GObject.__init__() takes exactly 0 arguments (4 given)
Hi
The package has not been updated in a long time… Might need a udev rule tweak;
Also see: http://pwr.github.io/Solaar/devices.html
Can you post the output from lsusb, eg;
lsusb |grep Logitech
Bus 001 Device 003: ID 046d:c52b Logitech, Inc. Unifying Receiver
Not sure who you were asking, Malcolm, but:
lsusb | grep Logitech
Bus 001 Device 002: ID 046d:c52b Logitech, Inc. Unifying Receiver
According to the web page you reference, it should work. But it’s throwing a python error…
Hi
Can you open a terminal window and start from the command line with the debug option, the gi.require_version is an INFO so shouldn’t stop the app from running.
Is typelib-1_0-Gtk-3_0 installed, your not running wayland either?
I’m on SLES 15 here, but it’s working as expected…
solaar -d
/usr/lib/python2.7/site-packages/solaar/gtk.py:33: PyGIWarning: Gtk was imported without specifying a version first. Use gi.require_version('Gtk', '3.0') before import to ensure that the right version gets loaded.
__import__(module)
11:07:11,454 INFO [MainThread] root: language en_US (UTF-8), translations path None
11:07:11,461 INFO [MainThread] solaar.ui: application /io/github/pwr/solaar, registered True
/usr/lib/python2.7/site-packages/solaar/ui/notify.py:33: PyGIWarning: Notify was imported without specifying a version first. Use gi.require_version('Notify', '0.7') before import to ensure that the right version gets loaded.
from gi.repository import Notify
11:07:11,558 INFO [MainThread] solaar.ui.tray: using StatusIcon
11:07:11,559 INFO [MainThread] solaar.ui.notify: starting desktop notifications
11:07:11,704 INFO [MainThread] solaar.upower: connected to system dbus, watching for suspend/resume events
11:07:11,718 INFO [MainThread] solaar.listener: starting receiver listening threads
11:07:11,734 INFO [MainThread] solaar.listener: receiver event add DeviceInfo(path=u'/dev/hidraw3', vendor_id=u'046d', product_id=u'c52b', serial=u'', release='1203', manufacturer='Logitech', product='USB Receiver', interface=2, driver=u'logitech-djreceiver')
11:07:11,741 INFO [ReceiverListener:hidraw3] logitech_receiver.listener: started with <UnifyingReceiver(/dev/hidraw3,4)> (4)
11:07:11,741 INFO [ReceiverListener:hidraw3] solaar.listener: <UnifyingReceiver(/dev/hidraw3,4)>: notifications listener has started (4)
11:07:11,746 INFO [ReceiverListener:hidraw3] logitech_receiver.receiver: <UnifyingReceiver(/dev/hidraw3,4)>: receiver notifications enabled => ('wireless', 'software present')
11:07:11,753 INFO [ReceiverListener:hidraw3] solaar.listener: status_changed <UnifyingReceiver(/dev/hidraw3,4)>: present, No paired devices. (0)
11:07:11,756 INFO [ReceiverListener:hidraw3] logitech_receiver.receiver: <UnifyingReceiver(/dev/hidraw3,4)>: found new device 1 (400A)
11:07:11,756 INFO [ReceiverListener:hidraw3] solaar.listener: Notification(1,41,04,120A40) triggered new device <PairedDevice(1,400A,M325)> (mouse)
11:07:11,763 INFO [ReceiverListener:hidraw3] solaar.listener: status_changed <UnifyingReceiver(/dev/hidraw3,4)>: present, 1 paired device. (0)
11:07:12,152 INFO [ReceiverListener:hidraw3] solaar.listener: status_changed <PairedDevice(1,400A,M325)>: paired online, Battery: 70% (discharging) (1)
11:07:12,154 INFO [ReceiverListener:hidraw3] solaar.listener: status_changed <PairedDevice(1,400A,M325)>: paired online, Battery: 70% (discharging) (0)
11:07:12,157 WARNING [ReceiverListener:hidraw3] logitech_receiver.status: <PairedDevice(1,400A,M325)>: battery 70%, ALERT invalid battery
11:07:12,157 INFO [ReceiverListener:hidraw3] solaar.listener: status_changed <PairedDevice(1,400A,M325)>: paired online, Battery: 70% (invalid battery) (5) battery: 70% (invalid battery)
Not running Wayland.
Reading installed packages...
'typelib-1_0-Gtk-3_0' is already installed.
and
solaar -d
/usr/lib/python2.7/site-packages/solaar/gtk.py:33: PyGIWarning: Gtk was imported without specifying a version first. Use gi.require_version('Gtk', '3.0') before import to ensure that the right version gets loaded.
__import__(module)
10:27:13,810 INFO [MainThread] root: language en_US (UTF-8), translations path None
10:27:13,844 INFO [MainThread] solaar.ui: application /io/github/pwr/solaar, registered True
solaar: error: GObject.__init__() takes exactly 0 arguments (4 given)
On Mon 11 Jun 2018 04:36:06 PM CDT, susesteve wrote:
Not running Wayland.
Code:
Reading installed packages…
‘typelib-1_0-Gtk-3_0’ is already installed.
and
Code:
solaar -d
/usr/lib/python2.7/site-packages/solaar/gtk.py:33: PyGIWarning: Gtk
was imported without specifying a version first. Use
gi.require_version(‘Gtk’, ‘3.0’) before import to ensure that the right
version gets loaded. import(module) 10:27:13,810 INFO
[MainThread] root: language en_US (UTF-8), translations path None
10:27:13,844 INFO [MainThread] solaar.ui:
application /io/github/pwr/solaar, registered True solaar: error:
GObject.init() takes exactly 0 arguments (4 given)
Hi
OK, is python2-gobject and python2-pyudev installed?
–
Cheers Malcolm °¿° SUSE Knowledge Partner (Linux Counter #276890)
SLES 15 | GNOME Shell 3.26.2 | 4.12.14-23-default
If you find this post helpful and are logged into the web interface,
please show your appreciation and click on the star below… Thanks!
Yes, they’re both installed. Nosing about the web, I see this error
/usr/lib/python2.7/site-packages/solaar/gtk.py:33: PyGIWarning: Gtk was imported without specifying a version first. Use gi.require_version('Gtk', '3.0') before import to ensure that the right version gets loaded.
is not uncommon with Solaar on other distros. Since Solaar is just a convenience, and its lack not life-threatening, I’ll just soldier on without it. Thanks for you attention, Malcolm.
On Mon 11 Jun 2018 11:36:03 PM CDT, susesteve wrote:
Yes, they’re both installed. Nosing about the web, I see this error
Code:
/usr/lib/python2.7/site-packages/solaar/gtk.py:33: PyGIWarning: Gtk
was imported without specifying a version first. Use
gi.require_version(‘Gtk’, ‘3.0’) before import to ensure that the right
version gets loaded. --------------------
is not uncommon with Solaar on other distros. Since Solaar is just a
convenience, and its lack not life-threatening, I’ll just soldier on
without it. Thanks for you attention, Malcolm.
Hi
There is always solaar-cli which should still work. I built the latest
git version and see the error on Tumbleweed…
–
Cheers Malcolm °¿° SUSE Knowledge Partner (Linux Counter #276890)
SLES 15 | GNOME Shell 3.26.2 | 4.12.14-23-default
If you find this post helpful and are logged into the web interface,
please show your appreciation and click on the star below… Thanks!
My two cents: I’m running Leap 15 on a machine upgraded from 42.3, where Solaar worked fine. Solaar runs at login, but reports that it can’t find any Logitech receivers.
If I close it down, then restart it, it will (usually) find the receiver and behave normally for a period of anywhere from a few seconds to an hour, then begin reporting “No receiver” again.
If I run it from the command line with the debug switch, I get the same warning regarding the Python version. I haven’t had any luck yet capturing the moment when it loses the receiver. I’ll keep trying on that.
For me, it is the other way around. Solaar never worked properly in 42.3. It seems to be doing fine with Leap 15.0.
In 42.3, I would see an icon in the tray. But it did not do anything. I had to start a second instance of solaar if I wanted to get any useful function from it. But with 15.0, it works correctly the first time.
Okay, I haven’t tried leaving it running for a long time. I’ll recheck tomorrow.
Success.
After running for about half an hour, I got a long sequence of errors like so:
09:45:06,877 ERROR [ReceiverListener:hidraw0] logitech_receiver.listener: processing Notification(2,02,00,0000000000000000000000)
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/logitech_receiver/listener.py", line 185, in run
self._notifications_callback(n)
File "/usr/lib/python2.7/site-packages/solaar/listener.py", line 207, in _notifications_handler
_notifications.process(dev, n)
File "/usr/lib/python2.7/site-packages/logitech_receiver/notifications.py", line 54, in process
return _process_device_notification(device, status, notification)
File "/usr/lib/python2.7/site-packages/logitech_receiver/notifications.py", line 105, in _process_device_notification
return _process_hidpp10_custom_notification(device, status, n)
File "/usr/lib/python2.7/site-packages/logitech_receiver/notifications.py", line 130, in _process_hidpp10_custom_notification
if n.sub_id == _R.illumination:
AttributeError: 'NamedInts' object has no attribute 'illumination'
These went on for several minutes, and were followed by:
09:45:17,323 INFO [ReceiverListener:hidraw0] solaar.configuration: saved {u'101B:B094F266': {u'side-scroll': True, u'smooth-scroll': False, u'_name': u'Marathon Mouse M705'}, u'4002:13339948': {u'fn-swap': False, u'_name': u'Wireless Solar Keyboard K750'}, u'_version': u'0.9.2'} to /home/solop/.config/solaar/config.json
09:45:17,324 ERROR [ReceiverListener:hidraw0] logitech_receiver.base: write failed, assuming handle 4 no longer available
09:45:17,324 ERROR [ReceiverListener:hidraw0] logitech_receiver.listener: processing Notification(1,41,04,B10240)
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/logitech_receiver/listener.py", line 185, in run
self._notifications_callback(n)
File "/usr/lib/python2.7/site-packages/solaar/listener.py", line 207, in _notifications_handler
_notifications.process(dev, n)
File "/usr/lib/python2.7/site-packages/logitech_receiver/notifications.py", line 54, in process
return _process_device_notification(device, status, notification)
File "/usr/lib/python2.7/site-packages/logitech_receiver/notifications.py", line 97, in _process_device_notification
return _process_hidpp10_notification(device, status, n)
File "/usr/lib/python2.7/site-packages/logitech_receiver/notifications.py", line 174, in _process_hidpp10_notification
status.changed(active=link_established)
File "/usr/lib/python2.7/site-packages/logitech_receiver/status.py", line 268, in changed
s.apply()
File "/usr/lib/python2.7/site-packages/logitech_receiver/settings.py", line 152, in apply
self.write(value)
File "/usr/lib/python2.7/site-packages/logitech_receiver/settings.py", line 136, in write
reply = self._rw.write(self._device, data_bytes)
File "/usr/lib/python2.7/site-packages/logitech_receiver/settings.py", line 200, in write
return device.feature_request(self.feature, self.write_fnid, data_bytes)
File "/usr/lib/python2.7/site-packages/logitech_receiver/receiver.py", line 288, in feature_request
return _hidpp20.feature_request(self, feature, function, *params)
File "/usr/lib/python2.7/site-packages/logitech_receiver/hidpp20.py", line 325, in feature_request
return device.request((feature_index << 8) + (function & 0xFF), *params)
File "/usr/lib/python2.7/site-packages/logitech_receiver/receiver.py", line 281, in request
return _base.request(self.receiver.handle, self.number, request_id, *params)
File "/usr/lib/python2.7/site-packages/logitech_receiver/base.py", line 340, in request
write(ihandle, devnumber, request_data)
File "/usr/lib/python2.7/site-packages/logitech_receiver/base.py", line 171, in write
raise NoReceiver(reason=reason)
NoReceiver: {'reason': OSError(32, 'Broken pipe')}
09:45:17,326 ERROR [ReceiverListener:hidraw0] logitech_receiver.base: read failed, assuming handle 4 no longer available
09:45:17,326 WARNING [ReceiverListener:hidraw0] logitech_receiver.listener: receiver disconnected
09:45:17,326 INFO [ReceiverListener:hidraw0] solaar.listener: <UnifyingReceiver(/dev/hidraw0,4)>: notifications listener has stopped
Hope that points someone in the right direction.
nrickert, just goes to show you that everyone’s system is a little different, right?
Afraid so.
But then I just checked solaar, that had been running for several hours. And it says that there’s no receiver. So I guess I’m seeing the same bug. I have closed solaar for now. Nothing much depends on it working.
That makes me feel a little better. It’s not just me…
Does your solaar do the color change? Green while it sees the receiver, changing to yellow when it loses it?
On closer inspection–read that as looking through the 6 megabyte log I just got–those notifications are all during normal operation: there’s one every time I type a key or move the mouse. Probably not relevant, in other words.
Hi
The command line (solaar-cli) should work fine?
I’ve updated to the latest 0.9.3 git release (GUI doesn’t work in TW), but the solaar show (solaar-cli deprecated) commands etc work fine…
Can some one test…
solaar show
Unifying Receiver
Device path : /dev/hidraw0
USB id : 046d:c52b
Serial : 39CA9E59
Firmware : 12.03.B0025
Bootloader : 02.15
Other : AA.AA
Has 1 paired device(s) out of a maximum of 6.
Notifications: wireless (0x000100)
Device activity counters: 1=118
1: Wireless Mouse M325
Codename : M325
Kind : mouse
Wireless PID : 400A
Protocol : HID++ 2.0
Polling rate : 8 ms (125Hz)
Serial number: FCEF65D2
Firmware: RQM 40.01.B0018
The power switch is located on the base.
Supports 22 HID++ 2.0 features:
0: ROOT {0000}
1: FEATURE SET {0001}
2: DEVICE FW VERSION {0003}
3: DEVICE NAME {0005}
4: BATTERY STATUS {1000}
5: unknown:1830 {1830} internal, hidden
6: unknown:1850 {1850} internal, hidden
7: unknown:1860 {1860} internal, hidden
8: unknown:1890 {1890} internal, hidden
9: unknown:18A0 {18A0} internal, hidden
10: unknown:18C0 {18C0} internal, hidden
11: WIRELESS DEVICE STATUS {1D4B}
12: unknown:1DF3 {1DF3} internal, hidden
13: REPROG CONTROLS {1B00}
14: unknown:1DF0 {1DF0} hidden
15: unknown:1E00 {1E00} hidden
16: unknown:1E80 {1E80} internal, hidden
17: unknown:1E90 {1E90} internal, hidden
18: unknown:1F03 {1F03} internal, hidden
19: VERTICAL SCROLLING {2100}
20: MOUSE POINTER {2200}
21: unknown:18B0 {18B0} internal, hidden
Has 5 reprogrammable keys:
0: LEFT CLICK => LeftClick mse, reprogrammable
1: RIGHT CLICK => RightClick mse, reprogrammable
2: MIDDLE BUTTON => MiddleMouseButton mse, reprogrammable
3: BACK AS BUTTON 4 => Back mse, reprogrammable
4: FORWARD AS BUTTON 5 => BrowserForward mse, reprogrammable
Battery: 70%, discharging.
solaar show
Unifying Receiver
Device path : /dev/hidraw1
USB id : 046d:c52b
Serial : 46DA93E1
Firmware : 12.01.B0019
Bootloader : 02.14
Has 1 paired device(s) out of a maximum of 6.
Notifications: wireless (0x000100)
Device activity counters: 1=12
1: Wireless Touch Keyboard K400
Codename : K400
Kind : keyboard
Wireless PID : 4024
Protocol : HID++ 2.0
Polling rate : 8 ms (125Hz)
Serial number: 18B50848
Firmware: RQK 50.01.B0013
The power switch is located on the edge of top right corner.
Supports 22 HID++ 2.0 features:
0: ROOT {0000}
1: FEATURE SET {0001}
2: FEATURE INFO {0002}
3: DEVICE FW VERSION {0003}
4: DEVICE NAME {0005}
5: BATTERY STATUS {1000}
6: REPROG CONTROLS {1B00}
7: REPROG CONTROLS V3 {1B03}
8: WIRELESS DEVICE STATUS {1D4B}
9: unknown:1DF0 {1DF0} hidden
10: unknown:1DF3 {1DF3} internal, hidden
11: unknown:1E00 {1E00} hidden
12: VERTICAL SCROLLING {2100}
13: HI RES SCROLLING {2120}
14: MOUSE POINTER {2200}
15: FN INVERSION {40A0}
16: NEW FN INVERSION {40A2}
17: ENCRYPTION {4100}
18: KEYBOARD LAYOUT {4520}
19: TOUCHPAD FW ITEMS {6010}
20: TOUCHPAD SW ITEMS {6011}
21: TOUCHPAD WIN8 FW ITEMS {6012}
Has 18 reprogrammable keys:
0: SHOW DESKTOP => ShowDesktop is FN, reprogrammable
1: METRO APPSWITCH => MetroAppSwitch is FN, reprogrammable
2: METRO SEARCH => MetroSearch is FN, reprogrammable
3: METRO SHARE => MetroShare is FN, reprogrammable
4: METRO DEVICES => MetroDevices is FN, reprogrammable
5: METRO SETTINGS => MetroSettings is FN, reprogrammable
6: Previous => Previous is FN
7: Play/Pause => Play/Pause is FN
8: Next => Next is FN
9: Mute => Mute is FN
10: Volume Down => Volume Down is FN
11: Volume Up => Volume Up is FN
12: MEDIA PLAYER => Music nonstandard, reprogrammable
13: Lock PC => WindowsLock nonstandard, reprogrammable
14: SLEEP => Sleep nonstandard, reprogrammable
15: LEFT CLICK => LeftClick mse
16: LEFT CLICK => LeftClick mse
17: RIGHT CLICK => RightClick mse
Battery: 70%, discharging.
Unifying Receiver
Device path : /dev/hidraw0
USB id : 046d:c52b
Serial : 0DFD99A0
Firmware : 12.01.B0019
Bootloader : 02.14
Has 2 paired device(s) out of a maximum of 6.
Notifications: wireless, software present (0x000900)
Device activity counters: 1=217, 2=205
1: Wireless Solar Keyboard K750
Codename : K750
Kind : keyboard
Wireless PID : 4002
Protocol : HID++ 2.0
Polling rate : 20 ms (50Hz)
Serial number: 13339948
Firmware: RQK 33.00.B0015
Bootloader: DFU 00.02.B0003
The power switch is located on the edge of top right corner.
Supports 11 HID++ 2.0 features:
0: ROOT {0000}
1: FEATURE SET {0001}
2: DEVICE FW VERSION {0003}
3: DEVICE NAME {0005}
4: REPROG CONTROLS {1B00}
5: WIRELESS DEVICE STATUS {1D4B}
6: unknown:1DF3 {1DF3} hidden
7: FN INVERSION {40A0}
8: ENCRYPTION {4100}
9: SOLAR DASHBOARD {4301}
10: KEYBOARD LAYOUT {4520}
Has 12 reprogrammable keys:
0: MY HOME => HomePage is FN, FN sensitive, reprogrammable
1: Mail => Email is FN, FN sensitive, reprogrammable
2: SEARCH => Search is FN, FN sensitive, reprogrammable
3: Calculator => Calculator is FN, FN sensitive, reprogrammable
4: MEDIA PLAYER => Music is FN, FN sensitive, reprogrammable
5: Previous => Previous is FN, FN sensitive
6: Play/Pause => Play/Pause is FN, FN sensitive
7: Next => Next is FN, FN sensitive
8: Mute => Mute is FN, FN sensitive
9: Volume Down => Volume Down is FN, FN sensitive
10: Volume Up => Volume Up is FN, FN sensitive
11: SLEEP => Sleep is FN, FN sensitive, reprogrammable
Battery status unavailable.
2: Marathon Mouse M705
Codename : M705
Kind : mouse
Wireless PID : 101B
Protocol : HID++ 1.0
Polling rate : 8 ms (125Hz)
Serial number: B094F266
Firmware: 17.01.B0016
Bootloader: 03.05
Other: 00.04
The power switch is located on the base.
Notifications: battery status (0x100000).
Battery: 95%, discharging.
I’ve been running the Leap 15 version for the past hour and a half in debug mode. The log file is filling up with the same notification messages, and there are some errors like so:
15:14:29,534 ERROR [ReceiverListener:hidraw0] logitech_receiver.listener: processing Notification(1,41,04,710240)
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/logitech_receiver/listener.py", line 185, in run
self._notifications_callback(n)
File "/usr/lib/python2.7/site-packages/solaar/listener.py", line 189, in _notifications_handler
dev = self.receiver.register_new_device(n.devnumber, n)
File "/usr/lib/python2.7/site-packages/logitech_receiver/receiver.py", line 407, in register_new_device
raise IndexError("%s: device number %d already registered" % (self, number))
IndexError: <UnifyingReceiver(/dev/hidraw0,4)>: device number 1 already registered
But it hasn’t lost track of the receiver yet. I’m encouraged.