Autos fahren ungewollte Kurven Probleme mit Beschleunigungsmessung beim iPhone 5S

Kompass-App: Links das iPhone 4S, rechts das vom Kalibrierungs-Problem betroffene iPhone 5S.
Kompass-App: Links das iPhone 4S, rechts das vom Kalibrierungs-Problem betroffene iPhone 5S.

Nachdem Spieler beim Phone 5S große Probleme bezüglich der Steuerung gemeldet haben, steht der Hersteller des Beschleunigungsmessers, Bosch, in der Kritik. In Wahrheit liegt das Problem aber nur in der mangelhaften Kalibrierung durch die Apple-Software.

Viele Apps wie Spiele nutzen den im iPhone eingebauten Beschleunigungsmesser, um die Neigung des Gerätes zu ermitteln. Beim iPhone 5S zeigen diverse Apps, die auf der Vorgängergeneration 4S/5 einwandfrei funktioniert haben, auf einmal Abweichungen von 5-6 Grad an.

In der öffentlichen Kritik steht insbesondere in amerikanischen Apple-Blogs der deutsche Hersteller des Beschleunigungsmessers, Bosch. Aber auch auf deutschen Webseiten finden sich Schlagzeilen wie “iPhone 5s: Ungenaue Sensordaten sind auf Sensortech Accelerometer von Bosch zurückzuführen”.

Fest steht, dass Apple erstmals in der iPhone-Historie entsprechende Bauteile von ST Microelectronics ausdesignt hat. So kam im iPhone 5 das Bauteil LIS331DLH zum Einsatz, das mit einer maximalen Abweichung von +/- 20 mg spezifiziert ist, was rund +/- 1 ° entspricht. Analysten haben behauptet, im iPhone 5S käme das BMA220 von Bosch zum Einsatz, das laut Datenblatt eine maximale Abweichung von +/-95mg oder +/- 5-6 Grad hat.

Es gibt jedoch gute Gründe, dies anzuzweifeln. Da ist zum einen die Teilenummer “361 LP”. Bosch bezeichnet seine Bauteile derart, dass die dreistellige Zahl für die Produktslinie steht, der erste Buchstabe für einen bauteil-Code und der zweite Buchstabe die Fab, in welcher das Teil produziert wird (bzw. im Fall einer Foundry den Subunternehmer). Der Buchstabe “L” findet sich weder im BMA220 noch in irgendeinem anderen MEMS-Beschleunigungsmesser von Bosch wieder.

Weiteren Zweifel nährt die geringe Auflösung des BMA220 von lediglich 6 bit. Beim iPhone 5S kann man nachvollziehen, dass der Beschleunigungsmesser einen Bereich von +/- 8 g abdeckt. Beim BMA220 würde die Differenz zwischen 2 Messpunkten damit ¼ g (16/2^6) betragen. Dies wäre nicht nur eine deutlich schlechtere Auflösung als bei allen Vorgängergeräten, sondern widerspricht auch der praktischen Erfahrung mit dem iPhone 5S. Messwerte zeigen, dass die minimale Differenz zwischen 2 Messpunkten ungefähr 0,000015 g beträgt, so dass bezogen auf den Messbereich tatsächlich 16/0,000015 = 1.066.667 Werte generiert werden. Dies liegt extreme nahe an 1.048.576 oder 2^20, so das seine Auflösung von 20 bit als sicher angenommen werden kann.

Diese Auflösung ist nicht nur höher als im BMA220, sondern als in allen öffentlich gelisteten MEMS-Bausteinen von Bosch. Der Rückschluß ist daher, dass zum einen Analysten wie Chipworks eine falsche Angabe bezüglich des eingesetzten MEMS gemacht haben und zum zweiten Bosch offensichtlich einen speziellen Baustein für Apple entwickelt hat.

Ob die Abweichungen daher stammen, dass das Bosch-Teil von Haus aus eine höhere Toleranz hat als die ST-Bausteine (alle öffentlich einsehbaren Bosch-Beschleunigungsmesser haben +/-50 mg oder mehr) oder eine niedrige Toleranz, jedoch fertigungsbedingte Abweichungen auftreten, ist unklar. Allerdings sind die Abweichungen mehr oder weniger konstant, so dass sie softwearemäßig herauskalibriert werden können.

Offenbar hat es Apple versäumt, seine OS-Treiber an das Bosch-Teil anzupassen. Theoretisch könnte jeder App-Entwickler mit wenigen C-Codezeilen eine eigene Kalibrierung vornehmen – die Kompass-App, zeigt wie es geht: Wenn das Gerät auf einer flachen Oberfläche liegt, reicht ein Antippen des dargestellten Kreises.

Es ist jedoch anzunehmen, dass Apple wie in der Vergangenheit in ähnlichen Fällen zeitnah ein iOS-Update nachschieben wird und das Problem damit aus der Welt schafft.