Supply Chain Woes - An open letter to microcontroller companies
To all of you out there who design, manufacture and sell microcontrollers - I'm talking to you! Actually, I'm talking to anyone who makes chips that have programmable configuration bits and overlapping model numbers.
What do I mean by "overlapping model numbers"? It's always best to clarify. These are parts that are identical except for the amount of FLASH or SRAM, or identical except in the maximum clock speed or power consumption. A good example might be the Microchip PIC18F2XQ10 family.
- PIC18F24Q10 has 16K of program memory, 1280 bytes of SRAM and 256 bytes of EEPROM
- PIC18F25Q10 has 32K of program memory, 2304 bytes of SRAM and 256 bytes of EEPROM
- PIC18F26Q10 has 64K of program memory, 3615 bytes of SRAM and 1024 bytes of EEPROM
Other than the code and data space, these parts are form fit and function identical. I understand why there are three variations. Having so many options allows a designer to only buy the capacity that is needed for a specific job. Some MCU families have even more variants that are code compatible and pin compatible. It's a great way to trim small amounts of cost - in 2017.
The big problem comes in when a substitution is needed. The variants are software code compatible, but they aren't programming compatible. For example, if I only need the code space of the 24Q10, I would likely design and prototype with e 24Q10. I might build and sell my first thousand units with the 24Q10. I would likely keep doing so until I find out that the 24Q10 is suddenly out of stock with a 52 week lead time.
Okay. I'll just sub the 25Q10. But it has a different device ID, so I can't program the parts without making that small change in the programming sequence. Then the 25Q10 is out of stock and I have to buy the 26Q10, and then I get a small shipment of 24Q10s to put back in. Now I have an inventory nightmare because I have multiple versions of the same thing that I can't run through the program station without stopping and changing things. If, on the other hand, the stronger devices would accept the device ID for the weaker devices, I wouldn't need to worry about supping with more capable parts. I could just order everything above the level of capability that I need and not worry about it.
You MCU vendors would be able to concentrate on bringing just the most capable parts to the fab line first. Inventory gets a bit easier for a lot of people. We don't live in the same universe that we did before 2018 and we may never again. It's time for heroic measures and this might just be one of them.
Did Joseph Campbell write The Hero with a Thousand Code Spaces?