Skip to content

AI Flight Health Score

The flight health score is the central output of LogHat's analysis engine. It provides a single, normalized measure of your drone's flight performance and mechanical condition, derived from four independent telemetry dimensions: EKF (Extended Kalman Filter) health, vibration levels, GPS signal quality, and battery health.

The score is calculated automatically when your log file is processed. No configuration or parameter selection is required.


How the Score is Calculated

The health score begins at 100 and deductions are applied based on detected anomalies within each health dimension. The final score determines the status badge assigned to the flight:

| Score Range | Status Badge | Meaning | |---|---|---| | 80–100 | Passed | All parameters within normal range | | 50–79 | Warning | One or more parameters require attention | | 0–49 | Grounded | Critical issues detected; do not fly until reviewed |

Score Deductions

| Condition | Deduction | |---|---| | Critical vibration (any axis exceeding threshold) | −30 points | | Elevated vibration (above warning threshold) | −15 points | | EKF health failure detected | −20 points | | GPS HDOP above 2.0 during flight | −20 points | | Each critical system alert (failsafe, ERR message) | −5 points each, up to −30 |

Deductions are applied independently. Multiple issues compound: a flight with both elevated vibration and a GPS degradation event can result in a Warning or Grounded status even if each issue alone would not.


EKF Health

What is the EKF?

The Extended Kalman Filter (EKF) is the core navigation algorithm running inside your ArduPilot flight controller. It continuously fuses data from multiple sensors — the accelerometer, gyroscope, barometer, magnetometer, and GPS — to produce an accurate, real-time estimate of your drone's position, velocity, and attitude.

The EKF is what allows your drone to fly stably without constant manual correction. If the EKF encounters conflicting sensor data, it can trigger a navigation failure, causing the flight controller to lose confidence in its position estimate. This is one of the most common precursors to flyaway events and unexpected behavior.

What LogHat Analyzes

LogHat reads the EKF status messages recorded in your .bin log and checks for:

  • EKF lane switches — Indicates the flight controller switched to a backup EKF computation lane because the primary lane failed a consistency check.
  • Velocity variance spikes — Large, sudden changes in the EKF's velocity estimate, which can indicate sensor interference or GPS multipath.
  • Magnetic interference (NKF4.SM) — Compass heading inconsistency that forces the EKF to rely more heavily on GPS heading, increasing position uncertainty.

A clean flight will show consistent EKF output with no lane switches and low variance across all axes. An EKF failure during a flight is treated as a high-priority alert in the health score.

What to Do When EKF Issues Are Detected

EKF problems generally stem from one of three sources:

  1. Compass interference — Metal structures, high-current power wiring, or motors placed close to the GPS/compass module.
  2. GPS multipath — Reflections of the GPS signal from nearby surfaces causing position drift.
  3. Vibration-induced sensor noise — Excessive mechanical vibration degrading the quality of accelerometer data fed into the EKF.

If your report shows EKF-related deductions, review the vibration analysis section first, then inspect your compass placement and calibration.


Vibration Analysis

Why Vibration Matters

Vibration is one of the leading causes of degraded flight performance and component wear in drones. Mechanical vibration — generated primarily by unbalanced propellers, worn bearings, or loose motor mounts — is transmitted from the airframe into the flight controller and its inertial measurement units (IMUs).

High vibration levels corrupt the accelerometer readings that the EKF relies on, causing attitude estimation errors, altitude oscillations, and in severe cases, complete navigation failure. Vibration also causes premature wear on motors, ESCs, and camera systems.

What LogHat Measures

LogHat extracts vibration data from your log's VibeX, VibeY, and VibeZ channels, which represent accelerometer vibration amplitude on each axis in meters per second squared. It also counts IMU clip events — moments where vibration exceeded the measurement range of the accelerometer hardware.

The analysis produces:

  • Per-axis maximum and mean values for X, Y, and Z
  • Vibration severity classification: Normal, Warning, or Critical
  • Clip count across the flight duration

Interpreting Vibration Levels

| Vibration Level (m/s²) | Status | Typical Cause | |---|---|---| | Below 15 m/s² | Normal | Well-balanced propellers, clean airframe | | 15–30 m/s² | Warning | Minor imbalance, inspect propellers and motor mounts | | Above 30 m/s² | Critical | Significant imbalance or structural issue — do not fly |

Any IMU clip events are treated as a serious indicator of extreme vibration and will flag the flight as Warning or Grounded regardless of mean vibration levels.

What to Do When Vibration Issues Are Detected

  • Inspect and balance all propellers. Remove nicks, cracks, or deformation.
  • Check motor bearings for play or roughness during hand-spin tests.
  • Verify motor mounting hardware is tight and free of cracks.
  • Ensure the flight controller is mounted with vibration-damping isolators.
  • Compare vibration levels across the X, Y, and Z axes — asymmetric readings on one axis can help isolate which motor is the source.

GPS Signal Quality

What GPS Quality Indicates

GPS signal quality directly affects the accuracy of your drone's position estimate and its ability to hold position, follow waypoints, and return to home safely. Poor GPS quality during flight can lead to position drift, inaccurate altitude readings, and mission failures.

What LogHat Analyzes

LogHat reads GPS data from your log and evaluates:

  • Horizontal Dilution of Precision (HDOP) — A dimensionless number representing position accuracy relative to the geometric arrangement of visible satellites. Lower is better. HDOP below 1.5 is excellent; above 2.0 triggers a deduction.
  • Satellite count throughout the flight — A sudden drop in visible satellites mid-flight can indicate GPS antenna obstruction, interference, or hardware issues.
  • GPS delta spikes — Rapid, discontinuous changes in the GPS position fix that are not physically plausible given the aircraft's speed. These indicate GPS multipath or signal quality issues.
  • Speed and altitude consistency — Cross-checks GPS-derived speed against barometric altitude changes for consistency.

Interpreting GPS Health

| HDOP | Status | Meaning | |---|---|---| | Below 1.5 | Excellent | High-accuracy positioning | | 1.5–2.0 | Acceptable | Normal for many environments | | Above 2.0 | Degraded | Position accuracy reduced; health score deduction applied |

Flying in urban environments with tall structures or under dense tree cover will predictably result in higher HDOP values. If GPS health is consistently flagged as degraded, review your flight area, GPS antenna placement, and ensure the GPS module has clear sky view.


Battery Health Analysis

What Battery Health Reveals

Battery performance is a direct indicator of your drone's safety margin. A battery that sags excessively under load, has a degraded total capacity, or drops voltage rapidly at the end of flight represents a risk of in-flight power interruption.

What LogHat Analyzes

LogHat extracts battery telemetry from the BAT messages in your log and analyzes:

  • Voltage profile over the entire flight — Minimum, maximum, and average voltage
  • Voltage sag under load — The difference between the battery's resting voltage and the voltage measured at peak current draw. High sag indicates internal resistance (aging or damaged cells).
  • Current draw profile — Average and peak current, with hover throttle estimation
  • Consumed capacity (mAh) — Total energy consumed during the flight
  • Estimated endurance — Remaining flight time projection based on consumption rate
  • Low-voltage events — Any drops below safe operating thresholds

Interpreting Battery Health

A healthy battery on a typical multirotor will show:

  • Stable voltage under normal throttle with moderate sag under aggressive maneuvers
  • A gradual, predictable voltage decline over the flight
  • No sudden drops or voltage spikes

Batteries showing high sag (greater than 0.5V per cell under normal load) or reaching critically low voltage levels before the expected end of the mission should be retired or load-tested before further use.

Note on cell count estimation: LogHat estimates the battery cell count from the resting voltage at the start of the log. This estimation assumes a standard LiPo chemistry and may not be accurate for LiHV, Li-Ion, or other non-standard chemistries.


Reading the Health Report Summary

Each health dimension in the report includes:

  1. A numeric sub-score for that dimension
  2. Key findings — specific measurements and their status
  3. Recommendations — actionable steps if issues are detected

The sub-scores combine into the overall health score shown at the top of the analysis view. The Vector AI chatbot can provide additional detail on any specific health indicator — for example, you can ask "What caused the vibration warning?" and receive a response grounded in your specific log data.


Next: 3D Flight Replay — review your full flight path in an interactive 3D environment.


Ready to analyze your first log? See pricing →