RTK GNSS / GPS Backpack for €100, With 10cm Accuracy
by Big_OO in Circuits > Sensors
279 Views, 3 Favorites, 0 Comments
RTK GNSS / GPS Backpack for €100, With 10cm Accuracy
Budget
Professional RTK, for engineers that build infrastructure, cost €10.000+. Cheaper alternatives cost €1.000+, as used by farmers to autosteer in precision farming. Ardusimple has affordable components, but we have a very limited budget. For school projects or study, we want to experiment with a €100 budget. Our goal is to draw lines that match the outlines of objects
Supplies
- free NTRIP server account, or a friendly base station owner that allows you to connect
- RTK GNSS module
- GNSS antenna L1 + L5 [standard patch antenna for use in cars have a magnet to attach it]
- steel metal plate [as simple as a used paint can or oven tray]
- optional: more expensive GNSS antenna
- test software
- Laptop with WiFi connection
- Android phone [I use Samsung]
- RTK software for mobile phone
- casing made from what you have
- backpack if you want to record trails / paths
What Is RTK?
Before we begin, read some Wiki pages:
- Satellite navigation
- NMEA 0183
- Differential GPS
- EGNOS
- RTCM version 3
- Real-time kinematic positioning - RTK
- NTRIP
In simple terms, GNSS needs accurate timing in nanosecond range. Signals travel about 1 foot per nanosecond but get delays in our atmosfeer. Also signals get blocked or reflected, confusing the GNSS receiver. It uses algorithms to find the best possible solution, with the information it gets.
For RTK we need information in picoseconds, that is found in comparing the carrier waves with a nearby basestation. This can only be done if our RTK receiver has clear sky view. We need good signal strength, and correction information about each sat. The base station does not know what sats we can see, this is why the base station must see all sats from about 20° above the horizon all around. Every application you are building needs the components in the dotted rectangle.
With normal GNSS we can mark and find a Point-Of-Interest again, with RTK you can draw the outlines of a POI object.
The RTK GNSS Module: LC29H-DA
Budget RTK module:
I got this module from AliExpress, it cost about €50 and €60 with patch antenna and 3m cable. Look at the manufacture's website for the right version, this chipset series is aiming at the mass market, like automotive, consumer robotics and drones:
- LC29H-DA = RTK for rover
- LC29H-EA = RTK for fast moving rover, or dual module for heading function
- LC29H-BS = RTK for base station
We can do experiments with this, but remember it is neither practical nor useful. You may be wondering why: that's because RTK cannot be done in a classroom but must be done in a field or other type of open space. In the next steps we try to make it more portable. Also check that there is a free NTRIP server available near you [20-50 km], before you buy anything.
Software:
Register at the website and download the QGNSS software. It is a zip with portable software, that runs from a USB-drive or harddrive on a Windows laptop. If you use Linux, Apple or something else you must find an alternative.
NTRIP broadcaster / provider:
A NTRIP server is a base station that send its correction data to a NTRIP caster over the internet.
RTK2GO is a widely available service, that has data mainly in North America, Europe and Japan [click 'View All'].
EUREF Permanent GNSS Network is a public service in Europe, with data in most countries. Register to one of the broadcasters by filling in the form, and a few days later you receive your login details by email.
Look for other free or paid alternatives, if those stations are not within 20 [max 50] km from your location. This may go beyond your budget, ask if they offer a test account for students.
As a last option you can build your own basestation, for about €500. You need only one for the whole village, find local sponsors for the startup cost and a sponsor with a perfect roof for a permanent setup. Find a specialist for the right equipment and be a free NTRIP server.
USB-C / OTG:
Connecting your GNSS module with a USB-C to USB-C cable will probably not work, because it identifies itself as a charger cable. Using the USB-A port on your laptop or a OTG adapter will force the port into low-current mode.
Go testing!
Grab your laptop and go outside. Find yourself a table and connect with Wi-Fi, maybe create a hotspot from your mobile phone. Attache the antenna with the magnet to a metal plate and leave it in a fixed position. Plugin the GNSS antenna and connect the GNSS module with a USB cable. Start the QGNSS software and see the satellites it uses. If you have trouble connecting, the default is 115200 baud [on older GPS receivers this is 9600 baud] The signal strength should be higher than 25 db. You probably get something like this:
- A few GPS sats, and hopefully a 2D or 3D 'SPS Fix'. This standard Fix is 10-25 meter accurate
- More GNSS signals from GLONASS, Beidou/BDS, Galileo and other regional services
- L5/E5 signals, to improve accuracy to 5-10 meter
- Look at the signal strenght, and remove the antenna from the metal plate. It will drop about 5db on average. Put it back or even experiment with the best base plate for your patch antenna.
- If you have clear view to the equator, you might get one SBAS sat to get 2-5 meter accuracy. The Fix Mode will change to DGNSS, for Differential GNSS. Look at the Deviation Map and press the F button every few minutes to see your drift.
- In QGNSS, open the NTRIP Client menu. Give the server adres and Port. Port 2101 is the default for http, use port 2102 if your software supports https to encrypt your login password and location. Enter your username and password, and then update NTRIP source table.
- View the mount point details and select the closest base station. If you connect you see the correction data streaming in. Click the monitor button in the NTRIP Client window, you should see updates [in my case every 2 seconds, this is fine because correction data is valid for 10-30 seconds]
- For RTK to work smooth you need approximately 40 sats in view, of which 25 sats with a minimum 40 dB signal. This is the main reason you have to be in an open field. After several minutes you will get a RTK Float with an accuracy of 1-5 meter.
- If all works well, you will get an RTK Fixed location with 10 cm accuracy. We do not expect millimeter accuracy what you get from professional equipment. In the deviation map screenshot above, you don't see all the green dots because they are all on top of each other.
- take a picture of the settings and mount point name.
High precision demo on YouTube.
First results:
Now we know it is working, but how to use it in an application? We need some way of recording the location measurements and have some LED light or display to tell us what the Fix Mode of the GNSS is.
Building a Portable Device
Budget:
We have some money left, but if we make it fancy, we will get over €100 very fast. I got the HA-901A Helix antenna, not the first choice for RTK. RTK usually uses high precision ceramic patch antennas with a well-designed ground plate. The helix antenna is a bit easier for me to use in a self-build, and good enough for 10cm accuracy. If you are building a drone with this, it is also much less weight.
Backpack:
To receive quality signals, our body must not block the sky view. This is why most professional packs have a long pole or stand overhead. With a 100cm stick inserted in a standard backback we can do something similar. I used 40mm piping with an insulation role to protect the GNSS PCB.
Android phone:
The software SW Maps - GIS & Data Collector works perfect on any android phone. No need to do "Dev. opt." or "MOCK location", it connects directly to a USB/serial device. Choice "SparkFun RTK" device settings and connect. Now we get the extra menu option "NTRIP Client", use the same settings as the laptop test.
Test recording a track and try to walk the same pattern again. A parking area will help you with the lines on the ground. The app has many features to explore.
Height:
We are doing some basic mapping and POI collection. If you are on a beach, you might expect a height of “0” at sea level, and if you are on top of a mountain you expect the height you find on the topo map. Things are a bit more complex, so read about ellipsoid, geoid, gravity and mean sea level. Software with the right parameters can convert your local elevation to local standards. Your software also needs the calibrated height of the antenna compared to the ground level. We are only using the lat/long in this experiment and ignore height.
Continental drift:
Europe is drifting about 2 cm per year, compared to GNSS coordinates in WGS84. This is why Europe uses ETRS89 for high accuracy mapping. This conversion is done in the software you get with professional equipment. For our experiment we just ignore this.
Project Usage
- Go hiking or biking in your area and do recordings with it. Contribute to projects like openstreetmap.
- Draw a map of the campground or park, including all objects
- You can study spots in nature, like finding a specific plant or rock again.
- Build your own robot lawnmower, that has GNSS geofencing or even RTK heading to make perfect straight lanes
- Precision drone landing, or even RTK heading to find out the exact direction of the onboard camera
- use a ESP32 to make more complex applications with build-in NTRIP client
Post pictures of the things you are doing with budget RTK.