Skip to content

Commit

Permalink
Update docs
Browse files Browse the repository at this point in the history
  • Loading branch information
nseidle committed May 1, 2024
1 parent 0bf7add commit 3cf6e3b
Show file tree
Hide file tree
Showing 14 changed files with 214 additions and 175 deletions.
154 changes: 13 additions & 141 deletions docs/correction_sources.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,150 +2,22 @@

Torch: ![Feature Supported](img/Icons/GreenDot.png)

To achieve an RTK Fix, SparkFun RTK products must be provided with a correction source. This correction data, sometimes called RTCM (see [What is RTCM?](https://learn.sparkfun.com/tutorials/what-is-gps-rtk/all#what-is-rtcm)), can be produced from a variety of sources.
![RTK Corrections Priorities Menu](<img/Terminal/SparkFun RTK Everywhere - Corrections Priorities Menu.png>)

* [Paid Services](correction_sources.md#paid-services)
* [Government Provided Corrections](correction_sources.md#government-provided-corrections)
* [Permanent Base](correction_sources.md#permanent-base)
*RTK Corrections Priorities Menu*

## Paid Services
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:

These services cover entire countries and regions but charge a monthly fee. Easy to use, but the most expensive.
* Bluetooth
* IP (PointPerfect/MQTT)
* TCP (NTRIP)
* L-Band
* External Radio
* LoRa Radio
* ESP-Now

* [PointPerfect](correction_sources.md#pointperfect) ($8/month) - US, EU, as well as parts of Australia, Brazil, and South Korea.
* [PointOneNav](correction_sources.md#pointone-nav) ($50/month) - US, EU
* [Skylark](correction_sources.md#skylark) ($29 to $69/month) - US, EU, Japan, Australia
* [Vector RTK](https://vectorrtk.com/) ($115/month) - UK
* [SensorCloud RTK](https://rtk.sensorcloud.com/pricing/) ($100/month) partial US, EU
* [KeyNetGPS](https://www.keypre.com/KeynetGPS) ($375/month) North Eastern US
* [Hexagon/Leica](https://hxgnsmartnet.com/en-US) ($500/month) - partial US, EU
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.

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

One of the great features of SparkFun RTK Everywhere devices is that they are equipped to get corrections from a service called PointPerfect. No need for NTRIP credentials! [Contact SparkFun](https://www.sparkfun.com/pointperfect) with your device ID, pay a small monthly fee of $8 per month (as of this writing) and your device will obtain credentials and start receiving corrections anywhere there is coverage. Please see the [PointPerfect Menu](menu_pointperfect.md) page for more information.

[![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)

*PointPerfect Coverage map including L-Band and IP delivery methods*

The PointPerfect IP service is available for various areas of the globe including the contiguous US, EU, South Korea, as well as parts of Brazil, Australia, and Canada. See the [coverage map](https://www.u-blox.com/en/pointperfect-service-coverage) for specifics.

Some SparkFun RTK devices support corrections delivered over IP only (ie, RTK Torch), some devices support L-Band only, and some devices support both IP and L-Band delivery methods. Please see the product description or hookup guide for your particular device for more information.

### PointOne Nav

![PointOne Nav US Coverage Map 2024](<img/Corrections/PointOne Nav Coverage Map - 2024.png>)

*PointOne Nav Coverage Map - US 2024*

In this example, we will use PointOneNav and SW Maps.

1. Create an account on [PointOneNav](https://app.pointonenav.com/trial?src=sparkfun). **Note:** This service costs $50 per month at the time of writing.

2. Open SW Maps and connect to the RTK device over Bluetooth.

3. Once connected, open the SW Maps menu again (top left corner) and you will see a new option; click on ‘NTRIP Client'.

4. Enter the credentials provided by PointOneNav and click Connect (Figure 1). Verify that *Send NMEA GGA* is checked.

![NTRIP credentials in SW Maps](<img/SWMaps/SparkFun RTK SW Maps - NTRIP Credentials.png>)

*Figure 1*

5. Corrections will be downloaded every second from PointOneNav using your phone’s cellular connection and then sent down to the RTK device over Bluetooth. You don't need a very fast internet connection or a lot of data; it's only about 530 bytes per second.

Assuming you are outside, as soon as corrections are sent to the device, the bubble in SW Maps will turn Orange (RTK Float). Once RTK Fix is achieved (usually under 30 seconds) the bubble will turn Green and the HPA will be below 20mm (Figure 2). You can now take positional readings with millimeter accuracy!

![Double crosshair indicating RTK Fix](<img/SWMaps/SparkFun Torch - SW Maps GNSS Status RTK Fix HPA Small.png>)

*Figure 2*

In SW Maps, the position bubble will turn from Blue (regular GNSS fix), then to Orange (RTK Float), then to Green (RTK Fix) (Figure 3).

![Green bubble indicating RTK Fix](<img/SWMaps/SparkFun RTK SW Maps - Green Bubble-1.png>)

*Figure 3*

RTK Fix will be maintained as long as there is a clear view of the sky and corrections are delivered to the device every few seconds.

### Skylark

![Skylark coverage area](img/Corrections/Skylark-Coverage.png)

*Skylark Coverage Area*

A company called SwiftNav offers a service called [Skylark](https://www.swiftnav.com/skylark). As of writing, for $29 to $69 per month, you will get corrections covering North America, Europe, and the Asia Pacific. This is a very simple method for obtaining NTRIP corrections.

![Skylark website showing credentials](img/Corrections/SparkFun%20NTRIP%20Skylark%201%20-%20Credentials.png)

Upon creating an account, you'll be issued NTRIP credentials that can immediately be used with Lefebure, SW Maps, or any GIS app that supports NTRIP.

![Entering credentials into SW maps](img/SWMaps/SparkFun%20NTRIP%20Skylark%202%20-%20SW%20Maps%20Credentials.png)

*Entering credentials into SW maps*

The most difficult part of using Skylark for corrections is entering the auto-generated NTRIP Password. While we understand security is important, it's not trivial manually entering these types of credentials into a GIS application.

![GNSS Status showing positional accuracy](img/SWMaps/SparkFun%20NTRIP%20Skylark%202%20-%20SW%20Maps%20HPA.png)

*SW Maps showing Positional Accuracy*

One downside is that with a 'regional' provider such as Skylark the distance to the correction station may be larger than 10km. While we've always gotten an RTK fix, we often see horizontal positional accuracy of ~30mm instead of the 14mm when using our fixed GNSS reference station. Your mileage may vary.

## Government Provided Corrections

![Wisconsin network of CORS](<img/Corrections/SparkFun NTRIP 7 - Wisconsin Map.png>)

*State Wide Network of Continuously Operating Reference Stations (CORS)*

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/).

[![UNAVO map](img/Corrections/SparkFun%20NTRIP%204%20-%20UNAVCO%20Map.png)](https://www.unavco.org/instrumentation/networks/status/all/realtime)

[UNAVCO](https://www.unavco.org/) is a US-based governmental organization that runs a [network of publicly available NTRIP sources](https://www.unavco.org/instrumentation/networks/status/all/realtime). If you're lucky there's a station within 10km (6 miles) of you.

![Map of European stations](img/Corrections/SparkFun%20NTRIP%206%20-%20EUREF%20Map.png)

[EUREF](http://www.epncb.oma.be/_networkdata/data_access/real_time/map.php) is a permanent GNSS network in the EU.

There are several public networks across the globe, be sure to google around!

## Permanent Base

![SparkFun Base Station Enclosure](img/Corrections/Roof_Enclosure.jpg)

*The base station at SparkFun*

A permanent base is a user-owned and operated base station. See [Creating a Permanent Base](permanent_base.md) for more information. A permanent base has the benefit of being the most accurate, with relatively low cost, but requires at least 24 hours of initial logging and some mechanical setup time (attaching the antenna, connecting a device to the internet, etc).

## Temporary Base

[![Temporary RTK Express Base setup](<img/Corrections/SparkFun_RTK_Express_-_Base_Radio.jpg>)](<img/Corrections/SparkFun_RTK_Express_-_Base_Radio - Big.jpg>)

*Temporary RTK Express Base setup with serial radio*

A temporary or mobile base setup is handy when you are in the field too far away from a correction source, or if your measurements do not require absolute accuracy.

To set up a temporary base, an RTK device is mounted to a tripod and is configured to complete a survey-in (aka, locate itself). It will then begin broadcasting RTCM correction data. This data (~1000 bytes a second) is sent over a data link to one or multiple rovers that can then obtain RTK Fix.

Any tripod with a ¼” camera thread will work. The [Amazon Basics tripod](https://www.amazon.com/AmazonBasics-Lightweight-Camera-Mount-Tripod/dp/B00XI87KV8) works well enough but is a bit lightweight and rickety.

Any of the RTK Everywhere products can be set up to operate in **Base** mode. Once the base has been set up with a clear view of the sky, turn on the RTK device.

![RTK Torch in Survey-In Mode](img/SparkFun_RTK_Torch_On_Tripod.jpg)

*RTK Torch setup as a base*

On the RTK Torch, base mode is entered using a [Mode Switch](https://docs.sparkfun.com/SparkFun_RTK_Everywhere_Firmware/menu_system/#mode-switch) from the System Menu.

Once the survey is complete the device will begin producing RTCM correction data. If you are using the internal 2.4GHz ESP-Now radios, data will start to broadcast. If you have an NTRIP Server enabled, corrections will be uploaded to the NTRIP Caster of your choosing.

Note: A mobile base station works well for quick trips to the field. However, the survey-in method is not recommended for the highest accuracy measurements because the positional accuracy of the base will directly translate to the accuracy of the rover. Said differently, if your base's calculated position is off by 100cm, so will every reading your rover makes. For many applications, such as surveying, this is acceptable since the Surveyor may only be concerned with measuring the lengths of property lines or features. If you’re looking for maximum accuracy consider installing a [permanent static base with a fixed antenna](permanent_base.md). We were able to pinpoint the antenna on the top of SparkFun with an incredible accuracy [+/-2mm of accuracy](img/Corrections/SparkFun_PPP_Results.png) using PPP!

## Other Sources

There are a large number of networks run throughout the world. Be sure to dig a bit to find a local correction source near you.

[![Map of RTK2Go Stations](img/Corrections/SparkFun%20NTRIP%205%20-%20RTK2Go%20Map.png)](http://monitor.use-snip.com/?hostUrl=rtk2go.com&port=2101)

* RTK2go offers a [list](http://monitor.use-snip.com/?hostUrl=rtk2go.com&port=2101) and map (click 'View all' from the list) of stations using their public casting service. While none of these stations have been verified as accurate, it can be a decent starting point to do a 'quick' test of your system.
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)`.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/img/Terminal/SparkFun RTK Everywhere - GNSS Receiver.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/img/Terminal/SparkFun RTK Everywhere - Main Menu.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
160 changes: 160 additions & 0 deletions docs/menu_corrections_priorities.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,160 @@
# Corrections Priorities

Torch: ![Feature Supported](img/Icons/GreenDot.png)

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

*The messages configuration menu*

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).

Because of the large number of configurations possible, we provide a few common settings:

* Reset to Defaults

RTCM can also be enabled in both Rover and Base modes.

## Reset to Defaults

This will turn off all messages and enable the following messages:

* NMEA-GGA, NMEA-GSA, NMEA-GST, NMEA-GSV, NMEA-RMC

These five NMEA sentences are commonly used with SW Maps for general surveying.

## Individual Messages

![Configuring the NMEA messages](<img/Terminal/SparkFun RTK Everywhere - Messages Menu NMEA.png>)

*Configuring the NMEA messages*

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.

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.

**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.

The following messages are supported for Bluetooth output and logging (if available):

<table class="table">
<table>
<COLGROUP><COL WIDTH=200><COL WIDTH=200><COL WIDTH=200></COLGROUP>
<tr>
<td>&#8226; NMEA-DTM</td>
<td>&#8226; NMEA-GBS</td>
<td>&#8226; NMEA-GGA</td>
</tr>
<tr>
<td>&#8226; NMEA-GLL</td>
<td>&#8226; NMEA-GNS</td>
<td>&#8226; NMEA-GRS</td>
</tr>
<tr>
<td>&#8226; NMEA-GSA</td>
<td>&#8226; NMEA-GST</td>
<td>&#8226; NMEA-GSV</td>
</tr>
<tr>
<td>&#8226; NMEA-RMC</td>
<td>&#8226; NMEA-ROT</td>
<td>&#8226; NMEA-THS</td>
</tr>
<tr>
<td>&#8226; NMEA-VTG</td>
<td>&#8226; NMEA-ZDA</td>
</tr>
<tr>
<td>&#8226; RTCM3x-1001</td>
<td>&#8226; RTCM3x-1002</td>
<td>&#8226; RTCM3x-1003</td>
</tr>
<tr>
<td>&#8226; RTCM3x-1004</td>
<td>&#8226; RTCM3x-1005</td>
<td>&#8226; RTCM3x-1006</td>
</tr>
<tr>
<td>&#8226; RTCM3x-1007</td>
<td>&#8226; RTCM3x-1009</td>
<td>&#8226; RTCM3x-1010</td>
</tr>
<tr>
<td>&#8226; RTCM3x-1011</td>
<td>&#8226; RTCM3x-1012</td>
<td>&#8226; RTCM3x-1013</td>
</tr>
<tr>
<td>&#8226; RTCM3x-1019</td>
<td>&#8226; RTCM3x-1020</td>
<td>&#8226; RTCM3x-1033</td>
</tr>
<tr>
<td>&#8226; RTCM3x-1042</td>
<td>&#8226; RTCM3x-1044</td>
<td>&#8226; RTCM3x-1045</td>
</tr>
<tr>
<td>&#8226; RTCM3x-1046</td>
<td>&#8226; RTCM3x-1071</td>
<td>&#8226; RTCM3x-1072</td>
</tr>
<tr>
<td>&#8226; RTCM3x-1073</td>
<td>&#8226; RTCM3x-1074</td>
<td>&#8226; RTCM3x-1075</td>
</tr>
<tr>
<td>&#8226; RTCM3x-1076</td>
<td>&#8226; RTCM3x-1077</td>
<td>&#8226; RTCM3x-1081</td>
</tr>
<tr>
<td>&#8226; RTCM3x-1082</td>
<td>&#8226; RTCM3x-1083</td>
<td>&#8226; RTCM3x-1084</td>
</tr>
<tr>
<td>&#8226; RTCM3x-1085</td>
<td>&#8226; RTCM3x-1086</td>
<td>&#8226; RTCM3x-1087</td>
</tr>
<tr>
<td>&#8226; RTCM3x-1091</td>
<td>&#8226; RTCM3x-1092</td>
<td>&#8226; RTCM3x-1093</td>
</tr>
<tr>
<td>&#8226; RTCM3x-1094</td>
<td>&#8226; RTCM3x-1095</td>
<td>&#8226; RTCM3x-1096</td>
</tr>
<tr>
<td>&#8226; RTCM3x-1097</td>
<td>&#8226; RTCM3x-1104</td>
<td>&#8226; RTCM3x-1111</td>
</tr>
<tr>
<td>&#8226; RTCM3x-1112</td>
<td>&#8226; RTCM3x-1113</td>
<td>&#8226; RTCM3x-1114</td>
</tr>
<tr>
<td>&#8226; RTCM3x-1115</td>
<td>&#8226; RTCM3x-1116</td>
<td>&#8226; RTCM3x-1117</td>
</tr>
<tr>
<td>&#8226; RTCM3x-1121</td>
<td>&#8226; RTCM3x-1122</td>
<td>&#8226; RTCM3x-1123</td>
</tr>
<tr>
<td>&#8226; RTCM3x-1124</td>
<td>&#8226; RTCM3x-1125</td>
<td>&#8226; RTCM3x-1126</td>
</tr>
<tr>
<td>&#8226; RTCM3x-1127</td>
</tr>

</table></table>
25 changes: 0 additions & 25 deletions docs/menu_network.md

This file was deleted.

Loading

0 comments on commit 3cf6e3b

Please sign in to comment.