Kompass spinnt nach update auf gingerbread

RÄPH

RÄPH

Erfahrenes Mitglied
38
Hallo,

Hat vielleicht jemand eine idee, warum nach dem update auf android 2.3 (inoffiziell) der kompass nicht mehr geht?
Gibt es schon eine lösung?

Danke,

Räph
 
Weil er seine Kalibrierdaten verloren hat?
Beim SGS hilft es, das Handy fünf mal in einer Achterbewegung zu drehen. Bei deinem vielleicht auch.

Gruß Gerd
 
Danke für den tipp, aber leider ist der kompass nicht falsch eingestellt, sondern er dreht sich mit dem gio mit (sogar noxh schneller).
Ich hab bemerkt, dass, wenn ich mein gio auf m kopf halte, dass es dann geht. Aber das ist natürlich keine lösung.

Gruß,

Räph
 
Das gleiche Problem habe ich auch seit dem Update auf 2.3.3 (XXKPA). Hat schon jemand probiert, ob das mit einer aktuelleren Firmware gelöst wird?

Gruß
Daniel
 
Ich habs schon mit allen samsung firmwares ausprobiert, es geht nur mit 2.2.1
Auch mit 2.3.4 custom rom geht es nicht (simpliGio).

Räph

Gesendet mit der Android-Hilfe.de-App
 
  • Danke
Reaktionen: Daniel255
Muss ich leider bestätigen! Unter 2.2.1 Froyo (Original-System) ging der Kompass einwandfrei (z.B. Google Sky Map).
Hab jetzt 2.3.4 bzw. Gingerbread.XXKQ6 und der Kopass spinnt. Kalibieren nutzt auch nix. :mad2:
 
Habe noch nicht geupdated, weiß aber, was das Problem ist - mit Froyo ist es nämlich genau umgekehrt: hält man das Handy normal (Display oben), dreht sich der Kompass korrekt (zeigt immer gleiche Richtung), andersherum (Display unten) dreht er sich verkehrt (bei vertikaler 360°-Drehung des Handys führt der Kompass zwei komplette Drehungen, also 720°, in die selbe Richtung aus)

Da Android ja ein freies OS ist, könnte man evtl. nachvollziehen, welche Parameter dieses Verhalten regeln, und mit einem Hexeditor im ROM anpassen... werd's mir morgen vielleicht mal anschauen.
 
Also ich hab im xda Forum was ganz interessantes gefunden:

Had the same problem too. Solved now..... by

1. *#0*#
2. Diagnostic Menu, select "Magnetic"
3. Pressing "Start Test" in the Magnetic Sensor Test Menu, somehow reset the calibration.
4. Go back to Diagnostic Menu, select "Sensor"
5. All the sensor values will be shown, look at the black dial with a red need. If "1 need calibration" is shown just rotate the unit a few times..... then "2 need calibration" when just "3" is indicated .........calibration done. Make sure there no power lines and metal structures are not nearby.

Ich kann das leider mit der KQ6 nicht überprüfen da bei mir "Magnetic" fehlt. Vlt. gehts aber bei einer der 2.3.3 Versionen oder so.

Hier ist der originale Beitrag bei XDA.
 
Unter dem Menüeintrag "Sensor" findet man den Magnetic Sensor ;)
 
Ich hab das schon selber ausprobiert, aber es geht um den Menüpunkt "Magnetic" der bei mir nicht vorhanden ist. Dadurch ist auch "Start Test" bei mir nicht verfügbar.

Bei "Sensors" werden ja quasi nur die aktuellen Daten und die aktuelle Kalibration angezeigt.
 
Bei mir (Froyo) wird unter "Sensors" ein Button zur Kalibrierung angezeigt, ich vermute aber, dass dadurch nur das Accelerometer kalibriert wird (also phone auf ebene Fläche legen und Button drücken)

Habe dann mal versucht, die Kalibrierung umgedreht durchzuführen (also auf Tischkante gelegt mit Display nach unten, dann auf "Cal." gedrückt und das Handy in der selben Lage vertikal etwas gedreht) - und siehe da, der Kompass funktioniert nun auch mit Display nach unten (jedoch ungenau, wenn man das Handy dann etwas kippt...) Nur weiß ich jetzt nicht, ob mein Beschleunigungssensor dadurch vielleicht falsch eingestellt wurde...

Versucht's also mal damit :p

/edit: Nicht wundern, wenn das Handy bei den Sensoren bei euch vibriert, das ist der Näherungssensor (liegt neben dem Frontspeaker)
/edit2: Nagut, zumindest bei mir war danach die Beschleunigungssensor-Kalibrierung im Eimer -.-
 
Zuletzt bearbeitet:
Bei der KQ6 bei mir gibts keinen Button für die Kalibration (weder für Accel. noch für Kompass). Das Accel. kann ich jedoch über "Einstellungen->Horizontale Kalibrierung" kalibrieren.
 
Das scheint ein allgemeines problem von Gingerbread zu sein.
Issue 16741 - android - compass not working on gingerbread roms - Android - An Open Handset Alliance Project - Google Project Hosting
Ein Programmierer der sich den Quellcode angeschaut hat meinte das kann so gar nicht funktionieren. Für manche Geräte gibt es einen workaround oder fix der Gerätehersteller aber keiner davon funktioniert für das Gio.
Also heißt es abwarten das Samsung das korrigiert oder bei Froyo bleiben.
Was mich etwas wundert, wenn das alles so stimmt müsste es eine Menge Androiden geben die unter 2.3 laufen und bei denen der Kompass spinnt aber im Netz ist das "Echo" dazu gering. Fällt vielleicht nur den Nerds auf die ein Smartphone zu mehr als nur facebooken nutzen ;)
 
el-muerte schrieb:
Fällt vielleicht nur den Nerds auf die ein Smartphone zu mehr als nur facebooken nutzen ;)

Da ist wohl was wahres dran. Ausser zum Geocachen oder für Google SkyMap fällt mir auch nicht viel ein, wofür ich den Kompass brauche......
Allerdings ist SkyMap eine richtig nette App, falls man an der Materie interessiert ist und die Hardware funktioniert :rolleyes2:
Bei dem SE X10i meiner Freundin funktioniert der Kompass auch nach dem kürzlichen Update auf 2.3.3 absolut perfekt.

Grüsse Chris
 
Da hat Sony wohl seine Hausaufgaben gemacht. In dem verlinkten Bugreport beschweren sich vor allem Besitzer von Samsung, HTC und Google Geräten.
 
seneca64 schrieb:
Da ist wohl was wahres dran. Ausser zum Geocachen oder für Google SkyMap fällt mir auch nicht viel ein, wofür ich den Kompass brauche......

Wenn ich das richtig weiß, wird der "Kompass" durch ein Magnetometer (heißt das auf deutsch so?) realisiert. Hatte mir dazu mal die API-Specs durchgelesen: http://developer.android.com/reference/android/hardware/SensorManager.html#getOrientation(float[],%20float[])

Demnach wird zur Ermittlung der aktuellen Lage des Handys neben "pitch"- und "roll"-Werten (für Rotation um X/Y-Achse) der Kompass (ich vermute es ist ein Magnetfeldsensor des Typs AK8973, zumindest finden sich in den Samsung-Android-Sourcen Treiber dafür) für die Rotation um die Z-Achse herangezogen. Also nicht nur Navigation etc. spielt jetzt verrückt sondern auch diverse AR-Games...

Hatte soeben kurz die Vermutung, dass durch den C-Präprozessor beim Kompilieren des Systems für verschiedene Build-Versionen (z.B. andere Sales-Codes) unterschiedliche Parameter verwendet werden. Habe im Sourcecode auch noch Treiber für den Magnetometer AKM8975 gefunden, vielleicht werden z.B. bei russischen Gios geringfügig andere Sensoren verbaut als bei deutschen, und die Treiber behandeln diese somit falsch...?

STeht in dem russischen Forum (siehe Gio-Kies-Update-Thread...) was von defektem Kompass!?

Dazu müsste man ins ROM reinschauen, habe da nur noch nichts gefunden - man kann nach Entpacken des .tar-Archivs die system.rfs unter Linux mounten (ist ein FAT16-image):
Code:
# mkdir /mnt/gio-image
# mount -o loop ./system.rfs /mnt/gio-image
# ls -l /mnt/gio-image
drwxr-xr-x  2 root root 24576 2011-07-23 20:09 app
drwxr-xr-x  2 root root 20480 2011-07-23 20:09 bin
-rwxr-xr-x  1 root root  3284 2011-07-23 20:09 build.prop
drwxr-xr-x  2 root root  4096 2011-07-23 20:09 cameradata
drwxr-xr-x 11 root root  4096 2011-07-23 20:09 etc
drwxr-xr-x  2 root root  4096 2011-07-23 20:09 fonts
drwxr-xr-x  2 root root  8192 2011-07-23 20:09 framework
drwxr-xr-x  7 root root 28672 2011-07-23 20:09 lib
drwxr-xr-x  4 root root  4096 2011-07-23 20:09 media
drwxr-xr-x  8 root root  4096 2011-07-23 20:09 usr
drwxr-xr-x  3 root root  4096 2011-07-23 20:09 wifi
drwxr-xr-x  2 root root  4096 2011-07-23 20:09 xbin
(Funktioniert auch mit der csc.rfs)

weiter bin ich noch nicht... (habe euch die build.prop mal angehängt)

Achja, den Android code findet ihr in verschiedenen git-repos, ich habe mal in "kernel/samsung" reingeschaut:

android.git.kernel.org Git

/edit: ach, ich werd mir demnächst einfach selber mal gingerbread flashen, um das Kompassproblem näher zu untersuchen ;-)
 

Anhänge

  • build.prop.txt
    3,2 KB · Aufrufe: 1.274
Zuletzt bearbeitet:
Hier mal die Threads bei Google dazu. Geht zwar meißtens um das Nexus S aber alle haben das Problem erst seit 2.3
Nexus S compass shows wrong direction - Google Mobile Help
Nexus S issues with Google Sky Maps, Accelerometer & Screen Rotation - Google Mobile Help
Nexus S compass and accelerometers don't work properly - Google Mobile Help
Seit Mai ist das Problem bekannt. Alle paar Monate meldet sich mal ein Google Mitarbeiter "danke für die Infos wir gucken uns das an"
Ich werde mal an den Support von Samsung schreiben aber ich wäre überrascht wenn da überhaut eine hilfreiche Antwort kommt.
 
Außerdem haben das Problem zumindest auch noch das HTC EVO 4G und das SGS 2. Fürs Evo gibts schon nen inoffiziellen workaround und beim SGS2 hilfts bei manchen wenn sie einfach nur Google Sky Map installieren.

Afaik ist es ein Fehler im Kernel, das Problem liegt imho also eher bei Google als bei den Herstellern.
 
Ich habe scheinbar für mein GIO eine Lösung gefunden ... ich bin mir noch nicht sicher ob die Genauigkeit wie in 2.2.1 ist.
Die Datei /system/bin/memsicd scheint das Problem verursachen - dieser Service implementiert wohl das Interface zwischen Sensor Treibern [compass: mmc31xx.c] und App (einfach 'mal nach mensicd googlen).
Diese Datei habe ich mit der Version aus dem Galaxy Gio 2.3.4 update ersetzt. Der Kompass ist noch immer nicht toll, aber er funktioniert ;-)
 
Sorry, ein Tippfehler ... ich meinte, ich habe die Datei memsicd aus dem 2.3.4 Update für das Galaxy *ACE* verwendet.

Zumindest das 2.3.4 Update für das ACE scheint den Kompass-Fehler nicht zu haben.
 

Ähnliche Themen

K
Antworten
5
Aufrufe
3.369
hagex
hagex
K
  • Kasper12
Antworten
1
Aufrufe
3.415
mardon
mardon
S
  • Schneewittchen
Antworten
3
Aufrufe
2.977
syscrh
S
Zurück
Oben Unten