gps ultra-rapid pe android
Tot săpând după diverse setări (în continuarea articolului despre GPS asistat pe Android) am mai găsit o idee interesantă, care s-a dovedit foarte practică.
Concret:
- poziționarea pe un telefon Android (și un smartphone în general) se face prin 3 metode mari și late: network location (în funcție de celulele GSM la care este conectat telefonul), WiFi location (în funcție de rețeaua WiFi la care este conectat telefonul) și GPS location (prin recepția semnalelor satelit).
- network location și WiFi location folosesc o bază de date predefinită cu poziția geografică a celulelor/ruterului WiFi (IP geolocation). Merg aproape instant, necesită conexiune la internet.
- GPS location nu necesită conexiune internet, dar poate fi ajutată prin descărcarea efemeridelor (un fișier ce conține poziția curentă a sateliților GPS și care este valabil doar o săptămână). Când un chip GPS are semnal suficient de puternic de la un număr suficient de sateliți, se cheamă că s-a făcut un “gps fix” și precizia poziționării este suficient de mare (în general, sub 100 metri).
- Un GPS fix se poate obține “la rece” (de exemplu când aparatul a fost oprit) sau “la cald” (când s-a obținut o poziționare anterioară și chipul GPS este reactivat după o perioadă). Durata obținerii poziției precise poate fi de la câteva minute pentru un cold fix până la câteva secunde pentru un hot fix. Durata depinde și de vizibilitatea cerului, condițiile atmosferice, vreme, etc.
Eh, numai că sunt situații când folosești un program de navigație care se bazează doar pe GPS și ai nevoie de un GPS fix rapid, pentru ca programul să știe poziția curentă și să poți calcula o rută. Având o poziție inițială estimativă, poți porni la drum liniștit iar GPS-ul își va stabili conexiunea pe parcurs.
Trucul de mai jos realizează fix asta: odată inițializat chipul GPS din telefonul cu Android, aplicația care folosește GPS-ul va crede că primește un GPS fix aproape imediat. În realitate, poziționarea inițială este pe baza celulelor GSM/WiFi și are o eroare destul de mare (1-2 km de obicei prin orașe, 10-20 km în afara lor). Cu toată eroarea asta, poziționarea e suficient de bună pentru a porni navigarea. Ulterior, pe măsură ce sateliții sunt recepționați corespunzător, precizia poziționării se va îmbunătăți ajungând la nivel de metri (“adevăratul GPS fix”, ca să zic așa).
Bun, ce trebuie făcut pentru asta: se remontează partiția system din telefon cu adb (adb remount /system rw
) și se înlocuiește conținutul fișierului /system/etc/gps.conf cu următoarele:
NTP_SERVER=1.ro.pool.ntp.org
NTP_SERVER=ro.pool.ntp.org
NTP_SERVER=europe.pool.ntp.org
XTRA_SERVER_1=http://xtra1.gpsonextra.net/xtra.bin
XTRA_SERVER_2=http://xtra2.gpsonextra.net/xtra.bin
XTRA_SERVER_3=http://xtra3.gpsonextra.net/xtra.bin
SUPL_HOST=supl.google.com
SUPL_PORT=7276
DEBUG_LEVEL=0
INTERMEDIATE_POS=1
ACCURACY_THRES=5000
REPORT_POSITION_USE_SUPL_REFLOC=1
ENABLE_WIPER=1
SUPL_NO_SECURE_PORT=7276
SUPL_SECURE_PORT=7276
CURRENT_CARRIER=common
DEFAULT_AGPS_ENABLE=TRUE
DEFAULT_SSL_ENABLE=FALSE
DEFAULT_USER_PLANE=TRUE
2 Responses to gps ultra-rapid pe android
Leave a Reply Cancel reply
This site uses Akismet to reduce spam. Learn how your comment data is processed.
Publicitate
Ultimele spuse
- Florin on unde-i vaxxi acum?
- wyxchari on deblocare mio moov 500
- Montana13 on cum se fură de pe carduri
- Stefan Marian on becurile din bord
- Alexandra on tutorial complet zippo
Ultimele articole
- gând la centenar
- politia in actiune
- how to rescue a fedora workstation after removing all available kernels
- românce în kuwait
- tăiem documente ? mai e mult până departe
- scapă de spam cu alias-uri pentru email
- UPC și paleoliticul tras la indigo
- de ce NU trebuie vot electronic
- cititorii ne scrie
- hdtv / dvb-t în București
Cele mai comentate
Comics
Deci, măcar pentru asta trebe să ne vedem. :)))
Dacă zici ceva de ceai, te bat 😀