SB000004 Compass scale factor adjustment for Here2

SB04 Here2 compass scale

A new parameter has been added to Ardupilot 4,x and later which will allow a significant improvement on the behaviour of the Here2 magnetometer.
So for running a Here2, please recalibrate your compass and check that the parameter COMPASS_SCALE is approximately 1.17 to get the best results on our hardware. This is for CAN and I2C versions of the Here2
for 3.6.12 and later versions of 3.6, this parameter will need to be set manually



Thanks for the heads-up. Just some quick questions to understand the impact:

  • This affects all Here2 units?
  • What adverse effects might be caused by not applying this scale factor? (Or what beneficial effects are had by applying it?)


Better innovation on the EKFs with it set to 1.17

Just asking how this got trough your HERE2 design validation / quality checks?
What ProfiCNC and associated companies will do differently in future to avoid this?

This fix should have been made on ArduCopter at latest on the launch of HERE2.

The same way any software bug gets through, unless it affects the outcome in a predictable manner, how do you propose to find it?

This is why we added a bootloader, because issues happen.

This was only discovered due to new code being added to ardupilot that now relied on this number being a specific value.

The new code improves performance. And as such a parameter has been added to put in the correct scale factor.

3.6.12 is out now, so feel free to upgrade and use the new feature.

1 Like

I have updated my quadplane to 4.0.2 and I have recalibrated the compass. But the COMPASS_SCALE parameter remains zero, it has not automatically changed to 1.17. Then I changed it manually. Is this correct or should it have changed automatically?

What compass?

The HERE2 compass, primary compass

Ensure you have a gps lock and recalibrate


Just to tell my experience… I always had problems with the Here2 Compass because always was very “delicate” to the magnetic fields. At the moment I wrote 1.17 and press Write on the parameters, the Ready to fly sound from the pix I got.

So seems to be a good change!


it does not change automatically, you have to change the scale factor for compass 3 to 1.17 and write parameters.

On a I2C Here2 it will show up as GPS1

It will set all automatically if you get a gps lock and do the compass calibration on 4.x latest release code

you have to calibrate with gps lock, then it will automatically collect a value.

Hello All,

It seems i have found my self with a couple of Here2 that for the last couple of days started showing Orange/Red on the EKF while flying. I know that my Z vibes (on the particular vehicle)changed and started going on the red zone as also my clip2 was scaling. Could this be the culprit of my EKF change? I just set compass scale to 1.17 and i have not tested yet to see if its all well or it will fly like crazy, but i did notice that even though i had this new setting, now my compass would only calibrate on relaxed fitness, while the previous time it would calibrate easily on strict.
Your comments would be appreciated.

Calibrate and see…

If it fails to calibrate, start a new thread with as much information about your build as possible


I have the Here+. Do I have to do the same thing?

This is what I got on my Herelink after doing a compass calibration with GPS lock and connected to GPS 1 port. I am running Copter 4.0.3. See the compass_scale is 0.

Thank you.

What should the compass_scale be on a Here+?


Thank you.

Here + 1
Here +V2 old firmware 1.17
Here+ V2 latest firmware 1

For best results, calibrate with a gps lock and it will automatically set this for you on copter 4.04

1 Like

Ok, great. Thank you, Philip.