Commit Graph

1175 Commits

Author SHA1 Message Date
Peter Barker
434c2b3efa AP_GPS: remove SBP raw logging
takes up flash for everyone

packet definitions are invalid

newer features in ArduPilot which work for all GPS (including replay capability) are better
2025-03-11 12:23:15 +11:00
Peter Barker
c47a208b8b AP_GPS: SBF: send debug output to GCS_SEND_TEXT not console
so much more useful generally
2025-03-04 11:34:45 +11:00
Peter Barker
f1cbfa0363 AP_GPS: discard SBF packets with claimed length > 256 bytes
messages coming in with a size of 24120 bytes.  It takes so long to try to read those bytes in (at the device's message rate) that we time out the GCS and try detecting again
2025-03-04 11:34:45 +11:00
Peter Barker
ba35528150 AP_GPS: correct GNSS_MODE parameter description 2025-02-28 07:44:45 +11:00
Peter Barker
353744e3f0 AP_GPS: UBLOX: fix memory leak when "F9" GNSS configuration is used
pointer persists in the object and is re-used, but never freed.

Not really a problem if you're only detecting once, could be a problem if you've got intermittent connectivity to your GPS...
2025-02-26 18:37:39 +11:00
Peter Barker
6338d10b5f global: create and use HAL_PROGRAM_SIZE_LIMIT_KB
We will reserve BOARD_FLASH_SIZE for the internal flash on stm32 flash processors, use HAL_PROGRAM_SIZE_LIMIT_KB in the general code base.

Notable change here is that boards with external flash will start to get features only available with more than 2MB of program storage
2025-02-26 10:06:39 +11:00
Andrew Tridgell
500d190df3 AP_GPS: prevent NULL ptr deref
if we get an unexpected VALSET NACK we could dereference NULL. This
could happen if we reboot while configuring an invalid key
2025-02-25 11:08:56 +11:00
Andrew Tridgell
69c540a0de AP_GPS: fixed the check for disabling CONFIG_RATE_SOL config
we should stop looking for SOL as soon as we know we have PVT, instead
of waiting for all others to be cleared

may help with
https://discuss.ardupilot.org/t/fc-tries-to-config-gps-constantly-when-trying-to-arm-in-loiter-mode/129930
2025-02-25 11:08:56 +11:00
Peter Barker
922f86a7ed AP_GPS: correct uBlox config debugging 2025-02-21 21:47:51 -05:00
Peter Barker
8f420defc1 AP_GPS: move defaulting of ublox speed change into linux hwdef 2025-02-19 15:42:52 +11:00
Ryan Friedman
da1cc33018 AP_GPS: refactor GSOF to expect packets by ID
Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2025-01-08 08:52:21 +11:00
Eric Katzfey
93ba994eb1 AP_GPS: Cast enum to int to fix compiler warning when max enum value is less than the constant being compared to. 2024-12-15 15:16:21 +11:00
Thomas Watson
360e54f871 AP_GPS: optimize DroneCAN subscription process
* remove unnecessary nullptr check, these are always called from an
  initialized AP_DroneCAN so if it's nullptr something has gone
  horrifically wrong

* pass in driver index instead of repeatedly calling function to get it

* simplify error handling; knowing exactly which allocation failed is not
  super helpful and one failing likely means subsequent ones will too,
  as it can only fail due to being out of memory
2024-11-18 10:30:29 +11:00
Eric Katzfey
4d75b44775 AP_GPS: Remove unused private member to get rid of compiler warning in Qurt build 2024-11-16 19:20:11 +11:00
Peter Barker
f38668bd6a AP_GPS: remove handling of HIL_GPS
... per deprecation/removal schedule
2024-11-13 19:41:00 +11:00
Peter Barker
20fa2b0741 AP_GPS: don't compile support for sending rtk messages if no backend supports it 2024-11-13 19:40:19 +11:00
Peter Barker
199074ce34 AP_GPS: add specific defines for sending of GPS mavlink messages 2024-11-13 19:40:19 +11:00
Peter Barker
8dec79d136 AP_GPS: use AP_GPS_FixType for ExternalAHRS fix type 2024-10-01 10:32:11 +10:00
Peter Barker
1d91962b96 AP_GPS: move initialisation of some members into header 2024-09-24 09:30:05 +10:00
Henry Wurzburg
9f8acbab39 AP_GPS: add legacy label to gps and ice params 2024-09-06 14:46:50 +10:00
Peter Barker
0e33a0f8f7 AP_GPS: mark GPS_TYPE as @Legacy 2024-09-06 11:52:58 +10:00
Peter Barker
864a7a2a4b AP_GPS: define GPS_BLENDED_INSTANCE any time AP_GPS_BLENDED_ENABLED
otherwise someone can explicity ebable it but not have a blended instance ID
2024-09-02 11:53:12 +10:00
Henry Wurzburg
4a72373624 AP_GPS:fix metadata typo 2024-08-28 15:31:08 +10:00
Henry Wurzburg
1631e85fe8 AP_GPS:add note to old param names to avoid confusion 2024-08-27 12:00:14 +10:00
Peter Barker
39b4b80a5f AP_GPS: create real AP_GPS_Blended backend 2024-08-27 09:26:06 +10:00
Peter Barker
2e1364e3b0 autotest: include SBF when testing GPS backends work 2024-08-21 06:31:41 +10:00
Peter Barker
3bde446538 AP_GPS: SBF: avoid FPE when undulation is DNF 2024-08-21 06:31:41 +10:00
Peter Barker
8ee7bf2dcb AP_GPS: change GPS_TYPE value 10 from SBF to Septentrio 2024-08-20 20:45:45 +10:00
Ryan Friedman
724e61fa70 Tools: factor out common library for GSOF
* Add tests too

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-08-20 14:50:05 +10:00
Ryan Friedman
f8295cb52b AP_GPS: factor out common library for GSOF
* Add tests too

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-08-20 14:50:05 +10:00
Andrew Tridgell
669cb6563b AP_GPS: allow for EAHRS_SENSORS to not include GPS
this allows external AHRS GPS to not be presented to AP_GPS as a
possible driver
2024-08-20 10:27:01 +10:00
Andrew Tridgell
d225683d69 AP_GPS: fixed unconfigured uBlox pre-arm
when GPS_GNSS_MODE is zero (the default) we could get stuck trying to
configure the GNSS for F9P
2024-08-13 10:49:09 +10:00
chiara-septentrio
fc8147ead0 AP_GPS:Septentrio constellation choice 2024-07-23 10:32:32 +10:00
Willian Galvani
ef9763fdd7 AP_GPS: hdop and vdop are unitless 2024-07-14 17:23:15 +10:00
Peter Barker
71332dd039 AP_GPS: example: do not instantiate AP_BoardLED unless the board supports it 2024-07-11 09:34:00 +10:00
Peter Barker
b2a7fcda5c AP_GPS: resolve compilation problem with timeval
./../libraries/AP_GPS/AP_GPS_SITL.cpp:37:27: error: aggregate 'timeval first_tv' has incomplete type and cannot be defined
    37 |     static struct timeval first_tv;
       |                           ^~~~~~~~
 compilation terminated due to -Wfatal-errors.

 Waf: Leaving directory `/ardupilot/src/build/sitl'
 Build failed
  -> task in 'objs/AP_GPS' failed (exit status 1):
  {task 135805090486368: cxx AP_GPS_SITL.cpp -> AP_GPS_SITL.cpp.0.o}
2024-07-11 09:22:12 +10:00
Andrew Tridgell
681e2d7993 AP_GPS: don't consider uBlox PVT time correct unless we have 2D fix
the time may be set by an offline assistance client and may not be
accurate
2024-07-02 10:25:03 +10:00
Peter Barker
42805aa892 AP_GPS: confine inter-instance DroneCAN state checks to DroneCAN GPSs
stop these looking at parameters/state for all GPSs, focus on DroneCAN GPSs
2024-07-02 09:56:40 +10:00
Peter Barker
ebfbcacfe3 AP_GPS: tidy pre_arm_checks 2024-07-02 09:56:40 +10:00
bugobliterator
178cf7c2da AP_GPS: use 64 bit time in the pps interrupt callback in ublox driver 2024-06-26 17:51:31 +10:00
Simon Hancock
d6f0d9b57c AP_GPS: Update description of VDop and HDop log params 2024-06-19 09:38:59 +10:00
Andy Piper
2af6358c07 AP_GPS: dynamically allocate config_GNSS 2024-06-10 06:53:23 +10:00
Andy Piper
a9dc7b440f AP_GPS: support GPSx_GNSS_MODE for F9P
support detecting F9P hardware variant
fix bug in extension buffer management
support NEO-F9P GNSS configuration
allow multiple configuration values to be set in one go
phase F9 configuration to account for GNSS reset
2024-06-10 06:53:23 +10:00
Andrew Tridgell
1e075aeb80 AP_GPS: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Bron2002
165b0e929f AP_GPS: add checking of instance number before update with incoming data 2024-06-03 12:18:11 +10:00
Peter Barker
05b8c28ea9 AP_GPS: allow handling of AP_MAVLINK_MSG_HIL_GPS_ENABLED to be compiled out 2024-05-23 09:16:32 +10:00
Randy Mackay
31720d2c83 AP_GPS: TYPE param value renamed to MAVLink 2024-05-21 08:38:59 +10:00
Ryan Friedman
3b1ba19640 AP_GPS: fix GPS headings
* If you don't wrap the heading, you can get a flyaway

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-05-12 21:06:52 +10:00
Andrew Tridgell
fe42171268 AP_GPS: make get_RelPosHeading boolean 2024-04-23 10:32:43 +10:00
Peter Barker
cd9aa0e3ed AP_GPS: remove dedundant crc32 routine from Nova 2024-04-16 10:02:47 +10:00