I don't know if this has been suggested yet but why not use the same digital compass that is currently in the Iphone 3GS (and all of the Android phones, I believe)? The unit is Asahi Kasei's AK8973S.