NMEA Over UDP

Technical & Application Notes

This feature is available on the VersaSync and SecureSync 2400 products and is used for special applications that require a once-per-second NMEA UDP message to be sent out by the system via multicast. This message will be transmitted within 200 ms of the corresponding rising edge of the 1PPS pulse. NMEA over UDP is configured using CLI commands; there is currently no Web UI page for this functionality.

The NMEA message consists of 3 parts:

  1. A header: Header of the frame
  2. The ZDA data: ZDA NMEA standard message
  3. The SFT data: A proprietary NMEA message that carries system status information
Name Value Type or Format Min Max Size Description
HEADER SOURCE PORT 1024 49151 2 Time server port
DESTINATION PORT 1024 49151 2 Port to be used to send the frame over UDP defined by the user
LENGTH 2 Size of the message including the header size
CHECKSUM 0x00 2 Fixed value (not used)
MESSAGE ID 23 Integer 2 Fixed value
ZDA DATA START DELIMITER $ ASCII character 1 Fixed value
CONSTELLATION SOURCE GP ASCII character 2 Fixed value
MESSAGE NAME ZDA, ASCII character 4 Fixed value
UTC TIME hhmmss.ss, 0 235959.99 1 or 10 Time of the corresponding 1PPS signal, hence the decimals are always zero
UTC DAY xx, 01 31 1 or 3
UTC MONTH xx, 01 12 1 or 3
UTC YEAR xxxx, 0 9999 1 or 5
LOCAL ZONE HOUR [-}xx, -13 13 1, 3 or 4
LOCAL ZONE MINUTES [-]xx -59 59 0, 2 OR 3
CHECKSUM *HH 3 The checksum at the end of each sentenc is the XOR of all of the bytes in the sentence, excluding the inital dollar sign and * character (in hexa)
END DELIMITER <CR><LF> ASCII character 2 Fixed value
SFT DATA START DELIMITER $ ASCII character 2 Fixed Value
CONSTELLATION SOURCE GP ASCII character 2 Fixed value
MESSAGE NAME SFT, ASCII character 4 Fixed value
TFOM sssssssss, 0 999999999 1 or 10 1 sigma, Positive value, Absolute value of the Estimated Time Error in nanoseconds. TFOM field remains empty when the value is invalid.
POWER STATUS 1, 1 1 1 1: powerd
Fixed value
GNSS STATUS x, 0 4 1 0: No GNSS réception, 0 satellites
1: GNSS is available as reference (1PPS and Time
OK)
2: Antenna short circuit
3: Jamming detected
4: GNSS acquisition in process (≥ 1 satellite(s)), or 1PPS OK, or Time OK)
INPUT STATUS x, 0 2 1 0: Inputs not detected / all input are disabled
1: Inputs are enabled
2: 1 or more input is invalid timing on 1 or more input detected
SYNCHRONIZATION STATUS X, 0 2 1 0: Unit is in Holdover (valid)
1: System clock OK (Valid)
2: Invalid Time (Holdover period exceeded, or oscillator damage)
OUTPUT STATUS X, 0 2 1 0: No output signal(s) detected/all outputs are
disabled
1: Outputs are enabled 1.3 Status LEDs
2: Malfunction detected (short circuit, or
overload)
NETWORK STATUS x, 0 2 1 0: No network detected)
1: Network OK, configuration OK
2: Network malfunction detected (e.g., no auto-
negotiation)
FAULT STATUS x, 0 4 1 0: Unit OK
2: Unit requires attention; check other status LEDs, see Web UI
4: Acquiring fix or SW upgrade
TEMPERATURE STATUS x, 0 2 1 0: Temperature OK
2: High temperature detected
CHECKSUM *he 3 The checksum at the end of each sentence is the XOR of all of the bytes in the sentence, excluding the initial dollar sign and * character (in hexa)
END DELIMITER <CR><LF> ASCII character 2 Fixed value

System Time Message Service

This service is a proprietary Orolia (formerly Spectracom) daemon which is present on our products. It allows the unit to send a defined message over UDP before every 1PPS signal. The NMEA over UDP feature uses this service to transmit the message described above.

Note: By default, the Orolia message is sent over UDP before every 1PPS signal. It contains the time when the next 1PPS discrete will occur. The message format is:

Parameters Size (bytes) Description
Message ID 4 Enable or disable the sending of the NMEA frame over UDP
Message Size 4 Total message size in bytes
Seconds 4 Seconds since epoch (00:00:00 Jan 1, 1970 UTC)
Nano Seconds 4 NSec within the current second
EOM 4 End-of-message

Configuration of NMEA over UDP

The user can configure the feature by using a command line interface as described below. This configuration is saved in a file (stmd.conf) which is used to replay the configuration after a reboot.

Command Line Interface

The CLI command sendnmeaudp is used to configure, enable, and disable the NMEA over UDP feature. The usage of the command is:

sendnmeaudp <nmea enable> [<multicast address> <port number> <local enable>] [<local hour> <local minute>]

Parameters Range Description
NMEA ENABLE 0/1 Enable or disable the sending of the NMEA frame over UDP
MULTICAST ADDRESS 239.0.0.1 to 239.255.255.255 Address to be used to send the frame over UDP
PORT NUMBER 1024 to 49151 Port to be used to send the frame over UDP
LOCAL CLOCK ENABLE 0/1 Enable or disable local clock to be set
LOCAL HOUR -13 to 13 The local clock hour which is specified with a positive or negative offset
LOCAL MINUTE -59 to 59 The local clock minute which is specified with a positive or negative offset

Note: To stop sending an NMEA frame over UDP

Execute: sendnmeaudp 0

Note: To send an NMEA frame over UDP without a local clock

Execute: sendnmeaudp 1 <multicast address> <port number> 0

Note: To send an NMEA frame over UDP with a local clock

Execute: sendnmeaudp 1 <multicast address> <port number> 1 <local hour> <local minute>

Error Messages

The CLI returns error messages when a bad parameter is passed through the command, as follows:

Error Message Description
Invalid arguments
Usage: sendnmeaudp <nmea enable(0/1)> [<multicast address> <port number> <local enable(0/1)> [<local hour(+/-13)> <local minute (+/-59)>]]
Displayed when the number of arguments is not correct
Failed to read STM file configuration (stmd.conf) Displayed when the system cannot read data from the configuration file
Invalid NMEA enable. It must be 0 or 1 Displayed when the Nmea enable is not equal to 0 or 1
Invalid multicast address. It must be 239.0.0.1 to 239.255.255.255 Displayed when the multicast address is out off range
Invalid port number. It must be 1024 to 49151 Displayed when the port number is out of range
Invalid local enable. It must be be 0 or 1 Displayed when the local enable is not equal to 0 or 1
Invalid local hour. It must be -13 to 13 Displayed when the local hour is out of range
Invalid local minute. It must be -59 to 59 Displayed when the local minute is out of range
Failed to write STM file configuration (stmd.conf) Displayed when the system cannot read data in the configuration file
Failed to start STM service Displayed when the system cannot start STM service
Failed to reload the file configuration Displayed when the system cannot reload the configuration file

Support

If you have any questions or comments regarding any of the above-mentioned information or instructions, or require assistance, please contact Orolia Support Services.

Support Page