Home / Telemetry System

Telemetry System

February 2026 Systems / C++ C++17 · Multithreading · CI/CD

Overview

A telemetry system simulator built with modern C++17. The system collects simulated real-time data from three sensor types (Temperature, Altitude, Velocity) in a background thread, stores packets in a thread-safe circular buffer, and exposes everything through an interactive CLI.

The project includes a full CI/CD pipeline via GitHub Actions that runs unit tests and Valgrind thread-safety checks on every push and pull request.

Key Features

Tech Stack

C++17 std::thread std::mutex CMake Make GitHub Actions Valgrind

Challenges & Learnings

Ensuring zero data races while keeping the collection thread and the CLI thread independent required careful scoping of every lock acquisition. Validating this with Valgrind helgrind in CI caught several subtle races early. Designing a clean polymorphic sensor hierarchy also reinforced RAII patterns and efficient use of virtual dispatch in modern C++.