I will develop imu sensor fusion kalman madgwick orientation estimation firmware
Embedded Firmware Engineer for Sensor Data Acquisition and Precision
About this Gig
Tired of noisy IMU data that drifts, jitters, or makes your robot, drone or wearable unusable?
I turn raw accelerometer and gyroscope readings into stable, usable orientation and motion data. I implement practical sensor fusion and signal filtering firmware that works on real hardware not just MATLAB simulations.
What you get:
Moving average, median and low-pass filters for clean signal smoothing and noise reduction
Kalman filter and Extended Kalman Filter (EKF) implementations
Madgwick and Mahony AHRS algorithms for fast, low-compute orientation estimation
Accelerometer + gyroscope (+ magnetometer when available) fusion
Proper IMU calibration, bias estimation and gravity compensation
Quaternion and Euler outputs that avoid gimbal lock
Real-time code optimized for STM32, ESP32, Arduino, nRF52 and similar MCUs
I focus on the details most sellers skip: vibration rejection, temperature-aware bias handling, fixed-point options for tight MCUs, clear tuning parameters, and before/after validation so you can actually trust the output.
Scope stays realistic advanced position estimation only when extra sensors and reference data support the required accuracy.
FAQ
What sensor fusion algorithms do you implement?
I deliver Kalman filter, Extended Kalman Filter (EKF), Madgwick filter, Mahony filter and complementary fusion for accurate IMU orientation estimation and noise reduction.
Which IMUs and platforms do you support?
Common 6-axis and 9-axis sensors (MPU6050, ICM-20948, BMI088, BNO series, LSM6, etc.) on STM32, ESP32, Arduino, nRF52, Teensy and similar MCUs. ROS-ready code available in Premium.
Do you provide calibration and bias estimation?
Yes. Static and dynamic IMU calibration, gyroscope/accelerometer bias estimation, scale-factor correction and gravity compensation are included in Standard and Premium packages.
What outputs will I receive?
Stable orientation as quaternions or Euler angles, filtered angular rates, linear acceleration (gravity removed), and clean accelerometer/gyroscope streams after signal filtering.
Can you optimize for real-time and low compute?
Absolutely. I tune filters for high sampling rates, low latency and limited MCU resources, including fixed-point options when floating-point is too heavy.
Is full position estimation included?
Only when the available sensors and reference data support the required accuracy. Pure IMU position drifts quickly — I am transparent about realistic limits and recommend the right approach for your project.
