[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[libreplanet-discuss] Free software and open hardware

From: Niels G. W. Serup
Subject: [libreplanet-discuss] Free software and open hardware
Date: Sun, 27 May 2012 17:17:59 +0200

For some time now, I've been thinking about the role of hardware in my
life and how the concept of freedom applies to hardware.

I've come to the conclusion that hardware built from free designs
(i.e. where schematics and the like are licensed under a free license)
is as important as free software. I've also realized that hardware (not
its design) is much harder to create than software, because hardware is
not virtual and requires physical ressources to be manufactured.

Free software is important to me because

  + I can study it
  + I can share it
  + I can change it
  + I can share my changes

From here on, I'll use the term "open hardware" to describe hardware
which is built from free designs. This is the term used by --- I'm not sure it's the perfect term, but
it's short and concise, and it's really only the design that's free (as
in freedom), not the hardware itself (I read somewhere that hardware
can't really be copyrighted), so "free hardware" might be just as
imperfect a term. At least "open hardware" already has a small

For me and for most computer users, the freedoms to share and change the
hardware are not very important, because it is very difficult (compared
to sharing and changing software, which does not require physical
ressources). The freedom to study hardware is however just as important
as the freedom to study software. And studying a piece of hardware
without the its hardware design available is as meaningful as studying a
piece of software without its source code available (unless the hardware
is very simple, which is rarely the case nowadays). So, open hardware is
important to me because

  + I can study it
  + Others can base new designs on it

By reading a little here and there on the web, I've found that most
people, if not all, in the free software community like open hardware
(or whatever they might want to call it), but that a lot find it less
important than free software. This seems to be because of one or both of
the following reasons:

  + hardware cannot be changed or shared by a typical user
  + hardware is too hard to create

But just because something is hard to create does not mean it is not
important to know how it works. And just because open hardware is not as
practically useful for most users (including myself), that does not mean
that it should be acceptable that hardware vendors hide useful knowledge
(hardware design) from their hardware's users.

I sometimes use the argument that free software is necessary because it
allows the users to know what their computers do, which is important
because computers are now an integral part of our lives. But the users
can only fully know what their computers do if they know what their
hardware does.

In the case of firmware, I think it's ok to think of it as hardware if
it's not made to be changed. It's still wrong that the firmware is
nonfree, but it's not wrong the way that ordinary nonfree software is
wrong; it's wrong the way non-open hardware is wrong. This applies to
both firmware which cannot be changed because it's in ROM (which seems
to be getting rarer these days), firmware which cannot be changed
because that requires an extra almost unobtainable device (like some old
mobile phones), or firmware which cannot be changed because the hardware
interface specifications are not available.

It might not always be necessary to have the design of a piece of
hardware. For a simple piece of hardware, it might be trivial to figure
out what it does and how; or the design for another piece of hardware
with the same functionality is available. For example, there are
probably free schematics available for an alarm clock, which in general
should be quite simple in design, so it is not necessary that my alarm
clock is open hardware (which I'm quite sure it's not). It would still
be nice, but it's less important than freeing more complex hardware.

As an example, think of a modern graphics card. It can hardly be called
simple. Even if it has full interface specifications, it's so very
complex that showing me a general description of how a graphics card
functions is not enough for me tolerate that useful knowledge is hidden
from me.

This can be generalized:

  The more complex a piece of hardware is, the more important it is that
  the knowledge used to create it is available.
  The less complex a piece of hardware is, the more tolerable it is that
  the hardware designs are not available, as long as the designs of a
  similar device are.

In any case, for every type of hardware in existence, the knowledge to
create at least one "instance" of that hardware type should be free.

I understand the free software community's focus on getting hardware
that does not spy on its users and hardware with full interface
specifications (I think Eben Moglen calls this "free hardware"). For
computers which are complex enough to run software which is not just
firmware, and complex enough to contain personal data, that's certainly
very important and a difficult job in itself.

I find that, assuming a piece of hardware neither spies nor hides
interface specifications from its user, campaigning to run free software
on it is different from campaigning to have it be open hardware --- free
software and open hardware are separate movements with different
problems to overcome. The free software movement is about developing
free software and telling people that they can share and change it. The
open hardware movement is about telling hardware vendors that we don't
like hardware (which has little effect on them) with no available
hardware designs, and that they should produce open hardware instead of
non-open hardware, and it's about figuring out how to manufacture
hardware from free designs (which is not easy).

I wanted to write this because it was something I had been thinking
about, and because I was curious what other people (you) thought about
the role of open hardware. It was not meant as a "we should do this"
message, but rather a "we should care about this" message. Do you agree
with my thoughts? Disagree? Somewhere in the middle? Please tell. This
seems like an old discussion ([1] and [2] date from before the year
2000), but I still think it is interesting to see what people think
about it today.

In any case, since hardware costs money to produce, I tolerate a lot of
hardware which is not trivial and does not give me the ability to find
out how it works.

Interesting texts about these topics:


Niels G. W. Serup

Attachment: signature.asc
Description: PGP signature

reply via email to

[Prev in Thread] Current Thread [Next in Thread]