answered
2016-06-18 07:02:03 +0200
In my experience using 8-shaped motion will slowly rotate the compass north (the direction perhaps depending on the direction of the motion), but if I do that when the compass north matches true magnetic north, phone compass will start to deviate from the reality. The result is the same no matter which app is being used. Basically, I've found the compass to be totally useless as it can't be relied at all. (been thinking of reporting that here but never got actually far enough to even find this Q).
However, I have now confirmed that my issues with the compass have mostly been due to using TOHKBD2 which it has magnets. The theoretical reasoning (one example from TMO) is that static magnetic field, even a strong one, shouldn't affect the electronic compass which relies upon detecting variation in the magnetic field, but reality kicks theory's butt once again (see the bottom of this post for details).
The tests I conducted:
Now that I finally did a comparison with 8-shaped motion with and without TOHKBD attached, it looks like calibration works pretty much ok without TOHKBD (although it seems not be spot on) but immediately goes south (pun intended) with it attached. Also, after deattaching TOHKBD the 8-shaped motion does return the north bearing to approximately where it should be. However, I didn't have any success using rotation around vertical axis.
Please note that in all cases shown below I was careful to place the phone so that it didn't interfere with the "old school" compass. Later on I discovered that there is some sort of interference in the magnetic field in that particular spot since moving both the compass and the phone up half a meter changes the bearing somewhat, but the difference of roughly -30 degrees between the compass needle and phone compass stayed the same. There's underfloor iron plumbing and large old radiators and stuff like that around so some variation in the bearing is probably due to those.
Initial state:
After 8-shaped motion without any TOH attached:
After continued 8-shaped motion without any TOH attached:
After continued 8-shaped motion with now TOHKBD attached:
After still continued 8-shaped motion with TOHKBD attached:
So, it would seem that SFOS compass is not as crazy as I've thought it to be, I just need to "pack lighter" when I need it. Using Messwerk from OpenRepos it was rather easy to see that the readings immediately go to the bottom of the scale (which seems to be around -2 mT) when TOHKBD is attached, and don't move from there regardless of the device position. :( Too bad, but I can live with that. Just something to keep in mind as the compass reading available through the API seems to incorporate also accelometer data so that the reading is "alive" even though it has absolutely no relevance anymore soon after attaching TOHKBD2.
Did you calibrate the compass with the 8-shaped figure motion?
http://physics.stackexchange.com/questions/17587/what-is-reason-for-electronic-compass-calibration
max ( 2014-08-23 21:22:03 +0200 )editI have noticed the same: compass app seeing north where the phone was pointing when launching the app. Calibration (motion in 8 shape) didn't help. I didn't wait to see if the orientation corrects itself later.
ssahla ( 2014-08-23 21:30:07 +0200 )edit'Orienteering' is another nice compass app. #offtopic
User ( 2014-08-24 10:26:02 +0200 )editIn Sf OS 2.0.1.11 the Compass gets calibrated in not more than 10 seconds, if you turn the phone around on horizontal level once.
JoHe ( 2016-06-21 13:26:51 +0200 )editi can not confirm that its fixed: calibrating takes up to 2min. after that - being very accurate - in the course of the next 5-10min it will deviate up to 90° from the correct value. even when correct: moving it from one wall of my livin room to the opposite one (parallel movement) the compas value will change by up to 30°.
no, the compass is still completely broken and unusable! (not so mention this bug)
misc11 ( 2016-06-21 14:03:51 +0200 )edit