Do the compass calibration in an open area free of electrical/magnetic interference (power lines both above or below ground, concrete with rebar, your cell phone and or smart watch, metal fencing, vehicles, etc). Make sure you get the single beep then perform the rotation until you get the double beep, switch to the next position, wait for the single beep, and so on.
I kept getting a failure at the third position by holding the aircraft 180 degrees out from the position it expected. If you get an odd sound instead of the single beep at the start of a new position, turn it 180 degrees to get the single beep.
If you keep getting warnings about the compass, try moving to a different area a few meters away and try again.