Although GNSS users expect instant position information, this is often not possible in typical IoT environments because at least four satellites must be identified, and their complete live orbital position data (called ephemeris) must be received by the GNSS receiver. Under nominal conditions - such as full sky visibility and strong antenna/signal strength—this process takes approximately 30 seconds. However, under adverse conditions, such as in urban canyons or when the signal is weak, the receiver may take several minutes or even fail to download orbital data from the satellites, resulting in a negative impact on the device energy budget.
Assisted GNSS (A‑GNSS) accelerates position calculations by delivering satellite orbital data, such as ephemeris, almanac, accurate time, and satellite status, to the GNSS receiver via wireless networks or the Internet. This aiding data enables a GNSS receiver to compute a position within seconds, even under poor signal conditions. A-GNSS provides faster Time-To-First-Fix, improved accuracy and increased position availability - benefits that directly translate to lower power consumption and larger power autonomy.
The documentation is structured as follows:
User Guide: This guide explains the benefits of the AssistNow service, licensing and pricing, typical performance, prerequisites, system architecture, and usage policy. It also includes a high level overview of how to use the service, although detailed information is provided in the Implementation Guides.
Implementation Guides: These are a set of short guides that show, in detail, how to implement the service, step-by-step. You can find the link to these guides in the right side menu (under "Related guides") and on the current page.
Device Registration Guide: Describes how to obtain the credential to access to the service.
Host Software Guide: Provides information on how to develop device firmware to inject and store A-GNSS data received from the AssistNow service.
Service Integration Guide: Offers detailed instructions on how to request A-GNSS data from the service using the REST API.
Service Specification Guide: Provides information about data size, data validity, and supported signals.
AssistNow is u-blox’s end-to-end A-GNSS location service that provides orbital data in real time via wireless connectivity. It is available in two options, which can be used independently or in combination: Live Orbits and Predictive Orbits. The main benefit in using AssistNow are:
Shortest time-to-first-fix (TTFF): TTFF is a very important KPI when designing the an IoT device, as it directly affects business sustainability. Being able to locate your asset almost immediately, even in challenging environments or with limited sky visibility, adds a new level of reliability to your application. AssistNow is especially useful in designs where weak GNSS signals result from compact form factors or suboptimal device positioning.
Maximize position fix probability: Assets, vehicles, people, and pets continuously move across different areas. Yet, GNSS users expect consistent location availability. Typically, when a car exits an underground parking lot or a person or pet steps outside for a walk, the surroundings - dense with buildings, trees, and other signal-blocking obstacles - make GNSS reception unstable. AssistNow maximizes GNSS fix probability, even in such challenging conditions, to meet end user expectations.
Minimize energy drain: For battery operated devices, energy consumption is a key driver for sustainability. Most IoT devices stay in the field for several years without battery replacement because of logistical and operational costs. AssistNow minimizes GNSS-related energy drain, extending the device lifetime and thereby removing the need for extra battery capacity.
Improved position accuracy: Balancing accuracy and energy efficiency is a common challenge in IoT applications. While waiting longer can improve GNSS accuracy, it also increases energy usage, negatively impacting device lifespan and business sustainability. In many applications, achieving the target accuracy quickly is essential. With AssistNow, you can meet these requirements by choosing either the free-of-charge Predictive Orbits option or the premium Live Orbits option for optimal accuracy.
AssistNow Predictive Orbits provides u-blox's orbit prediction data of GNSS satellites for up to 14 days. As a result, the device does not require continuous internet connectivity at system start-up and can achieve a position fix within 5–10 seconds, improving the Time-To-First-Fix.
AssistNow Live Orbits boosts GNSS performance by reducing the Time-To-First to just 1-2 seconds and reaching the target accuracy almost immediately.
AssistNow Predictive Orbits is provided free of charge and included with all M9 and F9 u-blox GNSS receivers (and future generations) upon registration on the Thingstream service delivery platform.
AssistNow Live Orbits is available in two pricing options:
Bundled license: Included in the GNSS receiver price, this option provides a lifetime license with guaranteed service for 5 years. After that period, standard service terms apply. This option is currently available for the following products (with more to come in the future):
MAX-M10N-00B
MAX-M10N-10B
NEO-M9V-20B
Pay-as-you-go: You only pay for the service requests actually made by your fleet. The scalable plan automatically adjusts usage levels each month to provide the best possible pricing. Details are available on our pricing page .
The following table outlines the main performance characteristics and specifications of the AssistNow service. Time-To-First-Fix (TTFF) is highly dependent on the environment in which the asset is located, how A-GNSS data is provided to the GNSS receiver, and the overall device design. It is essential to conduct careful testing with a device prototype, so that achievable performance for TTFF and accuracy can be properly evaluated.
It's worth noting that reducing TTFF is critical for two reasons:
Minimizing device energy consumption
Achieving faster target accuracy. IoT environments are often complex, with urban canyons and partial sky visibility. As a result, the first position fix may not be accurate enough for your application. However, in most cases, accuracy improves over time as the GNSS receiver acquires signals from more satellites and refines the position estimate. The faster you obtain an initial fix, the sooner you can reach your desired accuracy.
The following chart shows a typical TTFF comparison with and without AssistNow. It's worth noting that performance greatly depends on device design and environmental conditions, so results may vary across different testing conditions. The below chart illustrates:
The improvement in TTFF when using AssistNow
The minimal TTFF variance when using Live Orbits
A u-blox GNSS receiver (chip or module) from the M9 or F9 series and above, along with the knowledge of how to configure the receiver
An account (domain) in the Thingstream service delivery platform. Sign-up is free of charge. If you do not have a domain, get one by signing up at https://portal.thingstream.io/
Selection of the option that best matches your performance requirements:
Predictive Orbits
Live Orbits
The u-center 2 evaluation tool, which greatly assists during the evaluation and design phases
If you are using an M8 receiver, you can still rely on the legacy AssistNow service (Online and Offline), as long as you have an active AssistNow token. Technical documentation is available at this page. Please refer to the additional information about maintenance and support at the end of this guide.
If you are completely new to A-GNSS technology or would like to have a deeper understanding, we recommend reading this Assisted GNSS article.
The system architecture is shown in the image below. To use AssistNow, the following requirements must be met:
The host processor must be capable of connecting to the Internet. Please note that low-bandwidth connectivity like LoRa, Sigfox, and NB-IoT do not have enough bandwidth to download A-GNSS data. If you are planning to use these technologies, consider using the u-blox CloudLocate service instead.
The HTTPS protocol stack is required to request A-GNSS data from the AssistNow service using the HTTPS REST API.
A bi-directional direct connection between the host processor and the GNSS receiver, using any of the available interfaces. This is necessary to inject the aiding data into the GNSS receiver, receive the acknowledgement message and all relevant positioning messages for your application.
u-center 2 is the u-blox evaluation tool for GNSS receivers. It allows you to easily configure the receiver and evaluate performance improvements, when using the AssistNow service.
The easiest way to get started is by connecting an Evaluation Kit (EVK), selecting the type of A-GNSS data you want to use, and start running some tests.
If you are connecting a GNSS chip or module in your own device to u-center 2 (instead of an EVK), you need to retrieve the credentials (Chipcode) to access to AssistNow service using the Zero Touch Provisioning procedure described in the next section. Once retrieved, the Chipcode shall be configured in u-center.
Download u-center 2 from the u-blox web site: https://www.u-blox.com/en/u-center-2
u-center 2 automatically retrieves and injects A-GNSS data into the receiver. You can simulate and compare multiple scenarios to evaluate which configuration performs best for your use case, without writing any code. For example, you can compare:
Performance with no A-GNSS data, with Predictive Orbits and with Live Orbits
Performance during a cold, warm and hot start
Performance using only select GNSS constellations
u-center 2 is also a very useful tool during firmware development, because it allows you to analyze firmware commands, receiver respons, and output messages to check that your firmware is behaving properly.
Note: When using u-center with an Evaluation Kit, you get free unlimited access to Predictive Orbits and Live Orbits. For information on usage policies in any other set-up, please refer to the dedicated section.
If you are new to u-center or need help using AssistNow within it, take a look at this short guide.
When designing the device firmware, you should consider the following steps in order to use the AssistNow service:
Register the device on the u-blox Thingstream service delivery platform and obtain the device credentials to access to the service through the AssistNow Zero Touch Provisioning procedure. The credentials are unique for each device.
Retrieve the A-GNSS data from the service using the REST API and the device credentials.
Inject the A-GNSS data into the GNSS receiver. The data delivered by the service does not need additional manipulation and can be injected into the GNSS receiver directly as delivered. AssistNow communicates via the HTTPS protocol over SSL.
Save the data for further use, without needing to download it again from the service, according to the validity period of each data type.
The AssistNow Zero Touch Provisioning (ZTP) procedure is required to obtain the credentials (Chipcode) used to request A-GNSS data from the AssistNow service. This procedure is only needed once but can also be repeated to obtain fresh credentials in case of suspicious activity or compromised access.
The Chipcode is unique per device.
ZTP streamlines device setup, eliminating the need for manual configuration for each device. ZTP simplifies adding devices to your fleet, making it ideal for large-scale deployments. Additionally, the Chipcode provides secure authentication, protecting your devices and data from unauthorized access.
For implementation details, refer to the Device registration guide. ZTP is required for both Predictive Orbits and Live Orbits, and both variants share the same Chipcode.
To retrieve A-GNSS data, the device firmware must use the REST API, including the following parameters:
The hostname
The authentication code (Chipcode)
The data to be requested, according to the selected option (Live or Predictive Orbits)
Upon receiving the HTTPS GET request, the server responds with the required messages in binary format and a status code in text format. After delivery of all data, the server terminates the connection. All data (except for the hostname, which is used to establish the connection) is transmitted solely within the encrypted connection and protected against person-in-the-middle attacks, just like any HTTPS communication.
Below is an example of a service request:
https://AssistNow.services.u-blox.com/GetAssistNowData.ashx?chipcode=XXXXXXXXX&gnss=gps,glo&data=uporb_1,ualm
where:
chipcode is the device authentication credential obtained during the device registration (via the ZTP procedure)
gnss is the list of GNSS constellation for which A-GNSS data is needed
data is the list of A-GNSS data types requested from the service
Detailed information is provided in the Service integration guide.
The A-GNSS data returned by the AssistNow service is encoded as a sequence of UBX-MGA-*** messages containing the requested assistance in the u-blox (UBX) protocol. The UBX messages section in the in the Service Integration Guide provides a comprehensive list of all the available data and specifies which UBX message corresponds to each service option.
To understand the frame structure and get more details about the data fields in each message, refer to the GNSS receiver Interface Description. Go to the Product selector, select the desired GNSS receiver and find the Interface Description document in the Documentation & resources section.
For u-blox receivers equipped with flash storage, all the data can be directly transferred to the flash until it is needed.
Receivers without flash storage, or with insufficient available flash memory, can store A-GNSS data in the host and send it to the receiver when needed.
The Host software guide explains how to properly design the device firmware to store and inject data into the receiver for all possible configurations.
Note: The data provided by the AssistNow service does not need require additional processing by the device firmware and can be injected into the receiver exactly as delivered.
The Time-To-First-Fix (TTFF) after a receiver power interruption is dependent on the amount of operational data available at startup. Satellite broadcast information and an estimate of accurate time can be fetched from the AssistNow service. In addition, the following techniques can restore data that was stored prior to powering down.
Battery-backed RAM (BBR): The receiver's operational state stored in this RAM can be preserved during power outages by connecting the V_BCKP pin to an independent supply, e.g. a battery. This is the recommended method, as it retains all A-GNSS related information, user configuration, calibration data, and an estimate of time via the real-time clock.
Database dump: The receiver can be configured to dump the state of its navigation database as a sequence of UBX messages reported to the host. These messages can be stored by the host and then sent back to the receiver upon restart.
Predictive Orbits storage: Since Predictive Orbit data has a longer validity period than Live Orbit data, it can be stored on the host or, if available, in the GNSS receiver’s flash memory.
The Host software guide provide more details about each option
The best data storage strategy strongly depends on the type of data used (Live vs. Predicted Orbits), the use case, how often the receiver is switched-on during the day and for how long.
Depending on the type of A-GNSS data required and the hardware used, the device is subject to policies that limit usage (per day or per month), according to the following table.
Note: If the maximum allowed number of requests is reached, the event will be displayed on the Thingstream platform. The usage counter resets at 00.00 UTC of the day and / or month.
A developer device is a device marked as "Developer" in the Thingstream platform. Just sign-in to the platform, enter in the Location Services section and select Thing List. Find your Thing and mark it as "Developer" in the Details Panel.
You can have up to 3 devices per account.
For Live Orbits, usage policies apply regardless of wether you are using the Pay-as-you-go model or a receiver type with a bundled Live Orbits service license.
u-center 1 does not support the AssistNow Live Orbits and Predictive Orbits service .
If you are looking for the AssistNow Online/Offline guide, visit this page
If you need more help or have any questions, please send an email to services-support@u-blox.com.