Commit Graph

63563 Commits

Author SHA1 Message Date
Peter Barker 89eade0836 AP_Follow: factor out a Log_Write_FOLL method 2024-06-11 16:20:20 +10:00
Peter Barker 6765838a3c AP_Follow: factor out a should_handle_message method 2024-06-11 16:20:20 +10:00
Peter Barker 72fa6aa410 ArduCopter: clarify frame of get_location_from_origin_offset
... by renaming it get_location_from_origin_offset_NED
2024-06-11 14:57:56 +10:00
Peter Barker 7ea2e60b5a AP_AHRS: clarify frame of get_location_from_origin_offset
... by renaming it get_location_from_origin_offset_NED
2024-06-11 14:57:56 +10:00
Michelle Rossouw 7e5810a746 Tools: Added option to set environment variable to not add the compile_commands.json to VSCode's c_cpp_properties.json 2024-06-11 14:29:06 +10:00
Peter Barker 47625e693e autotest: test guided attitude control with no GPS 2024-06-11 14:17:10 +10:00
Peter Barker 470663b30b autotest: add test for simulated Copter clamp 2024-06-11 09:56:43 +10:00
Peter Barker 5994664bf9 SITL: add simulated tie-down clamp 2024-06-11 09:56:43 +10:00
Peter Barker 911375fa9a AP_Common: rearrange get_vector_from_origin_NEU to be less destructive
this change means that if the origin call failes we don't half-update the object before returning false
2024-06-11 09:47:14 +10:00
Peter Barker 500ca22c75 AP_Follow: clarify what we're doing when rotating a vector
odd sort of a transform, make it clear what's happening
2024-06-11 09:41:32 +10:00
Peter Barker 9c42a5d9dd GCS_MAVLink: warn on use of old fence point / rally point protocols 2024-06-11 09:39:56 +10:00
Peter Barker c5f902919e AC_Fence: warn on use of old fence point / rally point protocols 2024-06-11 09:39:56 +10:00
Peter Barker 2d7a4b318d AP_NavEKF: tidy creation of vectors 2024-06-11 09:38:54 +10:00
Peter Barker 4fb8408e80 GCS_MAVLink: clarify timeline on removal of HIL_GPS and BATTERY2
try to move to a standard greppable pattern for code to be removed
2024-06-11 09:37:56 +10:00
Peter Barker 81e08b16c9 autotest: remove test for mount_control mavlink message
no longer compiled in by default
2024-06-11 09:37:56 +10:00
Peter Barker d250d9cb2b GCS_MAVLink: remove MOUNT_CONFIGURE/MOUNT_CONTROL handling by default 2024-06-11 09:37:56 +10:00
Peter Barker 0dff221a9b board_types.txt: add missing MazzyStarDrone board ID reservation 2024-06-11 09:34:09 +10:00
Peter Barker e7e1d72abf board_types.txt: add missing kha_eth board ID reservation 2024-06-11 09:34:09 +10:00
Peter Barker a8fa44a953 board_types.txt: remove space and + from ArduPilot names 2024-06-11 09:34:09 +10:00
Peter Barker fc560e8219 GCS_MAVLink: avoid casting DroneCAN backend to incorrect type
- split get_type into allocated_type and configured_type
 - check allocated type rather than configured type when looking at backends

Prevents overwrite of random memory when backends are changed at runtime.
2024-06-11 09:31:46 +10:00
Peter Barker 029e0b15b3 AP_BattMonitor: avoid casting DroneCAN backend to incorrect type
- split get_type into allocated_type and configured_type
 - check allocated type rather than configured type when looking at backends

Prevents overwrite of random memory when backends are changed at runtime.
2024-06-11 09:31:46 +10:00
Peter Barker 364452ffc8 autotest: add test for DroneCAN battery handling 2024-06-11 09:31:46 +10:00
Peter Barker dd56f2465b SITL: make simulated SBP2 vastly more accurate
I have no idea if this is actually the sort of number which these devices will return.

However, for the EKF to be happy with the GPS the reported speed accuracy must be much lower than the SBP2 driver reports when we give it these numbers.

It might be that we are interpretting these fields incorrectly in the driver and that the simulator is, in fact, correct.
2024-06-11 09:29:14 +10:00
Peter Barker 3c2f7944eb autotest: test SBP2 as part of GPSTypes check 2024-06-11 09:29:14 +10:00
Brad Bosch 3b150d2e4c GCS_MAVLink: Add support for parity to Serial passthrough
Add code to reflect USB ACM parity setting to the passthrough port alongside existing support for ACM baud rate changes.  Some use cases for serial passthrough require specific parity settings.

For example, even parity is used and required by the USART protocol used in the STM32 system bootloader. This enhancement allows the use of standard flash programming tools such as STM32CubeProgrammer to flash connected STM based peripherals such as Receivers and Telemetry radios via serial passthrough.  Some examples of such peripherals include the FrSky R9 receivers as well as various other STM based LoRa modules used by the mLRS project.
2024-06-11 09:24:32 +10:00
Brad Bosch f2f9349419 AP_HAL: Add support for parity to Serial passthrough
Add code to reflect USB ACM parity setting to the passthrough port alongside existing support for ACM baud rate changes.  Some use cases for serial passthrough require specific parity settings.

For example, even parity is used and required by the USART protocol used in the STM32 system bootloader. This enhancement allows the use of standard flash programming tools such as STM32CubeProgrammer to flash connected STM based peripherals such as Receivers and Telemetry radios via serial passthrough.  Some examples of such peripherals include the FrSky R9 receivers as well as various other STM based LoRa modules used by the mLRS project.
2024-06-11 09:24:32 +10:00
muramura da3a9c1cc6 Copter: Enable processing 2024-06-11 09:17:59 +10:00
muramura f7cc7eea90 Rover: Use common variables 2024-06-11 09:16:21 +10:00
muramura 5107cb495a Copter: Change the sub-mode description 2024-06-11 09:14:31 +10:00
Martin Luessi 3201622d38 AP_HAL_ChibiOS: Update readme for RADIX2HD 2024-06-11 09:11:09 +10:00
Peter Barker 6751bce0fc SITL: log number of times sim paused on serial0 buffer
SITL pauses the simulation if we do not have a minimum amount of space in its out queue.

Log the number of times we do this.
2024-06-11 08:51:25 +10:00
Peter Barker 6ae0b5ec5b AP_HAL_SITL: log number of times sim paused on serial0 buffer
SITL pauses the simulation if we do not have a minimum amount of space in its out queue.

Log the number of times we do this.
2024-06-11 08:51:25 +10:00
subashchandar 7e59b8c5a0 hwdef: update PixFlamingo_f767 README 2024-06-11 08:42:56 +10:00
Peter Barker 7cf96fb0a1 autotest: add a lineno method
allows for debug like this:

print(f"{self.lineno()} {self.mav.message_hooks=}")
2024-06-10 07:04:40 +10:00
Peter Barker 2a964c44d4 autotest: copy message hooks while iterating over them for removal
won't remove a number of entries from the end of the list if others have been removed
2024-06-10 07:04:40 +10:00
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 5c76e77c11 autotest: Reduce time threshold used in plane deadreckoning test 2024-06-09 14:25:02 +10:00
Andrew Tridgell 09623f46e8 autotest: enable LOG_REPLAY in deadreckoning test 2024-06-09 14:25:02 +10:00
Paul Riseborough b17e189473 Tools: update AHRS_OPTIONS for dead reckoning test 2024-06-09 14:25:02 +10:00
Paul Riseborough 19f6b2d6d6 Tools: relax req accuracy for plane dead reckoning when not using airspeed 2024-06-09 14:25:02 +10:00
Paul Riseborough 9d2b05840b Tools: Disable DCM fallback for plane dead reckoning tests 2024-06-09 14:25:02 +10: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 87a867ee2e Tools: Use GPS jamming option in EKF dead reckoning autotests 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