11

There are systems consisting of wholly free software, and in some cases the hardware is also driven by free software.

What about mice? Do mice have software on them which would make them "nonfree"? I've plugged this mouse into Ubuntu, Debian and Trisquel Linux distributions and was never prompted to install any nonfree software, which leads me to assume that mice are generic and just send keycodes to the computer.

Computer Mice seem like trivial devices. But I do own a more sophisticated mouse which can be loaded up with macros, so it doesn't seem like mice are necessarily so trivial, and the software driving those macros is probably nonfree. Would using either of these mice exempt me from running a "wholly free system"? (Or would the supposed triviality of such software--perhaps it is unable to make network requests, for instance--make it a non-issue?)

3

Trivially, a mouse can't be free software, because a mouse is not software.

So what other questions could this be?

  • Can a mouse's drivers be free and or open source software?
  • Can a mouse's design be free/open?
  • Can a mouse's firmware be free/open?

To all questions, the answer is, obviously, yes, it can be. If there exist "advanced" mice with non-free firmware (the coding on the chips in the mouse), I don't know, but from a gut feeling* I assume it won't be all that many. The same goes for the design. I doubt many high-end manufacturers would go for an open design, as one of their main selling point often is their design.

As for the drivers, there usually exist free drivers all consumer peripherals.

*warning: answer contains a gut feeling. There are hardware manufacturers that embraced open technology, but it's not much, and "gaming" mice, the kind that usually have macros, are not generally closesly affiliated with the open source or free software movements.

3

A mouse's design can be free or not free. Software inside of a mouse can be free or not free. This is not related to your ability to use it.

There are standard protocols for USB 'human interface' devices. So, I can build a mouse around a microcontroller, and I can load that microcontroller with 100% not free microcode, and I can sell it and it will work perfectly well on every operating system in creation with no special drivers, free-, open-, or proprietary.

So the software of this mouse, and perhaps many other similar murines, is not free. Further, the mouse is a piece of hardware, it has a design. That design is copyrighted, and the author may not have chosen to license that design under a free license. So the hardware design of the mouse is very likely not free.

However, I could also publish the design of a mouse under a free license, and publish the microcode under a free license, if a free-range mouse was what I wanted to make.

There is no connection between the contents or design of the mouse and the ability of a FLOSSy operating system to communicate with it.

3

You're thinking along the right lines but I think you're minifying the scope of your actual problem toward running a "wholly free system":

  • GPUs have proprietary firmwares (many required even for free drivers to work)
  • CPUs ship with firmware "microcode" (which can be updated) which are often closed source.
  • Common BIOSes are rubbish for being free (though there are free alternatives) and systems without BIOS at all.
  • All those other chips inside your computer (audio, disk controllers, on-SSD controllers, USB, firewire, etc, etc, etc) all have firmware, all have source... Very few are open source though.
  • Many displays are programmable and can be updated.

But just on mice, while many features can operate on standard USB HID drivers (evdev et al), mice can contain software to handle advanced features. Unless you can get the firmware source and upload your modifications, that's a nonfree mouse.

One important thing to note is that just because it includes driver software, doesn't mean it's running a proprietary firmware. It might be listening to "standard" button combinations and just doing something in software on the OS. The bundled software might also be proprietary, but in a lot of cases, there are ways of handling extra keys in pure open source too.

So you need to find out whether your mouse has a firmware. I honestly don't know of any advanced mice without a firmware, so you might need to explicitly look for free mice, or ask Logitech for the source...

But remember that it's not just your mouse you need to check if you want to be 100% free.

  • The only "free-software" hardware I know of is the Yeeloong Notebook. While it still uses hardware without open design, afaik there is no binary firmware needed to run it. Also, it's what Richard Stallman uses ;) Before caring about a mouse with binary blobs, you should probably start at the core, and each available x86 CPU includes non-free software. – Josef Aug 10 '15 at 11:11
  • Yeah, I think your best chance for a completely free experience requires some sort of SoC rather than a modern ATX+CPU layout. There are just too many damned third-party chips inside a modern computer to keep tabs on. – Oli Aug 10 '15 at 14:23
  • Thanks for the reminder on the other components--it may help other readers--but it is off-topic. I was only asking about mice. (I believe the remainder of my system is, in fact, free.) – Jackson Aug 10 '15 at 16:59
  • Thanks for the downvote. Despite mentioning other devices to illustrate where closed source code hides, this does also answer your question. Bad form. – Oli Aug 10 '15 at 22:43
1

First, the mouse is hardware, and the underlying technology is old. AFAIK there are no patents covering the technology that are still valid.

Mice have been around for a long time, so it's logical that the Open Source operating systems support them. Note that sometimes, Open Source coders reverse engineer a protocol to make their own implementation, as in the case of Samba.

Your more sophisticated mouse may require additional, proprietary code - whether in the mouse itself or in the drivers.

So, an Open Source system with a regular mouse should still be "wholly free". A mouse with more advanced features may not be, depending on what the producer decided to do.

  • What's an example of a "regular" mouse? – Jackson Aug 9 '15 at 7:46
  • Does a USB mouse have firmware? It may not be covered by patents, but it would still be copyrighted. – curiousdannii Aug 9 '15 at 11:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.