High-performance C++ library for decoding autonomous vehicle telemetry data
Autonomous Telemetry Core is the foundational decoding engine designed for processing raw binary telemetry streams from autonomous vehicle systems. Built with modern C++17, it provides a robust, modular, and extensible architecture for integrating into larger systems like ROS2 nodes.
This library handles the critical task of parsing incoming sensor data packets, enabling real-time analytics and decision-making pipelines.
| Feature | Description |
|---|---|
| 🔧 Modern C++17 | Leverages modern language features for performance and safety |
| 📦 CMake Integration | Cross-platform build system ready to go |
| 🧱 Modular Design | Clean separation of headers and implementation |
| 🔌 Extensible | Easy to integrate with ROS2 or other middleware |
| ⚡ High Performance | Optimized for real-time data processing |
- C++ Compiler supporting C++17 (GCC 7+, Clang 5+, or MSVC 2017+)
- CMake 3.10 or higher
# Clone the repository
git clone https://github.com/Teerth1/autonomous-telemetry-core.git
cd autonomous-telemetry-core
# Create build directory
mkdir build && cd build
# Configure and build
cmake ..
cmake --build .After building, run the telemetry decoder demo:
# Windows
.\Debug\telemetry_decoder.exe
# Linux/macOS
./telemetry_decoderExpected Output:
Starting Telemetry Runner...
[DecoderCore] Processing 4 bytes.
Decoding successful.
autonomous-telemetry-core/
├── 📂 src/
│ ├── main.cpp # Demo application entry point
│ └── decoder_core.cpp # Core decoder implementation
├── 📂 include/
│ └── decoder_core.hpp # Public header definitions
├── 📂 build/ # Build output (generated)
├── 📄 CMakeLists.txt # Build configuration
├── 📄 LICENSE # MIT License
└── 📄 README.md # This file
#include <vector>
#include "decoder_core.hpp"
int main() {
telemetry::DecoderCore decoder;
// Your raw telemetry data
std::vector<uint8_t> raw_data = {0x01, 0x02, 0x03, 0x04};
if (decoder.decode(raw_data)) {
// Process decoded telemetry
}
return 0;
}- Implement full telemetry packet parsing
- Add support for multiple sensor protocols
- ROS2 node integration
- Unit test coverage
- Performance benchmarking
Contributions are welcome! Feel free to:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Made with ❤️ by Teerth Patel