In the process of creating a solution, which typically involves several rounds of prototype development before finalizing the design, off-the-shelf parts come with their own set of advantages and disadvantages. While these components can provide certain benefits, they can also lead to substantial problems.
Definition of Off-the-shelf parts
“Off-the-shelf” in the context of electronics refers to parts, components, or modules that don’t have a specific function on their own, but can be used in a variety of applications. Some of these parts are designed with specific sectors in mind, like aerospace and military, but their functionality allows them to be used broadly.
While basic components like resistors and capacitors could be considered off-the-shelf, they are so fundamental to electronic circuits that it’s more accurate to call them essential components. The same goes for many Integrated Circuits (ICs) including CPUs, microcontrollers, and controllers, which are necessary for most circuits to work. However, if a circuit needs to be repaired in the field and an IC needs to be replaced, the replacement IC could be considered an off-the-shelf part if it’s available from different manufacturers.
In the electronics world, off-the-shelf usually refers to modules and systems that include all the necessary circuitry to function, and can often be connected without needing additional circuits. Examples of off-the-shelf parts include Raspberry Pi’s, Beagle Boards, Arduino development boards, sensor modules and System on Modules. These parts are commonly used in the maker world for quick prototyping and building projects with minimal hardware effort. Other examples include Wi-Fi modules that integrate a microcontroller, RF front end, and shields to create a nearly complete product.
What advantages can off-the-shelf parts bring?
One of the main benefits of using off-the-shelf parts components in a project is the rapid prototyping they enable. Rather than having to design circuits from the ground up, a project can be assembled quickly, often with temporary connections between different subsystems. This allows the designer to concentrate on other tasks, such as software development, speeding up the overall project timeline.
Another benefit of using off-the-shelf parts is cost-effectiveness. While building circuits from scratch might be cheaper when producing in large quantities, buying pre-made modules is much more affordable when only a few prototypes are needed. This leads to the third advantage: reduced development costs. The ability to develop a design quickly using off-the-shelf parts significantly cuts down on engineering time and allows for early detection of major design issues.
Once a product moves beyond the research and development stage and is deployed in its final application, it can continue to reap the benefits of off-the-shelf parts. For instance, if a part of the design fails, it can be easily replaced since those components are widely available. Designs that use off-the-shelf parts are also more likely to be easy to disassemble and reassemble, making it simpler for trained technicians to service and repair the final product.
Moreover, if parts can be replaced, the system’s hardware can be easily upgraded as technology advances. For example, a system that uses the Raspberry Pi 2 as its processing core can be upgraded to the Raspberry Pi 4, and software updates can provide additional functionality.
What disadvantages have off-the-shelf parts still had?
During the research and development (R&D) phase of a product or solution, using off-the-shelf parts components has few drawbacks, as this stage is meant for experimentation. A solution that can be assembled and tested quickly is ideal. However, not all applications can benefit from off-the-shelf parts components during development, such as a high-speed bus link between a System on a Chip (SoC) and a memory IC.
Therefore, using off-the-shelf parts components may not assist with hardware development. If a project does require custom hardware, then off-the-shelf parts components can increase the overall cost of the development stage. However, this point becomes less relevant if the use of custom designs requires many iterations before the design is correct (i.e., off-the-shelf parts components can help validate a design before committing to it).
Eventually, the project will need to move from the R&D stage to the deployment stage. At this point, designs that use off-the-shelf parts components can quickly encounter issues, including cost, reliability, and security. Cost is a significant concern with off-the-shelf parts components; while it may be cheaper to produce one or two designs with off-the-shelf parts components, manufacturing thousands can become extremely expensive.
A design that uses a custom Printed Circuit Board (PCB) and carefully selected components will always be cheaper when producing in large quantities. This is why most, if not all, products on the market use custom PCBs with the minimum number of components needed for the product to function.
The physical construction of the end product also affects its reliability. Using multiple modules connected with wires will never be as reliable as a single or multiple PCBs with specially designed connectors. Mechanical vibration, wear and tear, and other unexpected external forces can cause wires to become loose and modules to fail. While custom-made PCBs can also suffer from the same issues, they are far less common due to the use of permanent wire fixtures and joining techniques.
Security is another major concern when designing a product using off-the-shelf parts components. Using commonly available parts, such as single-board computers, exposes a design to potentially well-known bugs and flaws that attackers could exploit. This vulnerability extends not only to the device but also to the built-in intellectual property found in the code and software that runs the system.
The use of off-the-shelf parts components also exposes a design to attack with the use of generic operating systems that may leave ports open, store unnecessary information, or have built-in remote access (such as SSH), providing alternative entry points for an attacker to exploit.
Is it a good idea to use off-the-shelf parts in a design?
In general, it’s not recommended to use off-the-shelf parts components in a finalized design, mainly due to safety concerns. However, the suitability of these components can depend on the specific application and the number of units to be installed. For instance, a unique solution in a factory could significantly benefit from the cost savings and easy repairability offered by off-the-shelf parts components.
On the other hand, a product intended for widespread use in millions of homes should avoid using off-the-shelf parts components due to cost and security considerations. Therefore, when deciding whether to use off-the-shelf parts components, a designer needs to take into account all aspects of their final application. But as a rule of thumb, it’s usually best to steer clear of off-the-shelf parts components for any commercial solution.
Read more