Ведь сама программа связана с каким-то физическим устройством, она же с неба не берёт сведения о том, где север, юг, угол наклона относительно горизонтальной плоскости. Так вот что это за устройство.
Компас-магнитометрический датчик. Хз как работает, ищи в гугле. Думается замеряет напряженность магнитного потока. Гироскоп-акселерометр, в инете много статей как это работает.