PointPerfect MQTT Continental Distribution
Overview
Introduction
Our PointPerfect correction service via MQTT (Internet) offers quick delivery of high precision accuracy by providing all continental SPARTN corrections to your device. During provisioning, you subscribe to key and continental data topics to collect this data. Once your device accepts these SPARTN messages (OCB, HPAC, GAD) your position is determined.
This page describes our PointPerfect correction service with all continental corrections delivered via our MQTT service. If you wish to receive only localized corrections see our Localized Distribution page. If you wish to use our service with an L-Band satellite delivery, please see our L-Band Configuration page.
Benefits of PointPerfect Continental Corrections Distribution
PointPerfect Continental offers many benefits to users, including:
Simplicity: Receive PointPerfect corrections to your host application with subscriptions to only one key and one data topic.
Superior Privacy: PointPerfect Continental does not send the device's location to the service, correction data is provided on a continental level.
-------------------------------------------------------------------------------------------
Do's & Don'ts: Best Practices and Common Pitfalls
Do's:
Check out our "Python sample script PointPerfect MQTT Client": Our sample script located within your portal location services -> downloads -> PointPerfect can give you a great example on how to implement this into your setup.
Keep your F9 or X20 receiver firmware up to date: Regularly update your receiver firmware to ensure compatibility with SPARTN corrections and to benefit from performance enhancements, bug fixes, and new features.
Ensure you subscribe to the correct regional topic: For example /pp/ip/eu for Europe and /pp/ip/au for Australia.
Don'ts:
Don’t skip the download of credentials: Forgetting to download the u-center config or Client Key and Client Certificate will prevent your host device from authenticating with the MQTT broker. Always make sure to complete this step before moving forward with the setup
Don’t share your credentials across multiple devices: Each device should have its own set of credentials. Avoid using the same credentials for multiple devices, as this could lead to connection conflicts and potential disconnection
Don't hard code low buffer limits: We do recommend you set your buffer limits to 2x-3x of the observed maximum payload size to leave some room for future signal correction additions.
------------------------------------------------------------------------------------------
Still need help?
If you need more help or have any questions, please send an email to services-support@u-blox.com.
PointPerfect Continental System Architecture
Continental corrections are delivered in SPARTN format to the receiver and delivered via MQTT for all PointPerfect IP plans. You can find more details about encrypted message delivery, MQTT topic structure and payload estimations on our PointPerfect Service Description page.
This diagram shows a typical client system architecture for an IP-only system:
Configuration
Below is a continuation of configuration steps from the PointPerfect Getting Started guide.
You should already have:
1. Created a PointPerfect location thing in your Thingstream domain account,
2. Downloaded the JSON file from your Thingstream PointPerfect location thing and
3. Downloaded, installed, opened u-center and connected to the port of your F9P device
The final step is to load the JSON configuration file using u-center.
Open the Receiver menu and select the MQTT Client item as shown in this screenshot.
Selecting the MQTT Client item will open a new dialog as shown in the image below.
Click on the ellipsis (...) icon to browse your file system and select the correct JSON config file.
Choose the "Continental" correction type.
When selecting Continental corrections in the MQTT client settings dialog box, you must also select "Subscribe to key topic" and "Subscribe to data topic" (and optionally "Subscribe to AssistNow topic" if needed.)
Subscribe to the AssistNow topic (this is optional, but free with PointPerfect)
Subscribe to the key topic
Subscribe to the data topic
Use the "Select Data Topic" drop-down menu to choose the topic that corresponds to your region. At the time of the writing of this guide, we offer four options for an IP-only plan:
/pp/ip/eu
/pp/ip/us
/pp/ip/kr
/pp/ip/au
Please note that selected data topics should align with your plan. Plans with IP+Lband will have slightly different data topics.
Once you've made your selections, click 'OK.'
After clicking 'OK,' the MQTT client will establish a connection with the PointPerfect service and begin receiving augmentation data.
You can check the MQTT connection status in the u-center's status bar.
Clicking on the green connector icon will open the log, where you can monitor the messages being received and view the MQTT topic subscriptions as demonstrated below.
At this point the F9P is connected to & receiving data from the PointPerfect service, and you can see the performance of the solution via u-center. Please refer to u-center [2] and ZED-F9P documentation [1] for more information on how to analyze the high precision GNSS performance.
Python sample script: PointPerfect MQTT Client
If you are interested in evaluating PointPerfect with an MQTT Client built into your host application, please refer to the PointPerfect MQTT Client sample python script available in the Thingstream Downloads PointPerfect section to get started. The script demonstrates how to authenticate the MQTT client with the broker and subscribe to the MQTT topics.
Reference Documentation
[1] ZED-F9P Integration manual, UBX-18010802
[2] u-center User guide, UBX-13005250
[3] u-blox F9 HPG 1.32 Interface description, UBX-22008968
[4] C099-F9P application board User guide, UBX- 18063024
[5] EVK-F9P-01 evaluation kit User guide, UBX-22038408
[6] Thingstream Knowledge Base – Services Support