Progettazione firmware per sistemi embedded

Firmware su misura per microcontrollori e sistemi di controllo industriale: dalla scelta del microcontrollore e dal protocollo di comunicazione al debug su hardware reale, fino al collaudo in produzione e alla manutenzione nel tempo.

Piattaforme supportate

Microcontrollori e schede dei principali produttori, con i rispettivi ambienti di sviluppo ufficiali.

STMicroelectronicsSTMicroelectronics
MicrochipMicrochip
RenesasRenesas
NXPNXP
EspressifEspressif
Raspberry PiRaspberry Pi

Approccio

Referente tecnico unico

Rapporto diretto con il progettista che sviluppa il firmware, senza passaggi intermedi tra specifiche e implementazione.

Co-design hardware, firmware e software

Co-progettazione con chi disegna la scheda fin dall'inizio, e consegna del firmware completo insieme agli strumenti per configurarlo e collaudarlo: meno tempo per arrivare sul mercato.

Italia ed estero

Collaborazioni anche da remoto, in italiano e in inglese, con aggiornamenti regolari sullo stato di avanzamento.

Supporto sull'intero ciclo di vita

Il firmware evolve con il prodotto: aggiornamenti, nuove funzioni e porting quando un componente esce di produzione.

Ambiti di lavoro

Firmware su microcontrollori multi-vendor

Sviluppo bare-metal o con sistema operativo real-time, con i tool ufficiali dei principali produttori: gestione periferiche, bootloader e aggiornamento firmware.

STM32 Microchip Renesas NXP ESP32 FreeRTOS

Protocolli di comunicazione industriale

Progettazione e implementazione di protocolli per reti di dispositivi: RS-485 custom, CAN/CANopen, Modbus RTU.

RS-485 CANopen Modbus

Connettività, RF e IoT

Firmware embedded per moduli RF e dispositivi connessi, anche per l'agricoltura: LoRaWAN, Wireless M-Bus, sub-GHz, Bluetooth, Wi-Fi, GPS e RFID, con gateway su Linux embedded.

LoRaWAN Wireless M-Bus Sub-GHz BLE Wi-Fi GPS RFID

Sistemi di controllo e automazione

Firmware per l'elettronica di controllo di attuatori, motori e sensori in dispositivi di automazione, con attenzione ad affidabilità e sicurezza.

Attuatori Automazione FPGA

Porting e obsolescenza

Migrazione del firmware su un nuovo microcontrollore quando un componente esce di produzione o serve ridurre i costi, mantenendo il comportamento del prodotto.

Migrazione MCU Refactoring

Configurazione e collaudo di fine linea

Strumenti software CLI e GUI per programmare, configurare e collaudare le schede in produzione e in assistenza, in comunicazione diretta con il firmware.

CLI / GUI .NET Collaudo Tooling

Qualità del codice

Il firmware viene scritto per essere letto, verificato e mantenuto nel tempo, anche da altri sviluppatori.

  • C / C++ strutturato, con moduli separati per periferiche, protocolli e logica applicativa
  • Commenti e documentazione tecnica sulle scelte non ovvie
  • Verifiche incrementali su hardware reale ed evaluation board
  • Versioni tracciate e backup di ogni fase di sviluppo
modbus_crc.c
/**
 * Calcola il CRC-16 Modbus (polinomio 0xA001, riflesso)
 * di un frame RTU. Il risultato va trasmesso LSB first.
 */
uint16_t modbus_crc16(const uint8_t *buf, size_t len)
{
    uint16_t crc = 0xFFFF;

    for (size_t i = 0; i < len; i++) {
        crc ^= buf[i];
        for (uint8_t b = 0; b < 8; b++) {
            crc = (crc & 1u) ? (crc >> 1) ^ 0xA001
                              : (crc >> 1);
        }
    }
    return crc;
}

Un nuovo progetto embedded?

A partire dai requisiti del dispositivo viene fornita una prima valutazione di fattibilità, tempi e approccio tecnico.

Richiedi una valutazione