Commit Graph

29059 Commits

Author SHA1 Message Date
Andrew Tridgell
3487f8f251 hwdef: changed MatekH743 to a 32 bit timer
the 68ms issue is still present on this board. Switching to a 32 bit
timer will fix it, but loses us the tonealarm support
2022-03-28 20:53:56 +11:00
Andrew Tridgell
43df023a4d AP_Param: fixed param class conversion code
param class conversion was unconditionally overwriting the parameter
from the old parameter. This meant if the user has set a value in an
old firmware they could not change it in a new firmware.

I hit this with ARSPD_TYPE. I had previously set this to 0 in a
previous use of the board, and found that it kept resetting to 0 on
the new firmware when I tried to enable airspeed
2022-03-28 20:53:56 +11:00
Andrew Tridgell
739192f579 AP_Logger: added terrain correction logging field 2022-03-28 20:53:56 +11:00
Andrew Tridgell
76a924559b AP_Terrain: added logging of terrain correction 2022-03-28 20:53:56 +11:00
Andrew Tridgell
278d87e6f2 AP_Scripting: restored corrected boolean in height_amsl binding 2022-03-28 20:53:56 +11:00
Andrew Tridgell
8d6bfac43c HAL_SITL: don't use terrain adjustment 2022-03-28 20:53:56 +11:00
Andrew Tridgell
8c026ec701 AP_Arming: setup for terrain adjustment on arming 2022-03-28 20:53:56 +11:00
Andrew Tridgell
75bd6a4b6a SITL: don't use adjusted terrain in SITL 2022-03-28 20:53:56 +11:00
Andrew Tridgell
89465d2126 AP_Terrain: added terrain reference adjustment
this restores the terrain adjustment functionality removed in #19946,
but without the problematic approach of always using home (which can
be moved in flight) and with a TERR_OFS_MAX parameter to limit the
amount of adjustment
2022-03-28 20:53:56 +11:00
Andrew Tridgell
4bc35ba04d HAL_ChibiOS: display source of RC input
distinguish between IOMCU, RCInput with bytes and RCInput with pulses
2022-03-28 20:53:56 +11:00
Andrew Tridgell
0ae1ac182a HAL_ChibiOS: switch between IOMCU and RCProt rapidly
keep the RCProtocol decoder going when IOMCU being used, allowing for fast failover
between IOMCU RC input and uart RC input
2022-03-28 20:53:56 +11:00
Andrew Tridgell
9ba73d362d AP_RCProtocol: added using_uart() method 2022-03-28 20:53:56 +11:00
Andy Piper
4c4d60778c AP_HAL_ChibiOS: add KakuteH7-bdshot target 2022-03-28 20:53:56 +11:00
Andrew Tridgell
f0f19ce8fb AP_BattMonitor: fixed battery remaining of sum battery
and move to common function for update_consumed()
2022-03-28 20:53:56 +11:00
Randy Mackay
50cf7c9f94 AP_BLHeli: add reboot required to some parameters 2022-03-28 20:53:56 +11:00
Andy Piper
bafe46882f AP_HAL_ChibiOS: correct channel offsets for dshot commands
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2022-03-28 20:53:56 +11:00
Randy Mackay
43beccd86c AP_HAL_ChibiOS: reversible DShot fix
Co-authored-by: Andy Piper <github@andypiper.com>
2022-03-28 20:53:56 +11:00
Andrew Tridgell
86899b279f HAL_ChibiOS: prevent conflicting RC input
when we have RC from both IOMCU and from rcprotocol (eg. from
SERIALn_PROTOCOL=23) we need to only process one of them. This
prioritises IOMCU input
2022-03-28 20:53:56 +11:00
Andrew Tridgell
3ffc08ae91 AP_GPS: prevent switching to a dead GPS
when we switch away from the blended GPS instance we need to ensure we
don't switch to a GPS that is timing out, and may be the instance that
is triggering the disable of blending
2022-03-28 20:53:56 +11:00
Andrew Tridgell
36ba3fab9e GCS_MAVLink: send GCS voltage to GCS
may be resting voltage of option enabled
2022-03-28 20:53:56 +11:00
Andrew Tridgell
11e17a49d3 AP_BattMonitor: added option to send resting voltage to GCS 2022-03-28 20:53:56 +11:00
Andy Piper
6ddb813fba AP_Declination: ensure indexing into declination tables is always correct
add constants for table sizes
2022-03-18 14:30:36 +11:00
Andrew Tridgell
3cef6b8167 AP_Arming: make mission checks virtual 2022-03-18 14:23:20 +11:00
Andrew Tridgell
518b126f52 AP_Arming: display a warning if arming checks disabled when arming 2022-03-18 14:22:53 +11:00
Andrew Tridgell
66c13d29b7 AC_AttitudeControl: added set_lean_angle_max_cd() 2022-03-16 07:09:30 +11:00
Andrew Tridgell
ecbcbbe044 AC_Autorotation: use accel_to_angle() 2022-03-15 09:25:53 +11:00
Andrew Tridgell
f398cf8814 AC_WPNav: use angle/accel functions 2022-03-15 09:25:36 +11:00
Andrew Tridgell
a16357fb08 AP_Math: added angle_to_accel() and accel_to_angle() 2022-03-15 09:25:18 +11:00
Leonard Hall
b9628f106d AC_PosControl: Decay posiiton error during relax 2022-03-10 10:49:54 +11:00
Leonard Hall
94b83d34b1 AC_AttitudeControl: AC_PosControl: add soften for landing 2022-03-10 10:48:16 +11:00
Peter Barker
a7aa4155ad AP_HAL_ChibiOS: allow specification of AUTOBUILD_TARGETS in hwdef files 2022-03-10 10:36:09 +11:00
Andrew Tridgell
58cc0b4289 AP_Math: fixed build error on cygwin
ensure variables are always initialised
2022-03-10 10:31:02 +11:00
Leonard Hall
d7f283d3b5 AP_Math: SCurve: Increase corner speeds 2022-03-10 10:30:53 +11:00
Leonard Hall
594fc3f02d AP_Math: Convert S-Curves to use maximum Snap to remove minimum time between waypoints 2022-03-10 10:30:49 +11:00
Leonard Hall
9c70fc1aa9 AC_WPNav: Support pause 2022-03-10 10:30:31 +11:00
Leonard Hall
8049efabbc AC_WPNav: init optionally accepts stopping point 2022-03-10 10:30:29 +11:00
Leonard Hall
f9192b0c2c AC_Loiter: use Pos_Control soften_for_landing_xy 2022-03-10 10:30:26 +11:00
Leonard Hall
54f17d4a82 AC_WPNav: Increase corner speeds 2022-03-10 10:30:22 +11:00
Leonard Hall
2936b6cb5e AC_WP_Nav: Convert S-Curves to use maximum Snap to remove minimum time between waypoints 2022-03-10 10:30:20 +11:00
MallikarjunSE
2a39b3733e AP_HAL_ChibiOS: Add Sierra-F9P support 2022-03-10 08:30:11 +11:00
Andy Piper
6a9d01e3ac AP_HAL_ChibiOS: normalize BeastH7v2 in line with BeastF7v2 definition 2022-03-10 08:27:31 +11:00
Evgeniy
9b940b3e51 AP_HAL_ChibiOS: BeastH7v2 board added 2022-03-10 08:27:29 +11:00
Andrew Tridgell
e4fd86f679 hwdef: fixed buzzer on CUAV_GPS peripheral 2022-03-10 08:27:17 +11:00
MallikarjunSE
5c4d896f40 hwdef: hwdef update with watchdog 2022-03-10 08:27:11 +11:00
MallikarjunSE
a553cb08b1 hwdef:update storage pages and enable watchdog 2022-03-10 08:27:08 +11:00
murata
bc0954e124 hwdef: Set the maximum number of barometric pressure sensors to 1 2022-03-10 08:26:57 +11:00
murata
d8fec32b9a hwdef: Maximum number of battery monitors is 1 2022-03-10 08:26:54 +11:00
Andrew Tridgell
0df1dd6999 hwdef: enable GPS_MOVING_BASELINE on FreeflyRTK and f303-GPS
this allows for F9P based dual-GPS yaw on DroneCAN peripherals with
auto-config
2022-03-10 08:26:32 +11:00
Andrew Tridgell
83404f7537 hwdef: added HolybroG4_GPS 2022-03-10 08:26:26 +11:00
Andrew Tridgell
f501c32a21 HAL_ChibiOS: fixed min/max inversion in MCU voltage logging 2022-03-10 08:26:20 +11:00
Andy Piper
85d73eeb5c AP_HAL: always choose high for dshot prescaler calculation 2022-03-10 08:25:59 +11:00
Iampete1
150fc527d7 AP_PiccoloCAN: GPIO servo does not count as active 2022-03-10 08:22:40 +11:00
Iampete1
d069b6503b AP_Arming: don't arming check servo functions set to GPIO 2022-03-10 08:22:31 +11:00
Tom Pittenger
4eb39b8dae AP_Airspeed: improve description of ARSPD_TUBE_ORDR 2022-03-10 07:41:00 +11:00
Iampete1
832ac24bb9 AP_Airspeed: rename get_health_failure_probability to get_health_probability 2022-03-10 07:40:57 +11:00
Iampete1
ff2fdb65ef AP_Airspeed: Health: use reading from correct airspeed sensor 2022-03-10 07:40:54 +11:00
Iampete1
d83503b9d1 AC_AttitudeControl: WeatherVane: defualt to 0 gain on plane and early return 2022-03-10 07:39:49 +11:00
Andrew Tridgell
beeb46b4a5 AP_Scripting: fixed radius selection for ship landing 2022-03-10 07:36:33 +11:00
Andrew Tridgell
ce4580efd2 AP_Scripting: fixed beacon lost in ship landing 2022-03-10 07:36:27 +11:00
Andrew Tridgell
20e30fbda9 AP_Scripting: review fixes 2022-03-10 07:36:24 +11:00
Andrew Tridgell
ab54dda3ca SITL: fixed ship offset velocity correction 2022-03-10 07:36:18 +11:00
Andrew Tridgell
96a55878a7 AP_Common: improved accuracy of get_bearing()
make base function ftype, then convert to int32_t for get_bearing_to()
2022-03-10 07:36:14 +11:00
Andrew Tridgell
f7e10208cd AP_Scripting: update lua docs 2022-03-10 07:36:11 +11:00
Andrew Tridgell
b62e98c7e3 AP_Scripting: plane ship landing script 2022-03-10 07:35:51 +11:00
Andrew Tridgell
613e1ae7a9 AP_Scripting: added rotate_xy for Vector3f 2022-03-10 07:35:48 +11:00
Andrew Tridgell
2358e84d4e AP_Scripting: added follow API 2022-03-10 07:35:44 +11:00
Andrew Tridgell
8f8d327c82 AP_Vehicle: added update_target_location() 2022-03-10 07:35:40 +11:00
Andrew Tridgell
c0f8fd9dce SITL: added ship offset and ATTITUDE 2022-03-10 07:35:36 +11:00
Andrew Tridgell
878219be3a AP_Follow: added APIs for plane ship landing 2022-03-10 07:35:21 +11:00
Andrew Tridgell
fa4edc2ba1 SITL: removed terrain home correction 2022-03-10 07:35:00 +11:00
Andrew Tridgell
e8535115bd AP_Terrain: removed terrain home correction 2022-03-10 07:34:57 +11:00
Andrew Tridgell
3b0b7b4bf2 AP_Scripting: removed terrain home correction 2022-03-10 07:34:55 +11:00
Andrew Tridgell
7a9ac498cf AP_HAL_SITL: removed terrain home correction 2022-03-10 07:34:52 +11:00
Andrew Tridgell
6dc843b341 AP_Common: removed terrain home correction 2022-03-10 07:34:49 +11:00
Randy Mackay
cb5ee43077 AP_Follow: zreo velocities if not provided 2022-03-06 13:10:06 +11:00
Andrew Tridgell
17db2505f2 AP_Follow: support the FOLLOW_TARGET mavlink message
this is used by qgroundcontrol, allowing follow on a mobile device

note that you must set the qgc option to "always send follow" and also
must set FOLL_ALT_TYPE=2 in ArduPilot
2022-03-06 13:10:03 +11:00
Andrew Tridgell
16ae8fb765 AP_NavEKF3: fixed constrain indexing bug
fixes #20180

thanks to @liyue75 for spotting this!
2022-03-04 21:49:35 +11:00
Peter Barker
43bbfacef5 AP_Baro: reformat log message to separate fields out 2022-02-28 12:47:57 +11:00
Peter Barker
37af7e5166 RC_Channel: rename and make enum RC_Channel::ControlType
Type:: is too generic; get_type should probably be get_control_type
2022-02-27 09:55:01 +11:00
Peter Barker
4e122a3d50 AP_IOMCU: rename and make enum RC_Channel::ControlType
Type:: is too generic; get_type should probably be get_control_type
2022-02-27 09:55:01 +11:00
Peter Barker
14ce09279f RC_Channel: privatise switch reading functions 2022-02-27 09:51:04 +11:00
Peter Barker
d3db716dd9 RC_Channel: remove unused functions 2022-02-27 09:51:04 +11:00
Peter Barker
d41388f242 RC_Channel: privatise range accessors 2022-02-27 09:51:04 +11:00
Henry Wurzburg
f5766bb098 AP_BattMonitor: update name of type 10 to Sum of Selected Monitors 2022-02-26 08:31:24 +09:00
Randy Mackay
10e69373b3 AP_Scripting: copter-fast-descent has less aggressive slowdown at end 2022-02-26 08:05:05 +09:00
Randy Mackay
3efebcf1e0 AP_Scripting: copter-fast-descent uses small default radius 2022-02-26 08:05:05 +09:00
Randy Mackay
fc9cfe9b4a AP_Scripting: copter fast descent from Auto
Also use custom parameters
Allow yaw to be static or point towards center
2022-02-26 08:05:05 +09:00
Andy Piper
0696dda324 AP_FlashIface: add support for DTR variant of w25q found on SPRacingH7 2022-02-24 10:19:07 +11:00
Andy Piper
ed952a0ea0 AP_HAL_ChibiOS: allow flash to be write-protected/unprotected on reboot
control protection support via HAL_FLASH_PROTECTION
provide support for flash protection on SPRacingH7
SPRacingH7 bootloader needs to use w25q-dtr
2022-02-24 10:19:07 +11:00
Andy Piper
c01b1801c8 AP_BoardConfig: add options for write protecting bootloader and main flash
add option to completely remove protection on flash banks
2022-02-24 10:19:07 +11:00
Peter Barker
699648ef6f AP_Radio: fix build for skyviper-journey 2022-02-24 09:18:34 +11:00
Andrew Tridgell
8723ec3b2a AP_Notify: fixed builds
broken by combination of alarm changes and header changes
2022-02-23 21:48:58 +11:00
Henry Wurzburg
ac88f354fc hwdef: update Swan-K1 with new harmonic notch mask to avoid errors 2022-02-23 18:45:51 +11:00
Peter Barker
2d96842490 GCS_MAVLink: correct out-of-space-to-send count 2022-02-23 18:43:34 +11:00
Andy Piper
02219ba3e5 AP_HAL_ChibiOS: ensure chan_offset is initialized before using it 2022-02-23 18:35:43 +11:00
Andy Piper
9cec88818e AP_Notify: add support for alternate alarm function
enable alarm based on pwm
2022-02-23 18:35:43 +11:00
Andy Piper
7d5c493db5 SRV_Channel: add support for alarm servo functions 2022-02-23 18:35:43 +11:00
Andy Piper
b6022ca5d4 AP_HAL_ChibiOS: add support for alternate alarm PWM group
account for inverted alarms and build on boards without PWM
enable alarm based on pwm
shutdown alarm channel if using a different one
2022-02-23 18:35:43 +11:00
Andy Piper
f840315aa4 AP_HAL_ChibiOS: clock H750 at 480Mhz when using 8Mhz, 16Mhz and 24Mhz crystals 2022-02-23 18:19:56 +11:00
Bill Geyer
3a8175b880 RC_Channel: move tradheli turbine start to unused AUX_FUNC 2022-02-23 14:22:47 +09:00
Bill Geyer
f7b420f131 AP_Motors: move turbine start to update_turbine_start and style cleanup 2022-02-23 14:22:47 +09:00
Ferruccio1984
20f1d0c4da RC_Channel: tradheli support for turbine start 2022-02-23 14:22:47 +09:00
Ferruccio1984
3a67b17142 AP_Motors: tradheli support for turbine start 2022-02-23 14:22:47 +09:00
Andrew Tridgell
ada6554578 AP_NMEA_Output: use a fixed maximum number of NMEA outputs
this improves ccache performance
2022-02-23 12:36:59 +11:00
Andrew Tridgell
3e1ffa3769 AP_BoardConfig: moved board dependent pieces from .h to .cpp
improves ccache efficiency
2022-02-23 12:36:59 +11:00
Andrew Tridgell
372e785a10 AP_SerialManager: moved uart declaration to cpp file
improves ccache efficiency
2022-02-23 12:36:59 +11:00
Iampete1
607a7bfd70 AC_Autotune_Heli: print gains on axis completion 2022-02-23 07:44:24 +09:00
Iampete1
2ccf8af2bd AC_Autotune_Multi: print gains on axis completion 2022-02-23 07:44:24 +09:00
Iampete1
0e0f4c86dc AC_AutoTune: print gains on axis completion 2022-02-23 07:44:24 +09:00
Randy Mackay
6f8ff4cf49 AP_Scripting: add copter-nav-script-time example script 2022-02-22 12:32:56 +09:00
Peter Barker
87439eec80 GCS_MAVLink: stop taking semaphore aorund statustext queue loop
we're taking it in the loop
2022-02-22 12:56:38 +11:00
Andrew Tridgell
9eab217081 AP_Tuning: removed controller error messages
these are replaced by the SRate in PID messages
2022-02-22 12:23:48 +11:00
Andrew Tridgell
e715972264 AP_Logger: reduce the stack log frequency
10Hz is plenty
2022-02-22 12:17:17 +11:00
Andrew Tridgell
96518c9eda HAL_ChibiOS: added CPU defines to hwdef
needed for checks like defined(STM32F1)
2022-02-22 12:13:19 +11:00
Andrew Tridgell
4c5fc1f5ef AP_IOMCU: removed include of ch.h from headers 2022-02-22 12:13:19 +11:00
Andrew Tridgell
454879e638 AP_CANManager: include hal.h 2022-02-22 12:13:19 +11:00
Andrew Tridgell
9383c43ab9 AP_BoardConfig: include hal.h 2022-02-22 12:13:19 +11:00
Andrew Tridgell
7bd45fcb50 AP_Filesystem: avoid ff.h in header
this avoids the chibios hal includes
2022-02-22 12:13:19 +11:00
Andrew Tridgell
075f349156 AP_BLHeli: bring in hal.h 2022-02-22 12:13:19 +11:00
Andrew Tridgell
56d74a352c AP_HAL: fixed vprintf for no hal.h 2022-02-22 12:13:19 +11:00
Andrew Tridgell
6039b8012a HAL_ChibiOS: define HAL_USE_SDMMC 2022-02-22 12:13:19 +11:00
Andrew Tridgell
638e20a0b9 HAL_ChibiOS: bring in hal.h where it is needed 2022-02-22 12:13:19 +11:00
Andrew Tridgell
b248fdfcbb AP_HAL: avoid including hal.h in generic code 2022-02-22 12:13:19 +11:00
Andrew Tridgell
25cc8203d8 HAL_ChibiOS: added CHIBIOS_BOARD_NAME define 2022-02-22 12:13:19 +11:00
Andrew Tridgell
4811544003 AP_HAL: fixed a race conditon for CAN frame callback
callback can change from another thread
2022-02-20 06:28:47 +11:00
Andrew Tridgell
890ef5679c GCS_MAVLink: handle CAN_FILTER_MODIFY call 2022-02-19 18:24:56 +11:00
Andrew Tridgell
c94c9d8859 AP_CANManager: added CAN_FRAME filter handling 2022-02-19 18:24:56 +11:00
Andrew Tridgell
19661fe981 AP_Common: added uint16_t sorting code
also added test suite
2022-02-19 18:24:56 +11:00
Andrew Tridgell
6e83633a12 AP_CANManager: moved CAN_FRAME timeout code to CANManager 2022-02-19 18:24:56 +11:00
Andrew Tridgell
d9f79f42c8 AP_HAL: moved CAN_FRAME timeout handling to AP_CANManager 2022-02-19 18:24:56 +11:00
Andrew Tridgell
cce89099c5 GCS_MAVLink: fixed mavlink packet corruption with multiple threads
this ensures we don't try to send more data to a uart than is
available in the tx buffer
2022-02-19 18:24:56 +11:00
Andrew Tridgell
fd8d28e23c HAL_ChibiOS: reduced time in critical sections for CAN processing 2022-02-19 18:24:56 +11:00
Andrew Tridgell
88e7efcf9c AP_HAL: make CANFrame data available as uint32_t
this makes the critical sections in CANFrame handling on STM32 faster
2022-02-19 18:24:56 +11:00
Andrew Tridgell
44d9d410a1 GCS_MAVLink: fixed mavlink packet corruption with multiple threads
this ensures we don't try to send more data to a uart than is
available in the tx buffer
2022-02-19 17:20:17 +11:00
Peter Barker
666c36a57f Filter: add trivial test for ModeFilter get method (float version) 2022-02-19 11:16:40 +11:00
Peter Barker
9229fb6f9d AP_AHRS: add alias get_position to get_location 2022-02-18 21:23:06 +11:00
Peter Barker
9aeab4978f AP_Scripting: replace get_position alias with call to wrapper method
the alias breaks the call it is aliasing to
2022-02-18 21:23:06 +11:00
Peter Barker
f6a1df472a Filter: add trivial test that ModeFilter's get method works
.... previously only checking return value of apply
2022-02-18 17:55:04 +11:00
Peter Barker
0a8cccd79a Filter: add test for AverageIntegralFilter 2022-02-18 12:11:46 +11:00
Andrew Tridgell
7e18d85f7e hwdef: added compat board ID for FreeFly RTK GPS 2022-02-17 14:37:41 +11:00
Andrew Tridgell
f2308e96a9 HAL_ChibiOS: added stm32_was_software_reset() 2022-02-17 14:37:41 +11:00
Andrew Tridgell
a641eb3a30 HAL_ChibiOS: support ALT_BOARD_ID
allow for compat with px4 board ID for the same board
2022-02-17 14:37:41 +11:00
Andrew Tridgell
e96507f55f AP_Math: added crc_crc64() 2022-02-17 14:37:41 +11:00
Peter Barker
67b86867f2 AP_Logger: add LogMessage documentation for PIDN and PIDE 2022-02-17 10:53:41 +11:00
Peter Barker
4afc14007b SITL: correct PS_LightWare_SF45B simulator 2022-02-17 09:23:29 +11:00
Peter Barker
6521bc31c7 SITL: correct altitude of suggested test location 2022-02-17 09:23:29 +11:00
Peter Barker
574f041224 SITL: do not abort if we fail to send a message to the autopilot
This is happening at boot - the simulated sensor is sending data too
quickly too soon to the autopilot, which hasn't detected the instance at
the time we abort.
2022-02-17 09:23:29 +11:00
khanasif786
4f915fa5b1 AP_GyroFFT: fix 'arm_status' shadowing a global declaration error
changed 'arm_status' to 'cmsis_arm_status'
2022-02-16 19:05:07 +11:00
xianglunkai
beb194b4a1 AP_L1_Control: update_waypoint wrap added to nav_bearing
Co-authored-by: Iampete1 <iampete@hotmail.co.uk>
2022-02-16 18:29:48 +11:00
Andy Piper
4f785b4aaa AP_Logger: add @SYS/timers.txt to logged files 2022-02-16 15:28:04 +11:00