8 min read·
Sensors, Signals & Noise: Filtering Telemetry during my IEEE Robotics Internship
Debugging hardware sensor jitter during my robotics internship using C++ complementary filters to combine accelerometer and gyroscope data.
RoboticsC++SensorsArduinoEmbedded Systems
# Context & IEEE Internship Background
During my robotics internship at **IEEE Sensors Council × Luminar Technolab**, I worked on telemetry signal extraction for mobile autonomous robots.
## The Technical Problem
Raw MPU-6050 IMU sensors exhibit high-frequency vibration noise from motor drives and low-frequency gyroscopic drift over extended operation runs.
## Sensor Complementary Filter Implementation
```cpp
float ComplementaryFilter::update(float accelAngle, float gyroRate, float dt) {
// High-pass filter for gyro + Low-pass filter for accel
angle = alpha * (angle + gyroRate * dt) + (1.0f - alpha) * accelAngle;
return angle;
}
```
### Signal Filtering Results
- **Raw Accelerometer Jitter**: ±14.2 degrees spike under chassis motor vibration.
- **Filtered Complementary Angle**: ±0.8 degrees smooth tilt output.
> **Key Lesson**: Filtering noise at the sensor intake layer prevents exponential error accumulation in downstream navigation algorithms.
← Previous ArticleRunning LLMs Locally: Lessons in Quantization and Ollama OptimizationNext Article →Multi-Tenant Isolation in PostgreSQL: Lessons from Building ETLab+
Explore Related Engineering Context
Recommended Projects, Articles & Credentials
Related Projects
Related Journal Entries
Setting Up a Fully Local LLM Stack
No cloud APIs, no subscriptions, and zero telemetry leaving my laptop. Benchmarking Ollama quantization on CPU hardware.
Database Schema Architecture and Row-Level Security
Why flat schemas fail in multi-tenant institution software, and how PostgreSQL RLS eliminated authorization vulnerabilities.