Here2 Compass Calibration & Safety Switch Issue

Hi all,

I updated my Here2 today switching from I2c to CAN.

I now have 2 issues to solve, both pre arm fails, compass calibration, and safety switch.

Compass calibration: I am running the black cube and when calibrating in Mission Planner all three compasses are found and I can calibrate them. After I reboot and connect via QGroundControl on the HereLink I get a prearm failer stating compass calibration failed. If I go back to Mission Planner and uncheck the “Use this compass” box for compass #3 (the Here2) the prearm compass calibration fail goes away. I have also tried calibrating via QGroundControl and though it completes the calibration, I still get the prearm failure. I would prefer to use the Here2 compass…what am I doing wrong?

Safety Switch: I am aware that the safety switch on the Here2 is not operational while utilizing CAN. I’m good with that as I’m not a fan of the safety switch concept. I have changed ARMING_CHECK switching from “ALL” to checking all the other boxes except for “Hardware safety switch” which is unchecked. I did write the params change and rebooted. When I try to arm via QGroundControl on the HereLink I get a prearm safety switch error. Checking the safety options in QGroundControl the hardware safety switch is unchecked in the Arming Check section. Have I missed something in the parameters to cause this failure?

Thanks in advance for any help.



Here2 compass become compass #0 when it is connected. Ardupilot automatically select external compass as primary compass.
Take a screenshot of your error message if possible.

Safety switch on Here2 is not available via CAN. You may disable the safety switch from arming check, or using an external safety switch


Thanks for the reply, I really do appreciate it. That said I am not sure you read my entire post.

Regarding the compass, here is the setup in Mission Planner taken just after recalibrating again today. I did of course reboot after the calibration.

Here are the error messages in Mission Planner and QGroundControl:
compass not calibrated

Regarding the Safety Switch issue, I know it is not available via CAN and I did uncheck it in ARMING_CHECK check as seen here on Mission Planner

and here in QGroundControl

Yet I still get a PreAm Saftey Switch failure

I can use an external switch to clear the failure but I do not want to use a switch at all. Why does it fail a prearm if it is configured not to be checked in the first place?

Please let me know if you need any further information or screenshots.

Thanks in advance for your help!

For the compass, you may try to reset all parameters to default and calibrate it again.

For the safety switch, you need to disable the BRD_SAFETYENABLE as well, as mentioned here:

Thanks for the help. I’ll reset the parameters and give it another go. I’ll follow up with a status report here.

So I decided to start over. I went from Copter 4.0.3 to 4.1 DEV. Updated the bootloader as well.

Followed the same setup/pram changes I had done in the past and my compass issue is fixed.

Thanks for the heads up on the BRD_SAFETYENABL, I had missed that on my own.