Handling Component Shortages: Introduction

It’s no longer a good idea to hack together an electronic prototype, and then directly translate that design into a product – because, amongst other reasons, those prototyped components may introduce supply chain issues later.

Expertise in designing products for volume manufacture is absolutely essential. Leveraging this experience results in developing products that are less likely to suffer from component shortage-related issues, and helps to reduce the severity of issues should they occur, and the associated delays to market

As the product owner, you should be informed of these risks at every step along the way, and provide key input – for example when engaging with component manufacturers. 

We find that designing to avoid component shortages front-loads the early phases of product development, but these additional costs and time can often be recuperated in later stages, due to increased earlier rigor.

Typical Problems Caused By Component Shortages

Component shortages often cause these typical problems encountered by companies:

  1. Existing products cannot be built without expensive modifications
    • Major changes may also require recertification
  2. Delays in manufacturing products due to long lead times for components
  3. Parts are being purchased in bulk by resellers who add significant markup or sell to the highest bidder
    • Markups can hit profit margins
    • Big Tech with more purchasing power and dedicated procurement teams are able to secure stock, and smaller projects struggle to compete.
  4. Longer and more complex design process for new products
    • May have to make compromises on product requirements given availability of components
    • Long lead times mean parts may need to be ordered before design is technically proven out

Example Case Study: A Crystal

On an existing design, a crystal for a microcontroller goes out of stock, but thousands of bare Printed Circuit Boards (PCBs) have already been fabricated and are awaiting assembly.

Microcontroller chips in products must have oscillators, allowing them to keep time. These oscillators can be internal to the microcontrollers, or they can be external crystals like digital watches. 

In this scenario, the manufacturer of the product was unable to procure the crystals from distributors for the existing design (an external crystal connected to the microcontroller), as stock was exhausted. Like a lot of parts at the moment, the distributors’ supply is constrained, in part because the microcontrollers are often quite specific about the requirements for these crystals, and only a few parts may be recommended for a given microcontroller. Thus as microcontroller supply is constrained, so are crystals.

What can be done? In rough order of preference, our options are:

  1. Change the firmware to use the internal oscillator of the microcontroller. Populate the board as normal without this part on, then tweak the firmware to use the internal oscillator instead. This may have implications such as increased power consumption, lower crystal accuracy and may not be possible as a result. For example, Bluetooth requires a high accuracy clock. 
  2. Find an alternative part that fits the pads on the PCB.Given shortages, this may require a change in the crystal frequency and/or load capacitors as well. 
  3. Have the manufacturer rework the boards after the PCB is populated, to connect a part with a different footprint onto those pads. If you can’t find an alternative part, this may be the best option, but may not be very robust, and is obviously pretty time-intensive.
  4. Scrap existing boards, and then engage in a small board redesign to fit a part with a different footprint. If the number of scrapped boards would be small or there are no suitable parts that fit the existing board at all, this option may be viable.
  5. Wait for parts to become available. For high-volume products, this is rarely the best choice, but may be the only option (unlikely in this scenario). 

What is the relative cost/effort to fix it? 

  1. Change the firmware to use the internal oscillator: Unless major changes are required, this should take less than a week to change the firmware, test it and send the new code to the manufacturer.
  2. Find an alternative part that fits the pads: Up to a week to source and test the new part, make any necessary firmware changes, and the cost of new parts (likely to be more expensive).
  3. Have the manufacturer hand-rework boards: Up to a week to source and test new parts and may add significant time and cost per board to rework the PCBs, plus the cost of new parts.
  4. Scrap existing boards: Despite how relatively small the PCB change is, fitting a new crystal will still require testing of a new part, updating the design and sending the new board files to the manufacturer, which may take at least a week or so. Any firmware changes may take a couple of days, plus the cost of new parts and 1-3 weeks to fabricate and assemble the new boards.
  5. Wait for parts to become available: Highly dependent on wait time!

What could have been done differently to mitigate this issue?

  1. See if the product will work (even if sub-optimally) without the part.
  2. When specifying the part, select a crystal with a popular footprint. Have a couple of footprint-compatible alternatives ready for the manufacturer to drop in if required. 
  3. Select a microcontroller that is less picky about the requirements for the crystal.
  4. Before selecting parts, speak to the microcontroller and crystal manufacturers or distributors; secure supply early on in the design process and risk buy if appropriate.
  5. Allow some space around the component so if the design needs to change, it doesn’t have knock-on effects on other parts of the board.

Example Case Study: Microcontroller

You picked a microcontroller and pre-ordered the parts needed for the first production run, and secured enough samples to make prototypes. Halfway through firmware development, you discover there isn’t enough code space for all of the device features you want. Unfortunately, the next models up in the range are out of stock. 

Microcontroller selection is one of the most involved aspects of component sourcing for electronic products, and it has been made a lot more complicated by current component shortages. Of all the components used in consumer electronics, shortages of this type of part are causing some of the most significant disruption. 

Often the cost-driven choice to use the cheapest part in a range can come back to bite you if it doesn’t quite fill your needs.

What can be done?

  1. Pre-order the next model up in the same family, with more onboard memory, and continue the development as best you can on the smaller part. The choice between option A and B below will obviously depend on the timeline for getting two parts:
    • Option A: Wait for samples and production reel to arrive before moving forward.
    • Option B: Make a strategic choice to introduce the full feature set in a revision two when the better microcontrollers become available, so that you can gain market share in the meantime.  
  2. Order an external flash memory to add extra storage. Note that your microcontroller might not support booting from external flash memory, or may be much slower to run the firmware. Another challenge may be space on the PCB to fit external memory. 
  3. Switch to a different microcontroller family. Switching to a different brand or architecture of microcontroller can be very time consuming and costly.

What is the relative cost/effort to fix it?

  1. Pre-order the next model up in the same family: 2 to 3 months to re-architect, build and test new prototype PCBs with new microcontroller onboard, plus cost of new, more expensive parts. Then, one can either:
    • Wait for new part: Will need to resell purchased parts no longer suitable, additional firmware development
    • Make first products with fewer features: Get to market faster, but additional 2-3 months of firmware and hardware development work to develop the second edition in parallel
  2. Order an external flash memory to add extra storage: Cost of additional memory, plus 3-4 months to redesign hardware and firmware to incorporate additional memory. 
  3. Switch to a different microcontroller family: Hugely variable cost depending on difference in architecture between parts. 

What could have been done differently to mitigate this issue?

  1. Pick the microcontroller family-member more conservatively, accepting a possible slightly higher cost. Preorder it in volume and obtain prototyping samples in good time.
  2. Fix requirements early to avoid feature-creep, which would otherwise use more code space than originally planned.
  3. Have a backup plan of an alternative microcontroller that will work for the design if all else fails. Write firmware such that it can be more easily ported between different parts. 

Alloy’s Approach: To reduce impact of shortages

  1. Start thinking about shortages as early as possible in the design process, to factor this into component selection.
    • This means knowing what important parts you’re going to use as early as possible in the process. An example of something that’s often missed is picking a connector for a PCB and then discovering later that we can’t get hold of the mating part, so checking early for this kind of thing is critical.
  1. Talk to candidate component manufacturers.
    • Talking directly with manufacturers is critical to get their lead times and order parts in time!
  1. Perform an assessment of all circuit elements in a design, to highlight components most likely to suffer from shortages, and those that would be hardest to re-source.
    • Some parts may be easy to identify replacements, but are likely to disappear from stocks. Some may be easier to procure in the first place, but if they disappear there may be no direct replacements.
  1. Select components with low-risk and low likelihood of suffering from shortages where possible. This sounds obvious but is actually quite challenging and requires some knowledge of how the semiconductor industry works, and some manufacturers are suffering more than others.
    • Find components that use the right process nodes: You may have heard that semiconductor processes are built on what are called ‘Process nodes’ which are different technologies on different scales. For example, Intel may have a 35nm or 45nm process to allow chip designers to pack more or fewer transistors into a given chip. Some processes with some manufacturers are in exceptional demand due to use in smartphones, for example, but some others used for older devices may no longer be in demand, but be perfectly adequate for a new project. Some process nodes may also be available from multiple foundries thus increasing resilience to supply and manufacturing issues.
    • Use parts with lots of physically similar alternatives: Another aspect is selecting components with common footprints and pin configurations so that alternative parts can be swapped in and out. 
    • Use common parts; multi-source them: When designing circuitry, design it so that popular components with identical or near-identical electrical specifications (that are made by several manufacturers) can be used, and presented on the bill of materials to the contract manufacturer so they can handle it. They may be more expensive than other alternatives. 
  1. Intelligent PCB design to make it easier to incorporate changes later in the product development process if issues do arise.
    • Allowing extra space on the PCB: There are things we can do during the electronic design to make it easier to add changes later. We’d call this floor-planning, designing such that if you have to change a PCB you don’t have to rip the whole thing up and start again, so it’s faster to make changes.
    • Allowing extra space in the product mechanicals: We can also design the mechanicals such as the enclosure / caseworks of the product to allow extra space so that if the electronics did need to change then minimal mechanical changes are hopefully required.

Alloy’s Approach: Impact on our Clients

  1. Fixing key product requirements as early as possible is now more crucial than ever.
  2. Budgeting extra in early product development stages to understand the design approaches to meet those requirements, and talk to component manufacturers directly.
  3. Sometimes, we may recommend our Clients buy reels of a couple of components at risk early on, to minimize impact on project schedule.
  4. Opting to over-engineer the design may add some cost per unit built, but reduce risk of project delays.
  5. It’s more critical than ever to know how many products you plan to sell per quarter and make sure that you order enough parts to do so, and not rely on distributors to deliver any extras.