Kort svar: Firmware för en integrerad enhet utvecklas i en samdesignloop med kretskortet: arkitekturen (MCU eller SoC, minne, periferienheter, effektlägen, gränssnitt) låses tillsammans med schemat; board bring-up ger drivrutiner, ett hårdvaruabstraktionslager (HAL) och en bootloader på den första prototypen; applikationslagret lägger till RTOS, styrlogik, kommunikationsprotokoll och uppdateringar över luften (OTA); automatiserade hardware-in-the-loop-tester och ett fabrikstestprogram skrivs före serieproduktionen; och produktionsprogrammering, provisionering och fältuppdateringar designas in från början. Comtec Labs utvecklar firmware och hårdvara i ett och samma team, så att varje prototyprevision förbättrar båda.
Samdesignloopen steg för steg
| Steg | Firmwarearbete | Hårdvarubeslut det styr |
|---|---|---|
| 1. Krav och arkitektur | Beräkningsbudget, minne, realtidskrav, effektlägen, säkerhetsnivå, gränssnitt | Val av MCU/SoC, minne, effektträd, debug- och programmeringskontakt |
| 2. Board bring-up | Klock- och effektkonfiguration, drivrutiner, HAL, bootloader, första lysdioden och UART | Pull-ups, bootpinnar, testpunkter, sensorplacering, EMC-åtgärder |
| 3. Applikation och uppkoppling | RTOS-tasks, reglerloopar, CAN/Modbus/Ethernet/BLE/LTE-stackar, OTA-uppdatering, loggning | Antenn- och RF-layout, kontaktpinkonfiguration, watchdog- och brown-out-design |
| 4. Verifiering och testautomation | Enhetstester, hardware-in-the-loop-riggar, fabrikstestfirmware, kalibreringsrutiner | Testpunkter, boundary-scan-kedja, fixturgränssnitt |
| 5. Produktion och fält | Programmering och provisionering på linjen, säker nyckelinjektion, uppdateringspipeline, diagnostik | Lagring av serienummer, secure element, servicekontakt |
Hur god praxis för inbyggd firmware ser ut
- Versionshantering, kodgranskning och CI-byggen (continuous integration) för varje commit, även för firmware.
- Ett hårdvaruabstraktionslager så att applikationen överlever ett byte av MCU eller sensor.
- Secure boot, signerade uppdateringar och krypterad provisionering där enheten är nätverksansluten; EU:s Cyber Resilience Act gör detta till ett marknadskrav för uppkopplade produkter.
- Defensiv kodning i C/C++ (MISRA-liknande regler, statisk analys) och watchdog-övervakade tasks.
- Fabrikstestfirmware som motionerar varje gränssnitt, så att produktionslinjen hittar hårdvarufel på några sekunder.
Varför ett team för hårdvara och firmware
När firmwareingenjören sitter bredvid layoutingenjören blir debugkontakten, testpunkterna, sensorns orientering och effektsekvenseringen rätt redan på den första prototypen. När ett bring-up-problem dyker upp åtgärdas det i schemat och i drivrutinen samma dag, i stället för att eskaleras mellan två företag. Det är den praktiska innebörden av FoU-driven tillverkning.
Nyckelfakta
- Firmware tar typiskt 40–60 % av ingenjörstimmarna för en integrerad enhet; resten är elektronik och mekanik.
- Ett hårdvaruabstraktionslager gör en MCU:s end-of-life till en portning i stället för en omskrivning.
- Signerade OTA-uppdateringar och säker provisionering blir obligatoriska för uppkopplade produkter som säljs i EU (Cyber Resilience Act).
- Comtec Labs programmerar och provisionerar enheter på produktionslinjen och levererar testfirmwaren tillsammans med produkten.
Typiska plattformar vi arbetar med
ARM Cortex-M-mikrokontroller (STM32, NXP, Nordic, Espressif) med bare-metal eller FreeRTOS/Zephyr, inbyggd Linux på Cortex-A och SoC:er i NXP i.MX-klassen, fältbussar och industriella protokoll (CAN, Modbus, EtherCAT, OPC UA), trådlöst (BLE, Wi-Fi, LTE-M/NB-IoT, LoRa) samt edge AI-inferens på mikrokontroller och acceleratorer.
Vanliga frågor
Utvecklar ni firmware för kort ni tillverkar?
Ja, det är normalfallet.
Vem äger källkoden?
Kunden.
Kan ni lägga till firmware i en befintlig produkt?
Ja, efter granskning av hårdvara och kod.
Hur hanteras fältuppdateringar?
Bootloader med signerade avbilder, uppdateringspipeline och rollback.
Redo att minska överraskningarna kring kretskort?
Comtec Labs erbjuder en komplett uppsättning tjänster för att effektivisera ditt arbetsflöde:
Kretskortsplanering
Kretskortsprototyper
Kretskortskomponent inköp
Kretskortskomponent montering
Kretskorts testning
Kretskorts reparation och modifiering
Produktion av kretskort
Kretskorts massproduktion