Skip to content

SensorGnssRf (UORB message)

GNSS RF status.

Reports RF block status for a GNSS receiver, decoded from the u-blox UBX-MON-RF message. Includes antenna status/power, jamming/interference indicators, automatic gain control (AGC), noise level, and I/Q demodulation metrics. Published by the gps driver (UBX protocol only), once per RF block, via the block-specific topics below.

TOPICS: sensor_gnss_rf_block0 sensor_gnss_rf_block1 sensor_gnss_rf_block2

Fields

NameTypeUnit [Frame]Range/EnumDescription
timestampuint64usTime since system start
timestamp_sampleuint64usTimestamp of the raw data
device_iduint32Unique device ID for the sensor that does not change between power cycles
block_iduint8Only used for multi-topic publishing
antenna_statusuint8ANTENNA_STATUSStatus of the antenna supervisor state machine
antenna_poweruint8ANTENNA_POWERAntenna power state
post_statusuint32Power-on self-test (POST) status word (vendor-specific bitmask)
noise_per_msuint16Noise level as measured by the GNSS receiver core
automatic_gain_controluint16[0 : 8191]Automatic Gain Control (AGC) monitor value (8191 = 100% of max gain)
jamming_indicatoruint8[0 : 255]Continuous wave (CW) jamming indicator (0 = no CW jamming, 255 = strong CW jamming)
jamming_stateuint8JAMMING_STATEJamming state
i_offsetint8[-128 : 127]Imbalance of the I-part of the complex signal (0 = no imbalance)
i_magnitudeuint8[0 : 255]Magnitude of the I-part of the complex signal (0 = no signal, 255 = max magnitude)
q_offsetint8[-128 : 127]Imbalance of the Q-part of the complex signal (0 = no imbalance)
q_magnitudeuint8[0 : 255]Magnitude of the Q-part of the complex signal (0 = no signal, 255 = max magnitude)
center_frequencyuint32HzNominal center frequency of the RF block. 0 = unknown.

Enums

ANTENNA_STATUS

Used in field(s): antenna_status

NameTypeValueDescription
ANTENNA_STATUS_INITuint80Initializing
ANTENNA_STATUS_UNKNOWNuint81Status unknown
ANTENNA_STATUS_OKuint82Antenna OK
ANTENNA_STATUS_SHORTuint83Short circuit detected
ANTENNA_STATUS_OPENuint84Open circuit detected

ANTENNA_POWER

Used in field(s): antenna_power

NameTypeValueDescription
ANTENNA_POWER_OFFuint80Power off
ANTENNA_POWER_ONuint81Power on
ANTENNA_POWER_UNKNOWNuint82Power state unknown

JAMMING_STATE

Used in field(s): jamming_state

NameTypeValueDescription
JAMMING_STATE_UNKNOWNuint80Unknown
JAMMING_STATE_OKuint81No jamming detected
JAMMING_STATE_WARNINGuint82Interference visible but fix OK
JAMMING_STATE_CRITICALuint83Interference visible and no fix

Source Message

Source file (GitHub)

Click here to see original file
c
# GNSS RF status
#
# Reports RF block status for a GNSS receiver, decoded from the u-blox UBX-MON-RF message.
# Includes antenna status/power, jamming/interference indicators, automatic gain control (AGC),
# noise level, and I/Q demodulation metrics. Published by the `gps` driver (UBX protocol only), once
# per RF block, via the block-specific topics below.

uint64 timestamp # [us] Time since system start
uint64 timestamp_sample # [us] Timestamp of the raw data

uint32 device_id # Unique device ID for the sensor that does not change between power cycles

uint8 block_id  # [-] Only used for multi-topic publishing

uint8 antenna_status # [@enum ANTENNA_STATUS] Status of the antenna supervisor state machine
uint8 ANTENNA_STATUS_INIT = 0 # Initializing
uint8 ANTENNA_STATUS_UNKNOWN = 1 # Status unknown
uint8 ANTENNA_STATUS_OK = 2 # Antenna OK
uint8 ANTENNA_STATUS_SHORT = 3 # Short circuit detected
uint8 ANTENNA_STATUS_OPEN = 4 # Open circuit detected

uint8 antenna_power # [@enum ANTENNA_POWER] Antenna power state
uint8 ANTENNA_POWER_OFF = 0 # Power off
uint8 ANTENNA_POWER_ON = 1 # Power on
uint8 ANTENNA_POWER_UNKNOWN = 2 # Power state unknown

uint32 post_status # [-] Power-on self-test (POST) status word (vendor-specific bitmask)

uint16 noise_per_ms # [-] Noise level as measured by the GNSS receiver core
uint16 automatic_gain_control # [-] [@range 0, 8191] Automatic Gain Control (AGC) monitor value (8191 = 100% of max gain)
uint8 jamming_indicator # [-] [@range 0, 255] Continuous wave (CW) jamming indicator (0 = no CW jamming, 255 = strong CW jamming)

uint8 jamming_state # [@enum JAMMING_STATE] Jamming state
uint8 JAMMING_STATE_UNKNOWN = 0 # Unknown
uint8 JAMMING_STATE_OK = 1 # No jamming detected
uint8 JAMMING_STATE_WARNING = 2 # Interference visible but fix OK
uint8 JAMMING_STATE_CRITICAL = 3 # Interference visible and no fix

int8 i_offset # [-] [@range -128, 127] Imbalance of the I-part of the complex signal (0 = no imbalance)
uint8 i_magnitude # [-] [@range 0, 255] Magnitude of the I-part of the complex signal (0 = no signal, 255 = max magnitude)
int8 q_offset # [-] [@range -128, 127] Imbalance of the Q-part of the complex signal (0 = no imbalance)
uint8 q_magnitude # [-] [@range 0, 255] Magnitude of the Q-part of the complex signal (0 = no signal, 255 = max magnitude)

uint32 center_frequency # [Hz] Nominal center frequency of the RF block. 0 = unknown.

# One topic per RF block ID
# TOPICS sensor_gnss_rf_block0 sensor_gnss_rf_block1 sensor_gnss_rf_block2