This repository contains all the materials, scripts, and documentation for the GNSS lab experiment conducted as part of the Wireless and Device-to-Device Communication Security course.
The GNSS lab focuses on processing raw GNSS measurements collected from Android devices using MATLAB. The lab includes tasks such as pseudorange analysis, weighted least squares (WLS) positioning, spoofing experiments, and ADR (Accumulated Delta Range) analysis. The repository is structured to support both demo datasets and custom Android logs.
LabGNSS/
├── Lab-Material/ # MATLAB scripts, datasets, and configurations
├── Report/ # LaTeX source files for the lab report
├── resources/ # Additional resources (e.g., links, PDFs, images)
└── README.md # This file
Note
The detailed lab report, including all experimental results and analysis, can be found here.
The lab aims to:
- Process raw GNSS measurements from Android devices.
- Analyze pseudoranges, C/N₀, and WLS positioning.
- Conduct spoofing experiments and evaluate detection strategies.
- Generate a detailed lab report documenting the results and analysis.
- MATLAB R2020a or later (no additional toolboxes required).
- Internet access for downloading NASA CCDIS ephemeris files (optional).
- GNSSLogger App on Android for collecting raw GNSS measurements.
- Initialize the MATLAB environment:
- Run the
InitProject.m
script to set up paths and create the results directory.
- Run the
- Process datasets:
- Use
RunDatasetAnalysis.m
to process all tests for Samsung A51 and Xiaomi 11T Pro datasets.
- Use
- Run a demo:
- Use
RunDemo.m
to process a single dataset with optional spoofing and ADR analysis.
- Use
- Perform spoofing tests:
- Use
SpoofingTest.m
to iterate over all spoofing configurations and analyze the results.
- Use
- Generate the lab report:
- Compile the LaTeX source files in the
Report/
directory to produce the final report.
- Compile the LaTeX source files in the
For detailed instructions, refer to the README.md
files in the subdirectories:
Name | GitHub | ||
---|---|---|---|
Andrea Botticella | |||
Elia Innocenti | |||
Renato Mignone | |||
Simone Romano |