Skip to content

Commit 7bac895

Browse files
committed
Update corrections documentation
1 parent 91e2952 commit 7bac895

File tree

3 files changed

+63
-162
lines changed

3 files changed

+63
-162
lines changed

docs/correction_sources.md

Lines changed: 47 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,18 +6,54 @@ Torch: ![Feature Supported](img/Icons/GreenDot.png)
66

77
*RTK Corrections Priorities Menu*
88

9-
To achieve an RTK Fix, SparkFun RTK products must be provided with a [correction source](https://docs.sparkfun.com/SparkFun_RTK_Everywhere_Firmware/correction_sources/). An RTK device can obtain corrections from a variety of sources. Below is the list of possible sources (not all platforms support all sources) and their default priorities:
9+
To get millimeter accuracy we need to provide the RTK unit with correction values. Corrections, often called RTCM, help the RTK unit refine its position calculations. RTCM (Radio Technical Commission for Maritime Services) can be obtained from a variety of sources but they fall into three buckets: Commercial, Public, and Civilian Reference Stations.
1010

11-
* Bluetooth
12-
* IP (PointPerfect/MQTT)
13-
* TCP (NTRIP)
14-
* L-Band
15-
* External Radio
16-
* LoRa Radio
17-
* ESP-Now
11+
## Commercial Reference Networks
1812

19-
The *Corrections Sources* menu allows a user to specify which correction source should be given priority. For example, if corrections are provided over Bluetooth and L-Band simultaneously, the corrections from L-Band will be blocked because the Bluetooth source has a higher priority. This prevents the RTK engine from receiving potentially mixed correction signals.
13+
These companies set up a large number of reference stations that cover entire regions and countries, but charge a monthly fee. They are often easy to use but can be expensive.
14+
15+
* [PointPerfect](https://docs.sparkfun.com/SparkFun_RTK_Everywhere_Firmware/quickstart-torch/#pointperfect-corrections) ($8/month) - US, EU, as well as parts of Australia, Brazil, and South Korea. Note: This is an SSR service.
16+
* [PointOneNav](https://app.pointonenav.com/trial?src=sparkfun) ($50/month) - US, EU, Australia, South Korea
17+
* [Skylark](https://www.swiftnav.com/skylark) ($29 to $69/month) - US, EU, Japan, Australia
18+
* [SensorCloud RTK](https://rtk.sensorcloud.com/pricing/) ($100/month) partial US, EU
19+
* [Premium Positioning](https://www.premium-positioning.com) (~$315/month) partial EU
20+
* [KeyNetGPS](https://www.keypre.com/KeynetGPS) ($375/month) North Eastern US
21+
* [Hexagon/Leica](https://hxgnsmartnet.com/en-US) ($500/month) - partial US, EU
22+
23+
## Public Reference Stations
24+
25+
![Wisconsin network of CORS](<img/Corrections/SparkFun NTRIP 7 - Wisconsin Map.png>)
26+
27+
*State Wide Network of Continuously Operating Reference Stations (CORS)*
28+
29+
Be sure to check if your state or country provides corrections for free. Many do! Currently, there are 21 states in the USA that provide this for free as a department of transportation service. Search ‘Wisconsin CORS’ as an example. Similarly, in France, check out [CentipedeRTK](https://docs.centipede.fr/). There are several public networks across the globe, be sure to google around!
30+
31+
## Civilian Reference Stations
32+
33+
![SparkFun Base Station Enclosure](img/Corrections/Roof_Enclosure.jpg)
34+
35+
*The base station at SparkFun*
36+
37+
You can set up your own correction source. This is done with a 2nd GNSS receiver that is stationary, often called a Base Station. There is just the one-time upfront cost of the Base Station hardware. See the [Creating a Permanent Base](https://docs.sparkfun.com/SparkFun_RTK_Everywhere_Firmware/permanent_base/) document for more information.
38+
39+
## OSR vs SSR
40+
41+
Not all companies providing correction services use the same type of corrections. There are two types: OSR and SSR.
42+
43+
![Wisconsin network of CORS](<img/Corrections/SparkFun NTRIP 7 - Wisconsin Map.png>)
44+
45+
*State Wide Network of Continuously Operating Reference Stations (CORS)*
46+
47+
Observation Space Representation (OSR) is the classic type of corrections network. This is a collection of base stations located across a geographic area. Corrections coming from this type of network provide the highest RTK accuracy (14mm or less is common when located within 10km of a base station) with the minimum convergence time (the time you have to wait before the GNSS receiver can achieve RTK Fix). Normal convergence time for an OSR is a few seconds. However, because a CORS has to be placed every few 10km, these type of networks are expensive to install and maintain. An OSR network is prone to holes or gaps in the network where a base station is not sufficiently close to maintain RTK Fix. Imagine an autonomous semi-trailer truck driving down a highway; an OSR network is extremely difficult to setup that has full coverage needed for highly kinetic applications.
48+
49+
[PointOne Nav](https://app.pointonenav.com/trial?src=sparkfun), and [Skylark Nx RTK](https://www.swiftnav.com/products/skylark) are examples of an OSR.
50+
51+
[![PointPerfect Coverage map including L-Band and IP delivery methods](<img/PointPerfect/SparkFun RTK Everywhere - PointPerfect Coverage Map Small.png>)](https://www.u-blox.com/en/pointperfect-service-coverage)
52+
53+
*PointPerfect Coverage map including L-Band and IP delivery methods*
54+
55+
State Space Representation (SSR) covers huge areas, sometimes entire continents. SSR combines the readings from a handful of base stations and creates a model for the region. This model extrapolates the needed corrections for a given area. These corrections are 'good enough' for many applications. Because SSR requires far fewer base stations, they are often a much lower-cost service. The RTK Fix accuracy is lower (20mm is possible but 40mm is common), and the convergence time increases considerably. Convergence time for an SSR can be 180 seconds or more.
56+
57+
The [PointPerfect](https://www.u-blox.com/en/pointperfect-service-coverage) and [Skylark Cx](https://www.swiftnav.com/products/skylark) are examples of an SSR.
2058

21-
![RTK Corrections Priorities Menu](<img/Terminal/SparkFun RTK Everywhere - Corrections Priorities Menu.png>)
2259

23-
In the serial terminal menu, pressing a letter will increase or decrease the position of a priority. For example, in the image above, pressing **D** will raise the `L-Band` priority above `TCP (NTRIP)`.

docs/menu_corrections_priorities.md

Lines changed: 15 additions & 150 deletions
Original file line numberDiff line numberDiff line change
@@ -1,160 +1,25 @@
11
# Corrections Priorities
22

3-
Torch: ![Feature Supported](img/Icons/GreenDot.png)
3+
Torch: ![Feature Supported](img/Icons/GreenDot.png)
44

5-
![Message rate configuration](<img/Terminal/SparkFun RTK Everywhere - Messages Menu.png>)
5+
![RTK Corrections Priorities Menu](<img/Terminal/SparkFun RTK Everywhere - Corrections Priorities Menu.png>)
66

7-
*The messages configuration menu*
7+
*RTK Corrections Priorities Menu*
88

9-
From this menu, a user can control the output of various NMEA, RTCM, and other messages. Any enabled message will be broadcast over Bluetooth *and* recorded to SD (if available).
9+
To achieve an RTK Fix, SparkFun RTK products must be provided with a correction source. An RTK device can obtain corrections from a variety of sources. Below is the list of possible sources (not all platforms support all sources) and their default priorities:
1010

11-
Because of the large number of configurations possible, we provide a few common settings:
11+
* Bluetooth
12+
* IP (PointPerfect/MQTT)
13+
* TCP (NTRIP)
14+
* L-Band
15+
* External Radio
16+
* LoRa Radio
17+
* ESP-Now
1218

13-
* Reset to Defaults
19+
The *Corrections Priorities* menu allows a user to specify which correction source should be given priority. For example, if corrections are provided through Bluetooth and L-Band simultaneously, the corrections from L-Band will be discarded because the Bluetooth source has a higher priority. This prevents the RTK engine from receiving potentially mixed correction signals.
1420

15-
RTCM can also be enabled in both Rover and Base modes.
21+
![RTK Corrections Priorities Menu](<img/Terminal/SparkFun RTK Everywhere - Corrections Priorities Menu.png>)
1622

17-
## Reset to Defaults
23+
In the serial terminal menu, pressing a letter will increase or decrease the position of a priority. For example, in the image above, pressing **D** will raise the `L-Band` priority above `TCP (NTRIP)`.
1824

19-
This will turn off all messages and enable the following messages:
20-
21-
* NMEA-GGA, NMEA-GSA, NMEA-GST, NMEA-GSV, NMEA-RMC
22-
23-
These five NMEA sentences are commonly used with SW Maps for general surveying.
24-
25-
## Individual Messages
26-
27-
![Configuring the NMEA messages](<img/Terminal/SparkFun RTK Everywhere - Messages Menu NMEA.png>)
28-
29-
*Configuring the NMEA messages*
30-
31-
There are a large number of messages supported (listed below). Each message sub-menu will present the user with the ability to set the message report rate.
32-
33-
Each message rate input controls which messages are disabled (0) and how often the message is reported (1 = one message reported per 1 fix, 5 = one report every 5 fixes). The message rate range is 0 to 20.
34-
35-
**Note:** The message report rate is the *number of fixes* between message reports. In the image above, with GSV set to 4, the NMEA GSV message will be produced once every 4 fixes. Because the device defaults to a 4Hz fix rate, the GSV message will appear once per second.
36-
37-
The following messages are supported for Bluetooth output and logging (if available):
38-
39-
<table class="table">
40-
<table>
41-
<COLGROUP><COL WIDTH=200><COL WIDTH=200><COL WIDTH=200></COLGROUP>
42-
<tr>
43-
<td>&#8226; NMEA-DTM</td>
44-
<td>&#8226; NMEA-GBS</td>
45-
<td>&#8226; NMEA-GGA</td>
46-
</tr>
47-
<tr>
48-
<td>&#8226; NMEA-GLL</td>
49-
<td>&#8226; NMEA-GNS</td>
50-
<td>&#8226; NMEA-GRS</td>
51-
</tr>
52-
<tr>
53-
<td>&#8226; NMEA-GSA</td>
54-
<td>&#8226; NMEA-GST</td>
55-
<td>&#8226; NMEA-GSV</td>
56-
</tr>
57-
<tr>
58-
<td>&#8226; NMEA-RMC</td>
59-
<td>&#8226; NMEA-ROT</td>
60-
<td>&#8226; NMEA-THS</td>
61-
</tr>
62-
<tr>
63-
<td>&#8226; NMEA-VTG</td>
64-
<td>&#8226; NMEA-ZDA</td>
65-
</tr>
66-
<tr>
67-
<td>&#8226; RTCM3x-1001</td>
68-
<td>&#8226; RTCM3x-1002</td>
69-
<td>&#8226; RTCM3x-1003</td>
70-
</tr>
71-
<tr>
72-
<td>&#8226; RTCM3x-1004</td>
73-
<td>&#8226; RTCM3x-1005</td>
74-
<td>&#8226; RTCM3x-1006</td>
75-
</tr>
76-
<tr>
77-
<td>&#8226; RTCM3x-1007</td>
78-
<td>&#8226; RTCM3x-1009</td>
79-
<td>&#8226; RTCM3x-1010</td>
80-
</tr>
81-
<tr>
82-
<td>&#8226; RTCM3x-1011</td>
83-
<td>&#8226; RTCM3x-1012</td>
84-
<td>&#8226; RTCM3x-1013</td>
85-
</tr>
86-
<tr>
87-
<td>&#8226; RTCM3x-1019</td>
88-
<td>&#8226; RTCM3x-1020</td>
89-
<td>&#8226; RTCM3x-1033</td>
90-
</tr>
91-
<tr>
92-
<td>&#8226; RTCM3x-1042</td>
93-
<td>&#8226; RTCM3x-1044</td>
94-
<td>&#8226; RTCM3x-1045</td>
95-
</tr>
96-
<tr>
97-
<td>&#8226; RTCM3x-1046</td>
98-
<td>&#8226; RTCM3x-1071</td>
99-
<td>&#8226; RTCM3x-1072</td>
100-
</tr>
101-
<tr>
102-
<td>&#8226; RTCM3x-1073</td>
103-
<td>&#8226; RTCM3x-1074</td>
104-
<td>&#8226; RTCM3x-1075</td>
105-
</tr>
106-
<tr>
107-
<td>&#8226; RTCM3x-1076</td>
108-
<td>&#8226; RTCM3x-1077</td>
109-
<td>&#8226; RTCM3x-1081</td>
110-
</tr>
111-
<tr>
112-
<td>&#8226; RTCM3x-1082</td>
113-
<td>&#8226; RTCM3x-1083</td>
114-
<td>&#8226; RTCM3x-1084</td>
115-
</tr>
116-
<tr>
117-
<td>&#8226; RTCM3x-1085</td>
118-
<td>&#8226; RTCM3x-1086</td>
119-
<td>&#8226; RTCM3x-1087</td>
120-
</tr>
121-
<tr>
122-
<td>&#8226; RTCM3x-1091</td>
123-
<td>&#8226; RTCM3x-1092</td>
124-
<td>&#8226; RTCM3x-1093</td>
125-
</tr>
126-
<tr>
127-
<td>&#8226; RTCM3x-1094</td>
128-
<td>&#8226; RTCM3x-1095</td>
129-
<td>&#8226; RTCM3x-1096</td>
130-
</tr>
131-
<tr>
132-
<td>&#8226; RTCM3x-1097</td>
133-
<td>&#8226; RTCM3x-1104</td>
134-
<td>&#8226; RTCM3x-1111</td>
135-
</tr>
136-
<tr>
137-
<td>&#8226; RTCM3x-1112</td>
138-
<td>&#8226; RTCM3x-1113</td>
139-
<td>&#8226; RTCM3x-1114</td>
140-
</tr>
141-
<tr>
142-
<td>&#8226; RTCM3x-1115</td>
143-
<td>&#8226; RTCM3x-1116</td>
144-
<td>&#8226; RTCM3x-1117</td>
145-
</tr>
146-
<tr>
147-
<td>&#8226; RTCM3x-1121</td>
148-
<td>&#8226; RTCM3x-1122</td>
149-
<td>&#8226; RTCM3x-1123</td>
150-
</tr>
151-
<tr>
152-
<td>&#8226; RTCM3x-1124</td>
153-
<td>&#8226; RTCM3x-1125</td>
154-
<td>&#8226; RTCM3x-1126</td>
155-
</tr>
156-
<tr>
157-
<td>&#8226; RTCM3x-1127</td>
158-
</tr>
159-
160-
</table></table>
25+
Please see [Correction Sources](correction_sources.md) for a description of where to obtain corrections.

docs/quickstart-torch.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -172,6 +172,6 @@ RTK Fix will be maintained as long as there is a clear view of the sky and corre
172172

173173
* High-precision GNSS works best with a clear view of the sky; it does not work indoors or near a window. GNSS performance is generally *not* affected by clouds or storms. Trees and buildings *can* degrade performance but usually only in very thick canopies or very near tall building walls. GNSS reception is very possible in dense urban centers with skyscrapers but high-precision RTK may be impossible.
174174

175-
* The location reported by the RTK device is the location of the antenna element; it's *not* the location of the pointy end of the stick. Lat and Long are fairly easy to obtain but if you're capturing altitude be sure to do additional reading on ARPs (antenna reference points) and how to account for the antenna height in your data collection software. Note: This rule does not apply when tilt compensation is activated. Go here for more information.
175+
* The location reported by the RTK device is the location of the antenna element; it's *not* the location of the pointy end of the stick. Lat and Long are fairly easy to obtain but if you're capturing altitude be sure to do additional reading on ARPs (antenna reference points) and how to account for the antenna height in your data collection software. The Torch ARP is [here](https://docs.sparkfun.com/SparkFun_RTK_Torch/hardware_overview/#antenna-reference-point). Note: This rule does not apply when tilt compensation is activated. See the [Tilt Compensation Menu](menu_tilt.md) for more information.
176176

177177
* An internet connection is required for most types of RTK. RTCM corrections can be transmitted over other types of connections (such as serial telemetry radios). See [Correction Transport](correction_transport.md) for more details.

0 commit comments

Comments
 (0)