Hacker News new | ask | show | jobs
by alanfranzoni 2689 days ago
I do not understand. That carriers have my cell location data, that seems ok. But do they get my own phone GPS data along with it? The article seems to imply that such data is sent only when dialing certain emergency numbers... Not always!
2 comments

Pinpointing a phone requires three satellites. With A-GPS, it can be accomplished with two satellites and cell tower data and/or WiFi info.

Official Apple statement:

Calculating a phone’s location using just GPS satellite data can take up to several minutes. iPhone can reduce this time to just a few seconds by using Wi-Fi hotspot and cell tower data to quickly find GPS satellites, and even triangulate its location using just Wi-Fi hotspot and cell tower data when GPS is not available (such as indoors or in basements). These calculations are performed live on the iPhone using a crowd-sourced database of Wi-Fi hotspot and cell tower data that is generated by tens of millions of iPhones sending the geo-tagged locations of nearby Wi-Fi hotspots and cell towers in an anonymous and encrypted form to Apple. https://www.businesswire.com/news/home/20110427005749/en/App...

Also worth reading: https://transition.fcc.gov/pshs/911/Apps%20Wrkshp%202015/911...

> With A-GPS, it can be accomplished with two satellites and cell tower data and/or WiFi info.

I think you might be confusing 2 separate things:

* aGPS uses the cell tower to download data that helps with locking on to GPS satellites much faster. It basically tells the GPS receiver: here are the satellites you need to be looking for.

* cell tower triangulation is used when you have no GPS reception at all. It’s inaccurate, but it’s better than nothing.

If you know your location roughy with triangulation, you can improve your location estimate if you add 2 satellites to the mix (more data is usually better than not), but even then it has nothing to do with aGPS.

Thank you. I went back and did some additional reading. From what I read it appears aGPS has different options available.

Standalone - Your handset has no connection to the network, and uses only the GPS satellite signals it can currently receive to try and establish a location.

MS Based - Your handset is connected to the network, and uses the GPS signals + a location signal from the network.

MS Assisted - Your handset is connected to the network, uses GPS signals + a location signal then relays its 'fix' to the server, which then uses the signal strength from your phone to the network towers to further plot your position.

> If you know your location roughy with triangulation, you can improve your location estimate if you add 2 satellites to the mix (more data is usually better than not), but even then it has nothing to do with aGPS.

Isn't this exactly what aGPS is? One or more data points outside of satellite data? If you have an additional resource I'd love to take a look. Just a quick search of the topic did reveal some contradicting statements.

https://www.windowscentral.com/gps-vs-agps-quick-tutorial

> Isn't this exactly what aGPS is? One or more data points outside of satellite data?

I don’t think that’s what it is: with aGPS, the phone downloads data of where the satellites are. That allows the phone to accelerate its ability to lock onto GPS satellites.

Triangulation based on cell phone tower location is orthogonal to aGPS. The original iPhone didn’t have a GPS receiver and didn’t use aGPS, so it used the location of the towers as a crude way to figure out its location.

The triangulation + 2 satellites examples could be (but doesn’t have to be) a hybrid of the 2:

Use old school triangularion as one of the location estimates and use 2 satellites as further location estimates.

And then, orthogonally and optionally, you could use aGPS to accelerate finding additional satellites.

I understand a-gps from an end user pov. I don't understand how and when such data is retransmitted to the carrier. Carriers shouldn't have access to my gps data.
A cell tower receives a request from a particular phone in range and sends the nearest GPS sattelites for the phone to try first, cutting down the first GPS fix to seconds. The carrier has a list of IMEI that requested AGPS data for each tower, it's only metadata, the phone doesn't get the data.

This is my understanding, I'm not entirely sure about the first part.

IIRC, it's not exactly like the device detects you're in an emergency call, finds its GPS coordinates, and then sends the GPS coordinates along with the call initiation. You want to initiate the call, regardless of the status of finding the GPS location.

I'm greatly simplifying, but you can think of it like I'm making any phone call, it's just I dial 911. This does set some special in-band signalling, that I'm dialling sos, and set's bits that say this is an emergency connection, so retain it over non-emergency calls.

There is then some special routing that takes place, so that based on general location, you get routed to the correct 911 center.

Then, the network has a sort of API, that lets the 911 center make an API call, requesting the current GPS coordinates. This can take time, as you might not be able to pick up satellites, or use other sources. then think of something like a kidnapping, you might need to be able to track a moving target, so this process can be repeated and updated or more accurate coordinates can be received.

And that special signalling is part of what allows the emergency call to be routed over a different provider? Sometimes I have no network strength and my phone displays "emergency calls only".
And how is that API call performed? To whom? To my device, via a specially exposed service? Or is it part of gsm/umts/lte specs, and every packet I send back to my carrier contains my gps data?