
Understanding VIBE Messages in ArduPilot Logs and Fixing Vibration Issues
Key Takeaway
VIBE messages in ArduPilot record RMS accelerometer vibration in m/s² at 1 Hz across three axes plus clipping counters. Healthy hover is below 15 m/s² VibeX/Y/Z; above 30 m/s² the EKF starts rejecting IMU updates; above 60 m/s² expect EKF failsafe. Most causes are prop balance, motor bearings, or frame flex — once mechanical is clean, the harmonic notch handles residual high-frequency noise.
TL;DR: The VIBE message in ArduPilot logs records accelerometer vibration in m/s² and clipping events at 1 Hz. Keep VibeX/VibeY/VibeZ below 15 m/s² in normal flight and investigate any sustained clipping during hover. Above 30 m/s² the EKF starts rejecting IMU updates; above 60 m/s² you can expect altitude jumps, toilet-bowling in Loiter, and ultimately EKF failsafe. Most vibration problems trace to prop balance, motor bearings, or frame flex — once you find it, the harmonic notch filter is how you stop noise above the gyro bandwidth from leaking into the rate loop.
Why VIBE matters for UAV reliability
The IMU is the autopilot’s ground truth for attitude. Excessive vibration corrupts the accelerometer signal, the EKF can no longer integrate it cleanly, and the position estimate drifts. The downstream symptoms are familiar: altitude jumps in AltHold, position drift in Loiter, the autopilot rejecting GPS updates because its own velocity estimate has gone bad. Vibration is upstream of most EKF complaints; fix it and a long list of other problems disappears.
The VIBE fields
VIBE TimeUS IMU VibeX VibeY VibeZ Clip0 Clip1 Clip2
VibeX,VibeY,VibeZ— root-mean-square accelerometer vibration over the past 1-second window, in m/s², per body axis. Average magnitude, not instantaneous peak.Clip0,Clip1,Clip2— how many times each accelerometer reached its maximum measurement range (typically ±16 g) in the past second. When an IMU clips, it cannot measure acceleration beyond its hardware limit — the sensor is saturated.IMU— instance number (0, 1, or 2). Most flight controllers run two or three accelerometers; one can clip while others stay clean.
Brief clipping during aggressive manoeuvres is less concerning than sustained clipping during steady hover. If Clip0 registers double-digit counts during hover, you have a severe mechanical problem.
The four vibration zones
- Excellent:
VibeX/Y/Z < 15 m/s²in all flight phases with zero or near-zero clipping. EKF performance is at its design point. - Acceptable: up to 30 m/s² with occasional clipping during aggressive manoeuvres. The autopilot tolerates this, but innovation spikes appear in
XKF3. - Concerning: 30–60 m/s². EKF starts rejecting IMU updates, position estimate degrades, expect altitude wobble in AltHold.
- Severe: above 60 m/s². EKF failsafe is likely. Do not fly until the cause is fixed.
Reading VIBE in Mission Planner
Open the .bin and plot VIBE.VibeX, VibeY, VibeZ on one chart. Mission Planner draws horizontal reference lines at 15 m/s² and 30 m/s² on the vibration graph. For clip events, switch to the Message Log view and filter for VIBE; sort by Clip0/Clip1/Clip2 descending to find the worst clipping windows.
Confirming it in MAVExplorer
MAV> graph VIBE.VibeX VIBE.VibeY VIBE.VibeZ
MAV> graph VIBE.Clip0 VIBE.Clip1 VIBE.Clip2
MAV> graph MODE.Mode
Overlay flight mode against vibration to see whether vibration spikes correlate with specific manoeuvres. A spike during aggressive yaw might be normal; the same spike during steady hover is a mechanical problem.
The five common vibration sources
- Unbalanced propellers. The most common cause and the cheapest to fix. A basic prop balancer costs less than a single replacement motor. Replace any chipped or delaminated prop — cosmetic damage is mechanical imbalance.
- Loose motor mounts. Motors that have come slightly loose vibrate at their rotational frequency directly into the frame. Check torque on every motor screw after a hard landing.
- Worn bearings. Motor bearings degrade with use; a motor that’s noticeably noisy on the bench is contributing more vibration than a quiet one.
- Frame resonance. A flexible arm has a natural frequency that the motor can excite. Stiffening the arm (extra wrap, internal carbon) usually fixes this; an FFT plot of the gyro data shows the resonant frequency clearly.
- Loose flight controller mounting. The FC needs to be soft-mounted on most builds to attenuate high-frequency motor noise from the frame. Replace worn FC dampers; foam degrades.
From VIBE to the harmonic notch
Once mechanical sources are clean, the remaining noise above the gyro bandwidth gets filtered with the harmonic notch (INS_HNTCH_*). The notch can’t fix vibration — only mechanical work can — but it keeps motor frequencies from leaking into the rate loop after vibration is brought under control. Our roll/pitch oscillations post covers the FFT-based notch setup; the notch is the right tool once VibeZ is below 15 m/s² and you still see high-frequency rate-loop noise.
Trend across flights as a maintenance signal
For a fleet operator, VIBE trend is one of the most useful preventive-maintenance signals. A drone whose VibeZ baseline drifts upward across flights at the same payload is signalling developing mechanical wear before it becomes a flight failure. See our preventive maintenance workflow post for how to turn VIBE drift into a maintenance ticket.
When VIBE isn’t the problem you think it is
- Single IMU instance clipping while others are clean. One IMU is failing or poorly mounted — the issue is local to that sensor, not airframe-wide. Set
INS_USEto disable the affected instance pending hardware replacement. - VIBE clean but altitude unstable. The cause is upstream (baro glitch, EKF disagreement), not vibration. See our BARO glitch post.
- Spikes during landing only. Ground contact and prop strikes on touchdown produce real vibration that resolves the moment you disarm. Not a flight-side problem unless the airframe is damaged.
When LogHat helps — and when it doesn’t
LogHat plots VIBE with the 15/30/60 m/s² threshold lines drawn, flags clip events, and trends the baseline across flights of the same airframe so a degrading mechanical state is visible before it triggers an in-flight failsafe. What we can’t do is balance your props for you — that’s a bench-top task with a prop balancer. The log narrows the search to which motor or arm is the source; the physical fix is yours.
About the author
LogHat Engineering Team
The LogHat engineering team — drone-systems engineers who build and operate the LogHat flight analytics platform. Posts in this byline are written and reviewed by team members working on the parsers, analysis engine, and Vector AI that the post describes.
Tagged
Try LogHat
Analyze your flight logs in seconds
Upload a .bin, .tlog, .log, or .ulg file. Get AI crash analysis, 3D replay, and forensic PDF reports instantly.
Try LogHat Free