Commit Graph

19536 Commits

Author SHA1 Message Date
Mark Whitehorn 55047324ac AC_AttitudeControl: add new tailsitter bodyframe roll option 2019-03-26 14:50:37 +11:00
Mark Whitehorn 4e9b6d1919 AC_AttitudeControl: improve tailsitter bodyframe roll control 2019-03-26 14:50:37 +11:00
yaapu efdad1fca7 AP_Frsky_Telem: fix for passthrough telemetry stall while sending message chunks
This prevents the library from giving message chunks a too high priority leading to
all telemetry packets but 0x5006(attitude) to starve.
2019-03-26 13:01:59 +11:00
Peter Barker 2796beac8d GCS_MAVLink: move various sensor status flag updates up 2019-03-26 11:03:21 +11:00
Pierre Kancir b58ded8e0c AP_Mission: use void casting to prevent GCC warning on memcopy 2019-03-26 10:43:23 +11:00
Mark Whitehorn da1e5bc61f AP_AHRS: refactor View
* AP_AHRS: refactor View
2019-03-26 10:41:55 +11:00
IamPete1 d78275c0a3 AP_AHRS: rotate if none zero pitch trim 2019-03-26 10:41:55 +11:00
Pierre Kancir eab7d08021 AP_IOMCU: fix includes 2019-03-26 10:27:54 +11:00
Pierre Kancir 37d121ae02 AP_RangeFinder: remove useless includes 2019-03-26 10:27:54 +11:00
Pierre Kancir 231e684d96 AP_SerialManager: fix includes place and order 2019-03-26 10:27:54 +11:00
Pierre Kancir e3830d3ca4 AP_SBusOut: fix includes place and order 2019-03-26 10:27:54 +11:00
Pierre Kancir 585c853a59 AP_RobotisServo: fix includes place and order 2019-03-26 10:27:54 +11:00
Peter Barker 71174f41f8 AC_AutoTune: correct multiplier on ATDE and ATUN
These appear to be logging in degrees already, so the multiplier's wrong
2019-03-26 10:18:05 +11:00
Peter Barker bd8a27476e AP_Logger: make structure validation failure at runtime fatal 2019-03-26 10:18:05 +11:00
Peter Barker eb1fc3107c AC_PosControl: log PSC data in metres in place of centimetres 2019-03-26 10:18:05 +11:00
mirkix 938865da41 AP_HAL_Linux: add override to virtual method 2019-03-24 20:46:17 -07:00
Michael du Breuil 7b5fb719dc AC_WPNav: Remove unused internals, and unneeded initilizers 2019-03-25 08:56:31 +11:00
mirkix 655421c526 AP_Baro: remove unused field 2019-03-25 08:26:49 +11:00
Michael du Breuil 3f1fbbf6c6 AP_Logger: simplify the message writers
Specifically:
  - Remove some unreachable nullptr checks
  - Remove a noop stage
  - Remove unneeded initilizers
2019-03-24 11:45:08 +11:00
yaapu aca1651488 AP_Frsky_Telem: fix ap_status_timer handling
method should return only after ap_status_timer has elapsed and vehicle is initialized
otherwise we waste a chance to send a packet
2019-03-24 09:56:37 +11:00
Peter Barker fc54f27c1c AP_Devo_Telem: use stack for packet construction 2019-03-23 11:25:21 +11:00
Peter Barker 2dae643280 AC_PID: update example to stop shadowing global chibios variable 2019-03-23 11:23:07 +11:00
Peter Barker 26c01accb9 AP_HAL_SITL: remove unused from method 2019-03-23 11:23:07 +11:00
Peter Barker 649130adcb AP_Common: uniqify semaphore names 2019-03-23 11:23:07 +11:00
Peter Barker a1088f6cd6 AP_HAL_SITL: add support for ToneAlarm via sfml 2019-03-23 07:10:50 +11:00
Peter Barker 22bf7817e1 AP_Notify: include AP_ToneAlarm for SITL 2019-03-23 07:10:50 +11:00
HITMAnsOFT 9c26b5bb9c AP_Mount: fix SToRM32 Serial protocol delay
The packets to a SToRM32 gimbal were being sent at 1s intervals when in MAVLINK targeting mode.
We need to send them faster or smooth targetting is impossible.
2019-03-22 10:11:05 +11:00
Luis Vale Gonçalves 70c1414026 FrSky: Adjusted offsets
Following up on @yaapu comment https://github.com/ArduPilot/ardupilot/pull/10499#issuecomment-474625077
2019-03-22 09:49:01 +11:00
Peter Barker ee690e7ab9 AP_Logger: use AP_InternalError for tracking internal errors 2019-03-21 21:34:33 +11:00
Peter Barker b3203601f3 GCS_MAVLink: send internal errors as bitmask in sys_status 2019-03-21 21:34:33 +11:00
Peter Barker 422aa8ad7e DataFlash: include internal errors in dataflash PM message 2019-03-21 21:34:33 +11:00
Peter Barker 82f8a7fa1b AP_Scheduler: include internal errors in dataflash PM message 2019-03-21 21:34:33 +11:00
Peter Barker 2e885739e3 AP_InternalError: add singleton for tracking internal errors 2019-03-21 21:34:33 +11:00
Jonathan Challinger 71af938a12 AP_UAVCAN: use fixed-size memory pool 2019-03-21 21:25:39 +11:00
Andrew Tridgell 4a334d0ed7 AP_IneertialSensor: fixed startup race in SITL 2019-03-21 18:54:32 +11:00
Andrew Tridgell 0a718ba330 AP_IneertialSensor: fixed orientations and gyro scale factors for new Invensense IMUs 2019-03-21 18:54:32 +11:00
Siddharth Purohit 8c2d3945de AP_IneertialSensor: add support for custom accel scale
adds support for 30g measurement on ICM20649
2019-03-21 18:54:32 +11:00
Siddharth Purohit 3a833d9a90 AP_InertialSensor: fix rotation for ICM20649 2019-03-21 18:54:32 +11:00
Peter Barker 4e151197a8 AP_Logger: log units and multipliers correctly 2019-03-21 17:44:05 +11:00
bnsgeyer 01bd99907b AP_Motors:Tradheli-swash library parameter scope improvement 2019-03-20 10:40:20 +10:00
bnsgeyer 79b069afc3 AP_Motors:tradheli-swash library general clean up 2019-03-20 10:40:20 +10:00
bnsgeyer 8c46fe1c61 AP_Motors: tradheli-fix parameters for generic swashplate and other minor fixes 2019-03-20 10:40:20 +10:00
bnsgeyer 9f547cc328 AP_Motors: Tradheli - support for linear servo output for swashplates 2019-03-20 10:40:20 +10:00
ChristopherOlson b8d53b7a57 AP_Motors:TradHeli - add new swashplate descriptions to params for Heli Single and Heli Dual 2019-03-20 10:40:20 +10:00
bnsgeyer d7e6298366 AP_Motors: Tradheli - add swashplate library 2019-03-20 10:40:20 +10:00
Peter Barker 236056ffbd GCS_MAVLink: take 0,0 as meaning set-home-to-current-location
This isn't in spec, but is what Sub used to do, and what other vehicles
also used to do.

We treat 0,0 as "current location" in various other places, so it kind
of makes sense here too.
2019-03-19 19:56:13 +11:00
Peter Barker 95745f0d31 GCS_MAVLink: move command-long DO_SET_HOME up 2019-03-19 19:56:13 +11:00
Peter Barker 32d576ac4b AP_Devo_Telem: move devo telemetry handling to GCS 2019-03-19 14:39:14 +11:00
Peter Barker bc2080cea2 GCS_MAVLink: move devo telemetry handling to GCS 2019-03-19 14:39:14 +11:00
Peter Barker 3100c8edad GCS_MAVLink: GCS can report simple/supersimple input modes 2019-03-19 14:39:14 +11:00
Peter Barker 1efc08b54e AP_FrSky_Telem: eliminate use of Copter's _ap data 2019-03-19 14:39:14 +11:00
Peter Barker cf264a7d5e GCS_MAVLink: move vehicle_initialised to be on GCS not GCS_MAVLink 2019-03-19 14:39:14 +11:00
Peter Barker 0194cd69a1 AP_Frsky_Telem: take is_flying from AP_Notify 2019-03-19 14:39:14 +11:00
Peter Barker 680008ba4f AP_Frsky_Telem: use gcs() to get frame string 2019-03-19 14:39:14 +11:00
Peter Barker b12d20d86c GCS_MAVLink: add support for frame_string 2019-03-19 14:39:14 +11:00
Peter Barker e5818308b9 AP_Frsky_Telem: move FRsky telemetry up into common GCS telemetry class 2019-03-19 14:39:14 +11:00
Peter Barker ab1c42696c GCS_MAVLink: move FRsky telemetry up into common GCS telemetry class 2019-03-19 14:39:14 +11:00
Peter Barker a36d2dd5b8 AP_Notify: add flag for flying 2019-03-19 14:39:14 +11:00
Andrew Tridgell 2ffded4dd7 AP_AHRS: implement get_velocity_NED() for DCM 2019-03-19 14:39:04 +11:00
Andrew Tridgell 6622a4579e AP_AHRS: fixed warning on WARN_IF_UNUSED 2019-03-19 12:10:07 +11:00
Peter Barker 5eb9622105 GCS_MAVLink: correct compilation for ALT_FRAME issue 2019-03-19 12:06:03 +11:00
Michael du Breuil 2ed1757353 AP_AHRS: Remove unused uptime 2019-03-19 11:42:54 +11:00
Michael du Breuil 94a1835a9b AP_AHRS: Tag most of AHRS_VIEW as WARN_IF_UNUSED 2019-03-19 11:42:54 +11:00
Michael du Breuil c7c8c2a7c5 AP_AHRS: Tag a lot of the accessors as WARN_IF_UNUSED 2019-03-19 11:42:54 +11:00
Michael du Breuil 75caad52c0 GCS_MAVLink: Always check the return value on get_velocity_NED 2019-03-19 11:42:54 +11:00
Michael du Breuil fcb54c2d68 AP_Frsky_Telem: Enforce the use of 0 when velocity_NED is not available 2019-03-19 11:42:54 +11:00
Michael du Breuil 0743b979fa AP_Logger: Don't log AHR2 unless the quat is available
This should not be a functional change, because if the secondary
attitude is available then the secondary quat will be as well
2019-03-19 11:42:54 +11:00
Michael du Breuil 8e8ce6be35 AP_Landing: Fix unconditional use of airspeed estimate, even when it was invalid 2019-03-19 11:42:54 +11:00
Andrew Tridgell 5571a84a49 AP_BattMonitor: added a "battery" backend for liquid fuel flow
This is for sensors that give a pulse for each fixed volume of fuel.

Output is:
    - current in Amps maps to in litres/hour
    - consumed mAh is in consumed millilitres
    - fixed 1.0v voltage
2019-03-19 11:35:59 +11:00
Andrew Tridgell 778b88cba2 GCS_MAVLink: disable reboot when armed
this prevents reboot on vehicles that have ARMING_REQUIRE=0, which
applies to some planes, but those vehicles tend to not use MAVLink
reboot anyway.
2019-03-19 10:53:37 +11:00
Mark Whitehorn e71eae7d3b AP_AHRS: add new method get_quat_body_to_ned() 2019-03-19 10:46:25 +11:00
Mark Whitehorn 1c52458d72 AC_AttitudeControl: use new method get_quat_body_to_ned() 2019-03-19 10:46:25 +11:00
Peter Barker 3dc2db8d9a GCS_MAVLink: queue parameter request even if we can't fit a reply ATM 2019-03-19 10:37:09 +11:00
Peter Barker 4eba6d4fe2 GCS_MAVLink: exempt requested parameters from buffer space reservation
Fixes a problem where we reserve space to send replies but then do not
bypass the reserved-space checks when sending them.
2019-03-19 10:37:09 +11:00
Peter Barker f0200a4d9b GCS_MAVLink: GCS_Common: correct overflows in bandwidth and count calculations 2019-03-19 10:37:09 +11:00
Peter Barker 716b0fdc88 GCS_MAVLink: use enum class for AltFrame enumeration 2019-03-19 10:31:18 +11:00
Peter Barker bdcb48d835 AP_Mount: use enum class for AltFrame enumeration 2019-03-19 10:31:18 +11:00
Peter Barker 9ab33fd3c4 AP_Mission: use enum class for AltFrame enumeration 2019-03-19 10:31:18 +11:00
Peter Barker 3889c91974 AP_AHRS: use enum class for AltFrame enumeration 2019-03-19 10:31:18 +11:00
Peter Barker 495111d67e AP_ADSB: use enum class for AltFrame enumeration 2019-03-19 10:31:18 +11:00
Peter Barker d9ddb8f34d AC_WPNav: use enum class for AltFrame enumeration 2019-03-19 10:31:18 +11:00
Peter Barker 3629273959 AC_Fence: use enum class for AltFrame enumeration 2019-03-19 10:31:18 +11:00
Peter Barker 4c9651dbfd SITL: use enum class for AltFrame enumeration 2019-03-19 10:31:18 +11:00
Peter Barker 22c0175d7f AP_Location: use enum class for AltFrame enumeration 2019-03-19 10:31:18 +11:00
Mark Whitehorn 61a04bd898 AP_AHRS: fix bug in attitudes_consistent() 2019-03-19 10:19:47 +11:00
Mark Whitehorn 5cdfccad14 AP_Motors: specialize MotorsMatrixTS motor controls 2019-03-19 10:13:59 +11:00
Peter Barker 020aa6bd49 AC_AutoTune: emit a warning every second while pilot overrides active 2019-03-18 09:35:52 +09:00
Peter Barker 7498972b8d AP_RPM: add AP::rpm() call for singleton 2019-03-16 10:33:01 +09:00
Peter Barker bb1ae30594 GCS_MAVLink: move sending of RPM message up 2019-03-16 10:33:01 +09:00
Tom Pittenger 8d6748dc4f AP_ADSB: add special vehicle that ignores range filters 2019-03-15 14:50:53 -07:00
Tom Pittenger ec59fe9398 ADSB: cleanup, make more things const 2019-03-15 14:50:53 -07:00
Tom Pittenger 624d6b5490 AP_ADSB: add accessor to fetch a vehicle from database by icao 2019-03-15 14:50:53 -07:00
Andrew Tridgell 591e2ebeea HAL_ChibiOS: remove unused config files
these do not build correctly
2019-03-15 20:08:26 +11:00
Andrew Tridgell d942b64584 HAL_ChibiOS: fixed NucleoH743 build 2019-03-15 20:08:26 +11:00
Andrew Tridgell bf0a4a23b2 HAL_ChibiOS: fixed build of crazyflie2 2019-03-15 20:08:26 +11:00
Randy Mackay 27b50f125c GCS_MAVLink: send_set_position_target always sends alt-above-home 2019-03-15 14:51:35 +09:00
Randy Mackay 066a443e5f GCS_MAVLink: add send_set_position_target_global_int
this supports sending the position target to an offboard navigation controller
2019-03-15 14:51:35 +09:00
Randy Mackay 1e1f14f6e9 AP_Mission: add text string for do-guided-limits 2019-03-15 14:51:35 +09:00
Randy Mackay f4416cd3f2 AP_Mission: nav-guided-enable command stores location
this allows sending the location to an offboard navigation system
also add text string for nav-guided-enable command
2019-03-15 14:51:35 +09:00
Andrew Tridgell 9f1eaf4b37 AP_RCProtocol: fixed RC option check for iofirmware 2019-03-15 14:38:57 +11:00
Andrew Tridgell ac3da71efd AP_Vehicle: added iofirmware vehicle type 2019-03-15 14:38:57 +11:00
Andrew Tridgell db9912fd58 AP_RCProtocol: use RC_IGNORE_FAILSAFE 2019-03-15 14:38:57 +11:00
Andrew Tridgell 59082a0833 RC_Channel: added RC_OPTIONS flag for failsafe ignore
this is useful for SBUS with a receiver setup for HOLD on failsafe to
not trigger a RC failsafe
2019-03-15 14:38:57 +11:00
Andrew Tridgell b754d56ecb HAL_ChibiOS: fixed revo-mini build 2019-03-15 11:54:57 +11:00
Andrew Tridgell 69edd5a544 HAL_ChibiOS: fixed typos in hwdef.dat files 2019-03-15 11:54:57 +11:00
Andrew Tridgell cd27e3022f HAL_ChibiOS: check for prefix match on peripherals 2019-03-15 11:54:57 +11:00
Andrew Tridgell 3fd3e88d04 HAL_ChibiOS: fixed typo
thanks to Malcolm Churn for noticing
2019-03-15 08:51:52 +11:00
Andrew Tridgell b3f48a1477 HAL_ChibiOS: added CS line for Pixhawk4Pro temp sensor 2019-03-14 16:10:40 +11:00
Andrew Tridgell 880a55c6a2 AP_InertialSensor: fixes for BMI088 on SPI
The sensor has an unusual SPI interface, with a pad byte on read, and
retries needed on write
2019-03-14 16:10:40 +11:00
Peter Barker fa082df040 AP_HAL_SITL: add missing CLOEXECs on tcp ports 2019-03-13 18:02:48 +11:00
Peter Barker 2d16c37844 AP_Compass: examples: compass init never fails 2019-03-13 13:06:50 +11:00
Peter Barker 4fa04e730b AP_AHRS: examples: compass init never fails 2019-03-13 13:06:50 +11:00
Peter Barker f8be4efed4 AP_Compass: init never fails; return void rather than bool 2019-03-13 13:06:50 +11:00
Peter Barker 0dacf78c12 AP_Arming: use enum class for ArmingMethod and ArmingRequired 2019-03-12 19:48:14 +11:00
L Kurt Shaw 8d75e8c5bb INS: AP_InertialSensor.cpp
Fix typo in comments should be NFC
2019-03-12 15:56:55 +09:00
Peter Barker 34e09a55be GCS_MAVLink: support send_extended_sys_state 2019-03-12 09:16:13 +09:00
Peter Barker 4db011f530 SITL: add SIM_SHOVE_* options to shove the simulated vehicle
The parameter values are time in milliseconds and body-frame
acceleration in m/s/s

So to test throw mode:
 mode throw
 param set SIM_SHOVE_Z -30
 arm throttle
 param set SIM_SHOVE_TIME 500
2019-03-12 11:09:37 +11:00
Mark Whitehorn 8c84fa5c64 AP_AHRS: apply AHRS trim in SITL 2019-03-12 10:52:55 +11:00
Michael du Breuil 0bf2fc004e AP_AHRS: Warn if the return value on (get, set)_origin is not checked 2019-03-12 08:27:42 +09:00
Michael du Breuil 281d3b1189 AC_Fence: check the return value of fetching the EKF origin 2019-03-12 08:27:42 +09:00
Peter Barker 499cc45ac0 AP_Math: move longitude_scale into Location class 2019-03-12 10:11:12 +11:00
Peter Barker a1c751919c AP_Common: move longitude_scale into Location class 2019-03-12 10:11:12 +11:00
Michael du Breuil f7b34677df GCS_MAVLink: Don't send BATTERY_STATUS for empty instances 2019-03-11 22:42:59 +00:00
Michael du Breuil d96aad86a5 AP_BattMonitor: Make type() const 2019-03-11 22:42:59 +00:00
Andrew Tridgell 2842063146 HAL_ChibiOS: optimize CubeYellow build
and fixed comment in CubeOrange
2019-03-11 12:40:21 +11:00
Andrew Tridgell 59652ad147 HAL_ChibiOS: added more IMU devices for Hex Cube boards 2019-03-11 12:40:21 +11:00
Andrew Tridgell 81cd103073 AP_InertialSensor: probe for new v2 invensense IMUs
also suppress LSM9DS0 whoami warnings, as these will now be common
with new IMUs

and make 20602 show up as a new devtype so we can distinguish it
2019-03-11 12:40:21 +11:00
Andrew Tridgell 7577ebb33e HAL_ChibiOS: added bootloader hwdef for mindpx-v2 2019-03-11 09:58:12 +11:00
Andrew Tridgell f7b6f9d70b HAL_ChibiOS: added retries to flash based storage
this prevents a single flash write error from causing parameter reset
2019-03-11 09:52:19 +11:00
Andrew Tridgell 63895d8b0c HAL_ChibiOS: setup dummy pointers for H7 SPI 2019-03-10 21:53:06 +11:00
Andrew Tridgell 1414988870 HAL_ChibiOS: use spiSend/spiReceive
this fixes an issue with microSD on F405.
2019-03-10 21:53:06 +11:00
Andrew Tridgell dff3ea416c AP_InertialSensor: allow for LSM9DS0 to be used on I2C 2019-03-10 09:03:06 +11:00
Randy Mackay cf8a7fd423 AP_Logger: add values to backend-type param description 2019-03-09 14:22:28 +09:00
Tom Pittenger 785c91e269 AP_Common: Semaphore is missing an include
Everyone who is already including common/Semaphore has extra includes to make this compile. This reduces that dependancy
2019-03-08 17:24:48 -08:00
Andrew Tridgell 26d1371d25 HAL_ChibiOS: separate out DMA allocation for sdcard IO
this fixes an issue with DMA to SPI6 on STM32H7. On the H7 SRAM4 can
be used for DMA and BDMA to all devices except for SDMMC which uses
IDMA.

by separating out DMA of sdcard data from other data we can arrange
for DMA to all devices to work
2019-03-09 07:33:47 +11:00
Andrew Tridgell a7c91d1cb4 HAL_ChibiOS: show all SPI clocks 2019-03-09 07:33:47 +11:00
Francisco Ferreira 5a64f8d8ba AP_GPS: use proper macro in array sizes 2019-03-07 19:48:32 -07:00
Francisco Ferreira ba5ef18ef7 AP_GPS: correct blending check 2019-03-07 19:48:32 -07:00
Francisco Ferreira cb1ce70ae8 AP_GPS: fix out-of-bounds array access 2019-03-07 19:48:32 -07:00
Peter Barker 8991fd8fcf AC_Fence: clear breaches if boundary invalid etc 2019-03-08 08:57:27 +09:00
Peter Barker 434f22cf40 AC_Fence: correct fence upload reload boundary trigger
The check in AC_Fence::check_fence_polygon is for boundary points, not
boundary loaded
2019-03-08 08:57:27 +09:00
Peter Barker 7bdd2eb755 AP_Arming: move checking of fence up 2019-03-08 08:57:27 +09:00
Peter Barker 12981b1f07 AP_Arming: correct use of failure messages as format strings
This is important as if the returned string happens to contain
substitutions (%s in particular), we can attempt to pull random data
off the stack and incorporate it in the string.

This sort of bug is rather famous for serious explots in sendmail.

This could be bad if your stack is relatively full and the memory after
it is inaccessible.
2019-03-07 14:44:26 +11:00
Peter Barker c04d2145a1 AC_Fence: correct fence pre-arm position check 2019-03-07 11:42:39 +09:00
Randy Mackay 26fd334882 AP_Arming: provide better feedback on attitude check 2019-03-07 09:34:39 +09:00
Randy Mackay ba02894734 AP_AHRS: attitude pre-arm check skips yaw if no compass
Also provides better feedback on the axis and angular difference
2019-03-07 09:34:39 +09:00
Siddharth Purohit 086b4c1cfd AP_InertialSensor: use default value for temperature scale and offset 2019-03-06 20:47:10 +11:00
Siddharth Purohit 6ff8f52957 AP_Compass: add support for AK09916 connected over fourth IMU over I2C 2019-03-06 20:47:10 +11:00
Siddharth Purohit b76ec8cc11 AP_InertialSensor: fix slave register structure for Invensensev2 2019-03-06 20:47:10 +11:00
Siddharth Purohit 104c433081 AP_Compass: AK09916 fix sample register structure 2019-03-06 20:47:10 +11:00