Servers by jDrones

Poor compass calibration

Hi all,

I have an issue with activating and using the external compass on my ardupilot build.
The board I’m using does have an internal compass, which is not as good and therefore it is suggested to disable the internal compass and use an external compass.

Following hardware:
Wing FC 10DOF
(https://www.banggood.com/Wing-FC-10-DOF-Flight-Controller-INAV-OSD-Accelerometer-Barometer-Gyro-Compass-For-RC-Airplane-Drone-p-1318626.html?rmmds=search&cur_warehouse=CN)
MCU:168MHz STM32F405
IMU:MPU-9250 accelerometer/gyro/Compass (SPI)
Baro:BMP280 (I2C)
OSD:INAV OSD w/ AT7456E chip
Blackbox:NO
VCP & 6x UARTs
2x Motors,4x Servos outputs
Built in inverter for RC input (UART3-RX)
TBS Receiver:UART5-RX
Beeper:Yes
Default firmware : inav_1.9.0_FF_F35_LIGHTNING.HEX
Reference software : inav-configurator

External compass:
Beitian BN-880 GPS ()

The GPS is conencted to Serial2
Serial2_Function = Mavlink
Works perfect, gets 3D lock in matter of 30 seconds. BEAUTIFUL!

TO make the compass work, I had to resolder the tiny (0603 or 0402) SMD 0 Ohm resistor to the I2C pads,
as per instruction here:
https://ardupilot.org/plane/docs/common-furiousfpv-f35.html
-> Done that, no issues checked continuity

The compass is connected to I2C via SDA/SCL
Following a thread I found relating to this issues:


I changed the following paramters:
COMPASS_ENABLE = ENABLED
COMPASS_EXTERN2 = INTERNAL / tried EXTERNAL
COMPASS_EXTERN3 = INTERNAL / tried EXTERNAL
COMPASS_EXTERNAL = EXTERNAL / tried INTERNAL

COMPASS_OPTIONS		= 0
COMPASS_USE			= ENABLED
COMPASS_USE2		= ENABLED / tried DISABLE
COMPASS_USE3		= ENABLED / tried DISABLE
COMPASS_TYPEMASK	= 56318
	-> Disabled anything but HMC5883 which should prefer external compass

When performing the compass calibration I see the progress bar move along when I move the external compass. So I know it is connected properly and getting data. However, the issue is that the result is always POOR. Never more than 31/90 points. I have the ability to move the external compass, as nothing is mounted inside the airframe yet and the wires are long enough, to keep the FC steady and move only the compass.
Can this be the reason for the poor results, as the software is expecting to also see data from the accelerometer?

Any idea what I'm missing, or else can try to get better compass calibration results?
Servers by jDrones