[For links, see the web version:
http://www.keimform.de/2009/12/09/the-tricky-business-of-copylefting-hardware/ ]
It’s probably safe to say that the copyleft principle has been essential
for the success of free software. Copyleft means that all versions of a
software or document will remain free, preventing companies from creating
“value-added” versions of free programs and selling them as proprietary,
non-free software. The GNU General Public License (GPL)—the first and most
well-known incorporation of the copyleft principle—is used for about 50–70%
of all free programs, making it more popular than all other free software
licenses together.
At first sight, the situation in the newly emerging field of free and open
hardware might seem similar—here, copyleft licenses such as the GPL and the
Creative Commons Attribution-ShareAlike License (BY-SA) are very popular
too (see below for a more detailed analysis). But actually, the situation
is very different for hardware design, since copyleft relies on copyright,
and hardware is (in most cases) not protected by copyright law.
The Problem: Copyleft Depends on Copyright
------------------------------------------
In hardware design, the copyleft clauses of the GPL and the CC BY-SA
license thus don’t work in the way you might expect them to work. Anybody
who modifies and spreads the design description is bound by them, but
people and companies using the design to build and distribute actual
hardware are not. Vendors can modify the hardware and sell or distribute
the modified hardware without having to publish their modified design,
since licenses only govern the design descriptions (the instructions on how
to build the hardware), not the hardware itself. Here’s how the FSF puts it
in their GPL FAQ:
Can I use the GPL to license hardware?
Any material that can be copyrighted can be licensed under the GPL.
GPLv3 can also be used to license materials covered by other
copyright-like laws, such as semiconductor masks. So, as an example,
you can release a drawing of a hardware design under the GPL. However,
if someone used that information to create physical hardware, they
would have no license obligations when distributing or selling that
device: it falls outside the scope of copyright and thus the GPL
itself.
The problem is that copyright governs only the distribution of information,
but not its usage. If somebody has access to information, they can use them
and act upon them in any way they like without violating copyright law.
If a bookseller publishes a book describing how to build a product X, the
bookseller cannot prevent me from using this information to build and sell
X. The book is protected by copyright laws, but the factual information
contained in it is not, and my use of that factual information falls
outside of copyright laws. The GPL relaxes the restrictions of copyright,
giving me more freedom to use copyrighted information than I would usually
have, but of course it cannot deny me the freedoms which I always have,
even with full copyright in force.
A Solution: Patents?
--------------------
I know of only one license that is specifically targeted at open hardware
and tries to work around this issue by relying not only on copyright, but
also on a mutual patent immunity clause: the TAPR Open Hardware License,
published in May 2007 (Version 1.0). The idea is that the licensor grants
everybody who complies with the terms of the license the right to use any
relevant patents they control. So if you don’t comply (e.g. by not
publishing the “source” for physical products you build based on the
licensed information), you might get sued by the licensor for patent
violation, but if you comply you’re safe.
TAPR has published two versions of the license: the Open Hardware License
(OHL), which emulates standard copyleft (like the GPL or CC BY-SA), and the
TAPR Noncommercial Hardware License (NCL), which additionally prohibits
commercial usage (like the CC BY-NC-SA).
Relying on patent law instead of copyright law for hardware makes sense,
since patent law is made for hardware, while copyright law is made for
information. But it’s also a problem, since getting a patent is a difficult
and costly process, while getting copyright is free and automatic.
The TAPR licenses will only be really effective if the licensor possesses
relevant patents, or at least if people can’t be entirely sure that (s)he
doesn’t have any such patents. That’s a pretty bad limitation, since
patents are difficult and expensive to get. Most peer projects will be
unable or unwilling to apply for a patent, so the TAPR licenses will hardly
be suitable for them.
Another unrelated problem of the TAPR licenses is that they require you to
distribute the original designs you’ve received from others in addition to
your own modified version—you must distribute both “before” and “after”
versions of any files you’ve modified (§ 4.2 (b)). This might be extremely
impractical for large version histories (think of hundreds or thousands of
versions), and it makes the creation of printed versions of modified
hardware documentation practically impossible. It’s also unclear what’s the
point of this requirement.
Pragmatic Solutions: Just Use Standard Copyleft—Or No Copyleft Altogether
-------------------------------------------------------------------------
Most open hardware projects seem to care little about the specific issues
of hardware licensing. Most projects aiming for copyleft just apply a
standard license such as the GNU GPL or the Creative Commons BY-SA license,
apparently either not knowing or not caring that is won’t apply to building
hardware (see list of projects below).
Another solution is to forgo copyleft altogether and just use a permissive
license such as the (modified) BSD license. This allows everybody to use
the provided information in any way they like, without having to keep
modifications or improvements open.
There even is a hardware-specific non-copyleft license, the Balloon
Licence. The Balloon Licence is a simple MIT-style license. Since it does
not try to apply any restrictions on the manufacturing of hardware (no
copyleft or non-commercial clause), it doesn’t have the problems of other
open hardware licenses. However, since this license is very similar to the
commonly used MIT and (modified) BSD licenses and doesn’t address any new
issues, there seems to be little reason to choose this special license
instead of one of the standard ones.
What To Do?
-----------
As can be seen from the list below, there is a clear tendency of projects
to use standard copyleft (the GPL or the CC BY-SA), protecting the design
information itself but not any physical hardware built on their basis. Does
this mean that projects are willing to live with a limited copyleft, or are
they just unaware of the problem? I’m not so sure…
In any case, no convincing solutions seem to exist. The TAPR license, the
only license that tries the address the problem of extending copyleft to
the hardware itself, never became very popular—almost nobody outside the
TAPR project seems to be using it. And indeed, its reliance on patent law
makes the license very impractical to use for all but the biggest projects.
On the other hand, just using permissive licenses (like the Apache projects
and the BSD family do) doesn’t seem to be an attractive option for the
majority of open hardware projects—most prefer to get at least the partial
copyleft protection that standard licenses such as the GPL and CC BY-SA can
give them.
But, as described above, their copyleft protection is very incomplete in
case of hardware—hardware builders aren’t required to give back their
improvements. In the case of the RONJA project, this difference between
hardware builders not giving back but the project maintainers expecting
them to do so, has already caused tensions that contributed to the downfall
of the project. Whether similar problems will appear in other projects and
weaken the open hardware community, remains to be seen...
* * *
Appendix: Project Listing
-------------------------
The following projects use standard copyleft licenses:
* GPL:
- Bug Labs, modular open source computer hardware (cf. Bug Labs: License)
- Elphel, high performance cameras based on free software and hardware
designs (cf. About Elphel)
- RepRap, an open source fabber (cf. RepRap GPL Licence)
- Sun’s OpenSPARC project, publishes free hardware designs for the
UltraSPARC T1 and T2 processors
- Free Telephony Project
* CC Attribution-ShareAlike:
- Arduino (cf. Arduino Hardware) and Freeduino (cf. Freeduino PCB Design
Files), two variants of a free microcontroller board. They are aware
that the CC clauses don’t apply to physical production: “You don’t need
to give attribution on the physical products that you might make with
these files, as copyright in general, and CC2.5 in particular, do not
apply to physical objects.”
- Beagle Board, a free low-cost computer board based on a Texas
Instruments processor
- MultiMachine, a low-cost multi-purpose machine that can be built with
common hand tools
- Openmoko, open source mobile phones (uses BY-SA for CAD Files and
schematics)
* GNU Free Documentation License:
- Ronja, optical data transmission (cf. Ronja Copying)
Projects using a standard share-alike license that prohibits commercial
usage (CC Attribution-Noncommercial-ShareAlike):
* Ronen Kadushin, free furniture designs
Projects supporting various Creative Commons license:
* Open Architecture Network, a repository of architectural designs and
plans; users can choose any CC license, including public domain (cf. OAN
Licensing)
* Thingiverse, a repository of digital designs for physical objects; users
choose either standard copyright or a CC license, GPL and public domain
are also supported (cf. Thingiverse Terms of Services)
* Ponoko, a repository and marketplace for digital fabrication; available
choices are full copyright and Creative Commons licenses (list of
CC-licensed designs)
Projects using the TAPR Open Hardware License, a share-alike license
designed specifically for hardware which relies on patent rather than
copyright law:
* TAPR, the community of radio amateurs which developed that license
Projects dual-licensing between TAPR License and standard copyleft:
* Open Graphics Project, open source graphics cards; three license
alternatives for its hardware descriptions (schematics and artwork): GPL,
TAPR License, or a commercial proprietary license, cf. OGP FAQ and
Announcement from 7 April 2009. Of course, dual/triple-licensing with
TAPR as one of several options makes the special protections of the TAPR
License void (users can just choose the GPL instead), so this
multi-licensing model seems somewhat pointless.
Projects using a non-share-alike license specifically developed for
hardware (the Balloon Licence):
* Balloon Project, another circuit board (only parts of the design are
free, some design files are kept proprietary)
Projects using a standard non-copyleft license (the BSD license):
* Fab Home, another project for building an open source fabber (cf.
Fab Home: General disclaimer)
Mixed:
* OpenCores, develops computer components for CPUs, memory controllers,
peripherals, motherboards etc.; uses a mix of GPL or (preferably) LGPL
and modified BSD license, depending on the preferences of the
contributors (OpenCores FAQ)
If I have forgotten important projects, add them in a comment and I’ll
update the article. I didn’t try to cover projects that are small or in
early development. Long lists of open hardware projects can be found in the
Wikipedia article on open source hardware, the P2P Foundation’s Product
Hacking page, the Open Innovation Projects site, the GOSH List of Open
Hardware Projects and the GOSH List of Open Hardware Organizations.
Best regards
Christian