i have a problem calibrating the compass, both internal and external. Here are the components I use:
1.GNSS M10-L4-3100
2. Mission planner 4.3.0
3. Black Pixhawk Cube
At first, calibration was successful. However, for the past few days, I have had trouble calibrating the compass and the message appears: CompassCalibration : Cannot start compass thread
I have done several things, starting from updating firmware, changing the type of CAN used, and others. Calibration can only be carried out only a limited number of times.
What’s the solution?
Mission Planner’s latest version is 1.3.80. You should probably update to that.
4.3.0 is the Arducopter firmware on your cube. You should also update that to at least the latest stable (4.3.5) since I understand there’s been some updates for the Cubes.
If the compass was calibrated why are you doing it again?
My suggestion, is once you’ve updated your firmware and software is to try and do a basic calibration again, outside with a good GPS lock and away form interference. Don’t worry about how “good” it is, just get it done. Then once you’re flying run Magfit and update your parameters based on that. Then forget about it unless you change parts or move something.
I’m guessing if you’re seeing that message there you’ve either left the compass calibration too early or you are trying to trigger COMPASS_LEARN before you’re armed and flying.
Do the basic calibration in Mission Planner, and if you need to improve it then use magfit.
I think I’ve solved it. I have to disable the external compass first. and maybe the condition for compass calibration is that the internal compass must be detected first.
Try using Qgroundcontrol. I ran into this yesterday on a F405-WSE. Mission Planner gave me the same error as the OP, but I was able to use QGC to get the calibration done.