Altitude accuracy troubleshooting

Hello everyone,

I am working on a coaxial octorotor UAV and experiencing issues with the accuracy of the height estimation.

Specs of the drone:

  • Coaxial octorotor

  • 5kg weight

  • NS16*5.4 Props

  • Tmotor MN4006 380kV motor

  • 6S lipo battery

  • Airvolute DCS 1 companion computer

  • Cube Orange+ FC

Specifically, the XKF3.IPD value jumps significantly during braking (up to 5 meters at its worst). This triggers EKF lane switches and causes significant drops in altitude.

Initially, I suspected this was caused by internal pressure buildup from cooling air inlets in the chassis lacking sufficient exhaust outlets. However, after switching to the barometers built into our external GPS modules, the situation did not improve in any meaningful way.

My next guess is that vibrations are the root cause. While vibration levels generally remain below 30 m/s² during standard flight, they spike significantly during maneuvers. The drone operates at 2000–4200 RPM, translating to a frequency range of 33–70 Hz. This specific range is known to be troublesome for the internal vibration damping on the Cube Orange+ IMUs.

I have read that there are alternative options for vibration-damping foam, which also appear in the promotional images for the Cube Red. Is it possible to source a foam that is better matched to our specific frequency band of vibrations?

Mechanically, the drone is quite stiff and potentially overbuilt. Redesigning the frame to alter the resonance is not an option for me, as it would require full recertification.

Linked is the log from a flight showing the IPD spike and the corresponding EKF lane switch.

Thanks and regards

The basics:
I would set these first up:

ARMING_CHECK,1
ATC_THR_MIX_MAX,0.5
PSC_VELXY_D,0.25

These are the correct values for a 6S Lipo:

BATT_FS_CRT_ACT,1
BATT_FS_LOW_ACT,2
BATT_ARM_VOLT,22.10
BATT_CRT_VOLT,21.00
BATT_LOW_VOLT,21.60
MOT_BAT_VOLT_MAX,25.20
MOT_BAT_VOLT_MIN,19.80

The harmonic notch filters look excessive and likely contributing to some instability. Have you got a log with the pre- and post-filter data? Or do a new short test flight with these set:

INS_LOG_BAT_MASK,1
INS_LOG_BAT_OPT,4

Until we know more set INS_HNTCH_HMNCS,1 and INS_HNTC2_ENABLE,0

Altitude:
In this log the altitude actually looks quite steady and barometers all match each other quite closely. I dont think this is really a problem with the barometers.
The only EKF change in this log is during (precision) landing.

Apart from the above changes, and a log with noise data to fix the filters, I would say the issues will probably be fixed by better tuning. The better tuning will come with a realistic/effective notch filter configuration.
For test flights just do some pitch, roll, yaw and altitude changes manually via RC control. Use AltHold and Loiter modes.

There’s some other things we can do for altitude but I’m reluctant to try until these other things are sorted out and we have a known-good state.
Hopes that makes some sense.

EDIT: if you are worried about location data you can PM me .bin logs and I dont share them with anyone