The symptom
You're inside a steel narrowboat, a van with a metal roof, or a truck cab. Your phone shows no GPS position at all. Or — worse — it shows a perfectly confident position that turns out to be the last place you had a phone signal, sometimes days ago.
Step outside onto the towpath and it works within seconds.
The usual explanation is wrong
Everyone will tell you a steel hull blocks GPS. It's the obvious answer, and believing it stops you fixing the actual problem.
A steel hull attenuates GPS. It does not block it. Enough signal reaches the phone through windows, hatches, and the mushroom vents. We've tested this repeatedly inside a steel narrowboat — a fix is entirely possible from the cabin.
What's actually happening
Android has two different ways of working out where you are, and almost every app uses the wrong one for this situation.
The fused provider (what nearly every app uses)
Google's fused location provider blends GPS with wifi networks, phone masts and sensor data, then decides for itself whether powering up the GPS receiver is worth the battery drain. It works brilliantly in a city and it is the right default for most apps.
Inside a metal box it does something unhelpful: it weighs up the job, doesn't like the odds, runs out its time budget, and returns either nothing at all — or a cached position from the last place you had signal. That second one is genuinely dangerous, because nothing on screen tells you the position is old.
Raw GNSS (what actually works)
The alternative is to talk to the GPS chip directly, and simply wait longer. Under attenuation, time-to-first-fix is longer than the fused provider is prepared to allow — but it does arrive.
The measurement that settles it
Same handset, same spot in the cabin, minutes apart:
- An app using Android's standard location service: nothing at all, after a 15-second wait.
- GPSTest, which talks to the GPS chip directly: a fix in 3 to 5 seconds.
Same phone. Same antenna. Same steel box. A three-second fix rules out weak signal as the explanation — genuinely marginal reception takes minutes, not seconds. The receiver was never switched on.
What you can do about it right now, for free
This works regardless of which mapping app you use.
- Install GPSTest from the Play Store. It's free and it isn't trying to sell you anything.
- Open it inside the boat and leave it running for a minute or two.
- Watch the satellite count climb. It will usually get a fix.
The useful part: once GPSTest obtains a fix, that position lands in the phone's system location cache — so your other apps will often start working afterwards too. It's a workaround rather than a cure, but it costs nothing and it works today.
How to spot a stale position
This is the failure worth learning to recognise, because it looks like success.
Accuracy and age are two completely different things. A position can be accurate to five metres and still be twenty minutes old, from a mooring you left an hour ago. Most apps show you the accuracy and say nothing at all about the age.
Signs you're looking at a stale fix:
- The position is confident but doesn't move as you move.
- It matches somewhere you were earlier, often the last place with a phone signal.
- A recorded track comes out as a straight line between two distant points, rather than following your route.
That last one is worth remembering on its own: a track that's a straight line between two far-apart points is never a precision problem. No amount of smoothing fixes three points — there's nothing there to smooth. Check the age of the fix before you touch any accuracy setting.
This isn't only about boats
The same thing happens anywhere the sky view is poor enough to make the fused provider give up but not poor enough to actually prevent a fix:
- Vans and campers with metal roofs
- Truck cabs, especially with heated or metallised windscreens
- Deep valleys, dense forest and steep canyon walls
- Multi-storey car parks and under bridges
In every case the question to ask is the same: is the signal genuinely absent, or is my phone declining to look for it?
What ZoRove does about it
ZoRove talks to the GPS chip directly rather than going through the fused provider, and waits as long as a fix actually needs. It was tested in the cabin of a steel narrowboat and gets a position where the standard approach returned nothing at all.
It also shows the age of your fix alongside the accuracy, permanently, on the map — so a stale position announces itself instead of quietly misleading you. If a fix goes stale, the marker greys out rather than staying confidently wrong.
None of that requires you to stop using anything else. ZoRove imports and exports GPX free, in both directions, so routes and waypoints you've collected elsewhere come across and can go straight back out again.
Related
- Tracks & GPX — recording, saving and exporting your route
- Offline maps — for when there's no signal at all
- Troubleshooting — other things that go wrong, and why