Ho lavorato parecchio con queste bussole elettroniche sui telefoni cellulari ed è possibile che non ci sia nulla di sbagliato nel codice o nel sensore.
Invece potrebbe benissimo essere un problema con il vostro ambiente. Ci sono campi magnetici che interferiscono continuamente con i campi magnetici della terra. Dalle interferenze delle apparecchiature elettriche alla struttura metallica che sostiene un edificio. Alla fine della giornata una bussola è solo una calamita. Se ti trovi accanto a un grosso pezzo di metallo, la bussola sarà attratta da esso e puntata su di esso, piuttosto che sul polo nord magnetico.
Prova questo: Installare GPS status quindi disattivare tutti i filtri (impostazioni ... gps & sensori ... filtraggio sensore ...nessun filtro). Fai la calibrazione (figura di 8 cose ondulate) e poi sposta il telefono intorno alla tua scrivania .. vicino a monitor, cavi, ecc. Lo vedrai impazzire. L'informazione è completamente inaffidabile. Ho scoperto in passato che spostare il telefono di qualche centimetro a destra ha completamente cambiato la sua lettura. Lo stesso accade con una vera bussola. A rigor di termini non c'è "problema". La bussola del dispositivo si sta assegnando con il campo magnetico più forte. Anche il contenuto magnetico delle rocce vicine può interferire con la bussola.
Come ulteriore test ho appena posizionato una vera bussola (orienteering) sul mio telefono su cui è installata un'app bussola. La vera bussola ora punta ovunque, ma il Nord magnetico. I due dispositivi interferiscono l'uno con l'altro.
Quindi il mio consiglio è .. andare da qualche parte all'aperto, come un parco o un campo, lontano da qualsiasi potenziale interferenza e linee elettriche, (se ne hai uno porti una vera bussola per controllare che l'app GPS status
sia rivolta verso destra modo), e vedere se la tua bussola funziona come ti aspetteresti.
Extra: La risposta da @resus è importante anche durante la calibrazione. Ruota il telefono alcune volte su ciascun asse. Sembra sciocco ma lo calibra correttamente.
Extra 2: Sarebbe possibile/pratico utilizzare il GPS compass bearing? Richiederebbe che il dispositivo si muova (la velocità a piedi dovrebbe andare bene) ma non dovresti preoccuparti di alcuna interferenza. Dovrebbe fornire una lettura accurata a condizione che il segnale GPS sia buono.
Extra 3: Un altro pensiero mi è appena venuto in mente .. Si potrebbe provare ad applicare un filtro passa-basso al sensore. Ciò significa che i cambiamenti improvvisi nella lettura del sensore sono filtrati .. dare un'occhiata a questo answer. E se questo non fa un buon lavoro, ci sono molti algoritmi sul web tra cui scegliere.
Grazie, ho già testato lo stato del GPS, e stava funzionando bene fino a quando il tablet è rimasto tutta la notte in un campo magnetico di stracci, potrebbe essere quello, chiamerò il supporto – vgonisanz
Basta provare lo spin "3 assi" come disse Resus. Giralo 3 volte prima sul retro, poi giralo su di esso e ancora 3 volte, quindi ruotalo (come se lo stesse facendo girare su una scrivania) 3 volte. Non credo che il supporto possa essere d'aiuto poiché probabilmente non è difettoso. Basta provare a scappare da tutte le possibili fonti di interferenza - Buona fortuna – Tim
Ho provato ad applicare un semplice filtro passa-basso, con alfa molto basso (a piccole modifiche) ma non ha funzionato, il sensore non dà coerenza dati, quindi è totalmente rotto. Quindi, persone, state attenti con alti campi magnetici. – vgonisanz