Embedded Linux · realtid · produktsoftware · livscyklusteknik

Skræddersyet embedded software – bygget til at holde

Embiox tager teknisk ansvar for en sammenhængende løsning, der er tilpasset produktets konkrete behov og udviklet med gennemarbejdede valg, realistisk planlægning og forudsigelig levering.

Baseret i Støvring, ca. 20 km syd for Aalborg

  1. Afklaring og arkitektur
  2. Embedded løsninger
  3. Linux, mikrokontrollere og realtid
  4. Levering og livscyklus

I dag skal et produkt kunne mere end bare at virke

Når et embedded produkt forlader udviklingsbordet, begynder den lange del af arbejdet. Softwaren skal ikke kun fungere ved første release. Den skal fortsat kunne forstås, bygges, testes, diagnosticeres, opdateres og videreudvikles – også når hardware, afhængigheder, lovgivning og krav ændrer sig.

Embiox tænker derfor arkitektur, udviklingsmiljø, diagnostik, opdatering og vedligeholdelse ind fra begyndelsen. Det mindsker teknisk risiko og teknisk gæld samtidig med, at det giver produktvirksomheden bedre kontrol over produktet gennem dets levetid.

Nyt produkt

Få krav, arkitektur og teknisk retning på plads fra begyndelsen, så tidlige valg understøtter både produktets funktion og den forventede levetid.

Fra prototype til produktion

Før en fungerende prototype videre gennem validering, produktion og lancering – uden at miste overblikket over de tidlige tekniske valg.

Eksisterende produkt

Skab overblik over platform, software og afhængigheder, så produktet kan stabiliseres, overtages eller videreudvikles uden at kassere det, der allerede fungerer.

Det kan Embiox tage ansvar for

Embiox kan tage ansvar for den samlede softwareleverance, indgå som en ansvarlig del af et bredere samarbejde eller bidrage med specialiseret viden til en eksisterende løsning. Omfanget tilpasses produktet og virksomhedens behov.

Embedded Linux og produktplatforme

Yocto-baserede Linux-platforme, BSP-tilpasning og integration af bootloader, operativsystem, drivere, hardware og enheder. Embiox kan tage platformen fra board bring-up til en produktionsklar platform, der er tilpasset produktets hardware, funktioner og levetid.

Yocto · BitBake · Linux · BSP · U-Boot · systemd · secure boot · Raspberry Pi CM4/CM5

Produktsoftware, realtid og kommunikation

Applikationssoftware, low-level drivere, API’er og kommunikationslag til embedded Linux, mikrocontrollere og RTOS. Arkitekturen udformes med tydelige grænseflader, forudsigelig adfærd og fokus på robusthed, performance og praktisk fejlsøgning.

Embedded C · Linux C · C++ · Python · RTOS · PREEMPT_RT · API'er · kommunikationsprotokoller

Udviklingsmiljø, build og release

Versionerede Linux- og Docker-baserede miljøer, kontrollerede værktøjer samt automatisering af build, test og release. Hver leverance skal kunne identificeres, genskabes og overtages uden at være bundet til en bestemt udviklingsmaskine eller person.

Docker · Linux · Git · CMake · Meson · Jenkins · testautomatisering · produktionstest

Opdateringer, sikkerhed og livscyklus

Sikre og sporbare firmware- og systemopdateringer, kendte afhængigheder og mekanismer til håndtering af sårbarheder. Det giver et praktisk grundlag for diagnostik, support og langsigtet vedligeholdelse af produkter i felten.

A/B-opdatering · RAUC · Mender · signering · SBOM · CVE · VEX · sporbarhed

Konsulentopgaver og specialistbistand

Embiox indgår også i virksomhedens eksisterende udviklingsarbejde med målrettet specialistbistand. Det kan være kompleks fejlsøgning, review af kode eller arkitektur, nedbringelse af teknisk gæld eller sparring om vanskelige tekniske beslutninger.

Ved fejl i felten eller andre kritiske problemer kan Embiox gennemføre en fokuseret teknisk undersøgelse, der hurtigt skaber overblik over symptomer, sandsynlige årsager og relevante næste skridt.

Workshops, undervisning og vidensoverdragelse tilpasses virksomhedens produkter, tekniske kontekst og konkrete behov.

Sådan arbejder Embiox

Ingeniørprincipper

God embedded software udspringer af disciplineret enkelhed. Embiox foretrækker tydelige lag, fokuserede komponenter, eksplicitte grænseflader og kontrollerede afhængigheder. Systemkomponenter afkobles, hvor det er praktisk muligt, så hver del kan forstås, testes, diagnosticeres og ændres uden at destabilisere resten af produktet.

Korrekthed prioriteres over smarte løsninger. Beslutninger baseres på målinger, reproducerbar dokumentation og en tydelig forståelse af afvejningerne. Usikkerhed og teknisk risiko kommunikeres direkte – også når konklusionen er ubekvem.

Et stærkt udgangspunkt – tilpasset jeres produkt

Embiox bygger ikke hver løsning fra bunden. Gennemprøvede metoder, værktøjer og tekniske byggesten fra tidligere arbejde giver et kendt udgangspunkt, så indsatsen kan koncentreres om det, der gør produktet unikt.

Udgangspunktet tilpasses produktets hardware, funktioner, krav og risikoprofil, hvilket reducerer antallet af tekniske ubekendte og skaber en mere forudsigelig vej fra idé til produkt uden at presse produktet ind i en standardløsning.

Kontrol over produktplatformen

Linux-platformen opbygges i tydelige lag, der adskiller hardwareunderstøttelse, operativsystem og produktkonfiguration. Det giver kontrol fra boot og hardwareintegration til den færdige platform.

Klare grænser gør det lettere at tilpasse eller udskifte dele af platformen, når hardware eller produktkrav ændrer sig.

Generelle forbedringer og fejlrettelser kan føres tilbage til det fælles platformfundament, så flere produkter får gavn af den samme læring på en sporbar og kontrolleret måde – uden at blande kundespecifik kode eller ansvar sammen.

Produktsoftware med tydelig struktur

Produktsoftwaren opdeles i komponenter med klare ansvarsområder, grænseflader og dataflow. Det gør systemets adfærd lettere at forstå, teste og diagnosticere – også når produktet vokser eller får nye funktioner.

Arkitekturen tilpasses opgaven, men bygger på gennemarbejdede principper, der holder kompleksiteten under kontrol.

Reproducerbar udvikling og levering

Udviklingsmiljøer, værktøjer og afhængigheder versioneres i kontrollerede, containerbaserede miljøer. Det begrænser forskelle mellem udviklere og automatiserede builds og gør leverancen mindre person- og maskinafhængig.

En tidligere leverance skal fortsat kunne genskabes, undersøges og videreføres, når der senere bliver behov for det.

Bygget til produktets levetid

Produktets levetid tænkes ind i ingeniørarbejdet fra begyndelsen i stedet for at blive behandlet som et separat compliance-lag. Løsningen skal derfor fortsat være til at forstå, ændre og vedligeholde, når produktet, afhængighederne og kravene ændrer sig.

Det er først og fremmest god produktudvikling. Samtidig styrker det producentens tekniske grundlag for produktsikkerhed, dokumentation og arbejde med krav som EU’s Cyber Resilience Act (CRA).

Fra produktbehov til løsning

Afklar

Vi begynder med produktet og forretningsbehovet. Produktets afgrænsning, kendte og ukendte krav, væsentlige risici, tekniske rammer og forventede levetid omsættes til de beslutninger, der skal forme leverancen.

Typisk resultat: Et fælles beslutningsgrundlag, en tydelig arkitekturretning og en realistisk plan for det videre arbejde.

Tilpas og udvikl

Embiox tilpasser det tekniske udgangspunkt og udvikler de produktspecifikke dele som én samlet løsning. Arkitektur, grænseflader og vigtige beslutninger gøres tydelige, så leverancen kan forstås, efterprøves og videreføres.

Typisk resultat: En sammenhængende softwareleverance, der er tilpasset produktet og klar til produktion eller næste udviklingsfase.

Vedligehold og videreudvikl

Efter lanceringen kan Embiox fortsat tage ansvar for platformen og den tekniske videreudvikling. Nye behov, produktvarianter og ændrede krav håndteres uden at miste overblikket eller den arkitektoniske sammenhæng.

Typisk resultat: Kontinuitet, forudsigelige ændringer og en aftalt model for ansvar og support.

Tæt samarbejde – tydeligt ansvar

Embedded software er Embiox’ primære fagområde, men softwaren udvikles som en del af et samlet produkt – ikke isoleret. Derfor er et tæt samarbejde med kundens egne teams, producenter og øvrige leverandører en naturlig del af arbejdet.

Software bliver ofte først inddraget, når de centrale hardwarevalg allerede er truffet. Embiox foretrækker at komme med tidligt, så softwarekrav kan indgå i valg af hardware og platform samt i arbejdet med grænseflader, testbarhed, produktion, opdateringer, sikkerhed og produktets forventede levetid. Det mindsker risikoen for unødvendige begrænsninger og dyre ændringer senere i udviklingen.

Når en opgave kræver kompetencer inden for hardwaredesign, RF, mekanik, compliance eller andre specialer, kan Embiox inddrage betroede specialister fra sit netværk. Efter aftale kan Embiox koordinere deres bidrag og tage ansvar for den tekniske sammenhæng, grænsefladerne mellem fagområderne og en fælles leveranceplan. Hvis kunden allerede har de nødvendige kompetencer eller foretrukne leverandører, indgår Embiox gerne i det samarbejde.

Erfaring, der præger metoden

Embiox’ arbejdsform er præget af praktisk arbejde med embedded produkter – fra nye platforme og realtidssystemer til overtagelse af eksisterende løsninger og intensiv fejlsøgning, når timing, performance eller stabilitet ikke svarer til forventningerne.

Udvalgte erfaringer:

  • Bring-up, opstart og opdatering: Yocto- og BitBake-baserede produktplatforme med BSP-tilpasning, U-Boot, systemd, low-level drivere og hardwareintegration. Arbejdet har også omfattet kontrollerede releases og sikre firmwareopdateringer.
  • Realtidsadfærd dokumenteret med målinger: C/C++ til mikrocontrollere, RTOS og PREEMPT_RT Linux samt analyse af timing, scheduling latency og priority inversion. Erfaringen omfatter cache-bevidste, lock-free køer til dataudveksling med lav latenstid og høj kapacitet mellem Linux-processer i userspace, profiling med ftrace, perf og Perfetto samt performancekritiske dataflow i userspace med DPDK.
  • Reproducerbar udvikling over tid: Docker- og Linux-baserede udviklingsmiljøer, komplekse buildsystemer og automatisering i Python og shell med kontrollerede værktøjsversioner og mulighed for at genskabe tidligere leverancer.
  • Kommunikation fra hardware til netværk: Drivere, grænseflader, API’er og protokoller fra hardware-nære forbindelser til TCP/TLS og distribuerede systemer. Erfaringen omfatter blandt andet DECT, BLE, Wi-Fi, NB-IoT og LoRa samt protokolanalyse med Wireshark.
  • Produkter uden for udviklingsmiljøet: Hardware-/softwareintegration, produktionstest, diagnostik og fejlsøgning. Herunder software til sundhedsprodukter, realtidsbehandling af sensordata og andre systemer med høje krav til kvalitet og pålidelighed.

Om Embiox

Embiox ApS er en embedded softwarevirksomhed med base i Støvring ved Aalborg. Virksomheden blev stiftet i 2021 af Daniel Mandrup.

Navnet Embiox er sammensat af emb fra embedded og IoX, en forkortelse for Internet of Everything. Det afspejler virksomhedens fokus på software tæt på hardwaren og på de grænseflader, der får produkter, enheder og systemer til at fungere sammen.

Embiox blev skabt med ønsket om at tage direkte teknisk ansvar og opbygge tætte, langvarige relationer med produktvirksomheder. Målet er at forstå både produktet og virksomhedens behov, træffe holdbare tekniske beslutninger og levere løsninger, der kan udvikles videre gennem hele produktets levetid.

Daniel Mandrup

Daniel Mandrup, stifter af Embiox Daniel stiftede Embiox og har det daglige tekniske ansvar. Han har en M.Sc. i elektronik med speciale i Netværk og Distribuerede Systemer fra Aalborg Universitet (2016) og mere end ti års erfaring med udvikling af embedded systemer.

Kunder samarbejder direkte med Daniel, og hans baggrund præger Embiox’ praktiske, strukturerede og langsigtede tilgang til produktudvikling.

LinkedIn · Download CV

Har I et produkt, der skal videre?

I behøver ikke have alle krav eller tekniske valg på plads. Fortæl kort, hvor produktet er i dag, og hvad I vil opnå – så kan den første samtale bruges til at afklare de vigtigste spørgsmål og et muligt næste skridt.

Kontakt Embiox