I've just received 2 BV9500Pro and both have the same problem with compass. The "North" is suck to the phone's orientation. Compass calibration does not help at all. Yellow one sown N on 11 and black one - on 5. When the phone is being rotated the N shows some inertia, (because the compass application apparently uses gyroscope to movement detection) but always gets back to the initial position. I've launched the "Sensors" application and noticed that readings from geomagnetic sensor are stable and sensitive to the phone's orientation but much biased. The Y axis in yellow phone reads for 38µT to 81µT during 360deg rotation, in the black phone Y reads -60µT to -20µT. So one has bias of 60µT while the other -40µT. X and Z axes are also biased but not as much as Y.
This might mean the geomagnetic sensor readings are not calibrated so the compass cannot work. How can it be fixed?