Winner, Name that Ware July 2010

August 30th, 2010

The July 2010 ware is the Silicon Cow at Asus (titled with the imaginative name of “2357”, as seen on the name plaque below). Congrats to Marc for guessing it correctly! email me to claim your prize.

I snapped these photos a couple months back when I happened to find myself at Asus HQ in Taipei. The silicon cow is across the lobby from the more famous “Mona Lisa” sculpture that was mentioned in the guesses.

Name that Ware July 2010

July 31st, 2010

The Ware for July 2010 is shown below. Click on the image for a much larger version.

This ware is not a functional ware, but rather a work of art. I’m a little worried this might be too obscure for the competition, but I did a check on google, and the right keywords produced images of this artifact. If it turns out this is too hard to guess, I’ll release some more hints over time.

Winner, Name That Ware June 2010

July 31st, 2010

Thanks to everyone who played last month’s Name That Ware! I was astonished at the number of people who made a huge effort to count all the vias.

Before I announce the winners, I’ll reveal the design stats on the number of vias on the PCB:

144 9-mil vias
1062 10-mil vias
13 13-mil vias
15 162-mil vias [edit: spoonerism! — I meant 162 15-mil vias; the sum with 162 vias yields 1381 (the correct answer), instead of 1234]

For a grand total of 1381 vias. This would make Alex G the winner at 1379 vias. Congrats, email me to claim your prize!

Open Source Hardware Definition 0.3 Released

July 14th, 2010

There’s been a flurry of blog posts today about the new Open Source Hardware Definition, which is currently on rev 0.3 (link), and a corresponding summit in NYC, which unfortunately I can’t attend since I’ll be on the wrong side of the world around that weekend. It’s very exciting to see the open source hardware movement maturing to the stage where there is a flourishing and fecund community of participating innovators. As many of my readers know, I’m very fond of open source hardware and it’s nice that the field is getting less lonely and more credible by the day.

Like the community of people participating in OSHW, the definition of the same is evolving. I think that the rev 0.3 definition is a good start, but it needs a little bit of broadening up to reduce friction with a large legacy of closed-source hardware components. Unlike F/OSS, it’s much harder to grow an ecosystem around hardware entirely from scratch; chip fabs cost substantial money (billions of US dollars) to make, maintain and use — unlike, for example, a compiler such as gcc.

The way the current definition is written, in order to comply with the OSHW definition, the system integrator bears the burden of choosing only components for which they can also share all required software to fulfill essential functions under an OSI-approved open source license. So, for example, there are no wifi solutions that I know of which comply to this definition — even the ubiquitous rt73 chipset, which offers open-source drivers, requires a firmware blob which is closed-source. Other interesting chips that do not comply to this definition include probably most cellular phone chipsets, bluetooth chipsets, graphics chips, camera chips, and surprisingly, most SoC CPUs. Every ARM SoC that I’ve encountered contains a small bit of internal ROM (32k or so — hey, that was a whole operating system back in the 80’s!) that’s written by the chip maker and that piece of code is closed-source (this includes the i.MX233 and the PXA168 used inside chumby products), and many ARM SoC’s have NDA-only datasheets for the register set (such as every Marvell CPU), which takes it yet another step toward closed-ness. Even the ubiquitous Intel desktop CPUs utilize microcode updates, which I believe are closed-source (there are F/OSS-friendly tools for deploying the microcode, but the actual microcode itself is distributed as a binary, afaik). Furthermore, systems that incorporate some proprietary code (like chumby, which uses a closed-source Flash licensed from Adobe), cannot release all code required to fulfill essential functions, such as playing apps.

Thus, as the OSHW definition is writ, it excludes the possibility of making any open source gadget with compelling, popular consumer features (such as wifi, cellular connectivity, chip cameras, high-performance and low power ARM CPUs) because most of the components required to achieve these features cannot comply to the OSHW definition version 0.3.

I don’t think that excluding all these devices from the OSHW definition was intentional; the intention of the software-release clause is well-meaning, but I think the definition needs some tweaking. I’d suggest that the burden of responsibility should be limited to the person or organization releasing the OSHW. Thus, one should only be responsible for sharing the source and documentation for the components developed with your own resources. For example, if you are a board or system-level OSHW provider, then the best you can do is release the schematics and layout for your design, and any code you wrote to tie the pieces together in your system; you are not required to also release code and datasheets on behalf of your chip vendors to customers in order to claim OSHW-compliance. While this is not an ideal solution in terms of open-ness, I think it finds a balance between providing featureful, useful, and modern designs to consumers while giving them a toe-hold to grab onto if they desired to modify, extend or repair their purchased hardware.

The other potential issue I have with the definition is the clause where documentation must be released “in the preferred form for which a hardware developer would modify the design”. This term was more or less borrowed directly from the GPL, and by and large that clause makes sense in the software world because ASCII text is nearly universally accepted as the form for source, and there are a multitude of interoperable text editors out there, with the single biggest problem being CR/LF translations and maybe unicode integration.

Unfortunately, in the hardware world, there is no consensus over a machine-readable intermediate schematic or circuit board layout format that also binds in all the interesting metadata you may need to quickly modify the design. In fact, the situation is much worse because a few of the biggest names in consumer electronics hardware actually have in-house proprietary schematic capture and board layout programs that don’t interoperate with anything, so they can play the game of releasing their files in their preferred form for modification and claiming OSHW compliance, which is essentially useless to the community at large since the tools are unavailable to read them.

As a result, I’m a proponent of requiring, in all cases, a minimum of a human-readable schematic provided in a common format (PDF, PNG, etc.) as the primary form for interchange, and optionally a machine readable format to the discretion of the particular designer. To me, the machine-readable format is less important than a quick human-readable format; I would prefer a PDF over an Eagle file any day (Eagle is a popular interchange format among the Arduino community), especially since I don’t use Eagle or even have a copy of it installed on my machine.

All that being said, I think it’s very exciting to see the OSHW community rally together to create a draft definition and hold a summit. This is very positive progress toward empowering individual consumers like you and me to also be innovators and the true owners of our technology — instead of our technology owning us.

An Editorial Note

June 30th, 2010

It’s unusual that I will modify a post after it is written, but careful readers will note that Name That Ware June 2010 had some words changed. This is in response to a mismatch between Maker/hacker/DIY culture and mainstream perceptions. Apparently, referring to the Infocast frame as “hackable” has caused fear among some people who are interested in buying the product. They won’t buy products that are “hackable”, because they don’t want to get hacked; understandably, the intent that they are being enabled to be the hacker is lost. This is probably due to the evolution of the meaning of “hack” — mainstream media has associated the term “hack” with nefarious intent, whereas traditionally (and perhaps even archaically), “hack” simply refers to the clever or non-obvious use of a complex system.

Since the Infocast frame is marketed toward a mainstream audience, I hacked up the post below to swap out the word “hack” for “DIY-friendly” or “mod” as appropriate. Since it’s difficult to correct misconceptions about a product, if you do discuss the product, it would be nice if you referred to it as “DIY-friendly” instead of “hackable” to prevent further misunderstandings. But, then again, who am I to dictate what you write — it’s your words and your opinions, so take my request as a grain of salt.