Я пытаюсь сделать приложение на своем Android-телефоне (Nexus 4), которое будет использоваться в модельной лодке. Я добавил фильтры нижних частот, чтобы отфильтровать gitter от датчиков.
Однако компас стабилен только тогда, когда телефон плоский на спине. Если я наклоняю его (например, поворачивая страницу booK), то заголовок компаса уходит - до 50 *.
Я пробовал это с Sensor.TYPE_MAGNETIC_FIELD с помощью Sensor.TYPE_GRAVITY и Sensor.TYPE_ACCELEROMETER, и эффект тот же.
Я использовал упомянутое решение здесь и многие другие места. Моя математика не велика, но это, должно быть, общая проблема, и я нахожу это разочаровывающим, что нет никакого API, чтобы справиться с этим.
Я работаю над этой проблемой в течение 3 дней и до сих пор не нашел никакого решения, но когда я использую Compass from Catch, их устойчивость остается стабильной, независимо от того, насколько сильно настроен телефон. Поэтому я знаю, что это возможно.
Все, что я хочу сделать, это создать компас, который, если телефон укажет на север, затем компас будет читать север, а не прыгать, когда телефон перемещается по любой другой оси (рулон или шаг).
Кто-нибудь может помочь, прежде чем мне придется отказаться от моего проекта.
Спасибо, Адам