Testers needed for in-flight compass learning

What version of rover was this added in?

Is ā€œHave Earth Fieldā€ an error and itā€™s not learning, or is that just something it does?

I tried this a couple times today and it never completed in about 4 minutes. I flew up about 80 meters and flipped the switch on my transmitter (option 62) and it said it started calibration, then have earth field, and after a few minutes of yawing, I had to landā€¦ Itā€™s a tiny copter and only flies about 5-6 minutes.

Also, does flipping the switch low again cancel the compass learning, or does it just keep trying until it completes, regardless of the swtich position? I tried flying up higher and toggling the switch, and it didnā€™t do anything, so Iā€™m assuming it was still trying to finish the calibration from the first time I started it.

Thanks

1 Like

Well, today I did the calibration, and it completed in just a few seconds. No message about the earth. So I guess that is an error. Only differenceā€¦ Yesterday I was using 18650ā€™s, and today had a standard flat lipo. Otherwise, I was in the same area, same altitude, etc.
I could definitely see 18650ā€™s causing more interference since their layers are spiral. So maybe the FC thought the 18650ā€™s mounted below the FC were some sort of ground interference.

Rover Pixhawk4, version 3.5.1. I set compass_learn to 3. These are the messages I got. I drove around for 10 mins and didnā€™t get CompassLearn:complete. Do the EKF messages provide any hint of what may be going on? Else, how best could I/we debug this?

EKF2 IMU1 initial yaw alignment complete
EKF2 IMU0 initial yaw alignment complete
CompassLearn: have earth field
CompassLearn: Initialised

Maybe i am missing something. Has compass learn been backported to te latest stable 3.6.9?

Iā€™m using the latest Rover, which is 3.5.1) and it is in there.

I see that but i am not sure it is in stable copter too.

1 Like

interesting this option, I can not wait to try it in my boat of more than 3 meters in length. I think it will solve many problems.

Iā€™m trying to figure out how this will work for a boat. If Iā€™m heading east, 90 degrees, but the wind or current is causing me to track at 80 degrees according to the GPS, how will this work?

I have to do more tests, but it really worked for me.

before my boat seemed to sail sideways, now the nose is aligned with the real course.

although now with this alignment I return a little weaving

Will RCn_OPTION=62 work with a momentary switch on the transmitter to initiate calibration, or does RCn have to stay on for the duration of the calibration? Thanks.

@tridge I have been using in-flight calibration since the beginning and just loaded latest master with the ability to arrange the mag priority. I rearranged mag priority and it wonā€™t save offsets. mavlink messages look good and everything looks like it works until disarmed. Static calibration works as expected.

I just tried again and this time i landed and disarmed before turning off the in-flight calibration and it saved the new offsets and was happy. I will test on another vehicle and if I find anything different I will report.

Cheers, RB

1 Like

OK, so that last test was done after a static calibration. What is happening is that the in-flight only calibrates the primary compass so if 2 and 3 are switched in priority the whole thing goes out the window. I donā€™t remember if thatā€™s the way itā€™s always been but I seem to remember it calibrated all units before

Hi I canā€™t do onboard calibration of my RM3100 (Drotek Sirius) compass in my big octocopter. So I tried compass learning 3 option. Everything is ok after inflight calibration but strange for me is that the learning completed just after 5-10 seconds of flight. Is that normal. I even didnā€™t yaw the copter. I have 4.04 dev firmware. Copter is flying ok I just get ifno in Log Auto Analysys that:

Test: Compass = FAIL - WARN: Large compass offset params (X:88.26, Y:208.64, Z:-313.92)
WARN: Large compass offset in MAG data (X:88.00, Y:208.00, Z:-313.00)
Large change in mag_field (181.13%)
Max mag field length (598.82) > recommended (550.00)

Log: http://fotostacja.pl/180.bin

I think something was changed a couple of weeks ago on dev. I think @tridge changed some scale value and in the last hours he reverted back.
I had my RM3100 calibrate and function properly before the old change and i, too, had probs if i tried it on dev.
Maybe the change he made few hours ago fixes the situation.

Ok so I updated the firmware to 4.04 dev from 28.05.2020. Compass onboard calibration was good. But still in Auto Analysis I get error:
Test: Compass = FAIL - Large change in mag_field (8961.20%)
Min mag field length (94.39) < recommended (120.00)
Max mag field length (8552.64) > recommended (550.00)
Maybe thatā€™s false error ?
I also have 3 compasses in ā€œCompassā€ tab in Mission Planner, but I think I have 2 compasses (one in Cube Orange, one in Drotek Sirius).
Compass_scale 0,9525613
Can anyone check my log. Are this compass settings are really dangerous ? My copter is flying ok, compass is over 15 cm from other parts and over 25 cm from LIPOLs.
log: https://fotostacja.pl/181.BIN

That link to your file is no good.

I corrected the link.