FlexNIRS - App Monitoraggio Cerebrale per Harvard Medical

HealthcareIoTRicerca Medica
Pierluigi Raffone
Guidato daPierluigi Raffone
FlexNIRS - App Monitoraggio Cerebrale per Harvard Medical

Il Problema

FlexNIRS è un ossimetro cerebrale wearable low-cost sviluppato al Massachusetts General Hospital. Il device monitora i livelli di ossigeno cerebrale tramite spettroscopia nel vicino infrarosso (NIRS), ma aveva bisogno di un'app mobile per la raccolta dati. Il team di ricerca necessitava sia di un'interfaccia dettagliata per ricercatori esperti che di una modalità semplificata per assistenti che conducono studi di routine.

La Soluzione

Abbiamo sviluppato un'app Flutter per iOS e Android che si connette a FlexNIRS via Bluetooth Low Energy. L'app ha due modalità: Expert mode con visualizzazione completa dei segnali, accesso ai dati raw e configurazione avanzata; Non-Expert mode con setup guidato e controlli semplificati per gli assistenti di ricerca. Grafici in tempo reale mostrano i dati di ossigenazione cerebrale (SO2) a 100 Hz. L'app gestisce pairing del device, logging dei dati e fornisce feedback immediato sulla qualità del segnale.

Mantenere viva la connessione

Trasmettere dati SO2 a 100 Hz via BLE non è questione di leggere una characteristic dentro un ciclo. A quella frequenza il connection interval, l'MTU e la struttura dei pacchetti vanno negoziati con attenzione, altrimenti il telefono inizia a perdere campioni in un modo che nel segnale sembra rumore e non un problema di trasporto.

Il problema più difficile è cosa succede fuori dal laboratorio. Un assistente di ricerca blocca il telefono, va in un'altra stanza, torna. iOS sospende l'app, la connessione cade, e se l'app non è costruita per aspettarselo torna con un buco nella registrazione e nessuna indicazione che qualcosa sia andato storto. Lo abbiamo gestito con i background modes dichiarati per questo caso d'uso specifico, lo state restoration perché il sistema possa rilanciare l'app e restituirle la connessione, e una logica di riconnessione che fa backoff invece di ritentare in modo aggressivo e farsi limitare.

Per un dispositivo di ricerca questo pesa più del solito. Un buco in un dataset non è un bug che l'utente nota subito. È un bug che scopre settimane dopo, quando lo studio è già finito.

Due utenti, una sola app

Il team di ricerca aveva due utenti molto diversi. Un ricercatore esperto ha bisogno di accedere al segnale raw, di configurare tutto e di vedere quando la qualità del dato peggiora. Un assistente che porta avanti uno studio di routine deve attaccare il dispositivo, verificare che funzioni e premere record.

Costruire una sola interfaccia per entrambi avrebbe funzionato male per tutti e due. Abbiamo costruito due modalità con un data layer condiviso sotto: stessa pipeline di acquisizione, stesso logging, una quantità diversa di macchina esposta. La modalità Expert mostra i canali raw e la configurazione. La modalità Non-Expert offre un setup guidato e un singolo indicatore di qualità del segnale che dice se il posizionamento è abbastanza buono per iniziare.

È uno schema che torna in quasi ogni app per dispositivi medici su cui abbiamo lavorato. Chi usa il dispositivo e chi interpreta i dati raramente sono la stessa persona.

Prof. Maria Angela Franceschini
Hanno capito subito le nostre esigenze e consegnato un prodotto affidabile. L'app è bella e funziona come previsto.
Maria Angela FranceschiniProduct Lead presso MGH / Harvard Medical

Risultati

100 HzDati in tempo reale
Sleep modeConnessione persistente
Data processingQualità del segnale e logging
2 modalitàExpert e Non-Expert

Punti Chiave

  • Connessione Bluetooth Low Energy al wearable FlexNIRS
  • Expert mode: visualizzazione completa segnali e accesso dati raw
  • Non-Expert mode: setup guidato per assistenti di ricerca
  • Grafici ossigenazione cerebrale (SO2) in tempo reale a 100 Hz
  • Feedback qualità segnale e data logging

Categoria

HealthcareIoTRicerca Medica

Cliente

Harvard Medical School

Settore

Healthcare

Tecnologia

Flutter

Tech Stack

FlutteriOS & AndroidBluetooth Low EnergyGrafici Real-timeSignal Processing

Stato

In uso al Mass General

Chi ha guidato il progetto

Pierluigi Raffone

Pierluigi Raffone

15+ anni di esperienza

Engineer and entrepreneur with 15+ years in electronics, firmware, and IoT. Bridges hardware and software to create connected experiences.