Commit Graph

20742 Commits

Author SHA1 Message Date
Peter Barker a5ec64fc99 AC_Fence: tidy get_breach_distance
The polygon fence will soon be able to supply a breach distance -
prepare for that.
2019-08-08 16:47:41 +09:00
Peter Barker 6a241cc3e9 AC_Fence: remove pointless sanity check 2019-08-08 16:47:41 +09:00
Randy Mackay 2bfc26621a AP_Arming: resolve check_failed compiler warning 2019-08-08 12:53:51 +09:00
Peter Hall 2a3676003a SITL: sailboat add tide 2019-08-07 14:34:07 +09:00
Peter Hall 90bf224e7f SITL: sailboat add wave simulation and parameters 2019-08-07 14:34:07 +09:00
Peter Barker 57528b94cf GCS_MAVLink: allow complete() call on subclasses to fail
Also terminate uploads if any error occurs fetching items
2019-08-07 12:07:59 +10:00
Randy Mackay 1b533295a8 AR_AttitudeControl: minor comment fixes 2019-08-06 20:00:05 +09:00
Peter Hall 65d8047165 AR_AttitudeControl: fix sailboat heel PID 2019-08-06 20:00:05 +09:00
Peter Barker 4b012ab62b GCS_MAVLink: deny upload of non-MISSION items if not doing mavlink2 2019-08-06 13:58:44 +10:00
Peter Barker 4e95832433 GCS_MAVLink: send mission acks for bad MISSION_ITEM requests 2019-08-06 13:58:44 +10:00
Peter Barker afd623a6fa GCS_MAVLink: use send_message to send mission items
It is less error-prone to use this new send_message function.

In particular, one of the parameters to these functions was using the
wrong constant when sending a mission item message.
2019-08-06 13:58:44 +10:00
Peter Barker 8fc6e16a4a GCS_MAVLink: fill missing seq and type fields in MISSION_ITEM
GCS_MAVLink: fill mission type in return MISSION_ITEM packets

GCS_MAVLink: fill in return sequence number for MISSION_ITEM messages
2019-08-06 13:58:44 +10:00
Peter Barker b2d9d7b6a0 AP_Logger: const-struct many structures, use temp for navekf object 2019-08-06 11:45:04 +10:00
Henry Wurzburg b6518b6b46 AP_HAL_ChiibOS: change omnibusf4 board type to be unique 2019-08-06 11:20:11 +10:00
murata 0b1987ae36 AP_RangeFinder: Use common hexadecimal to character number conversion method 2019-08-06 10:14:12 +10:00
murata e4455491aa AP_GPS: Use common hexadecimal character to number conversion method 2019-08-06 10:14:12 +10:00
murata a39228c453 AP_Common: Make hexadecimal character number conversion method common 2019-08-06 10:14:12 +10:00
Pierre Kancir 1a71519e17 AP_HAL_SITL: add missing header 2019-08-06 09:37:30 +10:00
Pierre Kancir 17c0cf8d5c AP_Common: check for feenableexcept on WAF 2019-08-06 09:37:30 +10:00
Bill Geyer fbf2b62300 AP_Motors: Tradheli - Make H3-120 swashplate the default 2019-08-06 08:24:59 +09:00
Bill Geyer 7ecc368d4f AP_Motors: tradheli - remove white space in param values 2019-08-06 08:24:59 +09:00
Randy Mackay 488d1ab60a AC_Avoidance: replace Write_OA with Write_OABendyRuler and Write_OADijkstra 2019-08-06 08:15:45 +09:00
Randy Mackay b666b172c4 AP_Logger: replace Write_OA with Write_OABendyRuler and Write_OADijkstra 2019-08-06 08:15:45 +09:00
Randy Mackay f5a307fb13 AR_WPNav: add speed_min parameter
Should be set to boat's plane speed and ensure vehicle does not slow below this speed in corners
2019-08-05 17:04:43 -06:00
Peter Barker 61ed6e07eb AP_NavEKF3: shorten EKF3 initialisation send-text string
Now:
pbarker@bluebottle:~/rc/ardupilot(master)$ echo -n "EKF3 IMU1 buffers IMU=11 OBS=4 OF=10, dt=0.0120" | wc
      0       7      47
pbarker@bluebottle:~/rc/ardupilot(master)$

Closes #11952
2019-08-05 19:50:32 +10:00
Peter Barker 95b8c12454 AP_Arming: mark check_failed as taking a format string 2019-08-05 14:18:05 +10:00
Andrew Tridgell 9672dce335 SITL: switch vicon simulation to use VISION_POSITION_ESTIMATE
this is a more commonly used message
2019-08-05 13:58:08 +10:00
James e474b7dcfe AP_BattMonitor: add PWM Fuel Level Sensor
this sensor produces PWM between 1100 and 1900, giving fuel level as a
percentage
2019-08-05 11:35:16 +10:00
Peter Barker 46ad04aab7 AP_GPS: correct format string warnings in SBF driver 2019-08-05 11:20:35 +10:00
Peter Barker df01bed14f AP_Compass: take GCS link in place of channel to calibration routines 2019-08-05 09:23:10 +10:00
Peter Barker cf0b7cf016 GCS_MAVLink: pass link object in place of channel to compass cal
Also eliminate intermediate function as just adding noise
2019-08-05 09:23:10 +10:00
Randy Mackay 01a713a812 AP_RangeFinder: param desc rename from PX4-PWM to just PWM
the PWM driver is available for many boards
2019-08-04 21:15:49 +10:00
Rajat Singhal bd9120b725 SITL: Add script for multi-vehicle sim with AirSim 2019-08-04 07:57:46 +10:00
Rajat Singhal 8e7ab23b4f SITL: Add RC support for Airsim
Adds variable length float array parsing
2019-08-04 07:57:46 +10:00
Rajat Singhal 2954f2b4d0 SITL: Delete Airsim Readme
Wiki Page has been added - http://ardupilot.org/dev/docs/sitl-with-airsim.html
2019-08-04 07:57:46 +10:00
Rajat Singhal ad5d3cb9f1 SITL: Add Airsim quadx lidar params 2019-08-04 07:57:46 +10:00
Rajat Singhal 8f1c9759b8 AP_Proximity: Add AirSimSITL lidar sensor 2019-08-04 07:57:46 +10:00
Rajat Singhal 2d25971801 SITL: Add Lidar Sensor for Airsim
Adds variable length array of vector3f parsing
2019-08-04 07:57:46 +10:00
Leonard Hall 7f5d6662b3 AC_AttitudeControl: Support seperate roll and pitch limits 2019-08-03 12:06:32 +09:00
Leonard Hall 036b47ec56 AP_Motors: Add seperate roll and pitch limits 2019-08-03 12:06:32 +09:00
hoangthien94 fc9ff2b09a AP_NavEKF2: add method to check if ext nav is used for yaw 2019-08-03 08:44:11 +09:00
hoangthien94 916de076ec AP_AHRS: add method to check if ext nav is used for yaw 2019-08-03 08:44:11 +09:00
Tom Pittenger 6d1362d569 AP_Proximity: allow MAV driver to accept negative increments and sanity check distances 2019-08-02 09:50:13 -06:00
Tom Pittenger b8dcdca909 AP_Proximity: add Object Avoidance Database, remove old Sector->Location converter 2019-08-02 09:50:13 -06:00
Tom Pittenger 9ad6d14c16 AC_Avoidance: add Object Avoidance Database 2019-08-02 09:50:13 -06:00
Tom Pittenger 2dba187d30 SITL: Morse scanner lidar to use larger MAVLink msg instead of raw data squeezed into 8 sectors 2019-08-02 09:50:13 -06:00
Tom Pittenger 3f99def25a SITL: fix Morse simulator camera and changed default mission to indoor 2019-08-02 09:50:13 -06:00
SergeyBokhantsev c73a4fd227 RC_Channel: unify debounce code 2019-08-02 12:34:02 +01:00
vierfuffzig 6b1046f0ac AP_OSD: add primary airspeed item
and fix param description
2019-08-02 09:22:55 +09:00
Peter Barker 71533c7c5c GCS_MAVLink: correct frame on rally mission items 2019-08-02 09:17:04 +10:00
Peter Barker 880e96448b GCS_MAVLink: tighten type on mavlink_coordinate_frame_to_location_alt_frame 2019-08-01 17:45:30 +10:00
Peter Barker 979a9fb679 GCS_MAVLink: ensure item being converted is a rally point 2019-08-01 17:44:37 +10:00
Andrew Tridgell 4fca69c5e9 HAL_ChibiOS: renamed Pixhawk6 to Durandal
new name for FC from Holybro
2019-08-01 14:11:06 +10:00
Andrew Tridgell 4f243aca02 AP_TECS: prevent rapid changing of pitch limits on landing approach
when on landing approach we estimate time to flare based on two noisy
numbers, the vertical speed and height above ground. With noisy
rangefinders this can change rapidly, which resulted in the pitch
limit changing rapidly, leading to a porpoising movement

this limits the rate of change, and also prevents it coming down once
it has nosed up due to pending flare on approach
2019-08-01 11:28:22 +10:00
Andrew Tridgell 4fd3008b4e AP_TECS: log pitch limits 2019-08-01 11:28:22 +10:00
Andrew Tridgell 3c8ed3d8e1 AP_TECS: fixed flare pitch limits
when limits are out of bounds
2019-08-01 11:28:22 +10:00
Andrew Tridgell d72ded4a9e AP_TECS: prevent numerical error with zero max throttle 2019-08-01 11:28:22 +10:00
Andrew Tridgell 587aa33617 AP_TECS: added TECS_OPTIONS
used for full-time glider
2019-08-01 11:28:22 +10:00
Andrew Tridgell df0cc40bba AP_TECS: allow TECS_PITCH_MAX to be negative 2019-08-01 11:28:22 +10:00
Andrew Tridgell be9c98db12 AP_GPS: ensure we have full timestamp before setting RTC clock
thanks to Martin Sollie for this bug report
2019-07-31 20:13:55 +10:00
Siddharth Purohit 10e8e8e9cc AP_BoardConfig_CAN: fix bad get_slcan_serial method 2019-07-31 17:24:13 +10:00
Andrew Tridgell c9567783e6 AP_Baro: use sensor_config_error on baro cal failure
this allows the user to fix parameters
2019-07-31 14:30:49 +10:00
Michael du Breuil 5645709e50 AP_Baro: Rearrange the sensor struct
Saves 12 bytes of RAM, 144 bytes of flash on CubeBlack
2019-07-31 14:30:25 +10:00
Andrew Tridgell e1ce735886 AP_InertialSensor: special check for CubeBlack to force INS_USE3=1
this will cope with users loading old parameter files
2019-07-31 12:53:57 +10:00
Andrew Tridgell 6f58260d99 AP_Baro: check for all 1 ADC read on MS5611 2019-07-31 12:53:57 +10:00
Andrew Tridgell 0c314c36b6 AP_Logger: log baro health 2019-07-31 12:53:57 +10:00
Andrew Tridgell a196c54db6 AP_Baro: consider a baro unhealthy when outside of -200 to 200 C
this helps detects unhealthy baros on SPI where we can't detect comms
failure
2019-07-31 12:53:57 +10:00
Andrew Tridgell 123800ccd2 AP_InertialSensor: default INS_USE3 to 1 2019-07-31 12:53:57 +10:00
Michael du Breuil c19e4f2147 AP_Mission: Refactor read_cmd_from_storage for clarity 2019-07-31 09:13:43 +10:00
Andrew Tridgell 0f6b8375bb AP_RangeFinder: added a 1.5 delay to probe of LW20 I2C
the LW20 takes a long time to boot and be ready to probe
2019-07-30 13:32:36 +10:00
Andrew Tridgell bcfdc91900 AP_BoardConfig: added BRD_BOOT_DELAY
this allows for a configurable boot delay in case a board has
peripherals that take a long time to bootup
2019-07-30 13:32:36 +10:00
Andrew Tridgell 2572885159 AP_Param: flush() after converting parameters
this prevents a race in sub where a set_default_by_name() directly
follows a parameter conversion for ARMING_CHECK. Without the flush the
default is written to storage by the IO queue draining after the set()
2019-07-30 10:42:16 +10:00
Michael du Breuil 4396540a22 AP_Arming: Add rangefinder checks 2019-07-30 10:42:16 +10:00
Michael du Breuil 3202a2e0a6 AP_Rangefinder: Add arming checks 2019-07-30 10:42:16 +10:00
Michael du Breuil f06251a07f AP_Param: Delay param dumps to avoid running out of buffer space 2019-07-30 10:42:16 +10:00
Michael du Breuil 1677c11855 AP_Scripting: Cope with new AP_GPS::first_unconfigured_gps 2019-07-30 10:12:43 +10:00
Michael du Breuil 4b2cb45ac0 AP_Arming: Cope with new AP_GPS::first_unconfigured_gps 2019-07-30 10:12:43 +10:00
Michael du Breuil d33006a2e7 AP_GPS: Refactor first_unconfigured_gps to return bool 2019-07-30 10:12:43 +10:00
Peter Barker 11b9737b34 AP_AccelCal: remove wrapper around send_text
With our statustext queueing system this check is not just wrong but
redundant.
2019-07-30 10:06:42 +10:00
Randy Mackay 00cc4ace8a RC_Channel: resolve gcs::send_text compiler warning 2019-07-30 09:02:39 +09:00
Randy Mackay 84b502b0c4 AP_RangeFinder: resolve gcs::send_text compiler warning 2019-07-30 09:02:39 +09:00
Randy Mackay 6a154c4e4c AP_InertialSensor: resolve gcs::send_text compiler warning 2019-07-30 09:02:39 +09:00
Randy Mackay f211a0e40c AP_RSSI: resolve gcs::send_text compiler warning 2019-07-30 09:02:39 +09:00
Randy Mackay 64637dba8f AP_GPS: resolve gcs::send_text compiler warning 2019-07-30 09:02:39 +09:00
Randy Mackay 767408ffe9 GCS_MAVLink: resolve gcs::send_text compiler warning 2019-07-30 09:02:39 +09:00
Randy Mackay b3431685a8 AP_ADSB: resolve gcs::send_text compiler warning 2019-07-30 09:02:39 +09:00
Randy Mackay 480a3ebb03 AP_RangeFinder: LightwareSerial driver handles invalid distances
reports the longer of 100m or RNGFNDx_MAX_CM+1m
2019-07-30 08:05:35 +09:00
Andrew Tridgell fc65e04ef2 AP_NavEKF3: fixed baro innovation gate when on ground with AIDING_NONE
when on the ground without a position source we would disable the
innovation gate for the barometer. This meant that a single (or small
number of) really bad baro readings would be fused into the EKF,
causing it to destabilise

Fixes #11903
2019-07-30 08:23:21 +10:00
Andrew Tridgell 098701ec79 AP_NavEKF2: fixed baro innovation gate when on ground with AIDING_NONE
when on the ground without a position source we would disable the
innovation gate for the barometer. This meant that a single (or small
number of) really bad baro readings would be fused into the EKF,
causing it to destabilise

Fixes #11903
2019-07-30 08:23:21 +10:00
Randy Mackay 0e9688a4e1 AP_Scripting: resolve gcs::send_text compiler warning 2019-07-29 09:23:13 +09:00
Andrew Tridgell adcf9c4fa4 HAL_ChibiOS: added commented out baro on SPI5 for fmuv5
useful for SPI debugging
2019-07-29 10:09:08 +10:00
Andrew Tridgell 04944fa6ce AP_NavEKF3: review fixes
thanks Paul!
2019-07-29 10:08:22 +10:00
Andrew Tridgell e7163afe06 AP_NavEKF2: review fixes
thanks Paul!
2019-07-29 10:08:22 +10:00
Andrew Tridgell 451fe840ee AP_NavEKF3: ensure that EKF origin stays in sync on all cores
this prevents the EKF origin on different cores from being initialised
to different values. A common value is stored in the frontend and used
by a core if it doesn't have an origin
2019-07-29 10:08:22 +10:00
Andrew Tridgell c57b25b4c9 AP_NavEKF2: ensure that EKF origin stays in sync on all cores
this prevents the EKF origin on different cores from being initialised
to different values. A common value is stored in the frontend and used
by a core if it doesn't have an origin
2019-07-29 10:08:22 +10:00
Andrew Tridgell 0fcb2037e1 AP_NavEKF3: use origin lat for earth rates
home may not yet be set when this code is run, so using home may be
invalid
2019-07-29 10:08:22 +10:00
Andrew Tridgell a01faa2f00 AP_NavEKF2: use origin lat for earth rates
home may not yet be set when this code is run, so using home may be
invalid
2019-07-29 10:08:22 +10:00
Andrew Tridgell a3411efdb5 AP_NavEKF3: set origin on all cores
when EKF origin is set, make sure it is set on all cores
2019-07-29 10:08:22 +10:00
Andrew Tridgell 742ae0b750 AP_NavEKF2: set origin on all cores
when EKF origin is set, make sure it is set on all cores
2019-07-29 10:08:22 +10:00
Andrew Tridgell 3818d8ecda AP_NavEKF3: restrict setting of EKF origin
only allow EKF origin to be set if EKx_GPS_TYPE is set to 3, which is
used for indoor operation
2019-07-29 10:08:22 +10:00
Andrew Tridgell 5db41147ed AP_NavEKF2: restrict setting of EKF origin
only allow EKF origin to be set if EKx_GPS_TYPE is set to 3, which is
used for indoor operation
2019-07-29 10:08:22 +10:00
Randy Mackay 95bc52de8e AP_Logger: fix PRX distance scaling
distance values logged are in meters
2019-07-26 21:51:44 -07:00
Andrew Tridgell 98f578394f HAL_ChibiOS: default OTG2 protocol to mavlink2 on most boards
For boards that haven't yet had a driver update in MissionPlanner to
cope with the 2nd OTG interface this change makes both interfaces work
as MAVLink

This also fixes an issue with connecting under a windows VM within
vmware
2019-07-26 21:58:57 +10:00
Peter Barker 5e55aedd20 GCS_MAVLink: add printf-format attribute to send_text methods 2019-07-26 10:54:41 +10:00
Peter Barker 678c11f048 AP_GPS: supply format string to send_text 2019-07-26 10:54:41 +10:00
Peter Barker 65c46ac322 AP_AccelCal: supply format string to send_text 2019-07-26 10:54:41 +10:00
Peter Barker 4c434c2df9 AP_Math: add WARN_IF_UNUSED to bool methods 2019-07-26 09:26:02 +09:00
Leonard Hall 4aa74c5c53 AP_Logger: Missing label change 2019-07-26 09:16:51 +09:00
Andrew Tridgell 2b3ced752b AP_Motors: fixed typo in MotorsMatrixTS update for FF 2019-07-25 17:38:15 +09:00
Leonard Hall fb790cadda Tools: update parameter files after PID upgrade 2019-07-25 17:38:15 +09:00
Leonard Hall 6f14673f08 APM_Control: support for upgrade to PID object 2019-07-25 17:38:15 +09:00
Leonard Hall f913108efd AP_Winch: support for upgrade to PID object 2019-07-25 17:38:15 +09:00
Leonard Hall 3d831e4c04 AP_WheelEncoder: support for upgrade to PID object 2019-07-25 17:38:15 +09:00
Leonard Hall c7196a4232 AC_AutoTune: support for upgrade to PID object 2019-07-25 17:38:15 +09:00
Leonard Hall 0bb9db5139 AP_Motors: add feedforward input to mixers 2019-07-25 17:38:15 +09:00
Leonard Hall 979b54b33e AC_PosControl: support update to PID object 2019-07-25 17:38:15 +09:00
Leonard Hall 30746267ec AC_AttitudeControl_Heli: support for updates to AC_PID library
includes rename get_leaky_i to update_leaky_i
2019-07-25 17:38:15 +09:00
Leonard Hall bbe33e38f3 AC_AttitudeControl: support for upgrade to PID object 2019-07-25 17:38:15 +09:00
Leonard Hall ee820258ad AC_HELI_PID: support for upgrade to PID object
updates parameters based on new PID library
rename get_leaky_i to update_leaky_i and move FILT locations
2019-07-25 17:38:15 +09:00
Leonard Hall ab0bdc9fe6 AC_PID: upgrade to PID object 2019-07-25 17:38:15 +09:00
Leonard Hall 94ee2fb2fd AP_Logger: add error to PID message 2019-07-25 17:38:15 +09:00
Leonard Hall 157f786adf Global: rename desired to target in PID info 2019-07-25 17:38:15 +09:00
bugobliterator cba98096e9 HAL_ChibiOS: move to using hardcoded heater PWM polarity in iofirmware 2019-07-25 17:05:41 +10:00
bugobliterator c07fe55b87 AP_IOMCU: remove autodetection of heater pin polarity, instead hardcode it 2019-07-25 17:05:41 +10:00
Michael du Breuil 852f85ec10 AP_Scripting: Fix bad return types on is_nan, is_inf, is_zero 2019-07-24 16:03:46 +10:00
Michael du Breuil 9e04939adf AP_Scripting: Protect send_text from reading the stack
Also fixes small alignment problem in generated code
2019-07-24 16:03:46 +10:00
Peter Barker 81222fbde0 SITL: correct RC2_REV to RC2_REVERSED in comment 2019-07-24 13:36:26 +09:00
Peter Barker a89593856d AP_Logger: remove dangling print_mode method declaration 2019-07-24 13:35:01 +09:00
Peter Barker 0bbe049477 GCS_MAVLink: assert max length of statustexts we send to the GCS 2019-07-22 23:05:15 -07:00
Siddharth Purohit db9f7c3dd5 AP_NavEKF3: do logging for 3rd EKF core 2019-07-23 12:34:38 +10:00
Siddharth Purohit 1527a5b97c AP_NavEKF2: do logging for 3rd EKF core 2019-07-23 12:34:38 +10:00
Siddharth Purohit 359dd3f71c AP_Logger: add logging for 3rd instance of EKF core 2019-07-23 12:34:38 +10:00
Michael du Breuil 6caa700c09 AP_Scripting: Add literal support to the binding layer 2019-07-23 10:05:29 +09:00
Michael du Breuil 5d3cfcb59c AP_Arming: Add scripting method 2019-07-23 10:05:29 +09:00
Michael du Breuil 3b8ecc182c AP_RCMapper: Fix sub only documentation on channels 2019-07-23 09:29:48 +10:00
Michael du Breuil f79a3100d0 AP_Scripting: Add arming call, improve range check casting 2019-07-22 14:32:54 +09:00
Mirko Denecke bb7f80b452 AP_HAL_Linux: UARTDriver remove unused field and tabs 2019-07-21 21:52:42 -07:00
Mirko Denecke 633eb11bfd AP_RCProtocol: IBUS remove unused field 2019-07-22 09:12:57 +09:00
Andrew Tridgell c173f8e24d AP_Airspeed: support both 5inH2O and 10inH2O versions of DLVR sensor
useful for faster aircraft
2019-07-19 21:39:30 -07:00
vierfuffzig d1f80a841f AP_OSD_Screen: fix param descriptions 2019-07-20 14:23:55 +10:00
Randy Mackay e45db32957 AP_Scripting: add AP_arming binding 2019-07-19 19:44:13 -07:00
Andrew Tridgell 58b739db18 GCS_MAVLink: allow non-register device access with devop
useful for i2c devices such as LW20 lidar
2019-07-19 17:05:23 +10:00
Andrew Tridgell e57228646e HAL_ChibiOS: added unused CS pins for fmuv5
these are needed to ensure SPI works correctly if the unused pins are
later attached to a device
2019-07-19 16:58:10 +10:00
Andrew Tridgell c5c96c76ee AP_HAL: added logging of hardware fault information in watchdog
this may help trackdown software bugs that trigger hard faults
2019-07-19 16:02:41 +10:00
Andrew Tridgell 12dd33ac2b HAL_ChibiOS: added logging of hardware fault information in watchdog
this may help trackdown software bugs that trigger hard faults
2019-07-19 16:02:41 +10:00
Josh Prochaska 6440069e7c SITL: include replace.h for AirSim to fix missing memrchr() on MacOS 2019-07-19 15:43:39 +10:00
Michael du Breuil 0054544bd3 AP_Scripting: Add support for enums to be passed through 2019-07-19 09:34:05 +09:00
Michael du Breuil 6e7367b86f AP_Scripting: Reduce lua stack usage 2019-07-19 09:34:05 +09:00
Randy Mackay 10da6d553c Copter: improve OctaV roll factors 2019-07-18 11:19:28 +09:00
Peter Barker 93ca243987 GCS_MAVLink: rearrange mission item handling code
This splits the missionitemprotocol handling entirely into separate
header files and separate compilation units.
2019-07-18 10:48:57 +09:00