X
Tech

Using Linux to manage my keyboard and mouse with Logitech's Unifying receiver

Here's what I found using open source software to enable device management on Linux.
Written by J.A. Watson, Contributor

I have been a fan of Logitech peripheral devices for just about as long as they have existed — at least going back to "serial" mice and "bus" mice and the likes. 

This is not only because they are based here in Switzerland (although that is part of the reason), I also happen to believe very strongly that they make well designed and good quality peripherals (in fact, just about my only complaint about them over the years is that they seem to make a point of discontinuing production of my favourite devices — things like the Cordless Trackman Optical and the Trackman Voyager for example).

A couple of years ago Logitech came out with the Unifying receiver, which allows you to connect up to six (supported) devices to a single USB receiver: what a blessing that little gem is. 

Of course there have always been "desktop" sets sold with a keyboard and mouse together with a single receiver, but if you didn't like the specific pairs offered, you were out of luck.  The sets almost never seemed to include a trackball (only mice), and I'm very partial to the Wave Keyboard which was also not often in a desktop set.  So I have been stuck using at least two USB ports for Logitech wireless receivers. 

At my office the situation was even worse, because I have the same keyboard and trackball combination, but when someone else comes along to look at my screen and wants to show me something, they try to shove the trackball around the desk without much success. So I want to keep a "visitor's mouse" handy as well. I really don't want to give up three USB ports for that, so the Unifying receiver is a real blessing.

Unfortunately, the Unifying management software provided by Logitech is only for Windows. I have previously worked around that problem by booting up some kind of Windows system just long enough to install the Unifying software, pair the various peripherals that I want, and then move the receiver to my Linux systems. 

That works, because once paired the devices will stay that way even with the receiver is unplugged and moved around, but it's not nice. In addition, I tend not to keep Windows systems around for very long, so it's not like I have the same one with the Logitech software installed always at the ready. 

That means that almost every time I need it, I first have to download and install the software (again), then configure, then move to Linux. Ugh.

This weekend I picked up a new keyboard (I had worn the printing off the keycaps on one of my old ones), and decided to have a look for Linux software before giving up and configuring on Windows first.

I had an extra motivation in doing this, actually, because at work we are not considered worthy of having administrator rights to our workstations, so I can't just install the Unifying software there either. I carry a Linux netbook with me all the time, so I thought maybe I could reverse the usual situation — pair the devices on Linux, then move the receiver to my Windows 7 workstation. There would be a bit of irony in that...

A quick search turned up several packages which seemed to do what I needed, with varying degrees of sophistication, from command-line only to full GUI implementations.

The most promising looking was the Solaar package, which is available in source from GitHub or as prebuilt packages for openSuSE, Fedora, Debian, Ubuntu and others. That pretty much covers my needs.

I most often run openSuSE 12.3, so I decided to start there. The link above leads to one-click install versions for 12.2, 12.3 and even 13.1 (nice), so getting it installed was a snooze.  It wasn't even necessary to reboot, just start solaar from the Kickoff Launcher (I am running KDE), and the icon appears in the panel (shown here on the left):

UnifyingIcon
solaar panel icon on openSUSE KDE

 

Hover the mouse on that and it shows a list of Unifying receivers detected, the devices paired to each, and the status of those devices.  (The battery is getting low in my trackball). Notice how the icon has also changed from the default graphic to a low battery warning. Very nice.

UnifyingList
solaar icon peripheral list with status

 

Click the icon, and it opens the GUI management application:

UnifyingMain
solaar main GUI window

 

This is pretty self-explanatory; if you have more than one receiver you have to select the one you want to manage, then click the button to add a new peripheral.  I only found a couple of minor problem with it. 

First, if the receiver already has six devices paired, clicking "Add" gives an error. I could see why that happens, but the problem is at this point you're stuck, because of the second problem — I couldn't figure out how to force it to scan and list the currently paired devices. When it starts up, it shows only the receiver(s). If you add a device, it rescans and then lists everything. But if you can't add, and you can't force a scan, then you can't get to the list of paired devices, so you can't delete one, so you can't add a new one, so you're stuck. 

The other logical approach here would be to automatically switch to "replace a device" mode when there are already six defined (the Logitech software does this), but it doesn't do that either. It's particularly maddening because hovering the mouse on the icon gives a list of the devices, and right-clicking gives a list of the devices, but I couldn't get them into the main window where I would be able to delete one. 

Then I thought maybe I was overlooking something obvious and whoops,  I realised what it was.  When you open the main GUI window, if none of the peripherals has been actively recognised, only the reciever info is shown. But as soon as you touch one of the paired devices, my moving the mouse, touching the keyboard or whatever, the peripheral list comes up. Then it looks like this:

UnifyingGUI
solaar GUI with paired peripherals listed

 

Now the Unpair function is obvious, as is the state of all the paired peripherals. In this example, my m600 TouchMouse has not been turned on, so the solaar program hasn't seen it yet, and doesn't know the battery status (or anything else about it), and the k270 keyboard is what I replaced with the k350 today, so it has not been turned on either. Gosh, this is good...

After using it on openSuSE to set up the peripherals for my office, I decided to try it on Fedora. 

Installation was just about as easy as it had been on openSuSE, although this time it required a CLI command rather than the GUI one-click install. Then I got a bit confused, because when I ran it I saw it starting up, then it just disappeared. It didn't seem to be able to install itself on the Gnome panel as it had on openSuSE/KDE.

Poking around didn't turn up anything, but then when I tried running it again, the GUI window popped open.  I'm not sure what's going on, but that seems to be the pattern — start it once to get it running in the background, then again when you want to open the window. Other than that it looked, felt and worked exactly as it had on openSuSE.

So, there you have it.  Now you can configure your Logitech Unifying peripherals directly under Linux. It's all good!

Related stories

Editorial standards