Open Hardware

From P2P Foundation
Revision as of 14:37, 17 September 2007 by Mbauwens (talk | contribs)
Jump to navigation Jump to search

Open Hardware = Hardware that is the result of open designs, similar to open source code, and the result of collaborative work.

The concept of open hardware and Open Source Hardware, seem to have exhaused themselves in their original formulation, and has been succeeded by a thriving Open Design movement [1]


Definition

Short Definition

By Janet Hope at http://rsss.anu.edu.au/~janeth/OSBiotech.html

"Open source hardware" refers to computer hardware for which all the design information is made available to the general public. A "free" or "libre" hardware design is a design which can be freely copied, distributed, modified and manufactured; the fact are design is free does not imply that it cannot be sold or that any hardware implementation of the design will be free of cost. Open source hardware may or may not be based on a free hardware design.

The term "open hardware" has a more precise meaning than either of these terms. For hardware to be open hardware:

1. Its design must be publicly accessible in a form that enables implementation and full understanding.

2. The software tools used to create the design should be free so that others can develop and improve the design.

3. The software interface to the hardware must be publicly accessible and free to use." (http://rsss.anu.edu.au/~janeth/OSBiotech.html)


Long Definition

By Graham Seaman, at http://opencollector.org/Whyfree/open_hardware.html


"What is 'Open Source Hardware'?

Open-ness in hardware terms can have a whole range of meanings. In all the cases listed below, some hardware is open and some is not - but the trend is for open-ness to become more and more limited, restricting the freedom of designers to create or implement their own designs, and even of programmers to write the programs they wish.


Truly open hardware would have to satisfy all the requirements below:

Information on using the hardware must be available.

It sounds crazy that people could sell hardware and not tell you how to use it, but it is actually a growing trend. If a company sells any device which interfaces to a computer without publishing the interface specs, they then have a monopoly on interface software (or can sell the monopoly to a software company). WinModems and WinPrinters - which also cannot be supported by Linux - are a related problem. This aspect of open-ness in hardware is so closely linked with work on free software that the FSF, Debian, and FreeBSD are all among the sponsors for the Open Hardware Certification program which ... is a self-certification program for hardware manufacturers. By certifying a hardware device as Open, the manufacturer makes a set of promises about the availability of documentation for programming the device-driver interface of a specific hardware device.... sufficient documentation for the device must be available for a competent systems programmer to write a device-driver.


The design of the hardware must be available.

Designs can be free in exactly the same senses as software can be free.

If the design is published others can learn from it, improve on it, or even second-source the same device. Much digital hardware has never been open in this sense, creating a whole industry of reverse-engineering and patent claims and counter claims. But there have been exceptions; most notably, the SPARC architecture. Here the lessons from open-source software as a tool for companies with a minority market share have been successfully imported to hardware.

Although many designs have always been patented, there is also a long traditional of engineers borrowing and improving on designs that just 'float around'. Many of these can be found in various places on the Internet, but few of them have been gpl-ed or otherwise protected as `free' designs. The attempt to create IP design libraries which are available only for sale will tend to destroy this tradition (one such IP company is already `giving' away the Strasburg library as a free offer ...).


Design software for hardware must be available.

For many devices this has never been a problem -- until recently. For the old 74 series logic devices, enough information was always made available for people to be able to create free design tools. Processor manufacturers have always published their processor Instruction Set Architectures, so it has always been possible to write free compilers. Now it seems that even this may change - the ISA for the Philips Trimedia Processor is not available (it is a compressed VLIW and they consider the compression algorithm a trade secret).

But for other types of hardware, information about the underlying technologies is a commercial secret so that only the companies which own these secrets can create libraries or even efficient design tools which use them. This applies both to some types of VLSI design and to programmable logic: in the days of the first PALs, internal structure and programming details were widely published in order to expand the market. Now no manufacturer publishes the bit-stream format for programming FPGAs (the one exception, the Xilinx XC6200, now seems to have been dropped). As a result, the only design software available for these devices has been commercial software, and it has not been possible to create free software to make up for some of the deficiencies in these tools.


Summary


To fully qualify as 'open hardware':


1. The interface to the hardware must be explicitly made public, so the hardware can be used freely


2. The design of the hardware must be made public, so that others can implement it and learn from it.

3. The tools used to create the design should be free, so that others can develop and improve the design.

Differences between open hardware, free hardware, open hardware design

By Graham Seaman, at http://opencollector.org/Whyfree/open_hardware.html


"Many of the arguments over free hardware design consist of people from software and hardware backgrounds talking at cross-purposes. One cause of this is the simple fact that the word `software' refers both to source code and executables, while the words `hardware' and `hardware design' clearly refer to two different things. Using the word `hardware' as short-hand for both design and physical object is a recipe for confusion. The following terms have all been used in discussions of this topic.


  • Free hardware design refers to a design which can be freely copied, distributed, modified, and manufactured. It does not imply that the design cannot also be sold, or that any hardware implementation of the design will be free of cost. All the same arguments about the meaning of 'freedom' between supporters of the Free Software Foundation, and the supporters of BSD_style licensing for software unfortunately carry over to hardware designs.
  • Libre hardware design refers to the same class of design as free hardware design, but tries to make it clear that the word free refers to freedom, not price. The term sounds very clumsy to many English ears, but is of course natural for French speakers (and translations of it are natural to speakers of most languages, which do not use one word in both free beer and free speech).
  • Open source hardware refers to hardware for which all the design information is made available to the general public. Open source hardware may be based on a free hardware design, or the design on which it is based may be restricted in some way.
  • Open Hardware is a trademark of the Open Hardware Specification Program. It is a limited form of open source hardware, for which the requirement is that:


Sufficient documentation on the device must be available for a competent systems programmer to write a device driver. The documentation must cover all of the features of the device-driver interface that any user would be expected to employ. This includes input/output and control functions and auxiliary functions such as performance measurement or self-test diagnostics. Details of on-board firmware and the hardware implementation need not be disclosed except when necessary to make it possible to program a driver for the device.


That is, only a limited amount of information about the design need be available; possibly not enough, for example, to attempt a repair.

  • Free hardware is a term occasionally used as a synonym for open source hardware. It is a tempting term, since 'hardware' appears to be directly parallel to 'software', but suffers from blurring the distinction between design and implementation. The term free hardware is particularly confusing since it implies that the physical hardware, rather than its' design, is somehow free. This is not normally true in the cost sense, and is meaningless (except metaphorically) in a social sense. It seems simpler to avoid this term completely, except in it's cost meaning, as with the free computers given away by various social organizations."

(http://opencollector.org/Whyfree/definitions.html)


Discussion: Specific difficulties of Open Hardware

Pro: Graham Seaman

By Graham Seaman, at http://opencollector.org/Whyfree/open_hardware.html

An important comment about the difficulty of developping it, as compared to open source:


"At first blush, the open source model doesn't necessarily seem like a good fit for physical objects. The reason comes down to replication: with open source software, I can give you a copy of (for example) Firefox without losing my own. With open source hardware, at present the best I can give you a copy of the instructions as to how to make your own (for example) microprocessor with your own equipment; it's the functional equivalent of saying "you want Firefox? Here's the source code -- go find a compiler and learn how to read and modify the code to work with your hardware." While this is hardly a barrier for people who already do have the necessary tools and skills, it's a major hurdle if open source hardware is ever to move beyond a few niche fields.

But replicability is something of a secondary effect of open source -- if you give someone a copy of a program's source code, it's hard to prevent them from giving away complete versions. The key elements of open source, accessibility and modifiability of the underlying instructions, apply just as readily to hardware designs as they do to software code. Moreover, the lack of replicability is something of an artifact of technology; that I can't send you a copy of a computer chip (or mobile phone, or fabber, or bacteria), only a design, is important only in that you can't just double click something and see that microchip (etc.) pop up in front of you.

As fabrication technologies take on an increasingly digital form, this distinction will become less clear. When I send you a copy of Firefox, what I'm actually sending is a set of instructions telling your computer how to organize bits of magnetic material on a hard drive to create another instantiation of Firefox. Similarly, at some point in the next decade or two, I will be able to send you a "copy" of my phone simply by sending a set of instructions telling your computer how to organize bits of carbon in a desktop nanofactory to create another instantiation of a phone. Very soon, a more software-like open source physical world paradigm will become possible.

But what will really make a big difference will be the emergence of tools allowing you to take that set of instructions for the phone and modify it to meet your particular needs prior to it being printed out.

I don't mean a requirement that you design your own phone from basic parts on up, or can only get a bare-bones phone that you then must seek out and add on (potentially conflicting) modules to give it any kind of real utility. I'm talking instead about an interface to the code that makes it easy for amateur designers to tweak the instructions without running the risk of easily breaking the final result. In effect, I imagine that we'll soon be in a world of "skins," "plug-ins," and "overlays" for the material world." (http://www.worldchanging.com/archives/004155.html)


Pro

From http://w:ww.rowetel.com/blog/?p=14

"1. I think open software has been a good thing for the world, so I think open hardware is also good.

2. If closed IP makes a small amount of people a lot of money - does opening the IP make a moderate amount of money for a large amount of people? The latter seems a better outcome to me. It also suggests that open hardware benefits small companies more than large ones.

3. I think the specific benefit of open hardware is lower R&D costs. This is what is happening with my project - there is a small team of people designing DSP boards, BRI-ISDN hardware, doing Asterisk ports etc. So far I would estimate about 5 man-years of hardware R&D I now have available for free. If I like I can now re-use this open hardware in my local market, potentially without hurting the business of my co-developers. There is a spirit of cooperation rather than competition.

4. A common perception is that “if the hardware design is open, people will just copy it and put you out of business”. Well after some thought I disagree. A business is much more than just the product design - for example you need support, capital, manufacture, service, and relationships with customers. So even if the whole design is open, you can still build a nice little business (but perhaps not a $100M business). You can also add proprietary components and build on the open technology, or focus on your local market.

5. My pet favourite - open hardware allows us to invent new business models, for example developing countries could build advanced telephone systems for cost price. This is so much better than buying technology from a first-world profit-oriented business that must charge a 70% mark up to cover their overheads. This is the business model behind the one laptop per child project. A $100 laptop is possible if u remove the overheads, use community input and sponsership for R&D and build volume. Well a $100 IP-PBX is also possible. Another benefit is that the hardware can be built locally (remember the hardware design is free) overcoming import tariff problems and building local industry. Combining these elements means lots of people getting connected cheaply. And that is a very good thing for the world." (http://www.rowetel.com/blog/?p=14)


Contra: Review of sceptical arguments by Janet Hope

From http://rsss.anu.edu.au/~janeth/OSBiotech.html

"The first point is that no generally accepted open hardware licences yet exist. As noted in an earlier section, copyleft licences (and other forms of open source software licence) rely on copyright: the copyright owner uses his or her exclusive rights to guarantee certain freedoms for users of the software program covered by the licence. However, as with biotechnology research tools, computer hardware is mostly protected by patent. In contrast to copyright protection, which is quick, cheap and simple, obtaining a patent is a costly, time-consuming process; moreover, maintaining a patent requires the payment of substantial renewal fees. (There may be other relevant differences between patent protection and copyright protection besides cost -- if so, they will be explored as part of this project.) The costs of obtaining patent protection may make patent owners less willing than copyright owners to give up the income stream associated with standard proprietary licensing, and/or it may discourage otherwise willing contributors to an open source biotechnology project who are not in a position to obtain patent protection for their contributions. The question of how to translate open source licences into the context of patent protection (and other types of protection that may apply to biotechnology research tools) is an important one for open hardware, and also for open source biotechnology. Licensing experiments in the open hardware context continue: for example, the Indian Simputer is subject to a lawyer-drafted GPL-like licence.

The second point made by open hardware sceptics that may also apply to open source biotechnology is that hardware is not as modular and compartmentalised as software. Benkler has emphasised modularity as an important feature of successful open source projects, in particular in connection with contributors' motivation. However, open hardware sceptics have raised a different point, which is that unless the technology itself is highly modular and compartmentalised, small changes to one part are likely to interact in unforeseen ways with the rest. Whether this is in fact a difference between software and hardware is not clear. However, the general point may be particularly relevant to biotechnology research tools, as many are living organisms or components of living organisms: unpredictable, delayed side-effects in response to apparently small changes are established characteristics of living organisms as a class of complex systems.

The third point is that capital costs associated with hardware manufacture are higher than for software, so that human creativity costs are a smaller proportion of the total costs in the hardware context. (As we saw earlier, Benkler suggests that the advantages of the peer production mode relative to other modes relate to information about and allocation of human creativity, and become salient when human creativity is a salient component of production.) Capital costs for hardware manufacture are higher than for software manufacture in relation to both development (for example, tools for developing, testing and debugging software are much cheaper and more easily made accessible -- e.g. by Internet and open source software licensing, as many such tools are themselves software -- than tools for developing hardware) and production (for example, silicon for making chips costs money). Open hardware sceptics have suggested that there are therefore minimal start-up costs for software programmers but not for hardware developers, and further, that resulting reliance on institutional funding for hardware manufacture makes the process more vulnerable to conservative institutional attitudes and employment-related legal constraints. (As noted in an earlier section, the latter problems may be partially solved by top-down influence on institutional thinking by, for example, funding agencies such as the NIH, and by direct participation in open source biotechnology projects by institutions or companies, as distinct from individual employees.)"


Open Design

From the Wikipedia article at http://en.wikipedia.org/wiki/Open_design

"Open Design is a term that applies to the investigation and potential of open source and the collaborative nature of the internet to create physical objects. People apply their skills and time to projects for the common good, perhaps where funding or commercial interest is lacking. Open design image

The "Open Design" movement is currently fairly nascent but holds great potential for the future in developing products and physical systems. There are certain barriers to overcome for open design when compared to software development where there are mature and widely used tools available and the duplication and distribution of code cost next to nothing. Creating, testing and modifying physical designs is not quite so straightforward because of the effort and time required to create the physical artifact." (http://en.wikipedia.org/wiki/Open_design)


More Information

See related items: Open Design, Open Source Hardware, Open Cores

Free Software and Free Hardware Designs, at http://opencollector.org/Whyfree/whyfree.html

Graham Seaman explains why hardware design should be as free as software code.


Free Hardware Design - Past, Present, Future, at http://opencollector.org/Whyfree/freedesign.html


Richard Stallman, on Free Hardware, at http://www.linuxtoday.com/news_story.php3?ltsn=1999-06-22-005-05-NW-LF


Business Models for Open Source hardware design, at http://pages.nyu.edu/~gmp216/papers/bmfosh-1.0.html


Episodes of Collective Invention, at http://opensource.mit.edu/papers/meyer.pdf

(Peter B. Meyer, August 2003) An article on several historical examples of what could be called "open design.