The Raspberry Pi and other SBCs are the IBM PCs of our time. From educational project to industry disruptor.
It surprises some to learn that the Raspberry Pi has sold more than 10 million units, becoming the third most popular general purpose computing platform, surpassing the Commodore64, and trailing only, as expected, the Mac and the PC. Some might take offense at the particular slicing and dicing required to formulate the record, others might comment on how far it is from #2. But they’d be missing the point.
I was recently at the Embedded World show in Nuremberg, a nearly CES-sized event for embedded computing. It might have just been me, but I could clearly see the shadow of the Raspberry Pi and other single-board computers (SBCs) hanging over the event. Some vendors had made their peace and were proudly sporting industrial-friendly Raspberry Pi variants, others, were selling Raspberry Pi-shaped boards, while making sure to make fun of the Pi as “just for prototyping” and “not serious”. Others still were asking me about ways in which their board can be made suitable to migrate prototype projects to, after the Raspberry Pi “phase” of a project is over, and it’s time for a “serious” deployment. At a presentation of a top-5 tech company’s IoT product, we heard comments about “shitty Raspberry Pi projects”. They, too, are missing the point.
The point being missed, in my humble opinion, is that those projects might never outgrow their “Pi Phase”. The Pi might just be able to eat the embedded market from below, like the PC did to the mainframe, like AWS did to the in-house datacentre, like the laptop did to the desktop. Examples of disruptive innovation are many, and the concept is well-understood by now.
The Raspberry Pi has graduated from the “first they ignore you” phase, and is now about done with the “then they laugh at you” phase. Efforts to fight it, with corporate initiatives such as the Intel Edison or any other “Raspberry Pi Killer” you care to Google, have spectacularly missed the mark, producing platforms that lack fundamental attributes needed take off. Sometimes the platforms are burdened with weird software licensing, need to sign EULAs and whatnot. Others, the software is extremely hard to even get started with, is based on an ancient version of Linux in the 2.x line, or has known and unfixed bugs. Many times the cost of the hardware is far above the $100 mark, and often the devices are in short supply.
The only platforms that seem to hold a candle are the BeagleBone and ODroid, as well as a batch of fresh competitors, all coming out of the maker world, not the “old school embedded” world. One honourable mention here should be the Intel NUC. A pragmatic device built by Intel that shoves as much of a PC as possible in an SBC form factor. It’s become so prevalent that it’s the only board I’ve seen able to substitute the Pi as a place to start in some cases, even though the starting cost is quite a bit higher. Getting access to the established ecosystem of x86 software, plus a powerful modern CPU and GPU is sometimes worth that much.
At resin.io we have the rare privilege of running a platform on which real-world fleets of embedded devices get built and managed. We’ve seen tens of millions of hours of device connectivity, with all the issues that can occur during deployment in the field. And what we consistently see is that customers are successful with single-board computers, and run into trouble when they try to build something custom, or they try to use something cheap, from the old-school embedded world. There are of course good industrial boards, but they cost a lot. And the cheap ones can be programmed, but you should be prepared to do it in C, dive into the datasheets, and perhaps write a kernel module or two if you have to, while working with an out-of-tree Linux kernel.
The Raspberry Pi and other single-board computers like it have nailed a combination of low cost, easy availability in high quantities, and a pleasure to program. The successive generations have worked out the kinks of the platform and the latest editions are both powerful beasts, and pretty solid. The low price has enticed many developers to build libraries and frameworks around the Pi, making it accessible to less hardware-savvy developers. And its accessibility leads to more volume, which leads to economies of scale, which leads to more and more powerful hardware… you get the idea.
What’s more, with the introduction of the Raspberry Pi 3 Compute Module a couple of months ago, the embedded world has been put on notice. The core of the Raspberry Pi, with on-board storage, can be had for about $31, and much less at scale. This means that an ecosystem of base boards is about to explode, fitting compute modules into every nook and cranny. And it has already started, with name-brand outfits starting to make the realisation. Check out the Media Stick by WD Labs (where WD stands for Western Digital), and of course the release of the NEC displays with a compute module embedded. And you can bet there are a lot of high-end boxes out there that have a “maker” SBC embedded, but obscure that fact for perception reasons. In a fascinating interview in September 2015, Raspberry Pi Foundation CEO Eben Upton revealed that a third of their sales, about a million a year, are for industrial uses, including digital signage, industrial automation, and even telecom base stations.
Is everything perfect? Of course not. We’re still missing an accessible compute module baseboard with the ability to have many different kinds of radio attached, reliable power (i.e. not micro USB), and a microcontroller for real-time and low-power operation that is sold at a low price. I am convinced the next year or so will close this gap, pouring more gasoline into the fire.
What are the traditional embedded folks doing wrong? Well, let’s see. They are listening to their customers, delivering the features they are being asked for, building upon decades of pre-existing patterns and relationships, delivering hardware stacks with hundreds of fine-tuned features and certifications. How could any of this be wrong? It could, when a competitor addresses the much, much larger population of web/cloud/mobile developers. And mainstream developers have gotten used to being wooed, not having to jump through hoops to do something, having well-documented, low-cost, accessible tools to work with. Getting them to jump to the traditional embedded world has been as successful as it was to get them to write apps for Symbian or Blackberry phones before the iPhone came out, which is to say, not very. In return, mainstream developers give economies of scale, which is enough to swamp most other factors, given time.
The Pi has focused on all the right things, has made great strides, and as long as other manufacturers keep missing the point about keeping friction and entry costs low, they will keep wasting time, building what their existing customers want. As the single-board computers “tick” more “boxes”, they will retreat to more and more exotic features and configuration. Such are the patterns of a market that is being disrupted, and I believe we are seeing it happen once again, in the world of embedded hardware, right under our noses.
For the industrial giants looking to compete, I’d offer a few pieces of advice:
Price matters. Without a low price, nobody will build software for your board, and without software, it won’t scale to high-volume organic use.
Take the long view. An ecosystem isn’t built in a quarter. Focus on how to make makers successful, then consider industrial applications. Premature industrialisation is the root of all evil.
Make it open, make it frictionless. Both hardware and software have to be as open as possible. You may think this is an ideological position, but it’s not. It boils down to making it easy to build things without having to go through long, friction-ful steps. If someone can make something in a few hours, it’s a weekend project. If they need a week, or a month, they won’t.
Make it widely available. When the time comes and the demand grows, make it easy to get any number of boards, with the minimum amount of friction.
Offer stability. One of the least appreciated parts of the Pi recipe is how rarely they end-of-life boards, and how far they go to keep things compatible. Be like them. Don’t churn boards that erode people’s confidence.
Focus on community. Talk to people, listen to them, be open about your plans, and help them be successful. Instead of a long list of partnerships, engage with the community of makers. They’re actually eager to show you the path to success.
Thus far, strategic realities at large companies have made it impossible to follow what is a fairly simple recipe. The next few years will tell if this basic reality will dawn, or if the insurgents will have the day. But no matter what happens, remember this when you hear people call single-board computers a “prototyping platform”, a “hobbyist toy” or an “educational tool”: we are about to start seeing these computers everywhere, and I really do mean everywhere.