Solaar: MX Master 3 stopped being recognised by Solaar after update

Created on 18 Feb 2020  路  29Comments  路  Source: pwr-Solaar/Solaar

Information

  • Solaar version: 1.0.1 (1.0.1+dfsg-1+git898-64c76e5~ubuntu18.04.1)
  • Distribution: KDE Neon (Ubuntu 18.04)
  • Kernel version (ex. uname -srmo): Linux 4.15.0-88-generic x86_64 GNU/Linux
  • Output of solaar show:
Exception AttributeError: "'Receiver' object has no attribute '_devices'" in <object repr() failed> ignored
solaar: error: Logitech receiver not found

Describe the bug
Solar starts and runs but no longer recognises the Master 3 even though it was working before performing updates and rebooting,

To Reproduce
Steps to reproduce the behavior:

  1. Type solaar on the command line

Additional context

18:24:17,809    ERROR [MainThread] logitech_receiver.receiver: open DeviceInfo(path=u'/dev/hidraw0', vendor_id=u'046d', product_id=u'c52b', serial=u'', release='1211', manufacturer='Logitech', product='USB Receiver', interface=2, driver=u'logitech-djreceiver')
Traceback (most recent call last):
  File "/usr/share/solaar/lib/logitech_receiver/receiver.py", line 545, in open
    return Receiver(handle, device_info)
  File "/usr/share/solaar/lib/logitech_receiver/receiver.py", line 339, in __init__
    raise Exception("Unknown receiver type", self.product_id)
Exception: (u'Unknown receiver type', u'c52b')
Exception AttributeError: "'Receiver' object has no attribute '_devices'" in <object repr() failed> ignored
18:24:17,809    DEBUG [MainThread] solaar.cli: [/dev/hidraw0] => None
solaar: error: Logitech receiver not found

Most helpful comment

Checking my notes (see below) looks like its from the solaar PPA.

sudo add-apt-repository ppa:solaar-unifying/ppa
sudo apt-get update
sudo apt install solaar

All 29 comments

It could be either the update to solaar or one of the other updates that killed it, I noticed the machine did a kernel update hence the reboot requirement.

It looks as if the problem is not with the MX Master 3 but with the receiver. But that's weird, as I also have a c52b receiver and it is working fine.

Are you running with solaar from Ubuntu or solaar from this repository? If the former the problem might be a python2 problem - Solaar no longer uses python2 but the changeover had a glitch.
Please try python3 solaar. (You may have to install some python3 packages.)

python3 /usr/bin/solaar appears to have worked, thanks!

OK, but we should try to not have this version of Solaar being distributed. How did you install it?

Checking my notes (see below) looks like its from the solaar PPA.

sudo add-apt-repository ppa:solaar-unifying/ppa
sudo apt-get update
sudo apt install solaar

@FFY00 Do you know who made this PPA? I don't use Ubuntu and don't know my way around it.

Its linked from this git repo here under pre-built packages:
https://github.com/pwr-Solaar/Solaar

Looks like this is the package:
https://launchpad.net/~solaar-unifying/+archive/ubuntu/stable

Maintained by the "solaar team":
https://launchpad.net/~solaar-unifying

Someone called gogo?
https://launchpad.net/~trebelnik-stefina

It seems to get regularly updated although I still also have this issue which has actually got worse now. I actually have to go into solaar and change the DPI and change it back again now every time I come out of suspend.
https://github.com/pwr-Solaar/Solaar/issues/467#issuecomment-587708193

@NeonHorizon This last problem indicates that the version of Solaar in the PPA does not include the commits from PR #649
You should be able to clone this repository and run solaar from it to get around this problem for now.

According to the ubuntu package its at commit 64c76e5 which means its the last commit yesterday which is why I'm surprised I'm having problems. The package appears to be regularly updated.

Looking at https://launchpad.net/~solaar-unifying/+archive/ubuntu/stable I see dates of 6 December 2019. Where are you seeing 64c76e5?

Aah, I think I see. There are two packages - stable and git. Stable is from 6 December, git is current. Which one were you running?

Edit: One thing to look at is the first line of the solaar executable. The up-to-date version has
#!/usr/bin/env python3

As per top of this post the package is 1.0.1+dfsg-1+git898-64c76e5~ubuntu18.04.1
At least thats what the package says let me check the executable like you say.

Hmm..executable has #!/usr/bin/python at the start

I've purged the package and reinstalled it, its the same. Let me see if I can check the contents of the package...

I expect that the newer version of Solaar was installed somewhere else, maybe /usr/local/bin.

Only solaar-cli in there
/usr/bin/ is definitely where its being installed as the file disappears when I purge it...

Looking here all the packages are really out of date...
https://launchpad.net/~solaar-unifying/+archive/ubuntu/stable/+packages

Which is odd as dpkg is definitely telling me its last nights build?

dpkg --list | grep solaar
ii  solaar                                        1.0.1+dfsg-1+git898-64c76e5~ubuntu18.04.1        all          Logitech Unifying Receiver peripherals manager for Linux

I just looked in the tarball solaar_1.0.1+dfsg-1+git898-64c76e5~ubuntu18.04.1.tar.xz and it does have the current version with python3. So somehow you appear to be installing the stable version.

Let me purge it, remove the repo and start again

OK if I purge and remove the repo and install I get 0.9.2
Can I recommend you guys make a snap package?
The repos appear to be a big old mess :)

OK I've tried all three package sources detailed in the instructions on this git repository and they all give me a package without the python 3.
https://github.com/pwr-Solaar/Solaar

I don't know how apt-get works, but is it possible that you have both ppa:solaar-unifying/stable and ppa:solaar-unifying/ppa and somehow you are installing from stable?
You could just clone this repository and run from the clone.

Yes I figured that was the best solution.
I just cloned the repo and now I have the python3 version.
Now when I sleep and wake again I physically have to unplug and replug the dongle then it gets the new DPI settings. Let me work through the install instructions and also reboot and see if its better then.

OK I'm definitely running with the latest version directly from git now (no others installed) and unfortunately it still doesn't configure the mouse when coming out of sleep.

This is what happens:

  1. Wake computer from sleep
  2. Wiggle mouse
  3. Solaar says mouse powered on
  4. Mouse remains in default state
  5. Try to change DPI in solaar
  6. The DPI field just greys out
  7. Mouse remains in default state
  8. Remove and re-insert dongle
  9. Solaar reconfigures mouse and all is good

Here is another sequence of events:

  1. Wake computer from sleep
  2. Wiggle mouse
  3. Solaar says mouse powered on
  4. Mouse remains in default state
  5. Exit solaar application
  6. Relaunch solaar application
  7. Solaar reconfigures mouse and all is good

That's puzzling. I thought this was fixed. Can you open a new issue about just this with the message above?

Yeah sure... thanks for helping out apologies for the long trip through the packages.

Life is puzzling. Why could software be any different?

Was this page helpful?
0 / 5 - 0 ratings

Related issues

fdev31 picture fdev31  路  9Comments

witheld9 picture witheld9  路  13Comments

Tomaszal picture Tomaszal  路  17Comments

meson11 picture meson11  路  5Comments

pauledd picture pauledd  路  16Comments