Fitting a firmware in under half its original size with tipi.build
Case Study – How KOMP.LED LightSystems used the tipi.build binary optimizer to solve their chip-shortage issueswritten by @pysco68 // March 2, 2022
Case Study – KOMP.LED LightSystems
tipi.build binary optimizer to the rescue during chip shortage
The tipi.build binary optimizer is currently a select access only preview feature of tipi.build, please do not hesitate to get in touch with us if you think you could benefit from it.
KOMP.LED LightSystems is a leading, Germany based, supplier for utility and specialty vehicle LED lighting solutions.
Facing the global electronics supply shortage lasting since late 2020, KOMP.LED was seeking possibilities to use alternative parts to ensure production of their type 304 marker light. In the context of this case-study the part of concern was a specific microcontroller of Infineon’s XMC1202 family.
Optimizing the build to fit smaller flash memory
To fit the original firmware, KOMP.LED had been using the top-of-the-line part of Infineon’s XMC1202 family of microcontrollers with 64kB of Flash memory. The specific microcontroller being unobtainable for the next 12+ months, an investigation to replace the part had been launched, including options to switch to a completely different part or vendor. Such a solution would have required a redesign of the PCB and involved extensive validation and substantial cost.
Alternatively, reducing the original firmware size of 42kB to fit the more widely available 16kB-Flash microcontroller, would avoid the redesign, but was considered largely impossible without breaking compatibility.
tipi.build offered to step into the challenge by porting its unique tipi.build binary optimizer tools to the ARM Cortex M0 toolchain required to compile the firmware of KOMP.LED’s marker light.
Without any change to the source code, the tipi.build binary optimizer yielded a reduction of 28% in size, bringing the firmware down to 30kB. The binary size could be reduced further by using the build insights generated by tipi.build with only minor changes.
The result is stunning! We gained a lot of options for production with the smaller build, which is a game changer in the current supply situation. Best of all: we didn’t have to re-develop the product!
Chief Operating Officer
With an end-result fitting into 16144 bytes, KOMP.LED is now able use any microcontroller of the XMC1202 family for full flexibility in production, all while keeping full compatibility with the original firmware in the field.
tipi.build co-founder and COO