Data Products
The repository writes several different outputs. The most important ones are:
Rover position log
Section titled “Rover position log”- location:
server/record/data/exp-<experiment_id>-positions.csv - written by:
server/zmq_orchestrator.py - one row per completed rover move
- main columns:
experiment_id,cycle_id,meas_id,position_status,captured_at_utc,position_t,x,y,z,error
RF measurement log
Section titled “RF measurement log”- location: per-host runtime output directories
- file pattern:
data_<HOSTNAME>_<experiment_id>.txt - written by:
client/run_reciprocity.pyandclient/run_uncalibrated.py - one JSON-line record per RF measurement on one host
- typical fields:
timestamp_utc,hostname,experiment_id,cycle_id,pilot_phase,pilot_amplitude,captured_samples
RF runtime error log
Section titled “RF runtime error log”- location: per-host runtime output directory as
error.log - JSON-line diagnostics for failed or suspect RF captures
RF orchestrator summary log
Section titled “RF orchestrator summary log”- location:
server/record/data/exp-<experiment_id>.yml - one summary entry per synchronized RF cycle
Processed RF xarray
Section titled “Processed RF xarray”- location:
results/csi_<experiment_id>.nc - written by:
processing/parsing/extract_csi_from_smb_v2.py - combines rover positions and CSI into one xarray/NetCDF dataset
- stores the complex RF channel between the rover transmitter and the active ceiling receiver entries selected by
hostname
For most readers of this docs site, this .nc file is the main entry point. The tutorial track assumes you already have this file and want to inspect or visualize its contents.
Processed acoustic xarray
Section titled “Processed acoustic xarray”- location:
results/acoustic_<experiment_id>.nc - written by:
processing/parsing/acoustic_parser.py - one file per experiment
- main coordinates:
experiment_id,cycle_id,microphone_label - main data variable:
valueswith shape(experiment_id, cycle_id, microphone_label, sample_index) - stores the raw sampled received chirp recorded at the microphones after the chirp was emitted by the omnidirectional speaker
This acoustic .nc is meant to be joined back to the RF dataset by the shared (experiment_id, cycle_id) pair. The RF file provides the rover pose; the acoustic file provides the microphone waveforms recorded at that same stop.
Useful notebook entry points: