Centimeter Precision GPS/GNSS - RTK Explained

Introduction to centimeter level GPS/GNSS

Think about the GPS/GNSS receiver in your mobile phone or in your car: this is what we call a Standard GPS (or GNSS*) receiver. Standard GNSS receivers available in the market today, have an accuracy between 2 and 10 meters, and only in outdoor conditions. This accuracy depends on the product quality and if the device is used with perfect view of the sky or not. Under perfect conditions, the best you can achieve is an absolute accuracy of around 2 meters.

*GNSS stands for Global Navigation Systems, and it’s a word to include not only GPS but also other satellite based positioning systems like GPS, GLONASS, BEIDOU, Galileo, QZSS…

Interestingly, if we take 2 GNSS receivers and place next to each other in an open field, both will have the same 2 meters error, and in the same direction! This allows us to calculate the GNSS error, and also calculate with 1 centimeter accuracy the relative distance between them. So we still have an absolute error of 2 meters, but a relative accuracy of just 1 centimeter.

Imagine now we install one of the two GNSS receivers in a known location, with 1 cm error. We now have both absolute accuracy of 1 centimeter and relative accuracy of 1 centimeter in the second unit! Check out this very good 2 minutes video introduction to centimeter position from u-blox.

But this technique is not new. This is a very old technology called Differential GNSS or RTK GNSS (Real-Time Kinematic), and since 20 years allows civil applications to have 1 centimeter accuracy (RTK position). In RTK wording, the fixed unit is called “Base Station” and the moving unit is called “Rover”.

Someone: “So what is new? I also heard it’s a very expensive technology, and that you need to receive a training to use it right?”
ArduSimple: Not anymore :). At ArduSimple we try to make GNSS RTK technology simple, affordable and accessible to everyone. With a series of starter kits, tutorials and OEM products, we allow our customers to:

  • Test the technology and believe it is possible to achieve centimeter-level precision at affordable cost.
  • Accelerate their projects and products, thanks to our plug and play development boards and starter kits.
  • Create products and solutions, thanks to our support, turnkey services and pre-configured OEM products.

So how can I start?

The GNSS RTK receiver

First we need a GNSS receiver that can calculate RTK positions, like simpleRTK2B board. A standard GNSS receiver doesn’t have enough calculation power for RTK.

Second we need a very good GNSS antenna, like simpleANT2B. We cannot use a traditional cheap GNSS antenna, because we need to be in the best possible conditions, so we can really measure the GNSS errors. Additionally, we need to forget about using the RTK GNSS in our pocket or next to the window: RTK GNSS only works with open sky view. Installation of the antenna also becomes an important topic. We recommend having a look at our RTK GNSS antennas installation guide.

Now that we know the 2 basic elements of an RTK receiver, you also know the reason why we launched our Basic Starter Kit:

simpleRTK2B Basic Starter Kit IP67

But actually, we will need 2 sets of RTK receiver + RTK antenna, so we can set up a “Base Station” and a “Rover”. This brings us to the topic of RTK corrections.

RTK corrections

RTK corrections are the information sent by the “Base Station” to the “Rover”, so the “Rover” can calculate its RTK position. The language/protocol used to send this information is called RTCM. In order to calculate this RTK position, both receivers needs to see more or less the same satellites. For this reason the RTCM corrections are only valid up to a distance of 35km from the Base Station (some people say 25km, some people 50km, the exact number will depend on the antenna and receiver quality). It is also useful to know, that the corrections from one base station can be used by as many rovers as possible, as long as they are within this 35km range from the Base Station. This would be a multirover setup.

What happens when you go beyond this 35km from the base station? That it’s not possible to have 1 centimeter accuracy anymore, and accuracy degrades very fast to standard 2 meters.

RTCM corrections are usually sent via a serial port, one time per second is enough. For units which are very close to each other, we can use cables to connect them, but to cover longer distances we will need a wireless serial communication. For this reason we added a socket (we call it XBee socket) to our RTK receivers, so adding cable or wired communication between base and rover would be an almost plug-and-play task. 

To make it even simpler, we developed a few starter kits to test this setup:

simpleRTK2B Starter Kit LR IP67

MR and LR radio links need RF line of sight between base and rover in order to work. Have a look at our post about visual line of sight vs RF line of sight to understand this concept.

If you want to have multiple base stations to cover a larger area, or have problems to guarantee line-of-sight between the base and the rovers, the above point to multi-point radio communication is not an option for you. In this case, or if you just happen to have IP access available in both base and rover locations (internet or local network), RTK corrections can also be sent over IP communication.

What is NTRIP?

NTRIP is a language/protocol to distribute RTK corrections over internet/local network data IP packets. This allows to expand RTK networks with infinite bases and infinite rovers. A network with several NTRIP devices it’s called a NTRIP network. There are 3 possible elements in a NTRIP network:

  • NTRIP caster. It’s a server that accepts connections from “Rovers”.
  • NTRIP server. It’s a single physical RTK base station. It’s role is to send RTK corrections (RTCM corrections) to a NTRIP Caster, so the Caster can distribute them to other clients. In networks with only one base station, it’s quite common to have an NTRIP server+caster together. In this case only the caster function is configured.
  • NTRIP client. An RTK receiver that wants to receive RTCM corrections. RTK Rovers are NTRIP clients.

NTRIP network

Our simpleRTK2B boards don’t have IP interfaces (ethernet, wifi, etc) and don’t understand NTRIP protocol. They need someone outside to convert from NTRIP to RTCM and viceversa. For this reason we developed a series of accessories to enable NTRIP in our boards:

  • Bluetooth: connect your simpleRTK2B board to your mobile phone via bluetooth. Your phone can now act as NTRIP client, server or caster

NTRIP Bluetooth

  • WiFi: you have a WiFi network available in your area, plug the WiFi NTRIP Master accessory and use your board as “NTRIP client”, “NTRIP server” or “NTRIP server+caster”.


  • 4G NTRIP Client: let your simpleRTK2B board become an NTRIP client anywhere where there is cell coverage.


Alternatively you can also connect your simpleRTK2B board to a PC or mobile phone via USB and use an application in your PC or mobile phone to do this conversion. Check out our tutorial to learn how to connect to a NTRIP caster.Wh

RTK correction services

In some countries, the local authorities have already installed a network of base stations with their corresponding NTRIP servers, and they offer access to an NTRIP caster for free with almost national coverage. In these cases, usually only a basic registration process is required.

There is also the www.rtk2go.com community of users that share for free their base stations online, without quality of service. You can check the list here: http://monitor.use-snip.com/?hostUrl=rtk2go.com&port=2101

If you are fortunate to have a RTK correction service in your area, you are one of the lucky persons that needs minimum setup to use RTK. You only need our Basic Starter Kit and a PC and connect to one of the above NTRIP Casters, following our tutorial on how to connect to a NTRIP caster.

There are also paid RTK correction services, in some countries at reasonable prices, in some others at very high price.

Receivers with integrated RTK-SSR corrections

Base-Rover setups and traditional RTK correction services (also called OSR) have a limitation that you need a base station at maximum 35km distance from the rover. This is also why it’s so expensive to offer a RTK correction service with a large and good coverage. There is an alternative technology for calculation of real time RTK position that removes this limitation and still allows to have 2 to 4 centimeters accuracy in all coverage area. It is called SSR technology (Space State Representations).

Traditionally having access to this technology was complex and only available for large companies buying thousands of units. For this reason at ArduSimple we decided to launch simpleSSR receiver to make this technology available to everyone: An accessory for simpleRTK2B boards which integrates SSR correction services.

simpleSSR accessories remove the hassle of installing a base station or getting a contract for an RTK correction service, and enable literally plug and play RTK: just power the RTK receiver with simpleSSR accessory, wait 1-2 minutes and enjoy centimeter level accuracy in all the coverage area.

We hope this has helped you understand better what we do and what you need to start using RTK. If you want to read more, you might be interested in checking out our tutorials, or our Q&A forum. If you couldn’t find what you were looking for, and you still have any questions, do not hesitate to contact us, we always answer!