Pagina iniziale

Servizi embedded da un'unica mano

Hardware, firmware, progettazione FPGA, diagnostica e automazione dei test — con contratto a forfait con impegno di consegna fermo o come monte ore per progetti in corso.

I progetti embedded richiedono spesso più discipline contemporaneamente: occorre progettare un circuito, programmare un microcontrollore, verificare un FPGA e allestire un banco di prova. Anziché orchestrare una catena di fornitori, potete riunire questi compiti in un'unica mano. Questo risparmia interfacce, sforzi di coordinamento e dispersione di responsabilità.

Di seguito i sei ambiti di servizio in cui opero. Non sono pensati come catalogo — la maggior parte dei progetti ne combina diversi.

Sviluppo

Sviluppo hardware e software

Concezione e sviluppo di schede e dispositivi elettronici — dal circuito analogico alla progettazione FPGA. Sistemi a microcontrollore e basati su FPGA da un'unica mano, compresi schema, sbroglio, firmware e sviluppo di driver prossimi all'hardware. Su richiesta, fino alla produzione di serie tramite partner consolidati.

  • Progettazione di circuiti (analogica e digitale)
  • Sbroglio di schede per prototipo e serie
  • Firmware microcontrollore in C/C++/assembler
  • Progetti FPGA in VHDL e SystemVerilog
  • Sviluppo bare-metal su microcontrollori limitati
  • Sviluppo di driver per interfacce prossime all'hardware
  • Bootloader, watchdog, meccanismi di aggiornamento del firmware
  • Scelta hardware e approvvigionamento componenti
Algoritmi

Sviluppo di algoritmi

Sviluppo sistematico dal modello matematico all'implementazione hardware. Gli algoritmi vengono modellati prima in pseudocodice o Matlab, poi implementati in C/C++ per microcontrollori o in Verilog/SystemVerilog per FPGA — secondo la piattaforma di destinazione e i requisiti di tempo reale.

  • Modellazione matematica e pseudocodice
  • Implementazione in C/C++ per microcontrollori
  • Implementazione in Verilog/SystemVerilog per FPGA
  • Elaborazione del segnale (filtri, FFT, finestre)
  • Controllo automatico (PID, controllo di stato, metodi adattivi)
  • Algoritmi per protocolli di comunicazione
  • Ottimizzazione sotto vincoli di memoria e tempo di esecuzione
Diagnostica

Diagnostica e comunicazione veicolo

Sviluppo e test di concetti diagnostici e interfacce di comunicazione per centraline veicolo. Esperienza con i bus consolidati nell'ambiente automotive (CAN, CAN FD, MOST) e con la diagnosi UDS secondo ISO 14229.

  • Diagnosi UDS (ISO 14229)
  • Analisi e simulazione CAN / CAN FD / MOST
  • Flashing e configurazione di centraline
  • Concetti diagnostici per autovetture e veicoli commerciali
  • Implementazioni gateway tra bus
  • Analisi di carico bus e studi di temporizzazione
Test & QA

Automazione dei test e qualifica

Validazione sistematica di sistemi embedded — dalla specifica di test al rilascio in serie. I banchi di prova sono progettati in modo che il team del cliente possa farli funzionare ed estenderli autonomamente al termine del progetto.

  • Automazione dei test con CANoe/CAPL, LabView, Python
  • Test HIL (hardware-in-the-loop)
  • Robot Framework per test end-to-end
  • Specifica e documentazione conformi ad ASPICE
  • Analisi della copertura di test e individuazione delle lacune
  • Banchi di prova riproducibili con gestione di versioni e configurazione
Software

Sviluppo web e app per il contesto embedded

Software di accompagnamento per sistemi embedded: interfacce di configurazione, dashboard, visualizzazione di dati e applicazioni mobili. Questo strato è spesso sottovalutato — eppure determina la percezione che l'utente finale ha del sistema embedded.

  • Frontend web (JavaScript, HTML/CSS, Chart.js)
  • Backend web e API REST (Python/Flask, Node.js)
  • Visualizzazione dati in tempo reale (Socket.IO, WebSocket, MQTT)
  • Applicazioni Android (Kotlin)
  • Strumenti di configurazione per dispositivi embedded
  • Dashboard per acquisizione dati e diagnostica
Progetto

Supporto al progetto e consulenza

Quando un progetto embedded in corso necessita di sostanza aggiuntiva — colli di bottiglia, codice ereditato, questioni di dettaglio delicate — intervengo in modo mirato e flessibile nel tempo. Questa forma di cooperazione è particolarmente utile quando si sa cosa serve, ma non quanto.

  • Consulenza di progetto per design embedded
  • Supporto flessibile a ore
  • Presa in carico completa con contratto a forfait
  • Trasferimento di conoscenze ai team del cliente
  • Documentazione tecnica e revisioni di codice
  • Analisi di basi software ereditate
Progetto

Gestione del progetto dalla prima richiesta alla consegna

I progetti embedded raramente falliscono su singoli compiti tecnici. Falliscono per requisiti poco chiari, documentazione incompleta, mancanza di evidenze rispetto alle norme e per resoconti di stato che oscurano più di quanto chiariscano. Su richiesta assumo non solo lo sviluppo, ma anche la conduzione metodica del progetto — dal primo colloquio al collaudo.

  • Raccolta dei requisiti nel primo incontro e strutturazione in capitolato
  • Specifica funzionale, progettazione architetturale e definizione delle interfacce
  • Pianificazione delle milestone, stima degli sforzi e registro dei rischi
  • Matrice di tracciabilità dal requisito all'implementazione fino al test
  • Tabelle FMEA e FTA, ricerca normativa IEC 61508, ISO 26262 e IEC 62304
  • Code review e accompagnamento dell'implementazione
  • Resoconti di stato, change management e documentazione di collaudo

Sul blog: Gestione del progetto nei progetti embedded — perché il lavoro più difficile si svolge prima del primo schema

Offro la gestione del progetto solo in combinazione con la responsabilità tecnica — come parte di uno sviluppo completo o ad accompagnamento di un team guidato dal cliente. La pura coordinazione senza profondità tecnica non rientra nella mia offerta.

Forme di cooperazione

Due modelli di contratto secondo il tipo di progetto:

Niente somministrazione di personale. Dettagli alla pagina Affidamento.

Schema colori

Lingua