Uitval bij flashen in het veld
Teams die firmware pas flashen nadat de unit de PCBA-assemblage heeft verlaten, rapporteren de uitval vaak te laag. Een unit die de firmware niet accepteert op de werkbank van de integrator, gaat naar rework, retour of de afvalbak, en die kosten boeken op een ander grootboek dan de PCBA-kosten.
Meet u de uitval van begin tot eind, dan ligt de uitval bij post-productieflashen meestal op 1 tot 4 procent. Bij een batch van 1000 units zijn dat 10 tot 40 units aan vermijdbare rework of verlies. Flashen aan de productiezijde drukt dat op de meeste lijnen onder 0,5 procent, omdat de fout op het teststation wordt gevangen en niet bij de integrator.
Configuratiedrift
Units die in verschillende sessies, met verschillende firmwarerevisies en door verschillende operators worden geflasht, drijven in configuratie uit elkaar. Kalibratiewaarden, netwerkinstellingen, debug-flags. De drift is bij overdracht onzichtbaar en bij integratie duur, zodra de ene unit zich anders gedraagt dan de volgende.
Flashen aan de productiezijde haalt elke unit door dezelfde flash-sequentie met dezelfde firmware-hash, hetzelfde provisioning-template en dezelfde ondertekende bootloader. De configuratiedrift gaat naar nul.
Handhaving van ondertekende firmware
Handhaving van een ondertekende bootloader er achteraf op schroeven, terwijl een product al in productie is, is pijnlijk. De fuse-branding, de sleuteloverdracht, de verificatiecyclus, alles moet alsnog in een flow worden ingepast die er niet voor was ontworpen.
Wie de productielijn vanaf het begin rond ondertekende firmware ontwerpt, maakt dit triviaal. Eerst wordt de bootloader weggeschreven met de signing-key-referentie, daarna de applicatie met hashverificatie, en als derde wordt de eFuse gebrand om de keten te vergrendelen.
CRA-gereedheid
De Cyber Resilience Act vraagt om firmwaretraceerbaarheid per unit. Een unit die vandaag wordt verzonden, kan over drie jaar een beveiligingsupdate nodig hebben, en de fabrikant moet weten met welke firmwareversie hij is uitgegaan.
Flashen aan de productiezijde legt de firmware-hash bij het serienummer vast in een database. Flashen in het veld levert die log niet op, tenzij de integrator er los een opzet, wat doorgaans niet gebeurt.
Wanneer flashen aan de productiezijde loont
Grofweg: elk product waarvan de firmwarerevisies stabiel genoeg zijn om aan een productiebatch te koppelen, en waarbij de kosten per unit van veldflashen of configuratiedrift meetbaar zijn. Voor de meeste producten in connected industrial, gebouwautomatisering, energie en toegangscontrole valt die drempel al vroeg in NPI.
Verandert de firmware tijdens NPI wekelijks, wacht dan met flashen aan de productiezijde tot de bootloader en signing keys stabiel zijn, en haal het pas dan in-line.
Bronnen
- IPC-brancherapporten over productietest- en flashpercentages
- Espressif, "Secure Boot v2"-productiedocumentatie
- NXP, "Secure boot and trust provisioning"-productiegidsen