Commit Graph

25602 Commits

Author SHA1 Message Date
Peter Barker 5e63ed908e AP_Logger: loosen constraint on failing to log replay block
// things will almost certainly go sour.  However, if we are not
    // logging while disarmed then the EKF can be started and trying
    // to log things even 'though the backends might be saying "no".
2021-03-18 19:38:43 +11:00
murata 6c67e191d4 AP_Mission: Change the description(NFC) 2021-03-18 12:32:59 +11:00
4712 38ea1296ca Update serial-4way-if to v20005
Reservation of an MCU_ID area to simplificate adding of upcoming BLHeli_32 MCU.
2021-03-18 08:10:08 +11:00
4712 6956abdb45 Some fixes for AP_BLHeli
Added ACK_I_INVALID_CHANNEL as response for cmd_DeviceReset cmd_DeviceInitFlash on bad channel selection
Fixed params for MSP_MOTOR_CONFIG
Adapted some timeouts
2021-03-18 08:10:08 +11:00
yaapu 59c5bbc8b8 AP_BLHeli: added missing ack to MSP_SET_MOTOR message 2021-03-18 08:10:08 +11:00
Randy Mackay 5912052a39 AP_RangeFinder: lightware legacy I2C retry count to 20
This is consistent with the non-legacy I2C protocol
2021-03-17 21:23:14 +09:00
Tatsuya Yamaguchi e134d12e32 AP_Notify: add EKF failsafe notify tones 2021-03-17 20:29:32 +09:00
Iampete1 733db3de19 RC_Channel: add MODE_SWITCH_RESET option 2021-03-17 19:18:46 +11:00
Iampete1 2d91679ec2 RC_Channel: add FBWA_TAILDRAGGER option 2021-03-17 19:18:46 +11:00
Iampete1 77e1092f46 RC_Channel: do_aux_function_mission_reset to virtual 2021-03-17 19:18:46 +11:00
Iampete1 58860205ea AP_Scripting: add manual i2c get device bindings 2021-03-17 18:50:05 +11:00
Iampete1 166aedf1be AP_Scripting: add I2CDevice to auto bindings 2021-03-17 18:50:05 +11:00
Iampete1 1f0e36e10d AP_Scripting: add i2c scan example 2021-03-17 18:50:05 +11:00
Iampete1 7b3097972b AP_Scripting: generator: support pointer semaphore flag 2021-03-17 18:50:05 +11:00
Iampete1 c54634e86b AP_Scripting: generator: finish off refence access implmentation 2021-03-17 18:50:05 +11:00
Iampete1 8effa59d10 AP_Scripting: generator: support method alias and sanitised names 2021-03-17 18:50:05 +11:00
Peter Hall 9997981702 AP_Scripting: generator: support literal singltons that do not need to be fetched 2021-03-17 18:50:05 +11:00
Andy Piper bb270014e7 AP_HAL_ChibiOS: make sure LEDs get a DMA channel on MatekH743-bdshot 2021-03-17 18:28:01 +11:00
Andy Piper 961c517274 AP_VideoTX: only mark updates when the VTX is enabled 2021-03-17 18:27:11 +11:00
Andy Piper f1eee860c0 AP_RCTelemetry: don't process VTX frames when VTX support is disabled 2021-03-17 18:27:11 +11:00
Andy Piper f7e23566ac AP_VideoTX: with SmartAudio v2 set the power level rather than power in dBm 2021-03-17 18:27:11 +11:00
Andy Piper 968d05a637 AP_HAL_ChibiOS: allow further LED channels to be allocated at the same length 2021-03-17 18:24:11 +11:00
Randy Mackay a6800b8c47 AC_Avoidance: minor PathPlanner format fix 2021-03-17 15:01:46 +09:00
Randy Mackay 0d730e11cc AC_WPNav: OA stores and uses original terrain alt 2021-03-17 14:11:12 +09:00
Randy Mackay da580bd1ea AC_WPNav: OA gets minor format fix 2021-03-17 14:11:12 +09:00
Peter Hall aa75fc2c3d AC_PosControl: use target lean angles rather than true for init 2021-03-17 08:13:11 +09:00
Peter Hall a43db51440 AC_AttitudeControl: add get_att_target_euler_rad function 2021-03-17 08:13:11 +09:00
Habibullah Oladepo a74ad951de SRV_Channel: fix servo output function documentation typo 2021-03-17 08:54:13 +11:00
Andrew Tridgell 8a8db85b9c HAL_ChibiOS: fixed build of f103-trigger fw 2021-03-16 18:28:58 +11:00
Randy Mackay b873e7fcb0 AP_Mission: read_cmd_from_storage sets all bytes of cmd
This resolves a potential valgrind issue caused by some bytes of the cmd not being set
2021-03-16 10:23:40 +09:00
Tatsuya Yamaguchi 2c95093d36 AP_InertialSensor: fix temperature sensor on LSM9DS0 2021-03-16 12:09:19 +11:00
Lava Chemist 4a52f945db AP_HAL_ChibiOS: Add FlywooF745 2021-03-16 11:27:23 +11:00
murata 3a006ae226 AP_GPS: Supplementary explanation of configuration parameters (NFC) 2021-03-16 10:43:18 +11:00
murata c5b1c832ba AP_NavEKF3: Change misnomer (NFC) 2021-03-15 18:21:15 +11:00
murata 24591d68bc AP_NavEKF2: Change misnomer (NFC) 2021-03-15 18:21:15 +11:00
Hwurzburg e1bab7374b AP_Notify: Add calibration indications for EKF temp and compass cal to RGB LED 2021-03-15 09:49:59 +09:00
Peter Barker 4605870788 AP_NavEKF3: remove separate calls to get delta-times for vel and ang 2021-03-13 11:29:29 +11:00
Peter Barker 5dff32422d AP_NavEKF2: remove separate calls to get delta-times for vel and ang 2021-03-13 11:29:29 +11:00
Peter Barker 5c31238f28 AP_Mount: remove separate calls to get delta-times for vel and ang 2021-03-13 11:29:29 +11:00
Peter Barker 2b0bf45891 AP_InertialSensor: remove separate calls to get delta-times for vel and ang 2021-03-13 11:29:29 +11:00
Peter Barker a0fcd74b52 AP_DAL: remove separate calls to get delta-times for vel and ang 2021-03-13 11:29:29 +11:00
Peter Barker ea1884f491 AP_AHRS: remove separate calls to get delta-times for vel and ang 2021-03-13 11:29:29 +11:00
Peter Barker 5123b05b2b GCS_MAVLink: add support for ATTITUDE_QUATERNION 2021-03-13 09:44:12 +11:00
Siddharth Purohit edceb4e3a4 AP_GPS: move underscore one layer down for GPS 2021-03-12 16:32:36 +09:00
bugobliterator 49d934eb42 AP_HAL_SITL: add support for multiple periph instances 2021-03-12 16:32:36 +09:00
bugobliterator 0031fee851 AP_GPS: add support for ordering UAVCAN GPS 2021-03-12 16:32:36 +09:00
bugobliterator 67be2ed4ba AP_Arming: add support for GPS_Backends to spew failure reasons 2021-03-12 16:32:36 +09:00
Michael du Breuil a3ddf5264d AP_GPS: Support uavcan ardupilot.gnss.Status
Also makes the drive by change to make GPS_Backend::is_configured const
2021-03-12 09:39:55 +11:00
Michael du Breuil e47857a278 AP_UAVCAN: Add ardupilot.gnss.Status 2021-03-12 09:39:55 +11:00
Hwurzburg fd9c497232 AP_OSD: Add height above terrain panel and warning 2021-03-11 11:54:47 +11:00
murata 8e8f2b93a7 AP_Motors: Add DECA frame class and type string 2021-03-09 19:59:10 +09:00
Rishabh e9c0e50185 AP_Proximity: Filter out land detected by sensors 2021-03-09 11:02:26 +09:00
Randy Mackay fe382e4d10 AP_Mission: minor format fixes 2021-03-09 11:49:42 +11:00
Randy Mackay 3a66b2667b AP_Mission: correct spelling of interrupted 2021-03-09 11:49:42 +11:00
Rishabh e09e9b1e6a AP_Logger: Log raw and filtered distances from proximity lib 2021-03-08 16:33:20 +09:00
Rishabh 044e1850d4 AP_Proximity: Add a low pass filter per face for distances 2021-03-08 16:33:20 +09:00
James O'Shannessy f028747399 GCS_MAVLink: Remove todo since plane now supports MAV Protocol Capability Mission Fence 2021-03-05 16:48:57 +11:00
James O'Shannessy 43e06e9040 AC_Fence: Fix int32_t overflow with large longitude values 2021-03-05 14:52:46 +11:00
James O'Shannessy 26811ad46d AP_Landing: Autoenable fence if required when landing was aborted 2021-03-05 14:52:46 +11:00
James O'Shannessy 8ef68c8fb0 AC_Fence: Send text to gcs when fence is auto-enabled 2021-03-05 14:52:46 +11:00
James O'Shannessy b4bf41c6f9 AC_Fence: Adjustments to default parameters for addition to plane 2021-03-05 14:52:46 +11:00
James O'Shannessy c316711351 ArduPlane: Add conversion from ArduPlane geofence param to AC_Fence param 2021-03-05 14:52:46 +11:00
James O'Shannessy 254c28f142 AC_Fence: Improve auto enable documentation 2021-03-05 14:52:46 +11:00
James O'Shannessy b6d29d746b AC_Fence: Add common auto enable and auto disable 2021-03-05 14:52:46 +11:00
James O'Shannessy e4f1e26b5c AC_Fence: Disable fence floor when disabling the rest of the fence 2021-03-05 14:52:46 +11:00
Steven Josefs c783410494 AC_Fence: adjusted AP_GROUPINFO to contain all copters 2021-03-05 14:52:46 +11:00
Dr.-Ing. Amilcar Do Carmo Lucas 22bdc3e54c AC_Fence: extend pre-arm checks
Fix comments
2021-03-05 14:52:46 +11:00
Dr.-Ing. Amilcar do Carmo Lucas 2e422f249a AC_Fence: small comment improvements. Do not call the same function four times 2021-03-05 14:52:46 +11:00
Dr.-Ing. Amilcar do Carmo Lucas 15e95be7d7 AC_Fence: do not delete the FENCE_ENABLE parameter. It would confuse many users.
Talked to Randy about this. The consensus was not to delete the parameter
2021-03-05 14:52:46 +11:00
James O'Shannessy 783a4b7965 AC_Fence: Change logic to fence enable and sys_status reporting 2021-03-05 14:52:46 +11:00
James O'Shannessy a23e8d46da AP_Vehicle: Add additional fence mode change reason 2021-03-05 14:52:46 +11:00
James O'Shannessy 8ca69c2e89 AP_Logger: Add support for fence floor events 2021-03-05 14:52:46 +11:00
James O'Shannessy c2abf27d78 GCS_MAVLink: Add reporting of fence floor breaches to GCS_MAVLink
GCS_MAVLink: Add disabling of fence floor only, per mavlink spec

GCS_MAVLink: Cannot enable a fence if the fence is not present
2021-03-05 14:52:46 +11:00
James O'Shannessy 0e73b7bce1 AP_Arming: Enable and Disable the fence when vehicle is armed/disarmed
AP_Arming: Use auto enable flag to arm fence only when armed (as per enum)

AP_Arming: Config defines are not available in AP_Arming

Since config definitions are not available in AP_Arming, we can still rely on singleton access of the AC_Fence object.

AP_Arming: Perform fence checks for all vehicles
2021-03-05 14:52:46 +11:00
James O'Shannessy 87b66b4b49 AC_Fence: Add parameters from Geofence to AC_Fence
AC_Fence: Add fence floor breach checks and calculations

AC_Fence: Add event logging to enable/disable of fence floor

AC_Fence: Adjust sys_status reporting to look at total fence count

AC_Fence: Make retrieving of the return point accessible

AC_Fence: Check whether fence is enabled or autoenable is set for arming checks

Checks whether the fence is currently enabled OR if the fence is intended to be enabled automatically.
These checks are used to find out enabled fences, or prearm checks
2021-03-05 14:52:46 +11:00
Paul Riseborough 9b53d505ea AP_AHRS: Handle airspeed estimation with have_inertial_nav() == false 2021-03-05 12:10:01 +11:00
Paul Riseborough e3eea0a54a AP_NavEKF3: Use specialised function for in-flight plane yaw alignment 2021-03-05 12:10:01 +11:00
Paul Riseborough 4675aea0bf AP_NavEKF3: Update parameter description 2021-03-05 12:10:01 +11:00
Paul Riseborough 246b80dc06 AP_NavEKF3: Don't return a 0,0 lat,lng unless absolutely necessary 2021-03-05 12:10:01 +11:00
Paul Riseborough aa49e92edc AP_AHRS: Remove unused AP_AHRS_NavEKF::yaw_alignment_complete API 2021-03-05 12:10:01 +11:00
Paul Riseborough 1a3258a039 AP_AHRS: Fall back to DCM airspeed estimate if EKF velocity not available 2021-03-05 12:10:01 +11:00
Paul Riseborough a50be71b41 AP_NavEKF3: Fix inconsistency in reporting raw GPS position validity 2021-03-05 12:10:01 +11:00
Paul Riseborough ec401083bf AP_AHRS: Remove unused variable 2021-03-05 12:10:01 +11:00
Paul Riseborough af2bf6097b AP_AHRS: Add accessor function for EKF3 yaw alignment status 2021-03-05 12:10:01 +11:00
Paul Riseborough 6a603019d5 AP_NavEKF3: Add accessor function for yaw alignment status 2021-03-05 12:10:01 +11:00
Paul Riseborough 3634a942a1 AP_NavEKF3: Fix bug causing unwanted use of default airspeed 2021-03-05 12:10:01 +11:00
Paul Riseborough a0faa55ef5 AP_AHRS: Fix rebase build error 2021-03-05 12:10:01 +11:00
Paul Riseborough 912db3512e AP_NavEKF3: Fix EKF selection bug 2021-03-05 12:10:01 +11:00
Paul Riseborough 85c0040fa3 AP_NavEKF3: Improve inFlight detection for fixed wing
Better handle case where no airspeed sensor is being used with a hand launch.
2021-03-05 12:10:01 +11:00
Andrew Tridgell 6d6ec44d59 AP_AHRS: fixed build on boards without EKF2 2021-03-05 12:10:01 +11:00
Paul Riseborough 295c1e1308 AP_NavEKF3: Reset covariances when falling back to non aiding mode 2021-03-05 12:10:01 +11:00
Paul Riseborough adae7365e1 AP_NavEKF3: Fix LLH reporting bug 2021-03-05 12:10:01 +11:00
Paul Riseborough ddadc45854 AP_NavEKF3: Reset states when falling back into non aiding mode. 2021-03-05 12:10:01 +11:00
Paul Riseborough b92eca7b66 AP_NavEKF3: Select startup aiding mode after landing without yaw sensor 2021-03-05 12:10:01 +11:00
Paul Riseborough afb31bc4f5 AP_NavEKF: Add underflow protection to yaw GSF weight normalisation
This improves protection against a condition where if all yaw hypothesis filers have very large innovations, the weights of Gaussian densities can underflow leading to failure of the weights to converge.
2021-03-05 12:10:01 +11:00
Paul Riseborough d1d790019c AP_AHRS: Improve use of estimated airspeed
Enable default airspeed variance to be specified externally to the EKF
Enable use of EKF airspeed estimates
2021-03-05 12:10:01 +11:00
Paul Riseborough 9a5a264aa0 AP_NavEKF3: Improve wind estimation without airspeed sensing
Enable default airspeed variance to be specified externally
Improve control of sideslip fusion
Don't modify non wind states unnecessarily when using synthesised air data measurements
2021-03-05 12:10:01 +11:00
Paul Riseborough ac00776184 AP_NavEKF2: DAL interface compatibility change 2021-03-05 12:10:01 +11:00
Paul Riseborough 296fb567ca AP_DAL: Enable default airspeed variance to be specified externally 2021-03-05 12:10:01 +11:00
murata 9228925bea AP_Motors: Battery voltage compensation maximum voltage 2021-03-05 08:48:20 +09:00
Tatsuya Yamaguchi ecf928d68b AP_Proximity: change PRX_IGN_WIDx range from 45 to 127 2021-03-04 17:40:07 +09:00
Josh Henderson 267d19b0de SITL: SIM_Vicon fix observation interval limit 2021-03-04 16:12:54 +09:00
Josh Henderson dceb76c9f1 SITL: SIM_VICON output MAVLink vision_position_delta 2021-03-04 16:12:54 +09:00
Peter Barker e3de88d1d4 GCS_MAVLink: handle MAV_CMD_DO_SET_MISSION_CURRENT 2021-03-04 11:59:33 +11:00
Randy Mackay f0ffaa5624 AR_AttitudeControl: reset speed filter and I term when stopped 2021-03-04 09:07:32 +09:00
James O'Shannessy f6231db618 AC_Fence: Add breach calculation variant to use LLA
Adds a parameter to make selection between vector pos_cm from origin and lat/lng.
2021-03-04 10:31:58 +11:00
murata e041b647d7 AP_Mount: Change misnomer (NFC) 2021-03-03 20:49:55 +11:00
murata 6e6e807223 AP_NavEKF: Change misnomer (NFC) 2021-03-03 20:49:55 +11:00
murata ae565aef1a AP_NavEKF3: Change misnomer (NFC) 2021-03-03 20:49:55 +11:00
murata af639f7812 AP_NavEKF2: Change misnomer (NFC) 2021-03-03 20:49:55 +11:00
Hugo Trippaers 0dbe2e072c AP_Mount: Set relative pan to true for servo mounts 2021-03-03 18:55:38 +11:00
Hugo Trippaers 44902ef535 AP_Mount: Add parameter to control relative pan option for servo mounts
* Change from a dedicated parameter to a reusable options field
2021-03-03 18:55:38 +11:00
Hugo Trippaers bcee4b7b82 AP_Mount: Add parameter to control relative pan option for servo mounts 2021-03-03 18:55:38 +11:00
Pierre Kancir 2953aa3748 AP_NMEA: fix example 2021-03-03 18:07:38 +11:00
Pierre Kancir 77367c1376 AP_AHRS: fix example 2021-03-03 18:07:38 +11:00
Pierre Kancir 8b1d35bc76 AP_Module: fix example 2021-03-03 18:07:38 +11:00
Pierre Kancir 67540dc5bb AP_InertialSensor: fix example 2021-03-03 18:07:38 +11:00
Pierre Kancir ce34ce6def AP_Baro: fix example 2021-03-03 18:07:38 +11:00
Pierre Kancir aaf7504ac8 AP_Module: fix example 2021-03-03 18:07:38 +11:00
Pierre Kancir c8a7ab1a75 AP_InertialSensor: fix example 2021-03-03 18:07:38 +11:00
Pierre Kancir f2570d49a1 AP_Scheduler: fix example 2021-03-03 18:07:38 +11:00
Pierre Kancir 1082a799c2 AP_Compass: fix example 2021-03-03 18:07:38 +11:00
Pierre Kancir 95d0c67a99 AP_Baro: fix example 2021-03-03 18:07:38 +11:00
Samuel Tabor fb8ec292cd AP_TECS: Clarify TECS_THR_DAMP and TECS_LAND_TDAMP descriptions. 2021-03-03 18:05:22 +11:00
Andy Piper d6575fb6ad AP_HAL_ChibiOS: bdshot configs for CubeYellow and mRoControlZeroH7 2021-03-03 18:02:26 +11:00
Michael du Breuil f227d67d58 AP_GPS: Remove unused enum 2021-03-03 10:00:15 +09:00
Randy Mackay 79c9b4b523 AC_WPNav: increase default speed to 10m/s and accel to 2.5m/s/s 2021-03-03 08:03:39 +09:00
murata 3824277d11 AC_Fence: Add Smart RTL or LAND to the fence action 2021-03-03 07:59:03 +09:00
Peter Barker a97786c01d RC_Channel: use RC channel options 203 and 204 for throttle and yaw
This gives us a 200 + n mapping for the traditional AETR mapping.

Unfortunately, it will break walking robots until they update their
parameters
2021-03-03 08:42:00 +11:00
Peter Barker 7480a2a00b GCS_MAVLink: correct output of AHRS2 mavlink message
The || here was causing short-circuiting
2021-03-02 20:48:36 +11:00
Peter Barker 03bb3237ef SITL: set default RPM_TYPE to 10 for FlightAxis 2021-03-02 15:41:44 +11:00
Peter Barker 4d2cf8c95b AP_Frsky_SPort: correct handling of RPM sensor data
Nails support down to just two RPM sensors for the time being.

Simplifies things (there was an issue here when I corrected RPM-in-SITL)
2021-03-02 15:41:44 +11:00
Peter Barker 370db00096 AP_RPM: add explicit RPM_TYPE_SITL
Old behaviour is that anything that wasn't claimed (or failed to
allocate) would become a SITL RPM sensor.  This meant we always had at
least one RPM sensor which was allocated but never provided valid data.

New behaviour is that if you want a SITL RPM sensor you have to set type
to 10.
2021-03-02 15:41:44 +11:00
Peter Barker c059338386 AP_Frsky_Telem: use location from AHRS not GPS
The AHRS may be able to supply information even in the absense of an
actual GPS unit.
2021-03-02 15:41:44 +11:00
Andrew Tridgell 4fbdb59398 HAL_ChibiOS: prevent sharing the same DMA stream on TIMn_UP channels
this avoids an issue with DShot where we run the same DMA stream on
two timers at once
2021-03-02 11:58:38 +11:00
Andy Piper 6cb263056d AP_HAL_ChibiOS: build fix for iomcu 2021-03-02 11:58:38 +11:00
Andy Piper d0e4d510cf AP_HAL_ChibiOS: order PWM timers by DMA UP stream id to prevent deadlocks in dshot 2021-03-02 11:58:38 +11:00
Iampete1 e64a7b2884 AP_Mount: type enable flag 2021-03-02 10:09:19 +11:00
Iampete1 3306484023 AP_NavEKF2: log position offset as float in meters 2021-03-02 10:03:12 +11:00
Iampete1 8173cd442a AP_NavEKF3 log position offset as float in meters 2021-03-02 10:03:12 +11:00
Paul Riseborough 0971ef55a4 AP_NavEKF3: Fix bug preventing EKFGSF running when needed for reset
The gpsAccuracyGood flag should not be used because it will go false if GPS innovations become high due to bad yaw which is when the EKFGSF is required. to keep running.
2021-03-02 07:28:24 +11:00
Paul Riseborough 948650dbe5 AP_NavEKF2: Fix bug preventing EKFGSF running when needed for reset
The gpsAccuracyGood flag should not be used because it will go false if GPS innovations become high due to bad yaw which is when the EKFGSF is required. to keep running.
2021-03-02 07:28:24 +11:00
Andrew Tridgell e884e4c5ac AP_Math: added fixedwing_turn_rate() helper 2021-02-27 14:42:20 +11:00
Yash Vadi b450740fb0 AP_Button: update BTN_FUNCx param descriptions 2021-02-26 12:30:13 +11:00
Andrew Tridgell 35149ae8b2 AP_Scripting: allow scripting startup with no sdcard
as scripts can be in ROMFS we should still create the thread without
the scripts directory
2021-02-25 11:34:39 -07:00
Peter Barker 9932aa99f7 GCS_MAVlink: return identical seq in MISSION_CURRENT if possible after set
// because MISSION_SET_CURRENT is a message not a command,
        // there is not ACK associated with us successfully changing
        // our waypoint.  Some GCSs use the fact we return exactly the
        // same mission sequence number in this packet as an ACK - so
        // if they send a MISSION_SET_CURRENT with seq number of 4
        // then they expect to receive a MISSION_CURRENT message with
        // exactly that sequence number in it, even if ArduPilot never
        // actually holds that as a sequence number (e.g. packet.seq==0).
2021-02-24 19:00:34 +11:00
Andrew Tridgell 14791c335b HAL_ChibiOS: fixed build of f3 boards without PWM out 2021-02-24 18:25:02 +11:00
Andrew Tridgell 9d87645c6e AP_IOMCU: fixed event handling bug in IOMCU code
if a a message send fails to IOMCU then we were discarding all
currently pending non-recurring events. This means that states like
oneshot enable would be lost if the IOMCU reset.

We now re-trigger all events that have not yet been handled
2021-02-24 18:21:08 +11:00
Andrew Tridgell 9126579b77 AP_IOMCU: added memory to debug code 2021-02-24 18:21:08 +11:00
Andrew Tridgell 243cf2199d HAL_ChibiOS: disable shared DMA on IOMCU
this saves about 600 bytes of ram
2021-02-24 18:21:08 +11:00