HTC Desire HD ROM spawns screenshots aplenty
Open Hardware: What’s It All About?
Open source, open licensing, free redistribution, collaborative, and community-based development – many hands make light work. They’ve done wonders for Linux, but can these concepts apply to hardware as well as software?
As reported on Linux.com in 2007, the inspiration for open hardware has been around quite awhile, almost exclusively in embedded and server hardware. A free SPARC implementation produced in 2000 (the LEON processor) and released under a dual GPL/LGPL license was the first open hardware platform.
The open hardware movement took off in 2005 with the advent of the popular Arduino microcontroller released under a Creative Commons license. And today dozens of open hardware projects exist, many capable of running Linux. Phillip Torrone has wrritten excellent overviews of the state of open hardware for Make: magazine in 2007, 2008, and 2009.
Current Open Hardware Projects
How about the state of the art in 2010? Let’s take a look at some of the more popular projects and offerings that are in the open hardware space.
The Arduino microcontroller
The Arduino was designed from ground up as an open-source system. This simple controller is inexpensive (in the $30 range) and can be built either as a kit or from free plans on the Arduino website. The Arduino itself does not have enough processing power to run Linux, but its operating environment is completely open, as is the very robust software development kit (SDK), which runs fine on Linux (including 64-bit).
A large, active, and friendly community supports the Arduino, providing a wealth of documentation and training materials. The Arduino is also used in a number of educational and artistic ventures, including a course taught by Michael Shiloh at San Francisco State University, Electronics and Physical Computing [PDF]. It is the subject of numerous books and the basis of many art exhibits, electronics class projects, and Burning Man projects, and some excellent tutorials on using the Arduino with Linux are available from Linux Gazette and LinuxPlanet.
The BeagleBoard single-board computer
The BeagleBoard is a small reference platform created by a team of enthusiasts at Texas Instruments and selling for less than $200. It features a TI OMAP 3530 processor based on the ARM Cortex-A8, the same processor that runs the Motorola Droid and other smartphones. The BeagleBoard has enough memory and processing power to run several flavors of Linux, including Ångström Linux, Android, Ubuntu and MeeGo. The built-in DSP and graphics processor allow it to play 720p video while consuming only 2 watts.
The BeagleBoard’s design documents have been released under a modified BSD license that enables interested parties to create clones as well as derivative products. Always Innovating is producing a hybrid tablet/netbook design based on the BeagleBoard.
A very active community of both professionals and amateur enthusiasts supports the BeagleBoard, with a tutorial for booting Linux on the BeagleBoard available at IBM developerWorks.
OGD1 Reconfigurable Computing Platform
In conjunction with LinuxFund, the Open Graphics Project is working on a fully open, reconfigurable computing platform, the OGD1. Unlike the high-performance processor in the BeagleBoard, this single-board computer is based on a field-programmable gate array (FPGA) that can be configured using a hardware description language (HDL). FPGAs are particularly useful for open hardware applications because of their reconfigurable nature, as the HDL program used to configure the FPGA can itself be open-source.
CupCake, RepRap, DIYLILCNC (CNC)
The Cupcake, RepRap and DIYLILCNC are open-source computer numerical control (CNC) devices. What that really means is these are fabrication devices: 3D printers (extruding plastic or metal) and 3D milling machines (essentially driving a router in three dimensions).
These devices, previously available only in the realm of industrial machines costing $10,000 and up, can now be built for less than $1000. These devices were actually designed, as open-source tools, to fabricate their own parts. There is even an open-source laser cutter in the works.
These are only a few, but the most popular and visible, of the open hardware projects currently available.
Using Proprietary Hardware Components
It is worth noting that most electronic component designs, open or otherwise, rely on proprietary components. For example, the Arduino uses a proprietary chip (AVR) made by Atmel.
The Arduino is still considered open hardware even though it relies on proprietary parts, just as a recipe for dinner is still valid if it calls for a branded ingredient. This is disputed by some, but most developers accept the reality of the situation: it is not always feasible to create every component in a complex design.
Licensing Open Source Hardware
The main issue with licensing open source hardware is that, well, it is hard. It is made of atoms instead of bits. Thus it does not have certain characteristics that make software so readily adaptable to an open-source model, the most obvious being no-cost copying. Atoms always seem to cost something.
On a deeper level, though, hardware is made up of two conceptual components: the physical components, which make up the expression of the design, and the design documents, from the Systems Reference Manual to the actual drawings and documents describing the hardware.
As intellectual property, the latter can be easily copyrighted and placed under any license appropriate to source code, although some licenses are more appropriate — for example, a license that requires source code (the design documents, in this case) with each copy of the finished product might be less attractive to a hardware developer than a license that merely requires making the source available. Moreover, design documents themselves contain layers of abstraction. LadyAda provides an excellent overview of the complex issues related to licensing layers of hardware documents.
Any open license that applies to software can be applied to hardware when applied to design and description rather than physical components. Hardware is commonly licensed under the TAPR Open Hardware License (created by the Tuscon Amateur Packet Radio organization), Creative Commons, MIT, GPL and LGPL, and BSD licenses, among others.
The TAPR license (currently at revision 0.3) is most likely to get OSI approval. For more information, read the latest Open Source Hardware license and join the discussion forum at the Open Hardware Summit site.
In the long run, licensing restrictions and permissions come down to the intent of the designer. Just as in software, there is no one-size-fits-all.
Conclusion
If all those projects are enough to whet your appetite, check out the upcoming 2010 Open Hardware Summit in New York City. Carefully positioned between the Embedded Systems Conference East (Boston, Sept. 20-23) and Maker Faire NY (Queens, Sept. 25-26), the Summit features Bruce Perens (OSI founder), Chris Anderson (Wired/DIY Drones), and Massimo Banzi (Arduino creator), among other open source and embedded hardware luminaries. Scheduled discussion tracks include business, productization, law, education and (of course) licensing.
Open hardware is rapidly evolving from a curiosity to a sound business practice. As Phillip Torrone says, “Hardware seems to be in the same state software was in the 1980s; lots of commercial developers, very few open source developers (or like the 1970s when only a few had computers at all). We’d like to see the world of hardware when there are millions of developers.” Now is an excellent time to dive in.
Ghostscript 9.0 Supports ICC Profiles
The first new major release of the free PostScript interpreter in years now also supports ICC colour profiles and allows third-party Colour Management Modules (CMMs) to be integrated
Oracle Makes Integrated System, Linux Push
At OpenWorld, database giant unveils a slew of new systems, including a new Linux operating system kernel and a preview of the upcoming Solaris 11 Unix OS.
Stable Kernel Updates
Greg has released three stable kernel updates: 2.6.27.54, 2.6.32.22 and 2.6.35.5. There aren’t many changes to 2.6.27.54. That series will not be supported much longer. Both 2.6.32.22 and 2.6.35.5 have a fix for a really nasty sigreturn bug on ARM systems, among other changes. Users of these kernel series must upgrade.
Announcing the Ubuntu Application Review Process
Are you an application developer who would like to see your application appear in the Ubuntu Software Center and available by millions of Ubuntu users? Today we are announcing a new process we are trialing which is easier and more accessible for application authors to get their apps in Ubuntu.
Recently we formed a community-driven Application Review Board that is committed to providing high quality reviews of applications submitted by application authors to ensure they are safe and work well. Importantly, only new applications that are not present in an existing official Ubuntu repository (such as main/universe) are eligible in this process (e.g a new version of an application in an existing official repository is not eligible). Also no other software can depend on the application being submitted (e.g. development libraries are not eligible), only executable applications (and content that is part of them) are eligible, and not stand-alone content, documentation or media, and applications must be Open Source and available under an OSI approved license.
The process is simple:
- Prepare your app ready for review.
- Submit it for review.
- Await feedback and if the feedback is positive, your application will be added to the Ubuntu Software Center.
Would you like to learn more about how to get your app in the *Ubuntu Software Center?
Go and read this page to find out more.
New Free Training Webinar: An Intro to Git
We’ve added another installment to our free training series on The Linux Foundation’s Training site: An Introduction to Git, the version control system built by Linus Torvalds. Kernel maintainer and Linux Foundation board member James Bottomley does a great job describing the history of Git and how the kernel community now uses it for all kernel development. He also includes a demo.
While Git is used by the kernel development community to manage the amazing rate of change and complex structures of the Linux kernel, it also being increasingly used by other projects and developers. A few of the well known projects using Git include Gnome, Qt, Android, Fedora, Perl, Ruby on Rails, X.org and VLC; a virtual who’s who of open source projects. Also, many companies are now using Git for their internal development, and we have seen a real need for training and information on this tool. If you require more in-depth instruction on Git, please check out our Developing with Git course.
Otherwise, we hope you enjoy this latest resource. We appreciate the time James offered to teach people about Git. If you have questions or comments about our Linux training webinar series, please let me know.
MeeGo Bug Jar 2010.38
A Quick Look at MeeGo in Bugzilla
2010-09-13 through 2010-09-19
MeeGo Platform
As of 2010-09-20 MeeGo Platform contains:
- total items 4484 (203)
- total open items 1409 (9)
- open bugs 1285 (4)
- critical 37 (1)
- security 1
- assigned 324 (8)
- needinfo 97 (8)
- waiting for upstream 109 (13)
- reopened 91 (12)
- unconfirmed 0
open enhancements 124 (5)
- assigned 36 (2)
- needinfo 1
- waiting for upstream 8 (4)
- reopened 10
- unconfirmed 0
For more detail, please see the MeeGo Platform Bug Jar 2010.38 in the MeeGo Bug Jar blog.
MeeGo Community Infrastructure
As of 2010-09-20 MeeGo Community Infrastructure contains:
- total items 282 (9)
- total open items 77
- open bugs 60 (1)
- critical 1 (1)
- security 0
- assigned 17 (3)
- needinfo 4 (1)
- waiting for upstream 0
- reopened 2
- unconfirmed 0
open enhancements 17 (1)
- assigned 8 (1)
- needinfo 1
- waiting for upstream 0
- reopened 0
- unconfirmed 0
For more detail, please see the MeeGo Community Infrastructure Bug Jar 2010.38 in the MeeGo Bug Jar blog.
MeeGo Projects
As of 2010-09-20 MeeGo Projects contains:
- total items 421 (19)
- total open items 197 (7)
- open bugs 81 (6)
- critical 3 (2)
- security 0
- assigned 51 (3)
- needinfo 6 (1)
- waiting for upstream 4 (2)
- reopened 4
- unconfirmed 0
open enhancements 116 (1)
- assigned 105 (1)
- needinfo 2
- waiting for upstream 4
- reopened 2
- unconfirmed 0
For more detail, please see the MeeGo Projects Bug Jar 2010.38 in the MeeGo Bug Jar blog.
MeeGo Features
As of 2010-09-20 MeeGo Features contains:
- total items 1391 (59)
- total open items 254 (747)
- open enhancements 251 (745)
- assigned 0 (518)
- needinfo 0 (198)
- waiting for upstream 0 (55)
- reopened 58 (2)
- unconfirmed 0
For more detail, please see the MeeGo Features Bug Jar 2010.38 in the MeeGo Bug Jar blog.
PostgreSQL 9.0 Released
The PostgreSQL 9.0 release is out. It has a lot of new stuff, including hot standby support, streaming replication, better permissions management, and a lot more. See the release notes for more information.
Mozilla Labs Pops Out JavaScript Language Tool for Coders
Two heads are better than one. Just ask Beeblebrox
Mozilla has released a JavaScript engine strictly for testing purposes to allow web developers to gain deeper access to – and better understanding of – the code underpinning its browser.…