How does my iPhone know where I am - even in flight mode?

I have an map app which which allows me to download maps of areas so I can use them abroad without using data.

The nice thing about this app is that it also shows me my location - even when I have data switched off. However if I’m in flight mode - even then it shows my location - actually with quite a lot accuracy. There’s a tracking feature and it faithfully shows my progress round every bend on a road in a car complete with altitude and speed readings. It also does this even when it has “no signal”. Bluetooth and wifi are both switched off.

I thought, ‘okay but it’s dead when I’m in a plane in the air on flight mode’. I opened the app on a flight from Madrid to London - I was 30,000 feet in the air travelling at 500mph and 40 miles from land. There it was showing me where a little arrow and displaying my altitude and and speed…

Here’s a screenshot:

Admittedly the location on the flight was staying motionless for long periods but I was still impressed.

How does it do this? If flight mode is on, or no signals are in the area, how does it locate me?

PS: the app is called Galileo Pro - in case anyone has specific knowledge.

GPS is passive, so maybe that stays on in flight mode (although getting a GPS fix inside a plane is quite surprising)

I assume GPS? Since that is receive-only, it shouldn’t be affected one way or the other by airplane mode.

From the Gaia GPS web page (a smartphone app I use while hiking/cycling):

So the capability has been there for quite a while.

Am I the only one more interested by the “Secret Nuclear Bunker” identified on the screenshot?!?

There isn’t enough space on the screen for the full title, which is “formerly secret nuclear bunker decommissioned in 1992 and now open to the public as a tourist attraction”.

The newest iOS, if you turn off stuff on the ‘swipe up’ display does not turn them off, just prevents them from establishing a connection (this discussion has been going on in hiking backpacking boards for a while, as it eats the battery). You have to go to settings to actually turn them off.

Heh, after posting it I noticed that was still marked and wondered when someone would spot it! I was there for a movie shoot…

Thanks for replies all, I hadn’t realised that phones were secretly communicating with satellites. I wonder if they continue to do that when there is a normal phone signal?

Smart phones have a remarkable number of receivers. And they use as much information as they can receive.

The GPS in phones is a bit feeble, and phones use information gleaned from timing of signals within a cell, and now from observing all nearby WiFi stations as well. Observing WiFi allows you to get a very fast fix, even when GPS is really struggling - such as inside buildings and in areas of high rise buildings - where you only see thin strips of sky. Keeping the capacity to passively listen for such location information, even when you don’t want to use WiFi, is going to be the reason Apple now don’t turn off the transceiver, but only disable trying to join networks. Which does make sense - to a point. But the battery drain just keeping these receivers running is not inconsiderable.

They don’t “communicate with” satellites–GPS is one way–receivers look for the flashing RF beacons from the satellites but don’t send any signals back to them. GPS and phone signal are two completely different systems and have no need to be interconnected–my Android phone has separate and independent switches for turning on or off Wi-Fi, Bluetooth, GPS, and cellular service in any combination. (When cellular service and Wi-Fi are on, it can use distance to cell towers and known Wi-Fi locations to supplement GPS data.)

This is a screencap from my Android phone with the cellular radio and Wi-Fi turned off and GPS turned on. I blacked out the coordinates, but when I plug the numbers in here the point of the “pin” in the map is in the front right corner of the house I’m in while I took the signal standing on the back deck–pretty much matching the 7 meter accuracy listed (and that discrepancy might even be from Google Maps.) I have no idea what the significance is for the different colors and shapes for the satellite markers.

From the user manual User Guide - MobiWIA :

Most phones don’t have Galileo capability, only the newest.

The most critical thing about getting a good fix is that you need 4 satellites minimum, and they need to be reasonably well spread across the sky. This tool is rather nice for that - I’ll be purchasing it for my iPhone now I know it exists :slight_smile:

What can happen if you leave Bluetooth enabled on an airplane.

It depends a bunch on the specifics.

Getting a GPS fix from a window seat on the equator side of the airplane is pretty reliable. Less so for inner seats, or when the equator is mostly ahead or behind the airplane and you’re near the other end.

There’s also a massive variation in the quality and sensitivity of various models of phone and tablet.

Sometimes it works slick. Other times it works not at all.

As a minor update, I was at the beach yesterday and did this again, and while the long/lat was still accurate, it gave my altitude as 27 meters below sea level…

That may be at least partly due to the difference between the geoid (the model of the Earth’s shape that GPS uses) and the actual local sea level. The Earth isn’t a perfect spheroid - variations in gravity mean the local sea level can be a few dozen metres above or below the geoid. Consumer GPS units usually apply a local offset to correct back to the map datum in a given area, but your phone might not do that.

FWIW here in the UK my iPhone usually reads 72 or 73 metres above sea level when I am in my garden, which exactly agrees with the height on the Ordnance Survey topo map. That implies that it does apply the correction, as IIRC the GPS geoid is about 11 metres off the OS datum around here.
As for the original question, I know older iPhones didn’t allow GPS to work when in flight mode, which was annoying as photos taken out of the window didn’t get geotagged. It’s been fixed now though.