Commit Graph

57404 Commits

Author SHA1 Message Date
Andrew Tridgell
33f81370f4 Plane: use deadzone in stick mixing
this prevents small RC input deviations from impacting non-pilot
controlled modes via stick mixing
2024-01-07 10:59:28 +11:00
Andrew Tridgell
9547a2a6ab AP_GPS: allow GPS moving baseline rover at 3Hz
users with busy CAN bus often get significiantly lower GPS rates on a
moving baseline rover, preventing arming. This PR relaxes the required
frame rate as the EKF is quite happy with 3Hz yaw and the yaw is the
only data consumed from a moving baseline rover
2024-01-07 10:59:28 +11:00
Andrew Tridgell
162a23eee0 AP_Logger: added build directory to VER message
this allows log review tools to use right parameter and mode map when vendor has changed the
vehicle type strings
2024-01-07 10:59:28 +11:00
Andrew Tridgell
0f31b2d82b Tools: rebuild IO firmware for SBUS change 2024-01-07 10:59:28 +11:00
Andrew Tridgell
4cec3f0856 AP_RCProtocol: protect against invalid data in SBUS 2024-01-07 10:59:28 +11:00
Andrew Tridgell
278587b04a Plane: fixed terrain RTL with rally points
this fixes a bug where if the terrain database cache does not have the
tile for the location of a rally point then RTL to the rally point
with TERRAIN_FOLLOW=1 will not track terrain

The underlying issue is that Location::loc.change_alt_frame() will
return false if the location is not in the terrain memory cache. We
can't just extrapolate as the rally point could be in a totally
different terrain area to the current location. So instead we set it
as terrain_following_pending and fix it as soon as the terrain cache
is filled.

fixes https://github.com/ArduPilot/ardupilot/issues/25157
2024-01-07 10:59:28 +11:00
Andrew Tridgell
f88ea97131 AP_OpenDroneID: only load from persistent memory in init()
we do not want to do this from update() as it is an expensive call
2024-01-07 10:59:28 +11:00
Henry Wurzburg
d956a135b5 AP_OSD:Update/correct DisplayPort BF MSP symbols 2024-01-07 10:59:28 +11:00
Henry Wurzburg
ebc157b0e6 AP_OSD:add option to convert home,wind,waypoint and gndspd arrows for BF font set 2024-01-07 10:59:28 +11:00
Andrew Tridgell
5d7e7c0477 AP_BattMonitor: added SHUNT parameter to INS2xx driver
some vendors want different shunt resistors
2024-01-07 10:59:28 +11:00
Andrew Tridgell
429e7d2fc9 Tools: allow Ohm units in parameters
# Conflicts:
#	Tools/autotest/param_metadata/param.py
#	libraries/AP_BattMonitor/AP_BattMonitor_INA2xx.cpp
2024-01-07 10:59:28 +11:00
Andrew Tridgell
3c367d3af4 AP_InertialSensor: fixed the error value for BMI088
the bad value is -32768 not 0xffff (which is -1)

-32768 badly corrupts the low-pass filter, and is what we see in logs
(a large negative spike on all 3 axes)

update to bug fix from:
https://github.com/ArduPilot/ardupilot/pull/23033
2024-01-07 10:59:28 +11:00
alexklimaj
b447157205 hwdef: arkv6x default to no IO MCU 2024-01-07 10:59:28 +11:00
Henry Wurzburg
223ea12689 hwdef:add VTX power control to SpeedyBeeF405-Wing 2024-01-07 10:59:27 +11:00
Peter Barker
e55e9428e5 AP_TECS: ensure good TECS state before running update_pitch_throttle
update_pitch_throttle can be called when update_50hz hasn't run in a very long time, or ever.  This requires a main loop rate >50Hz, and for the mode change to occur in the same loop that update_50Hz doesn't run but update_pitch_throttle does.
2024-01-07 10:59:27 +11:00
Andrew Tridgell
5f69bda431 AP_TECS: fixed descent or lack of climb bug
this fixes a state where we either cannot climb or descend in an
uncontrolled manner in a TECS controlled mode

the conditions under which this happened were:

- _use_synthetic_airspeed_once was true due to quadplane takeoff
- we left _thr_clip_status as MAX from previous use of synthetic airspeed
- then run without airspeed

note that this can also impact users with an airspeed sensor if they
disable it or it fails in flight, particularly during a climb
2024-01-07 10:59:27 +11:00
Peter Barker
379a905abd autotest: CI fixes for 4.4 2024-01-07 10:59:27 +11:00
Peter Barker
b06ba1bacd SITL: fix balancebot yaw reset to be kinimatically consistent
... or at least closer to it.

We were hard-resetting the yaw to zero when the vehicle was upright.  That makes for huge simulated gyro rates, and that means the differences between the gyros can be huge sample-to-sample, so we can get gyros-inconsistent errors.

Fix things so we don't reset yaw at the same time as pitch, and also twist the vehicle to point North again when disarmed.
Backport of PR https://github.com/ArduPilot/ardupilot/pull/25046
2024-01-07 10:59:27 +11:00
Peter Barker
186678848d SITL: reset balancebot to vertical in a kinmetically consistent manner
The hard-reset of all state variables means we feed the EKF inconsistent gyro data.  Attempt to upright the vehicle with a simple p-gain when it is disarmed, as if someone is pushing the thing back upright
Backport of PR https://github.com/ArduPilot/ardupilot/pull/24314
2024-01-07 10:59:27 +11:00
Peter Barker
2caa9321d3 autotest: give Rover longer to arrive home
vagaries of interaction with Python script means we need to give this more time when running balancebot
Backport of PR https://github.com/ArduPilot/ardupilot/pull/23442
2024-01-07 10:59:27 +11:00
Tom Pittenger
33842ad1c9 Tools/autotest: fix Deepstall CI
Backport from PR https://github.com/ArduPilot/ardupilot/pull/24667
2024-01-07 10:59:27 +11:00
Peter Barker
247a0e696a autotest: allow more time for deepstall text
intermittent failures in CI - perhaps due to Plane dynamics changes
Backport of PR https://github.com/ArduPilot/ardupilot/pull/23524
2024-01-07 10:59:27 +11:00
Peter Barker
e66b85c0e1 autotest: add an epsilon for achieved servo output for speed scaling test
right on the threshold
backport from PR https://github.com/ArduPilot/ardupilot/pull/23823
2024-01-07 10:59:27 +11:00
Peter Barker
1557951b16 autotest: remove unnecessary try/except from Sprayer test
backport from https://github.com/ArduPilot/ardupilot/pull/23823
2024-01-07 10:59:27 +11:00
Tom Pittenger
91f33182a1 Tools/autotest: extend WindEstimates duration
backport from PR https://github.com/ArduPilot/ardupilot/pull/24666
2024-01-07 10:59:27 +11:00
bugobliterator
4bc1c1501f AP_OpenDroneID: ensure Persistent memory is not read continuously 2024-01-07 10:59:27 +11:00
bugobliterator
185620ccca GCS_MAVLink: move sysid_my_gcs to be public 2024-01-07 10:59:27 +11:00
bugobliterator
ac531812e2 AP_Periph: move sysid_my_gcs to be public 2024-01-07 10:59:27 +11:00
bugobliterator
bb2470121a Blimp: move sysid_my_gcs to be public 2024-01-07 10:59:27 +11:00
bugobliterator
338e6ae21e ArduSub: move sysid_my_gcs to be public 2024-01-07 10:59:27 +11:00
bugobliterator
be9411c981 ArduPlane: move sysid_my_gcs to be public 2024-01-07 10:59:27 +11:00
bugobliterator
b5108e07eb ArduCopter: move sysid_my_gcs to be public 2024-01-07 10:59:27 +11:00
bugobliterator
ea60051067 AntennaTracker: move sysid_my_gcs to be public 2024-01-07 10:59:27 +11:00
bugobliterator
84e69fb47a AP_HAL_ChibiOS: remove Chip ID as Basic ID mechanism 2024-01-07 10:59:27 +11:00
bugobliterator
5d604a33b5 AP_OpenDroneID: remove Chip ID as Basic ID mechanism 2024-01-07 10:59:27 +11:00
bugobliterator
e0c4d43c81 AP_HAL_ChibiOS: explain DID_OPTIONS config in CubeOrange-ODID/defaults.parm 2024-01-07 10:59:27 +11:00
bugobliterator
48850c8304 AP_OpenDroneID: add support for persistent storage of UAS ID 2024-01-07 10:59:27 +11:00
bugobliterator
13e8691720 AP_HAL: add support for get_persistent_param_by_name 2024-01-07 10:59:27 +11:00
bugobliterator
5a8bb80605 AP_HAL_ChibiOS: add support for get_persistent_param_by_name 2024-01-07 10:59:27 +11:00
bugobliterator
12e4ee9d3f AP_HAL_ChibiOS: add support for storing OpenDroneID in bootloader sector 2024-01-07 10:59:27 +11:00
Andy Piper
f6f8b316ca hwdef: ensure SpeedyBeeF405Mini builds on plane 2024-01-07 10:59:27 +11:00
Andy Piper
dae8e6afb9 hwdef: adjust serial protocol defaults on various boards for 4.4 naming scheme 2024-01-07 10:59:27 +11:00
Andy Piper
04d6c2e3c3 hwdef: SpeedyBeeF405Mini 2024-01-07 10:59:27 +11:00
Peter Barker
b68820a1b6 GCS_MAVLink: correct sensors when no baros found
GCSs will know we have no baros on-board, as will the RC telemetry library
2024-01-07 10:59:27 +11:00
Andy Piper
f2dcb1cbf0 bootloaders: SpeedyBeeF405Mini 2024-01-07 10:59:27 +11:00
Andy Piper
3671a237c2 AP_HAL_ChibiOS: T-Motor H743 Mini 2024-01-07 10:59:27 +11:00
Andy Piper
8620247f8b bootloaders: TMotor H743 Mini bootloader 2024-01-07 10:59:27 +11:00
Andy Piper
bded542bd3 AP_HAL_ChibiOS: provide mcu defaults in betaflight conversion 2024-01-07 10:59:27 +11:00
Andy Piper
12ddd6414e AP_HAL_ChibiOS: correct hwdef generator battery scale 2024-01-07 10:59:27 +11:00
Andy Piper
f335d9c6a1 AP_HAL_ChibiOS: cope with different IMU drivers in hwdef conversion 2024-01-07 10:59:27 +11:00