Andy Piper
2af6358c07
AP_GPS: dynamically allocate config_GNSS
2024-06-10 06:53:23 +10:00
Andy Piper
90f7222f98
AP_HAL_ChibiOS: enable LEDs on Here4AP
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
Bill Geyer
c77f688032
AP_Motors: fix spacing
...
Co-authored-by: Peter Hall <33176108+IamPete1@users.noreply.github.com>
2024-06-09 13:24:38 -04:00
MattKear
3a311a9d69
AP_Motors: Heli: Fix SWSH logging for reversed collectives
2024-06-09 13:24:38 -04:00
Paul Riseborough
61874da020
AP_NavEKF3: Rework method of synthesising airspeed for dead reckoning
...
The previous method resulted in data incest and fusion of predicted airspeed on every EKF internal time step.
This was not apparent during flight where the vehicle was turning, but during long straight legs did not constrain along track drift.
2024-06-09 14:25:02 +10:00
Paul Riseborough
720c2da807
AP_NavEKF3: Rework GPS jamming resiliency
...
Make it user selectable.
Remove potential for a race condition between decisions based on latest data and the EKF fusion processing which operates on a delayed time horizon. This is achieved by preventing data entering the buffer if awaiting checks to pass ensuring that no EKF fusion time horizon processes can use data that hasn't passed checks.
Log the waitingForGpsChecks class variable
2024-06-09 14:25:02 +10:00
Paul Riseborough
996bf7d4df
AP_NavEKF3: Log gpsGoodToAlign
2024-06-09 14:25:02 +10:00
Paul Riseborough
eb2ff2192d
AP_NavEKF3: Don't block no compass planes from running GPS alignment checks
2024-06-09 14:25:02 +10:00
Paul Riseborough
6baeb1cd9d
AP_NavEKF3: Fix bug causing in flight yaw align to not complete
2024-06-09 14:25:02 +10:00
Paul Riseborough
ffde7f815c
AP_NavEKF3: Allow wind to relearn rapidly when GPS is re-enabled
2024-06-09 14:25:02 +10:00
Paul Riseborough
87bf8d9997
AP_NavEKF3: Treat wind as truth when deadreckoning with no airspeed sensor
2024-06-09 14:25:02 +10:00
Paul Riseborough
568972c0f0
AP_NavEKF3: Fix bug preventing use of default or synthetic airspeed
2024-06-09 14:25:02 +10:00
Paul Riseborough
2c3174b77b
AP_NavEKF3: Strengthen protection against GPS jamming
...
These changes prevent the EKF from consuming GPS data too soon when it is recovering from jamming if the EKF is able to navigate using dead reckoning.
2024-06-09 14:25:02 +10:00
Paul Riseborough
324d5da811
AP_NavEKF3: Use last observed wind states to enable dead reckoning
...
These changes enable the EKF to use the last observable wind velocity vector estimate to synthesise an airspeed measurement if operating without an airspeed sensor and when all other measurement types that can constrain velocoty drift are lost. This enables the EKF to use dead reckoning to continue after loss of GPS when there is no air speed sensor fitted and without the need to set a default airspeed value.
The logic used to fuse a default airspeed value has also been cleaned up and the call to FuseAirSpeed() from inside SelectBetaDragFusion() has been removed.
AP_NavEKF3: Fix error in default airspeed observation variance
AP_NavEKF3: Enable shadow fusion of airspeed when sensor is disabled
2024-06-09 14:25:02 +10:00
Paul Riseborough
e53416e77b
AP_NavEKF3: Apply GPS quality checks following loss of 3D fix if velocity error is bounded
2024-06-09 14:25:02 +10:00
MattKear
5784abde1f
AP_Motors: Heli dual: Constrain cyclic roll for intermeshing
2024-06-08 23:13:28 -04:00
Andrew Tridgell
c783f632c1
AP_Scription: added CANF logging to Halo6000 EFI driver
...
allows for easier debugging
2024-06-09 08:37:44 +10:00
Iampete1
1c5c80d244
AP_Scripting: Docs: remove stray grave
2024-06-08 07:29:53 +10:00
Andrew Tridgell
e9d39d80f4
AP_InertialSensor: fixed ICM42670
...
highres sampling is not working on the ICM42670 on some versions of
the Pixhawk6X. Disable for now.
2024-06-07 19:44:48 +10:00
Iampete1
cb22a6389d
AP_Scripting: add virtual class in docs to avoid need nil check warning
2024-06-07 06:30:22 +10:00
muramura
dfc04cd53a
AP_Notify: Convert the ENUM definition to a class
2024-06-06 15:15:14 -04:00
George Zogopoulos
d2901dc9c9
SITL: Removed trailing underscore
2024-06-05 19:03:31 +10:00
Peter Barker
78fcf7057c
GCS_MAVLink: move switch for sending camera messages into AP_Camera
...
neatens GCS_Common a bit, reduces repetitive code
2024-06-05 10:29:01 +10:00
Peter Barker
5538f6735f
AP_Camera: move switch for sending camera messages into AP_Camera
...
neatens GCS_Common a bit, reduces repetitive code
2024-06-05 10:29:01 +10:00
Iampete1
364419be81
AP_Scripting: docs: allow overload of manual bindings to allow documentation of optional arguments
2024-06-04 09:29:49 +10:00
Iampete1
f54ca766df
AP_Scripting: tests: luacheck.lua: ignore lua-language-server
2024-06-04 09:29:49 +10:00
Iampete1
93642026aa
AP_Scripting: tests: check.json: check files it gitignore but not self
2024-06-04 09:29:49 +10:00
Henry Wurzburg
3b86c0527f
AP_BLHeli:expand metadata of 3d and Reverse masks
2024-06-04 09:24:41 +10:00
Henry Wurzburg
887e4713e6
AP_HAL_ChibiOS:remove fetaures to allow boards to build
2024-06-04 09:23:43 +10:00
Andrew Tridgell
6233bc0e10
HAL_Empty: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
ceac4969d5
AP_Networking: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
e97a6c7089
AP_InertialSensor: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
35a8f6c7b2
AP_DroneCAN: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
265e2a4d6b
StorageManager: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
3682e3aad3
SRV_Channel: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
4e1b2b95d4
SITL: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
9b046f5a12
GCS_MAVLink: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
5859250651
Filter: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
db6bcdb725
AP_WindVane: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
76d16e2d78
AP_Winch: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
20a5ec4348
AP_WheelEncoder: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
659ecf6159
AP_VisualOdom: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
6a96df4792
AP_Vehicle: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
30228f5e6e
AP_Torqeedo: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
65822c01ed
AP_TemperatureSensor: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
93484ec81d
AP_TempCalibration: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
a2459c6e61
AP_Scripting: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
5af89a4291
AP_Scheduler: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
c1bdf15c1d
AP_RPM: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00