Skip to content

External GPS โ€‹

Connect external GPS receivers to your mobile device to achieve higher GPS accuracy of your survey with Mergin Maps mobile app.

There are several extra position variables that can be useful to record during the survey with external GPS, such as the GPS antenna height, GPS device name as well as metrics like horizontal, vertical or position dilution of precision (HDOP, VDOP, PDOP).

Note that external GPS devices usually return orthometric heights (ellipsoid with the geoid separation applied). The altitude and geoid separation in the GPS info panel in the mobile app is displayed as reported by the external GPS.

Before you start:

  • Follow the manufacturer's setup instructions. You should continue only when you are sure that the device is working and sending data.
  • Make sure that your mobile device offers the functionality to pair with an external GPS device and that it communicates through a standard interface.

GPS and GNSS terminology

The term GPS, which stands for the Global Positioning System, is used in the mobile app and in this documentation in a broad sense as a synonym of the global navigation satellite systems (GNSS). We are aware that it is not exactly correct, but GPS is commonly used and understood in this context. If you have a device that can receive signals from other GNSS (such as BeiDou, Galileo, GLONASS), the mobile app can use them as well.

GPS antenna height โ€‹

External GPS antenna is often used on a surveying pole. To obtain the correct ground elevation, it is necessary to subtract the height of the GPS sensor above the ground from the measured elevation.

The height of the GPS antenna can be set in the GPS settings in the mobile app.

If GPS antenna height is set to a non-zero value, it is also displayed next to the GPS accuracy.

GPS antenna height setup in Mergin Maps mobile app

TIP

GPS antenna height can be recorded during the survey by using the extra position variable @position_gps_antenna_height as a default value.

Connecting external GPS โ€‹

External GPS can be connected to the mobile app via Bluetooth or a Network provider. We recommend using one of these options as they provide more data, such as HDOP and fix quality (see position variables). Also, the mobile app will report which device is used and take care of reconnecting in case of lost connection.

If it is not possible to use these options, you can also set up a Mock location. However, some of the data reported by GPS may not be available.

External GPS receivers report some additional GPS data that are displayed in the GPS info panel.

GPS info from external GPS in Mergin Maps mobile app

Bluetooth connection (Android only) โ€‹

Connecting external GPS receivers via Bluetooth is available only on Android devices.

  1. Connect the GPS receiver to your mobile device via Bluetooth

  2. Open a project and navigate to the Manage GPS receivers option in Settings

  3. Here, you can see the currently used receiver. Tap on the Connect new receiver button. Select GPS receiver

  4. Select the Bluetooth connection type.

    You might be asked to pair your device during this process.

    Connect to Bluetooth GPS device

The mobile app will now use the external GPS receiver to display and record your position. In GPS info, you will see additional data as reported by the external GPS.

Network provider connection โ€‹

Connecting external GPS receivers using a network provider is available on both Android and iOS.

  1. Open a project and navigate to the Manage GPS receivers option in Settings

  2. Here, you can see the currently used receiver. Tap on the Connect new receiver button. Select GPS receiver

  3. On Android, select the Network (TCP, UDP) connection type. On iOS, this is the only direct connection type.

    Fill in the network connection details (IP Address and Port). You can also use a receiver nickname.

    Connect a GPS receiver using a network provider

The mobile app will now use the external GPS receiver to display and record your position. In GPS info, you will see additional data as reported by the external GPS.

Mock location โ€‹

It is strongly recommended to use the direct connection via Bluetooth (Android) or network provider (Android, iOS) in the mobile app. Mock location should only be used if these options are not available.

Android mock location setup โ€‹

Mock location and Internal (fused) GPS provider

When using an external GPS receiver on Android via mock location, we recommend using the Internal (fused) receiver option in GPS Settings as this will show if mocked location is detected in the GPS info panel.

External GPS can be connected and configured in Android to provide mock location using GPS apps (e.g. Bluetooth GPS or apps from specific GPS manufacturers) as a source of GPS signal. The mobile app and other apps in your device will get the GPS position from the external GPS.

NTRIP client and GPS corrections

GPS manufacturer's apps often provide a setup for a NTRIP client, through which you are able to receive GPS corrections and achieve centimetre level accuracy.

To enable Allow mock locations in Android:

  • enable Developer options, which are hidden by default:
    • On newer Android versions, go to Android Settings > About phone and scroll down to find the Build number. Tap the build number 7 times. A message appears with a count-down until you become a developer.
    • On older Android versions, the developer settings can be made visible under the Android Settings > Applications > Development.
  • Once you have the developers option enabled, go to System > Advanced > Developer options > Select mock location app and select your GPS app.

The mock location will be used by the mobile app automatically as if received from the internal receiver.

iOS mock location setup โ€‹

External GPS can be connected to your iOS device via Bluetooth. Depending on the GPS manufacturer, there may be a custom app, which then provides position to your iOS device. The mobile app sees this as an internal GPS receiver automatically, without additional configuration. The mobile app will report if an external GPS receiver is connected.

External GPS troubleshooting โ€‹

If you encounter issues with external GPS in the mobile app, make sure that:

  • your Bluetooth is turned on
  • GPS is paired with your mobile device
  • your GPS receiver is turned on, has battery and is sending data in NMEA format, which is readable by the mobile app
  • remove the device in the mobile app, and add it again from the mobile app

List of known supported GPS devices โ€‹

External GPS functionality depends on the manufacturer and on the specific model of your GPS device. These devices are currently known to work well:

ManufacturerModelAndroidiOS
ArduSimpleRTK Calibrated Surveyor Kit9yesno
ArduSimpleRTK Handheld Surveyor Kit9yesno
ArduSimpleRTK Portable Bluetooth Kit9yesno
Bad ElfGPS Proyesyes (mock location)
Bad ElfGPS Pro+yesyes (mock location)
Bad ElfGNSS Surveyoryesyes (mock location)
Bad ElfFlex Mini (standard or extreme)yesyes (mock location)
Bad ElfFlex (standard or extreme)yesyes (mock location)
CarlsonBrx71yes (mock location)unknown
CarlsonxML2 1yes (mock location)unknown
EmlidReach RX models2yesyes (mock location)
EmlidReach RS models3yesyes
EOSSkadi models11yesyes
EOSArrow models11yesyes
GarminGLO 2yesyes (mock location)
GeomaxZenith068yes (mock location)unknown
GeomaxZenith608yes (mock location)unknown
Juniper SystemsGeode GNS310yesyes (mock location)
LeicaLeica FLX1004yes (mock location)no
LeicaLeica FLX100 plus4yes (mock location)yes (mock location)**
LeicaLeica Zeno GG04plus4yes (mock location)yes (mock location)**
marXactUNI-GR1yesno
marXactUNI-GR2yesno
proNIVOPNR216yes (mock location)no
SingularXYZP17yesunknown
TrimbleTrimble Catalyst5yes (mock location)unknown
TrimbleTrimble R15yes (mock location)unknown
TrimbleTrimble R25yes (mock location)unknown
  • 1: Carlson Brx7, Carlson xML2 - through Carlson Layout which will set a mock location in Android.
  • 2: Emlid Reach RX - directly via Bluetooth connection on Android, mock connection on iOS. Emlid Flow app can set up NTRIP connection to receive corrections.
  • 3: Emlid Reach RS - series - directly via Bluetooth or network connection, has an internal NTRIP client to receive corrections set up via Emlid Flow.
  • 4: Leica FLX100, Leica FLX100 plus, Leica Zeno GG04plus - through the Leica Zeno Connect app on Android which also acts as a NTRIP client and sends the corrections to the device. The app will set a mock location in Android. It is also possible to connect directly via Bluetooth (even multiple phones can be connected at once), but if no phone has Zeno app running, there will be no corrections available. ** Leica Zeno Connect is also available on iOS. It is known to support Leica FLX100 plus and Leica Zeno GG04plus. However, on iOS, the vertical accuracy information is not transferred to the Mergin Maps mobile app through Leica Zeno Connect. The mobile app will not display the correct value of the vertical accuracy.
  • 5: Trimble R1, Trimble R2, Trimble Catalyst - through Trimble Mobile Manager app which also acts as a NTRIP client and sends the corrections to the device. The app will set a mock location in Android.
  • 6: proNIVO PNR21 - through Attenberger Connector app on Android.
  • 7: SingularXYZ P1 - the device uses a SIM Card that can be configured for NTRIP. It can be connected to the mobile app via Bluetooth (without using a mock location).
  • 8: Geomax Zenith06, Zenith60 - through Geomax X-PAD app on Android, using a GNSS Mock licence from Geomax and the Mock GNSS option in the app.
  • 9: ArduSimple kits - through GNSS Master app which also acts as a NTRIP client and sends the corrections to the device. Detailed steps can be found in the tutorial How to connect ArduSimple kit to Mergin Maps for centimetre-accurate mapping.
  • 10: Geode GNS3 - through the Geode Connect app on Android or iOS, which also acts as an NTRIP client and sends corrections to the device.
  • 11: EOS receivers - direct connection via network to EOS Tools Pro app that configures the receivers and sets up NTRIP corrections. Refer to EOS documentation to see how to set up TCP (network) connection.

Did you use a GPS that is not in this list? Share your experiences with us!