I think you may be missing the point. Calibrating before every flight is not improving your navigation accuracy. When you do that, you actually make it worse in most cases. It is better to do one good calibration carefully, in a very good environment, and try to keep that good calibration data as long as you can. When the drone is in flight, it is so far away from nearby ferrous materials and electronic devices, that it mostly sees the true earth magnetic field, which is the ideal environment you are trying to calibrate. To the extent you can, you want to replicate that ideal on the ground by calibrating as far as you can from anything that would disturb the true natural background earth magnetic fields that you will see in flight. It is difficult to get an undisturbed magnetic environment on the ground near all the man made fields and ferrous objects. Play with a compass and watch how much it varies while you move around the house. But once you find a local spot to get away from all those nearby peculiar magnetic field disturbances, and finally get a good calibration on the true earth fields, you don't want to throw that calibration data away and replace it with whatever degraded calibration data you might collect wherever you fly next. The true earth data doesn't vary more than a degree, over a hundred miles or so. But the local corrupted magnetic field close to the ground can vary enormously (tens of degrees) by a hundred different nearby devices, wires, etc, that your drone will never see once it gets 100 feet away in any case. So unless you move 100 miles away, where the true background earth fields vary enough to make recalibration useful, it is counterproductive to recalibrate at every flight.