Commit Graph

25825 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
Mark Whitehorn 9bc8a8c912 AP_Motors: make frame*string getters more const 2021-02-09 12:43:53 +11:00
Mark Whitehorn 6b2184a53a AP_Motors: add frame_class and frame_type strings
move frame_class/type string assignments down into subclasses
2021-02-09 12:43:53 +11:00
Andrew Tridgell 814393c9c2 HAL_ChibiOS: switch from DPS280 to DPS310 in boards that use the DPS310 2021-02-09 11:37:07 +11:00
Andrew Tridgell dad55b496b AP_Baro: support DPS310 temperature fix
separate DPS310 from DSP280
2021-02-09 11:37:07 +11:00
Randy Mackay 1814524fcb AP_NavEKF3: fix using_external_yaw when using external nav
the first if would always return true meaning the method would always return false when using external nav
thanks to David Sastre for finding this!
2021-02-09 11:35:39 +11:00
Andrew Tridgell 86fda93781 HAL_ChibiOS: added heater correction of AK09916
this fixes a problem with the internal compass being impacted by the
magnetic field from the heater
2021-02-09 11:32:19 +11:00
Andrew Tridgell a90b54ba6e AP_Compass: allow for AK09916 correction by heater duty cycle 2021-02-09 11:32:19 +11:00
Andrew Tridgell 1097d04e5d AP_BoardConfig: added get_heater_duty_cycle() 2021-02-09 11:32:19 +11:00
Andrew Tridgell 5920c52285 Scripting: simple relay example
toggle at 50Hz
2021-02-09 10:23:06 +11:00
Andrew Tridgell 2ab8ad0ef0 HAL_ChibiOS: added Durandal pinout details 2021-02-09 07:14:02 +11:00
Randy Mackay d1dda86f60 AC_AutoTune: report step in lower case
also shortens displayed accuracy to 0.1deg and removes one pair of brackets
we should use lower case for reporting because it is easier to read and it takes up less space when displayed on MP's HUD (and probably other GCSs too)
2021-02-06 14:45:53 +09:00
Randy Mackay 25beab4c82 AC_AutoTune: add failure to level warning 2021-02-06 14:45:53 +09:00
Randy Mackay 4032ac9884 AC_AutoTune: level criteria is 5deg for plane and 2.5 for all others 2021-02-06 14:45:53 +09:00
Michael du Breuil 623951a262 AP_HAL_ChibiOS: Add some extra GPS SBF config 2021-02-05 11:52:29 -07:00
Michael du Breuil 5f3b1b92a4 AP_GPS: SBF don't send configuration until we've recieved a prompt
This fixes a configuration problem with SBF unit's where sometimes we
fail to detect the GPS unit continously, until it's been manually
configured. This was tested by doing a hard reset to the GPS unit.

This also now accepts a set of defines from the hwdef, or build
environment, which allows us to specify extra config options.
2021-02-05 11:52:29 -07:00
Michael du Breuil d9ffd04a96 AP_GPS: Broadcast the detect message on AP_Periph over CAN 2021-02-05 11:52:29 -07:00
basti a3c47e0a23 AP_OSD: add SD-card handling to font README 2021-02-05 19:48:06 +11:00
Peter Barker 3da156e358 AP_InertialSensor: prevent nullptr dereference in SITL 2021-02-05 15:02:12 +11:00
Andrew Tridgell 6144136b61 Filter: fixed reset of filters to first value
the delay elements were set incorrectly
2021-02-05 15:01:22 +11:00
Tom Pittenger d1e6b0befb AP_HAL_ChibiOS: Add ADC1 support to STM32F3
This is useful for AP_Periph battery monitoring
2021-02-04 16:30:38 -08:00
murata 09f04e8a5a AP_RangeFinder: Devices are enabled and disabled by type
AP_RangeFinder: Devices are enabled and disabled by type

AP_RangeFinder: Delete some description of I2C function address.
2021-02-05 09:44:27 +11:00
Andrew Tridgell b8e82a56f3 HAL_ChibiOS: don't start rout ticks till after full system init
this prevents an occasional boot hang on systems with DShot
enabled. We shouldn't be starting DShot output till after setup() is
complete as the outputs are still being configured
2021-02-05 07:17:57 +11:00
Peter Barker f847758272 Filter: add gtest suite 2021-02-04 20:50:48 +11:00
Peter Barker 514dfa4b71 SITL: SF45B: increase resolution to 1 degree
The mode filter tends to squish a lot of data if we don't get this
correct.
2021-02-04 20:50:21 +11:00
Tatsuya Yamaguchi 83417c1df7 AP_Notify: modify NTF_BUZZ_VOLUME description 2021-02-04 17:27:00 +09:00
Peter Barker ee2f615352 AP_Proximity: RPLidarA2: correct face distances are assigned to 2021-02-04 16:57:48 +11:00
WillyZehnder acfe815305 AP_Scripting: make get_control_mode_reason available to lua 2021-02-04 08:32:35 +09:00
Peter Barker 84953c2e39 AP_BattMonitor: fix constexpr-and-MIN don't get along bug
lib/libArduCopter_libs.a(AP_BattMonitor_SMBus_NeoDesign.cpp.0.o): In function `AP_BattMonitor_SMBus_NeoDesign::timer()':
/home/pbarker/rc/ardupilot/build/sitl/../../libraries/AP_BattMonitor/AP_BattMonitor_SMBus_NeoDesign.cpp:27: undefined reference to `AP_BattMonitor_SMBus_NeoDesign::max_cell_count'
collect2: error: ld returned 1 exit status
2021-02-04 09:17:57 +11:00
Patrick José Pereira ba293084e3 SITL: Remove pointer check before delete
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-04 09:01:19 +11:00
Patrick José Pereira 61bcbfea14 AP_TempCalibration: Remove pointer check before delete
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-04 09:01:19 +11:00
Patrick José Pereira 12cd138030 AP_HAL: Remove pointer check before delete
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-04 09:01:19 +11:00
Patrick José Pereira 6bdc1704f4 AP_GPS: Remove pointer check before delete
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-04 09:01:19 +11:00
Patrick José Pereira e9a299d96e AP_CANManager: Remove pointer check before delete
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-04 09:01:19 +11:00
Andy Piper 2cdc202d19 AP_HAL_ChibiOS: use non-cachable SRAM3 for DMA on H743
Adjust SRAM1+SRAM2 to 256k as describe in the H743 reference manual
Provide access to mem_info() information

Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2021-02-03 23:35:44 +11:00
Andy Piper cfac268f13 AP_Filesystem: add @SYS/memory.txt
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2021-02-03 23:35:44 +11:00
Andy Piper 0eff201016 AP_HAL: add mem_info()
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2021-02-03 23:35:44 +11:00
murata de9382b0f4 AP_Mission: Reflecting the result of the process 2021-02-03 22:15:02 +11:00
murata 698f967b63 GCS_MAVLink: Notify the maximum number of missions
Update libraries/GCS_MAVLink/MissionItemProtocol.cpp

Co-authored-by: WickedShell <Wicked.Shell.Scripts@gmail.com>

GCS_MAVLink: Notify the maximum number of missions
2021-02-03 20:31:50 +11:00
Michael du Breuil f854477efe AP_BattMonitor: Limit the scope of possible corruption if the NeoDesigns gets a bad cell count 2021-02-03 19:21:39 +11:00
Marko 00d0fe876d AP_Compass: Added support for internal i2c bus to VRBrain-v51
Now the internal compass HMC5883 of the VRBrain-v51 is correctly recognized

Co-authored-by: Pierre Kancir <pierre.kancir.emn@gmail.com>
2021-02-03 19:00:48 +11:00
Andy Piper 06a1500f98 AP_HAL_ChibiOS: ensure GPIO pins get undef'ed properly
minimise bi-directional dshot configs for:

CubeOrange
Durandal
MatekF405
MatekH743
OmnibusNanoV6
Pixracer
mRoPixracerPro
omnibusf4pro
CUAV-X7
2021-02-03 18:49:06 +11:00
Patrick José Pereira 07c3435f9d SITL: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 7b6f1225ba AP_WheelEncoder: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira b8360a08c7 AP_Vehicle: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 9904b397d8 AP_UAVCAN: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 6b2e4296db AP_TemperatureSensor: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira e146483e72 AP_Stats: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 705a885d82 AP_Soaring: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 0da2d9f8eb AP_SmartRTL: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira bffda55639 AP_Scripting: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 806bc4898b AP_Scheduler: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira efffed0510 AP_RangeFinder: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 2ae7edc8b2 AP_RTC: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 8f96580e9d AP_RCProtocol: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira a902c1d54b AP_OSD: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 3df3d002ff AP_Notify: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 53eb2f2bf4 AP_NavEKF2: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira cc39e36ee1 AP_Mount: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira bdc14c60fb AP_Motors: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 266ed9541b AP_Mission: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 5d7d955378 AP_Math: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 18d8f19801 AP_Logger: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 41c653f973 AP_LandingGear: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira d006012cee AP_L1_Control: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira dc6f5aec92 AP_HAL_SITL: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 6899c0b5af AP_HAL: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 98a8e6e370 AP_GyroFFT: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 2e75425a2a AP_GPS: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira aa55578008 AP_Frsky_Telem: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira be37f10d61 AP_ExternalAHRS: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 842360b5e3 AP_Compass: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 5375980aa6 AP_Camera: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 001e516fa7 AP_Button: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 3fcf430a2c AP_BoardConfig: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira d190fff887 AP_BattMonitor: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 6a824b1467 AP_Baro: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira f6937babfa AP_Avoidance: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 7e01935893 AP_ADSB: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira f9732b6c70 AC_PID: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 345fe1a9e4 AC_Fence: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira e4fb439a96 AC_Avoidance: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 7be27235f3 AC_Autorotation: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 0ecbaa867d AC_AutoTune: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira e3d018c401 AC_AttitudeControl: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 03582ff77c AP_WindVane: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira e8e41c512e GCS_MAVLINK: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 45a819c98e StorageManager: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Michel Pastor 41f7587637 ChibiOS: Add SWD pins to SuccexF4 bootloader 2021-02-03 18:37:46 +11:00
Andy Piper 881fd4f37c AP_HAL_ChibiOS: use buffered writes for CRSF telemetry 2021-02-03 18:28:28 +11:00
Peter Barker f15a1fbd62 AP_Vehicle: move control_mode_reason up to AP_Vehicle 2021-02-03 18:24:52 +11:00
auturgy 24268cc6de AP_HAL_ChibiOS: add MatekH743-periph hwdef 2021-02-03 18:17:44 +11:00
mateksys b91c65b4a4 AP_HAL_ChibiOS: add f405-MatekGPS & MatekF405-CAN hwdef 2021-02-03 18:09:35 +11:00
Dr.-Ing. Amilcar do Carmo Lucas 11bf02c2c4 AP_Logger: correct spelling in metadata 2021-02-03 17:47:28 +11:00
huhen 9ba35580db HAL_ChibiOS: Init kakutef7 motor pins for correct initialization of some ESCs 2021-02-03 13:13:32 +11:00
Arsh 18f56fbac5 AP_HAL:examples:Printf: Improvements in the Printf example 2021-02-03 13:02:49 +11:00
yaapu d5868e3c7d AP_Frsky_Telem: added telemetry support for RPM sensors 1 and 2 for SPort, FPort/FPort2 and passthrough over crossfire 2021-02-03 12:49:38 +11:00
Andrew Tridgell cfe63f8657 AP_OSD: changed OSD screen switching logic
this prevents us constantly changing screens when a PWM is given that
matches multiple screens. Instead the first matching screen is used
2021-02-03 10:09:41 +11:00
Josh Henderson 275c2849cf AP_Baro: Privatize Logging 2021-02-02 17:55:27 +11:00
Josh Henderson c32dd4bb5d AP_Logger: Privatize AP_Baro Logging 2021-02-02 17:55:27 +11:00
Michael du Breuil 05b9aa2fa2 AP_UAVCAN: Broadcast ArmingStatus regularly 2021-02-02 10:57:57 +11:00
Josh Henderson d6dc8864db AP_Camera: Privatize AP_Camera 2021-02-02 10:10:17 +11:00
Josh Henderson d142b3ba16 AP_Logger: Privatize AP_Camera Logging 2021-02-02 10:10:17 +11:00
Rishabh 401d365491 AC_WPNav: Adapt to 3-D Avoidance changes 2021-02-01 14:34:13 +09:00
Rishabh f3d825bebe AP_Math: Add unit tests for 3-D lines 2021-02-01 14:34:13 +09:00
Rishabh de67e2b70c AP_Proximity: refactor changes done for 3-D Boundary 2021-02-01 14:34:13 +09:00
Rishabh 37a14a78df AC_Avoid: Refactor changes for 3-D avoidance 2021-02-01 14:34:13 +09:00
Rishabh 5092bc2f6d AC_Avoid: Simplify accessing boundary 2021-02-01 14:34:13 +09:00
Rishabh d359c5ddf2 AC_Avoid: Let user take control if they are backing away at a greater speed than what we have calculated 2021-02-01 14:34:13 +09:00
Rishabh 91132d00d9 AC_Avoid: Add deadzone to backaway code 2021-02-01 14:34:13 +09:00
Rishabh 343ba1a693 AP_Proximity: Use only valid boundary for Simple Avoidance 2021-02-01 14:34:13 +09:00
Randy Mackay 71d928aab9 AP_Proximity: TeraRangerTowerEvo uses modified Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay 5c9a65cff6 AP_Proximity: TeraRangerTower uses modified Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay d4a6ebd273 AP_Proximity: SITL backend uses modified Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay 518078c901 AP_Proximity: RPLidarA2 uses modified Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay babba91632 AP_Proximity: RangeFinder backend uses modified Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay 2d77adf720 AP_Proximity: MAV backend uses modified Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay a65e0affe4 AP_Proximity: LightwareSF45B uses modified Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay 623bd6923e AP_Proximity: LightwareSF40C_v09 uses update Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay 4fda6b38f7 AP_Proximity: LightwareSF40C uses modified Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay ad899de78c AP_Proximity: backend uses modified Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay ef9bc64bb1 AP_Proximity: AirSimSITL uses modified Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay 279b534f67 AP_Proximity: remove duplicate definition
PROXIMITY_NUM_LAYERS is defined in AP_Proximity_Boundary_3D
2021-02-01 14:34:13 +09:00
Randy Mackay 5a0cc08dcc AP_Proximity: refactor Boundary_3D
rename stack to layer
swap order of layer and sector within arrays
rename Boundary_Location to Face
rename get_sector to get_face
rename set_attributes to set_face_attributes
get_distance returns bool and fills in argument instead of returning distance
2021-02-01 14:34:13 +09:00
Rishabh ad6e013171 AC_Avoid: Support 3D Simple Avoidance and Bacakway 2021-02-01 14:34:13 +09:00
Rishabh 43717ea55c AP_Proximity: Add OBSTACLE_DISTANCE_3D mavlink message 2021-02-01 14:34:13 +09:00
Rishabh 36bba2e02c AP_Proximity: Convert Proximity Backend drivers to use 3D Boundary methods 2021-02-01 14:34:13 +09:00
Rishabh 4fce715a9a AP_Proximity: Shift methods to Proximity_Boundary_3D class and support 3D Boundary 2021-02-01 14:34:13 +09:00
Rishabh 7569d8bf8e AP_Proximity: Add AP_Proximity_Boundary_3D class 2021-02-01 14:34:13 +09:00
Rishabh a5fafe57d8 GCS_MAVLink: Add support for OBSTACLE_DISTANCE_3D 2021-02-01 14:34:13 +09:00
Rishabh 1262d73071 AP_Math: Add new methods to support 3D avoidance 2021-02-01 14:34:13 +09:00
Rishabh 79d5e432ee AP_Math: Add new method to extrapolate 3D vector given distance, yaw, pitch 2021-02-01 14:34:13 +09:00
Peter Barker dbae56eb3a AP_Logger: panic in SITL if we fail to log a Replay block
// failing to log a block means that when we go to replay the log
    // things will almost certainly go sour.
2021-01-31 10:46:26 +11:00
Tom Pittenger a5d33cacb5 AP_Soaring: add units to param SOAR_THML_BANK 2021-01-29 11:20:09 -08:00
Samuel Tabor 4ec1e55833 AP_Soaring: Add SOAR_THML_BANK parameter and associated logic. 2021-01-29 11:20:09 -08:00
yaapu 4fbba17506 AP_Scripting: added bindings for frsky telemetry library 2021-01-29 09:55:22 +11:00
yaapu 24382e25fc AP_Frsky_Telem: added support for sending frsky telemetry data from scripting 2021-01-29 09:55:22 +11:00
Michael du Breuil 0f363809f5 AP_GPS: Fix some unit errors with the GPS blended instance
Also add a static assert and some docs on the fact that blending only
works with 2 actual recievers at the moment

Also a small optimization to not call get_rate_ms() twice
2021-01-28 11:55:30 +11:00
Andy Piper 6f5d5c2bf9 AAP_HAL_ChibiOS: allow asserts to be printed on a GPIO pin 2021-01-27 19:36:58 +11:00
Andy Piper d41c92d317 AP_HAL_ChibiOS: don't overwrite fault handler data, register forced faults 2021-01-27 19:13:18 +11:00
Andy Piper 20d928a86a AP_HAL_ChibiOS: don't share DMA on OmnibusNanoV6 for Flash SPI 2021-01-27 19:04:49 +11:00
Andy Piper 873d35acd9 AP_HAL_ChibiOS: bi-directional dshot for MatekH743 2021-01-27 18:58:38 +11:00
Andy Piper 877dde4736 AP_HAL_ChibiOS: on BeastF7 share TIM3 UP/CH and give flash SPI dedicated channel 2021-01-27 18:54:43 +11:00
Andy Piper 2395018000 AP_BLHeli: don't log invalid bi-dir dshot values as they are never used 2021-01-27 18:54:10 +11:00
Andy Piper 9249b73e8b AP_HAL_ChibiOS: correctly allow mixing of bidir and non-bidir channels 2021-01-27 18:49:15 +11:00
Andy Piper 2823fa7245 AP_HAL_ChibiOS: never write bytes that have not been erased on H7
Be more careful about flash failure conditions on H7
2021-01-27 18:30:36 +11:00
Andy Piper 78735a946e AP_HAL_ChibiOS: allow STM32_FLASH_DISABLE_ISR for H7 2021-01-27 18:30:36 +11:00
Andrew Tridgell 155de6d2bc HAL_ChibiOS: fixed build of AP_Periph on H7 2021-01-27 18:24:03 +11:00
Andrew Tridgell 0535c4f592 AP_InertialSensor: default TMAX to 70
if user forgets to set this then better to just timeout rather than
calibrating over a small range
2021-01-27 09:49:35 +11:00
Andrew Tridgell 9861a02c60 HAL_ChibiOS: save INS_ACC*ID persistent parameters
this enables full factory accelerometer calibration, so the user is
not required to run an accelcal, even if they change vehicle type
2021-01-27 09:49:35 +11:00
Andrew Tridgell bdb364d461 AP_InertialSensor: save the accelerometer ID parameters
this is needed for factory accel cal
2021-01-27 09:49:35 +11:00
Andrew Tridgell 87528f47c8 AP_IOMCU: prevent internal error on bootloader flash
when we flash the bootloader on boards with an IOMCU we expect a long
delay as the CPU stops during the flash
2021-01-27 09:49:35 +11:00
Andrew Tridgell 6163659887 AP_HAL: prevent a single bad transfer causing an IMU to be marked unhealthy
This is a response to this issue:
https://discuss.ardupilot.org/t/gyro-problem-after-waypoint-log-analisys

The 2nd gyro went bad with a large offset. Then the first gyro was
marked unhealthy, forcing the EKF to switch to the 2nd gyro. That
resulted in a crash.

I think the SPI bus was getting bad transfers and the register check
code happened to get a bad transfer, thereby marking the first gyro
unhealthy

This change ensures we only fail the register check if two transfers
in a row are bad. This makes it much less likely that a noisy bus will
lead to an unhealthy gyro
2021-01-27 09:47:55 +11:00
Iampete1 ebfe593e38 AP_Scripting: add example script setting up a custom MotorMatrix 2021-01-26 11:07:36 +09:00
Iampete1 5c397d4674 AP_Scripting: add MotorMatrix bindings 2021-01-26 11:07:36 +09:00
Iampete1 fca6f7027b AP_Motors: allow Matrix config from scripting 2021-01-26 11:07:36 +09:00
Peter Hall d0e1e85b9e AP_Motors: add get_frame_mav_type 2021-01-26 11:07:36 +09:00
Randy Mackay f6cb0819ef AP_NavEKF3: pre_arm_check may skip position checks 2021-01-26 10:46:49 +11:00
Randy Mackay 8ecac27777 AP_NavEKF_Source; pre_arm_check may skip position checks 2021-01-26 10:46:49 +11:00
Randy Mackay 62932f884f AP_AHRS: pre_arm_check may skip position checks 2021-01-26 10:46:49 +11:00
Andrew Tridgell 1716fcf995 GCS_MAVLink: fixed valgrind errors with AP_Param::ParamToken 2021-01-26 10:43:09 +11:00
Andrew Tridgell ac35867c17 AP_Param: fixed valgrind errors with AP_Param::ParamToken 2021-01-26 10:43:09 +11:00
Andrew Tridgell 12b93e2922 AP_OSD: fixed valgrind errors with AP_Param::ParamToken 2021-01-26 10:43:09 +11:00
Andrew Tridgell 6c684538d3 AP_Param: greatly speed up param download with disabled parameters
allows fast skip over disabled subgroups. This removes a long delay
with param download on a MatekF405-STD where the final parameters
associated with the OSD took 80ms to fetch, causing a long loop delay
2021-01-26 10:43:09 +11:00
Peter Barker d426d8e1f8 AP_GPS: use ground_course in preference to ground_course_cd 2021-01-26 10:22:28 +11:00
Peter Barker 358069df24 AP_AHRS: use ground_course in preference to ground_course_cd 2021-01-26 10:22:28 +11:00
WillyZehnder 2e2ec79992 RC_Channel: reserve AUX_FUNC for MISSION_RELATIVE 2021-01-26 10:14:11 +11:00
Andrew Tridgell 2843cfa42d AP_InertialSensor: use mavlink statustext for cal info 2021-01-25 16:24:50 +11:00
Andrew Tridgell b542f947f7 AP_InertialSensor: don't mark accels as calibrating during trim
we need the accels with offsets applied when doing accel trim
2021-01-25 16:24:50 +11:00
Andrew Tridgell e908a996af AP_InertialSensor: support SIM_ACC_TRIM
and cleanup vector maths
2021-01-25 16:24:50 +11:00
Andrew Tridgell 7292b4f260 SITL: added SIM_ACC_TRIM_{X,Y,Z} for simulating IMU trim
this will enable an autotest for AHRS trim
2021-01-25 16:24:50 +11:00
Andrew Tridgell ddc4d08e8f AP_NavEKF3: make drag fusion optional 2021-01-24 11:56:52 +11:00
Andrew Tridgell 1ccda938cb AP_NavEKF3: make external navigation optional 2021-01-24 11:56:52 +11:00
Andrew Tridgell 8da511f039 AP_NavEKF3: make body odomotry build depend on vehicle type
saves about 11k of flash
2021-01-24 11:56:52 +11:00
E Thomas 2ee052b36e AP_GPS: Made GPS_DISABLE prevent last_fix_time_ms updates 2021-01-23 17:25:00 +11:00
Peter Barker ade1c487d8 AP_Logger: remove default reason argument for Write_Mode
All callers now supply this
2021-01-22 17:27:26 +11:00
Leonard Hall 25fff17e48 AC_AttitudeControl: constify some local variables 2021-01-22 14:22:18 +09:00
Peter Barker 3582b69e9c AP_NavEKF3: remove getFilterTimeouts access methods 2021-01-22 13:04:36 +11:00
Peter Barker 445a461f12 AP_NavEKF2: remove getFilterTimeouts access methods 2021-01-22 13:04:36 +11:00
Peter Barker 401cccca19 AP_NavEKF2: correct description on NKF3.SVT 2021-01-21 21:26:17 +11:00
Peter Barker b3bacdd33c AP_NavEKF3: remove internal-only getTiltError method 2021-01-21 21:26:17 +11:00
Peter Barker dddb285209 AP_NavEKF2: remove internal-only getTiltError method 2021-01-21 21:26:17 +11:00
Peter Barker 5ad0ac6727 AP_NavEKF3: remove unused getAccelNED method 2021-01-21 21:26:17 +11:00
Peter Barker 6b60bae068 AP_NavEKF2: remove unused getAccelNED method 2021-01-21 21:26:17 +11:00
Peter Barker e32ca819fc GCS_MAVLink: mark results as unused 2021-01-21 20:41:17 +11:00
Peter Barker 60d0b0f07c AP_AHRS: add WARN_IF_UNUSED to some getters 2021-01-21 20:41:17 +11:00
Andrew Tridgell 6c8a57c2d7 AP_InertialSensor: review fixes 2021-01-21 13:09:21 +11:00
Andrew Tridgell 3ff71c7814 AP_InertialSensor: changes from review feedback 2021-01-21 13:09:21 +11:00
Andrew Tridgell b12a663f7a AP_InertialSensor: apply accel scaling 2021-01-21 13:09:21 +11:00
Andrew Tridgell 9febcc0f98 SITL: added accel scaling parameters 2021-01-21 13:09:21 +11:00
Andrew Tridgell 73ddde3629 AP_InertialSensor: changes for new SITL IMU params 2021-01-21 13:09:21 +11:00
Andrew Tridgell b5089580a9 SITL: cleanup IMU parameters
allow for biases per IMU
2021-01-21 13:09:21 +11:00
Andrew Tridgell 5e60fac37e AP_InertialSensor: remove unused variable 2021-01-21 13:09:21 +11:00
Andrew Tridgell 285b53fe07 AP_InertialSensor: use vector polyfit
this reduces memory usage
2021-01-21 13:09:21 +11:00
Andrew Tridgell a1fb0592a9 AP_Math: specialise polyfit for vectors
this is needed to get the precision good enough for wide temperature
ranges when summing the resulting polygon coefficients
2021-01-21 13:09:21 +11:00
Andrew Tridgell c8aaceb6ac AP_LeakDetector: remove warning message on all non-sub builds
pointless pragma
2021-01-21 13:09:21 +11:00
Andrew Tridgell d0d480e858 AP_Compass: fixed matrix inverse for new name 2021-01-21 13:09:21 +11:00
Andrew Tridgell 8278a8a00b AP_AccelCal: rename from review feedback 2021-01-21 13:09:21 +11:00
Andrew Tridgell 2e2ccb40b2 AP_AccelCal: fixed inverse matrix call for new name 2021-01-21 13:09:21 +11:00
Andrew Tridgell 999268cbba AP_Math: fixup matrix algorithms to be in cpp file
this fixes an issue where optimize O2 was forced on any file that
included AP_Math.h. It also fixes the test suite for matrix_alg, and
fixes the type handling to be consistent
2021-01-21 13:09:21 +11:00
bugobliterator 3b3e2c01f8 AP_Math: templatize matrix_alg methods 2021-01-21 13:09:21 +11:00
Andrew Tridgell ffe20f7958 AP_InertialSensor: use a fixed reference temperature of 35C
this allows us to timeout the calibration when the temperature stops
rising as the polynomial no longer depends on the maximum temperature
2021-01-21 13:09:21 +11:00
Andrew Tridgell dc58b0b950 AP_InertialSensor: changes from review feedback
thanks Sid!
2021-01-21 13:09:21 +11:00
Andrew Tridgell 9561f24c0e AP_Filesystem: added @SYS/persistent.parm 2021-01-21 13:09:21 +11:00
Andrew Tridgell 5ed19c764e HAL_ChibiOS: expose load_persistent_params for @SYS 2021-01-21 13:09:21 +11:00
Andrew Tridgell 1680e6e7d6 AP_HAL: expose load_persistent_params() in hal.util 2021-01-21 13:09:21 +11:00
Andrew Tridgell c9a83c8127 AP_InertialSensor: added INS_TCAL_OPTIONS
make persistent params optional, and allow save of accelcal
2021-01-21 13:09:21 +11:00
Andrew Tridgell 5c823debc0 HAL_ChibiOS: support saving persistent parameters to bootloader sector
when we flash the bootloader we can save key peristent parameters to
the end of the bootloader sector, allowing them to persistent across
changes of firmware type

This allows for factory temperature calibration
2021-01-21 13:09:21 +11:00
Andrew Tridgell 504f500fae AP_Common: added get_writeable_string to ExpandingString 2021-01-21 13:09:21 +11:00
Andrew Tridgell 1ddc21c9bb AP_InertialSensor: support saving tempcal params persistently 2021-01-21 13:09:21 +11:00
Andrew Tridgell 8caea96ab1 AP_InertialSensor: start auto-learning at boot
This makes it easier to setup the params. The ENABLE=2 value only
takes effect at boot
2021-01-21 13:09:21 +11:00
Andrew Tridgell 7cb7ad3636 AP_InertialSensor: fixed build error 2021-01-21 13:09:21 +11:00
Andrew Tridgell 2e9f61fe49 AP_InertialSensor: fixed IMU index display in msgs
start at 1 for users
2021-01-21 13:09:21 +11:00
Andrew Tridgell d5b511f4a0 AP_InertialSensor: fixed start timer for temperature in SITL
when we are doing an autotest we want the temperature to start
climbing when we first set SIM_IMUT_FIXED=0
2021-01-21 13:09:21 +11:00
Andrew Tridgell 30e55d8dfc AP_InertialSensor: cope with user changing TMAX while calibrating 2021-01-21 13:09:21 +11:00
Andrew Tridgell 68526262b7 AP_Arming: don't allow arming during IMU temp cal 2021-01-21 13:09:21 +11:00
Andrew Tridgell e2e97c67ce AP_InertialSensor: catch user attempt to change TMAX during cal 2021-01-21 13:09:21 +11:00
Andrew Tridgell 73e53369e8 AP_Notify: added notify events for temperature calibration 2021-01-21 13:09:21 +11:00
Andrew Tridgell 3fb720354d AP_InertialSensor: added notify events for temperature calibration 2021-01-21 13:09:21 +11:00
Andrew Tridgell cc3579ea5d AP_InertialSensor: change TCAL sampling to be even in temperature 2021-01-21 13:09:21 +11:00
Andrew Tridgell cf47c19c0d Filter: fixed low pass 2p filter to auto-init
this prevents the init to zero for temperature filters
2021-01-21 13:09:21 +11:00
Andrew Tridgell 4495414d05 Filter: added reset with value to LowPassFilter2p 2021-01-21 13:09:21 +11:00
Andrew Tridgell fc0f8b990a AP_InertialSensor: added online learning of temp cal
use INS_TCAL1_ENABLE=2 to start learning
2021-01-21 13:09:21 +11:00
Andrew Tridgell 64d9f43d94 AP_Math: added polygon fitting code 2021-01-21 13:09:21 +11:00
Andrew Tridgell 720f9a1de0 AP_Math: cleanup maths functions
use class template instantiation, and cleanup const in matrix code
2021-01-21 13:09:21 +11:00
Andrew Tridgell 6f6f89e5aa AP_InertialSensor: enable temperature sensor on LSM9DS0
this allows for temperature calibration of the LSM303D in CubeBlack
and Pixhawk1
2021-01-21 13:09:21 +11:00
Andrew Tridgell 0c156e324b AP_Compass: enable temperature on lsm303d 2021-01-21 13:09:21 +11:00
Andrew Tridgell c0ba7c29ca SITL: use TCal class for temp adjustment in SITL 2021-01-21 13:09:21 +11:00
Andrew Tridgell 4bdf506d10 AP_InertialSensor: apply 1e-5 scale factor
this keeps the params in a reasonable range for parameter editors
2021-01-21 13:09:21 +11:00
Andrew Tridgell 0f6f6bac6b AP_InertialSensor: expose TCal class for use in SITL 2021-01-21 13:09:21 +11:00
Andrew Tridgell 7921e042f1 AP_InertialSensor: added IMU temperature calibration support
this adds parameters that can be setup by an external script for
compensating for temperature variation in gyros and accels using a 3rd
order polynomial
2021-01-21 13:09:21 +11:00
Andrew Tridgell 580cd143b8 AP_AccelCal: added active() method 2021-01-21 13:09:21 +11:00
Siddharth Purohit f53d80374b SITL: fix build for macos systems 2021-01-21 13:09:21 +11:00
Peter Barker e58d2ecf2f GCS_MAVLink: add mavlink command option to create a 250ms long loop 2021-01-21 11:35:57 +11:00
Andrew Tridgell d81c2ee407 HAL_ChibiOS: allow for some embedded parameters on AP_Periph builds 2021-01-21 06:19:46 +11:00
murata fd91cb03b4 SITL: Change the Kelvin value to a defined name 2021-01-20 20:27:19 +11:00
bugobliterator 8b90eb23e0 AP_HAL_ChibiOS: distcc doesn't like lst generation commands 2021-01-20 19:21:14 +11:00
Randy Mackay 031be010ac AC_AttitudeControl: tailsitter sets target rates more efficiently 2021-01-20 18:21:12 +11:00
Leonard Hall 4e2c7880c5 AC_Avoidance: use AP_Math control functions 2021-01-20 18:19:40 +11:00
Leonard Hall e2308e9414 AC_Loiter: use AP_Math control tools common functions 2021-01-20 18:19:40 +11:00
Randy Mackay 6320338771 AC_PosControl: use AP_Math control functions 2021-01-20 18:19:40 +11:00
Leonard Hall 1129a3fd59 AC_AttitudeControl: use AP_Math control functions 2021-01-20 18:19:40 +11:00
Leonard Hall 1e38440c83 AP_Math: add control common functions 2021-01-20 18:19:40 +11:00
Andy Piper 2fadcf6ba0 AP_HAL_ChibiOS: handle UP/CH channel sharing on H7 correctly 2021-01-20 18:15:17 +11:00
Andy Piper 9e641a32ad AP_HAL_ChibiOS: don't share flash SPI on BeastH7 and compile with -Os 2021-01-20 18:12:57 +11:00
Andy Piper 2b885cd79f AP_HAL_ChibiOS: ensure that serial LED setup goes via an intermediate buffer
protect serial LED buffer transfers with mutex
protect serial LED buffer size with mutex
prevent serial LED interactions before rcout is ready
allocate a serial led buffer per channel that needs it
setup clock mask when needed
2021-01-20 18:10:18 +11:00
yaapu ecfcd98f8a AP_RCTelemetry: apply a 5s hysteresis to RF mode changes and rate reporting 2021-01-20 18:06:24 +11:00
Andy Piper 23158480c7 AP_RCTelemetry: calculate CRSF custom frame support correctly 2021-01-20 18:06:24 +11:00
Andy Piper 39219451bd AP_RCTelemetry: detect CRSF tracer RX and switch to 250Hz high speed telemetry 2021-01-20 18:06:24 +11:00
Andy Piper f6a2d20579 AP_RCProtocol: add tracer 250Hz mode 2021-01-20 18:06:24 +11:00
yaapu 79640e5d94 RC_Channel: added support for passthrough telemetry over crossfire 2021-01-20 18:06:24 +11:00
yaapu 1c3b7d5ecd GCS_MAVLink: added support for passthrough telemetry over crossfire 2021-01-20 18:06:24 +11:00
yaapu 6b26a64f77 AP_Frsky_Telem: added support for passthrough telemetry over crossfire 2021-01-20 18:06:24 +11:00
yaapu 5ef20aec27 AP_RCProtocol: added support for passthrough telemetry over crossfire 2021-01-20 18:06:24 +11:00
yaapu 4933544489 AP_RCTelemetry: added support for passthrough telemetry over crossfire 2021-01-20 18:06:24 +11:00
Andrew Tridgell 9db0862d61 HAL_Linux: use nullptr for vnav rcinput
this makes it clearer what is going on
2021-01-20 13:49:26 +11:00
Michael du Breuil 15fd8480f8 AP_EFI: Correct a bad conversion from Kelvin to Celsius
(was off by 0.15 degrees)
2021-01-20 11:10:25 +11:00
Andrew Tridgell dff6a5bff9 HAL_Empty: allow return of last value in RCOutput
this is needed for linux boards with no native RCOutput that use SBUS
out on a serial port to ensure they can display the servo values in
the GCS
2021-01-20 10:06:45 +11:00
Andrew Tridgell 1ce77111e5 AP_AHRS: allow override of default EKF type 2021-01-20 10:06:45 +11:00
Andrew Tridgell 009cb8f62b HAL_Linux: setup RCIN for vnav 2021-01-20 10:06:45 +11:00
Andrew Tridgell a9f8c9517c AP_HAL: added vnav linux target 2021-01-20 10:06:45 +11:00
Andrew Tridgell 103d6c54e1 AP_ExternalAHRS: added vnav linux target 2021-01-20 10:06:45 +11:00
Peter Barker 933aba66f8 AP_HAL_SITL: avoid nullptr dereference in Replay 2021-01-19 15:15:35 +11:00
Peter Barker c0ea19e5c5 SITL: add test for maxbotixi2cxl 2021-01-19 11:20:47 +11:00
Peter Barker 78b49a2c35 AP_RangeFinder: maxbotix: use i2c-address parameter 2021-01-19 11:20:47 +11:00
Iampete1 9be19b0bfa AP_Scripting: add plane spesific quadplane in_vtol_mode binding 2021-01-19 11:18:10 +11:00
Iampete1 7de14f2e2f AP_Scripting: desc: update AP_Terrain depends 2021-01-19 11:18:10 +11:00
Iampete1 2a75432fa2 AP_Scripting: Generator: support depends 2021-01-19 11:18:10 +11:00
Pierre Kancir 30a4747898 GCS_MAVLink: send sim_state msg 2021-01-19 10:40:43 +11:00
Pierre Kancir c1f1208c89 SITL: add support for SIM_STATE msg 2021-01-19 10:40:43 +11:00
Andrew Tridgell d9dbcb17c4 AP_Math: enable constrain value with line numbers on all boards 2021-01-19 10:24:39 +11:00
Andrew Tridgell 5def8a64ab SITL: avoid negative current and voltage in flightaxis
RealFlight9 will sometimes give meaningless negative values
2021-01-19 10:21:35 +11:00
Andrew Tridgell 53326a08ed AP_DAL: add 10k to SITL memory available
this is needed as the SITL data structures are larger than on STM32
due to pointer size. This means we sometimes fail to replay in SITL as
we refuse to allocate an EKF core
2021-01-18 13:01:00 +11:00
bugobliterator c02c546077 AP_HAL_ChibiOS: add support for inline comments in hwdef.dat 2021-01-18 09:37:11 +11:00
bugobliterator 41693403e2 AP_HAL_ChibiOS: retain memory of past conflicts in dma_resolver 2021-01-18 09:37:11 +11:00
Randy Mackay 0cc9fd2b5d AP_AHRS_NavEKF: get_secondary_quat and position may return EKF3 value 2021-01-16 08:24:23 +09:00
Randy Mackay 1b3ad9cd8d AP_AHRS: use ekf3 by default 2021-01-16 08:24:23 +09:00
Randy Mackay 60633f5a7f AP_NavEKF2: disable ekf2 by default 2021-01-16 08:24:23 +09:00
Randy Mackay 4492e5024c AP_NavEKF3: enable ekf3 by default 2021-01-16 08:24:23 +09:00
Andrew Tridgell ed8d86e5e6 GCS_MAVLINK: support deliberate parameter corruption 2021-01-16 06:47:10 +11:00
Andrew Tridgell 6ca68bfba3 AP_HAL: enable 32k storage on SITL 2021-01-16 06:47:10 +11:00
Andrew Tridgell f93e2f6717 HAL_ChibiOS: enable 32k FRAM on H7 boards 2021-01-16 06:47:10 +11:00
Andrew Tridgell 9e15efcbb5 AP_InertialSensor: added params restored internal error 2021-01-16 06:47:10 +11:00
Andrew Tridgell 4d58bcb321 AP_Param: support restoring from parameter backup region
if header on primary parameter storage is corrupt then restore from
backup
2021-01-16 06:47:10 +11:00
Andrew Tridgell 03a033c5c4 StorageManager: added support for 32k storage with param backup
when HAL_STORAGE_SIZE == 32768 then add:

 - 1280 more bytes for params
 - double waypoint space
 - add a parameter backup area
2021-01-16 06:47:10 +11:00
pkocmoud 7b61a4d8c2 HAL_ChibiOS: support F7 with no crystal 2021-01-15 15:48:01 +11:00
Andy Piper 099d6aa72e AP_NavEKF3: add filter reset when vehicle is idle for too long 2021-01-15 15:47:20 +11:00
Andy Piper cb5be4fcc1 AP_HAL_ChibiOS: don't share IMU DMA on MatekH743 to avoid SPI DMA contention 2021-01-15 14:32:39 +11:00
chobitsfan 26a3a02c81 AP_NavEKF3: use posxy_source in all places 2021-01-14 16:49:12 +09:00
李孟晓 40dbb316c1 AP_BattMonitor: ignore SoC option for UAVCAN devices 2021-01-13 18:30:53 +11:00
Andrew Tridgell eeb728237f AP_Compass: removed error on BMM150
it may be probed at multiple addresses, don't throw lots of errors
2021-01-13 18:10:25 +11:00
Andy Piper e781572d53 AP_HAL_ChibiOS: support iFlight BeastF7
reduce DMA contention on BeastH7 and correct sharing
add README's for BeastF7 and BeastH7
2021-01-13 18:09:33 +11:00
Andy Piper fdbf2d369a AP_HAL_ChibiOS: do not take bi-dir path when in serial DMA 2021-01-13 18:03:41 +11:00
yaapu 89802ed6fc AP_MSP:Tools: use BATTERY_STATE.voltage_cv for cell voltage calculation to replicate actual DJI Goggles behaviour
This becomes apparent when pack voltage is above DJI's hard limit of 25.5v
with this fix the cell voltage is correct even for 12s packs just like on real hardware
2021-01-13 17:59:15 +11:00
yaapu b84baf06d3 AP_OpticalFlow: fix MAVLink opflow driver, only apply yaw to flowRate as body rate comes from AHRS 2021-01-13 17:56:27 +11:00
yaapu 5b2d430a2a AP_OpticalFlow: fix CXOF opflow driver, only apply yaw to flowRate as body rate comes from AHRS 2021-01-13 17:56:27 +11:00
Andrew Tridgell 8728148db6 AP_Notify: don't do startup tone on AP_Periph devices 2021-01-13 15:18:40 +11:00
Igor Campos 174700b7ad AP_Mount: Implement roll control on Solo gimbal 2021-01-13 08:39:03 +11:00
Tatsuya Yamaguchi 985642af32 AP_Avoidance: update the description of AVD_F_ALT_MIN to specify MSL 2021-01-12 21:59:44 +09:00
chobits e73d28fe19 AP_NavEKF3: remove redundant extnav code 2021-01-12 21:56:36 +09:00
Josh Henderson 8e705a5eed AP_Logger: move BAT & BCL logging functions to AP_BattMonitor 2021-01-12 17:43:55 +11:00
Josh Henderson e91953fa3b AP_BattMonitor: move log BAT & BCL into AP_BattMonitor 2021-01-12 17:43:55 +11:00
Josh Henderson dfa8e55622 AP_BattMonitor: add has_temperature method to Backend 2021-01-12 17:43:55 +11:00
Peter Barker b92b343d4e SITL: add simulator for ICM40609 2021-01-12 17:43:36 +11:00
Peter Barker 239b09fb34 AP_InertialSensor: add simulator for ICM40609 2021-01-12 17:43:36 +11:00
Peter Barker 3d577d94e8 GCS_MAVLink: add do_disarm_checks boolean to disarm call
this creates symmetry between arming and disarming, at least as far as
the top-level arm() and disarm() calls are concerned.
2021-01-12 08:48:44 +09:00
Peter Barker b229c552e6 AP_Arming: add do_disarm_checks boolean to disarm call
this creates symmetry between arming and disarming, at least as far as
the top-level arm() and disarm() calls are concerned.
2021-01-12 08:48:44 +09:00
Peter Barker 0052500d67 GCS_MAVLink: split out a handle_command_component_arm_disarm 2021-01-12 08:48:44 +09:00
Brad Bosch a2192eda5e GCS_MAVLink: use RADIO_STATUS message txbuf field
this avoids overrunning radio buffer in queued_param_send()
2021-01-12 10:46:15 +11:00
bugobliterator 4346264113 AP_HAL_ChibiOS: ensure UP and CH timer channels share DMA for H7 2021-01-12 10:45:03 +11:00
Peter Barker 96981baadf AP_CanManager: use milliseconds for timeout
The use of PRIu64 was breaking people's builds
2021-01-12 10:38:54 +11:00
Peter Barker 9099a9b622 AP_AHRS: correct names for active EKF type 2021-01-12 10:23:08 +11:00
Josh Henderson 0ebbf0f74e AP_Logger: move AP_AHRS functions out 2021-01-12 10:13:22 +11:00
Josh Henderson 62ff9a4d4b AP_AHRS: move logging functions to AHRS 2021-01-12 10:13:22 +11:00
Josh Henderson 8ce5113c74 AC_AutoTune: privatize AHRS logging 2021-01-12 10:13:22 +11:00
Andy Piper e9ea360a99 AP_HAL_ChibiOS: don't timeout after 11 bits on serial irqs 2021-01-12 09:58:58 +11:00
Andrew Tridgell 957842f7eb AP_InertialSensor: added support for v3 Invensense sensors
starting with ICM-40609, ICM-42688 and ICM-42605
2021-01-11 14:43:35 +11:00
Andrew Tridgell 14433c3ae3 HAL_ChibiOS: enable ICM-40609 on mRoNexus 2021-01-11 14:43:35 +11:00
yaapu 0f49058fbd AP_MSP: fix for missing ACK on unsupported MSP messages
MSP requires all messages to be acknowledged even if unsupported
2021-01-11 08:54:15 +11:00
Andrew Tridgell 882d9c4e23 GCS_MAVLink: adjust stack sizes 2021-01-10 08:28:55 +11:00
Andrew Tridgell dc57454ac5 AP_Logger: adjust stack sizes 2021-01-10 08:28:55 +11:00
Andrew Tridgell afbdd69165 AP_HAL_ChibiOS: adjust stack sizes 2021-01-10 08:28:55 +11:00
Andy Piper 8fb403c569 AP_HAL_ChibiOS: make sure BDMA channels are not adjacent 2021-01-10 08:11:37 +11:00
Andy Piper 186c28c275 AP_BLHeli: correct bi-dir mask enablement 2021-01-09 09:47:40 +11:00
Peter Barker 416dd98140 AP_Logger: check HAL_LOGGING_DATAFLASH only for definition
As the hwdefs only define the symbol, don't set it to a value...
2021-01-08 12:48:55 +11:00
Peter Barker 7d42f473fc AP_Logger: allow each backend to be compiled out 2021-01-08 12:48:55 +11:00
yaapu 480c9f10df AP_OpticalFlow: fix for msp opflow sensor alignement 2021-01-08 09:29:23 +09:00
Michael Oborne d2720da4a2 AP_GPS: support yaw for UAVCAN GPS 2021-01-07 15:56:28 +11:00
Michael Oborne 5ef3e1bec3 UAVCAN: add dsdl for gps heading 2021-01-07 15:56:28 +11:00
Peter Barker e8d24a1f68 AP_Logger: initialise logger instance variables in header 2021-01-07 10:42:13 +11:00
Peter Barker 80e8688888 AP_Logger: remove perf counters 2021-01-07 09:20:00 +11:00
Andy Piper b3946a667c AP_Logger: omnibusF4pro needs more stack for logging and logging needs to take precedence over ftp 2021-01-07 07:43:52 +11:00
chobits b0fa5fadcd AP_Logger: fix BCN multiplier 2021-01-06 21:48:32 +11:00
Peter Barker c590aa061f RC_Channel: return uint32_t for number of ms overrides should live 2021-01-06 18:33:15 +11:00
Peter Barker ef0b860a48 AP_Logger: remove Prep and NeedPrep functions
These were only being called directly after Init(), so just tacked them
onto the end of those functions.

The checks in NeedPrep turned out to be mostly redundant.
2021-01-06 18:25:21 +11:00
Josh Henderson 1c49a0b44d AP_Logger: only log Battery Status for active monitors 2021-01-06 18:23:15 +11:00
Peter Barker 496267115c AP_RangeFinder: MAVLink: use larger of min ranges / smaller of max ranges 2021-01-06 15:33:41 +11:00
Peter Barker 81ab322daa SITL: correct max_distance in simulated mavlink rangefinder 2021-01-06 15:33:41 +11:00
Peter Barker cba5f142a7 AP_RangeFinder: correct MAVLink backend's out-of-range checks 2021-01-06 15:33:41 +11:00
Peter Barker 223e775a3c AP_RangeFinder_MAVLink: only set sensor type if we accept a reading 2021-01-06 15:33:41 +11:00
Peter Barker 40eb9a8b99 AP_RangeFinder: do not start the mavlink rangefinder as healthy
Also takes the opportunity to clean things up a little
2021-01-06 15:33:41 +11:00
Gone4Dirt c96ca2483e AP_Generator: Make sensor unhealthy msg consistent with other sensors 2021-01-06 09:59:34 +11:00
Andrew Tridgell 59fa794818 AP_NavEKF3: constrain vertical error
this prevents a floating point exception with external AHRS
2021-01-05 21:13:12 +11:00
Andrew Tridgell 1e75bb971e AP_NavEKF2: constrain vertical error
this prevents a floating point exception with external AHRS
2021-01-05 21:13:12 +11:00
Andrew Tridgell ce561ab249 AP_Logger: log active EKF type as ATT.AEKF 2021-01-05 21:13:12 +11:00
Andrew Tridgell b73131cdbc AP_AHRS: review fixes 2021-01-05 21:13:12 +11:00
Andrew Tridgell 4e33b74d69 AP_AHRS: call external AHRS update 2021-01-05 21:13:12 +11:00
Andrew Tridgell b5b9b57c9e AP_AHRS: added external AHRS mavlink status 2021-01-05 21:13:12 +11:00
Andrew Tridgell 75ad1a7d31 AP_AHRS: send a text msg when active EKF changes 2021-01-05 21:13:12 +11:00
Andrew Tridgell 9dbd2d3eba AP_AHRS: expose active EKF type for logging 2021-01-05 21:13:12 +11:00
Andrew Tridgell 7cc71dc573 HAL_SITL: support VectorNav simulation 2021-01-05 21:13:12 +11:00
Andrew Tridgell f57971eafe SITL: added VectorNav simulator 2021-01-05 21:13:12 +11:00
Andrew Tridgell e284c5694d AP_AHRS: added AHRS_EKF_TYPE=11 for external AHRS 2021-01-05 21:13:12 +11:00
Andrew Tridgell b74e5c0e2f AP_InertialSensor: added ExternalAHRS backend 2021-01-05 21:13:12 +11:00
Andrew Tridgell 4f176c25de AP_InertialSensor: relax IMU wait time for low loop rates
allow for waiting for all IMUs for up to 1/3 of the loop time
2021-01-05 21:13:12 +11:00
Andrew Tridgell bf51478dd1 AP_GPS: added ExternalAHRS backend 2021-01-05 21:13:12 +11:00
Andrew Tridgell a068e95a48 AP_Compass: added ExternalAHRS driver 2021-01-05 21:13:12 +11:00
Andrew Tridgell 75c789fc57 AP_Baro: added ExternalAHRS backend 2021-01-05 21:13:12 +11:00
Andrew Tridgell 66297bd061 AP_Vehicle: added ExternalAHRS param tree and object
using EAHRS param prefix
2021-01-05 21:13:12 +11:00
Andrew Tridgell 0f08236e7c AP_SerialManager: added serial AHRS type 2021-01-05 21:13:12 +11:00
Andrew Tridgell ae4d152d51 AP_SerialManager: added find_portnum() API
used for allocating device IDs
2021-01-05 21:13:12 +11:00
Andrew Tridgell 1b60be96d1 AP_ExternalAHRS: added support for external AHRS systems
First supported is VectorNav VN-300 on serial
2021-01-05 21:13:12 +11:00
Arsh 3d5addeee0 AP_HAL:examples:AnalogIn: Added comments in the AnalogIn example 2021-01-05 20:43:04 +11:00
Randy Mackay 3a075850f6 AC_Autorotation: minor comment fix 2021-01-05 17:19:43 +09:00
Peter Barker b6833eee9b SITL: correct SMBus block reads 2021-01-05 14:45:20 +11:00
Peter Barker 8be50910e4 SITL: add support for simulated TSYS01 temperature sensor 2021-01-05 12:01:51 +11:00
Peter Barker ecd21fbc4c AP_TemperatureSensor: add support for simulated TSYS01 temperature sensor 2021-01-05 12:01:51 +11:00
murata d7533843d5 AC_AttitudeControl: Set the gravitational acceleration value to the defined value 2021-01-05 09:11:14 +09:00
murata 219dc2e7da AP_InertialSensor: Set the gravitational acceleration value to the defined value 2021-01-05 09:11:14 +09:00
murata 2eee8e389d AP_L1_Control: Set the gravitational acceleration value to the defined value 2021-01-05 09:11:14 +09:00
TsuyoshiKawamura 441be7e04b AP_Scripting: add rangefinder status_orient 2021-01-05 11:03:42 +11:00
Randy Mackay 647c568ab9 AP_NavEKF3: out-of-date comments removed
GPS, Static and ExtNav yaw buffers have been separated
2021-01-05 10:58:06 +11:00
Randy Mackay 27c998ad94 AP_NavEKF3: rename source and yawFusionMethod from EXTERNAL to GPS 2021-01-05 10:58:06 +11:00
Randy Mackay 77af6df730 AP_NavEKF: rename EXTERNAL to GPS 2021-01-05 10:58:06 +11:00
Randy Mackay c14b4a8b6c AP_NavEKF3: add support for GSF as yaw source 2021-01-05 10:58:06 +11:00
Randy Mackay 0fb168d6ab AP_NavEKF: source supports GSF yaw 2021-01-05 10:58:06 +11:00
Randy Mackay 5891c6ace8 AP_NavEKF3: separate GPS yaw from ExtNav yaw 2021-01-05 10:58:06 +11:00
Randy Mackay 6850b48ea1 AP_NavEKF3: add comments for yaw sensor variables 2021-01-05 10:58:06 +11:00
Randy Mackay fca8eb0778 AP_NavEKF_Source: add ExtNav yaw source 2021-01-05 10:58:06 +11:00
Peter Hall 1f7d796845 AP_Scripting: add fast param bindings and example 2021-01-05 10:55:36 +11:00
Peter Hall 9dae370356 AP_Scripting: add param accesss helper 2021-01-05 10:55:36 +11:00
Andrew Tridgell 16753a51f4 HAL_Linux: use ExpandingString 2021-01-05 10:52:00 +11:00
Andrew Tridgell 42bc9adfb7 HAL_ChibiOS: use ExpandingString for @SYS buffers 2021-01-05 10:52:00 +11:00
Andrew Tridgell 6da0212ce4 AP_Scheduler: use ExpandingString class 2021-01-05 10:52:00 +11:00
Andrew Tridgell c21b6b4a16 AP_HAL_SITL: use ExpandingString class 2021-01-05 10:52:00 +11:00
Andrew Tridgell 96cbde0ee6 AP_HAL: use ExpandingString class 2021-01-05 10:52:00 +11:00
Andrew Tridgell c924a9917e AP_Filesystem: use ExpandingString class 2021-01-05 10:52:00 +11:00
Andrew Tridgell 0c6b4a1045 AP_CANManager: use ExpandingString class 2021-01-05 10:52:00 +11:00
Andrew Tridgell 6c1891fcb3 AP_Common: added ExpandingString class
useful for @SYS output construction
2021-01-05 10:52:00 +11:00
Peter Hall 1a14c8a05b AC_PID: populate pid_info limit feild 2021-01-05 10:27:28 +11:00
Peter Hall b2e1d88da8 AP_Logger: add limit flag to PID logs 2021-01-05 10:27:28 +11:00
Andrew Tridgell 69d3264e55 StorageManager: allow for CANDNA storage on F405 boards
this allows for boards using the log structure storage with 15360
bytes of storage have a CANDNA area.

This fixes CAN support on F405 boards
2021-01-05 10:25:17 +11:00
Peter Barker 8f8283e0f0 AP_Motors: rc_map_mask -> motor_mask_to_srv_channel_mask
the naming of this function precedes our rc/srv-channel split
2021-01-05 10:19:32 +11:00
Peter Barker d24e569b20 GCS_MAVLink: add option to panic the autopilot 2021-01-05 10:04:25 +11:00
Peter Barker ca6c133042 AP_HAL_ChibiOS: do not reuse va_list after it has been ended 2021-01-05 10:04:25 +11:00
Andrew Tridgell a74d087fd8 SRV_Channel: prevent FPE with SERVOn_MIN==SERVOn_MAX 2021-01-05 08:23:28 +11:00
Josh Henderson 4a7f663cad AP_Logger: README add multiplier descriptions
Add clarity to the multipliers and descriptions
2021-01-04 20:45:38 +11:00
Andy Piper 27d7c73c8e AP_RCProtocol: rc_protocols_mask must be set before bootstrap occurs 2021-01-04 20:04:19 +11:00
Josh Henderson ceb2c87970 SITL: align default i2c device bus for BattMonitor 2021-01-04 18:30:09 +11:00
Peter Barker c81df7b5ad AP_Math: add tests for circle-segment-intersection 2021-01-04 13:58:42 +11:00
Peter Barker f534963413 AP_Math: consolidate error checking 2021-01-04 13:58:42 +11:00
murata 4ffc559ccc AP_Math: judge isnan judgment before operation 2021-01-04 13:58:42 +11:00
Peter Barker 8977f3a859 SITL: correct I2C message handling 2021-01-04 12:49:20 +11:00
Peter Barker 23d393e108 SITL: add I2C 8Bit-register methods 2021-01-04 12:49:20 +11:00
Peter Barker 3c16f164df AP_HAL_SITL: correct I2C callback interval 2021-01-04 11:26:12 +11:00
Andrew Tridgell 324ff178d8 HAL_ChibiOS: fixed CUAV_GPS defaults.parm 2021-01-03 16:24:12 -08:00
Tom Pittenger 113f792ad1 AP_HAL_ChibiOS: update periph targets who have buzzer/LEDs with notify 2021-01-03 16:24:12 -08:00
Tom Pittenger 7dde981de6 AP_Notify: add public accessor and param defaults 2021-01-03 16:24:12 -08:00
Andrew Tridgell 6f4bfed82d HAL_ChibiOS: fixed build with alarm and no PWM channels
this fixes a build error due to conditional always being false when
NUM_GROUPS==0 by using a C++ iterator. It also makes the code neater
2021-01-04 09:04:06 +11:00
Peter Barker 8e34388a20 SITL: move simulated maxsonari2c to bus 0
.... where the driver expects it by default
2021-01-03 20:36:54 +11:00
Peter Barker e5fd661caf SITL: correct I2C multi-bus support 2021-01-03 20:36:54 +11:00
Peter Barker 21ffa4d259 SITL: add sanity check for duplicate bus/addr I2C devices 2021-01-03 20:36:54 +11:00
Peter Barker 995f5d1dad SITL: increase quad scanner range to 18m
Matches the value we send for Rover, which is useful until we can
reflect on the simulation to discover its maximum range
2021-01-03 18:54:54 +11:00
Rishabh 2f5f55f680 SITL: Added quadcopter morse example with laser scanner 2021-01-03 18:54:54 +11:00
Peter Barker b1239dcd06 SITL: correct OBSTACLE_DISTANCE message output from SIM_Morse 2021-01-03 17:49:44 +11:00
Andy Piper 40090dcce9 AP_UAVCAN: compile fix for debug/assertions 2021-01-03 08:57:13 +11:00
Andy Piper 176c648156 AP_Terrain: compile fix for gcc 9 2021-01-03 08:57:13 +11:00
Andy Piper 779c2a9e5f AP_Logger: move logger IO to a separate thread 2021-01-02 22:30:08 +11:00
Andrew Tridgell 09603e29ce AP_Compass: fixed external handling for BMM150 2021-01-02 10:31:15 +11:00
Andrew Tridgell 3d4a8829f3 AP_Compass: added BMM150 as available external mag 2021-01-02 10:31:15 +11:00
Andrew Tridgell e747edbcf2 AP_NavEKF3: fixed init order for scheduler
this can impact replay of EKF2
2021-01-02 10:30:26 +11:00
Andrew Tridgell b36bfe4206 AP_NavEKF2: fixed init order for scheduler
this can impact replay of EKF2
2021-01-02 10:30:26 +11:00
Hwurzburg ce361e51bf HAL_ChibiOS: Reinstate HAL_MINIMIZE_FEATURES for 1MB F7 boards 2021-01-02 08:57:47 +11:00
Andrew Tridgell 6ed4eca57f AP_CANManager: fixed use of CANSensor on multiple ports
we should not increment _num_drivers if we don't have a driver yet
2021-01-02 06:25:20 +11:00
Andrew Tridgell 418367c266 HAL_SITL: allow --home to specify a location from locations.txt
this will make it easy to use a named location in MissionPlanner SITL
2021-01-01 17:30:32 +11:00
Andrew Tridgell a4517032c5 AP_UAVCAN: log all UAVCAN devices in CAND log message 2021-01-01 17:30:14 +11:00
Andrew Tridgell 0ae9b28198 AP_Logger: added get_log_start_count()
used by UAVCAN to know if it should log CAN devices on log rotation
2021-01-01 17:30:14 +11:00
Andrew Tridgell 4fdf315760 AP_Logger: use null terminated strings
this prevents logging garbage for strings that are shorter than the
length specifier (eg. 'Z'). This assumes we will not want to log
binary data as strings
2021-01-01 17:30:14 +11:00
Andrew Tridgell 66c05bef76 AP_RangeFinder: added USD1 CAN driver
also known as uLanding CAN
2021-01-01 17:29:54 +11:00
Andrew Tridgell 943918d511 AP_Arming: added USD1 CAN 2021-01-01 17:29:54 +11:00
Andrew Tridgell b7fa1a4b98 AP_CANManager: added USD1 CAN driver type 2021-01-01 17:29:54 +11:00
Michael du Breuil 60af6633cf AP_EFI: Add NWPMU CAN driver 2021-01-01 17:29:54 +11:00
Andrew Tridgell fb84baf8a5 AP_Arming: added EFI_NWPMU 2021-01-01 17:29:54 +11:00
Andrew Tridgell db798ace05 AP_CANManager: added EFI_NWPMU 2021-01-01 17:29:54 +11:00
Andrew Tridgell 32c3a2feef AP_CANManager: added CANSensor class
this makes creation of custom CAN protocol handlers much easier
2021-01-01 17:29:54 +11:00
Andrew Tridgell e260c7ad59 HAL_ChibiOS: update f303-MatekGPS to allow disable of MSP
and use DMA for MSP
2021-01-01 15:40:13 +11:00
David B. Bitton 8dbe0a71ba AP_HAL_ChibiOS: add support for Toshiba LED 2020-12-31 11:02:10 -08:00
Tom Pittenger 8e6278f269 AP_ADSB: add Sagetech XP driver 2020-12-30 17:56:38 -08:00
Tom Pittenger ffd3d1da1d AP_SerialManager: add support for ADSB protocol 2020-12-30 17:56:38 -08:00
Tom Pittenger afaca30075 AP_HAL: add helpers le24toh_ptr(), be24toh_ptr(), put_le24_ptr(), put_be24_ptr() 2020-12-30 17:56:38 -08:00
Hwurzburg e11677807b Plane: Unify tilt servo names 2020-12-30 21:21:57 +11:00
Andy Piper 401e5c2073 AP_HAL_ChibiOS: add support for bidir DShot support in RCOutput
add support for sampling GPIO pins using timer
don't restart pwm group when not doing bi-dir
fix hwdef generation preproc for TIM DMA
decode telemetry at the start of the dshot cycle
calculate dshot pulse separation correctly and ensure we output rapidly enough
calculate dshot min periods and timeouts correctly
refactor dshot_send() into dshot_send_groups()
use bi-dir dshot channel mask
selectively enable bi-dir RC Channels
process bi-dir mask correctly when allocating DMA channels
allow UP and CH DMA channel sharing
optionally enable bidir vars in hwdef.

enable bi-dir dshot in KakuteF7Mini
enable bi-dir dshot in OmnibusF4Pro
enable bi-dir dshot in OmnibusNanoV6
enable bi-dir dshot in MatekF405
enable bi-dir dshot in fmuv5
enable bi-dir dshot in fmuv3
enable bi-dir dshot in OmnibusF7V2
enable bi-dir dshot in OmnibusNanoV6
enable bi-dir dshot in CubeOrange
enable bi-dir dshot in Pixracer
enable bi-dir dshot in mRoPixracerPro

Co-authored-by: bugobliterator <siddharthbharatpurohit@gmail.com>
2020-12-30 19:14:16 +11:00
Andy Piper 5436784d38 AP_Logger: add ESC error rate 2020-12-30 19:14:16 +11:00
Andy Piper 1c79f22ba2 AP_HAL: make erpm accessible from RCOutput
give access to erpm error rate
add bi-directional dshot mask modifier
2020-12-30 19:14:16 +11:00
Andy Piper c8b2f11ab6 AP_InternalError: add dma_fail 2020-12-30 19:14:16 +11:00
Andy Piper f60fdde492 AP_BLHeli: return motor frequencies from bi-dir dshot if available
add channel mask to cater for bi-dir dshot
call into rcout to setup bi-dir dshot
log bi-dir telemetry even when regular telemetry is disabled
don't expose bi-dir dshot if not compiled in
2020-12-30 19:14:16 +11:00
oneWayOut 654aea1cd1 SITL: delete unused parameter 'Vector3f &body_accel' in Plane::calculate_forces() 2020-12-30 18:59:12 +11:00
murata 282590668d AP_RangeFinder: Make measurement time and call back time static constant
Co-authored-by: Pierre Kancir <pierre.kancir.emn@gmail.com>
2020-12-30 18:29:35 +11:00
Andy Piper 253ce18184 AP_HAL_SITL: rename system_initialized() and add is_system_initialized() 2020-12-30 18:16:59 +11:00
Andy Piper 526ae5d2f4 AP_HAL_Empty: rename system_initialized() and add is_system_initialized() 2020-12-30 18:16:59 +11:00
Andy Piper 74633e55cc AP_HAL_Linux: rename system_initialized() and add is_system_initialized() 2020-12-30 18:16:59 +11:00