Registrazione su SD

Il ricevitore MS2-Pro registra i dati GNSS su SD card (FAT32) in modo automatico o manuale, con rotazione file configurabile.

Tipico utilizzo:

  • Logging post-processing — registra raw NMEA/UBX/RTCM per analisi off-line con RTKLib, U-Blox U-Center, ecc.
  • Backup posizione — fallback se la connessione di rete (NTRIP/MQTT) cade
  • Dati per certificazioni / report — output verificabili e timestamp-ati

Specifiche

  • File system: FAT32 (formattazione automatica disponibile da menu)
  • Interfaccia: SPI (più affidabile di SDIO su questo hardware)
  • Hot-plug: supportato (inserzione/rimozione a caldo gestita dal firmware)
  • Naming file:
    • Prima della sincronizzazione RTC: ms2_NNNN.txt (counter incrementale)
    • Dopo sync RTC da NMEA RMC: ms2_YYMMDD_HHMMSS.txt
  • Formato dati: dipende dalle configurazioni messaggi (vedi [h][4] Messages)
  • Buffer interno: 1 KB write-buffer con flush automatico

Comandi

L’asterisco * indica la modalità auto-start attualmente selezionata.

Rotazione file

Due opzioni configurabili da [o]:

  • Oraria (default): un file per ora. Naming ms2_YYMMDD_HH0000.txt. Permette di analizzare singoli intervalli di tempo senza dover splitter file enormi.
  • Unico per sessione: un solo file per tutta la sessione di logging, dall’inizio allo stop. Utile per registrazioni brevi (es. survey-in singolo) dove non vuoi più file.

Il setting persiste in NVS e si applica al prossimo start di logging.

Hot-plug

Il firmware rileva automaticamente inserzione/rimozione della SD card:

  • Polling automatico ogni 2 secondi (backoff esponenziale fino a 10 s se SD assente)
  • All’inserzione: mount automatico + selftest (write/read/unlink di un file di prova)
  • Alla rimozione: unmount automatico, logging in pausa
  • Re-inserzione: il logging non riparte automaticamente — premere [s][1] Start o riavviare se in Auto boot

Tasto [r] Re-monta ora accelera il polling forzando un retry immediato (utile se hai appena inserito la card e non vuoi aspettare i prossimi 2-10 secondi).

Format SD

[s][f] lancia una procedura di format completa:

*** ATTENZIONE: questo CANCELLERA' tutti i dati sulla SD ***
Digita 'Y' per confermare, qualunque altro per annullare:
>

Digita Y (o y) per confermare. Il format dura 10–30 secondi a seconda della dimensione della SD. Al termine, la card è rimontata automaticamente e pronta all’uso.

Avvertimento

Format cancella tutto irrecuperabilmente. Salva i file di logging prima di lanciarlo.

Per accedere ai file di logging dalla SD usa un lettore microSD esterno (PC, telefono con adattatore OTG).

Modalità auto-start

Tre modalità di avvio automatico al boot:

Manual (default in fabbrica)
Il logging si avvia solo premendo [1] Start logging nel menu. Utile per registrazioni controllate manualmente.
Auto boot
Il logging si avvia automaticamente ad ogni accensione. Utile per stazioni headless dove non hai accesso al menu (es. base GNSS sul tetto).
Auto base/caster
Il logging si avvia automaticamente solo quando il modulo è in modalità Base (tmode=1 SVIN o tmode=2 Fixed). In Rover il logging resta off. Utile per base autonome che logano corrections RTCM emesse, senza loggare i dati del rover.

Limiti

  • Dimensione massima SD card: 32 GB (FAT32 standard)
  • Dimensione massima file singolo: 4 GB (limite FAT32)
  • Velocità write: limitata da SPI ~4 MHz nativo → ~150 KB/s sostenuto

Per logging a frequenze GNSS molto alte (5-10 Hz con tutti i messaggi UBX) considera SD card più veloci (classe 10 o UHS-I), anche se l’interfaccia SPI è il vero collo di bottiglia.

Heap watchdog

In condizioni di heap basso (< 5 KB libero), il firmware sospende automaticamente il logging SD per liberare risorse a favore di servizi più critici (WiFi, MQTT, NTRIP). Riprende quando l’heap torna sopra 10 KB.

Lo stato del logging in caso di pause automatiche è visibile nel menu principale come SD Card (REC paused, low heap).

Troubleshooting

Card: Assente nel menu, ma SD inserita
  • Verifica che la card sia inserita bene (sentirai un click).
  • Premi [r] Re-monta ora per forzare il check.
  • Se ancora assente: la SD potrebbe essere danneggiata o non compatibile (>32 GB, formato exFAT/NTFS). Riformattare in FAT32 con PC.
Log: Inactive nonostante mode Auto boot
  • Auto boot richiede una SD montata al boot. Inserisci la card prima dell’accensione.
  • Verifica che il modulo non sia in low-battery (logging sospeso per safety).
File registrati sono vuoti / 0 byte
  • Verifica che almeno un messaggio NMEA/UBX/RTCM sia abilitato in [h][4] Messages.
  • Verifica che il modulo GNSS abbia almeno fix 2D (Quality: nel menu principale).
SD detected ma «selftest fail»
  • SD danneggiata, sostituiscila o riformatta in FAT32.
Tempo registrazione previsto
  • 16 GB / ~150 KB/s = ~30 ore di logging continuo (con tutti i messaggi attivi)
  • Con solo NMEA standard (GGA/RMC/GSA a 1 Hz): ~30 GB/anno