Commit Graph

21032 Commits

Author SHA1 Message Date
Pierre Kancir 82de3efc09 AP_Terrain: pass mavlink_message_t by const reference 2019-07-16 20:51:42 +10:00
Pierre Kancir c4ec373b20 AP_RangeFinder: pass mavlink_message_t by const reference 2019-07-16 20:51:42 +10:00
Pierre Kancir 5b745aa1f1 AP_Proximity: pass mavlink_message_t by const reference 2019-07-16 20:51:42 +10:00
Pierre Kancir e7ae1b4fb6 AP_OpticalFlow: pass mavlink_message_t by const reference 2019-07-16 20:51:42 +10:00
Pierre Kancir ad4563df2d AP_Notify: pass mavlink_message_t by const reference 2019-07-16 20:51:42 +10:00
Pierre Kancir f3e40b4906 AP_Mount: pass mavlink_message_t by const reference 2019-07-16 20:51:42 +10:00
Pierre Kancir 781e9ae9c1 AP_Logger: pass mavlink_message_t by const reference 2019-07-16 20:51:42 +10:00
Pierre Kancir 13ac187fd8 AP_GPS: pass mavlink_message_t by const reference 2019-07-16 20:51:42 +10:00
Pierre Kancir 09f0f34fe5 AP_Camera: pass mavlink_message_t by const reference 2019-07-16 20:51:42 +10:00
Pierre Kancir b67bab01f6 AP_BattMonitor: pass mavlink_message_t by const reference 2019-07-16 20:51:42 +10:00
Pierre Kancir 78cd3cc722 AP_ADSB: pass mavlink_message_t by const reference 2019-07-16 20:51:42 +10:00
Pierre Kancir a44ed03a91 AP_AccelCal: pass mavlink_message_t by const reference 2019-07-16 20:51:42 +10:00
Pierre Kancir a9814d34c7 AC_PrecLand: pass mavlink_message_t by const reference 2019-07-16 20:51:42 +10:00
Pierre Kancir bf74cb4e99 AC_Fence: pass mavlink_message_t by const reference 2019-07-16 20:51:42 +10:00
Michael du Breuil 13840337ec AP_InertialNav: Remove unneeded methods 2019-07-16 12:11:42 +09:00
Peter Barker c6126ec720 AP_Avoidance: stop copying adsb vehicle onto stack in src_id_for_adsb_vehicle 2019-07-16 10:30:55 +10:00
murata fa78987046 RC_Channel: Match output type and variable type 2019-07-16 10:11:13 +10:00
murata 954e6a0c50 AP_RCProtocol: Match output type and variable type 2019-07-16 10:11:13 +10:00
murata 88c681586f AP_Param: Match output type and variable type 2019-07-16 10:11:13 +10:00
murata 2e4dda5ece AP_HAL: Match output type and variable type 2019-07-16 10:11:13 +10:00
Peter Barker 459680e7c8 GCS_MAVLink: make Avoidance responsible for sending collision message 2019-07-16 09:52:54 +10:00
Peter Barker fd61bae0bd AP_Avoidance: take responsibility for sending collision message 2019-07-16 09:52:54 +10:00
Andrew Tridgell 289678cfc5 AP_Notify: play error tone if we have no microSD at boot 2019-07-16 09:32:41 +10:00
Peter Barker 21d6f81a12 AP_SmartRTL: rangefinder no longer takes SerialManager in constructor 2019-07-16 09:29:48 +10:00
Peter Barker ca15a24433 AP_OpticalFlow: rangefinder no longer takes SerialManager in constructor 2019-07-16 09:29:48 +10:00
Peter Barker c3bf090815 AP_AHRS: rangefinder no longer takes SerialManager in constructor 2019-07-16 09:29:48 +10:00
Peter Barker c0993509f7 GCS_MAVLink: declare GCS_MAVLINK as a class as it hasn't been defined yet 2019-07-16 09:29:48 +10:00
Peter Barker 90edc8b51a AP_ADSB: move include of AHRS to .cpp
Not used in header, helps fix include loops
2019-07-16 09:29:48 +10:00
Peter Barker ac96461c6c AP_RangeFinder: use AP_SerialManager singleton 2019-07-16 09:29:48 +10:00
Peter Barker d7fd88bbca AP_Avoidance: stop taking reference to ahrs in constructor 2019-07-16 09:29:48 +10:00
Peter Barker f85bad752e RC_Channel: add both clear and reset options to Rover and Plane docs 2019-07-16 09:24:18 +10:00
Peter Barker aab787b08b RC_Channel: move mission reset in from Copter 2019-07-16 09:24:18 +10:00
Randy Mackay 84ba6e859c AP_OADijkstra: redo visgraphs if polyfence is changed 2019-07-15 13:45:10 +09:00
Peter Barker edc8401457 AP_Mount: remove pointless virtual declarations 2019-07-15 09:15:06 +09:00
Andrew Tridgell 2d5e4dcfa2 HAL_ChibiOS: fixed SemLine data in WDOG msg
semline was being overwritten in the setup() call
2019-07-15 08:08:54 +10:00
Michael du Breuil da3602b90d AP_Logger: Log unknown battery values as out of band 2019-07-14 00:28:00 -07:00
Michael du Breuil ed584313bd AP_Scripting: Remove unneeded debug output, fix the index for singleton errors 2019-07-14 00:28:00 -07:00
Michael du Breuil b3c6d3d75a GCS_MAVLink: Refactor battery current interface 2019-07-14 00:28:00 -07:00
Michael du Breuil 10410b696c AP_OSD: Refactor battery current interface 2019-07-14 00:28:00 -07:00
Michael du Breuil e3f1ef0c5e AP_Motors: Refactor battery current interface 2019-07-14 00:28:00 -07:00
Michael du Breuil ee3511c1fa AP_Logger: Refactor battery current interface 2019-07-14 00:28:00 -07:00
Michael du Breuil ea82d6ea4c AP_FrSkyTelem: Refactor battery current interface 2019-07-14 00:28:00 -07:00
Michael du Breuil 58dbbd6d0e AP_Compass: Refactor battery current backend 2019-07-14 00:28:00 -07:00
Michael du Breuil be25a703c0 AP_Scripting: Update battery interface 2019-07-14 00:28:00 -07:00
Michael du Breuil 0a4e3a77b3 AP_BattMonitor: Refactor interface for fetching current related data 2019-07-14 00:28:00 -07:00
vierfuffzig bed92e8ca8 AP_HAL_ChibiOS: fix buzzer pin define on OMNIBUSF7V2 2019-07-13 17:26:43 +10:00
Andrew Tridgell 2f79639e36 HAL_ChibiOS: added support for MatekF765-Wing 2019-07-13 15:23:45 +10:00
Andrew Tridgell 1ffc2cbe41 AP_Airspeed: allow setting of default airspeed pin 2019-07-13 15:23:45 +10:00
priseborough 209a32b8b9 AP_NavEKF3: Fix bug in use of external 321 yaw to align 2019-07-13 11:05:57 +10:00
priseborough 122f214416 AP_NavEKF3: Don't allow mag to interfere with use of external yaw sensor 2019-07-13 11:05:57 +10:00
Andrew Tridgell b56914b879 AP_NavEKF3: use GPS yaw if available and enabled
this allows a suitable GPS to be used as an external yaw source
2019-07-13 11:05:57 +10:00
priseborough 0c4f92d4c1 AP_NavEKF3: Add control logic to use external yaw sensor 2019-07-13 11:05:57 +10:00
priseborough 71d358803a AP_NavEKF3: Fix yaw sensor alignment status reporting 2019-07-13 11:05:57 +10:00
priseborough 977a7b68ed AP_NavEKF3: Add push to buffer for external yaw sensor data 2019-07-13 11:05:57 +10:00
priseborough 0a971c5181 AP_NavEKF3: Add function to reset yaw to external measurement 2019-07-13 11:05:57 +10:00
Andrew Tridgell 62575a194c AP_NavEKF3: Add data buffers for yaw sensor 2019-07-13 11:05:57 +10:00
priseborough 87c7649d09 AP_NavEKF3: Add interface for yaw angle measurements 2019-07-13 11:05:57 +10:00
Andrew Tridgell a2e75876bf AP_Logger: added logging of GPS yaw
some GPS modules can give true yaw, whether moving or not
2019-07-13 11:05:57 +10:00
Grant Morphett 64ed76326b AP_GPS: Adding support for the NMEA GPHDT sentence
The NMEA GPHDT sentence can be used to determine the vehicles bearing
instead of a compass even when the vehicle is stationary.  This type
of GPS is normally very expensive and does the bearing using some sort
of phase ambituity algorithm.
2019-07-13 11:05:57 +10:00
Grant Morphett fdcdbddecc AP_HAL_SITL: Send NMEA GPHDT sentence if enabled.
and add VTG message
2019-07-13 11:05:57 +10:00
Andrew Tridgell 5c3afa2621 SITL: use AP_Math/definitions.h 2019-07-13 11:05:57 +10:00
Andrew Tridgell 2480a62e55 AP_Math: added speed/distance conversions 2019-07-13 11:05:57 +10:00
Grant Morphett 2ce7955614 SITL: Create gps_hdt_enabled varible for enable/disable HDT GPS sentence 2019-07-13 11:05:57 +10:00
Michael du Breuil d58783664d AP_Scripting: Update generator to not use readline 2019-07-12 16:55:12 -07:00
Peter Barker f21fcca9d0 AC_WPNav: take references to inav's position rather than a copy 2019-07-12 21:56:06 +09:00
reubenfinch cabd6aec8f AP_HAL_ChibiOS: Correct the README.md for fmuv5 boards
the IST8310 magnetometer uses I2C, not SPI
2019-07-12 10:59:48 +01:00
Peter Barker bca411b2c4 AP_Arming: reduce length of internal errors errorstring prefix
MissionPlanner's HUD requires a short string for this to be useful
2019-07-12 18:39:06 +10:00
Andrew Tridgell 2f0a4ff1ab HAL_ChibiOS: fixed build on boards with less than max uarts 2019-07-12 17:01:21 +10:00
Andrew Tridgell 1919268801 HAL_ChibiOS: added OTG2 on all F7 and H7 boards with CAN
allows for SLCAN on 2nd port
2019-07-12 17:01:21 +10:00
Andrew Tridgell 02014776e8 HAL_ChibiOS: auto-set HAL_HAVE_DUAL_USB_CDC 2019-07-12 17:01:21 +10:00
Andrew Tridgell 4ff008b803 AP_SerialManager: added uartH support 2019-07-12 17:01:21 +10:00
Andrew Tridgell ac7a67fda0 HAL_SITL: added uartH 2019-07-12 17:01:21 +10:00
Andrew Tridgell 019f441b2f HAL_Linux: added uartH 2019-07-12 17:01:21 +10:00
Andrew Tridgell 4e560a4ae5 HAL_Empty: added uartH 2019-07-12 17:01:21 +10:00
Andrew Tridgell 0075b96f3a HAL_ChibiOS: added uartH 2019-07-12 17:01:21 +10:00
Andrew Tridgell bee487e9da AP_HAL: added uartH 2019-07-12 17:01:21 +10:00
Siddharth Purohit c50912ed6a AP_HAL: define HAL_HAVE_DUAL_USB_CDC if not defined 2019-07-12 17:01:21 +10:00
Siddharth Purohit 7f297a43dc SerialManager: add support for SLCAN protocol as parameter 2019-07-12 17:01:21 +10:00
Siddharth Purohit fe44384c95 BoardConfig_CAN: return serial port with switch between parameter and passthrough 2019-07-12 17:01:21 +10:00
Siddharth Purohit dcf17e5bc2 HAL_ChibiOS: hwdef: add support for dual cdc on CubeYellow and CubeOrange 2019-07-12 17:01:21 +10:00
Siddharth Purohit 2f0d1336e6 HAL_ChibiOS: add support for dual usd cdc 2019-07-12 17:01:21 +10:00
murata 89484a8f64 AP_Beacon: Common modbus crc method 2019-07-12 15:33:21 +10:00
murata d7b2271197 AP_RangeFinder: Common modbus crc method 2019-07-12 15:33:21 +10:00
murata c5a471e778 AP_Math: Common modbus crc method 2019-07-12 15:33:21 +10:00
Randy Mackay 27e802eaa6 AP_Scripting: add AP_AHRS method get_roll, pitch, yaw 2019-07-12 13:57:28 +09:00
Randy Mackay 32e25d8b57 AP_AHRS: add accessor for roll, pitch and yaw 2019-07-12 13:57:28 +09:00
anbello b65f5bf632 ChibiOS: hwdef revo-mini correct IMU rotation 2019-07-12 14:01:06 +10:00
Andrew Tridgell d2fe47d2e0 HAL_ChibiOS: dither heater pins to prevent magnetic impact 2019-07-12 12:46:27 +10:00
Andrew Tridgell 76a8d494c3 AP_IOMCU: dither heater pin to prevent 1Hz impact on mags
with the simpler duty cycle code we see a 1Hz 25 mGauss cycle in the
internal mags
2019-07-12 12:46:27 +10:00
Leonard Hall 77f8ec9f43 AP_Motors: formatting fixes 2019-07-12 09:29:40 +09:00
Peter Barker ef8baf28ad AP_Airspeed: clarify mavlink packet assembly is re-ordered field order
This makes it clear that the fields must be arranged according to the
order in the header file rather than that in the message definition
2019-07-11 11:53:35 +10:00
Andrew Tridgell b12cc57c64 HAL_ChibiOS: switched on fast sampling on IMU3 by default on hex cubes
as some people are flying with EK2_IMU_MASK=7 this reduces the risk of
aliasing on IMU3
2019-07-11 10:24:45 +10:00
Andrew Tridgell 634db441f8 AP_NavEKF3: origin handling fixes from Francisco 2019-07-11 06:40:55 +10:00
Andrew Tridgell 2427440e13 AP_NavEKF2: origin handling fixes from Francisco 2019-07-11 06:40:55 +10:00
Peter Barker 6cb8fcc466 GCS_MAVLink: move use of AP_AHRS_NAVEKF_AVAILABLE into cpp file
This is defined in AP_AHRS which we only get transitively in the header
2019-07-09 22:32:57 +10:00
Peter Barker 9f33fb6085 AP_Terrain: add missing AP_AHRS include 2019-07-09 22:32:57 +10:00
Peter Barker 00cfea03bc AP_Airspeed: add missing includes for AHRS 2019-07-09 22:32:57 +10:00
Peter Barker ec0a93ff9c AC_Avoidance: add missing includes for AP_AHRS 2019-07-09 22:32:57 +10:00
Peter Barker 1ebbe45fe1 GCS_MAVLink: split sending of RC_CHANNELS and RC_CHANNELS_RAW
Before this patch is applied we may never send the second message
because there's not room for it in the buffer and we can't return
failure-to-send (always interpreted as "retry") as we're in a void function.

Further, if you are on a mavlink2 connection we will not send out the
RC_CHANNELS_RAW message, depriving the user of any RC_CHANNELS messages.

This patch does have the drawback of doing more work on a mavlink1
connection - it has to fetch the data twice.  On the other hand, it also
allows the GCS to set the message rates independently for both
RC_CHANNELS and RC_CHANNELS_RAW so one or the other can be squelched.
That could be handy for reducing bandwidth if you know you're not using
more than 8 input channels.
2019-07-09 13:08:45 +10:00
Peter Barker 41bddf682f AP_Camera: remove unused includes 2019-07-09 12:47:18 +10:00
Peter Barker a966c75deb SITL: remove unused forward declaration of AP_Logger 2019-07-09 10:57:20 +10:00
Peter Barker b7fa43e630 AP_Tuning: tidy includes 2019-07-09 10:57:20 +10:00
Peter Barker c0f25a96fb AP_TECS: move include of logger to .cpp file 2019-07-09 10:57:20 +10:00
Peter Barker ce4cdfd497 AP_SpdHgtControl: remove unused includes 2019-07-09 10:57:20 +10:00
Peter Barker a5ff46950c AP_Soaring: move include of logger to .cpp file 2019-07-09 10:57:20 +10:00
Peter Barker a037920de4 AP_Mount: tidy use of AP_Logger.h 2019-07-09 10:57:20 +10:00
Peter Barker cb692c6946 APM_Control: move logger include to .cpp 2019-07-09 10:57:20 +10:00
Peter Barker e01ea2f5f9 SITL: support a count of baros 2019-07-09 10:01:23 +10:00
Peter Barker c283bb968b AP_Baro: support 0 detected simulated baros 2019-07-09 10:01:23 +10:00
Peter Barker 848a70acd4 AP_HAL_SITL: fix rebooting while in sensor config error loop 2019-07-09 10:01:23 +10:00
Peter Barker 7c102b90fa AP_Logger: use singletons when logging camera information 2019-07-09 09:32:39 +10:00
Peter Barker 01773d9025 AP_Camera: use singletons for relay and ahrs insead of storing references 2019-07-09 09:32:39 +10:00
Peter Barker c8353c1c13 GCS_MAVLink: fill target system and target component in MISSION_ITEM responses 2019-07-09 09:25:06 +10:00
Peter Barker fe8d631964 AP_HAL_SITL: ensure termination of readlink-derived progname 2019-07-08 13:18:22 +10:00
Andrew Tridgell 3b0bd67afb HAL_ChibiOS: enable CAN on Pixhawk6 2019-07-08 12:19:20 +10:00
Siddharth Purohit 76ff347026 AP_UAVCAN: remove singleton interface from slcan_router 2019-07-08 12:18:29 +10:00
Siddharth Purohit 2f153a3577 HAL_ChibiOS: remove singleton interface from slcan_router 2019-07-08 12:18:29 +10:00
Siddharth Purohit 28288a7329 BoardConfig_CAN: remove singleton interface for slcan_router 2019-07-08 12:18:29 +10:00
Siddharth Purohit 3e194903cc AP_UAVCAN: add Flow message to the sniffer test 2019-07-08 12:18:29 +10:00
Siddharth Purohit 67c925865c HAL_ChibiOS: add support for CAN on STM32H7 boards 2019-07-08 12:18:29 +10:00
Siddharth Purohit 1cd8e0e237 BoardConfig: set slcan can port to 0 as default
This is to ensure that can bus filters are actually used
2019-07-08 12:18:29 +10:00
Peter Barker b123abbe90 AP_Notify: add SITL Notify display 2019-07-08 10:56:54 +10:00
Peter Barker a61028c55d AP_HAL_ChibiOS: disable scripting if USE_FATFS=no 2019-07-08 09:55:46 +10:00
U-REDMOND\akolobov 6dd906f07f HAL_SITL: Integrating Silent Wings SITL with the sim_vehicle 2019-07-08 09:32:59 +10:00
U-REDMOND\akolobov 3330b62d3c SITL: aded support for SilentWings simulator 2019-07-08 09:32:59 +10:00
Randy Mackay bd3d352554 AC_Avoidance: remove comment from Dijkstra's 2019-07-07 04:08:34 -07:00
Randy Mackay 655ddd4ab3 AC_Avoidance: Dijkstra's ignores invalid polygon fences 2019-07-07 04:08:34 -07:00
Randy Mackay 614b0f6dc8 AP_Math: Polygon_intersects handles unclosed polygons 2019-07-07 04:08:34 -07:00
PraiseSatan bad5fb418d AP_RCProtocol: added ibus RX support to recieve channel data from ibus transmitters. 2019-07-07 20:49:18 +10:00
Andrew Tridgell 92783bccfa AP_NavEKF3: don't allow height datum reset when not on ground 2019-07-07 19:20:32 +10:00
Andrew Tridgell e8d9a1fae9 AP_NavEKF2: don't allow height datum reset when not on ground 2019-07-07 19:20:32 +10:00
Andrew Tridgell 3f9e48951b AP_NavEKF3: set terrainState to zero on height datum reset 2019-07-07 19:20:32 +10:00
Andrew Tridgell f5fd38aef2 AP_NavEKF2: set terrainState to zero on height datum reset 2019-07-07 19:20:32 +10:00
Andrew Tridgell f3fc910abe AP_NavEKF3: continuously update gpsGoodToAlign
use it to determine how to handle a height datum reset
2019-07-07 19:20:32 +10:00
Andrew Tridgell 9372073f63 AP_NavEKF2: continuously update gpsGoodToAlign
use it to determine how to handle a height datum reset
2019-07-07 19:20:32 +10:00
Andrew Tridgell b9a5794671 AP_NavEKF3: ensure that both AMSL and relative alt are correct after a reset
this forces the EKF origin to the GPS alt on a height datum reset if
we have GPS lock. If we don't do this then the reported AMSL alt will
drift over time away from the GPS alt when we reset while on the
ground
2019-07-07 19:20:32 +10:00
Andrew Tridgell 20ebb2500b AP_NavEKF2: ensure that both AMSL and relative alt are correct after a reset
this forces the EKF origin to the GPS alt on a height datum reset if
we have GPS lock. If we don't do this then the reported AMSL alt will
drift over time away from the GPS alt when we reset while on the
ground
2019-07-07 19:20:32 +10:00
Andrew Tridgell a38b030c41 RC_Channel: disable kill IMU with HAL_MINIMIZE_FEATURES 2019-07-07 19:03:01 +10:00
Andrew Tridgell 8e5c0fa32b AP_InertialSensor: disable kill IMUs with HAL_MINIMIZE_FEATURES 2019-07-07 19:03:01 +10:00
Andrew Tridgell 2208689893 AP_NavEKF3: don't use disabled gyros in opticalflow takeoff detection 2019-07-07 19:03:01 +10:00
Andrew Tridgell ddef40fa3d AP_NavEKF2: don't use disabled gyros in opticalflow takeoff detection 2019-07-07 19:03:01 +10:00
Andrew Tridgell a45e364252 AP_Mount: don't use disabled IMUs in solo gimbal code 2019-07-07 19:03:01 +10:00
Andrew Tridgell 3dd7e7e83a AP_AHRS: only use enabled IMUs in DCM
honor the INS_USE parameters for DCM
2019-07-07 19:03:01 +10:00
Andrew Tridgell 09d3392aee AP_InertialSensor: zero accumulators on time step
this zeros the delta angle and delta velocity accumulators when a
sensor is unavailable for a period of 0.1s. This prevents garbage
values being passed into the EKF when a sensor dies and then becomes
available again some time later
2019-07-07 19:03:01 +10:00
Andrew Tridgell 3444e82ef9 AP_InertialSensor: added RC switch for killing IMUs 2019-07-07 19:03:01 +10:00
Andrew Tridgell 30d27147a8 RC_Channel: added RC switch for killing IMUs 2019-07-07 19:03:01 +10:00
Andrew Tridgell 898150e460 HAL_ChibiOS: cope with calling delay_microseconds_boost() multiple times
needed for updated IMU wait code
2019-07-07 19:03:01 +10:00
Andrew Tridgell 053f0cb689 AP_InertialSensor: try much harder to get all IMU samples
this we ensures we get new data for all active IMUs on each loop,
rather than sometimes returning with some IMUs not having data.

This matters as not having a sample on an IMU for a single loop can
cause an EKF IMU failover, which will degrade the learned bias
variances

The issue is usually only seen under high load, such as requesting a
loop rate beyond what the hardware is capable of
2019-07-07 19:03:01 +10:00
Andrew Tridgell 209bca162c AP_NavEKF3: added inactive bias learning
this allows for biases on inactive IMUs to be learned so that an IMU
switch within an EKF lane does not cause a jump in the IMU data
2019-07-07 19:03:01 +10:00
Andrew Tridgell 1c4c5a6850 AP_NavEKF2: learn gyro biases for inactive gyros
this allows us to learn the gyro biases each lane would need if it had
to switch to another gyro due to a sensor failure. This prevents a
sudden change in gyro bias on IMU failure
2019-07-07 19:03:01 +10:00
Andrew Tridgell 05bd0cb9f4 APM_Control: added decay_I() function
used by VTOL planes to decay integrator on fixed wing components when
at very low airspeed
2019-07-07 18:16:47 +10:00
Randy Mackay 030eab0f86 AR_WPNav: stop vehicle if OA processing fails 2019-07-07 06:46:26 +09:00
Randy Mackay 951ded1f51 AP_OAPathPlanner: report errors to caller 2019-07-07 06:46:26 +09:00
Michael du Breuil 104164d2e4 AP_Scripting: Tighten range checks on library calls 2019-07-06 09:01:13 -07:00
Peter Barker ce45baa034 AP_NavEKF3: factor out and logging functions, reuse for 2nd core 2019-07-06 19:05:51 +10:00
Peter Barker 6a0a466f42 AP_NavEKF2: factor out and logging functions, reuse for 2nd core 2019-07-06 19:05:51 +10:00
Peter Barker 9732940220 AP_AHRS: navekf: add Log_Write access point 2019-07-06 19:05:51 +10:00
Peter Barker f3f364de26 AP_NavEKF3: move logging in from AP_Logger 2019-07-06 19:05:51 +10:00
Peter Barker 5175d23cc1 AP_NavEKF2: move logging in from AP_Logger 2019-07-06 19:05:51 +10:00
Peter Barker e009b7aee5 AP_Logger: move logging of EKF packets out to EKF 2019-07-06 19:05:51 +10:00
Peter Barker c6533723de GCS_Param: correct sending of parameters of length 16 2019-07-06 18:06:17 +10:00
Andrew Tridgell 5ffb8bb546 AP_HAL: enable GPIO scripting on the Disco 2019-07-06 09:02:54 +10:00
Andrew Tridgell 2bab0efc41 HAL_Linux: implement HAL_GPIO_SCRIPT support
this allows Linux boards to trigger an external script on GPIO
writes. This can be hooked up to relays with either RC options or
mavlink or mission items to trigger actions that can be scripted
2019-07-06 09:02:54 +10:00
Andrew Tridgell 8a49c84d57 AP_Motors: fixed col max and min for dual heli
fixes H_SV_MAN behaviour
2019-07-06 08:57:18 +10:00
Andrew Tridgell 0f4c54aaa6 AP_RCProtocol: fixed a overflow in SRXL decoder
thanks to coverity 343308 and Peter for noticing
2019-07-06 08:53:44 +10:00
Andrew Tridgell 626c632859 SITL: fixed pitch constraint on fixed wing takeoff
fixes issue with jet takeoff
2019-07-05 20:12:22 +10:00
Andrew Tridgell 5bfb6ced84 AP_GPS: fixed u-blox F9 auto configuration 2019-07-05 13:31:40 +10:00
Peter Barker 502f74f0d9 AP_Logger: switch to using stderr for log structure debug
The console output doesn't seem to appear anywhere now.
2019-07-05 12:05:27 +10:00
Peter Barker 288952b5a2 AP_Logger: reserve W for watts as a unit 2019-07-05 12:05:04 +10:00
Peter Barker c515d17a4a AP_ServoRelayEvents: use Relay singleton 2019-07-03 23:59:24 -07:00
Peter Barker 8e5ec84317 AP_Relay: add AP::relay() to get relay singleton 2019-07-03 23:59:24 -07:00
Rajat Singhal 82413a1528 SITL: JSBSim: Fix comments 2019-07-03 23:58:22 -07:00
Peter Barker 39b17e42d0 AP_HAL_SITL: add missing include for AP_BoardConfig.h 2019-07-04 13:57:40 +10:00
Peter Barker ebd8170a15 GCS_MAVLink: add missing include for AP_RTC 2019-07-04 13:57:40 +10:00
Peter Barker 3d91547039 AP_Logger: add missing include for AP_RTC 2019-07-04 13:57:40 +10:00
Peter Barker cee3d8086b AP_InternalError: move include of BoardConfig to cpp
This breaks an include loop when building for skyviper-v2450
2019-07-04 13:57:40 +10:00
Atxheli 7f3cb09da2 correct comment placement for second led 2019-07-04 08:36:33 +10:00
Hwurzburg a9783de61c correct include paths, uncomment alarm pin, fix conflict with rssi 2019-07-04 08:36:33 +10:00
Hwurzburg 3e3d7b8e7f Change to "include" style for new board, fix to allow LED to be used as status indicator 2019-07-04 08:36:33 +10:00
Hwurzburg 10838387c5 Split Omnibus F4 pro and non-pro into two boards to allow pro boards to have 8 pwm outputs 2019-07-04 08:36:33 +10:00
Andrew Tridgell 5151416080 AP_NavEKF3: force first EKF lane when disarmed
this ensures we consistently fly with EKF lane1 if it is healthy at
the point we arm. Otherwise the choice of lane will be a lottery.

This is important as many systems have quite different filtering and
vibration characteristics on their different IMUs. We by default
enable fast sampling only on the first IMU for example, which means
the 2nd and 3rd IMUs are more vulnerable to high freq causing
aliasing.
2019-07-04 06:48:23 +10:00
Andrew Tridgell 567c902e75 AP_NavEKF2: force first EKF lane when disarmed
this ensures we consistently fly with EKF lane1 if it is healthy at
the point we arm. Otherwise the choice of lane will be a lottery.

This is important as many systems have quite different filtering and
vibration characteristics on their different IMUs. We by default
enable fast sampling only on the first IMU for example, which means
the 2nd and 3rd IMUs are more vulnerable to high freq causing
aliasing.
2019-07-04 06:48:23 +10:00
Tom Pittenger bf11746da5 AP_AHRS: allow EKF_TYPE==10 to send a good status report
Some GUIs, including DroneKit, will consider GPS locations invalid if the EKF status is not good
2019-07-03 21:22:09 +10:00
Peter Barker e58eae3c48 AP_Mount: remove unneeded typedefs
Also note that one of these was incorrectly sized.
2019-07-03 16:12:40 +09:00
Peter Barker 08b2676a8f AP_Notify: add comments explaining tonealarm tone format 2019-07-03 17:05:06 +10:00
Andrew Tridgell 2eb09b2910 SITL: simple implementation of a fast jet
just increase the weight and the rest can be done with params
2019-07-03 08:05:09 +10:00
Peter Barker 84eff51539 AP_Arming: remove stray comment on removed parameter
Almost certainly a rebase issue
2019-07-02 10:03:41 +10:00
Peter Barker f31b7b5772 GCS_MAVLink: remove stray undef of undefined macro 2019-07-02 10:02:55 +10:00
Alexey Kozin e5988f7153 AP_HAL_ChibiOS: fix voltage sensor connected to fmu adc 2019-07-02 06:42:11 +10:00
Peter Barker 7b52c41287 AP_Compass: fix example by instantiating serial_manager 2019-07-01 19:11:03 +10:00
Peter Barker ef2589738d AP_NavEKF3: use beacon singleton 2019-07-01 07:20:58 +09:00
Peter Barker 82df167ad4 AP_NavEKF2: use beacon singleton 2019-07-01 07:20:58 +09:00
Peter Barker d9c30f489f AP_Logger: use beacon singleton 2019-07-01 07:20:58 +09:00
Peter Barker 2bcaaf5aaf AP_AHRS: remove handling of beacon 2019-07-01 07:20:58 +09:00
Peter Barker 04ebb9de0b AP_Airspeed: use send_to_active_channels for airspeed_autocal 2019-06-29 16:04:26 +10:00
bugobliterator 7d4a758059 hwdef: fix default battery monitor pins for CubeOrange 2019-06-28 14:18:11 +10:00
bugobliterator 71ee4d573f AP_BattMonitor: add battery pin config for CubeOrange 2019-06-28 14:18:11 +10:00
Michael du Breuil cfa54d4ca4 AP_Module: update example baro include 2019-06-27 14:56:21 +10:00
Michael du Breuil ca65b214af AP_TECS: Include needed AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil 99ff84168c AP_Terrain: Remove unneeded includes 2019-06-27 14:56:21 +10:00
Michael du Breuil e43605cc9b AP_Airspeed: Remove a number of unneeded top level includes 2019-06-27 14:56:21 +10:00
Michael du Breuil a6623bfad3 AP_HAL_SITL: Fix missing include for logger.h 2019-06-27 14:56:21 +10:00
Michael du Breuil b7bca441e5 SITL: Fix a number of includes that were coming in via AP_Airspeed 2019-06-27 14:56:21 +10:00
Michael du Breuil 1226eb825a AP_AHRS: Reduce scope of AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil 1a7502b413 AP_VisualOdom: Remove uneeded include 2019-06-27 14:56:21 +10:00
Michael du Breuil 7a03b8faac AP_InertialNav: Remove undeeded includes 2019-06-27 14:56:21 +10:00
Michael du Breuil 9b162563d6 AP_Advanced_Failsafe: Reduce scope of AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil b624f6f008 AP_NavEKF3: Reduce scope of AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil f04e47fc17 AP_NavEKF2: Reduce scope of AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil 6385e3ceac AP_TempCalibration: Include needed AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil 9ed3242c06 AP_Tuning: Reduce header scope 2019-06-27 14:56:21 +10:00
Michael du Breuil 18e979fd4f GCS_MAVLink: Include needed AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil 631b4380e1 AP_OSD: Include needed AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil 6480786ab2 AP_Mount: Cleanup SoloGimalEKF headers further 2019-06-27 14:56:21 +10:00
Michael du Breuil eeca59d1ef AP_Arming: Include needed AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil 2dcbe5a49b AP_ADSB: Include needed AP_Baro.h 2019-06-27 14:56:21 +10:00
Peter Barker 61e261caf5 AP_Soaring: remove definition of 'N' macro in favour of scoped variable 2019-06-27 14:40:44 +10:00
Peter Barker 54ba686855 AP_InternalError: add bit for asking for a non-existant gcs backend 2019-06-27 07:54:45 +10:00
Michael du Breuil 67898d7320 AP_FrSky_Telem: Don't statically allocate the statustext_queue
This saves 280 bytes of RAM
2019-06-26 11:59:41 +10:00
Michael du Breuil f955a4e4d5 GCS_MAVLink: Don't retain a FrSky instance if we aren't using it
Saves 96 bytes of RAM
2019-06-26 11:59:41 +10:00
Michael du Breuil 59e62ca2fc AP_FrSky_Telem: Make init return false if we failed to init 2019-06-26 11:59:41 +10:00
Peter Barker 278ac5e6ed GCS_MAVLink: correct deferred body timing debug 2019-06-25 19:59:49 +10:00
Peter Barker feddaabc42 GCS_MAVLink: handle out-of-time to send messages in parent class 2019-06-25 10:29:40 +10:00
Andrew Tridgell 88111ef81a AP_BattMonitor: reset failsafe flags when we reset battery remaining 2019-06-25 09:56:25 +10:00
Andrew Tridgell f28df4dff1 GCS_MAVLink: support MAV_CMD_BATTERY_RESET command 2019-06-25 09:56:25 +10:00
Andrew Tridgell 11518857b6 AP_BattMonitor: added reset_remaining() API
used to allow battery swap before takeoff
2019-06-25 09:56:25 +10:00
Peter Barker a55c40949b GCS_MAVLink: remove pointless protocol parameter to setup_uart 2019-06-25 09:47:08 +10:00
Peter Barker ca449cd979 GCS_MAVLink: stop pointlessly passing serial manager around 2019-06-25 09:47:08 +10:00
Peter Barker 45fab82345 GCS_MAVLink: eliminate redundant static pointer to serialmanager 2019-06-25 09:47:08 +10:00
Randy Mackay 0b62641a46 AC_Avoidance: fix Dijkstra's iteration through polygon fence points 2019-06-25 00:32:18 +08:00
Peter Barker afd63c05ec AP_Tuning: ignore tuning selector switch unless valid RC input 2019-06-25 00:31:54 +08:00
Peter Barker 288b13868b AP_Tuning: debounce RC input 2019-06-25 00:31:54 +08:00
Andrew Tridgell b6dbb8f464 GCS_MAVLink: always show AHRS healthy with EKF type 10
this fixes an issue noticed by Marco with xplane
2019-06-25 00:28:45 +08:00
Andrew Tridgell 5ac2aad2f8 AP_Mission: fixed valgrind error on writing mission items 2019-06-24 18:19:14 +08:00
Andrew Tridgell 0ca71ba725 AP_HAL: added get_last_armed_change() Util function 2019-06-21 11:40:53 +10:00
Andrew Tridgell 8fc8bc4d84 AP_Arming: notify logging system of an arming failure 2019-06-21 11:40:53 +10:00
Andrew Tridgell dd3eec2a38 AP_Logger: persist logging for 15s after disarm or arming failure
this will provide useful information in logs on disarms in flight or
reasons for arming failure
2019-06-21 11:40:53 +10:00
Randy Mackay df6c666740 AP_Common: add AP_ExpandingGeneric to reduce code size 2019-06-20 15:09:23 +09:00
Randy Mackay 4ef3005d2c AP_Common: add AP_ExpandingArray delete 2019-06-20 15:09:23 +09:00
Randy Mackay 578023483c AC_Avoidance: Dijkstra's expanding arrays use 32 elements per chunk 2019-06-20 15:09:23 +09:00
Randy Mackay 2cb89d9a02 AP_Common: expanding array uses realloc
also make chunk_size const and recommend factor of 2
also reduce top level array's initial size to 32 elements
2019-06-20 15:09:23 +09:00
Randy Mackay da645c32ff AC_Avoidance: Dijkstra's specifies expanding array chunk sizes
also add check that number of polygon points is less than 255
2019-06-20 15:09:23 +09:00
Randy Mackay 073ce8c3db AP_ExpandingArray: add class description and remove default constructor
also made the following changes:
replaced delete with free
renamed chunk_ptr typedef to chunk_ptr_t
2019-06-20 15:09:23 +09:00
Randy Mackay 48a7f468bf AC_Avoidance: AP_OADijkstra and OAVisGraph use AP_ExpandingArray 2019-06-20 15:09:23 +09:00
Randy Mackay 528e7c60b0 AP_Common: add AP_ExpandingArray class 2019-06-20 15:09:23 +09:00
Peter Barker 1ff3cd442d AP_Mission: fix example by instantiating a GCS object 2019-06-20 13:40:28 +10:00
Peter Barker c11da6a85d GCS_MAVLink: routing example: use GCS_Dummy in place of custom GCS 2019-06-20 11:41:19 +10:00
Jaaaky 061b4b7e70 AP_Airspeed: convert to unix style end-of-line 2019-06-19 16:39:09 +09:00
Andrew Tridgell 767968026a AP_AdvancedFailsafe: added docs for AFS output pins 2019-06-18 17:20:55 +01:00
Michael du Breuil 75c62154b5 AP_HAL_SITL: Add missing override declarations 2019-06-18 00:06:32 -07:00
Michael du Breuil a34ac14ec5 AP_HAL_ChibiOS: Make BOARD_FLASH_SIZE available at configure time 2019-06-18 00:06:32 -07:00
Michael du Breuil 0a7cf77de4 AP_AHRS: Update function descriptions in header 2019-06-18 00:06:32 -07:00
Michael du Breuil 0ed3c547fd AP_Scripting: Disable by default, fix a nullable type, update README 2019-06-18 00:06:32 -07:00
Peter Barker ccbf3234f7 AP_HAL_SITL: return RC protocol being decoded 2019-06-18 11:35:38 +10:00
Peter Barker a9c4f1d0d5 AP_HAL_Linux: return RC protocol being decoded 2019-06-18 11:35:38 +10:00
Peter Barker 1f4de871da AP_HAL_ChibiOS: return RC protocol being decoded 2019-06-18 11:35:38 +10:00
Peter Barker 92111eea61 AP_HAL: require HALs implement rcin.protocol() to return RC protocol 2019-06-18 11:35:38 +10:00
Peter Barker 7bca6d5ec0 AP_Logger: log RC protocol each time a log is opened 2019-06-18 11:35:38 +10:00
Peter Barker 0963957b31 GCS_MAVLink: correct GCS_Dummy firmware version 2019-06-18 10:54:01 +10:00
Peter Barker c39a622653 GCS_MAVLink: take sw_version from AP_FWVersion struct 2019-06-18 10:54:01 +10:00
Peter Barker b48c729bb1 AP_Common: add os_sw_version to AP_FWVersion 2019-06-18 10:54:01 +10:00
Peter Barker 8f8851271a RC_Channel: add mode-changing options to Plane RC channel options 2019-06-18 10:48:47 +10:00
Peter Barker a2c4bfea0c GCS_MAVLink: use send_to_active_channels for parameters 2019-06-18 10:27:56 +10:00
vierfuffzig 7780e8ed00 AP_HAL_ChibiOS: add support for AIO and OSD board types
this allows init on board variant without onboard baro
2019-06-18 10:10:22 +10:00
Michael du Breuil 6e0cceff0d AP_Common: Remove extra comparison from longitude_scale() 2019-06-18 10:09:09 +10:00
Peter Barker 4e5842a150 AP_Common: add initialised() method to Location
Sometimes code paths are crossed when they shouldn't be.  This method
can help in the short term if a codepath is calling methods on a
Location when it is not initialised, but generally a vehicle should be
calling position_ok() and other methods rather than this one.
2019-06-18 09:07:56 +09:00
Michael du Breuil 4aa33bec49 AP_AHRS: Remove AP_GPS.h from AP_AHRS.h 2019-06-18 10:02:05 +10:00
Michael du Breuil 197804412a APM_Control: Fix AP_GPS include 2019-06-18 10:02:05 +10:00
Michael du Breuil a09ead5819 AP_ADSB: Fix AP_GPS include 2019-06-18 10:02:05 +10:00
Michael du Breuil 3194b073ca AP_AdvancedFailsafe: Use AP_GPS singleton 2019-06-18 10:02:05 +10:00
Michael du Breuil 157a3b1e34 AP_Airspeed: Fix AP_GPS.h include and use the singleton 2019-06-18 10:02:05 +10:00
Michael du Breuil c70107cabb AP_Arming: Fix AP_GPS.h include 2019-06-18 10:02:05 +10:00
Michael du Breuil 889d9b7348 AP_Frsky: Fix AP_GPS.h include 2019-06-18 10:02:05 +10:00
Michael du Breuil f6f432a785 AP_Landing: Fix AP_GPS.h include, use a ref to the singleton 2019-06-18 10:02:05 +10:00
Michael du Breuil f8750a6d18 AP_Logger: Fix AP_GPS.h include 2019-06-18 10:02:05 +10:00
Michael du Breuil 459e6704b9 AP_Module: Fix AP_GPS.h include 2019-06-18 10:02:05 +10:00
Michael du Breuil fbd19f30e7 AP_Mount: Reduce header includes 2019-06-18 10:02:05 +10:00
Michael du Breuil 892b687c09 AP_NavEKF2: Fix AP_GPS.h include 2019-06-18 10:02:05 +10:00
Michael du Breuil be74b631fe AP_NavEKF3: Fix AP_GPS.h include 2019-06-18 10:02:05 +10:00
Michael du Breuil 2ab8a2318e AP_OSD: Fix AP_GPS.h include 2019-06-18 10:02:05 +10:00
Michael du Breuil cbcd959290 AP_Terrain: Fix AP_GPS.h include 2019-06-18 10:02:05 +10:00
Michael du Breuil be7afe346b GCS_MAVLink: Fix AP_GPS include 2019-06-18 10:02:05 +10:00
Michael du Breuil 6317355390 RC_Channel: Fix AP_GPS include 2019-06-18 10:02:05 +10:00
Michael du Breuil 23439de39a AP_Logger: Don't include AP_BattMonitor which we don't need 2019-06-18 10:02:05 +10:00
Michael du Breuil ba4c589ff2 AP_OSD: Fix depending upon AP_Logger for AP_BattMonitor header 2019-06-18 10:02:05 +10:00
Michael du Breuil f6b8bf49a1 AP_Motors: Simplify the example includes 2019-06-18 10:02:05 +10:00
Michael du Breuil 8c00102259 GCS_MAVLink: Reduce scoping on AP_BattMonitor include 2019-06-18 10:02:05 +10:00
Michael du Breuil eed710db5f AP_GPS: Fix a lot of unneded example includes 2019-06-18 10:02:05 +10:00
Michael du Breuil 9fc954b030 AP_Compass: Reduce scope of BattMonitor include 2019-06-18 10:02:05 +10:00
Michael du Breuil 03a4dda810 AP_Mount: Remove unneeded dependency on AP_Airspeed, and bad example 2019-06-18 10:02:05 +10:00
Peter Barker b902316139 AP_HAL: remove buggy write implementation 2019-06-17 17:20:57 +10:00
Pierre Kancir 209b0300a5 AP_Rangefinder: fix compilation for Bebop 2019-06-14 18:56:05 -07:00
Randy Mackay bba81b2794 AC_Avoidance: Dijkstra's exits early if polygon fence disabled 2019-06-14 08:06:17 +09:00
Peter Barker da5d5c9203 AP_Math: add tests for Vector2 2019-06-13 19:36:49 +10:00
Jaaaky fb311208ab AP_AHRS: Fix DCM gndVelADS on groundspeed_vector() with airspeed_use 2019-06-13 16:31:12 +10:00
Randy Mackay fb284ff26a AP_ServoRelayEvents: minor formatting fix 2019-06-13 09:51:21 +09:00
Tatsuya Yamaguchi 012fcae388 AP_ServoRelayEvents: allow DO_SET_SERVO commands while rc pass-thru 2019-06-13 09:51:21 +09:00
Tatsuya Yamaguchi f9547fa28e SRV_Channel: allow DO_SET_SERVO commands while rc pass-thru 2019-06-13 09:51:21 +09:00
Rishabh ce48b82500 AC_WPNav: remove brake 2019-06-13 09:02:46 +09:00
Peter Barker c59dde78c6 AP_HAL_SITL: dump stack trace as part of panic() 2019-06-13 09:25:42 +10:00
Peter Barker dd68b14f46 AP_HAL_SITL: move dump_strack_trace into HAL 2019-06-13 09:25:42 +10:00
Peter Barker c3a99c8eb0 AP_HAL: move dump_strack_trace into HAL
Use a weak definition to allow subclasses to override
2019-06-13 09:25:42 +10:00
Randy Mackay cceab9c88f AC_Avoidance: fix BendyRuler when outside polygon fence 2019-06-12 14:54:33 +09:00
Peter Barker cc7044b360 AP_Scheduler: include internal error count in PM log message 2019-06-12 10:05:59 +10:00
Peter Barker 733b7b7f1a AP_Logger: include internal error count in log structure 2019-06-12 10:05:59 +10:00
Peter Barker 5f877294c9 AP_Logger: re-add lost validate_structure loop
Lost with bad rebase
2019-06-12 10:05:59 +10:00
Peter Barker cd0265644d AP_Logger: disable float-mult-zero sanity check for the time being 2019-06-12 10:05:59 +10:00
Peter Barker ae85994c59 GCS_MAVLink: include internal error count as errors4 in SYS_STATUS 2019-06-12 10:05:59 +10:00
Peter Barker 256b6703f1 AP_InternalError: keep count of number of errors having occured 2019-06-12 10:05:59 +10:00
Andrew Tridgell 99316a191c AP_AHRS: added check_lane_switch() 2019-06-12 09:52:20 +10:00
Andrew Tridgell 60831c2878 AP_NavEKF3: added checkLaneSwitch()
this allows the vehicle code to ask the EKF to change lanes if it is
about to do an EKF failsafe
2019-06-12 09:52:20 +10:00
Andrew Tridgell 3073c4da7a AP_NavEKF2: added checkLaneSwitch()
this allows the vehicle code to ask the EKF to change lanes if it is
about to do an EKF failsafe
2019-06-12 09:52:20 +10:00
Peter Barker f385a4a329 GCS_Common: fix compiler warnings on missing parentheses 2019-06-11 21:50:53 +10:00
Randy Mackay 6ed09d83f3 GCS_MAVLink: send_home_position uses const Location reference 2019-06-11 13:13:22 +09:00
Randy Mackay 0a86bbdc9a AC_Avoidance: add license to cpp file 2019-06-11 13:13:22 +09:00
Randy Mackay 70e9881880 AR_WPNav: integrate OAPathPlanner 2019-06-11 13:13:22 +09:00
Randy Mackay af80070ed9 AP_OAPathPlanner: path planning around obstacles
implements both bendy ruler and dijkstra's algorithms

includes many changes after peer review including:
removed unused airspeed and turn-rate arguments
renamed constants to start with OA_BENDYRULER_
removed fence_ptr check from update function that could cause bendy ruler to fail when fences were disabled
AC_Fence's fence-margin is not used and instead we always use a hard-coded 2m limit
vehicle's heading is used instead of ground-course when speed is below 0.2m/s
static assert added to ensure OA_BENDYRULER_BERAING_INC constant is defined correctly
replace BAD_MARGIN/GOOD_MARGIN with FLT_MAX/-FLT_MAX
use calc_margin_from_xxx function's return values
calc-margin-from-proximity-sensors fails if copy-locations fails
remove debug
remove unused singletons

and other changes including:
integrate fence rename to get_boundary_points
adapt to fence return point and duplicate final point from not being returned
create bendyrule and dijkstra objects on init
add pre-arm-check to ensure they've been created successfully
Dijkstra's detects polygon fence changes
minor fix to Dijkstra's return path
allow update_visgraph to accept 0,0 as extra point

and these fixes from peer reviews:
remove unused methods
add note about dangers of operator[]
reduce memory consuption of ShortPathNode
remove unused methods including print_all_nodes and print_shortest_path
replace OA_DIJKSTRA_POLYGON_VISGRAPH_INFINITY_CM with FLT_MAX
update method gets check that ekf origin has been set
fix indexing bug in inner fence creation
fix whitespace error
find-node-from-id uses switch statement instead of 3 IF statements
update_visgraph comments added to clarify usage of extra_position argument
find-closest-node-idx always uses node_index instead of int16_t
static assert that OA_DIJKSTRA_POLYGON_FENCE_PTS < 255
some looping style changes
AP_OABendyRuler: fix to ground course calculation
AP_OAPathPlanner: pre_arm_check writes to caller's buffer
remove unnecessary hal and stdio.h includes
rename fence_ptr local variable to fence
add sanity check to OADijkstra's set_fence_margin
add sanity check to OABendyRuler's set_config
BendyRuler's test_bearing local constants changed to be float constants
BendyRuler's ahrs_home made local constant
BendyRuler's proximity margin calcs lose margin_found local variable (use FLT_MAX instead)
BendyRuler's calc-margin-from-circular-fence performance improvement by removing one sqrt
AP_OABendyRuler: fix probe directions to be 5deg offsets from dir to destination
AP_OADijkstra: fixes after peer review
remove unnecesary initialisations
replace safe_sqrt(sq()) with length()
remove unnecessary block
comment fixes
AP_OAPathPlanner: add logging of final an intermediate location
2019-06-11 13:13:22 +09:00
Randy Mackay c7b1ad3443 AP_Logger: add Write_OA 2019-06-11 13:13:22 +09:00
Randy Mackay beb9ecbdcb AC_Fence: add get_boundary_update_ms
this allows callers to detect changes in the underlying polygon fence
2019-06-11 13:13:22 +09:00
Randy Mackay 0f6e61bc33 AC_Fence: add is_polygon_valid accessor 2019-06-11 13:13:22 +09:00
Randy Mackay 9c3812e384 AP_Proximity: move copy_locations to backend
also remove unused get_locations
also fix comment for copy_locations method
2019-06-11 13:13:22 +09:00
Tom Pittenger b792fe4b26 AP_Proximity: add Location* object and accessors 2019-06-11 13:13:22 +09:00
Randy Mackay c2bcc0d5f0 AP_Math: define Vector2f::perpendicular 2019-06-11 13:13:22 +09:00
Randy Mackay 071e340827 AP_Math: Polygon_closest_distance_line returns neg numbers
value is negative distance from intersection to p2
2019-06-11 13:13:22 +09:00
Andrew Tridgell 6eb816fd3b AP_Math: add Polygon_closest_distance_line
Also add optimisations
2019-06-11 13:13:22 +09:00
Andrew Tridgell a5fd7ac5ca AP_Math: add vector2f::closest_distance_between_line_and_point_squared
also add vector2f::closest_distance_between_line_and_point and vector2f::closest_distance_between_lines_squared
2019-06-11 13:13:22 +09:00
Andrew Tridgell 2457bf71d4 AP_Math: add simplified vector2f::closest_point
this simpler version assumes the line segment originates at the origin
2019-06-11 13:13:22 +09:00
Andrew Tridgell c8e49259a0 AP_Math: add vector2f::closest_distance_between_radian_and_point_squared 2019-06-11 13:13:22 +09:00
Andrew Tridgell dbf337e1b3 AP_Math: move closest_point to cpp 2019-06-11 13:13:22 +09:00
Andrew Tridgell bfc28dfde9 AP_Math: move normalize, reflect, project and perpendicular to cpp 2019-06-11 13:13:22 +09:00
Andrew Tridgell 01e541b7d1 AP_Math: minor formatting changes to length method 2019-06-11 13:13:22 +09:00
Andrew Tridgell 4c4de1f021 AP_Math: vector2f::length_squared always returns float 2019-06-11 13:13:22 +09:00
Andrew Tridgell 46617e6c72 AP_Math: remove unused include from Vector2 2019-06-11 13:13:22 +09:00
Andrew Tridgell 69781cda42 AP_Math: add Vector2::angle 2019-06-11 13:13:22 +09:00
Rajat Singhal bc22aeb4da GCS_Mavlink: Correct format specifier in UART panic message 2019-06-11 13:36:03 +10:00
Peter Barker 68d7e0c22f AP_RangeFinder: correct macro being used for parameter definition 2019-06-11 12:47:56 +10:00
Peter Barker 8cd5e3103f AP_RangeFinder: remove use of removed AP_PARAM_FLAG_IGNORE_ENABLE 2019-06-11 11:38:10 +09:00
Michael du Breuil 40753ab14e AP_Param: Remove non functional AP_Param ignore flags 2019-06-11 10:28:45 +10:00
Michael du Breuil cc7d13e9ef AP_BattMonitor: Remove param ignore flags 2019-06-11 10:28:45 +10:00
heitiane 931367a7ea AP_HAL: fix RCOutput, RCOutput2 and RCInputToRCOutput examples to prevent the failure of reading and writing channels. 2019-06-11 10:27:44 +10:00
Peter Barker a025794bae GCS_MAVLink: correct is_streaming check and update of is-streaming mask 2019-06-11 09:26:10 +10:00
Andrew Tridgell 51e187342b HAL_ChibiOS: move the power control changes to be only CubeBlack
This aims to fix #11455. I have been unable to reproduce the issue,
which leaves me thinking it is either a bootloader difference or a hw
difference between pixhawk1 clones and real pixhawk1 boards
2019-06-09 16:56:14 +10:00
Andrew Tridgell df4fc0fff0 AP_NavEKF2: default EK2_MAG_EF_LIM to 50
this was supposed to be part of the original PR (agreed with Paul to
enable by default)
2019-06-08 20:24:58 +10:00
Siddharth Purohit a926effee5 hwdef: iomcu set pin mode to input for autodetecting heater control level 2019-06-08 14:31:01 +10:00
Siddharth Purohit f23746053d AP_IOMCU_FW: autodetect active high/low on heater control pin 2019-06-08 14:31:01 +10:00
Peter Hall aa32a0d143 AP_Windvane: fix NMEA vehicle to earth frame 2019-06-08 09:48:03 +09:00
Randy Mackay 607f996232 AC_Avoid: restructure logic of adjust_velocity_circle_fence 2019-06-08 09:35:36 +09:00
Randy Mackay a96c146758 AR_AttitudeControl: set-throttle-out-stop considered same as running speed controller
update the speed-last-ms time when set-throttle-out-stop runs or else the desired throttle will not be acceleration limited when the desired speed is next increased above zero
2019-06-08 09:35:36 +09:00
Randy Mackay e846840a52 AC_Avoid: fix stopping at circular fence 2019-06-08 09:35:36 +09:00
Peter Barker e061df0f6d AP_HAL_SITL: attempt to dump stack trace as part of segv handler 2019-06-07 22:03:41 +10:00
Andrew Tridgell 02403d9b93 HAL_SITL: added support for exit on panic()
used by autotest server
2019-06-07 20:33:13 +10:00
Peter Barker 35d4555be0 AC_Avoid: improve documentation of AVOID_ENABLE options 2019-06-07 17:37:00 +09:00
Lucas De Marchi e66de36016 HAL_ChibiOS: fix I2C transaction without stop condition
Start using i2cSoftStop() instead of i2cStop() so the peripheral
continues to be enabled and with non-gated clock.  This allows time for
the I2C peripheral to continue the ack or stop.
2019-06-06 09:27:47 -07:00
Andy Piper 31ea3466af AP_InertialSensor: Post-filter logging takes precedence over sensor-rate logging. 2019-06-06 17:09:17 +10:00
Andy Piper 52e4676564 Filter: Allow all filter frequencies to be 16bit. 2019-06-06 17:09:17 +10:00
Andy Piper 36878e9b3c AP_InertialSensor: Allow all filter frequencies to be 16bit. 2019-06-06 17:09:17 +10:00
Andy Piper fff81a2163 AP_InertialSensor: Make sure the LPF output is used by the notch input. 2019-06-06 17:09:17 +10:00
Andy Piper 1a8475cf9f Filter: Decouple notch filter configuration from the filter itself.
Allow multiple notch filters to be instantiated using the same configuration.
2019-06-06 17:09:17 +10:00
Andy Piper 18d403c3ac AP_InertialSensor: Rework notch filter allocation and sampling
https://github.com/ArduPilot/ardupilot/issues/11346

Allocate a notch filter per-IMU.
Update the notch filters in the backend at the sensor sample rate.
Allow raw logging of post-filtered gyro and accel values.
2019-06-06 17:09:17 +10:00
Andrew Tridgell 045bdf3478 AP_InternalError: removed unused internal error 2019-06-06 16:35:22 +10:00
Andrew Tridgell 91f80613dd AP_Logger: removed internal error for logging without sem 2019-06-06 16:35:22 +10:00
Peter Barker dce472745e AP_NavEKF3: take EAS2TAS from AHRS rather than airspeed 2019-06-06 12:44:36 +10:00
Peter Barker 11f31c2851 AP_NavEKF2: take EAS2TAS from AHRS rather than airspeed 2019-06-06 12:44:36 +10:00
Peter Barker 697b8f6b53 AP_AHRS: take EAS2TAS directly from Baro (rather than via airspeed) 2019-06-06 12:44:36 +10:00
Peter Barker 5cfba85095 AP_AirSpeed: take EAS2TAS directory from baro; use for all backends
Plane was only setting EAS2TAS in the primary frontend; calibration
expected it to be set on each instance.
2019-06-06 12:44:36 +10:00
Peter Barker 470e88f8b3 AP_Button: use send_to_active_channels() 2019-06-06 12:41:48 +10:00
Peter Barker 264a757095 GCS_MAVLink: add send_to_active_channels method 2019-06-06 12:41:48 +10:00
Peter Barker 4d46c801f2 GCS_MAVLink: panic in SITL if we fail to write to uart 2019-06-06 12:41:48 +10:00
Andrew Tridgell 73bc277470 HAL_ChibiOS: fixed KakuteF7 build
low on flash
2019-06-06 12:19:13 +10:00
Andrew Tridgell 2acaada884 HAL_ChibiOS: fixed OMNIBUSF7V2 build
ran out of flash for plane
2019-06-06 12:19:13 +10:00
Andrew Tridgell bfdf857b34 HAL_ChibiOS: fixed airbotf4 build 2019-06-06 12:19:13 +10:00
Peter Barker f2163fbc24 AC_WPNav: use singleton for getting AC_Avoid instance 2019-06-06 11:47:22 +10:00
Andrew Tridgell 614a059819 HAL_ChibiOS: convert more boards to using new sensor config system 2019-06-05 18:54:40 +10:00
Andrew Tridgell 4a8c307720 AP_UAVCAN: fixed build error of F4 boards with CAN 2019-06-05 18:54:40 +10:00
Peter Barker 4c88a1e9de AP_RangeFinder: remove dangling update_instance declaration 2019-06-04 19:36:57 +09:00
Peter Barker 503aeba7b7 AP_RPM: remove dangling update_instance declaration 2019-06-04 19:36:57 +09:00
Peter Barker d617904726 AP_Proximity: remove dangling update_instance declaration 2019-06-04 19:36:57 +09:00
Tatsuya Yamaguchi 18a43601cd RangeFinder: Add up to 10 RangeFinder logs 2019-06-04 19:11:11 +10:00
Peter Barker be9df7f600 AP_Logger: add a README.md to help locating units/mults/fieldtypes 2019-06-04 19:00:11 +10:00
Peter Barker b644df14d0 AP_Logger: move documentation for fieldtypes, units and mults to top 2019-06-04 19:00:11 +10:00
1iggy2 7323a5da9d AP_Motors: Added Octo I frame 2019-06-04 09:49:44 +09:00
ChristopherOlson fc84995fb9 AP_Motors:Heli - remove H_LAND_COL_MIN and replace with H_COL_MID 2019-06-04 09:48:03 +09:00
Peter Barker fb3f761fc7 AP_UAVCAN: fix redefinition of UAVCAN_NODE_POOL_BLOCK_SIZE warning 2019-06-04 10:25:15 +10:00
Peter Barker cbf6d44277 AP_RCProtocol: fix missing-declaration warning in example 2019-06-04 10:25:15 +10:00
Peter Barker 73c81519da AP_GPS: fix missing-declaration warning in example 2019-06-04 10:25:15 +10:00
Peter Barker e9160cd9d5 AC_Avoid: correct iteration through edges 2019-06-04 09:06:07 +09:00
Peter Barker cd6e5b48a1 AC_Avoid: move check for zero-desired-velocity into adjust_velocity_polygon
This is the method which divides by the length of this vector; the
check belongs in here.
2019-06-04 09:06:07 +09:00
Vincent 3177d24429 AP_HAL: Make linux hardware define more readable 2019-06-04 10:00:09 +10:00
Peter Barker bb14ec1a2c AP_Arming: make proximity sensor checks common 2019-06-04 08:45:34 +09:00
Peter Barker 99c56c1770 GCS_MAVLink: fix MAV.txp log field
This was being promoted to an unsigned.
2019-06-04 09:05:37 +10:00
Andrew Tridgell e9ed3540f1 AP_NavEKF2: constrain field by table after fusion
this should make for faster convergence
2019-06-03 12:21:29 +10:00
Andrew Tridgell 3835d2613e AP_NavEKF2: added EK2_MAG_EF_LIM parameter
this sets a limit on the difference between the earth field from the
WMM tables and the learned earth field inside the EKF. Setting it to
zero disables the feature. A positive value sets the limit in mGauss.
2019-06-03 12:21:29 +10:00
Andrew Tridgell 7206258587 AP_Compass: use new get_earth_field_ga() API 2019-06-03 12:21:29 +10:00
Andrew Tridgell be62bf32cb AP_Declination: added get_earth_field_ga() interface
this gives a more convenient API for getting the earth field as a
vector
2019-06-03 12:21:29 +10:00
Peter Hall 49003868fe AP_Windvane: add NMEA wind sensor type 2019-06-03 10:48:19 +09:00
Peter Hall fe38413ddc AP_SerialManger: add windvane serial type 2019-06-03 10:48:19 +09:00
Peter Hall ea4ecebfc4 AP_Math: add speed unit converstion defs 2019-06-03 10:48:19 +09:00
ChristopherOlson b6bfc8947f AP_Motors:Heli Governor - change rotor_rpm argument to a float 2019-06-03 07:53:01 +09:00
bnsgeyer f1a32d7872 AP_Motors: Tradheli- modified thrcrv and gov parameter group names 2019-06-03 07:53:01 +09:00
ChristopherOlson b1046c7b80 AP_Motors:Heli_RSC Governor - add method of droop compensation
- improve handling of outliers from speed sensor
 - change governor_tc variable to governor_thrcurve
 - remove equals zero from variable declarations
2019-06-03 07:53:01 +09:00
bnsgeyer 4120e29614 AP_Motors: Tradheli-complete conversion of throttle curve params to percent
add conversion for throttle curve params for upgrade
2019-06-03 07:53:01 +09:00
bnsgeyer 3629541a20 AP_Motors: Tradheli - implement enable params for throttle curve and governor 2019-06-03 07:53:01 +09:00
bnsgeyer 51d4029f03 AP_Motors: Tradheli - maintain consistent variable types as used in calcs
add override to declaration of new functions
2019-06-03 07:53:01 +09:00
ChristopherOlson cca58e393a AP_Motors:Heli_RSC - add support for rotor speed governor with droop speed control 2019-06-03 07:53:01 +09:00
Peter Barker 062ee71135 AC_Fence: simplify fence loading
There's only one caller to this, who didn't force loading - so remove
the unused parameter.

Also remove the _boundary_loaded boolean; it was only set to true in one
place - just before the sole caller called the function!
2019-05-30 16:03:58 +09:00
Andrew Tridgell ff603a1f0b HAL_ChibiOS: convert mini-pix 2019-05-30 15:39:57 +10:00
Andrew Tridgell 4548aa162b HAL_ChibiOS: convert mindpx-v2 2019-05-30 15:39:57 +10:00
Andrew Tridgell 91aa49ba6f HAL_ChibiOS: convert matek boards 2019-05-30 15:39:57 +10:00
Andrew Tridgell fca03bef8d HAL_ChibiOS: convert F4BY 2019-05-30 15:39:57 +10:00
Andrew Tridgell 8605060dfc HAL_ChibiOS: convert F35Lightning 2019-05-30 15:39:57 +10:00
Andrew Tridgell 288d5d6fe6 HAL_ChibiOS: convert DrotekP3Pro 2019-05-30 15:39:57 +10:00
Andrew Tridgell d90b05f685 HAL_ChibiOS: convert all fmuv5 boards to sensor config system 2019-05-30 15:39:57 +10:00
Andrew Tridgell 03bb94599b HAL_ChibiOS: support I2C sensor probes by bus mask 2019-05-30 15:39:57 +10:00
Andrew Tridgell fc1ec8a465 HAL_ChibiOS: convert airbot to new config 2019-05-30 15:39:57 +10:00
Andrew Tridgell 82b171582e HAL_ChibiOS: added sensor config for cube varients 2019-05-30 15:39:57 +10:00
Andrew Tridgell c36d76c213 HAL_ChibiOS: convert Pixhawk1 to new sensor config
saves 26k of flash, making 1M boards work for longer
2019-05-30 15:39:57 +10:00
Andrew Tridgell eae852962e HAL_ChibiOS: fixed case of no IMU, BARO or COMPASS config settings 2019-05-30 15:39:57 +10:00
Andrew Tridgell 068e6ea8d2 HAL_ChibiOS: convert KakuteF4 and KakuteF7 to new sensor config 2019-05-30 15:39:57 +10:00
Andrew Tridgell 1b0bf88c8f HAL_ChibiOS: convert crazyflie2 to new config 2019-05-30 15:39:57 +10:00
Andrew Tridgell b47ab5c8a9 HAL_ChibiOS: support I2C sensor config in hwdef.dat 2019-05-30 15:39:57 +10:00
Andrew Tridgell 4c5b651296 AP_HAL: removed board type for mRoControlZeroF7 2019-05-30 15:39:57 +10:00
Andrew Tridgell 38c775e6df AP_Compass: removed old mRoControlZeroF7 config 2019-05-30 15:39:57 +10:00
Andrew Tridgell aef343bfd0 AP_InertialSensor: removed old mRoControlZeroF7 config 2019-05-30 15:39:57 +10:00
Andrew Tridgell ceb9c3b83e HAL_ChibiOS: convert mRoControlZeroF7 to new sensor config 2019-05-30 15:39:57 +10:00
Andrew Tridgell 039e7366b0 AP_InertialSensor: support new sensor config setup 2019-05-30 15:39:57 +10:00
Andrew Tridgell 481ae22671 AP_Compass: support new sensor config setup 2019-05-30 15:39:57 +10:00
Andrew Tridgell f7b9368b94 AP_Baro: support new sensor config setup 2019-05-30 15:39:57 +10:00
Andrew Tridgell 5eb488303c HAL_ChibiOS: convert Pixracer to use new sensor config 2019-05-30 15:39:57 +10:00
Andrew Tridgell e198d552a8 HAL_ChibiOS: support IMU, COMPASS and BARO lines in hwdef.dat
this allows for main sensors to be set in hwdef.dat, making adding new
boards simpler
2019-05-30 15:39:57 +10:00
Andrew Tridgell 532b82b3a3 AP_Compass: use DRIVER_HMC5843 to match driver name 2019-05-30 15:39:57 +10:00
Tom Pittenger c67a585b68 AP_Proximity: increase angular resoluion to mavlink packet OBSTACLE_DISTANCE 2019-05-29 18:22:53 -07:00
Peter Barker 1c4b5b0d73 AP_Arming: move arm status statustext messages back into vehicles
Not all vehicle maintainers like having these emitted as part of normal
operations.
2019-05-30 07:37:30 +09:00
Peter Barker 61a2be1470 AP_Arming: change arm and disarm to account for Copter now using them 2019-05-30 07:37:30 +09:00
Peter Barker 75ae6b59b0 GCS_MAVLink: allow Copter to disallow mavlink disarm 2019-05-30 07:37:30 +09:00
Peter Barker 84b16ea3dd AP_Arming: move check for ARMING_CHECK_NONE back into relevant vehicles
Plane and Rover allow all prearm and arm checks to be bypassed with
ARMING_CHECK_NONE.  Not all vehicles allow this, so move this bypass
back into Plane and Rover.
2019-05-30 07:37:30 +09:00
Peter Barker e340873d88 GCS_MAVLink: canonicalise on success on commanded-to-arm-when-armed
This means the mavlink return value indicates the current arm status of
the vehicle rather than success/failure of transitioning to the armed or
disarmed state (where trying to arm when armed is considered a failure).

MAVLink is a lossy communication mechanism.  It would not be
unreasonable for a GCS to issue a disarm command multiple times to
increase the chances of the command getting through.
2019-05-30 07:37:30 +09:00
Peter Barker c38e5ba4fc RC_Channel: handle AUX_FUNC::ARMDISARM 2019-05-30 07:37:30 +09:00
Peter Barker b857d2c1af GCS_MAVLink: handle MAV_CMD_COMPONENT_ARM_DISARM 2019-05-30 07:37:30 +09:00
Peter Barker d67e68eb03 AP_Logger: move LOG_ARM_DISARM_MSG in 2019-05-30 07:37:30 +09:00
Peter Barker aff6cb424f AP_Arming: move Log_Write_Arm_Disarm in, make disarm virtual 2019-05-30 07:37:30 +09:00
Peter Barker d384827291 AP_Arming: add singleton 2019-05-30 07:37:30 +09:00
Andrew Tridgell 48ac028cd0 AP_OSD: take ahrs and baro semaphores
this ensures OSD data is self-consistent within each item
2019-05-30 08:33:12 +10:00
Andrew Tridgell 5023b51679 AP_Baro: added semaphore for safe multi-thread use of APIs 2019-05-30 08:33:12 +10:00
Peter Barker e4de5a17d1 AP_Math: add pitch-7 to rotation tests 2019-05-29 17:12:32 +10:00
Andrew Tridgell e2eda63d2c AP_Math: added new rotation for PITCH_7 2019-05-29 17:12:32 +10:00
Peter Barker 977fe09276 AP_Math: add a more complex polygon for Polygon_outside tests 2019-05-29 15:34:02 +10:00
Peter Barker d3971c18fa AP_Math: more tests for closed-vs-open polygons 2019-05-29 15:34:02 +10:00
Peter Barker d74e6db12e AP_Math: add more tests for Polygon_outside 2019-05-29 15:34:02 +10:00
Peter Barker da81c5fe39 AP_Beacon: do not include fence closing/duplicate point in polygon boundary 2019-05-29 15:34:02 +10:00
Peter Barker de9fa4c730 AC_Avoid: call Polygon_outside directly; avoids losing first point 2019-05-29 15:34:02 +10:00
Peter Barker 4be3a48275 AC_Avoid: adjust for renamed get_polygon_points 2019-05-29 15:34:02 +10:00
Peter Barker 2822c635ec AC_Fence: correct get_boundary_points to account for closing point
Also rename from get_polygon_points
2019-05-29 15:34:02 +10:00
Peter Barker 36fe9a18a0 AP_Math: make Polygon_outside cope with being passed unclosed polygons 2019-05-29 15:34:02 +10:00
Randy Mackay 2061621951 AP_Proximity: default YAW_CORR to 0
The default of 22 was good when the Lightware SF40C was our only proximity sensor but not good now that we have numerous options
2019-05-29 11:17:28 +09:00
Randy Mackay ff3d3d256c AP_Proximity: RPLidarA2 supports yaw-correction and orientation params 2019-05-29 11:17:28 +09:00
斯东Stone c0e8a443af AP_OpticalFlow: Correct CX-OF Data Format Sequence
Correct CX-OF (a.k.a. UART Version PMW3901) Data Format Sequence
2019-05-29 10:22:51 +09:00
Randy Mackay ce44d127c0 AR_WPNav: add is_destination_valid accessor 2019-05-29 09:40:05 +09:00
Peter Barker ab7ee4fefb AP_Common: Location.cpp: add sanity checks 2019-05-29 09:04:37 +09:00
Michael Oborne 6031f5b6a9 AP_GPS_UBLOX: add support for TIMEGPS message. used to get gps week 2019-05-29 09:48:17 +10:00
Peter Barker fc71e1ba53 AP_InternalError: add internal error for out-of-range bitmask ops 2019-05-28 09:43:17 +10:00
Peter Barker 9d4bdbf3d5 AP_Common: add sanity check into bitmask get/set
Also return false if we are asked about an out-of-bounds bit
2019-05-28 09:43:17 +10:00
Peter Hall 5839c1ebf6 SITL: Sailboat: write rpm and airspeed for windvane backends 2019-05-28 08:35:58 +09:00
Peter Hall f26e1dc8e8 AP_WindVane: add modern devices rev p cal 2019-05-28 08:35:58 +09:00
Peter Hall 9dba9867c6 AP_WindVane: mini onion 2019-05-28 08:35:58 +09:00
Peter Barker dbbf09d018 AP_Proximity: minor performance enhancements 2019-05-28 09:19:48 +10:00
Peter Barker 1c7a8c1509 AP_Beacon: correct parameter documentation to include SITL 2019-05-28 09:16:47 +10:00
Peter Barker 64aafb2af2 AP_Math: add Polygon_outside tests for long template instantiation 2019-05-28 09:08:07 +10:00
Peter Barker 51a0401383 AP_Math: correct Polygon_outside floating point instatiation
This routine was entemplatificated from the integer version, which was
designed to be perfect across representable ranges of points.  The
floating point version suffered from a rounding problem.
2019-05-28 09:08:07 +10:00
Peter Barker b35b65eed1 AP_Math: add GTEST suite for Polygon_outside 2019-05-28 09:08:07 +10:00
Peter Barker 1ce2424e49 AP_HAL_Linux: add required override keyword on configure_parity
Also remove virtual - doesn't make sense here.
2019-05-27 09:55:18 -07:00
Michael du Breuil a1fda8bc76 AP_BLHeli: Update to support newer targets and protocols 2019-05-25 09:37:56 +10:00
Lucas De Marchi 4f73881c4b AP_RangeFinder: TFMiniPlus: enforce minimum version 1.7.6
On this version of the firmware the command changed - support the new
command and only that one: it's not expected to have devices with the
older versions.
2019-05-24 01:47:04 -07:00
Lucas De Marchi b3a8496613 AP_RangeFinder: add support for Benewake TFMini Plus on I2C
This was tested with firmware 1.7.0 on the sensor.
2019-05-24 01:47:04 -07:00
Peter Barker f09efe0908 AP_Math: correct URL for Polygon_outside algorithm 2019-05-24 13:17:43 +10:00
Phillip Kocmoud 734abe3d7d hwdef: Correct typo for mRo x2.1-777 USB PID
This needed to match the firmware directory which contains the compiled binaries hosted at http://firmware.ardupilot.org so that MissionPlanner can automatically download and update firmware.
2019-05-23 11:05:42 +10:00
Rajat Singhal 8097b0ede3 SITL: Gazebo: Fixed comment, typos 2019-05-23 08:23:37 +09:00
Peter Barker 1b90643751 GCS_MAVLink: report more internal errors in SYS_STATUS 2019-05-23 07:29:29 +10:00
Peter Barker 43152a416c AC_Avoid: stop taking references to ahrs, fence, proximity and beacon 2019-05-22 07:48:02 -06:00
Peter Barker b086b39f89 AP_Proximity: add AP::proximity() singleton getter 2019-05-22 07:48:02 -06:00
Peter Barker 8ce4f73550 AP_Beacon: add singleton 2019-05-22 07:48:02 -06:00
Peter Barker a7c5f5a6c8 AP_Mission: break out a convert_MISSION_ITEM_to_MISSION_ITEM_INT method
AP_Mission: remove unused mission_cmd_to_mavlink

AP_Mission: eliminate mavlink_to_mission_cmd (use mavlink_int_to_mission_cmd)
2019-05-22 08:53:45 +10:00
Peter Barker 8911e67900 AP_Rally: adjust to allow for uploading via the mission item protocol
AP_Rally: add a set_rally_total method

Rally: remove restriction of only setting rally points below the param count

Rally: implement truncate/append interface
2019-05-22 08:53:45 +10:00
Peter Barker d0105c8fa7 GCS_MAVLink: factor mission handling, use for Rally
GCS_MAVLink: allow all mission types to be cleared

GCS_MAVLink: remove unused parameters from handle-mission-count
2019-05-22 08:53:45 +10:00
Peter Barker aaf98f942f AP_InternalError: add internal error for link errors in mission protocol 2019-05-22 08:53:45 +10:00
Peter Barker a5f5b4349c AP_Logger: add a Write_Rally method 2019-05-22 08:53:45 +10:00
alancaro2013 a1557184d5 AP_RangeFinder: Modified uLanding parse to check device version.
US-D1 version ID was changed to 2 from 0. This alteration will prevent
past US-D1s, with version ID 0, from being 3-byte parsed.
2019-05-22 08:20:42 +10:00
Andrew Tridgell 19ace7cace RC_Channel: guarantee logging of RCIN on switch changes 2019-05-22 07:37:56 +10:00
Pierre Kancir 3fa419e132 AP_Baro: fix LPS22H on I2C 2019-05-22 07:37:20 +10:00
Pierre Kancir 2348fa4201 AP_Baro: probe HAL_BARO_LPS22H_I2C 2019-05-22 07:37:20 +10:00
Pierre Kancir a4330f90b1 AP_HAL: add HAL_BARO_LPS22H_I2C 2019-05-22 07:37:20 +10:00
Stone white 8b7b5f0db9 AP_OpticalFlow: Make PX4FLOW work on all external I2C buses 2019-05-21 09:44:26 +10:00
Francisco Ferreira 869a369cc0 AP_AHRS: support NMEA output 2019-05-21 09:41:15 +10:00
Francisco Ferreira e06556a677 AP_SerialManager: support NMEA output 2019-05-21 09:41:15 +10:00
Francisco Ferreira 80093f41b0 AP_NMEA_Output: new library for writing NMEA to serial ports 2019-05-21 09:41:15 +10:00
Francisco Ferreira 0e33907cf7 AP_HAL_SITL: change NMEA output to use new macro 2019-05-21 09:41:15 +10:00
Francisco Ferreira 6e95a144ef AP_Math: add macro for m/s to knots convertion 2019-05-21 09:41:15 +10:00
Peter Barker 32a6f0026a AP_OSD: add mutex against maniplating sf windows from different threads 2019-05-21 09:21:56 +10:00
Peter Barker 02e34c95c9 AP_Notify: add mutex against maniplating sf windows from different threads 2019-05-21 09:21:56 +10:00
Peter Barker 2fa1f041e3 AP_Notify: add SITL RGBLed 2019-05-21 09:21:56 +10:00
murata 9ed38eaf7b AP_OpticalFlow: Change to collected CRC header 2019-05-21 09:19:19 +10:00
murata c6bcb1d54c AP_Math: Collect CRC16 into CRC file
AP_Math: Collect CRC16 into CRC file
2019-05-21 09:19:19 +10:00
Patrick José Pereira dc238946b0 AP_ROMFS: Add missing header guard
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2019-05-20 23:50:23 +01:00
Patrick José Pereira b54399b9a7 AP_ICEngine: Add missing header guard
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2019-05-20 23:50:23 +01:00
Patrick José Pereira fe3d4e2c3b AP_HAL: Utility: Add missing header guard in packetise
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2019-05-20 23:50:23 +01:00
Patrick José Pereira c4825a6d02 AP_Button: Add missing header guard
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2019-05-20 23:50:23 +01:00
Jaaaky f21e4d833c AP_NavEKF3: Fix GPS < 3D empty PreArm: msg-as EKF2 2019-05-20 16:57:57 +10:00
Andrew Tridgell 4888583e17 AP_Scheduler: use task -3 for wait_for_sample() 2019-05-17 09:00:22 +10:00
Andrew Tridgell e801821f0c AP_Scheduler: log SPI and I2C counters in PM msg 2019-05-17 08:56:06 +10:00
Andrew Tridgell 6b1374e55c AP_Logger: log SPI and I2C counters in PM msg 2019-05-17 08:56:06 +10:00
Andrew Tridgell 59678840a8 HAL_ChibiOS: log SPI and I2C counters 2019-05-17 08:56:06 +10:00
Andrew Tridgell e64c5ef354 AP_HAL: added SPI and I2C counters 2019-05-17 08:56:06 +10:00
Andrew Tridgell e2d863498b GCS_MAVLink: clear last msgs when done
this makes MON and WDOG logs clearer
2019-05-17 08:56:06 +10:00
Peter Barker 0a3fe32209 AP_HAL_SITL: log watchdog reset 2019-05-16 17:21:24 +10:00
Peter Barker f5190d1bcc AP_HAL_ChibiOS: use logger().WriteCritical(...) for WDOG message 2019-05-16 17:21:24 +10:00
Peter Barker 0225b6817a AP_Logger: examples: add test for Write and WriteCritical 2019-05-16 17:21:24 +10:00
Peter Barker 54eff7eafc AP_Logger: add WriteCritical method to AP::logger()
For callers who emphatically want their custom messages to be written out.
2019-05-16 17:21:24 +10:00
Andrew Tridgell 2fc95f88ae AP_Notify: fixed handling of mavlink LED override 2019-05-16 15:17:37 +10:00
Peter Barker 9dc4e17564 AP_LeakDetector: add missing override keywords 2019-05-15 21:05:20 +10:00
Peter Barker 93c33fda1d RangeFinder: correct bad include of old semaphore library 2019-05-15 19:34:31 +09:00
Peter Barker 18999aab72 AP_OpticalFlow: correct bad include of old semaphore library 2019-05-15 19:34:31 +09:00
Siddharth Purohit 479c238177 RangeFinder: add support for rangefinder sensor over can 2019-05-15 16:01:53 +09:00
Siddharth Purohit e866a574dd AP_UAVCAN:add hex flow sensor message 2019-05-15 16:01:53 +09:00
Siddharth Purohit c4360264cf AP_UAVCAN: add support for hereflow and range sensor message over can 2019-05-15 16:01:53 +09:00
Siddharth Purohit 67fcd773a6 OpticalFlow: add support for HereFlow message over can 2019-05-15 16:01:53 +09:00
Andrew Tridgell 0708b65c2d AP_HAL_ChibiOS: added const for PersistentData 2019-05-15 15:33:48 +10:00
Andrew Tridgell 670015b30e AP_AHRS: added const for PersistentData 2019-05-15 15:33:48 +10:00
Andrew Tridgell ba9b92c4af AP_Compass: rename to EXPECT_DELAY_MS() 2019-05-15 15:33:48 +10:00
Andrew Tridgell 6fa69c2297 AP_Logger: rename to EXPECT_DELAY_MS() 2019-05-15 15:33:48 +10:00
Andrew Tridgell 3823ba539c AP_InertialSensor: rename to EXPECT_DELAY_MS() 2019-05-15 15:33:48 +10:00
Andrew Tridgell 48302427c7 HAL_ChibiOS: rename to EXPECT_DELAY_MS() 2019-05-15 15:33:48 +10:00
Andrew Tridgell 911a99b79e AP_HAL: removed hal argument to EXPECT_DELAY_MS() 2019-05-15 15:33:48 +10:00
Andrew Tridgell f8bcdf9d3a HAL_SITL: fixed cygwin build error 2019-05-15 15:33:48 +10:00
Andrew Tridgell 85ce10adfd AP_Math: fixed test build 2019-05-15 15:33:48 +10:00
Andrew Tridgell c1b201d051 HAL_SITL: fixed comment typo 2019-05-15 15:33:48 +10:00
Andrew Tridgell d2c9db3f1f AP_FlashStorage: fixed build error with -O0 2019-05-15 15:33:48 +10:00
Andrew Tridgell a7eb85e1c5 HAL_ChibiOS: cope with nesting of expected_delay_ms() 2019-05-15 15:33:48 +10:00
Andrew Tridgell 64c723fd31 GCS_MAVLink: record mavlink msg IDs for watchdog 2019-05-15 15:33:48 +10:00
Andrew Tridgell 8d0bca6ba9 HAL_ChibiOS: log mavlink IDs and semaphore lines for watchdog
this gives a better chance of tracking down a hang
2019-05-15 15:33:48 +10:00
Andrew Tridgell c786674442 AP_HAL: record mavlink msg IDs and semaphore line 2019-05-15 15:33:48 +10:00
Andrew Tridgell 4cdfe6bac3 AP_Logger: use EXPECT_DELAY() macro 2019-05-15 15:33:48 +10:00
Andrew Tridgell 02326ac52c AP_InertialSensor: use EXPECT_DELAY() macro 2019-05-15 15:33:48 +10:00
Andrew Tridgell 1b8cbfc6a4 HAL_ChibiOS: use EXPECT_DELAY() macro 2019-05-15 15:33:48 +10:00
Andrew Tridgell ecc6f15dc0 AP_Compass: use EXPECT_DELAY() macro 2019-05-15 15:33:48 +10:00
Andrew Tridgell b1ed77bee9 AP_HAL: added EXPECT_DELAY() macro
this prevents nesting errors in use of EXPECT_DELAY(), ensuring we
always close the expected delay
2019-05-15 15:33:48 +10:00
Andrew Tridgell 3772f58be9 GCS_MAVLink: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 1443f0c3f9 AP_UAVCAN: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 24636aeb45 AP_ToshibaCAN: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 09792d3056 AP_RangeFinder: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 37936a125f AP_RAMTRON: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell b3b59c7298 AP_OSD: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 0de65ca734 AP_Notify: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell a3b283708b AP_IRLock: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 4e769730c9 AP_InertialSensor: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 916b3003e1 AP_HAL_SITL: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell a159b01b26 AP_HAL_Linux: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell d368d95aa7 HAL_ChibiOS: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 9f5a598697 AP_GPS: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 9e7929adf6 AP_Compass: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 71e91c953a AP_BattMonitor: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 097519926d AP_Baro: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell f8741f2e2a AP_Avoidance: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 03fb0b803b AP_Airspeed: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 11ceacfdb6 AP_AHRS: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 75397c1734 AP_Common: removed old Semaphore.h
now moved to AP_HAL/Semaphores.h
2019-05-15 15:33:48 +10:00
Andrew Tridgell 8f973da4b5 AP_HAL: moved the WITH_SEMAPHORE() logic into AP_HAL
this is needed to allow us to record the location of a blocking
semaphore to track down bugs where we have a semaphore deadlock
2019-05-15 15:33:48 +10:00
Andrew Tridgell e3c80bf08f HAL_ChibiOS: fixed bootloader build 2019-05-15 15:33:48 +10:00
Andrew Tridgell d7a0eb42ee HAL_ChibiOS: added logging of watchdog data
log MON msgs in the leadup to a watchdog, and log a WDOG message after
a watchdog reset
2019-05-15 15:33:48 +10:00
Andrew Tridgell b217771dbf AP_InternalError: persist internal error values 2019-05-15 15:33:48 +10:00
Andrew Tridgell 45d5e7f6d2 AP_HAL: added persistance for internal errors 2019-05-15 15:33:48 +10:00
Andrew Tridgell 49061aae67 AP_Scheduler: use persistent_data for current_task 2019-05-15 15:33:48 +10:00
Andrew Tridgell 0873e54cc0 HAL_SITL: fixed build error 2019-05-15 15:33:48 +10:00
Andrew Tridgell 4b298aa80e AP_HAL: add scheduler state to persistent_data 2019-05-15 15:33:48 +10:00
Andrew Tridgell 9173989e63 AP_Mission: save waypoint number for watchdog reset 2019-05-15 15:33:48 +10:00
Andrew Tridgell ebf04e70fe AP_InternalError: don't panic on SITL watchdog_reset 2019-05-15 15:33:48 +10:00
Andrew Tridgell 6897cecea2 HAL_SITL: support watchdog reset in SITL
this only works for speedup 1, and does not initialise the physics
models correctly for internal models
2019-05-15 15:33:48 +10:00
Andrew Tridgell 74e56ab8cc AP_AHRS: use new persistent_data interface 2019-05-15 15:33:48 +10:00
Andrew Tridgell dbfe6b8019 HAL_ChibiOS: implement persistent_data for watchdog
this is a much simpler approach to persistent data
2019-05-15 15:33:48 +10:00
Andrew Tridgell 11c123e4da AP_HAL: added persistent_data structure
this is a much simpler way to save data for a watchdog reset
2019-05-15 15:33:48 +10:00
Tom Pittenger 1f3c3c853f GCS_MAVLink: move heartbeat sending to gcs instead of by vehicles 2019-05-14 10:54:45 -06:00
Peter Barker 0d1b7b90b9 AP_Param: avoid allocating 0 bytes if no defaults
This stopped CUAVv5 from booting.

Also add some protection against having different parsers for the same
file format used for counting parameters and actually using them.
2019-05-14 08:02:54 +10:00
Michael du Breuil 7b7bdd9bf8 AP_BattMonitor: Prevent capacity_remaining_pct from returning a large
value when low
2019-05-13 15:46:38 +10:00
Michael du Breuil 7871040bb6 AP_GPS: Pass an in range value for the param initilizer 2019-05-13 15:46:38 +10:00
Michael du Breuil 1040ca2d5e AP_Landing: Fix shadowing with deepstall
Was breaking clang 8 builds
2019-05-13 15:46:38 +10:00
Peter Barker 77985f509f AP_Follow: correct parameter descriptions 2019-05-13 15:34:01 +10:00
Michael du Breuil 8db8dcd2d2 AP_Scripting: Fix up some warnings
-Remove some non forward declared issues
  -Remove forced min/max values from the enum range check
2019-05-11 18:25:43 -07:00
Michael du Breuil bd256afee4 AP_Scripting: extract a common argument check helper
Allows an easy additional flag for saving flash space
2019-05-11 18:25:43 -07:00
Michael du Breuil 84c2b18e43 AP_Scripting: Support enum types, add millis() remove manual GCS wrapper
This introduces enum types for range checking/returns, adds a millis(() call
(this returns a uint32_t), and moves over to an auto generated version of the GCS binding
2019-05-11 18:25:43 -07:00
Michael du Breuil eddf926433 AP_Scripting: Add support for semaphore protection around singletons
This makes the assumption that the semaphore is available via reference, not pointer
For a singleton object this seems like a reasonable API restriction
2019-05-11 18:25:43 -07:00
Andrew Tridgell 6333494d99 HAL_ChibiOS: disable peripheral power on boot on fmuv3
then enable after 100ms, and let settle for 20ms. This is to fix an
issue with peripheral power on consistency with all fmuv3 boards

Thanks to Philip for the suggestion
2019-05-11 18:45:18 +10:00
Randy Mackay 0a5d6a430a AP_NavEKF3: accept optical flow data at up to 50hz 2019-05-11 16:23:57 +09:00
Randy Mackay e19d638c0f AP_NavEKF2: support higher optical flow updates rates 2019-05-11 16:23:57 +09:00
Randy Mackay 5c99f02c15 AP_LandingGear: minor format fix 2019-05-11 08:49:40 +09:00
Tom Pittenger fc710d8a81 RC_Channel: remove UINT16_MAX check, moved to mavlink handler 2019-05-10 15:30:54 -07:00
Tom Pittenger 4c641c6e2b GCS_MAVLink: comply with mavlink spec to ignore rc_override UINT16_MAX 2019-05-10 15:30:54 -07:00
Andrew Tridgell ce9e9d8670 HAL_ChibiOS: end scheduler boost on expected delay
we want timer thread to be higher priority than main thread while in a
long operation
2019-05-11 05:56:34 +10:00
Rajat Singhal 2c519d5176 SITL: Fix to sync to JSBSim simulation time
SITL: Additional fix to remove time-lag in JSBSim
2019-05-10 17:12:52 +10:00
Rajat Singhal dedb7e108f SITL: Added <time> tag to JSBSim output directive
Instructs JSBSim to transmit current simulation time which is used to sync with Ardupilot
2019-05-10 17:12:52 +10:00
Rajat Singhal 2317e73e0b SITL: JSBSim: Use rate_hz to specify timestep 2019-05-10 17:12:52 +10:00
Rajat Singhal 732f2e7a2e SITL: Change JSBSim mode to Batch mode, specify nice sleeptime
Previously it was run in realtime mode which doesn't support iterate command. Without setting sleeptime, defaults to 0.01s which slows down a lot
2019-05-10 17:12:52 +10:00
Phillip Kocmoud 069d054e5c AP_Baro.cpp: support DPS280 on SPI 2019-05-10 15:05:42 +10:00