Skip to main content

📣 Firmware Update Release:
Firmware Version v0.18 is now released! Please follow the link here or update via Cloudloop Device Manager.

RockBLOCK Pro APNT

We have a new version of the RockBLOCK PRO that makes use the Alternative Position Navigation and Timing(APNT) service offered by Iridium - Iridium Satellite Time and Location® (Iridium STL®). This service improves the resiliency and survivability of critical infrastructure when Global Positioning System (GPS) or Global Navigation Satellite System (GNSS) signals are absent or disrupted.

This option requires hardware alterations, and as such is only available as an option at the point of purchase.

Configuration

The APNT positioning can be reconfigured by following the User Configuration Guide and Firmware and Config Update Process

When connecting via USB-C, the RockBLOCK Pro will show up as 3 devices - 2 Virtual Com Ports (VCP) and a mass storage device.
The HIGHER numbered VCP is a live updated status page. The LOWER numbered VCP is an AT command terminal. More information can be found in the Pro Serial Interface
If in doubt, your firmware version can be checked using the serial port status page, or by issuing the AT command AT+CGCV.
Configuration settings of the APNT module are stored in the user.cfg file. This can be edited with a text editor and stored in JSON format, before dragging-and-dropping onto the RockBLOCK Pro mass storage device over USB.

warning

Syntax and formatting are critical for JSON files. It is recommended for most users to use a text editor and upload the config file over USB. If a config file containing errors is uploaded, this will result in the RockBLOCK Pro reverting to its default configuration.

Serial Port Configuration

When NMEA forwarding is enabled, the APNT position data will be streamed over the RockBLOCK Pro's physical serial port.

The serial port can be reconfigured following our guide on the User Configuration file.

Bluetooth App Configuration

RockCONNECT IoT can be used on Android or iOS to configure and manage the RockBLOCK Pro APNT

Position Configuration

Configuration of APNT(Iridium STL®) position is performed using the following section of the User Configuration file.
The upgrade process replaces the GNSS module with the APNT module, hence some configuration elements for APNT are still referred to as 'GNSS'.

  "GNSS": {
"Enabled": true,
"nmeaForwardEnabled": true,
"reportInterval": 60,
"apntMode": "DYNAMIC",
"apntKalmanFilter": "CUSTOM",
"apntSensitivity": "HIGH",
"customVtc": 5,
"customHtc": 300,
"customVss": 0.1,
"customHss": 15,
"apntPowerSaving": "FAST",
"nmeaSentences":{
"GNGGA": true,
"GNRMC": true,
"GPGGA": false,
"GPRMC": false,
"GPZDA": false,
"PJLTPOS": false,
"PJLTSTAT": false,
"PJLTSVI": false,
"PJLTVEL": false,
"AISVDO": true
}

Configuration Elements

"Enabled":
  • true - the APNT module is enabled, and its position data made available to the Application.
  • false - APNT module is disabled.

"nmeaForwardEnabled":
  • true - the APNT position data is streamed out of the RockBLOCK Pro serial port in NMEA format, once per second.
  • false - APNT position streaming disabled.

"reportInterval":
  • unsigned integer - the number of seconds between position reports being sent to Cloudloop.
  • 0 - (zero) disables Cloudloop position upload.

APNT Mode

"apntMode":
  • DYNAMIC - Use when the device to be tracked is a moving object. Suitable for the vast majority of users.
  • STATIC - Use ONLY when the device to be tracked is predominantly stationary.
  • AUTO - APNT module decides dynamically weather it is in a moving or stationary situation and adapts accordingly (Needs further testing)

APNT Kalman Filter

"apntKalmanFilter":
  • CUSTOM - Use ONLY if you are manually setting up the Kalman filter with the "customVtc/Htc/Vss and Hss" parameters
  • MARITIME - Sets Vtc: 5 ; Htc: 300 ; Vss: 0.1 and Hss: 15
  • WALKING - Sets Vtc: 5 ; Htc: 300 ; Vss: 0.1 and Hss: 5
  • DRIVING - Sets Vtc: 30 ; Htc: 10 ; Vss: 0.1 and Hss: 10
important

DYNAMIC must be selected in order to use the pre-set filter or create a custom filter


APNT RF Sensitivity

"apntSensitivity":
  • HIGH - Maximum RF Preamp gain.
  • MED - Medium RF Preamp gain.
  • LOW - Minimum RF Preamp gain.
info

HIGH is not always the best setting to use - in circumstances where the signal strength is high, antenna gain is high, and / or RF cable loss is low, this can lead to signal distortion, and reduce the number of successfully processed position messages, resulting in a lower accuracy position.
Similarly, LOW preamp gain coupled with RF losses in signal strength can have the same effect.
This setting may need to be adjusted depending upon installation and geographical location.


APNT NMEA Sentences

"nmeaSentences":
  • "GNGGA": - set true to enable or false to disable
  • "GNRMC": - set true to enable or false to disable
  • "GPGGA": - set true to enable or false to disable
  • "GPRMC": - set true to enable or false to disable
  • "GPZDA": - set true to enable or false to disable
  • "PJLTPOS": - set true to enable or false to disable
  • "PJLTSTAT": - set true to enable or false to disable
  • "PJLTSVI": - set true to enable or false to disable
  • "PJLTVEL": - set true to enable or false to disable
  • "AISVDO": - set true to enable or false to disable
info

To be used only when nmeaForwardEnabled is set to true


APNT Chart Plotter

Connecting the RockBLOCK Pro APNT to the Zeus3S or another compatible chart plotter via Serial (e.g. RS-422) and enabling the new NMEA sentences will cause the APNT position to show up as a waypoint and the GNSS position as a “ghost“ ship on the chart plotter provided settings are correctly configured.

"Chart":
  • "epeScale": - Affects the size of the second circle, set from 0.5 - 10.0
  • "positionCompareTimer": - Affects the amount of time your gnss position can be outside your epescale * epe, set from 0 - 300
  • "utcDifferenceLimit": - Affects the threshold for checking for time spoofing, set from 2 - 10
  • "utcDifferenceTimer": - Affects the amount of time you're checking for time spoofing before alarming, set from 0 - 300
  • "positionValidityTimer" - Affects the amount of time you're checking for valid GNSS strings before alarming, set from 0 - 300
  • "errorCircle": - Enables or disables the inner circle, set true to enable or false to disable
  • "errorLimitCircle": - Enables or disables the outer circle, set true to enable or false to disable
info

With this update enabled, the RockBLOCK Pro (from FWv0.18) can now output a rich set of AIS-style NMEA sentences.

When NMEA forwarding is turned on and the serial output is connected to a compatible chart plotter, the device will display:

  • A “GNSS POSITION” vessel icon generated from AIS VDO messages.
  • Your own vessel’s position driven by APNT, when GPGGA and GPRMC are enabled — allowing you to visually compare APNT vs. standard GNSS directly on the chart.

To make this even clearer, the chart plotter will draw a ring of points around the APNT vessel, representing your real-time Estimated Position Error (EPE). If you choose to enable it, a second, larger ring will also appear showing a scaled EPE value for quick visual interpretation.


APNT Power Saving

 "apntPowerSaving":
  • FAST - Turns Power Saving off
  • ECO - Turns Power Saving on for all components (DUTY-CYCLE | RF-RECEIVER | SECOND-MCU | GNSS ...)

APNT Positioning Source

 "apntPositionSource":
  • GNSS - Sets the PNT module to output GNSS positions
  • APNT - Sets the PNT module to output APNT positions

Custom Kalman Filter settings

ParameterDescription
VTCVertical Time ConstantTime constant over which the vertical velocity vector is likely to change (seconds)
HTCHorizontal Time ConstantTime constant over which the horizontal velocity vector is likely to change (seconds)
VSSVertical Steady StateStandard deviation of vertical velocity vector (meters/second, 1-sigma)
HSSHorizontal Steady StateStandard deviation of horizontal velocity vector (meters/second, 1-sigma)

These parameters affect how the RB-Pro APNT internal Kalman Filter estimates dynamic position in the absence of bursts or aiding inputs.

The time constant represents the PRESUMED rate at which the velocity vector is liable to change.

The steady state is the PRESUMED standard deviation of the velocity PDF (probability distribution function), in the axis or plane of interest.

A highly-dynamic, fast-moving object would necessitate a large steady state and a small time constant.

A slow-moving object that changes direction and speed only rarely would necessitate a small steady state and a large time constant.

For reference the Kalman Filter profiles are as follows:

Pre-setVTC [s]HTC [s]VSS [m/s]HSS [m/s]
Maritime53000.115
Walking53000.15
Driving30100.110

The table below shows alternative profiles for other tracking scenarios. Can be set using the 'custom' feature.

ProfileVTC [s]HTC [s]VSS [m/s]HSS [m/s]
Maritime slow moving5600.115
City driving5300.510
Highway driving53000.515
Fixed Wing Aircraft (small, slow)30300560
Fixed Wing Aircraft (large, fast)3030010100
Rotary Aircraft30300560
Walking speeds5600.52

Position Output

Once the above has been configured, the RockBLOCK Pro APNT will output the position data in NMEA format.

  • The user is able to tailor the NMEA stream to provide the sentences required by their application.
    • GPGGA - Global Positioning System Fix Data - sent every second
    • GPRMA - Recommended minimum specific Loran-C data - sent every second
    • GPZDA - Date & Time - sent every five seconds
    • GNGGA and GNRMC are GNSS positioned provided by the GNSS decoder with the APNT module.
    • GPGGA, GPRMC and GPZDA are Iridium APNT related position/time data reporting in the GPS sentence format. NOT GNSS
    • All PJLT prefixes relate to Iridium APNT position/time data. Further details on sentence structure below.
    • NOTE: When PJLTSTAT is selected the NMEA stream will also contain PJLTVEL.

For example:

$GPGGA,084908.00,5052.732865,N,00115.509451,W,1,04,8.0,-12.4,M,,*30
$GPRMC,084908.00,A,5052.732865,N,00115.509451,W,0.2,-69.8,270625,,*36
$GPZDA,084908.00,27,06,2025,+00,00*46

Position data is also displayed on the RockBLOCK Pro's Status Page.
Additionally, from the AT command terminal, the position data can be obtained via polling, currently using the AT+GNSS command.


info

A couple of the GGA parameters observed when using APNT are different to those which may be expected from a traditional GNSS module.

ParameterGNSS ExpectedAPNT ExpectedNotes
GGA
Field 7
Satellites in view
< 30
Higher is better
Satellites in view
< 4
Higher is better
Iridium STL® has fewer satellites in view to enable positioning.
GGA
Field 8
HDOP
1 - 20
Lower is better
PFOM
1 - 9
Lower is better
Horizontal Dilution of Accuracy is replaced with Position Figure of Merit.
It is still a measure of estimated positional accuracy, but with a different
range than expected using HDOP.
PFOM accuracy table is shown below.

PFOM table

Value123456789
Estimated Position Error< 25m< 50m< 75m< 100m< 200m< 500< 1000m< 5000m>= 5000m

NMEA Sentences

$PJLTPOS,v,ssssssssss,f,ll.llllllll,yyy.yyyyyyyy,aaa.aa,xxxxxxxxx,yyyyyyyyy,zzzzzzzzz,uu.uuuu,uu.uuuu,uu.uuuu,uu.uuuu,uu.uuuu,uu.uuuu,b.b,s.s,p,g*[checksum]

  • v is the message version
  • ssssssssss is the current time with "format of time" below
  • f is the format of time: 0 = GPS time and – 1 = Unix time
  • ll.llllllll is the latitude in signed decimal degree
  • yyy.yyyyyyyy is the longitude in signed decimal degree
  • aaa.aa is the antenna altitude above/below GPS height in meters when receiving STL signals and MSL height when operating from the GNSS receiver
  • xxxxxxxxx is the position in ECEF-X axis, in meter
  • yyyyyyyyy is the position in ECEF-Y axis, in meter
  • zzzzzzzzz is the position in ECEF-Z axis, in meter
  • uu.uuuu are the uncertainty represented as local level covariance for EE, NN, UU, EN, EU, and NU, respectively
  • b.b is the age of position in seconds since last burst
  • s.s is the age of position in seconds since last sensor update
  • p is the position figure of merit (PFOM) of current solution
  • g is the current geo-location model configured 1 = STATIC.

$PJLTSTAT,v,ssssssssss,b,s*[checksum]

  • v is the message version
  • ssssssssss is the GPS time (number of seconds since GPS epoch in 1980)
  • b is the number of received bursts in last 60 seconds (bursts per minute, or BPM)
  • s is the number of received strong (processed) bursts in last 60 second

$PJLTSVI,v,ssssss.ssssss,wwww,ii,cc.c,aaa.a,ee.e,xxxxxxxxx.x,yyyyyyyyy.y,zzzzzzzzz.z,xxxxxxxxx.x,yyyyyyyyy.y,zzzzzzzzz.z,ddddd.d,rrrrrrrrrrrrrrr.r,,,tttttt.ttttttttt,0xVV*hh

  • v Version of reported PJLTSVI message
  • ssssss.ssssss GPS TOW (TOT) GPS Time of Week representing the time of transmission in seconds. Time is referenced to the middle of the burst waveform (a burst is 20.32 milliseconds long, so the middle occurs 10.16 milliseconds from the start) Note: Although GPS TOW is truncated to 1 us precision, all SVI data is derived from full precision TOT.
  • wwww GPS week number (weeks) associated with GPS TOW (TOT)
  • ii SV ID Satelles satellite identification number for the current satellite
  • cc.c C/No Carrier to noise density ratio of current burst (dB-Hz). Typical values for processed bursts range from 40 dB-Hz to over 80 dB-Hz
  • aaa.a Azimuth (degrees) to the current satellite viewed from the receive antenna based on current best estimate of position [empty when internal position state unknown]
  • ee.e Elevation (degrees) to the current satellite viewed from the receive antenna based on current best estimate of position [empty when internal position state unknown]
  • xxxxxxxxx.x Current satellite’s position in ECEF-x axis (meters) at the time of transmission
  • yyyyyyyyy.y Current satellite’s position in ECEF-y axis (meters) at the time of transmission
  • zzzzzzzzz.z Current satellite’s position in ECEF-z axis (meters) at the time of transmission
  • xxxxxxxxx.x Current satellite’s velocity in ECEF-x axis (meters/second) at the time of transmission
  • yyyyyyyyy.y Current satellite’s velocity in ECEF-y axis (meters/second) at the time of transmission
  • zzzzzzzzz.z Current satellite’s velocity in ECEF-z axis (meters/second) at the time of transmission
  • ddddd.d Doppler (Hz) for the current burst. Polarity corresponding to range rate (i.e. negative for approaching SV, positive for receding SV).
  • rrrrrrrrrrrrrrr.r Pseudorange (meters) for current satellite maximum value of 1 light-week ~1.8e14
  • Tttttt.ttttttttt GPS TOW (TOA) GPS Time of Week representing the time of arrival in seconds. Time is referenced to the middle of the burst waveform (a burst is 20.32 milliseconds long, so the middle occurs 10.16 milliseconds from the start)Note: Time of arrival in GPS time is empty until internal position state is known.
  • VV Validity Flags Hexadecimal value representing multiple validity flags for data contained within the current message. Valid satellite Pseudorange data VV |= 0x1; Valid satellite Position data VV |= 0x2;

$PJLTVEL,v,iiiiiiiiii,e.eeeeee,n.nnnnnn,u.uuuuuu,ssssssssss*[checksum]

  • v is the message version,
  • iiiiiiiiii is the serial number for the APNT receiver
  • e.eeeeee is the velocity in east direction, in m/s
  • n.nnnnnn is the velocity in north direction, in m/s,
  • u.uuuuuu is the velocity in up direction, in m/s,
  • ssssssssss is the GPS time (number of seconds since GPS epoch in 1980).

APNT License Key

There are currently a couple of ways to load the APNT License Key.

File system over Type-C

The File system (MSD - Mass Storage Drive) on the RockBLOCK Pro allows the enumeration of a folder named “ROCKBLOCK P” when connected over Type-C.

This file system allows the user to drag-and-drop or copy-and-paste a text file containing the APNT License Key, after a reboot the License Key will be loaded in.

In addition to the APNT License Key text file, the user needs to make sure there is a separate “manifest.txt“ file uploaded as well - containing the name of the APNT License Key text file that must be specifically named “APNT-Key.txt” and containing:

<APNT MODULE SERIAL NUMBER>
<APNT MODULE KEY>
Example manifest.txt

Example APNT-Key.txt

tip

Make sure that both files are uploaded and have followed the specified format, and after which reboot the RockBLOCK Pro by either removing the USB-C and re-plugging after 10 seconds or via the Reboot AT Command

AT+CMD over Serial (Physical and Virtual)

info

APNT AT Commands can also be seen in the AT Commands table here

The serial AT Command interface can be accessed over Physical RS232/RS485 connection with the provided Power, Serial and GPIO cable, or, via Virtual Com Ports over Type-C.

The command AT+APNTWK=<KEY> allows the user to enter a license key where <KEY> is the license key in question. i.e (AT+APNTWK=C5EXX2511RRR69W2ZMIT274V3111)

The command AT+APNTGS allows the user to read the APNT module Serial Number.

The command AT+APNTUK allows the user to restore the license key.

danger

+APNTUK will erase the current APNT License Key and fallback to the previous one, in a case where there is only one APNT License Key loaded, running this command may result in losing the only License Key