Commit Graph

57419 Commits

Author SHA1 Message Date
HelloLeFei 980a6e0a2b AP_HAL_ChibiOS: add HEEWING-F405 flight controller
add bi-directional dshot
add back in features.
juggle DMA allocations to allow CRSF to work correctly
disable dshot on PWM 10 as it is not used
do not enable quadplane by default
do not disable arming checks
run ICM42688 at 1Mhz for low speed to avoid gyro noise
add HEEWING README and picture
2024-01-07 10:59:26 +11:00
Mikhail Degtiarenko f2958e3128 AP_HAL_ChibiOS: add SPL06 to MambaH743v4
The Diatone Mamba MK4 H743 v2 Flight Control have moved from the DPS280 barometer to using SPL06.

https://www.diatone.us/products/mamba-mk4-h743-v2-flight-control-30mm-m3l
2024-01-07 10:59:26 +11:00
Andrew Tridgell 72fa526de4 ChibiOS: disable DMA on I2C on F7 and H7 by default
this was already done on many (most?) boards, and greatly reduces DMA
sharing which improves performance of UARTs. This changes the default
to no DMA on I2C
2024-01-07 10:59:26 +11:00
bugobliterator e1927ac60f AP_Scripting: stash and restore FPU register context in LUAI_TRY
this fixes an issue where a lua library function triggers an exception
after it does a math operation which changes the floating point
registers on M7 MCUs (such as STM32H7). An example is math.random()
which calls math_random(), which pre-calculates a double value before
checking if the arguments to the call are valid. When it then checks
and finds invalid values the exception longjmp does not restore the
floating point registers.
2024-01-07 10:59:26 +11:00
Andrew Tridgell f9990bc412 AP_Scripting: added bindings for VTOL motor loss
this allows a script to take an action on loss of a VTOL motor
2024-01-07 10:59:26 +11:00
Randy Mackay 822ff8cac8 Copter: update 4.4.0-beta3 release notes 2024-01-07 10:59:26 +11:00
Randy Mackay 6bc5213433 Rover: update 4.4.0-beta3 release notes 2024-01-07 10:59:26 +11:00
Andrew Tridgell 7fe95679db Plane: update release notes 2024-01-07 10:59:26 +11:00
Andrew Tridgell ca64a421e3 HAL_ChibiOS: implement newlib alloc functions as malloc wrappers
this fixes issue #24106
2024-01-07 10:59:26 +11:00
Andrew Tridgell b750e10c9f waf: wrap newlib alloc functions on ChibiOS
this prevents scripting and string library functions from calling sbrk
based alloction functions that are not thread safe
2024-01-07 10:59:26 +11:00
Andrew Tridgell 25bd798a7d Plane: prepare for 4.4.0beta3 2024-01-07 10:59:26 +11:00
Randy Mackay 92517dda78 Copter: update 4.4.0-beta3 release notes 2024-01-07 10:59:26 +11:00
Randy Mackay 77ffc05b1a Rover: update 4.4.0-beta3 release notes 2024-01-07 10:59:26 +11:00
Andrew Tridgell d425b20ca0 Plane: update release notes for 4.4.0beta3 2024-01-07 10:59:26 +11:00
Peter Barker dbe81a3965 AP_Notify: add driver for IS31FL3195 LED 2024-01-07 10:59:26 +11:00
Peter Barker dfd33214c6 AP_Notify: add driver for LP5562 LED 2024-01-07 10:59:26 +11:00
Andrew Tridgell 06f09b616e AP_Scripting: updated VTOL quicktune docs 2024-01-07 10:59:26 +11:00
Andrew Tridgell ae38a45c1e AP_Scripting: fixed lua-check warnings in VTOL-quicktune 2024-01-07 10:59:26 +11:00
Andrew Tridgell 19174f4d87 AP_Scripting: fixed use of QUIK_ENABLE in VTOL-quicktune
this was lost when the cached access was added
2024-01-07 10:59:26 +11:00
Andrew Tridgell ad7274b0bf AP_Scripting: added QUIK_MAX_REDUCE parameter to VTOL-quicktune.lua
this limits the amount that rate gains can reduce from the original
values in a quicktune. Large reductions in rate gains can be
incorrectly triggered by a frame resonance or gust of wind which can
result in gains that are dangerously low, which can trigger an angle P
oscillation
2024-01-07 10:59:26 +11:00
Andrew Tridgell 5ea3d8bde2 Plane: fixed transition started airspeed message
this message was lost in recent refactoring
2024-01-07 10:59:25 +11:00
Paul Riseborough 5554ad4311 Plane: Fix bug that can cause early exit from loiter to alt and time wp's
The check for the aircraft being lined up for a tangent exit has an early breakout condition if the next waypoint is too close to the loiter circle which can prevent the required ground course to waypoint ever being achieved. This check was using the WP_LOITER_RAD parameter value, not the actual radius being used which can be set differently by the mission plan. If a large value for WP_LOITER_RAD was set and being over-written by the mission plan with a smaller value compatible with the distance to the next waypoint, the aircraft would still exit early.
2024-01-07 10:59:25 +11:00
Andrew Tridgell ac71bbcef4 Plane: fixed TECS state reset in VTOL auto
this fixes a bug where TECS maintains its slow integrator while in a
VTOL hover mode in AUTO or GUIDED.

Among other things this affects PAYLOAD_PLACE and
DO_VTOL_TRANSITION. In those states the height can change while
hovering outside the control of TECS. When TECS regains control in a
fwd transition then can lead to a very large height loss or gain until
the TECS integrator can catch up
2024-01-07 10:59:25 +11:00
Randy Mackay 8b8087ec0f Copter: version to 4.4.0-beta3 2024-01-07 10:59:25 +11:00
Randy Mackay a4082f0be1 Copter: 4.4.0-beta3 release notes 2024-01-07 10:59:25 +11:00
Randy Mackay 267ba01d87 Rover: version to 4.4.0-beta3 2024-01-07 10:59:25 +11:00
Randy Mackay cfe8ee25ea Rover: 4.4.0-beta3 release notes 2024-01-07 10:59:25 +11:00
Andy Piper 7fb793d059 AP_HAL_ChibiOS: remove bdshot from speedybeef4 as it doesn't work and increases flash usage 2024-01-07 10:59:25 +11:00
Andy Piper f758c74c6a AP_HAL_ChibiOS: Pixhawk1-bdshot 2024-01-07 10:59:25 +11:00
Michael du Breuil 81a6220745 AP_ADSB: Fix spam of lost transciever message at update() rate 2024-01-07 10:59:25 +11:00
Andy Piper 323a3262ad AC_AutoTune: correct incorrect min raw rate valuee 2024-01-07 10:59:25 +11:00
Andrew Tridgell a73e477b92 Tools: fixed RefindGPS test
this test was relying on the EKF bug fixed in this PR. The copter was
actually fully landing and touching the ground in the LAND phase
whereas the original intention of this test was that it not touch the
ground in LAND. See the graph in
https://github.com/ArduPilot/ardupilot/pull/17104 where the test was
added
2024-01-07 10:59:25 +11:00
Andrew Tridgell e4e69468ca AP_NavEKF3: fixed velocity reset on AID_NONE
The ResetVelocity() function is only supposed to reset XY states, not
Z state. Resetting the Z state for velocity results in a large
velocity glitch if a vehicle is descending or ascending when aiding
switches to AID_NONE

this fixes #19386
2024-01-07 10:59:25 +11:00
Andrew Tridgell efc7c1ec77 AP_NavEKF2: fixed velocity reset on AID_NONE
The ResetVelocity() function is only supposed to reset XY states, not
Z state. Resetting the Z state for velocity results in a large
velocity glitch if a vehicle is descending or ascending when aiding
switches to AID_NONE

this fixes #19386
2024-01-07 10:59:25 +11:00
Stephen Dade b58045435e Rover: Lower minimum circle tracking distance 2024-01-07 10:59:25 +11:00
Peter Barker 67d4a9153c AP_Arming: reword GPS pre-arm failure
M10S (no storage) throws this for a considerable period of time and the wording makes this process sound scary.
2024-01-07 10:59:25 +11:00
Andy Piper baed41b78f AP_HAL_ChibiOS: Pixhawk6X bdshot version 2024-01-07 10:59:25 +11:00
Andrew Tridgell b698ef8440 Plane: improved fwd throttle during VTOL landing
this sets up the vwd integrator more reasonably when we are in
POSITION1 stage of VTOL landing. We need to have enough throttle to
cope with a headwind, but want it lower when we are at or above our
target closing speed so can minimise the amount of pitch up

This also makes the landing_desired_closing_velocity() consistent with
the landing speed used in approach, using average of airspeed min and
cruise speed if TECS_LAND_ARSPD is not set

The target airspeed for TECS during airbraking is now set to
ARSPD_FBW_MIN, on the basis we are trying to slow down to min speed,
and we have VTOL support which should prevent a stall.

To cope with a high headwind where ARSPD_FBW_MIN is below the headwind
we now check for too low achieved closing speed and switch to
POSITION1 which can use vfwd to get to the landing location
2024-01-07 10:59:25 +11:00
Tatsuya Yamaguchi 7fb8378b67 Copter: add has_user_takeoff in ZigZag mode 2024-01-07 10:59:25 +11:00
jfbblue0922 f645090cda AP_HAL_ChibiOS: jfb100 gets shorter EXT_WDOG_INTERVAL_MS 2024-01-07 10:59:25 +11:00
jfbblue0922 dd7c92f526 AP_HAL_CHibiOS: JFB100 hwdef fix for ext watchdog 2024-01-07 10:59:25 +11:00
jfbblue0922 124e6d3c61 AP_HAL_ChibiOS: support external watchdog gpio
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>

optional support to toggle GPIO pin at 10hz
2024-01-07 10:59:25 +11:00
Andrew Tridgell 570f5f0c43 AP_GPS: fixed ublox M10S auto-config
this copes with the M10S rejecting multiple-key VALGET calls. We fall
back to fetching one at a time
2024-01-07 10:59:25 +11:00
Alexander Keller d648e2e21b AP_GPS:Comform to ardupilot undulation definition 2024-01-07 10:59:25 +11:00
davidsastresas 3b42e03cee GCS_Common: handle CMD_DO_SET_ROI_NONE for command int packets 2024-01-07 10:59:25 +11:00
Randy Mackay a9063af76d AP_SerialManager: improve OPTIONS desc for Swap bit 2024-01-07 10:59:25 +11:00
Randy Mackay c1caec03c8 AP_SerialManager: generalise SToRM32 serial protocol desc and enum 2024-01-07 10:59:25 +11:00
Henry Wurzburg 36b33c586d Plane: Make mode takeoff entry climb to TKOFF_ALT before loitering 2024-01-07 10:59:25 +11:00
Iampete1 bff7cf1f94 AP_Motors: Heli RSC: remove incorrect set range call 2024-01-07 10:59:25 +11:00
Henry Wurzburg 2d6004d526 Plane: fix error in Qplane wait for rudder neutral 2024-01-07 10:59:25 +11:00