Commit Graph

26693 Commits

Author SHA1 Message Date
Paul Riseborough 3ce5633701 AP_AHRS: Add accessor function for vibration affected status
AP_AHRS: fix rebase build error
2021-07-23 10:19:50 +09:00
Paul Riseborough a220ca20a6 AP_NavEKF3: Add accessor function for vibration affected status 2021-07-23 10:19:50 +09:00
Paul Riseborough e7ff7f629d AP_NavEKF3: Don't update accel bias states if vibration affected 2021-07-23 10:19:50 +09:00
Paul Riseborough 82f585a515 AP_NavEKF3: Use large accel process noise when IMU data is bad 2021-07-23 10:19:50 +09:00
Paul Riseborough 7b40e89463 AP_NavEKF3: Adjust gyro bias process noise tuning
NEw value is a compromise between roll/pitch angle and horizontal state velocity estimation errors and the noise in the gyro bias estimate
2021-07-23 10:19:50 +09:00
Paul Riseborough 082f8e42f6 AP_NavEKF3: Allow smaller dvel bias state variances for improved tuning 2021-07-23 10:19:50 +09:00
Paul Riseborough 315d9ef9d8 AP_NavEKF3: Retune IMU process noise
Required to achieve equivalent fusion noise and weighting on IMU vs other sources to previous param defaults with the old covariance prediction equations.
2021-07-23 10:19:50 +09:00
Paul Riseborough 344f2d0eb7 AP_NavEKF3: Make gyro bias learning less noisy 2021-07-23 10:19:50 +09:00
Paul Riseborough fcf7a7c8f7 AP_NavEKF3: Fix bug preventing learning of XY IMU dvel bias in flight 2021-07-23 10:19:49 +09:00
Paul Riseborough 4096e75b15 AP_NavEKF3: Change powf(x,2) to sq(x) 2021-07-23 10:19:49 +09:00
Paul Riseborough 5cb4cf870d AP_NavEKF3: Update covariance prediction equations 2021-07-23 10:19:49 +09:00
Paul Riseborough 14edac7e5c AP_NavEKF3: Use alternate form for quaternion to rotmat equations in derivation 2021-07-23 10:19:49 +09:00
Andrew Tridgell c2e221dd09 AP_Math: fix uses of single precision 2021-07-23 10:19:49 +09:00
Randy Mackay e4684f65dc AR_WPNav: integrate PathPlanner returning path_planner_used
Rover does not need to handle the results differently based on the planner used
2021-07-23 10:19:49 +09:00
Randy Mackay 0c9fbf9456 AC_WPNav_OA: minor formatting and comment fixes 2021-07-23 10:19:49 +09:00
Randy Mackay b95c6b5e5d AC_WPNav_OA: separate handlers for results from Dijkstra's and BendyRuler
also bendy ruler uses pos controller
2021-07-23 10:19:49 +09:00
Randy Mackay c991ff4318 AC_Avoidance: BendyRuler returned destination are shortened 2021-07-23 10:19:49 +09:00
Randy Mackay 075c05baea AC_Avoidance: bendy ruler format fixes 2021-07-23 10:19:49 +09:00
Randy Mackay 0b26bace7f AC_Avoidance: OA_PathPlanner returns which planner was used
this replaces get_bendy_type
2021-07-23 10:19:49 +09:00
Randy Mackay 980909deb5 AC_Avoidance: BendyRuler returns which type was used
also make serach_xxx_path methods private
2021-07-23 10:19:49 +09:00
Randy Mackay 400731df1b AP_Common: add Location::linear_interpolate_alt 2021-07-23 10:19:49 +09:00
Andy Piper 74a8891099 AP_BLHeli: ensure correct rotation through telemetry ESCs 2021-07-23 10:19:49 +09:00
Pierre Kancir 3cee86e63f AC_WPNav: remove unused variable following https://github.com/ArduPilot/ardupilot/pull/18076 2021-07-23 10:19:49 +09:00
Leonard Hall 6f5d2008e3 AC_PosControl: Add MAX(bla,0) because safe_sqrt isn't safe 2021-07-23 10:19:49 +09:00
Leonard Hall 6f26ca6b65 WP_Nav: Return Crosstrack error 2021-07-23 10:19:49 +09:00
Leonard Hall d6df47fd06 AC_AttitudeControl: AC_PosControl: calculate cross track 2021-07-23 10:19:49 +09:00
Randy Mackay fce7db0d18 AC_WPNav: use get_terrain_margin instead of constant 2021-07-23 10:19:49 +09:00
Randy Mackay 33ec14ce70 AC_WPNav: add TER_MARGIN param 2021-07-23 10:19:49 +09:00
Leonard Hall 767281dc76 AC_AttitudeControl: AC_PosControl: Auto Terain following update 2021-07-23 10:19:49 +09:00
Leonard Hall 4bbc69ef6e AC_WPNav: Auto Terain following update 2021-07-23 10:19:49 +09:00
Andy Piper a9187a50cf AP_HAL_ChibiOS: only control widest pulse for dshot and oneshot 2021-07-23 10:19:48 +09:00
Leonard Hall a765e266f4 AC_AttitudeControl: Allow yaw rate reset to be de-selected 2021-07-23 10:19:48 +09:00
Hwurzburg 4664ed6d7d RC_Channel: fix ELRS systems spamming CRSF mode/rate messages 2021-07-23 10:19:48 +09:00
Hwurzburg a09f38b195 AP_RCTelemetry: fix ELRS systems spamming CRSF mode/rate messages 2021-07-23 10:19:48 +09:00
Andy Piper 2ef5a9170e AP_RCTelemetry: correct firmware string length for CRSF 2021-07-23 10:19:48 +09:00
Leonard Hall 82ba9e06a1 AC_WPNav: Remove unused function 2021-07-23 10:19:48 +09:00
Leonard Hall 05f21d7665 AC_AttitudeControl: Add accessor for yaw slew limit 2021-07-23 10:19:48 +09:00
Leonard Hall 49da46af16 AC_AttitudeControl: AC_PosControl: support accel only input in the vertical 2021-07-23 10:19:48 +09:00
Leonard Hall b2032ee2e3 AC_AttitudeControl: AC_PosControl: support terrain following 2021-07-23 10:19:48 +09:00
Leonard Hall d9c0670dcd AC_WPNav: seperate kinimatic shaping from pid limit setting 2021-07-23 10:19:47 +09:00
Leonard Hall 5f7607bbf0 AC_AttitudeControl: AC_PosControl: seperate kinimatic shaping from pid limit setting 2021-07-23 10:19:47 +09:00
Leonard Hall 2075e2ffc4 AC_AttitudeControl: Add terain following to guided 2021-07-23 10:19:47 +09:00
Randy Mackay d22f8fbc35 AC_WPNav: get_terrain_offset and get_vector_NEU made public 2021-07-23 10:19:47 +09:00
Leonard Hall 80b90a7ac3 AC_WPNav: move code to generate terrain following kinematic path 2021-07-23 10:19:47 +09:00
Leonard Hall 9244183798 AC_AttitudeControl: AC_PosControl: Support Accel only input 2021-07-23 10:19:47 +09:00
Leonard Hall 612b00ef00 AC_AttitudeControl: AC_PosControl: Change input_pos_xyz name 2021-07-23 10:19:47 +09:00
Andrew Tridgell cb14275e43 AP_Math: added test for SCurve::calculate_path
this was the values shown in the core dump for failing guided mode
test in CI
2021-07-23 10:19:47 +09:00
Andy Piper 35d34ee9ae AP_HAL_ChibiOS: re-enable LEDs on MatekF405-bdshot 2021-07-23 10:19:47 +09:00
Randy Mackay 0cbcb9dc91 AP_NavEKF3: EK3_RNG_USE_HGT param references EK3_SRCx_POSZ 2021-07-23 10:19:47 +09:00
Andrew Tridgell 4384b9ea36 AP_Common: update tests for 4.1 2021-07-23 10:19:47 +09:00
Andrew Tridgell 4218452475 HAL_ChibiOS: raise DMA contention threshold for H7 2021-07-23 10:19:47 +09:00
Andrew Tridgell aab77f7046 AP_SerialManager: document DisableFIFO bit 2021-07-23 10:19:47 +09:00
Andrew Tridgell eafd3c2952 AP_SerialManager: call set_options() before first UART use
this ensures options are set before the first begin() call
2021-07-23 10:19:47 +09:00
Andrew Tridgell 91afec69dc HAL_ChibiOS: implement NOFIFO option for uarts 2021-07-23 10:19:47 +09:00
Andrew Tridgell 2cc98114a4 AP_HAL: added serial option for disabling FIFO on uarts 2021-07-23 10:19:47 +09:00
Andrew Tridgell c9403afc75 AP_Math: fixed build 2021-07-23 10:19:47 +09:00
Andrew Tridgell 1a7ee954a6 HAL_SITL: update for changed SITL API 2021-07-23 10:19:46 +09:00
Andrew Tridgell 70d540127c SITL: added SIM2 message
useful for EKF debugging

# Conflicts:
#	libraries/SITL/SIM_Aircraft.cpp
2021-07-23 10:19:46 +09:00
Andrew Tridgell 05fbe78b9f SITL: separate origin and home in SITL
this allows for accurate sensor data when flying a very long distance
from the takeoff location
2021-07-23 10:19:46 +09:00
Andrew Tridgell a43bd0ae18 AP_DAL: update GPS yaw API to add timestamp 2021-07-23 10:19:46 +09:00
Andrew Tridgell f1cbfb3e46 AP_GPS: change handling of moving baseline yaw
this changes yaw handling in a few ways:

 - GPS yaw now has a timestamp associated with the yaw separate from
   the timestamp associated with the GPS fix

 - we no longer force the primary to change to the UBLOX MB rover when
   it has a GPS yaw. This means we don't change GPS primary due to GPS
   loss, which keeps the GPS more stable. It also increases accuracy
   as the rover is always less accurate in position and velocity than
   the base

 - now we force the primary to be the MB base if the other GPS is a
   rover and the base has GPS lock
2021-07-23 10:19:46 +09:00
Andrew Tridgell faec3e1a8a AP_NavEKF: sync for 4.1.0beta 2021-07-23 10:19:46 +09:00
Andrew Tridgell f60c592af3 AP_Math: sync for 4.1.0beta releases 2021-07-23 10:19:46 +09:00
Andrew Tridgell 01156ed348 AP_Common: make longitude_scale() a static
this changes the use of longitude_scale() to use the average latitude
instead of the lattitude at one end of the line when calculating
positions and distances. It means we obey the basic geometry rule
that:

 pos1 + offs = pos2
 pos2 - offs == pos1
2021-07-23 10:19:46 +09:00
Andrew Tridgell c9b9a6a616 HAL_ChibiOS: run storage writes at 1kHz not 100Hz
The 100Hz update rate means there is a significant chance of an arming
failure after mission upload if you try to arm shortly after the
update.

Each mission item is 15 bytes, so with a 1200 item mission we need to
write 18000 bytes to storage. At 100Hz, with 8 bytes per storage line,
that takes over 22 seconds.
2021-07-23 10:19:46 +09:00
Peter Barker 304927a41e AP_NavEKF3: pass NavEKF failures back up to callers 2021-07-23 10:19:46 +09:00
Andrew Tridgell c31de1a5ca AP_NavEKF3: process GPS yaw independently of GPS fix
this processes GPS yaw with its own timestamp and as a separated step
from fusing position and velocity. This makes the yaw time handling
more accurate as yaw for moving baseline GPS comes in as a separate
piece of data from the position and velocity
2021-07-23 10:19:46 +09:00
Andrew Tridgell 56ddaa1a99 AP_NavEKF3: fixed indentation in readGpsData() 2021-07-23 10:19:46 +09:00
Andrew Tridgell 579e4566c6 AP_NavEKF3: implement moving origin
this shifts EKF_origin to the current location at 1Hz, while leaving
public_origin alone. All output APIs and logging are relative to
public_origin.

The effect of this change is to remove the distortion caused by a
spherical earth, which allows the EKF to operate without errors at
very long distances from the public_origin.
2021-07-23 10:19:46 +09:00
Andrew Tridgell d43e95a39a AP_NavEKF3: moved checkUpdateEarthField to be called less often 2021-07-23 10:19:46 +09:00
Andrew Tridgell e409202bef AP_NavEKF3: update earth field at 1Hz
this prevents large mag errors on long distance flights
2021-07-23 10:19:46 +09:00
Andrew Tridgell 399cd4ea03 AP_Common: added ftype precision offset call
# Conflicts:
#	libraries/AP_Common/Location.cpp
#	libraries/AP_Common/Location.h
2021-07-23 10:19:46 +09:00
Andrew Tridgell 163a37efa7 AP_NavEKF3: convert code_gen.py to ftype 2021-07-23 10:19:46 +09:00
Andrew Tridgell 5531703548 AP_NavEKF3: convert powF(xx,2) calls to sq(xx) 2021-07-23 10:19:46 +09:00
Andrew Tridgell c988f23389 AP_NavEKF3: convert EKF3 derivation to ftype 2021-07-23 10:19:46 +09:00
Andrew Tridgell e11c94602b HAL_ChibiOS: define HAL_HAVE_HARDWARE_DOUBLE on F765, F777 and H7 2021-07-23 10:19:46 +09:00
Andrew Tridgell 1119ffe6ba AP_NavEKF3: allow for double EKF build 2021-07-23 10:19:46 +09:00
Andrew Tridgell edbaf9f3c1 AP_NavEKF2: allow for double EKF build 2021-07-23 10:19:46 +09:00
Andrew Tridgell d31ca6ca8c AP_NavEKF: allow for double EKF build 2021-07-23 10:19:46 +09:00
Andrew Tridgell 6484a9666c AP_Mount: use ZERO_FARRAY() 2021-07-23 10:19:45 +09:00
Andrew Tridgell 6bcc0737ae AP_Motors: fixup build for ftype conflict 2021-07-23 10:19:45 +09:00
Andrew Tridgell 9629b19ec1 AP_Common: added double methods for SITL 2021-07-23 10:19:45 +09:00
Andrew Tridgell 970ae3dd76 SITL: fixup offset calls 2021-07-23 10:19:45 +09:00
Andrew Tridgell 232ccfe477 AP_Math: allow for double EKF build 2021-07-23 10:19:45 +09:00
Andrew Tridgell 712fbd08dc HAL_ChibiOS: use SRAM1 as first ram segment on H7
this is needed to give the linker more than 128k for static variables
with double precision maths.
2021-07-23 10:19:45 +09:00
Andrew Tridgell 53ecf048d1 AP_HAL: allow for double EKF build 2021-07-23 10:19:45 +09:00
Andrew Tridgell 079577a6e5 APM_Control: adjust fixed wing filter defaults
adjust defaults based on discussions with Paul, and initialise the
FLTT value based on the controller time constant
2021-07-23 10:19:45 +09:00
Andrew Tridgell 36b22cffb6 AP_Notify: disable DShot buzzer by default 2021-07-23 10:19:45 +09:00
Andy Piper c265d70d3d AP_Notify: re-enable display on 1Mb boards 2021-07-23 10:19:45 +09:00
Andrew Tridgell 3a683be219 HAL_ChibiOS: always send zero DShot when disarmed
this prevents a misconfigured system (for example SERVOn_REVERSED=1)
from running a motor while disarmed.

See https://discuss.ardupilot.org/t/plane-4-1-0-beta/72434/34?u=tridge
2021-07-23 10:19:45 +09:00
Andrew Tridgell a757706797 AP_Logger: fixed log creation on forced arm
when we force arm we need to ask the IO thread to create the log, not
create it ourselves
2021-07-23 10:19:45 +09:00
Randy Mackay 3900a4f14a GCS_MAVLink: send water depth and temp 2021-06-30 12:05:09 +09:00
Andrew Tridgell a7f31929ea AP_Common: use longitude scaling from definitions.h 2021-06-29 17:26:34 +09:00
Andrew Tridgell 978ea307b0 AP_Math: fixed the value LATLON_TO_CM
it didn't have enough digits of precision, and was inconsistent with
LOCATION_SCALING_FACTOR
2021-06-29 17:26:34 +09:00
Peter Barker 819c331acd AP_BattMonitor: correct static_assert call 2021-06-28 11:05:00 +09:00
Peter Barker 67ebdc300b AP_HAL_SITL: reduce scope of loop variable 2021-06-27 10:57:07 +10:00
Leonard Hall fcde1e7370 AC_WPNav: use shaping_tc_z_s for terrain following time constant. 2021-06-25 16:54:05 +09:00
Leonard Hall 8f493e3021 AC_AttitudeControl: Add shaping_tc_z_s accessor 2021-06-25 16:54:05 +09:00
Andrew Tridgell f12a7dd04b AP_Mount: fixed longitude subtraction 2021-06-25 15:33:55 +10:00
Peter Barker f69e2a49f6 AP_Common: add test for longitude wrapping 2021-06-25 15:33:55 +10:00
Andrew Tridgell 77d83b9c77 AP_Common: fixed Location class for wrap at 180 degrees longitude
this allows us to fly missions across the date line
2021-06-25 15:33:55 +10:00
Leonard Hall 5475d1153c AC_PosControl: fixup ekf reset 2021-06-25 10:01:49 +09:00
Andrew Tridgell 4895a08ab2 AP_IRLock: convert SITL backends to double precision position 2021-06-24 21:34:30 +10:00
Andrew Tridgell f209504a12 AC_PrecLand: convert SITL backends to double precision position 2021-06-24 21:34:30 +10:00
Andrew Tridgell aa03afafa7 AP_Math: added matrix3 tofloat and todouble 2021-06-24 21:34:30 +10:00
Andrew Tridgell 61faeb2d7f AP_Common: added double methods for SITL 2021-06-24 21:34:30 +10:00
Andrew Tridgell fb275c9874 SITL: convert to double precision for positions 2021-06-24 21:34:30 +10:00
Andrew Tridgell 1d00cab9e6 AC_WPNav: convert circle, loiter and WPNav to double position 2021-06-24 21:34:30 +10:00
Andrew Tridgell 66186e5221 AC_AttitudeControl: convert poscontrol to use double position 2021-06-24 21:34:30 +10:00
Andrew Tridgell c8079a318c AC_PID: convert AC_P_2D to double 2021-06-24 21:34:30 +10:00
Andrew Tridgell 9b91cfe4ee AP_Math: implement double versions of some position control methods 2021-06-24 21:34:30 +10:00
Andrew Tridgell 3a3a30ab22 AP_Math: define postype_t and vectors 2021-06-24 21:34:30 +10:00
Andrew Tridgell 3fc88b19b8 HAL_SITL: implement initial GPS position offsets 2021-06-24 21:34:30 +10:00
Andrew Tridgell 3315ec5acc AP_Math: added tofloat() and todouble() methods to Vector2 and Vector3 2021-06-24 21:34:30 +10:00
Andrew Tridgell cf149a9d18 SITL: added SIM_INIT_LAT_OFS and SIM_INIT_LON_OFS
these give an initial lat/lon offset to the GPS in SITL so we can end
up with an origin a long way from the final position
2021-06-24 21:34:30 +10:00
Andrew Tridgell 7819cc6400 AC_AttitudeControl: cleanup poscontrol comments with input from Leonard 2021-06-24 20:28:45 +10:00
Andrew Tridgell 639570505b AP_Math: cleanups from Leonards feedback 2021-06-24 20:28:45 +10:00
Andrew Tridgell 5f053bd53a AC_AttitudeControl: fixed comment 2021-06-24 20:28:45 +10:00
Andrew Tridgell 566dd8ca8b AP_Math: cleanup API comments on control code 2021-06-24 20:28:45 +10:00
Andrew Tridgell bf91168cd6 AC_WPNav: cleanup position control APIs
use Vector2 for xy, float for z
2021-06-24 20:28:45 +10:00
Andrew Tridgell fd68233fed AC_AttitudeControl: cleanup position control APIs
use Vector2 for xy, float for z
2021-06-24 20:28:45 +10:00
Andrew Tridgell 86f09cad09 AP_Math: cleanup position control APIs
use Vector2 for xy, float for z
2021-06-24 20:28:45 +10:00
Andrew Tridgell fe4abc521a AP_Math: make vector3 xy() method return a reference 2021-06-24 20:28:45 +10:00
Siddharth Purohit 43bb543aff AP_PiccoloCAN: fix missing _telem_sem 2021-06-24 17:15:08 +10:00
Oliver 9aba85dadc AP_PiccoloCAN: Explicit initialization of AP_HAL::CANFrame instances 2021-06-24 15:51:21 +10:00
Oliver dade859ff9 AP_PiccoloCAN: Remove unncessary floating point operations 2021-06-24 15:51:21 +10:00
Oliver 06eb844ede AP_PiccoloCAN: Update code to match new esc telemetry / logging architecture 2021-06-24 15:51:21 +10:00
Oliver Walters de3c4cc9da AP_PiccoloCAN: Increase number of supported channels from 12 -> 16 2021-06-24 15:51:21 +10:00
Oliver Walters fb16b085c0 AP_PiccoloCAN: Record servo telemetry information to log
- Servo position
- Servo speed
- Servo force / torque
- Servo duty cycle

Updated servo protocol file to accommodate extra variable data
2021-06-24 15:51:21 +10:00
Oliver Walters 115c1224de AP_PiccoloCAN: Send servo commands for active channels
- For each channel, check if a non-motor function is assigned
- If so, send the function value out to the servo
2021-06-24 15:51:21 +10:00
Oliver Walters 7b0da02a18 AP_PiccoloCAN: Framework for CAN servo outputs 2021-06-24 15:51:21 +10:00
Oliver Walters 43b7b4eb3b AP_PiccoloCAN: Add support for CBS servo protocol
- Adds protocol files for the servo protocol
- Generated using Protogen tool
2021-06-24 15:51:21 +10:00
Siddharth Purohit 9494a439ec AP_UAVCAN: Use HAL_ENABLE_LIBUAVCAN_DRIVERS instead of HAL_MAX_CAN_PROTOCOL_DRIVERS 2021-06-24 09:02:42 +10:00
Siddharth Purohit 69cc0b4615 SRV_Channel: Use HAL_CANMANAGER_ENABLED instead of HAL_ENABLE_LIBUAVCAN_DRIVERS 2021-06-24 09:02:42 +10:00
Siddharth Purohit 02c74a8fa1 GCS_MAVLink: Use HAL_CANMANAGER_ENABLED instead of HAL_ENABLE_LIBUAVCAN_DRIVERS 2021-06-24 09:02:42 +10:00
Siddharth Purohit 5d8a6d167f AP_ToshibaCAN: Use HAL_CANMANAGER_ENABLED instead of HAL_ENABLE_LIBUAVCAN_DRIVERS 2021-06-24 09:02:42 +10:00
Siddharth Purohit 0795225475 AP_RangeFinder: Use HAL_CANMANAGER_ENABLED instead of HAL_ENABLE_LIBUAVCAN_DRIVERS 2021-06-24 09:02:42 +10:00
Siddharth Purohit 6d8972e63b AP_PiccoloCAN: Use HAL_CANMANAGER_ENABLED instead of HAL_ENABLE_LIBUAVCAN_DRIVERS 2021-06-24 09:02:42 +10:00
Siddharth Purohit 895039cdce AP_Notify: Use HAL_CANMANAGER_ENABLED instead of HAL_ENABLE_LIBUAVCAN_DRIVERS 2021-06-24 09:02:42 +10:00
Siddharth Purohit 1a2c51d6df AP_KDECAN: Use HAL_CANMANAGER_ENABLED instead of HAL_ENABLE_LIBUAVCAN_DRIVERS 2021-06-24 09:02:42 +10:00
Siddharth Purohit 81f6e3c585 AP_HAL_SITL: Use HAL_CANMANAGER_ENABLED instead of HAL_ENABLE_LIBUAVCAN_DRIVERS 2021-06-24 09:02:42 +10:00
Siddharth Purohit 35344d1aef AP_HAL_Linux: Use HAL_CANMANAGER_ENABLED instead of HAL_ENABLE_LIBUAVCAN_DRIVERS 2021-06-24 09:02:42 +10:00
Siddharth Purohit 882b01bae3 AP_HAL_ChibiOS: Use HAL_CANMANAGER_ENABLED instead of HAL_ENABLE_LIBUAVCAN_DRIVERS 2021-06-24 09:02:42 +10:00
Siddharth Purohit c7185a1e7f AP_HAL: split into HAL_CANMANAGER_ENABLED and HAL_ENABLE_LIBUAVCAN_DRIVERS 2021-06-24 09:02:42 +10:00
Siddharth Purohit 5acce3055f AP_HAL: Use HAL_ENABLE_CANMANAGER instead of HAL_ENABLE_LIBUAVCAN_DRIVERS 2021-06-24 09:02:42 +10:00
Siddharth Purohit ee22747b48 AP_Filesystem: Use HAL_CANMANAGER_ENABLED instead of HAL_ENABLE_LIBUAVCAN_DRIVERS 2021-06-24 09:02:42 +10:00
Siddharth Purohit 603b302ffd AP_CANManager: Use HAL_CANMANAGER_ENABLED instead of HAL_ENABLE_LIBUAVCAN_DRIVERS 2021-06-24 09:02:42 +10:00
Leonard Hall 47b0ac663a AC_AttitudeControl: AC_PosControl: Init and stopping point fixes 2021-06-24 09:01:07 +10:00
bugobliterator 7e8f11b749 AP_HAL_ChibiOS: allow embedded bootloader to be excluded
Co-authored-by: Peter Barker <pb-gh@barker.dropbear.id.au>
2021-06-24 08:36:30 +10:00
Peter Barker 183cee3f2c AP_Motors: remove @Values from param metadata where @Bitmask exists 2021-06-23 18:37:34 +10:00
Peter Barker dd8af14e57 AP_Logger: remove @Values from param metadata where @Bitmask exists 2021-06-23 18:37:34 +10:00
Peter Barker 215bc51775 AP_LandingGear: remove @Values from param metadata where @Bitmask exists 2021-06-23 18:37:34 +10:00
Peter Barker 731cf038f0 AP_InertialSensor: remove @Values from param metadata where @Bitmask exists 2021-06-23 18:37:34 +10:00
Peter Barker c0c3f92c39 AP_GPS: remove @Values from param metadata where @Bitmask exists 2021-06-23 18:37:34 +10:00
Peter Barker 955ea710b8 AP_BoardConfig: remove @Values from param metadata where @Bitmask exists 2021-06-23 18:37:34 +10:00
Peter Barker c95b56d8fe AP_Baro: remove @Values from param metadata where @Bitmask exists 2021-06-23 18:37:34 +10:00
Peter Barker d0dbfef2c2 AP_Arming: remove @Values from param metadata where @Bitmask exists 2021-06-23 18:37:34 +10:00
Peter Barker c129d50f4b AP_ADSB: remove @Values from param metadata where @Bitmask exists 2021-06-23 18:37:34 +10:00
Peter Barker a8b37d7064 AC_Fence: remove @Values from param metadata where @Bitmask exists 2021-06-23 18:37:34 +10:00
Peter Barker 5d52053232 AC_Avoidance: remove @Values from param metadata where @Bitmask exists 2021-06-23 18:37:34 +10:00
Peter Barker 092885f67f AC_AutoTune: remove @Values from param metadata where @Bitmask exists 2021-06-23 18:37:34 +10:00
Peter Barker 5d6b733d6d RC_Channel: add rc channel option to disable all airspeed sensors 2021-06-23 15:13:13 +10:00
Peter Barker 6da68e39f8 AP_Airspeed: add rc channel option to disable all airspeed sensors 2021-06-23 15:13:13 +10:00
Paul Riseborough 1281033931 AP_NavEKF3: Remove unused class variable rngBcnTimeout 2021-06-23 13:26:02 +09:00
Paul Riseborough 9d85a4292e AP_NavEKF3: Ensure postion timeout flag and timer is always reset 2021-06-23 13:26:02 +09:00
Paul Riseborough de3c6d6e5c AP_NavEKF3: Fade each vert vel variance clip count over 1 second 2021-06-23 13:26:02 +09:00
Paul Riseborough ac92182153 AP_NavEKF3: Clean up initialisation of boolean array 2021-06-23 13:26:02 +09:00
Paul Riseborough b0763f04f1 AP_NavEKF3: Remove unwanted line 2021-06-23 13:26:02 +09:00
Paul Riseborough b7aad13cc8 AP_NavEKF3: Protect against collapse of velocity and position variances 2021-06-23 13:26:02 +09:00
Paul Riseborough 36160ba9ce AP_NavEKF3: Fix bug preventing horizontal position reset if badIMUdata 2021-06-23 13:26:02 +09:00
Paul Riseborough 5d00b7d042 AP_NavEKF3: Fix bug preventing height reset if badIMUdata 2021-06-23 13:26:02 +09:00
Paul Riseborough e4eb8339d0 AP_NavEKF3: Fix bug preventing velocity reset if badIMUdata 2021-06-23 13:26:02 +09:00
Leonard Hall ffc64c3042 AC_AttitudeControl: AC_PosControl: change force_descend to ignore_descent_limit 2021-06-23 10:58:50 +09:00
Tatsuya Yamaguchi 001b2a825d RC_Channel: add const in member functions 2021-06-23 11:32:40 +10:00
Tatsuya Yamaguchi fb682a61cb AP_Arming: add flight mode conflict check 2021-06-23 11:32:40 +10:00
Tatsuya Yamaguchi 5a8ebeda1d RC_Channel: add flight mode conflict check 2021-06-23 11:32:40 +10:00
Leonard Hall d599052da3 AC_AttitudeControl:AC_PosControl: vibration failsafe fix 2021-06-23 10:29:23 +09:00
CallanDaniel 76f5db93dc AP_AHRS: add semaphore around set_home()
added semaphore around set_home() to avoid thread racing
2021-06-23 10:11:02 +09:00
CallanDaniel a617175881 AP_Scripting: add get_origin and set_home bindings
added bindings and example scripts for set_home and get_origin
2021-06-23 10:11:02 +09:00
Josh Henderson 64dc3bbe41 AP_NavEKF3: Fix #17789 core's ekf origin altitude different if flying 2021-06-22 12:01:10 +10:00
Josh Henderson 0561637350 AP_NavEKF2: Fix #17789 core's EKF origin altitude different if flying 2021-06-22 12:01:10 +10:00
Josh Henderson 0ae3730f11 AP_NavEKF3: non_GPS modes ensure EKF origin set only once and stays in sync
ekf3
2021-06-22 12:01:10 +10:00
Josh Henderson d7ecd6883d AP_NavEKF2: non_GPS modes ensure EKF origin set only once and stays in sync
ekf2
2021-06-22 12:01:10 +10:00
Michael du Breuil b3a1e6a1ce AP_RangeFinder: Rearrange parameters to reduce memory usage
Saves 4 bytes per instance, and with 10 instances this gives us an extra
40 bytes of RAM
2021-06-22 10:08:02 +10:00
Michael du Breuil 0de9d3e759 AP_BattMonitor: Rearrange battery parameters to reduce memory usage
Saves 8 bytes per Params instance, which we have 9 of on every vehicle,
for a total saving of 72 bytes
2021-06-22 10:08:02 +10:00
Michael du Breuil fa7a89ef83 AP_Mission: Cleanup the header to reduce flash cost
Removes unneeded set's of memory that is already zero'd. It also changes
_flags to be all bool to match the actual usage, and removes the width
specifiers from them. This increases the RAM cost of AP_Mission by 4
bytes, but saves on flash. The RAM cost was eliminated by rearranging
members.
2021-06-22 10:08:02 +10:00
Michael du Breuil 29d6900888 AP_Airspeed: Remove unneeded initilization
We pre zero all memory
2021-06-22 10:08:02 +10:00
Andy Piper 9e99f724e5 AP_HAL_ChibiOS: add 1Hz update_channel_masks()
Send dshot commands in update function
2021-06-22 09:55:27 +10:00
Andy Piper c7cc53d224 SRV_Channel: call rcout->update_channel_masks() at 1Hz 2021-06-22 09:55:27 +10:00
Andy Piper 2e1368d8a7 AP_Arming: remove call to rcout->prepare_for_arming() 2021-06-22 09:55:27 +10:00
Andy Piper 61f1c3c9ce AP_HAL: add 1Hz update_channel_masks() 2021-06-22 09:55:27 +10:00
Nicola Grossenbacher 755ca37326 AP_Compass: added probe method for MMC3416 compass 2021-06-22 09:52:49 +10:00
Andrew Tridgell ed93caadd5 HAL_ChibiOS: fixed build of VRUBrain-v51
overflowing flash
2021-06-21 16:48:10 -07:00
Iampete1 cab8274690 AP_BattMoniter: log in Ah and Wh, add percentage to log 2021-06-22 09:19:40 +10:00
Iampete1 188cf71ee2 AP_Logger: add Wh units 2021-06-22 09:19:40 +10:00
Iampete1 8ea9803193 AP_BatteryMoniter: fix mah to wah conversion 2021-06-22 09:19:40 +10:00
Pierre Kancir 983e402804 AP_Common: add more unitttests 2021-06-21 21:16:29 +10:00
Andrew Tridgell ece3cf5241 AP_Logging: update EKF while waiting for log open
this prevents the EKF getting unhappy when we arm
2021-06-21 20:15:17 +10:00
Peter Barker c28a03728d AP_Motors: tidy frame description strings
Before: AP: Frame: TRI/
After: AP: Frame: TRI
2021-06-21 16:30:37 +10:00
Leonard Hall 8610edb664 AC_WPNav: AC_Loiter: Remove extra accel limit 2021-06-21 14:14:23 +09:00
Leonard Hall d9529e1be3 AC_AttitudeControl: AC_PosControl: Remove extra accel limit 2021-06-21 14:14:23 +09:00
Peter Barker 4909f6f0f1 SITL: increase servo_filter array size
used for plane-dspoiler frame
2021-06-21 14:13:18 +10:00
Peter Barker 09ba017b5b SITL: panic if we attempt to filter out-of-range servo index 2021-06-21 14:13:18 +10:00
Peter Hall c5c2b18a0b AP_Scripting: update 6DoF mixer example 2021-06-21 09:58:05 +09:00
Peter Hall 716ceb93c5 AC_AttitudeControl: add thrust vector methods to 6DoF multi 2021-06-21 09:58:05 +09:00
Leonard Hall ac41bb50ee AP_Motors: correct expo parameter description and internal limits 2021-06-21 08:41:31 +09:00
Peter Barker 84603e2c85 GCS_MAVLink: add support for MAV_CMD_RUN_PREARM_CHECKS 2021-06-21 09:41:17 +10:00
Pierre Kancir 614ebff842 AP_Common: add more unit tests 2021-06-18 16:03:51 +10:00
Randy Mackay a79a3d2051 AC_WPNav: move get_yaw lower in AC_WPNav.h
this is a non-functional change
2021-06-18 08:20:02 +09:00
Peter Barker 3ea3566477 Tools: add follow-copter.sh for SITL
Another copy of this script -  but this one doesn't need Morse or AirSim
2021-06-17 16:23:08 +10:00
Andy Piper 3386cbb0df AP_HAL_ChibiOS: add OREO support to CubeSolo.
add back RunCam and Spektrum support to MatekF405-Wing
remove gripper support from MatekF405-Wing
2021-06-16 20:25:58 +10:00
Andy Piper 144bbd6acd AP_Notify: allow display and oreo leds to be disabled 2021-06-16 20:25:58 +10:00
giacomo892 9056cd35ea AP_SmartAudio: Add pull down VTX option 2021-06-16 18:49:13 +10:00
giacomo892 49536ceecb AP_VideoTX: Add pull down VTX option 2021-06-16 18:49:13 +10:00
giacomo892 f12fffbb08 AP_SmartAudio: Remove useless variable and comment 2021-06-16 18:49:13 +10:00
giacomo892 2198893092 AP_VideoTX: Add band names to GCS 2021-06-16 18:49:13 +10:00
giacomo892 0af5a7787a AP_VideoTX: Add configuration_finished functions 2021-06-16 18:49:13 +10:00
giacomo892 4dac9baa09 AP_SmartAudio: Add configuration_finished and configuration_pending functions 2021-06-16 18:49:13 +10:00
giacomo892 6df65e694d AP_OSD_Screen: Blink the OSD VTX Power element indicating configuration in progress 2021-06-16 18:49:13 +10:00
Tatsuya Yamaguchi 1954f596b8 AP_Proximity: fix proximity status for upward facing rangefinder 2021-06-16 17:41:45 +09:00
Randy Mackay 430ac65123 AC_Loiter: init brake_accel and fix brake timer type 2021-06-16 17:20:40 +09:00
Andy Piper 3e6d8357e9 AP_BattMonitor: zero consumption total before recalculating
add reset function to ESC backend.
2021-06-16 17:48:47 +10:00
Tatsuya Yamaguchi 333588d7d4 AR_WPNav: add WP_PIVOT_DELAY parameter 2021-06-16 15:52:43 +09:00
Samuel Tabor 3fc58de7ce AP_HAL_ChibiOS: Restore soaring on F405-Wing board. 2021-06-16 09:15:03 +10:00
Peter Barker 151fe6facf AP_Logger: rearrange PrepForArming stuff 2021-06-15 16:42:02 +10:00
Andrew Tridgell 806fdd9389 AP_Logger: moved log file open to logger thread
this prevents a watchdog if the filesystem takes a long time to
respond to a file open
2021-06-15 16:42:02 +10:00
Andrew Tridgell 8ae221eeb4 AP_Filesystem: removed the 3s grace period for file ops when armed
log file open now needs to happen in the logging thread
2021-06-15 16:42:02 +10:00
Andy Piper d36b4bfa3f AP_HAL_ChibiOS: make sure all MatekF405 bi-dir outputs get a DMA channel
only allow (b)dshot on M1-4 to get full DMA on USART3 and UART4
2021-06-15 09:49:02 +10:00
Peter Barker 9791fdeb11 AP_Compass: remove unused setup_earth_field 2021-06-15 09:47:31 +10:00
Peter Barker a23999d0f0 GCS_MAVLink: remove HIL support 2021-06-15 09:47:31 +10:00
Peter Barker 52a52e1e5b AP_InertialSensor: remove HIL support 2021-06-15 09:47:31 +10:00
Peter Barker dddd0d6a14 AP_HAL: remove HIL support 2021-06-15 09:47:31 +10:00
Peter Barker 9e5662e927 AP_GPS: remove HIL support 2021-06-15 09:47:31 +10:00
Peter Barker a9621ed802 AP_Compass: remove HIL support 2021-06-15 09:47:31 +10:00
Peter Barker 304bc2bc13 AP_Baro: remove HIL support 2021-06-15 09:47:31 +10:00
Peter Barker 00002b78a4 AP_Airspeed: remove HIL support 2021-06-15 09:47:31 +10:00
Peter Barker ee0a373b60 AP_AHRS: remove HIL support 2021-06-15 09:47:31 +10:00
Peter Barker 278dc4a09b AP_BattMonitor: add cells 13 and 14 for SITL only
Allows for testing higher-cell-count scenarios
2021-06-15 09:46:26 +10:00
Peter Barker bf10b454d1 AP_BattMonitor: add assertion to avoid memory over-read 2021-06-15 09:46:26 +10:00
Peter Barker 4a8f7d232a SITL: add accessor for battery voltage 2021-06-15 09:46:26 +10:00
Peter Barker cb8ff51b4d SITL: add maxell to i2c bus and make it 14-cells 2021-06-15 09:46:26 +10:00
Peter Barker bf9937489b AP_BattMonitor: switch to Log_Write for BCL2
Just for the flash savings on smaller boards
2021-06-15 09:46:26 +10:00
Dr.-Ing. Amilcar do Carmo Lucas 85666959ea AP_BattMonitor: Increase the max. nr. of supported battery cells from 12 to 14
Uses a second message, because the original message does not support any more fields
2021-06-15 09:46:26 +10:00
Iampete1 4df09360ab AP_Scripting: add SN-GCJA5 particle sensor example 2021-06-15 09:04:32 +10:00
Peter Barker c43965f32e GCS_MAVLink: correct decimation of SENSOR_STATUS message
static infers shared between all backends
2021-06-15 07:07:39 +10:00
Rishabh 08b8a43ab5 AC_PrecLand: Use rotate_xy instead of matrix multiplication 2021-06-14 15:59:52 +09:00
Rishabh 53bd545fac AC_PrecLand: Account for vertical camera offset in alt calculations 2021-06-14 15:59:52 +09:00
Rishabh f1e4f6dbc8 AC_PrecLand: Initialize EKF before using its output 2021-06-14 15:59:52 +09:00
murata 55c07e24c0 AP_Scheduler: Change the Task Performance Notification Level to Information 2021-06-13 22:47:24 -07:00
Josh Henderson 566621e2ba AP_Math: SCurve check direction.length_squared is_zero 2021-06-14 13:26:44 +09:00