ArduPilot / ArduPilot/MissionPlanner
Incorrect FFT frequencies
- Dominant language
- C#
- Stars
- 2.4k
- Forks
- 2.9k
- Avg merge
- 19h 16m
- Merged PRs (30d)
- 4
Description
The FFT option in MissionPlanner is producing incorrect frequencies from the ISBD and ISBH data. I've put a log here that has exact frequency noise in it:
http://uav.tridgell.net/FFT/fft-x100-y150-z200.bin
in that log the X axis (both accel and gyro) has 100Hz vibration, the Y axis has 150Hz vibration and the Z axis has 200Hz vibration. With MAVExplorer I get this:

In MissionPlanner I get quite different frequencies.
See this PR for the way to generate the exact vibration freq logs:
https://github.com/ArduPilot/ardupilot/pull/10189
Note that SITL quite deliberately sets the sample rates of the two IMUs differently, to better emulate a Pixhawk1. The rates are:
- accel0: 1000Hz
- accel1: 800Hz
- gyro0: 1000Hz
- gyro1: 760Hz
These rates are reflected in the smp_rate numbers in ISBH messages.
I've seen the same affect of bad frequencies in FFT in MP on real aircraft logs as well.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with MissionPlanner's FFT option and trace how ISBD and ISBH log data are converted into frequencies. Compare the result for fft-x100-y150-z200.bin with MAVExplorer, accounting for the differing smp_rate values listed in the issue; done means the X, Y, and Z peaks match 100, 150, and 200 Hz for both accelerometer and gyro data.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- data, desktop
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100