Are you thinking about rolling your own Linux-powered device as part of a start-up, or through a Kickstarter project? Before you go that route, it’s best to understand what’s ahead of you, suggests Opengear co-founder Tony Merenda in this LinuxGizmos guest column.
Ready to roll your own device?
Make sure you know what’s ahead.
by Tony Merenda, co-founder, Opengear
The “roll-you-own” bandwagon has had its ups and downs over the years. Starting out as a default computing strategy for enterprises to customize and guard their technical infrastructures, the momentum later gave way to adopting existing solutions in order to ease the technical burden and free up resources for other business and IT causes.
But “roll-you-own” still has traction — in some areas, renewed traction — and one question some companies face is whether roll their own own embedded devices. While there certainly are benefits to the “roll-you-own” philosophy (potentially lower cost and increased customization, to name two), companies need to evaluate the headaches that can come from several obstacles when going this direction with embedded device development.
If a company’s engineers have a “roll-you-own” or DIY philosophy for custom embedded devices, there are some potential pitfalls to avoid. Chief among these might be using a generic embedded computer board without regulatory approvals.
(click to enlarge)
Consider, for example, the challenges of developing an intelligent, networked device for M2M (machine-to-machine) communications over Ethernet, WiFi, and cellular paths. Unforeseen challenges can arise when bridging the networking world to the physical infrastructure.
That said, it’s not that easy to find a system board with all the right interfaces and connectors, DIMMs, flash sockets, cable headers, and so forth, all in optimal positions. Coupled with this challenge is today’s tendency toward trying to supply missing interfaces via a USB or other dongle. The end result might start resembling a high-school project. Challenges continue from there, including the need to find an enclosure, which may have connectors and power in poor locations, leaking RF. After sorting through those obstacles there’s still the need for an approved power supply.
Unfortunately for the roll-your-own world, there are still more variables to consider. Multiple rounds of expensive regulatory compliance testing (EMC, safety, carrier) may be needed for the combination of components. And there’s always the realistic risk that the final roll-your-own deployment might ultimately get scrapped due to design issues with components, which are out of the development team’s control and are generally unchangeable.
Beyond that, companies will need to select and tune the embedded Linux (or other) OS, storage model, additional subsystems, device drivers, and, finally, applications, in order to create a firmware image.
Stress tests are required for both the hardware and firmware in real-world environments. The appliance needs to be ultra-reliable for critical installations that must stay operational when core managed devices are down. This is rarely the case with “roll-you-own” appliances that may not be equipped with watchdog circuitry and support firmware. Lastly, it’s imperative to monitor the currency of the embedded OS for security and other significant patches.
I certainly don’t want to scare anyone off from taking a roll-you-own approach to embedded device development, but I have found than many who go that route are later amazed at just how many check-boxes there are for a deployment to go smoothly.
|About the author: Tony Merenda is a co-founder of Opengear, which designs, manufactures, and delivers solutions for secure remote management. Merenda currently serves as Opengear’s VP of Engineering and Asia Sales, and manages the company’s hardware development operations.|