Having worked in the hardware, IoT, AI/ML and robotics ecosystem space for the last decade – I have helped hundreds of individuals and startups as well as folks working at major enterprises to achieve their vision of shipping products that change the world. As the leading single-board computer, the Raspberry Pi is the most popular starting point for new hardware designs. I wanted to write an article summarizing my thoughts on this topic based on the struggles and roadblocks I have seen many folks encounter.
The cost of the Raspberry Pi hasn’t hurt ($35) and the MASSIVE ecosystem of hardware and software that has grown up to support the Raspberry Pi has helped many startups and prototype designers to achieve their goal of building a low-cost prototype faster than anyone could imagine. However – Once you have built your Raspberry Pi prototype – Then what? How do you go about bringing your solution to market (and reduce costs)? Lets talk about it.
Tips For Bringing Your Raspberry Pi Prototype To Mass Production
I have so many pictures of goofy-looking early prototypes based on the Raspberry Pi that it was hard to choose one. I do recommend reading my article about the OpenAPS Intel Edison Explorer Board for another example. As a hardware startup, a prototype does not need to look pretty – It just needs to be functional, testable and demonstrate your idea. If that means zip-tie-ing a giant battery pack to your Raspberry Pi, then that is fine.
The problems tend not to happen in the prototyping phase – Where you really begin to run into trouble is when you want to scale your product to thousands of unit sales and reduce your costs. If you come from a software or other background, you might assume that the path from using a Raspberry Pi to selling tens of thousands of hardware units might be easier than it actually is. The reality is quite different.
The number one problem? Software. Yes. Those neat libraries, open-source projects and drivers you might be relying on to make your Raspberry Pi prototype function may simply not exist on other chipsets. The support you need to plug that camera you are hoping to use into your non-Raspberry Pi silicon will probably not be there. This is a big, big problem for startups hoping to scale their prototype.
The best thing about the Raspberry Pi is it’s vast open-source software ecosystem. When you remove that, you rapidly get into trouble.
The other problem? You cannot get the “chip” in the Raspberry Pi. That means you are not able to fully customize your carrier board to your own specifications. The reason you can’t get the Broadcom chips that power the Raspberry Pi is that they are custom, special silicon only designed for the use on the Raspberry Pi itself. Other processors, such as those from NXP or STMicro can be obtained through channel distributors like Avnet, Arrow, Mouser or other. Not so with the Raspberry Pi.
These two challenges leave startups and enterprises hoping to scale with their Raspberry Pi confused, lost and facing an uphill battle to get their product to market. Lets talk about some strategies for overcoming these challenges.
Strategies For Bringing Your Raspberry Pi Prototype To Mass Production
Strategy #1: Don’t Start on the Raspberry Pi in the first place
This one is so obvious-sounding that I almost cringe to write it down here. Most people just grab the Pi and start tinkering and then slam into the brick wall of needing to scale at a later time. If you are really doing your research about what to do – You can simply avoid the problem altogether. I have spent a lot of time talking with people working at major contract manufacturers like Flex and Jabil – Whenever they see someone walking in the door with a Raspberry Pi or an Arduino-based prototype, they cringe because they know that the majority of the work that has been done will get thrown away.
I once asked the lead EIR at Flex, who reviewed more than 2,000 startup proposals over a three year period: “How many of the Raspberry Pi or Arduino-based prototypes stay on Raspberry Pi or Arduino chips?” Answer: Not many.
The problem comes not from prototyping, it comes from investing significant time and energy in the software that powers the prototype. It turns out that software written for a Raspberry Pi prototype has a high chance of needing to be thrown away entirely. If you are serious about scale (tens of thousands of units), it may be better to stop yourself before you make this error in the first place.
Strategy #2: Use The Raspberry Pi Compute Module With A Custom Carrier Board
The Raspberry Pi compute module is not a bad option. I recently helped the founder of miniNodes to produce a custom Raspberry Pi Compute Module carrier board through the use of GumStix. Unlike the Raspberry Pi itself, which has a pre-determined set of IO and all of the key hardware design decisions have already been made: The Raspberry Pi Module has the flexibility to be plugged into a variety of carrier boards, allowing you to customize your solution for the IO you really need.
The Raspberry Pi Module has a common SODIMM form-factor which is a standard within the hardware industry. One huge benefit of this SODIMM form-factor is that many similar modules using other chipsets are available and compatible with this module. That means you can upgrade your compute power or even switch architectures if needed by relying on these modules.
Compute modules, in general, tend to be great for low-volume solutions. I have heard it said frequently that if you are preparing to sell under 10,000 units, a module is generally a better approach over doing a full custom board and inheriting all of the software complexities that are entailed.
By the way- I wanted to make a very strong recommendation to look into GumStix if you are doing any sort of module. They have a great set of tools which make it extremely rapid to come up with a custom carrier board. I have seen them do boards in as little as two weeks, which is unheard of.
Strategy #3: Take a close look at the NXP IMX.8 Instead of the Raspberry Pi
Having worked at Intel and then at Arm, I have seen a lot of hardware designs for all kinds of solutions. One thing that is clear to me at the time of writing this article: The NXP IMX.8 is having a major impact on the market. The number of SKUs available, the price point and the backing of NXP seems to have resulted in a major market impact for this particular component.
If I were a startup thinking about doing any sort of mass-production product, I might consider starting with the IMX.8 in the first place. There are numerous modules available as well as single-board computers, such as those produced by Toradex.
Strategy #4: Start with a solution backed by a known / established systems integrator
Systems Integrators are in the business of producing “starting points” for startups and enterprises when it comes to hardware. The idea is that a startup will pick up a single-board computer or module and then scale to mass production on that particular product, possibly with some help from the Systems Integrator.
If you are serious about scale and quality, it makes a lot of sense to pick a soution from an excellent systems integrator from the start. The difference between selecting an IMX.8 module from a company like Toradex and using the Raspberry Pi? There is no one to go to for help in scaling! Toradex and other systems integrators specifically design their modules and single-board computers to be starting points for applications that ultimately do scale. If you start with a solution backed by a known systems integrator like Toradex, you have someone to call for help when the time comes.
Strategy #5: Just use the Raspberry Pi
I feel that I have probably “hated” on the Raspberry Pi a little too hard so far. The reality is that the Raspberry Pi Foundation has built the world’s most amazing, low-cost and powerful Single-Board Computer and the ecosystem has embraced it wholeheartedly. The cadence of improvement and standardization of the Raspberry Pi has been phenomenal and likely to continue.
For this reason, choosing the Raspberry Pi and making the decision to stick with it may be the right choice. It is cheap. There is lots of software. There are lots of people building supporting hardware – Why not just use the Pi itself and never switch?
Quite honestly- I have seen so many industrial users take the Pi into real industry use cases successfully. They are cheap, if they break – you can just replace them and buy a new one. If this is the approach you think will work for you, I definitely recommend looking into Balena – They have the best solution for scaling and managing fleets of Raspberry Pi devices in the wild.
If you do decide to stay on the Pi, Balena offer a hardware platform called the Balena Fin which has been specially designed for fleet deployments. Worth taking a look and it might save you a lot of time and energy.
If you are a hardware startup or enterprise looking to go to production, drop me a line. I am very interested in learning more about how the ecosystem is embracing the Pi for edge computing use cases. Would love to learn more.