Exakte GPS Position durch GNSS Rohdaten und RTCM

Ab Android Nougat V7.0 ist der Zugriff auf Rohdaten des GPS Chips möglich. Die Android API bietet hierzu die Klassen GnssMeasurement und GnssClock an. Die App Precise GPS liest diese GNSS Rohdaten aus und leitet sie zusammen mit RTCM Korrekturdaten an die Open-Source Software RtkLib weiter. Die durch RtkLib errechnete exakte GPS Position wird per mock location auf dem Smartphone bereitgestellt, und kann damit in jeder beliebigen Applikation genutzt werden. Unter optimalen äußeren Bedingungen ist die Position bis auf einen Meter genau.

RTCM Korrekturdaten via NTRIP sind mittlerweile auch kostenlos verfügbar. (z.B: EPS-Dienst in Baden-Württemberg)

Die App funktioniert ausschließlich unter Android ab Version 7 (Nougat). Zusätzlich muss der GPS Chip Hersteller die GNSS Rohdaten für Android bereitstellen. Für einen ersten funktionalen Test kann die App PreciseGps-Test oder die GnssLogger-App von Google genutzt werden.

Funktionsgrafik alt <>

Stolpersteine und Fortschritt

25.08.2017: Aktuelle Tests auf dem Nexus X5 mit der App Betaversion sind leider nicht sehr vielversprechend. Die Positionsberechnung via RtkLib ist nicht wirklich genauer als die der internen GPS Firmware.

17.06.2017: Mit der Android Applikation Precise GPS Funktionstest kann getestet werden, ob alle Funktionen zur Berechnung der genauen GPS Position auf dem Smartphone zur Verfügung stehen.

31.05.2017: Die Integration der RtkLib in Android gestaltet sich deutlich schwieriger als angenommen. Damit verschiebt sich leider der App-Preview (Beta) Termin auf Ende Juni.

23.04.2017: Die Android GNSS Rohdaten-API liefert leider (zumindest auf meinem Nexus X5) keine Satelliten Ephemerisdaten. Daher müssen diese Daten von einer extern Quelle (NASA) zyklisch per FTP geladen in die RtkLib eingespeist werden. Auf dem Nexus X5 und auch auf dem Galaxy S7 Testgerät kommen leider keine GnssNavigation Nachrichten an.