SW Maps NTRIP Setup: Connect to RTK Corrections
Guide to connecting SW Maps to RTKdata via NTRIP on Android. Stream centimeter-level RTK corrections to any Bluetooth GNSS receiver. Free 30-day trial
SW Maps is a free Android GIS and mapping application that doubles as one of the best NTRIP clients available on mobile. It connects to external Bluetooth GNSS receivers such as the SparkFun RTK Facet, ArduSimple simpleRTK2B, and any u-blox ZED-F9P-based board. SW Maps streams RTK corrections from an NTRIP caster like RTKdata.com directly to your receiver, delivering centimeter-level accuracy for survey-grade field data collection.
Download: Google Play Store (free)
Requirements
Android phone or tablet with internet access (mobile data or Wi-Fi hotspot)
Bluetooth-capable GNSS receiver (SparkFun RTK Facet, ArduSimple, u-blox F9P board, etc.)
GNSS antenna with clear sky view (survey pole or tripod recommended)
Active RTKdata.com account with username and password
Don't have an RTKdata.com account yet? 👉 Start 30-day Free Trial or View Pricing
Step-by-step setup
Connect your Bluetooth GNSS receiver
Power on your GNSS receiver and enable Bluetooth on your Android phone.
Open SW Maps and tap the Bluetooth icon in the top toolbar (or go to Menu → Bluetooth GNSS).
Tap Scan to discover nearby devices. Select your receiver from the list.
Set the Instrument Model to match your hardware (e.g., "Generic RTK Receiver" or your specific model).
Set the Instrument Height to your pole or tripod height.
Tap Connect. The status bar should begin showing coordinates from the external receiver.
Phone GPS vs. External Receiver: After connecting, verify that coordinates come from your external receiver, not the phone's internal GPS. Phone GPS accuracy is typically 5–15 m. Your external receiver should show 1–3 m accuracy before corrections. If the accuracy indicator shows 10+ m, the app is still using the phone's internal GPS. Reconnect via Bluetooth GNSS and confirm the source has switched.
Enter RTKdata.com connection settings
Fill in the following fields:
Send NMEA GGA to Caster: Enabled (ON)
Host (domain):
rtk.rtkdata.comHost (IP fallback):
13.56.117.10Port:
2101Username / Password: From RTK Credentials in the internal dashboard (not website login)
Mountpoint (ALL CAPS):
AUTO(recommended) — orAUTO_WGS84,AUTO_ITRF2020,AUTO_ITRF2014
Host (domain):
eu.rtkdata.comHost (IP fallback):
3.73.41.96Port:
2101Username / Password: From RTK Credentials in the internal dashboard (not website login)
Mountpoint (ALL CAPS):
AUTO(recommended) — orAUTO_WGS84,AUTO_ITRF2020,AUTO_ITRF2014
Host (domain):
aus.rtkdata.comHost (IP fallback):
54.206.56.130Port:
2101Username / Password: From RTK Credentials in the internal dashboard (not website login)
Mountpoint (ALL CAPS):
AUTO(recommended) — orAUTO_WGS84,AUTO_ITRF2020,AUTO_ITRF2014
The Send NMEA GGA to Caster toggle must be ON. RTKdata.com uses your GGA position to generate corrections from the nearest Virtual Reference Station. Without GGA, the caster cannot compute corrections and you will remain stuck on FLOAT indefinitely.
Connect and verify RTK FIX
Tap Connect to start the NTRIP correction stream.
Watch the status bar at the top as the solution progresses: Autonomous → DGPS → Float → FIX.
Once you see RTK FIX, you have centimeter-level accuracy. This typically takes 10–60 seconds under clear sky.
How to verify RTK is working:
Solution type in the status bar reads FIX (not Float or Autonomous).
Horizontal accuracy drops to 0.01–0.02 m (1–2 cm).
Age of corrections stays below 5 seconds (visible in the NMEA data stream).
The NTRIP icon in the toolbar shows an active connection (no red X).
Troubleshooting
Position shows phone GPS (10+ m accuracy)
External receiver not connected
Go to Bluetooth GNSS, reconnect receiver, verify coordinates change
NTRIP connects but stays on FLOAT
GGA not sent to server
Enable Send NMEA GGA to Caster in the NTRIP profile
NTRIP status shows Connected, the byte counter is running (1083 B/s in one field case), but the fix type stays SINGLE
The caster accepted the login, so bytes arrive, but no usable GGA position is going back out. The antenna icon in the top bar appears red or crossed out. Common trigger: NTRIP was connected before the receiver had its own satellite lock, so there was no position for the GGA sentence to report.
Enable Send NMEA GGA to Caster in the NTRIP profile, go outdoors and wait for the receiver's own satellite lock before you connect NTRIP, then reconnect. SINGLE to FLOAT to FIX follows within 30 to 60 seconds under open sky.
NTRIP profile points at 13.56.117.10:2101 (raw IP)
The IP is only a fallback for when DNS is unavailable, not the normal entry point
Put the regional hostname in the host field (rtk.rtkdata.com, eu.rtkdata.com, aus.rtkdata.com). Port 2101 and mountpoint AUTO stay the same.
NTRIP profile is accepted but never produces a fix, while the website login works fine
Website login entered in the NTRIP profile. The NTRIP credentials are separate.
Use the RTK credentials from the dashboard. The NTRIP username starts with rtk and has its own password. See Account & Credentials.
"Connection refused" or timeout
Wrong host/port or no internet
Double-check hostname spelling and port 2101
Mountpoint error or "No data"
Mountpoint not uppercase
Enter AUTO in ALL CAPS, not auto or Auto
Corrections received but accuracy poor
Obstructed sky view
Move to open sky; avoid trees, buildings, overhead cover
Receiver pairs but no position data
Wrong protocol
Ensure NMEA output is enabled on the receiver over Bluetooth
Status bar shows RTK FIX but ΔH and ΔV read decimetres or metres (for example ΔH 1.0 m, ΔV 1.1 m)
ΔH and ΔV are not the receiver's accuracy. In the confirmed case they were the offset between the current position and a reference point in the project.
Read Horizontal Accuracy and Vertical Accuracy on the GNSS Status screen instead. With a clean FIX and a survey grade receiver these sit at 1 to 3 cm.
Looking for HRMS / VRMS and not finding them anywhere in the app
SW Maps has no separately labelled HRMS/VRMS fields. The same information appears as Horizontal Accuracy and Vertical Accuracy, derived from the receiver's NMEA output.
Use those two fields on the GNSS Status screen, and cross-check in the receiver's own configuration app if you need a second opinion.
Horizontal Accuracy 1.4 m / Vertical Accuracy 2.0 m although the app appears to be in RTK
Two causes seen in the same case: the receiver was not actually applying corrections at that moment ($GNRMC ending in ,F,V is a standalone position), and the accuracy fields fall back to an internal estimate when the receiver sends no GST sentence.
Confirm the fix state in the raw NMEA before recording ($GNGGA quality field, $GNRMC status), then enable GST output at 1 Hz on the receiver. Depending on the app version this may be exposed in the SW Maps instrument settings, otherwise use the receiver manufacturer's configuration app.
Accuracy sits at 5 to 15 cm with a stable FIX, and averaging 60 readings does not improve it
A constant offset, not measurement noise. Averaging only removes random noise. In the confirmed case the ceiling was the receiver itself: low cost modules with an integrated RTK engine and internal antenna report and deliver 5 to 15 cm even in FIX.
Average 5 to 10 epochs (more makes no difference), let the FIX settle for 30 to 60 seconds before recording, and check against a known control point. For 1 to 3 cm you need a survey grade receiver with a dedicated antenna.
Heights are consistently offset, or a single exported point stands out with Instrument Height 0.00 m
Pole or tripod height not entered before recording
Set the instrument height in SW Maps before collecting points. A zero or wrong value shifts the height of every affected record by exactly that amount.
Exported Elevation values sit tens of metres above the local map or LiDAR data, and the Ortho Height column is zero throughout the export
SW Maps writes the ellipsoidal height from the GGA sentence into Elevation. An Ortho Height of zero means no geoid model was applied at any point. RTKdata delivers ellipsoidal heights.
Apply the geoid model for your area (GEOID18 in the US, OSGM15 for ODN heights in the UK) in SW Maps or in post-processing. See Understanding Heights.
Vertical differs by a few centimetres from a published control height (0.12 ft against an NGS monument in one case)
Wrong or older geoid model, for example GEOID12B where the published value uses GEOID18
Select GEOID18 in SW Maps and in your desktop GIS. Compare the published ellipsoid height against the raw receiver height first: if those match, the residual is purely the geoid conversion.
Recorded points land about a metre off the real markers after moving data between SW Maps and QGIS (1.3 m in one case)
CRS mismatch on export or import. SW Maps works in geographic WGS 84 (EPSG:4326) while the layer was exported in a different CRS.
Use the same CRS and datum on both sides. In the confirmed case the offset disappeared entirely once the export CRS matched.
Everything is off by several centimetres to decimetres against official control points, in horizontal and vertical
National datum (MAGNA-SIRGAS, or ETRS89 based frames such as RDN2008) versus the global reference frame the corrections are delivered in, plus plate motion since the datum epoch
Apply a datum transformation, or run a localization (calibration) on two or more known points in your field or desktop software. See Coordinate Systems & Datums.
Unclear whether Apply Base Antenna PCO should be on or off
The option controls whether the base antenna phase center offset is applied to the solution
Leave it ON with RTKdata. The reference stations use calibrated antennas with known PCO values. Switching it off can add a small, avoidable vertical error.
"Connected" is not the same as "corrected". A Connected status and a moving byte counter only prove that the caster accepted your login and is pushing a stream. Whether those bytes can be applied depends on your GGA: the AUTO mountpoint routes corrections from the reference station nearest to the position your device reports back. If GGA never leaves the device, or if you opened the NTRIP connection before the receiver had its own satellite fix, the stream keeps flowing and the fix type stays SINGLE. Check both before changing anything else in the profile.
Tips for best results
Always confirm your position source. SW Maps defaults to phone GPS if no Bluetooth device is connected. Double-check before collecting data.
Save your NTRIP profile. The profile persists between sessions so you only configure credentials once.
Export data in GeoJSON, KML, CSV, or Shapefile format directly from the app.
Check satellite count. Tap the satellite icon to see tracking status. You need at least 10–12 satellites for reliable FIX.
If FIX drops repeatedly, check receiver firmware and ensure the antenna has a proper ground plane.
Related Guides
NTRIP & GGA Essentials: the reason Send NMEA GGA to Caster cannot be left off
SparkFun RTK Facet: receiver-side setup for one of the boards most often paired with SW Maps
ArduSimple simpleRTK2B / simpleRTK3B: board-side setup for ArduSimple hardware over Bluetooth
Lefebure NTRIP Client: the alternative Android client when you only need the NTRIP relay and mock location
QField / QGIS: pair SW Maps as the mock location provider with QField for QGIS-based data collection
Related Industry Solutions
Last updated
Was this helpful?