Commit Graph

25375 Commits

Author SHA1 Message Date
Peter Barker
c5e62eb6e4 GCS_MAVLink: schedule current waypoint rather than immediate send
This message may not fit in our outgoing buffer
2021-02-23 11:27:22 +11:00
Patrick José Pereira
0e76006dc5 SRV_Channel: Simplify boolean expression
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-23 10:30:05 +11:00
Patrick José Pereira
300a14aaae SITL: Simplify boolean expression
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-23 10:30:05 +11:00
Patrick José Pereira
ba2adac869 GCS_MAVLink: Simplify boolean expression
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-23 10:30:05 +11:00
Patrick José Pereira
3b0dac3198 AP_NavEKF3: Simplify boolean expression
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-23 10:30:05 +11:00
Patrick José Pereira
4f81aa82e2 AP_LeakDetector: Simplify boolean expression
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-23 10:30:05 +11:00
Patrick José Pereira
d749fce378 AP_LandingGear: Simplify boolean expression
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-23 10:30:05 +11:00
Patrick José Pereira
1038581bcb AP_HAL_SITL: Simplify boolean expression
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-23 10:30:05 +11:00
Patrick José Pereira
9965cbb79a AP_Generator: Simplify boolean expression
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-23 10:30:05 +11:00
Peter Barker
a0172fd2ca AC_Fence: emit a FENCE_STATUS message if we newly-breach the fences
This should resolve a problem in autotest where we don't detect the
fence as being breached as ArduPilot never announces the fact it has
breached - it just changes mode to RTL but the interval on the
FENCE_STATUS message never aligns with the time the vehicle is breached.
2021-02-23 08:28:02 +09:00
Mirko Denecke
edc2b0c94e AP_HAL_ChibiOS: fix copy and paste typo 2021-02-23 08:15:50 +09:00
Andrew Tridgell
17031707e3 AP_Scripting: added pcall example
this shows how to catch errors in scripts to make them robust against
runtime errors
2021-02-23 09:59:37 +11:00
Paul Riseborough
342e6b35fa AP_NavEKF3: Fix use of incorrect ballistic coefficient parameter 2021-02-22 13:21:03 +09:00
Paul Riseborough
7370cd9f00 AP_NavEKF3: Fix typo and update parameter description 2021-02-22 13:21:03 +09:00
Randy Mackay
0c9559db6d AP_Motors: fixup octaquad CW_X motor directions 2021-02-22 11:00:44 +09:00
Peter Barker
1afa0a7ff2 GCS_MAVLink: remove unused member
and a bogus comment
2021-02-20 21:48:25 +11:00
Andrew Tridgell
7af20e9ea3 HAL_ChibiOS: increase H7 serial buffer sizes
this takes better advantage of the new UART code. Log download over
USB gets to 730 kbyte/s. For comparison, with the 4.0 code on the same
H7 we get about 300 kbyte/s
2021-02-20 20:49:45 +11:00
Andrew Tridgell
3b88a3273b HAL_ChibiOS: adjust up uart tx stack size
lowest was showing 80 bytes free, which is too close to the 64 byte
level where we trigger an internal error
2021-02-20 14:37:11 +11:00
Andrew Tridgell
5e0f175223 HAL_ChibiOS: adjust UART buffer sizes for new UART code
this gains about 20k of RAM, and has almost no impact on log download
speed at 921600 on a F427. The improved threading means we can afford
to have smaller buffers
2021-02-20 14:37:11 +11:00
Andy Piper
4e61ba2dc8 AP_HAL_ChibiOS: reduce stack sizes for rcout, uart_rx and storage. 2021-02-20 14:37:11 +11:00
Andy Piper
94de238751 AP_HAL_ChibiOS: disable RCOUT thread on iomcu and rebuild iomcu. 2021-02-20 14:37:11 +11:00
Andy Piper
f9c5f9be00 AP_HAL_ChibiOS: make dshot DMA unlock event driven in order to allow unlocking from rcout thread
refactor rcout into separate thread and process all dshot requests there
move uart DMA completion to event model
process dshot locks in strick reverse order when unlocking
convert Shared_DMA to use mutexes
move UART transmit to a thread-per-uart
do blocking UART DMA transactions
do blocking dshot DMA transactions
trim stack sizes
cancel dma transactions on dshot when timeout occurs
support contention stats on blocking locking
move thread supression into chibios_hwdef.py
invalidate DMA bounce buffer correctly
separate UART initialisation into two halves
cleanup UART transaction timeouts
add @SYS/uarts.txt
move half-duplex handling to TX thread
correct thread statistics after use of ExpandingString
set unbuffered TX thread priority owner + 1
correctly unlock serial_led_send()
don't share IMU RX on KakuteF7Mini
observe dshot pulse time more accurately.
set TRBUFF bit for UART DMA transfers
deal with UART DMA timeouts correctly
don't deadlock on reverse ordered DMA locks
change PORT_INT_REQUIRED_STACK to 128
2021-02-20 14:37:11 +11:00
Andy Piper
c388fd9214 AP_Filesystem: add @SYS/uarts.txt 2021-02-20 14:37:11 +11:00
Andy Piper
a07b238c7d AP_HAL: add PRIORITY_RCOUT
don't allow UART copies
add @SYS/uarts.txt
2021-02-20 14:37:11 +11:00
Iampete1
bf7920f2d7 AP_Scripting: use helper for not supported error saving 1K of flash 2021-02-18 15:12:58 -07:00
Leonard Hall
f0f87be06d AC_PID: AC_PI_2D format changes 2021-02-18 12:59:39 +09:00
mateksys
7eb4e9b370 AP_Periph: set PORT defaults for F405-MatekGPS 2021-02-18 11:51:50 +11:00
mateksys
97c2b7228e AP_Periph: Matek F303 and F405 AP_Periph use DSP310 baro 2021-02-18 11:51:50 +11:00
Tom Pittenger
8019cc160a AP_ICEngine: make it obvious that update_idle_gov does nothing if disabled 2021-02-18 09:45:30 +11:00
Peter Barker
f124cf0991 AP_Hott_Telem: use GPS single-char representation of fix type 2021-02-18 08:59:23 +11:00
Peter Barker
9da9d8c94b AP_GPS: provide method for getting single char representing fix type
Should allow us to be consistent across places in the code base that
need a compact representation for a user display.
2021-02-18 08:59:23 +11:00
Leonard Hall
e788d63686 AC_AttitudeControl: clear up comment for inertial_frame_reset 2021-02-17 21:19:18 +09:00
Andy Piper
4c2cbdab8d AP_HAL_ChibiOS: only setup half-duplex for receive when transmit is fully over 2021-02-17 20:09:48 +11:00
Andy Piper
5c32007cdf AP_HAL_ChibiOS: ensure stop bits can be set before UART begin 2021-02-17 20:09:48 +11:00
Peter Hall
43763091bd AP_Scripting: add send_named_float to simple loop example 2021-02-17 18:49:20 +11:00
Peter Hall
fc95664580 AP_Scripting: add GCS send_named_float binding 2021-02-17 18:49:20 +11:00
Andy Piper
3371c272fb AP_Notify: make LED_NTF_LEN changes require a reboot
don't dynamically update LED length
2021-02-17 18:36:36 +11:00
Andy Piper
3a9107245c AP_HAL_ChibiOS: allocate DMA and LED buffers correctly when the length changes
calculate DMAR pulse times correctly
ensure 50us pulse separation for LED
make sure the LEDs are signalled for output
only allow LED length to be set once
2021-02-17 18:36:36 +11:00
Andy Piper
a98f85502a AP_RCTelemetry: add support for SmartAudio protocol.
treat VTX frequency as a first class citizen, match band/channel to frequency
update CRSF to use new VTX configuration
use a 6-position switch to control VTX power
add support for VTX GCS announcement
announce VTX updates on CRSF
support pitmode-until-arm and pitmode-on-disarm

Co-authored-by: luis.martinez.exts <luis.martinez@juntadeandalucia.es>
2021-02-17 18:23:33 +11:00
Andy Piper
ea3af39773 RC_Channel: add support for 6-position switch and use it for VTX power 2021-02-17 18:23:33 +11:00
Andy Piper
6f91e053d5 AP_VideoTX: new library to support the SmartAudio protocol
set the VTX parameters to what was actually configured by the VTX
use change band/change frequency when appropriate
set power levels appropriately for protocol version.

Co-authored-by: luis.martinez.exts <luis.martinez@juntadeandalucia.es>
2021-02-17 18:23:33 +11:00
Andy Piper
2d0fe8b883 AP_SerialManager: add support for the SmartAudio protocol
Co-authored-by: luis.martinez.exts <luis.martinez@juntadeandalucia.es>
2021-02-17 18:23:33 +11:00
Andy Piper
b79ff9475d AP_Vehicle: add support for the SmartAudio protocol
Co-authored-by: luis.martinez.exts <luis.martinez@juntadeandalucia.es>
2021-02-17 18:23:33 +11:00
Peter Barker
c20c4a6308 AP_HAL_SITL: set bus in read-size of rdwr transaction 2021-02-17 14:23:07 +11:00
Peter Barker
1c4e1aab05 AP_Logger: move gps logging structures into AP_GPS 2021-02-17 11:30:01 +11:00
Peter Barker
c2cba52ad8 AP_GPS: move gps logging structures into AP_GPS 2021-02-17 11:30:01 +11:00
Peter Barker
eefcc92f24 GCS_MAVLink: take MAV_CMD_DO_SPRAYER as a mavlink command 2021-02-16 22:36:43 +11:00
Peter Barker
c3b005e1d9 AP_Mission: add mission command to turn sprayer on and off 2021-02-16 22:36:43 +11:00
Rishabh
98287a1b2f AC_Avoid: Use previous avoidance vel for limiting accel 2021-02-16 20:08:00 +09:00
Rishabh
cbf57af1f3 AC_Avoid: Limit acceleration while simple avoidance is active 2021-02-16 20:08:00 +09:00
Rishabh
865f3cda79 AC_Avoid: Add param to switch off proximity avoidance based on alt 2021-02-16 20:08:00 +09:00
Peter Hall
c1a831bbf4 GCS_MAVLink: sensor flags, only mark AHRS as enabled once initialised 2021-02-16 12:54:28 +11:00
Andrew Tridgell
a42bfd5df5 AP_Baro: added MS5611 baro compensation for -15 to -40C 2021-02-16 11:20:57 +11:00
Michael du Breuil
4c4e613f6a AP_GPS: Don't send SBF config unless there is free space in the port 2021-02-15 16:31:45 -07:00
Michael du Breuil
c0da87c066 AP_HAL_ChibiOS: Update HitecMosaic to reflect changes to GPS config 2021-02-15 16:31:45 -07:00
Michael du Breuil
4d42996068 AP_GPS: Force the buadrate on SBF units 2021-02-15 16:31:45 -07:00
Peter Barker
01eb64ce73 AP_RPM: don't present RPM2_PIN parameter if RPM_MAX_INSTANCES <=1 2021-02-16 08:26:18 +09:00
Andrew Tridgell
6d1511f3eb GCS_MAVLink: added method to force save calibration
useful after reloading parameters
2021-02-15 07:24:40 +11:00
Andrew Tridgell
f8e0227c8c AP_Compass: added force_save_calibration() 2021-02-15 07:24:40 +11:00
Andrew Tridgell
25dd08a1fd AP_InertialSensor: added force_save_calibration() 2021-02-15 07:24:40 +11:00
Andrew Tridgell
9de1519928 HAL_ChibiOS: prevent hw flow control from hogging a DMA channel
When hw flow control is enabled check the CTS pin before we grab the
DMA channel to prevent a long timeout trying to send to a blocked port
from holding a DMA channel against another device

this fixes issue #16587
2021-02-15 07:23:56 +11:00
Andrew Tridgell
106162b0c5 AP_MSP: removed date/time from MSP
we don't want to use real dates here as that would mean we don't get
consistent builds. Being able to reproduce the exact build at a later
date is a valuable property of the code

The git hash should be enough
2021-02-13 19:24:48 +11:00
Andrew Tridgell
0cc4409845 HAL_ChibiOS: fixed handling of invalid channel for LED write
this prevents a null ptr dereference when an invalid channel (such as
one on IOMCU) is used for LEDs
2021-02-13 15:11:10 +11:00
Andrew Tridgell
098a17fe2e HAL_ChibiOS: fixed CubeOrange ADSB param name 2021-02-13 13:06:20 +11:00
Rishabh
f107ce3951 AP_Proximity: Use 3 sectors for simple avoidance boundary 2021-02-12 16:48:16 +09:00
Rishabh
8cab737bdd AP_Proximity: Follow NED convention 2021-02-12 16:48:16 +09:00
Rishabh
74bda4952d AC_Avoid: Return early if velocity is unchanged in proximity avoidance 2021-02-12 16:48:16 +09:00
Randy Mackay
eafd702773 AC_WPNav: add comment clarifying get_wp_destination alt frame 2021-02-11 13:01:37 +09:00
Mark Whitehorn
bb15c18cc3 GCS_MAVLink: send message when MAVFTP init fails 2021-02-10 23:06:36 +11:00
Pierre Kancir
eb78a473f6 AP_Vehicle: correct virtual specifier 2021-02-10 18:49:42 +11:00
Pierre Kancir
7430a415fb AP_Tuning: use AUX_PWM_TRIGGER_LOW and AUX_PWM_TRIGGER_HIGH 2021-02-10 18:48:06 +11:00
Pierre Kancir
67bdec3325 AP_OSD: use AUX_PWM_TRIGGER_LOW and AUX_PWM_TRIGGER_HIGH 2021-02-10 18:48:06 +11:00
Pierre Kancir
9362039feb AP_ICEngine: use AUX_PWM_TRIGGER_LOW and AUX_PWM_TRIGGER_HIGH 2021-02-10 18:48:06 +11:00
Pierre Kancir
287645cf68 RC_Channel: use AUX_PWM_TRIGGER_LOW and AUX_PWM_TRIGGER_HIGH 2021-02-10 18:48:06 +11:00
Pierre Kancir
a631ca4eac AP_Button: add AUX_SWITCH_PWM_TRIGGER_LOW and AUX_SWITCH_PWM_TRIGGER_HIGH 2021-02-10 18:48:06 +11:00
Pierre Kancir
0725cbdffc RC_Channel: add AUX_SWITCH_PWM_TRIGGER_LOW and AUX_SWITCH_PWM_TRIGGER_HIGH 2021-02-10 18:48:06 +11:00
Pierre Kancir
68a27e3b41 AP_Arming: use RC_CALIB_MIN_LIMIT_PWM and RC_CALIB_MAX_LIMIT_PWM 2021-02-10 18:48:06 +11:00
Pierre Kancir
9dcaf155a6 RC_Channel: add use RC_CALIB_MIN_LIMIT_PWM and RC_CALIB_MAX_LIMIT_PWM 2021-02-10 18:48:06 +11:00
Randy Mackay
1ee7f00192 AP_VisualOdom: fix T265 criteria for aligning to AHRS 2021-02-10 18:37:45 +11:00
Leonard Hall
f53242b323 AC_AttitudeControl: rename thrust_heading_rotation_angles args 2021-02-10 18:35:58 +11:00
Leonard Hall
ad6e2eeed8 AC_AttitudeControl: remove feed-forward from run_quat 2021-02-10 18:35:58 +11:00
Andy Piper
20d8696a0a AP_HAL_ChibiOS: BeastH7 has DPS310 baro 2021-02-10 18:33:59 +11:00
Leonard Hall
8ace1bfad1 AC_PosControl: const local vars and remove todo 2021-02-10 13:26:23 +09:00
Iampete1
6d650e74f2 AP_Scripting: add fault tolerant hex MotorsMatrix example 2021-02-10 11:16:27 +09:00
Randy Mackay
f4e6d63a7c AP_VisualOdom: minor formatting fixes 2021-02-09 20:17:39 +09:00
Gone4Dirt
d928b80629 AP_SmartRTL: Add option to ignore pilot yaw 2021-02-09 19:39:17 +09:00
Randy Mackay
0703a1cf93 AC_PosControl: add PSCZ logging 2021-02-09 19:33:52 +09:00
Randy Mackay
9f914d9e7d AC_PosControl: add get_z_accel_cmss helper function 2021-02-09 19:33:52 +09:00
Randy Mackay
3ae8af6b21 AP_Logger: add PSCZ logging
Co-authored-by: Peter Barker <pb-gh@barker.dropbear.id.au>

includes const log_PSCZ declaration
also changed PSZ ThO to percentage
2021-02-09 19:33:52 +09:00
Josh Henderson
8135d9e60a AP_VisualOdom: Privatize Logging 2021-02-09 19:33:14 +09:00
Josh Henderson
00e3bda2f5 AP_Logger: Privatize AP_VisualOdom Logging 2021-02-09 19:33:14 +09:00
Iampete1
9ace8ed216 AP_Motors: Matrix 6DoF scripting add get_frame_string 2021-02-09 12:43:54 +09:00
Iampete1
7d5e5f8dd7 AC_AttitudeControl: add SITL panic to remind us to implent the quarternion 2021-02-09 12:43:54 +09:00
Peter Hall
cc26a520bc AP_MotorsMatrix: init to virtual and remove duplicate set initalised 2021-02-09 12:43:54 +09:00
Iampete1
1395f9ce79 AP_Scripting: add 6DoF motors matrix bindings and example 2021-02-09 12:43:54 +09:00
Iampete1
28e8c5e56e AP_Scripting: add 6DoF attitude control bindings and example 2021-02-09 12:43:54 +09:00
Iampete1
5c3725d899 AP_Motors: add 6DoF scripting matrix mixer 2021-02-09 12:43:54 +09:00
Iampete1
791e68b4ef AC_AttitudeControl: add 6DoF support 2021-02-09 12:43:54 +09:00
Gone4Dirt
f490c9d799 AC_Autorotation: Add copter vehicle type to flight log metadata 2021-02-08 22:09:49 -05:00
Gone4Dirt
6dc100728f AP_Motors: Fix spelling of autorotation flag 2021-02-08 22:09:49 -05:00