firmware/src/gps
Tom Fifield 468b40e8db
Wait until after GPS lock hold before updating position, if we can. (#8064)
* Wait until after GPS lock hold before updating position, if we can.

After the recent patch, we hold lock for a bit before updating the position.
The positions that come in after the hold are genuinely better positions
 than what we've been doing before. However, they only come 20 seconds
 after we've got lock.

Previously, we would update the local position as soon as we got a lock as well
as at the end of the hold, since a hold was not always possible.
With this patch, if the settings allow, we should skip that first local position update.

Fixes https://github.com/meshtastic/firmware/issues/8029

* Fix falling edge handling.

* spelling

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Congeal lock handling

* Add named constants

* define unit to avoid confusion

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* ifdef, not if.

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Add handling for when we first turn on.

* Don't run if not active

* Reset fixhold

* Logic fixes

* Add path for ACTIVE--> IDLE --> ACTIVE

Previously we only covered HARDSLEEP --> ACTIVE.

* Change hold time to gps_update_interval - 10s

* Update comment

* Add extra buffer to avoid re-starting hold

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2025-10-07 06:24:09 -05:00
..
cas.h A second round of cleanup on GPS.h. (#5433) 2024-11-25 05:32:04 -06:00
GeoCoord.cpp Clean up some inline functions (#5454) 2024-11-26 14:00:10 -06:00
GeoCoord.h Clean up some inline functions (#5454) 2024-11-26 14:00:10 -06:00
GPS.cpp Wait until after GPS lock hold before updating position, if we can. (#8064) 2025-10-07 06:24:09 -05:00
GPS.h Wait until after GPS lock hold before updating position, if we can. (#8064) 2025-10-07 06:24:09 -05:00
GPSUpdateScheduling.cpp More reduction (#5256) 2024-11-04 19:15:59 -06:00
GPSUpdateScheduling.h
NMEAWPL.cpp Fixed NMEA sentence issue in CalTopo as well as bug with no printing all of the nodes (#5412) 2024-11-21 20:13:30 +08:00
NMEAWPL.h
RTC.cpp Check the BUILD_EPOCH if defined 2025-10-01 13:32:44 -05:00
RTC.h Initial support for T-Rex 2025-10-01 13:32:44 -05:00
ubx.h chore: update ubx.h (#6522) 2025-04-08 14:04:33 -05:00