Thursday, November 12, 2020

How I use my phone as a GPS for hiking and backpacking


Update 1 (May 2021): I added information for newer phones and Android 11.

Update 2 (December 2023): Recent Android updates have removed Locus's ability to turn off the GPS. While the other advice still helps save battery life (especially recording track points at long intervals), GPS auto-off is no longer available.

For the last few years, I've used my Android phone as a GPS on backpacking trips. With the right (cheap) app and a few key settings, I can record tracks and use as little as 1% battery life per hour in GPS mode.

There are many ways to do this, but this post describes one that works for me. Here are the general principles:

  1. Avoid turning the screen on. Screen time uses up your battery no matter what.
  2. Avoid keeping a GPS lock. The app I recommend only checks the GPS periodically.
  3. Turn off cell and wifi scanning. Scanning for signals -- especially if they are weak or non-existent -- eats a lot of battery life.
The steps below show how to do this for one particular app and phone combo. You can use these ideas to generalize to any Android phone.

Phone and app requirements

Phone: The method I describe here requires an Android phone (the app I describe isn't available for iPhones).

The most important feature of a phone, for GPS purposes, is good battery life. How do you know how good a phone's battery life is? The simplest way to tell is to look up the battery's capacity in milliamp-hours, usually abbreviated mAh. A bigger number means more juice to run your phone, and so longer battery life.

My Google Pixel 5 has a 3800 mAh battery -- fairly decent for a high-end phone. My older, super-cheap Samsung had a 3300 mAh battery. The longest-lasting Android phones (at this time) have 5000 mAh batteries! In general, you should read reviews and avoid anything below about 3000 mAh.

Other features are generally not important, and in fact the big flashy flagship models can be bad choices due to high battery use and giant screens. Here are some suggestions anyhow. Big screens use more energy, so smaller screens are better. A 5-inch screen is great if you can find it, but almost everything is 6 inches. This is another reason I use a Pixel 5: It's not a giant tablet-sized phone.

The specific version of Android that you're running really doesn't matter (especially because you'll be disabling some of the fancier features in a later step anyhow). My old phone ran the almost-antique Android 6.0.1, while my new one runs the cutting-edge Android 11. They both work just fine.

App: I use Locus Map Pro (v. 3.51 currently), which is by far the best GPS app I've found. It has amazing features, customizability, and battery life conservation. Here are some specific reasons why I love Locus:
  • Power conservation: Maintaining a GPS lock can really drain your battery, and Locus has some really nice settings to help save battery life.
  • Offline maps: Locus lets you download maps for offline use, which lets you turn off your phone's radio entirely, saving a ton of battery life.
  • Great customizability: Besides everything above, Locus lets you set up the app in exactly the way you want, and even save and reload different groups of presets for different activities.

Setting up Locus

Out of the box, Locus Map Pro eats your batteries as much as any other GPS app. You'll need to change some settings in Locus Map Pro before it really starts to shine. Here are the most important ones:

1. Set up GPS auto-off

Important: This no longer works as of Android 13. I'm keeping this section here for reference, but due to the Android changes this setting has disappeared from Locus. Steps 2 and 3 still work.

How: Start at the "Hamburger menu" --> Settings --> GPS & sensors --> GPS auto-off. Set these options:
  • Tap the switch to enable the GPS auto-off setting.
  • GPS update interval: 60 seconds or more. I use 90 seconds.
  • Min. accuracy: 300 feet or more.
  • Max. search time: 60 seconds or less.
  • Keep enabled when screen is on: See below for a discussion.


What it does: GPS auto-off keeps the GPS turned off most of the time. Specifically, Locus only turns the GPS on once every 90 seconds (or however many seconds you set in the "GPS update interval" option). The GPS gets a lock, reports your position to Locus, and then goes inactive again for 90 more seconds. This is much better than the default setting, where your GPS is kept on constantly.

The key setting here is "GPS update interval". The larger you can make this interval, the better. The trade-off is that Locus can't record your position more than once per update interval, so longer intervals will make for jagged, less smooth tracks. This is fine for most backpacking uses, since you only move around 100-200 feet per minute (about 1.5 - 2.5 miles per hour). I find that 90 seconds is a nice compromise.

"Min. accuracy" is a sort of failsafe: If the GPS can't get a good lock, it also turns off. Similarly, "Max. search time" is the amount of time the GPS is allowed to search for a lock before it gives up.

"Keep enabled when screen is on" is a setting that you'll need to decide on your own. The name is a bit misleading.
  • If you check "Keep enabled", then GPS auto-off stays enabled when the screen is on. That is, the GPS will only turn on to get your location once per 90 seconds.
  • If you uncheck "Keep enabled", then when you're actively using Locus (in particular, when the screen is turned on), then the GPS maintains a lock. This can be handy because it guarantees that you see your current, accurate location when you're looking at the screen -- and the energy-saving auto-off feature keeps working when the screen is off and the phone is in your pocket. The downside here is that if you turn the screen on frequently, the GPS will be on more often, and Locus will eat up your battery that much faster.

2. Set up better track recording settings

These settings are available for Locus Pro users only. It's less important than the GPS auto-off settings above. (But as of Android 13, with GPS auto-off being removed, these are the best ways to save battery life.)

How: Start at the "Hamburger menu" --> Track recording. Tap the pencil (edit) button to the right of this menu. Choose "Add new profile", choose "Hiking", and scroll down to the Parameters section. Set these values:
  • Distance interval: At least 200 feet.
  • Time interval: 60 seconds.
What it does: This is another place where you stop Locus's tendency to check the GPS too often. Every time Locus tries to record a point on a track that you're recording, it also tries to check the GPS. The "GPS auto-off" settings above stop the GPS check from happening. By setting this distance and time interval, you stop Locus from even waking up to try to check the GPS. This has much less of an effect, but it still helps.

In addition, if you let the GPS maintain a lock when the screen is on (see "Keep enabled when screen is on", above), then the Time interval in your track recording settings will still limit how often a point gets recorded. So, you could make these intervals much shorter if you want really smooth track recording when you're actively watching the screen (such as for off-trail navigation).

3. Other GPS settings to double-check

Here are some settings in the GPS & sensors menu that you can leave at their defaults for best battery life. Here is what those should be:
  • Disable when app is hidden: On.
  • GPS ON for track recording: Off. This is a poorly named setting. If you were to turn this on, the GPS would maintain a lock even if you have paused track recording, which wastes energy for no purpose.

Setting up your phone for GPS use

The phone also needs to be set up just right to get optimal GPS usage. I have to go through this process every time I want to use the phone as a GPS, and undo each of these settings when I want to go back to normal phone usage.

1. Put the phone in Airplane Mode

How: Generally, swipe down from the top and tap an airplane symbol (but this can vary a bit between Android versions).

What it does: This turns off your phone's cellular and wifi radios, which will save a lot of energy. If you're hiking in the backcountry, you probably won't have reliable cell nor wifi service. Your phone would spend a lot of energy searching for signals. By going into airplane mode, you stop the phone from even trying to search. If you need cell service for a minute, just exit airplane mode temporarily.

2. Turn off power saving features

This is counterintuitive, but necessary to let Locus do its thing.

How: There are two key things to do:
  • Turn off power saving mode. On my phone, I do this by swiping down from the top and tapping "Battery Saver", if necessary choosing "Off" (rather than "Mid" or "Max").
  • Exempt Locus from battery monitoring. This can be a bit of an ordeal to figure out. On my phone (with Android 11), here's how I do this:
    • Swipe down from the top and tap the gear icon to enter the settings app.
    • Choose "Apps & Notifications", then "App Info".
    • Scroll to find Locus Map Pro and select it.
    • Under "Advanced", tap "Battery".
    • Tap "Battery Optimization" and then choose "All Apps" near the top.
    • Find Locus Map Pro and choose it.
    • Select "Don't optimize" in the pop-up and save the setting.
What these do: Modern phones are really smart about power saving. In particular, they will put apps to sleep if they don't look like they are doing much (like, say, sitting in the background recording your track). They will also kill apps that are using too much power (like, say, accessing the GPS). Locus can fall into either of these categories, and the two items above stop the two problems I just listed from happening.

3. Possibly turn off the screen lock

If your track recording seems to just switch off entirely -- you're recording no points at all -- turning off your screen lock might fix it. This also seems to vary between devices. If your screen turns off and locks, the system will disable GPS access, even if you've followed all of the steps above. The solution is to stop the screen from locking.

Another way to achieve this is to enable Google Smart Lock, and let it keep the phone unlocked when it's being carried. This isn't 100% reliable, but it can make things a bit easier on you.

Now you're ready to record a low-battery track

Here's what I do when I'm hiking and want to record a track: First, make sure you've done everything listed above.

In Locus, tap the Hamburger Menu --> Track recording. Make sure your custom "Hiking" mode is selected, then tap the green "Play" (start recording) button.

Put the phone away and don't look at it again! Every time you turn on the screen for any reason, you'll use a bit more battery power.

For me, this uses up around 1% of my battery life per hour. I can stay lower than that if I rarely look at the track, don't record new points, and otherwise avoid things that turn the screen on. I can end up around 2% per hour if I use GPS features like recording points, review past points, or (gasp!) use the phone for more typical phone purposes. On a recent trip with great GPS conditions (clear skies, little tree cover), I still had 100% battery life after 2.5 hours and 6 miles of hiking!