Andrew Tridgell
e860bc325f
AP_Logger: expand servo status logging
2023-09-05 19:42:25 +09:00
Andrew Tridgell
d49eb9b5a1
AP_UAVCAN: support Himark servo protocol
2023-09-05 19:42:25 +09:00
Andy Piper
0eff0bb576
AP_HAL_ChibiOS: change incorrect I2C internal mask from SkystarsH7HD bdshot
2023-09-05 19:42:25 +09:00
Andrew Tridgell
84ddd8f9b4
hwdef: allow Pixhawk1-1M-bdshot to build for 4.4.0
2023-08-14 08:49:48 +09:00
Andrew Tridgell
b842270196
AP_GPS: fixed RTK injection when first module is a BASE
...
this is a partial backport of #24132 which fixes RTK injection when
the 1st GPS module is a DroneCAN RTK rover. Without this change RTCM
injection for RTK fix on the base will only work if it happens to come
up as the first module
2023-08-14 08:49:48 +09:00
Andrew Tridgell
f24507284a
AP_Compass: allow override of IST8310 orientation
...
this allows for vendor GPS modules and internal compass which use a
different orientation
2023-08-14 08:49:48 +09:00
Andrew Tridgell
aa0a9eb917
hwdef: added SIYI NY flight controller
2023-08-14 08:49:48 +09:00
Andrew Tridgell
7da87a811f
AP_Arming: fixed auto-enable of fence with forced arm
...
when a user forced armed and had FENCE_AUTOENABLE=3 for enable on
arming then the fence did not enable
2023-08-14 08:49:48 +09:00
Peter Barker
e3a049ba40
GCS_MAVLink: fix airspeed cal / format commands via non-USB telemetry
2023-08-14 08:49:48 +09:00
Andrew Tridgell
334bd8eaa5
AP_NavEKF3: fixed race condition in updateFilterStatus()
...
filter status was initially set to zero then updated. This interacts
with the IMU filtering code which checks filter status from a
different thread to determine active_EKF_type(). When the race
condition is hit then the IMU we are running notch filters on changes
for a single sample, causing a notch filter glitch
2023-08-14 08:49:48 +09:00
Andrew Tridgell
d48b95c4a7
AP_Airspeed: increased DroneCAN airspeed timeout
2023-08-14 08:49:48 +09:00
Andrew Tridgell
88f7246c7f
AP_Airspeed: fixed handling of unhealthy airspeed
...
this fixes a bug introduced in
https://github.com/ArduPilot/ardupilot/pull/22416 which results in
using bad airspeed data on timeout. The prev_health variable is
updated by the get_pressure call
2023-08-14 08:49:48 +09:00
Randy Mackay
90e69def97
AP_Scripting: add rover quicktune
2023-08-01 16:51:27 +09:00
Randy Mackay
2f92f2c05c
AP_Scripting: AR_PosControl bindings
2023-08-01 16:51:27 +09:00
Randy Mackay
034bf32a7a
AP_Scripting: add AR_AttitudeControl srate binding
...
also add AP_Vehicle:get_steering_and_throttle binding
2023-08-01 16:51:27 +09:00
Randy Mackay
d7631cc139
AC_PID: AC_PID_2D integrates SlewCalculator2D
2023-08-01 16:51:27 +09:00
Randy Mackay
e81a18c83b
Filter: add SlewCalculator2D
2023-08-01 16:51:27 +09:00
Randy Mackay
e2f0cf9c77
Filter: SlewLimiter definitions moved to cpp
2023-08-01 16:51:27 +09:00
Randy Mackay
651e5ec62a
AP_Vehicle: add get_steering_and_throttle
2023-08-01 16:51:27 +09:00
Randy Mackay
6540d12d66
AR_PosControl: add singleton and get_srate
2023-08-01 16:51:27 +09:00
Randy Mackay
6c87dcd32d
AR_AttitudeControl: add singleton and get_srate
2023-08-01 16:51:27 +09:00
tiralonghipol
cf92859abd
AP_HAL_ChibiOS: add new board BlitzF745AIO
2023-08-01 16:51:27 +09:00
Andy Piper
926154c679
AP_HAL_ChibiOS: correct incorrect defaults for serial ports on FoxeerH743v1
2023-08-01 16:51:27 +09:00
Andy Piper
79485f72d4
AP_RCProtocol: report tracer frame rate correctly
2023-08-01 16:51:27 +09:00
Andy Piper
959d7ef80d
AP_RCProtocol: rescan at CRSFv3 baud rates to avoid RX loss on soft reboot
2023-08-01 16:51:27 +09:00
Randy Mackay
869d1aea38
AR_PosControl: limit and zero velocity I-term
...
zero in forward-back direction
limit in lateral direction
2023-08-01 16:51:27 +09:00
Randy Mackay
d6faa6e25f
AR_AttitudeContol: add steering_limited checks
2023-08-01 16:51:27 +09:00
Randy Mackay
4f91d237cf
AP_Math: Vector2f::projected made const
2023-08-01 16:51:27 +09:00
Andy Piper
a43ea834fb
AP_HAL_ChibiOS: correct comment in HEEWING-F405 v1
2023-08-01 16:51:27 +09:00
Andy Piper
b511b73875
AP_HAL_ChibiOS: HEEWING-F405v2 which includes dataflash logging
2023-08-01 16:51:27 +09:00
Andy Piper
c70509f3c6
AP_NavEKF3: fix docs on ABIAS_P_NSE_DEFAULT
2023-08-01 16:51:27 +09:00
Andrew Tridgell
b12034bbb8
AP_Mount: prevent SIYI driver crash if serial port not setup
...
if MNT1_TYPE=8 and no serial protocol set to gimbal then a camera
trigger can crash the vehicle
2023-08-01 16:51:27 +09:00
Andy Piper
64b0cd1424
AP_BLHeli: add battery status MSP handling
...
give internal error if an unknown MSP command occurs
2023-08-01 16:51:27 +09:00
HelloLeFei
14d060aec3
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
2023-08-01 16:51:27 +09:00
Mikhail Degtiarenko
925fb1e460
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
2023-08-01 16:51:27 +09:00
Andrew Tridgell
1ee1919602
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
2023-08-01 16:51:27 +09:00
bugobliterator
2bb19228a7
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.
2023-08-01 16:51:27 +09:00
Andrew Tridgell
ddeb795782
AP_Scripting: added bindings for VTOL motor loss
...
this allows a script to take an action on loss of a VTOL motor
2023-08-01 16:51:27 +09:00
Andrew Tridgell
3ebbf672d7
HAL_ChibiOS: implement newlib alloc functions as malloc wrappers
...
this fixes issue #24106
2023-07-04 15:12:55 +09:00
Peter Barker
b18dee217b
AP_Notify: add driver for IS31FL3195 LED
2023-07-04 12:17:52 +09:00
Peter Barker
fa9cb45fcb
AP_Notify: add driver for LP5562 LED
2023-07-04 12:17:52 +09:00
Andrew Tridgell
daa8d19d33
AP_Scripting: updated VTOL quicktune docs
2023-07-04 12:17:52 +09:00
Andrew Tridgell
ec511357eb
AP_Scripting: fixed lua-check warnings in VTOL-quicktune
2023-07-04 12:17:52 +09:00
Andrew Tridgell
bb0f12fea4
AP_Scripting: fixed use of QUIK_ENABLE in VTOL-quicktune
...
this was lost when the cached access was added
2023-07-04 12:17:52 +09:00
Andrew Tridgell
87d992fdfc
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
2023-07-04 12:17:52 +09:00
Andy Piper
cd0d30d69c
AP_HAL_ChibiOS: remove bdshot from speedybeef4 as it doesn't work and increases flash usage
2023-07-04 12:17:52 +09:00
Andy Piper
2b9395a42d
AP_HAL_ChibiOS: Pixhawk1-bdshot
2023-07-04 12:17:52 +09:00
Michael du Breuil
0a959508f7
AP_ADSB: Fix spam of lost transciever message at update() rate
2023-07-04 12:17:51 +09:00
Andy Piper
2d57407b02
AC_AutoTune: correct incorrect min raw rate valuee
2023-07-04 12:17:51 +09:00
Andrew Tridgell
e2dd996da1
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
2023-07-04 12:17:51 +09:00
Andrew Tridgell
3dd9513a03
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
2023-07-04 12:17:51 +09:00
Peter Barker
6b384ace77
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.
2023-07-04 12:17:51 +09:00
Andy Piper
18f5051005
AP_HAL_ChibiOS: Pixhawk6X bdshot version
2023-07-04 12:17:51 +09:00
jfbblue0922
36dbba0068
AP_HAL_ChibiOS: jfb100 gets shorter EXT_WDOG_INTERVAL_MS
2023-07-04 12:17:51 +09:00
jfbblue0922
95ea5b3b92
AP_HAL_CHibiOS: JFB100 hwdef fix for ext watchdog
2023-07-04 12:17:51 +09:00
jfbblue0922
4b31fe20df
AP_HAL_ChibiOS: support external watchdog gpio
...
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
optional support to toggle GPIO pin at 10hz
2023-07-04 12:17:51 +09:00
Andrew Tridgell
7b2e103ec3
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
2023-07-04 12:17:51 +09:00
Alexander Keller
5d22115787
AP_GPS:Comform to ardupilot undulation definition
2023-07-04 12:17:51 +09:00
davidsastresas
0fa4e7cc1f
GCS_Common: handle CMD_DO_SET_ROI_NONE for command int packets
2023-07-04 12:17:51 +09:00
Randy Mackay
f2157b3d87
AP_SerialManager: improve OPTIONS desc for Swap bit
2023-07-04 12:17:51 +09:00
Randy Mackay
ac28d560dd
AP_SerialManager: generalise SToRM32 serial protocol desc and enum
2023-07-04 12:17:51 +09:00
Iampete1
9c6f57fb05
AP_Motors: Heli RSC: remove incorrect set range call
2023-07-04 12:17:51 +09:00
Henry Wurzburg
22d3146f38
AP_HAL_ChibiOS: add Holybro KakuteH7-Wing
2023-07-04 12:17:51 +09:00
Randy Mackay
9124c45ca9
AR_PosControl: add input_pos_vel_accel target
2023-06-08 10:05:36 +09:00
Randy Mackay
189e3634f1
AP_HAL_ChibiOS: JFB100 LED definition fix
2023-06-08 10:05:36 +09:00
Randy Mackay
26ee1f1df6
AP_InertialSensor: SCHA63T comment fix
2023-06-08 10:05:36 +09:00
Randy Mackay
348bf59bd0
AP_HAL_ChibiOS: JFB100 board def fixup
2023-06-08 10:05:36 +09:00
Randy Mackay
21a6e48f99
AP_InertialSensor: SCHA63T loses unused ret bool
2023-06-08 10:05:36 +09:00
jfbblue0922
e9bda3a311
AP_HAL_ChibiOS: add JFB100 board definition
2023-06-08 10:05:36 +09:00
Randy Mackay
4637156e6c
AP_InertialSensor: formatting fixes
2023-06-08 10:05:36 +09:00
jfbblue0922
a908341b6c
AP_InertialSensor: add SCHA63T IMU support
2023-06-08 10:05:36 +09:00
jfbblue0922
123b8113e8
AP_Math: add crc8_sae
2023-06-08 10:05:36 +09:00
Henry Wurzburg
c6eaee053c
AP_Notify: fix incorrect buzzer pin type to stop always instantiating
2023-06-08 10:05:36 +09:00
James O'Shannessy
98560d9a17
AP_BattMonitor: Fixes the setting of a default parameter for battery instance #2 set in hwdef
2023-06-08 10:05:36 +09:00
Randy Mackay
4959ec9100
AC_WPNav: wpnav speed param check fixed
2023-06-08 10:05:36 +09:00
Andrew Tridgell
e2535a3851
HAL_ChibiOS: fixed USB pass-thru for 2nd USB endpoint
...
we need to align the endpoint ID in the structure
2023-06-08 10:05:36 +09:00
Andrew Tridgell
4f0a573c73
AP_AHRS: don't reject airspeed using EKF if dead-reckoning
...
when dead-reckoning the EKF wind estimate can diverge from reality,
leading to us rejecting a valid airspeed sensor. We are best off
trusting airspeed if we are dead-reckoning
2023-06-08 10:05:36 +09:00
Andrew Tridgell
303dad5ab6
AP_BoardConfig: fixed documentation of safety options
...
on and off were reversed
2023-06-08 10:05:36 +09:00
Iampete1
d00d5e09aa
Filter: SlewLimiter: always caculate slew limit
2023-06-08 10:05:36 +09:00
Andrew Tridgell
f0bf42706d
AP_BattMonitor: allow max amps to be configured on INA2XX
...
this allows for higer current ranges with lower resolution
2023-06-08 10:05:36 +09:00
Andrew Tridgell
73a904a0ec
hwdef: use zero address for INA2XX to allow for different sensors
2023-06-08 10:05:36 +09:00
Andrew Tridgell
ee75016a12
AP_BattMonitor: auto-probe INA2XX address if address is zero
...
this makes life easier for users who don't know which device they have
2023-06-08 10:05:36 +09:00
Andrew Tridgell
abf4ba725a
AP_BattMonitor: support INA228 and INA238 battery monitor
...
I2C monitors with similar functionality to INA226
2023-06-08 10:05:36 +09:00
Andy Piper
25f0860866
AC_AutoTune: load test gains for correct axis when testing yaw D
2023-06-08 10:05:36 +09:00
Paul Riseborough
880cffed9a
AP_NavEKF3: Increase delta velocity bias state process noise
...
Required due to state variance collapse on ground with some systems using RTK GPS.
2023-06-08 10:05:36 +09:00
Paul Riseborough
365e3aa62a
AP_NavEKF3: Strengthen recovery from bad delta velocity bias learning
2023-06-08 10:05:36 +09:00
Paul Riseborough
acfa1f108a
AP_NavEKF3: Increase default value of EK3_ABIAS_P_NSE
...
This is required because some hardware setups with RTK GPS have experienced a collapse of the delta velocity state variances.
2023-06-08 10:05:36 +09:00
Paul Riseborough
954a3cf1e2
AP_NavEKF3: Retune and fix delta velocity bias state variance protection
2023-06-08 10:05:36 +09:00
Andy Piper
7ac3209c93
AP_NavEKF: ensure gyro biases are numbers
...
avoid errors during compass mot
2023-06-08 10:05:36 +09:00
Paul Riseborough
565c65803a
AP_NavEKF3: Lock in wind state estimates when using srag to dead reckon
2023-06-08 10:05:36 +09:00
Andrew Tridgell
78e6ff53b4
AP_ICEngine: fixed a bug engine control when running
...
if you have a mission item for engine control with delayed start at
height and the engine is already running them it would put the ICE
subsystem into a state where it would no longer start the engine
It was actually 2 bugs:
- an engine control to do a height delayed start should be ignored if
the engine is already running. This prevents an engine control to
start the engine from stopping the engine
- a start_chan high should always try to start the engine
immediately, even if in the wait state
2023-06-08 10:05:36 +09:00
Andrew Tridgell
18128ce3ad
AP_RCProtocol: return true on initial protocol detection
...
we need to tell the IO firmware that a byte was consumed when we first
detect a protocol as otherwise the next bad byte on DSM will lock us
on the DSM port
2023-06-08 10:05:35 +09:00
Andrew Tridgell
c98b85a1a2
AP_IOMCU: fixed issue with not regaining RC input
...
this fixes an issue where when you lose R/C input on IOMCU that you
may not regain it when R/C comes back.
The issue stems from us still processing the DSM uart when we are
using the SD3 "SBUS" uart for RC input, and still doing the switch of
the SD3 config every 2 seconds.
When we are not searching for a new protocol we should not be changing
UART config
2023-06-08 10:05:35 +09:00
Andrew Tridgell
22a904f102
AP_NavEKF3: handle core setup failure
...
ensure num_cores is left as zero so that calls such as Log_Write don't
de-reference nullptr
2023-06-08 10:05:35 +09:00
Andrew Tridgell
d7c90c5a5b
AP_NavEKF2: handle core setup failure
...
ensure num_cores is left as zero so that calls such as Log_Write don't
de-reference nullptr
2023-06-08 10:05:35 +09:00
Andrew Tridgell
6d5c34dfa8
AP_Param: added set() to AP_Enum
2023-06-08 10:05:35 +09:00
Peter Barker
0a4f34cdd2
AP_Logger: do not rotate logs when disarming if we are replay-logging
2023-06-08 10:05:35 +09:00
Andrew Tridgell
397b521536
AP_Logger: added LOG_DARM_RATEMAX
...
this sets the logging rate max when disarmed. In combination with
LOG_DISARMED=3 it gives a very nice setup to get always on logging
with very little addition to the log sizes. It is particularly useful
in combination with LOG_REPLAY=1
2023-06-08 10:05:35 +09:00
Andrew Tridgell
4938593d4c
AP_Logger: added LOG_DISARMED=3
...
when LOG_DISARMED is set to 3 then we log while disarmed but if we
reboot without ever arming the log is discarded. This allows for using
LOG_DISARMED without filling the microSD.
2023-06-08 10:05:35 +09:00
Andrew Tridgell
f0cca1aaf4
AP_Logger: use AP_Enum for log_disarmed
2023-06-08 10:05:35 +09:00