qgroundcontrol icon indicating copy to clipboard operation
qgroundcontrol copied to clipboard

GPS: Add support for GNSS receiver resilience information

Open chiara-septentrio opened this issue 1 year ago • 2 comments

Added support for GNSS receivers' resilience information

Description

This pull request modifies the UI to adapt to the resilience information for GPS interference (jamming and spoofing) as well as status for the GPS that were both recently added to mavlink. These changes only impact users that have GPS that use those mavlink messages, otherwise nothing new will show and it won't crowd the UI.

Interference

For interference, the status are shown with a new icon that colors depending on the status:

Status Color Example
Unknown (default) None, the icon won't show N/A
OK White image
Mitigated Orange image
Ongoing Red image

A drop-down menu will then allow user to have more insight into the kind of interference happening, for example:

Example of mitigated interference Example of interference
image image
Note: the lower-case 'i' has been fixed later

Authentication

GNSS authentication is another way to check for interference, for example using Galileo OSNMA. An icon was also added for this purpose the same as the interference with a drop-down menu :

Status Color Example
Unknown (default) None, the icon won't show N/A
OK White
Initializing/In progress Yellow image
Ongoing Red image
Available but sisabled Gray image

GPS Status

The added GPS status message allow to know the error concerning the GPS. If one or more error happen, to warn the user, the GPS icon will turn red and a field, GPS status, will be added to the drop-down menu (it isn't visible otherwise).

Status Example
One error image
Multiple errors image

NB

  • I am more than willing to discuss any changes to the UI to improve this pull request, and implement them.

Test Steps

I used PX4 with the resilience message enabled with a Pixhawk4 and a Septentrio Mosaic go. Not all status could be easily recreated, interference was hard-coded to test its impact on the UI and not all error were tested, only ones that could be provoked. As of creating this pull request, the resilience PR has to be approved after a minor style change and its logic will not be modified, it can be safely used for testing.

Checklist:

Related Issue

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

chiara-septentrio avatar Aug 19 '24 13:08 chiara-septentrio

@julianoes Would it be possible to have some feedback on it shortly? I unfortunatly will soon finish my internship and will have a harder time testing changes

chiara-septentrio avatar Aug 21 '24 08:08 chiara-septentrio

@chiara-septentrio thanks for this. I've put it on my list for next week when I'm back.

julianoes avatar Aug 22 '24 22:08 julianoes

@chiara-septentrio if you have plans to do an update to this, I am definitely interested in it

HTRamsey avatar Oct 29 '24 19:10 HTRamsey

@HTRamsey @chiara-septentrio

Hi guys, it seems this has gone stale. Are there any plans to merge this to master? We are very interested in having it merged.

Thanks,

SkycutterUAS avatar Nov 11 '24 13:11 SkycutterUAS

@SkycutterUAS just need them to resolve conflicts, but looks like they haven't been active in some time

HTRamsey avatar Nov 11 '24 14:11 HTRamsey

Seems someone else will have to do it https://github.com/PX4/PX4-Autopilot/pull/23096#issuecomment-2306965020

HTRamsey avatar Nov 11 '24 20:11 HTRamsey