Servizi di sviluppo firmware
Servizi di sviluppo firmware per microcontrollori: firmware bare-metal e RTOS in C, C++ e Rust, driver, stack Bluetooth e wireless, bootloader e aggiornamenti sul campo, firmware per ECU automotive, controllo motori e gestione batterie e progettazione a basso consumo per wearable, sensori, contatori, elettrodomestici, veicoli e dispositivi medicali, con ingegneri firmware dedicati al Suo team o progetti realizzati end to end.
Il firmware che sviluppiamo
Firmware per microcontrollori
Firmware bare-metal, Zephyr, FreeRTOS o Eclipse ThreadX per componenti STM32, Nordic nRF52, nRF53 e nRF54, ESP32, NXP, Renesas, Infineon, Microchip e Silicon Labs, usando l’SDK del produttore dove fa risparmiare tempo e incapsulandolo dove vincolerebbe a un solo chip.
Driver per periferiche e sensori
Driver I2C, I3C, SPI, UART, CAN, ADC e DMA per sensori, display, motori e radio, ciascuno testato su un dispositivo simulato o registrato prima di incontrare quello reale.
Firmware per protocolli wireless
Stack Bluetooth Low Energy e LE Audio, Wi-Fi, Thread, Matter, Zigbee e LoRaWAN configurati ed estesi sul chip, e modem cellulari pilotati con comandi AT o LwM2M, pronti per la qualificazione Bluetooth SIG e la certificazione Matter.
Bootloader e aggiornamenti sul campo
MCUboot o un bootloader su misura con immagini firmate, due slot e rollback, così un aggiornamento interrotto da una batteria scarica lascia il dispositivo sull’ultima versione funzionante.
Firmware a basso consumo e per wearable
Fitness band, cerotti per la salute, auricolari e sensori che funzionano per mesi con una piccola batteria: modalità di sleep, sorgenti di risveglio e duty cycle radio ottimizzati sulla traccia di un power profiler, così l’autonomia stampata sulla confezione è una misura e non una stima.
Firmware per controllo motori, alimentazione e batterie
Field-oriented control per motori BLDC e passo-passo, gestione delle batterie con bilanciamento delle celle e stima dello stato di carica, e firmware di controllo per caricabatterie, inverter solari e sistemi di accumulo, con i loop di controllo ottimizzati in simulazione prima di pilotare l’hardware reale.
Firmware per ECU automotive
Software di base e componenti applicativi Classic AUTOSAR su controllori Infineon AURIX, NXP S32K e Renesas RH850, comunicazione CAN FD, LIN ed Ethernet automotive e diagnostica UDS, scritti secondo MISRA C e il livello di sicurezza ISO 26262 richiesto dal Suo item.
Audio, DSP e machine learning sul dispositivo
Elaborazione di segnali audio e di sensori con CMSIS-DSP o su core Cadence Tensilica e Analog Devices SHARC, e modelli di keyword spotting, gesture e anomalie eseguiti sul microcontrollore tramite LiteRT for Microcontrollers o Edge Impulse.
Firmware safety-critical e fault-tolerant
Firmware per dispositivi medicali, elettrodomestici e funzioni di sicurezza industriale scritto secondo MISRA C e le regole di IEC 62304, IEC 60730 o IEC 61508, con watchdog, fault handler che conservano una traccia del crash attraverso il reset e code coverage misurata al livello richiesto dallo standard.
Ingaggiare ingegneri firmware
ingegneri firmware dedicati
Ingegneri firmware che entrano a tempo pieno nel Suo team, lavorano con i Suoi strumenti e il Suo processo e rispondono al Suo responsabile. Li intervista Lei; noi ci occupiamo del contratto ucraino, delle buste paga, della fatturazione e delle ferie.
Progetti di Sviluppo firmware
Un’attività di sviluppo firmware ben definita, con un perimetro, un piano fisso e un responsabile nominato da parte nostra che risponde del risultato e riferisce sull’avanzamento nei Suoi canali.
sviluppo firmware su base continuativa
Sviluppo firmware come servizio continuativo: le stesse persone ogni mese, un backlog di cui Lei stabilisce le priorità e ore che può vedere nel nostro portale e in fattura.
La pagina sul team dedicato spiega come gli specialisti entrano nel Suo team, e la pagina sull’outsourcing tratta la realizzazione di progetti, le prese in carico e il modo in cui fatturiamo.
Chi si occupa di sviluppo firmware per Lei
Ingegneri firmware
C, C++ e Rust su microcontrollori
Ingegneri firmware automotive
Classic AUTOSAR, CAN e diagnostica UDS
Ingegneri hardware
Schemi elettrici e bring-up della scheda su cui gira il firmware
QA engineer embedded
Test hardware-in-the-loop e fixture
Sviluppatori mobile
App companion per iOS, .NET MAUI e React Native
Come scriviamo il firmware
La maggior parte del firmware si può testare senza la scheda, quindi lo scriviamo così: l’accesso all’hardware sta dietro interfacce sottili, la logica sopra di esse gira come test unitari sulla macchina di build in Unity, Ceedling o GoogleTest, e Renode esegue l’intera immagine su hardware emulato nella pipeline. L’analisi statica verifica le regole MISRA C o CERT C dove il prodotto lo richiede, gli avvisi del compilatore sono errori e ogni immagine di rilascio è costruita da un commit con tag dalla pipeline e firmata lì.
L’hardware raggiunge l’ingegnere in due modi: gli vengono spediti kit di sviluppo e schede prototipo, oppure lavora su un rack nel Suo laboratorio tramite accensione remota, una sonda di debug e una console seriale attraverso la Sua VPN. In entrambi i casi la build gira nella Sua pipeline e il codice risiede nei Suoi repository.
Altri servizi embedded e hardware
Sviluppo di software embedded
Servizi di sviluppo di software embedded: Linux embedded, Android e RTOS, driver, BSP, software automotive, di rete, audio e video e aggiornamenti sicuri, con ingegneri di software embedded dedicati o realizzazione di progetti.
Sviluppo FPGA
Servizi di sviluppo FPGA: progettazione RTL in SystemVerilog e VHDL, verifica di FPGA e ASIC, SoC FPGA, video, networking, acquisizione dati e accelerazione, con ingegneri FPGA dedicati o realizzazione di progetti.
Progettazione hardware e PCB
Servizi di progettazione hardware e PCB: schemi elettrici, layout multistrato e HDI, progettazione ad alta velocità, RF, analogica e di potenza, preparazione EMC e file di produzione, con ingegneri hardware dedicati o realizzazione di progetti.
Sviluppo IoT
Servizi di sviluppo IoT: connettività, provisioning, piattaforme cloud su Azure o AWS, aggiornamenti di flotte, IoT industriale, asset tracking, ricarica di veicoli elettrici, dashboard e app, con sviluppatori IoT dedicati o realizzazione di progetti.
Test embedded e hardware
Servizi di test embedded e hardware: test dei dispositivi, banchi hardware-in-the-loop, automazione del firmware, test di ECU automotive, connettività e sicurezza, con QA engineer embedded dedicati o realizzazione di progetti.
Software per la robotica
Servizi di sviluppo di software per la robotica su ROS 2: percezione, navigazione, pianificazione del movimento, controllo dei robot, celle industriali, veicoli autonomi e software per flotte, con ingegneri della robotica dedicati o realizzazione di progetti.
Domande sullo sviluppo firmware
Il lavoro sul firmware può iniziare prima che il nostro hardware sia pronto?
Sì. Il lavoro parte sul kit di sviluppo del microcontrollore scelto e in Renode, con driver scritti sui datasheet dei componenti presenti nel Suo schema, così le prime schede prototipo vengono messe in funzione con un firmware già esistente anziché partire da zero.
C, C++ o Rust per il nostro firmware?
C quando l’SDK del produttore, il codice esistente o le evidenze di certificazione sono in C. C++ per firmware più grandi che traggono vantaggio da tipi e template senza allocazione dinamica. Rust, con Embassy ed embedded-hal, per firmware nuovi dove conta la sicurezza della memoria e il microcontrollore è ben supportato; Rust è già il linguaggio del nostro software desktop. Raccomandiamo un solo linguaggio per prodotto prima di scrivere la prima riga.
In quali settori lavorano i vostri ingegneri firmware?
Elettronica di consumo e wearable, in fitness band, auricolari, elettrodomestici e sensori per la smart home; apparecchiature industriali ed energetiche, in azionamenti motore, sistemi di gestione batterie, contatori e caricabatterie; automotive, in ECU di carrozzeria, comfort e powertrain e in controllori per e-bike ed e-scooter; dispositivi medicali e per la salute, in glucometri, pompe a infusione e apparecchi acustici; prodotti per la sicurezza, in sensori di allarme, serrature smart e lettori di accesso; e telecomunicazioni, in modem e moduli radio.
Con quale rapidità possono iniziare ingegneri firmware?
Quando è disponibile il profilo giusto per il ruolo di ingegnere firmware, l’avvio dipende soltanto dal Suo colloquio e dalla firma dell’NDA e della cessione della proprietà intellettuale. Altrimenti avviamo una ricerca, che di norma produce profili di candidati entro due o tre settimane, e nessuno inizia finché Lei non ha detto di sì.
Come ingaggiare ingegneri firmware tramite BigTree108?
Ci indichi il lavoro, il livello di seniority e l’impegno orario necessario. Le proponiamo una o due persone con i rispettivi profili, Lei le intervista come farebbe con una Sua assunzione e firma un unico contratto con BIG TREE 108 LLC, ricevendo una sola fattura al mese.
A chi appartiene il lavoro che producono?
A Lei. Ogni specialista ha un contratto firmato con BigTree108 che cede all’azienda tutto il lavoro prodotto, e il nostro accordo con Lei lo cede a sua volta. Codice, design e documenti vengono consegnati nei Suoi repository e strumenti, non conservati dove solo noi possiamo modificarli.
Ha bisogno di firmware da scrivere o da correggere?
Ci indichi il microcontrollore, la toolchain e che cosa deve fare il dispositivo. Riceverà una risposta entro un giorno lavorativo: un piano per il firmware, profili di candidati oppure una revisione del codice esistente.