Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test: GPS off by numsats < 10 && hdop > 1.2 #26655

Closed

Conversation

dimrix81
Copy link

There was a task make NO_GPS, but this state (NO_FIX) is more logical: GPS is available, but not enough

@rmackay9
Copy link
Contributor

rmackay9 commented Apr 1, 2024

Hi @dimrix81,

Can you clarify a bit more what the issue is that you're seeing?

Are you saying that if the GPS has some satellites but its fix state is still not yet FIX_2D so to the user it appears as NO_GPS instead of NO_FIX?

@@ -866,6 +866,10 @@ void AP_GPS::update_instance(uint8_t instance)
// we have an active driver for this instance
bool result = drivers[instance]->read();
uint32_t tnow = AP_HAL::millis();

if ((state[instance].num_sats < 10) && (state[instance].hdop > 120)) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This doesn't look right. If you want to add quality measures like this then they belong elsewhere in the code (and they do exist elsewhere in the code).

Modifying the fix type just because you don't like some aspect of the fix isn't correct IMO, and will lead to unexpected behavioural changes where e.g. we use the time from the satellites even when we're not using the co-ordinates.

@rmackay9
Copy link
Contributor

rmackay9 commented Apr 5, 2024

We haven't heard any reply so maybe I'll go ahead and close this.

@rmackay9 rmackay9 closed this Apr 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants