Introduction
GNSS signal jamming and position spoofing have become highly relevant topics in today’s geopolitical climate. Ongoing global conflicts have made GNSS jamming a widely used tactic to disrupt satellite-based positioning systems, effectively denying service availability in targeted regions.
However, jamming is not limited to military or defense-related applications. It poses a threat to a range of civil and commercial sectors, including asset tracking, transportation, civil aviation, and critical infrastructure. Even localized jamming incidents can compromise the reliability of navigation systems, leading to safety risks and operational disruptions.
To enhance positioning reliability, u-blox GNSS receivers have long incorporated anti-jamming and anti-spoofing technologies. These include both hardware and software-based mitigation techniques such as RF filtering, adaptive filtering, and signal integrity monitoring. Moreover, the ability to track multiple GNSS constellations simultaneously—combined with the adoption of dual-, tri-, and multi-band reception capabilities in advanced modules like the ZED-F9P, ZED-F20P, and ZED-X20P—significantly improves system resilience against interference.
While these intrinsic features enable a receiver to maintain a valid position through many types of attacks, it’s equally important that the host system is aware of any ongoing interference. Early detection of jamming or spoofing conditions allows the host to assess the risk and take appropriate fallback actions, such as alerting the user or switching to inertial backup systems.
As part of my ongoing work, this article explores the key diagnostic messages and indicators available from u-blox receivers that can be used to monitor jamming conditions in real time. Additionally, it outlines a simple test scenario using basic equipment to simulate and analyze the impact of GNSS interference—providing a hands-on guide for enhancing system-level situational awareness.
A- Used equipment and tools
Ublox NEO-M9V , single band L1 receiver.
https://www.u-blox.com/en/product/neo-m9v-module
tinySA Ultra+ , low cost spectrum analyzer, with signal generated capability.
u-center software
https://www.u-blox.com/en/product/u-center
B- Ublox dedicated diagnostics messages
Couple of messages are available depending on the chipset family.
1- UBX-MON-SPAN
The UBX-MON-SPAN message is primarily useful during development and hardware validation phases to detect self-generated noise from the system that could degrade GNSS performance. It helps identify unwanted RF emissions originating from the device itself, which may interfere with satellite signal reception. Additionally, this message can be valuable for identifying abnormal signal patterns or elevated noise levels that may indicate the presence of external jamming signals.
2- UBX-MON-RF / UBX-MON-HW
These messages provide diagnostic information useful for detecting and evaluating potential jamming conditions. Among the relevant parameters:
- AGC Level : A sudden drop in AGC level typically indicates increased background noise, which may be caused by intentional or unintentional jamming. Monitoring AGC behavior over time can help identify such anomalies.
- CW Jamming Indicator: This value reflects the level of continuous wave (CW) interference suppression. A sudden spike suggests the presence of jamming signals. It’s important to interpret this value relative to a baseline measured in a clean, interference-free environment.
- Jamming Status: This flag provides a high-level indication of jamming detection. It is dependent on the ITMF (Interference and Tracking Monitoring Function) configuration under CFG-ITMF. For accurate results, the receiver should not start while already under jamming conditions. Note: This status flag is deprecated in u-blox modules that support SEC-SIG messages.
3- UBX-SEC-SIG
The UBX-SEC-SIG message provides detailed signal integrity status for each frequency band, along with a consolidated flag that summarizes these individual indicators. This allows the host system to assess the overall jamming or spoofing situation with greater accuracy.
This level of detail help specially in a multi-band receiver, where partial interference on one band may not necessarily result in a complete loss of position fix. Therefore, the host can choose to act on the combined jamming indicator flag or continue normal operation as long as the receiver remains functional and not fully compromised.
When used alongside standard navigation messages, UBX-SEC-SIG is one of the most valuable message for enabling intelligent fallback decisions. It equips the host with the situational awareness needed to maintain system integrity.
C- Basic jamming test
The purpose of this test is not to evaluate navigation performance or the receiver’s ability to maintain a position fix under jamming conditions. Rather, it is to verify whether the module can reliably provide jamming or interference indications to the host system using the diagnostic messages described earlier.
1- Test Setup
- NEO-M9V connected to the antenna and to the PC with USB.
- tinySA placed at 30cm from the GNSS antenna and configured as a signal generator.
I will take 5 measurements :
- No jamming signal
- Jamming at 1.575420 GHz
- Jamming at 1.561098 GHz
- Jamming at 1.602000 GHz
- Jamming at full L1 band
2- Test results
2.1- Clean environment
- Looking at the different indicators under SEC-SIG, no jamming is detected.
- AGC level set at around 43% and CW jamming indicator is stable around 7%. These value are the base line for what follows.
2.2- Jamming at 1.575420 GHz
- UBX-MON-SPAN view clearly shows a spike corresponding to the jamming signal frequency.
- UBX-MON-RF , compared to the clean environment measurement, AGC have a lower value and CW jamming indicator is jumping to higher values.
- UBX-SEC-SIG view, jamming flag for 1.575420 GHz is set along with Jamming state flag.
2.3- Jamming at 1.561098 GHz

- UBX-MON-SPAN spike shifted to the new jamming frequency.
- UBX-MON-RF , compared to the clean environment measurement, AGC have a lower value and CW jamming indicator is jumping to higher values.
- UBX-SEC-SIG view, jamming flag for 1.561098 GHz is set along with Jamming state flag.
2.3- Jamming at 1.602000 GHz

- UBX-MON-SPAN spike shifted to the new jamming frequency.
- UBX-MON-RF , compared to the clean environment measurement, AGC have a lower value and CW jamming indicator is jumping to higher values.
- UBX-SEC-SIG view, jamming flag for 1.602000 GHz is set along with Jamming state flag.
2.4- Jamming full L1 band
- UBX-MON-SPAN the signal is noisy.
- UBX-MON-RF , compared to the clean environment measurement, AGC level is much lower value, this is related to the fact that I raised the power level on the tinySA so saturating the NEO RF input. CW jamming indicator is stable at 100%, which is a clear indicator of jamming.
- UBX-SEC-SIG view, jamming flags on all frequencies are set along with Jamming state flag.
D- Conclusion
This basic test confirms that the u-blox GNSS receiver provides accurate and reliable indicators to the host system when exposed to jamming across various frequencies within the L1 band. Each of the diagnostic tools—UBX-MON-SPAN, UBX-MON-RF, and UBX-SEC-SIG—demonstrated meaningful outputs that reflected the presence, frequency, and severity of the interference.
Whether the interference is narrowband or broadband, the GNSS receiver provides the host with actionable insight to maintain safety or trigger mitigation mechanisms.
Disclaimer
Test results shown in this article are only indicative, repeatability is not guaranteed.