Linux Embedded

linux embedded

Grazie alla comparsa sul mercato di Application Processor sempre più performanti, ricchi di periferiche ed a costi sempre più allettanti, in questi ultimi anni si sta assistendo ad una diffusione massiva di prodotti e soluzioni basate su piattaforme embedded basate su sistema operativo linux: sistemi di infotainment automotive, datalogger, dispositivi di automazione industriale, soluzioni di domotica, networking, medicale sono solo alcuni esempi di settori applicativi dove sempre più frequentemente si trovano prodotti basati su Linux.

Al vantaggio competitivo storico di una soluzione basata su Linux embedded, costituito dall'assenza di costi di licenza, si affiancano oggi ulteriori benefici: livelli di performance eccellenti, anche in applicazioni con esigenze strette di real time, possibilità di attingere ad un mondo open source praticamente infinito ed alimentato da community sempre più popolate ed attive anche in settori applicativi molto specialistici, una pluralità di soluzioni concorrenti, la disponibilità di board di sviluppo a costi assolutamente abbordabili ed a board ingegnerizzate per soluzioni modulari (SOM) ottimizzate come costi ed ingombri, e concepite per essere facilmente e convenientemente utilizzate anche su un prodotto di produzione, semplificandone enormemente le problematiche di progettazione e produzione.

Da svariati anni operiamo nel settore dello sviluppo prodotti basati su Linux Embedded e possiamo mettere a disposizione consolidate competenze:

  • Scouting e individuazione di un processore idoneo per l'applicazione in esame. Possiamo vantare esperienze su architetture Intel x86 e x64 (Atom e sue evoluzioni), Arm Cortex A9 (Freescale i.MX6 e TI Omap 4/5), Arm Cortex A15 (Renesas R-Car H2/M2), single, dual e quad core
  • Approccio "make or buy" al prodotto: completo full custom di una nuova board, integrazione di un SOM commerciale su una carrier board custom, integrazione di una board commerciale
  • Integrazione, implementazione, customizzazione di BSP
  • Sviluppo e customizzazione di first stage bootloader (gestione DDR e boot da SD card, eMMC, SPI Flash, ...)
  • Customizzazione di u-Boot e sviluppo di driver e funzionalità specifiche (splash screen, early audio, early video, ....)
  • Sviluppo driver (platform, UART, SPI, I2C, ALSA SoC sound, V4L video input e FM/DAB radio tuners, Ethernet, USB ohci/ehci, USB OTG, DMA, MLB, CAN, MFD, GPIO, SD/MMC)
  • Customizzazione del kernel per la piattaforma via device tree o platform driver
  • Realizzazione di architetture audio complesse basate su ALSA SoC con multi-stream TDM simultaneo, integrazione di Sample Rate Converter e celle di Digital Signal Processing (filtraggio, controllo volume, mixing, ...)
  • Sviluppo/customizzazione di root filesytem basati su Open Embedded / Yocto
  • Realizzazione di applicazioni multimediali basate su gstreamer con utilizzo di plugin audio/video accelerati (per le piattaforme con GPU / DSP)
  • Sviluppo applicazioni in C/C++
  • Installazione/integrazione di servizi (network server, db server, ...)
linux embedded