Open Source Hardware Platforms

The New York Times reports that we are seeing a A Hardware Renaissance in Silicon Valley. In recent years, Silicon Valley seems to have forgotten about silicon. It’s been about dot-coms, Web advertising, social networking and apps for smartphones. But there are signs here that hardware is becoming the new software. 

But I would like to point out the importance of open source hardware platforms and the Makers movement behind this hardware renaissance. The open source nature of these platforms makes possible to experiment and to create new things for many more people than before.

The most popular open source hardware platforms are:


The Raspberry Pi and the BeagleBoard are based on ARM processors, and the Arduino will be soon powered by ARM with the Arduino Due.

The Raspberry Pi (short: RPi or RasPi) is an ultra-low-cost credit-card sized Linux computer which was conceived with the primary goal of teaching computer programming to children. It has a 700 MHz ARM11. Linux is the main OS.

The BeagleBoard is a low-cost ($149), fan-less single board computer that unleashes laptop-like performance and expandability without the bulk, expense, or noise of typical desktop machines. It uses an ARM Cortex-A8 superscalar core ~600MHz. For more info on the specs see here. Linux is used to power the board.

The BeagleBone, is a low-cost, high-expansion board from the BeagleBoard and sells for $89, it is based on the 720-MHz superscalar ARM Cortex-A8, more info on the specs here. The Beagle Bone  can be used either standalone or as a USB or Ethernet-connected expansion for a BeagleBoard or any other systems. Linux on ARM can be preloaded.

Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. Arduino boards are powered by Atmel processors.

Arduino is more focused on hobbyists and artists that want to experiment with electronics. As they say “It’s intended for artists, designers, hobbyists, and anyone interested in creating interactive objects or environments.” The Raspberry Pi and the BeagleBoards are integrated solutions that offer a desktop like experience. However, this is not always the case, as they also offer modules and the possibility to connect with sensors and smartphones. Arduino uses the Arduino OS, which is basically the loader that allows to upload the sketches (the programs) on the processor. The Arduino programs (sketches) are written in Processing. The other boards use Linux.  Arduino has focused on low power processors and low costs boards. But now this could change as Arduino moves to ARM with the Arduino Due. The Arduino Due features the Atmel ATSAM3X8E ARM Cortex™-M3 processor-based MCU, also known as the Atmel SAM3 MCU. It runs at 84MHz. This processor would eventually be able to run Linux. The advantage of running Linux on these embedded systems is the ability to reuse programming languages, software, libraries and tools already used on the desktop. Will Arduino move to Linux?

You can interact with all those boards with sensors and smartphones. See Alasdair Allan  post Blinking the BeagleBone’s heartbeat LED from the iPhone and the same has been done with the Raspberry Pi by David House.

hardware is hard but software is not easier

Making hardware is hard, it not possible to upgrade and update it over the air. Decisions made at design stage are hard to change after the product goes into production. That’s why we see decisions such as Google delays Nexus Q launch, will send free dev devices to pre-order customers

However, software is not easier. In the mobile platforms, after the challenges of RIM BB10, and the demise of Palm OS, Symbian, MeeGo, we see that Samsung pushes back Tizen to 2013, Bada almost certainly dead. Creating a mobile software platform is complex, it requires a lot of resources and a supporting ecosystem. That means that not only the technical part has been addressed (and it is not easy), all the stakeholders have to be included in the design and have to support it. Developers have to write applications for the platform, telecom operators want their benefits too. No surprise that we see a consolidation of smartphone OS platforms. Android, Apple and Microsoft. Even Microsoft with all its resources and competences is struggling to emerge in this tough battle of ecosystems.

Hardare is hard, but software is not any easier. And the combination of software and hardware is even more challenging when these parts have to be nicely integrated. And they have different upgrade and life cycle times.
But for the company that succeeds in creating this integration, there could be great rewards as Apple as shown. Controlling the overall experience allows the creations of seamless and intuitive products that work better.

smartphones, sensors and the future of medicine

Smartphones and sensors are impacting one of the most conservative of sciences, medicine. Eric Topol has written a beautiful book, The Creative Destruction of Medicine. Thanks to new technologies we can monitor patients in real-time and predict deceases and health problems before they happen. We are can also tailor prescriptions to be “patient-centered” instead of “population-centered”.

Eric Topol, in his Ted talk The wireless future of medicine:

A good article in the Atlantic The Measured Man, in which Larry Smarr, an astrophysicist turned computer scientist, has a new project: charting his every bodily function in minute detail. What he’s discovering may be the future of health care.

I wrote about some of the new technologies and smartphones in  a previous post The smartphone revolution.

There are many nice gadgets that measure calories, steps and many other metrics, are they accurate? A nice article in Wired analyse them,  Why Fitness Tracker Calorie Counts Are All Over the Map. Calculating calories with those gadgets may not be the most accurate measurements, however, as they say in the article “Even if they aren’t completely accurate when it comes to calories, fitness gadgets like these still give you a bird’s-eye view of how active you are.”

Issues with social platforms evolution

As a platform evolves, it usually includes features that were once developed by third party or as extensions. In the product family literature we have called this feature descension and described in a paper Continuous Evolution Through Software Architecture Evaluation: a Case Study:

New features will be implemented in high-end phones and once commoditized, they will be moved into the core set features part of the family architecture. As Lehman states, the functionality has a tendency to move from the perimeter of the product towards the center, as the innermost layers extend and support new functionality.

In the business strategy jargon this is called Platform Envelopment. A couple of books on managing platforms are the Catalyst Code and Invisible Engines: How Software Platforms Drive Innovation and Transform Industries. The article describing the Platform Envelopment approach is by Thomas Eisenmann, Geoffrey Parker and Marshall Van Alstyne. You can find the pdf here.

The line between what is the core platform and what it is not is dynamic. The owner of the platform has to manage very carefully its evolution otherwise it will alienate third party developers. The strengths of the platform come from managing the ecosystem. However, platform evolution and competition may lead to feature descension and platform envelopment.

No surprises then when we see the latest news on the problems of third party  apps with the social platforms, Twitter and Facebook: