Commit Graph

1158 Commits

Author SHA1 Message Date
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
Thomas Frans d52f49ec36 AP_GPS: SBF report correct satellite count on NrSV DNU value
When the NrSV field of the SBF PVTGeodetic message contains the
Do-Not-Use value of 255, set the satellite count to 0 instead of
ignoring the change.
2024-04-11 18:35:16 +10:00
Peter Barker b03b8309ef AP_GPS: copy GPS metadata in for pre-per-instance-parameters
allows to not break older firmware in terms of available metadata
2024-04-10 16:37:35 +09:00
Peter Barker b0351cd339 AP_GPS: protect detection structures with GPS backend defines
Save some memory when backends are compiled out
2024-04-09 10:25:42 +10:00
Peter Barker b3b4b8905f AP_GPS: add prearm check for blending-enabled-but-not-available 2024-03-26 10:57:35 +11:00
Peter Barker a0b2753766 AP_GPS: remove blended GPS from small boards
those boards which are not including all backends will lose blended after this
2024-03-26 10:57:35 +11:00
Peter Barker f487a25e09 AP_GPS: move blended-GPS functions into AP_GPS_Blended
collects all of these together in preparation for making a backend
2024-03-20 18:27:28 +11:00
Peter Barker 2a010623b2 AP_GPS: allow forwards/backwards for DroneCAN type autoconfig
ArduPilot configures a connected DroneCAN GPS based on its GPS Type.

Given parameter name changes, ArduPilot must be able to configure both new and old AP_Periphs, and new AP_Periphs have to cope with being configured by old ArduPilots.
2024-03-19 19:50:12 +11:00
Peter Barker 9726e55d1c AP_GPS: rename GPS_ to GPS1_ 2024-03-19 19:50:12 +11:00
Peter Barker 50c36de6a4 AP_GPS: add GPS parameter conversion functions 2024-03-19 19:50:12 +11:00
Peter Barker 21fc013016 AP_GPS: use subgroup to hold GPS instance parameters 2024-03-19 19:50:12 +11:00
Peter Barker 8bd05941a1 AP_GPS: stop passing serial manager to GPS init
it can get this via the singleton
2024-03-19 07:28:55 +11:00
Peter Barker 4811a10e1a AP_GPS: exclude more code based on HAL_LOGGING_ENABLED 2024-03-19 07:28:23 +11:00
Peter Barker 8ab3b0db37 AP_GPS: correct update_primary check
takes an instance, not a type
2024-03-12 20:50:18 +11:00
Peter Barker 466b4b6c2e AP_GPS: create convenience methods is_rtk_base and is_rtk_rover 2024-03-12 08:51:11 +11:00
Peter Barker b4f5d49adb AP_GPS: remove redundant check
get_type has this sanity check
2024-03-12 08:51:11 +11:00
Peter Barker 093709cbe3 AP_GPS: avoid use of _type
some of these methods are taking the instance in externally.  Protect by using get_type
2024-03-12 08:51:11 +11:00
Andrew Tridgell 0f6f738a33 AP_GPS: added option to decode RTCM injected data
this allows for redundent RTCM links (eg. WiFi and SiK links for light
show drones) without causing corruption into the GPS.

If the GPS_DRV_OPTION bit is set then we instantiate a separate RTCM3
decoder per mavlink channel, and only inject when we get a full packet
that passes the RTCM 24 bit CRC
2024-03-06 19:38:06 +11:00