Commit Graph

14567 Commits

Author SHA1 Message Date
Peter Barker 3ff4cd8c07 AP_HAL_PX4: use HAL_SEMAPHORE_BLOCK_FOREVER 2017-05-01 15:05:51 +01:00
Peter Barker b11ca5d538 AP_HAL_QURT: use HAL_SEMAPHORE_BLOCK_FOREVER 2017-05-01 15:05:51 +01:00
Peter Barker 2f79a5bd90 AP_HAL_SITL: use HAL_SEMAPHORE_BLOCK_FOREVER 2017-05-01 15:05:51 +01:00
Peter Barker 85e5de15c4 AP_HAL_VRBRAIN: use HAL_SEMAPHORE_BLOCK_FOREVER 2017-05-01 15:05:51 +01:00
Dr.-Ing. Amilcar Do Carmo Lucas 5b67b33310 AP_GPS: Remove un-used AP_GPS::inject_data_all() function 2017-05-01 13:06:18 +01:00
Dr.-Ing. Amilcar Do Carmo Lucas 5261654756 AP_GPS: Only inject RTCM data to the selected GPS device defined in GPS_INJECT_TO parameter 2017-05-01 13:06:18 +01:00
Michael du Breuil 12f83ecf75 AP_GPS: SBF if RAW_DATA is enabled check that the GPS is succeeding at logging 2017-05-01 13:04:52 +01:00
Peter Barker ac1484f60e DataFlash: clear format sent mask when backend starts new log 2017-05-01 19:16:47 +10:00
Andrew Tridgell 2876f1467c AP_InertialSensor: converge sensor rate quickly, then slowly
converge fast for the first 60 seconds, then more slowly to reduce
noise
2017-05-01 15:13:56 +10:00
Andrew Tridgell db25b6e966 AP_InertialSensor: estimate and log sensor rates for all IMUs
this adds IMU.GHz and IMU.AHz log fields so we can see the actual
observed sensor rates of each IMU
2017-05-01 15:06:46 +10:00
Andrew Tridgell 0a83281a29 DataFlash: added logging of actual sensor rates 2017-05-01 15:06:46 +10:00
Andrew Tridgell 49cc0965c0 AP_InertialSensor: separate handling of FIFO and non-FIFO sensors
FIFO sensors produce data at a well known rate, but samples come in
bunches, so we can't use the system clock to calculate deltaT.

non-FIFO sensors produce data when we sample them, but that rate is
less regular due to timing jitter.

For FIFO sensors this changes makes us use a learned sample rate,
which allows for different clock speeds on sensor and system board.

For non-FIFO sensors we use the system clock to measure deltaT

the overall effect is a fix for sensors that produce samples at other
than the claimed datasheet rate.
2017-05-01 15:06:46 +10:00
Andrew Tridgell 74eb7a7243 AP_InertialSensor: make SITL sensor rate match a Pixhawk1
use 760Hz 2nd gyro and 800 Hz 2nd accel
2017-05-01 15:06:46 +10:00
Andrew Tridgell 25cd16a275 AP_InertialSensor: fixed LSM303D registered sample rate
we are running the LSM303D at 1600Hz, and are sampling it at 1kHz. We
need to tell the AP_InertialSensor layer that samples will arrive at 1kHz
2017-05-01 15:06:46 +10:00
Andrew Tridgell 28030dd85c AP_AHRS: use SIM_ODOM_ENABLE to enable visual odom in SITL 2017-05-01 15:06:46 +10:00
Andrew Tridgell 67404e9660 SITL: added SIM_ODOM_ENABLE
for enabling visual odomotry simulated data
2017-05-01 15:06:46 +10:00
Andrew Tridgell 56aa467d60 AP_Scheduler: adjust debug levels
this is more useful for performance analysis of scheduler, using perf
command
2017-05-01 15:02:34 +10:00
Andrew Tridgell 5c62e4f4c2 GCS_MAVLink: don't use more than 1ms sending parameters
this reduces the scheduling misses when fetching parameters initially
2017-05-01 14:37:15 +10:00
Andrew Tridgell f465c37c65 GCS_MAVLink: added async parameter sending 2017-05-01 14:37:13 +10:00
Andrew Tridgell 5c4ca3bf0b GCS_MAVLink: added send_queued_parameters() 2017-05-01 14:36:52 +10:00
Andrew Tridgell f778954b84 GCS_MAVLink: split parameter functions into a separate file 2017-05-01 14:36:10 +10:00
Andrew Tridgell 60e4c0eb98 AP_Param: make count_parameters() thread safe 2017-05-01 14:36:10 +10:00
Andrew Tridgell 84114d067a SRV_Channels: added SRV_Channels::enable_by_mask() 2017-05-01 14:32:18 +10:00
Andrew Tridgell 2c4975ba31 AP_Motors: removed cork/push from AP_Motors
should be done by vehicle code if needed, so that AUX servos are sent
at the same time
2017-05-01 14:32:18 +10:00
Andrew Tridgell 5c028897a3 HAL_VRBrain: cope with nested cork/push 2017-05-01 14:32:18 +10:00
Andrew Tridgell 266f99db93 HAL_QURT: cope with nested cork/push 2017-05-01 14:32:18 +10:00
Andrew Tridgell 9bdb6838e6 HAL_PX4: cope with nested cork/push 2017-05-01 14:32:18 +10:00
Andrew Tridgell 9b297ef5a1 HAL_Linux: fixed nested cork/push
don't generate extra pulse sets if we nest
2017-05-01 14:32:18 +10:00
Andrew Tridgell f257a869ac HAL_SITL: make cork/push safe to call nested 2017-05-01 14:32:18 +10:00
priseborough 2d4eee0cce AP_NavEKF2: documentation update 2017-05-01 14:24:55 +10:00
priseborough 4a898037e9 AP_NavEKF3: documentation update 2017-05-01 14:24:55 +10:00
Andrew Tridgell a04aff7a7d AP_NavEKF3: added inter-EKF scheduling cooperation
this changes the stragegy for load levelling between EKF cores so it
works between EK2 and EK3, and with future estimators as well.

It allows us to run EK3 and EK2 at the same time with good scheduling
performance
2017-05-01 14:24:55 +10:00
Andrew Tridgell 2de8777669 AP_NavEKF2: added inter-EKF scheduling cooperation
this changes the stragegy for load levelling between EKF cores so it
works between EK2 and EK3, and with future estimators as well.

It allows us to run EK3 and EK2 at the same time with good scheduling
performance
2017-05-01 14:24:55 +10:00
Andrew Tridgell e62fdad12c AP_InertialSensor: added get_last_update_usec()
this will be used by the inter-EKF scheduling changes
2017-05-01 14:24:55 +10:00
Andrew Tridgell e78f55ef9b AP_AHRS: change order of EK2/EK3 update
if EK3 is our primary estimator when we want to run the EK3 update
first, so it gets time priority for inter-EKF scheduling.
2017-05-01 14:24:55 +10:00
Andrew Tridgell 4c36c77db1 AP_BoardConfig: split setup of safety switch init init_safety()
this allows it to be called late, so that servo outputs are fully
setup before the safety is disabled when BRD_SAFETYENABLE=0
2017-04-30 21:47:04 +10:00
Randy Mackay b1bd3f0364 AC_WPNav: yaw points along leash 2017-04-29 11:47:51 +09:00
priseborough 8ead9d6b19 DataFlash: Add logging of average EKF time step min/max 2017-04-29 11:03:44 +10:00
priseborough 0bf50fd56f AP_NavEKF3: Add monitoring of average EKF time step 2017-04-29 11:03:44 +10:00
priseborough e48f46c98b AP_NavEKF2: Add monitoring of average EKF time step 2017-04-29 11:03:44 +10:00
priseborough 7d777485d8 AP_NavEKF: Add monitoring of average EKF time step 2017-04-29 11:03:44 +10:00
priseborough 3ce81967ae AP_NavEKF3: Improve calculation and use of average EKF time step 2017-04-29 11:03:44 +10:00
priseborough 7abf9997e6 AP_NavEKF3: Correctly initialise dtIMUavg time step and apply LPF 2017-04-29 11:03:44 +10:00
Andrew Tridgell 4ce0a8e24e GCS_MAVLink: time limit GCS update() calls
and add performance counters
2017-04-28 16:09:12 -07:00
priseborough 1301b9797a AP_NavEKF3: Fix solution validity reporting bug
Fixes bug that causes relative position status to report as false when using optical flow and using range finder as the primary height sensor.
2017-04-28 17:19:23 +01:00
priseborough 082f429da3 AP_NavEKF2: Fix solution validity reporting bug
Fixes bug that causes relative position status to report as false when using optical flow and using range finder as the primary height sensor.
2017-04-28 17:19:23 +01:00
Leonard Hall 62c123bb08 AC_WPNav: correct straight line waypoint leash calculation
The former calculation was not correctly using the 3D leash
2017-04-28 17:58:34 +09:00
Andrew Tridgell d4e6720b01 AP_BattMonitor: added BATT_VOLT_TIMEO
this is useful for aircraft with very low C batteries, to prevent a low
voltage failsafe on takeoff. For long endurance aircraft low C batteries
are often used, and the voltage sags a lot on takeoff, but it fine for
the rest of the flight
2017-04-28 17:40:18 +10:00
Andrew Tridgell 0ccb3a7688 DataFlash: added logging of timing statistics 2017-04-28 17:19:39 +10:00
Andrew Tridgell adb281cd4e AP_NavEKF3: added timing statistics logging 2017-04-28 17:19:39 +10:00
Andrew Tridgell ee5c032f27 AP_NavEKF2: added recording of timing statistics 2017-04-28 17:19:39 +10:00
Andrew Tridgell ae3df89d17 AP_NavEKF: added ekf_timing structure 2017-04-28 17:19:39 +10:00
Leonard Hall ba011eef78 AC_WPNav: init z-axis feed-foward to correct stopping point calcs 2017-04-28 09:10:02 +09:00
Randy Mackay 3a397584a1 AC_PosControl: z-axis stopping point up to 3m above vehicle
Stopping point while descending remains at 2m for safety
2017-04-28 09:10:02 +09:00
Leonard Hall 6e92f74ca0 AC_PosControl: add clear_desired_velocity_ff_z method 2017-04-28 09:10:02 +09:00
Michael du Breuil 22ab8de4d2 AP_BattMonitor: SMBus: Fetch pack capacity 2017-04-28 00:36:10 +01:00
Michael du Breuil f919c409bb AP_BattMonitor: Remove redundant state copy
Every backend stored a instance reference, which wasn't used in most locations
which is redundant given that the state already tracks the instance for us as
well.
2017-04-28 00:36:10 +01:00
Michael du Breuil 3ab3face9b AP_BattMonitor: SMBus: Read serial number 2017-04-28 00:36:10 +01:00
Francisco Ferreira 7dca7933fa AP_HAL_PX4: fix UAVCAN armed state to depend on safety switch 2017-04-27 14:04:56 +01:00
Francisco Ferreira 965eda69f3 AP_HAL_PX4: remove left-overs of legacy UAVCAN support 2017-04-27 13:32:43 +01:00
Andrew Tridgell ca4cde9770 HAL_PX4: fixed safety switch light pattern
this was broken by the recent CAN merge. My fault for not checking it
carefully. We have to publish the armed state so the fmu driver on
pixracer can update the light
2017-04-27 13:32:43 +01:00
priseborough 596b20eb07 AP_NavEKF2: close perf counter when doing early return 2017-04-27 20:14:21 +10:00
priseborough 88469ce80c AP_NavEKF2: Reset covariance if bad mag fusion update 2017-04-27 20:14:21 +10:00
priseborough f208986d43 AP_NavEKF3: Reset covariance if bad mag fusion update 2017-04-27 20:14:21 +10:00
Andrew Tridgell 18b66f9eed AP_NavEKF3: fixed reset of coviariance matrix 2017-04-27 18:33:25 +10:00
Andrew Tridgell d799bacd7d AP_NavEKF2: fixed reset of coviariance matrix 2017-04-27 18:33:25 +10:00
Randy Mackay e2cf836734 AC_WPNav: add get_stopping_point
returns 3D stopping point, simply re-uses pos_controller methods
2017-04-27 14:36:22 +09:00
Randy Mackay e96332d346 AC_WPNav: reduce spline to straight twitch 2017-04-27 11:21:33 +09:00
Pierre Kancir f8d6b5fc9c AP_HAL_SITL: Allow to use a second type of gps for all type 2017-04-26 18:34:56 +01:00
karthik.desai 44d84fca15 AP_Beacon: Added Marvelmind Beacon class
Code cleanup, adhering to Ardupilot code style
Marvelmind code fixes
formatting fixes including replacing camel case with underscore
replaced puts with ::printf
removed unused debug and counter

Removed useless library includes.
Corrected spellings.
Update the last_update_ms so healthy() doesn't break.
2017-04-26 11:59:20 +09:00
Pierre Kancir f0f7ca2386 SITL: State constrain rover motor input between 1000 and 2000 2017-04-26 10:38:01 +10:00
Andrew Tridgell 1e69508322 SITL: added a vectored tilt tricopter quadplane 2017-04-24 16:54:41 +10:00
Andrew Tridgell 61fbaf0db7 SRV_Channel: added elevon and vtail functions
these allow for trimming and limit setting per channel, plus allow for
more than one set of elevon or vtail
2017-04-24 16:26:08 +10:00
Michael du Breuil d91f89d24b AP_GPS: Remove stale ublox config files
These configurations no longer (and haven't for quite awhile) matched the
desired command set or baud rates, loading them will still require the GPS
driver to tweak settings, or have AUTO_CONFIG turned off, which is a less
safe configuration.
2017-04-23 21:15:58 +01:00
Peter Barker 1ba59b446c AP_GPS: log ublox sw and hw versions on dataflash log start
This burns 41 bytes of RAM for each u-Blox GPS.
2017-04-23 21:04:17 +01:00
Peter Barker b7baca8d43 AP_GPS: move GPS type announcements into backend
See #4584
2017-04-23 21:04:17 +01:00
Peter Barker c46ea73426 AP_GPS: rename QURTGPS to QURT 2017-04-23 21:04:15 +01:00
Peter Barker 2354a0ec5a AP_GPS: ability to log GPS detection state to dataflash 2017-04-23 21:03:23 +01:00
Peter Barker 94a5e94ec9 AP_GPS: canonicalise statustext messages
Use "GPS %d" prefix, where %d is instance+1, to correspond
with parameters
2017-04-23 09:09:30 +10:00
Peter Barker 4334a92ac9 AP_GPS: remove unimplemented method declarations 2017-04-23 09:08:30 +10:00
Peter Barker 608d6d0a5f DataFlash: implement a printf-like Log_Write_MessageF method 2017-04-23 09:08:30 +10:00
karthik.desai 28a6ca7d75 Dataflash: add AP_Beacon logging 2017-04-22 10:54:59 +09:00
Randy Mackay b255c7b370 AP_NavEKF: add setOrigin 2017-04-22 10:37:31 +09:00
Randy Mackay 0af9433c8e AP_AHRS: add set_origin 2017-04-22 10:37:31 +09:00
Jacob Walser 96f503d9d1 AP_Baro: Fix GND_EXT_BUS @Values formatting 2017-04-21 21:11:40 +01:00
Michael du Breuil e0d49e6d84 AP_BattMonitor: Use a unified SMBus temperature interface 2017-04-21 00:38:41 +01:00
Michael du Breuil 9c3b97347a AP_BattMonitor: Unify read_word interface 2017-04-21 00:38:41 +01:00
Michael du Breuil 3319c3ccdc AP_BattMonitor: Use a common PEC helper 2017-04-21 00:38:41 +01:00
Randy Mackay 35a965ebc5 AC_Avoidance: add configurable margin
vehicle will attempt to stop MARGIN meters from objects in GPS modes
2017-04-20 18:11:43 +09:00
Randy Mackay 3ad5c3775e AP_Proximity: rename get_distances to get_horizontal_distances
Also fix existing bug in return
2017-04-20 18:11:43 +09:00
Randy Mackay 09e3d6b7f0 AP_Proximity_MAV: healthy if either horiz or vert positions received 2017-04-20 18:11:43 +09:00
Pierre Kancir 327ac07d54 AP_HAL_SITL: gps correct glitchs 2017-04-19 17:44:29 +01:00
Florent Martel 949aa4d9ca AP_Frsky_Telem: replace VDOP with extra GPS status bits
This removes VDOP (not really that useful) and replaces two of those
bits with GPS status info that now allows to differentiate between 3D
fix, DGPS, RTK Float, and RTK Fixed. This is written to maximize
backwards compatibility (by not shifting any other bits of the
gps_status variable)
2017-04-19 17:43:17 +01:00
Eugene Shamaev fb8f4f8cd1 AP_UAVCAN: ESC numbering correction 2017-04-19 14:28:48 +01:00
Michael du Breuil a96772e46e AP_BattMonitor: get Solo battery voltage from sum of cell voltages
Minimizes the number of transactions on the bus, and reduces the amount of noise we have to consider
2017-04-19 14:17:24 +01:00
Michael du Breuil 3b6d348241 DataFlash: Log battery temperature and cell voltages 2017-04-19 14:17:24 +01:00
Michael du Breuil 341ac701d1 GCS_MAVLink: report temperature information to the battery status report 2017-04-19 14:17:24 +01:00
Michael du Breuil 9cb0d8f99b GCS_MAVlink: Add battery cell backend 2017-04-19 14:17:24 +01:00
Michael du Breuil 8f24d211ce AP_BattMonitor: Solo add support for temperature and cells
Also fixs a buffer overflow when reading the ManufacturerData
2017-04-19 14:17:24 +01:00
Michael du Breuil 043b93d643 AP_BattMonitor: Maxell support temperature 2017-04-19 14:17:24 +01:00
Michael du Breuil de02bd52ed AP_BattMonitor: SMBus_Maxell request voltages 2017-04-19 14:17:24 +01:00
Michael du Breuil 121ebebfef AP_BattMonitor: Add temperature interface 2017-04-19 14:17:24 +01:00
Michael du Breuil e39ae6d48c AP_BattMonitor: Add cell monitoring 2017-04-19 14:17:24 +01:00
Eugene Shamaev c9f413da38 GCS_MAVLink: AOA, SSA message 2017-04-19 20:48:42 +10:00
Eugene Shamaev a144e79a50 DataFlash: logging of AOA and SSA 2017-04-19 20:48:42 +10:00
Eugene Shamaev 5c080ce875 AP_AHRS: calculation and reporting of AOA and SSA 2017-04-19 20:48:42 +10:00
Lucas De Marchi 915f10dc8a AP_HAL: SPIDevice: prefer nullptr for pointer 2017-04-19 01:36:58 -07:00
Vinicius Juvinski c3d5aaa21c AP_Notify: add AP_BoardLED support for BBBMini 2017-04-19 01:33:50 -07:00
Vinicius Juvinski 203073e543 AP_HAL: add LEDs for BBBMini
Use pins P8.9, P8.10 and P8.11
2017-04-19 01:33:35 -07:00
Lucas De Marchi 875538ccb5 AP_HAL_Linux: examples: small fixes to BusTest
- Fix char allocation
  - Fix coding style
  - Fix accessing dev->bus_type(): it's a function
2017-04-19 01:13:40 -07:00
hiro2233 0d1d430600 AP_HAL_Linux:examples: Example to test device bus with the new APM API. 2017-04-19 01:05:12 -07:00
hiro2233 be06c1e8ed AP_HAL_Linux:SPIDevice: Add functions to get possible spi registered device 2017-04-19 01:05:12 -07:00
hiro2233 1a8fa6ac5a AP_HAL:SPIDevice: Added functions for spi registered device. 2017-04-19 01:05:12 -07:00
Lucas De Marchi 16c1bc1b0e AP_HAL_Linux: Util: fix coding style for pointers 2017-04-19 00:19:40 -07:00
Lucas De Marchi 9aa2a3938c AP_HAL_Linux: Util: make get_custom_log_directory const override final
While at it, add final and override to mark this as being the overriden
final implementation of this method.

Thanks to Phillip Khandeliants (@khandeliants) for reporting.
2017-04-19 00:19:22 -07:00
Peter Barker 18d8f9ba9d AP_HAL: make get_custom_log_directory const 2017-04-19 00:11:49 -07:00
Lucas De Marchi 008e631147 AP_HAL_Linux: Util: fix overriden function signature
While at it, add final and override to mark this as being the overriden
final implementation of this method.

Thanks to Phillip Khandeliants (@khandeliants) for reporting.
2017-04-18 23:57:54 -07:00
Lucas De Marchi 6f952fe3dd AP_HAL_Linux: fix checking wrong value for pthread function
Thanks to Phillip Khandeliants (@khandeliants) for reporting.
2017-04-18 23:57:54 -07:00
Peter Barker 9324d8e251 Dataflash: emit io thread warnings much less frequently 2017-04-19 12:33:18 +09:00
Randy Mackay 0644314499 DataFlash: add visual odometry sensor logging 2017-04-19 11:04:40 +09:00
priseborough d2c89443df DataFlash: add logging for EKF body frame odometry fusion 2017-04-19 11:04:40 +09:00
priseborough 90cd46f4d7 AP_AHRS: simulate body frame odometry sensor 2017-04-19 11:04:40 +09:00
priseborough 3b82f60b08 AP_AHRS: add interface for use of visual odometry data 2017-04-19 11:04:40 +09:00
priseborough fb7104f4e3 AP_NavEKF3: add fusion method for body frame odometry data 2017-04-19 11:04:40 +09:00
Randy Mackay 595d37ec70 AP_VisualOdom: class accepts deltas from visual odom camera 2017-04-19 11:04:40 +09:00
Michael du Breuil 9c6fc1f122 AP_Landing: Correct deepstall param doc strings 2017-04-18 18:51:32 -07:00
Michael du Breuil 6f297deaf7 AP_GPS: Unify inject_data interface for all classes 2017-04-19 02:05:51 +01:00
Andrew Tridgell fe3e7e8153 AC_AttitudeControl: added get_throttle_mix()
and when we use set_throttle_mix_value(), set both desired and actual

thanks to Leonard for the suggestions
2017-04-19 09:08:43 +10:00
Niels Joubert 873915d82b AP_HAL_SITL: Support both SBPv0 and SBPv2 2017-04-18 18:25:54 +01:00
Niels Joubert abd408bf40 SITL: Support both SBPv0 and SBPv2 2017-04-18 18:25:54 +01:00
Niels Joubert 4bf9fc071c AP_GPS: Adds SBP Version 2: Swift Navigation Piksi Multi support
This commit adds:

- New driver for SBPv2
--- Support Piksi Multi, Swift Navigation's multi-band multi-constellation GPS
--- Proper parsing of SBP flags
--- Instant response to Piksi status changes (no more timeouts)
--- Support for Piksi Multi as a Single-Point-Positioning GPS or only onboard GPS
--- Incorporates horizontal and vertical accuracy estimates, and vdop.
- Updates driver for SBPv0
--- Continue support for previous Piksi

- Dispatches correct driver based on SBP version.
2017-04-18 18:25:54 +01:00
Andrew Tridgell 3415dfb46c HAL_PX4: implement split transfers for I2C 2017-04-18 18:15:04 +10:00
Andrew Tridgell 6a1c58b5a5 AP_Notify: fixed RGB led output to use SRV_Channels 2017-04-18 08:41:24 +10:00
Andrew Tridgell ce87bb7e39 SRV_Channel: added set_output_pwm_chan() 2017-04-18 08:41:24 +10:00
Eugene Shamaev 20f7d75b5a AP_UAVCAN: multiple messages when more than 15 servos are sent 2017-04-17 12:32:56 +01:00
Michael du Breuil 994790be0b Dataflash: Clamp GPS accuracy values 2017-04-17 11:37:22 +01:00
Eugene Shamaev fd866d3e20 AP_Baro: removal of legacy UAVCAN support 2017-04-17 17:27:18 +10:00
Eugene Shamaev 67a6e651d6 AP_BoardConfig: removal of legacy UAVCAN support 2017-04-17 17:27:18 +10:00
Eugene Shamaev 0c4a68314b AP_HAL_PX4: removal of legacy UAVCAN support 2017-04-17 17:27:18 +10:00
Eugene Shamaev b3d9126407 AP_Compass: removal of legacy UAVCAN support 2017-04-17 17:27:18 +10:00
Eugene Shamaev 8130d85b42 AP_GPS: removal of legacy UAVCAN support 2017-04-17 17:27:18 +10:00
Andrew Tridgell 92f060bdef SITL: improved single-motor tailsitter plane
give larger control surfaces and take account of thrust airflow over
control surfaces
2017-04-17 14:23:15 +10:00
Andrew Tridgell 6b6ad6ddf2 AP_AHRS: fixed wrap of yaw in AHRS_View 2017-04-17 12:15:19 +10:00
Andrew Tridgell 5758532326 AP_AHRS: make AHRS2 quaternion available 2017-04-16 14:01:36 +10:00
Andrew Tridgell 961da9deb8 HAL_SITL: use quaterion instead of eulers 2017-04-16 14:01:36 +10:00
Andrew Tridgell 4de0daa7a1 SITL: make quaternion state available outside SITL 2017-04-16 14:01:36 +10:00
Andrew Tridgell e440d22003 DataFlash: log DCM and SITL quaternion too 2017-04-16 14:01:36 +10:00
Andrew Tridgell 732915d417 DataFlash: log quaternions for EKF
useful for tailsitters
2017-04-16 14:01:36 +10:00
Andrew Tridgell 248773a7c8 AP_NavEKF3: allow access to quaternion for each instance 2017-04-16 14:01:36 +10:00
Andrew Tridgell 9f3c2cb704 AP_NavEKF2: allow access to quaternion for each instance 2017-04-16 14:01:36 +10:00
Andrew Tridgell 6f54eef857 AP_Motors: force roll motors to 0 in tailsitter when disarmed 2017-04-14 13:01:48 +10:00
Andrew Tridgell 7992a21f6f AP_IRLock: added override keyword 2017-04-14 08:47:39 +10:00
Andrew Tridgell 5d4400f1b7 AC_PrecLand: added BUS parameter for precision landing
allow selection of i2c bus for irlock
2017-04-14 08:47:39 +10:00
Andrew Tridgell 2eb363a950 AP_IRLock: allow specification of i2c bus 2017-04-14 08:47:39 +10:00
Pierre Kancir a6fe6024c1 StorageManager: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir 90661c528a RC_Channel: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir 720edc0fde PID: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir b2c8bc8074 GCS_MAVLink: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir 892a999ba5 Filter: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir 49c9e3c768 Dataflash: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir 4a2b90b707 AP_Rangefinder: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir 09364085ed AP_RPM: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir 7abd22a33e AP_Parachute: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir 45ca91808d AP_OpticalFlow: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir 2f50e865c2 AP_Notify: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir 0be022694a AP_Mount: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir f2812c1efd AP_Math: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir a2eeab4db7 AP_HAL_PX4: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir 8d357983ee AP_HAL_LINUX: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir 34199b4af0 AP_HAL: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir 292fa5f413 AP_GPS: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir 7fb816c812 AP_Declination: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir d3e27d8720 AP_Compass: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir 2200302081 AP_Common: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir 3f4a3e535b AP_Airspeed: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir fede727d38 AP_AHRS: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir 320c5e1b96 AC_PID: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Pierre Kancir 9c587d8d67 AP_BattMonitor: fix warning in example 2017-04-13 19:56:16 +01:00
Andre Kjellstrup 94eabed583 AP_BattMonitor: update volt and curr pin param descriptions 2017-04-13 13:30:23 +09:00
Tom Pittenger 1abeb03d2b AP_Math: remove HAL_CPU_CLASS_16 2017-04-12 17:25:30 -07:00
Tom Pittenger 1e84e07edc AP_HAL: remove HAL_CPU_CLASS_16 2017-04-12 17:25:30 -07:00
Lucas De Marchi 1adf247a60 AP_BoardConfig: fix board type number for aerofc
Types 7-12 are being used by vrbrain boards. Even if they are inside
another ifdef, they can't be the same because it's used by the BRD_TYPE
parameter.  Use 13 for aerofc since it was already the one being used in
the parameter description.

Thanks to Michael du Breuil for noticing it.
2017-04-12 11:46:55 -07:00
Peter Barker 8bb051af44 DataFlash: DataFlash_MAVLink: add comment concerning locking 2017-04-12 13:42:46 +09:00
Peter Barker ac34405272 DataFlash: DataFlash_MAVLink: avoid races by taking semaphore 2017-04-12 13:42:46 +09:00
Peter Barker 9e436ec35c DataFlash: correct visibility 2017-04-12 13:42:46 +09:00
Peter Barker 25930e5bf3 DataFlash: remove unused DataFlash_MAVLink method 2017-04-12 13:42:46 +09:00
Michael du Breuil 1e816b8be5 GCS_MAVLink: Support sending the BATTERY_STATUS message 2017-04-12 10:21:49 +09:00
Andrew Tridgell 3080f66d16 GCS_MAVLink: fixes for updated mavlink 2017-04-11 20:03:43 +01:00
Grant Morphett 792bf70c40 RangeFinder: Fixed the value labels for LidarLite
LidarLiteV2 ---> LidarLiteV2-I2C
LidarLiteV3 ---> LidarLiteV3-I2C
2017-04-11 20:54:19 +09:00
davidaroyer 512cd11125 AP_HAL_Linux: RCOutput_ZYNQ: check for valid channel 2017-04-11 12:10:33 +01:00
Andrew Tridgell f571b34fd7 AP_Motors: setup RC speed for tailsitters 2017-04-11 17:34:40 +10:00
Andrew Tridgell 1db3b31686 SRV_Channel: added set_rc_frequency
this allows for setting RC output rate of named channel types
2017-04-11 17:34:40 +10:00
Andrew Tridgell 328541769d AP_Motors: allow control surfaces to move disarmed
allow tailsitter control surfaces to move in Q modes when shutdown
2017-04-11 17:34:40 +10:00
Andrew Tridgell 37301f67a0 SRV_Channel: added left and right motor tilt controls 2017-04-11 17:34:40 +10:00
Eugene Shamaev 0b54d5764c AP_BoardConfig: support for CAN and UAVCAN at board level 2017-04-10 22:38:13 +01:00
Eugene Shamaev dfe9b0e6fc AP_GPS: support for UAVCAN connected GNSS receivers 2017-04-10 22:38:12 +01:00
Eugene Shamaev 3e044c7b8a AP_Compass: support for UAVCAN connected magnetometers 2017-04-10 22:38:12 +01:00
Eugene Shamaev 331419a51e AP_Baro: support for UAVCAN connected barometers 2017-04-10 22:38:12 +01:00
Eugene Shamaev c43d91b92e SRV_Channel: support for servo and ESC commands to be send via UAVCAN 2017-04-10 22:38:12 +01:00
Eugene Shamaev 68a8d8615d AP_UAVCAN: library for support of UAVCAN protocol 2017-04-10 22:38:12 +01:00
Eugene Shamaev 7831a85f1c AP_HAL_Linux: definitions for CAN bus 2017-04-10 22:38:12 +01:00
Eugene Shamaev d81af8700f AP_HAL_SITL: definitions for CAN bus 2017-04-10 22:38:12 +01:00
Eugene Shamaev 55a0bd081f AP_HAL_PX4: ESC scaling 2017-04-10 22:38:12 +01:00
Eugene Shamaev 7caeaf4be6 AP_HAL_PX4: RCOutput support for UAVCAN 2017-04-10 22:38:12 +01:00
Eugene Shamaev 865392f034 AP_HAL_PX4: CAN bus driver 2017-04-10 22:38:12 +01:00
Eugene Shamaev d1792689f1 AP_HAL/utility: clear added to RingBuffer 2017-04-10 21:31:07 +01:00
Eugene Shamaev a07033f938 AP_HAL: ESC scaling 2017-04-10 21:31:07 +01:00
Eugene Shamaev 9b98c304c4 AP_HAL: top level HAL definitions for CAN bus driver 2017-04-10 21:31:07 +01:00
Andrew Tridgell 7cd290af9b AP_HAL: added defaults offsets max for disco 2017-04-10 19:17:37 +10:00
priseborough 8250fe4943 AP_NavEKF3: fix documentation derivation references 2017-04-10 15:47:35 +09:00
Andrew Tridgell bcec837f06 AP_BoardConfig: fixed warning in SITL build 2017-04-10 10:02:42 +10:00
Michael du Breuil 6b523cbd46 AP_GPS: Fix a memory leak in QURT GPS
Fixes part of #6000
2017-04-09 16:56:00 +10:00
Andrew Tridgell 3236090d71 HAL_SITL: allow plane and rover to use SIM_ENGINE_FAIL 2017-04-09 16:45:19 +10:00
Andrew Tridgell 68e0b5b7fa SITL: support XPlane-11
the packets are prefixed with DATA* instead of DATA@

This makes it work with both versions
2017-04-09 16:39:26 +10:00
Andrew Tridgell dbfdfa2261 HAL_PX4: fixed a bug in setup of alt rates for upper channels
this affected vehicles with high rates on upper channels, such as hexa
and octa quadplanes. The bug caused the rates set on the upper channels
to also be set on the primary channels, which means the low channels
containing aileron, elevator etc ran at 400Hz instead of 50Hz, resulting
in potential damage to the servos
2017-04-07 20:32:19 +10:00
Andrew Tridgell a8b12dcf3c HAL_PX4: never wait on a semaphore in interrupt context
this shouldn't ever happen, but better to check
2017-04-07 18:16:14 +10:00
Andrew Tridgell 1c5607b42d AP_RPM: fixed build for aero-fc 2017-04-07 17:45:10 +10:00
Peter Barker feb30b3b9b DataFlash: add mutex for WritePrioritisedBlock
Multiple threads attempt to write blocks; don't let
them interfere
2017-04-06 22:09:18 +10:00
Peter Barker 2fa97c9906 DataFlash: improve privacy aspects of instance variables 2017-04-06 22:09:18 +10:00
Michael du Breuil 33d0fa3e82 AP_AHRS: Fix an index out of bounds
Coverity 137817, getPrimaryCoreIMUIndex() can return -1, which is then invalid to pass to get_delta_velocity_dt
2017-04-06 08:44:57 +10:00
Michael du Breuil a0cb34db57 AP_Landing: Leverage new nav_controller loiter radius interface 2017-04-06 08:26:04 +10:00
Michael du Breuil 93a18e7dc8 L1: Add loiter radius scaling based upon bank limits at sea level 2017-04-06 08:26:04 +10:00
Michael du Breuil 2ac32ad204 AP_Navigation: Add a loiter radius interface 2017-04-06 08:26:04 +10:00
Michael du Breuil 336b4a64d7 AP_Navigation: Whitespace (tab/spaces inconsistency) 2017-04-06 08:26:04 +10:00
Jacob Walser 4e700ea4df AP_JSButton: Change mode button function implementation 2017-04-05 13:29:06 -04:00
Dr.-Ing. Amilcar Do Carmo Lucas b4260c77be Add and update missing SITL command line usage information 2017-04-05 20:17:40 +10:00
priseborough 06c073e448 AP_NavEKF3: Update tilt alignment check 2017-04-05 20:16:16 +10:00
Andrew Tridgell c118deccb0 AP_BoardConfig: added BRD_IO_ENABLE parameter
allow for px4io to be disabled completely
2017-04-05 20:14:53 +10:00
Peter Barker 3defe584e7 DataFlash: extract common labels and formats into defines 2017-04-05 19:16:21 +10:00
Peter Barker 510aa587ef DataFlash: add validation for logging structures 2017-04-04 20:03:33 +01:00
Peter Barker 2746edfd32 DataFlash: move Init from LogFile.cpp to Dataflash.cpp (NFC) 2017-04-04 20:03:33 +01:00
Andrew Tridgell 9e2cfabb8a AP_RPM: support RPM input on any AUX pin 2017-04-04 16:33:45 +10:00
Peter Barker 564ff3a468 GCS_MAVLink: always allow HOME to be read by MISSION_REQUEST
Fixes #5980
2017-04-04 15:00:07 +10:00
Andrew Tridgell fafd940dd5 AP_Arming: use compass get_offsets_max() 2017-04-04 00:49:34 +01:00
Andrew Tridgell ee2afd3242 AP_Compass: added COMPASS_OFFS_MAX
this allows setup of airframes with hatch magnets
2017-04-04 00:49:34 +01:00
Jacob Walser 98b7dac870 AP_ServoRelayEvents: Remove constraint on 'channel' value
This was preventing proper function of Relay #0, and the intention of
this check was redundant
2017-04-04 09:14:07 +10:00
Andrew Tridgell 6ec32472c5 AP_Airspeed: average two readings for airspeed
given we're using it to check for errors, we may as well reduce analog
noise too
2017-04-04 08:40:31 +10:00
Peter Barker 724be3878c AP_HAL_PX4: correct output of system-id on px4-v3 2017-04-03 14:14:59 +10:00
Andrew Tridgell a11dca5229 AP_AHRS: added optional skip_ins_update to AHRS::update()
avoid the ins update if already done in copter fast_loop()
2017-04-03 13:04:11 +09:00
Andrew Tridgell 02976168cc HAL_PX4: fixed RC rate when BRD_PWM_COUNT=0
if BRD_PWM_COUNT is zero then alt_fd is -1, and we were not setting
servo output rate
2017-04-03 10:05:30 +09:00
Andrew Tridgell c952e58edb AP_InertialSensor: fixed invensense driver temp reading
different parts have quite different zero offsets in temperature
2017-04-03 10:06:27 +10:00
Michael du Breuil 4932a8b9ef Airspeed: Sanity check MS4525DO data, and utilize a double read 2017-04-01 11:19:39 +11:00
Sriram Sami 8bb052d019 AP_Motors: update descriptions for new parameters 2017-04-01 05:25:59 +11:00
Sriram Sami 1793bac8d4 AP_Motors: add parameters for HELI_DUAL
- add COL2_MIN/MID/MAX parameters that control limits of rear swashplate
- output collective_mid correctly for rear swashplate when servo is in manual mode
2017-04-01 05:25:59 +11:00
Peter Barker d3b442d8b6 DataFlash_MAVLink: remove dead comments 2017-03-31 15:02:14 +01:00
Peter Barker d8c475ad04 DataFlash: use override keyword on many methods 2017-03-31 15:02:14 +01:00
Andrew Tridgell 6c31a6982b DataFlash: added Log_Write_AttitudeView 2017-03-31 11:30:44 +11:00
Andrew Tridgell 5f02b7eddb AP_AHRS: added get_error_rp and get_error_yaw to AHRS_View 2017-03-31 11:30:44 +11:00
Peter Barker 4cb43b1c27 DataFlash: correct repeated FMT logging bug 2017-03-30 20:19:15 +11:00
Randy Mackay dcc4f69f7c AP_BattMonitor: confirm pec support before attempting to read voltage
Previously we checked PEC support continuously at 10hz.  With this change PEC support (or lack of support) is determined first before we try to read from the battery.  Once determined, we do not repeat the checks.
Also simplified logic to determine PEC support based on version (should have no functional effect)
Also renamed get_pec_support to check_pec_support
Also renamed _pec_confirm to _pec_confirmed
2017-03-30 10:34:45 +09:00
Randy Mackay 884892be16 AP_BattMonitor: const some temp variables
Also other minor changes in response to peer review
2017-03-30 10:34:45 +09:00
Tatsuya Yamaguchi 6b4a46d467 AP_BattMonitor: fix to use the return value of get_pec_support 2017-03-30 10:34:45 +09:00
Tatsuya Yamaguchi b052f96f6c AP_BattMonitor: check a PEC support using SpecificationInfo 2017-03-30 10:34:45 +09:00
Randy Mackay eded4f90bb GCS_MAVLink: timesync sends nanoseconds 2017-03-30 08:50:37 +09:00
Randy Mackay eddd6e5681 GCS_MAVLink: only respond to timesync messages with empty tc1
This avoids the possibility of a timesync message storm
Also process as a common message because no vehicle information is required
Moved location of new method to bottom of cpp file
2017-03-30 08:50:37 +09:00
fnoop fdc310fe97 GCS_MAVLink: add TIMESYNC message handler 2017-03-30 08:50:37 +09:00
Francisco Ferreira ec5bbbd2d0
DataFlash: fix BAR2 and BAR3 message format after baro log struct changed 2017-03-30 00:42:10 +01:00
Guilherme Sousa 584890a864 AP_HAL_SITL: Fail motors with SIM_ENGINE_FAIL 2017-03-29 22:43:14 +11:00
Guilherme Sousa 204fcba8c1 SITL: Added SIM_ENGINE_FAIL to define failed motor 2017-03-29 22:39:51 +11:00
Jonathan Challinger 9979e4bbe5 AC_PrecLand: fix usage of distance_to_target 2017-03-29 14:45:56 +09:00
Jonathan Challinger a772e1bd3d AC_PrecLand: add parameters for camera position relative to the CG 2017-03-29 14:45:56 +09:00
Randy Mackay 8f1d122766 AC_PrecLand: add ACC_P_NSE parameter 2017-03-29 14:45:50 +09:00
Randy Mackay 5dd5c22c39 AC_PrecLand: build IRLock on all boards 2017-03-29 14:45:49 +09:00
Randy Mackay 1fb6d468c6 AC_PrecLand: non functional changes including adding comments 2017-03-29 14:45:38 +09:00
Jonathan Challinger 2a29d7fedd AC_PrecLand: rework estimation, add EST_TYPE param 2017-03-29 14:36:22 +09:00
Jacob Walser 1ad10d0903 AP_JSButton: Add button function to toggle between forward/lateral and
roll/pitch adjustment
2017-03-28 16:04:36 -04:00
Jacob Walser b70ec54083 AP_JSButton: Fix indices in comment 2017-03-28 15:20:40 -04:00
Jacob Walser ea054e322b AP_JSButton: Add servo min/max functions 2017-03-28 14:54:23 -04:00
Jacob Walser ca651ea8fa AP_JSButton: Add buttons for servo adjustments 2017-03-28 14:54:23 -04:00
Michael du Breuil 16433cbf7a DataFlash: Log the ground temperature used for baro calculations 2017-03-28 11:25:46 +11:00
Michael du Breuil c37209a8d5 AP_Baro: Limit ground temperature used for the altitude
Fix an incorrect EAS2TAS that was double counting altitude
2017-03-28 11:25:46 +11:00
Andrew Tridgell 1ad5e1db4e AP_Motors: integrate AP_MotorsHeli_Dual
fixed issues with combining with Heli_Single
2017-03-25 16:22:10 +11:00
Fredrik Hedberg 998231ab0d AP_Motors: added AP_MotorsHeli_Dual
for tandem and transverse helis
2017-03-25 16:22:10 +11:00
Andrew Tridgell 47803e73e4 AP_Param: allow for dynamic var_info tables
this allows the var_info entry in a table to be a constant pointer,
allowing the selection of a type for a parameter class at runtime.
2017-03-25 16:22:10 +11:00
Randy Mackay c1a25c25f7 AC_Fence: return failure message 2017-03-25 10:50:58 +09:00
Randy Mackay 8171645876 AC_Fence: pre-arm check requires GPS if polygon fence enabled 2017-03-25 10:50:58 +09:00
Randy Mackay 69925d8b27 AP_Arming: shorten Accels failure message
This allow the message to fit on the MP HUD
2017-03-25 10:50:58 +09:00
Jonathan Challinger c7a73e84d6 AP_NavEKF3: apply height innovation floor only when barometer is in use 2017-03-24 14:42:36 -07:00
Jonathan Challinger c53125f3b5 AP_NavEKF2: apply height innovation floor only when barometer is in use 2017-03-24 14:42:36 -07:00
Lucas De Marchi 5809e2465b AP_RPM: replace board ifdef with feature ifdef 2017-03-24 12:06:19 +11:00
Lucas De Marchi f91d23daab AP_HAL: add HAL_PX4_HAVE_PWM_INPUT 2017-03-24 12:06:19 +11:00
Lucas De Marchi 7c246847de AP_HAL_PX4: replace board ifdef with feature ifdef 2017-03-24 12:06:19 +11:00
Lucas De Marchi 7ca9c7a443 AP_HAL: add HAL_HAVE_SAFETY_SWITCH 2017-03-24 12:06:19 +11:00
Lucas De Marchi ef1672befc AP_BoardConfig: replace board ifdef with feature ifdef 2017-03-24 12:06:19 +11:00
Lucas De Marchi d3e9f7ce66 AP_HAL: add HAL_PX4_HAVE_PX4IO 2017-03-24 12:06:19 +11:00
Lucas De Marchi 7f5b551050 AP_HAL: add HAL_PX4_HAVE_MTD_SUPPORT 2017-03-24 12:06:19 +11:00
Lucas De Marchi c7fc3ffbc4 AP_HAL: add HAL_HAVE_BOARD_VOLTAGE 2017-03-24 12:06:19 +11:00
Lucas De Marchi 37a050eed9 AP_HAL: add comments and allow for board overrides 2017-03-24 12:06:19 +11:00
Lucas De Marchi 2e4e4365d0 AP_InertialSensor: enable fast sampling for aerofc 2017-03-24 12:06:19 +11:00
Lucas De Marchi 9a83f05714 AP_BoardConfig: enable voltage monitoring on aerofc 2017-03-24 12:06:19 +11:00
Lucas De Marchi 7c1f255258 AP_HAL_PX4: add pin to monitor battery 2017-03-24 12:06:19 +11:00
Lucas De Marchi 5787b5a5c5 AP_Compass: IST8310: rename macros
Having "BIT" in the name gives the impression we are using the macro is
the bit position; however they have the values for those actions, not
the bit position. Rename BIT to VAL to be less confusing.
2017-03-24 12:06:19 +11:00
Lucas De Marchi 4bba643abb AP_Compass: IST8310: use variable periodic callback
This is the equivalent of sleep and wait for the conversion time,
after had triggered a new sample request. However it also has the added
benefits of sharing a thread with other sensors on the same bus.

Now we don't read the status register anymore since we have a guaranteed
wait time.
2017-03-24 12:06:19 +11:00
Lucas De Marchi ce1a13aa8f AP_Compass: IST8310: use FSR to reject samples 2017-03-24 12:06:19 +11:00
Lucas De Marchi d84851d8fa AP_Compass: IST8310: improve initialization
- Make sure device is reset while initializing.
 - Give better names to register macros
 - Average X, Y and Z by 16: sensor is internally running at 200 sps
   (theoretical, ~160 pratical). The wait time is ~6msec averaging
   by 16. We do 10msec.
2017-03-24 12:06:19 +11:00
Tom Pittenger c0691afc1f AP_Compass: reject outlier data in IST8310 data by detecting >14bit data 2017-03-24 12:06:19 +11:00
Lucas De Marchi 91dabbe418 AP_HAL_PX4: implement method to ajust periodic callback
Just setting up the periodic callback sampling time on initialization
may not work well for sensors that need to request for a sample with a
bus transaction, sleep and then read the new data. That's because the
function will be kept calling at a periodic rate, while the time in
which we can read the value is not really that sampling time, but rather
the time in which sensor was last read + the time spent in the function
before sending a new sample request.

Instead of creating a new type of thread to handle this case, just
implement the minimal and easy case of updating the period for this
callback, that can only be called from inside the callback function.
2017-03-24 12:06:19 +11:00
Tom Pittenger 8415fde697 AP_Compass: IST8310 chip does not follow right-hand rule format, flip z 2017-03-24 12:06:19 +11:00
Lucas De Marchi b339050e45 AP_Compass: IST8310: account for errors in measurment requests
If we don't recover for errors in the request for new sample, we may get
stuck with no sample anymore. Recover from bad transfers.
2017-03-24 12:06:19 +11:00
Lucas De Marchi 2349909033 AP_BoardConfig: start mtd driver 2017-03-24 12:06:19 +11:00
Lucas De Marchi da68612f4b AP_BoardConfig: make error function public and static
So it can be used by other parts of the code calling px4_start_driver().
2017-03-24 12:06:19 +11:00
Tom Pittenger fb24a03faf AP_Baro: don't compile drivers for devices that don't use them 2017-03-24 12:06:19 +11:00
Lucas De Marchi 156efd6fec AP_Compass: use IST8310 for aerofc 2017-03-24 12:06:19 +11:00
Lucas De Marchi fad583b259 AP_HAL_PX4: RCOoutput_Tap: map to [ RPMSTOPPED, RPMMAX ] range
When it's not armed we get _esc_pwm_min from the AP_Motors library,
which would cause motors to start spinning.  Map it to start from
RPMSTOPPED so it doesn't spin when it's not armed.
2017-03-24 12:06:19 +11:00
Lucas De Marchi 5e26940070 AP_HAL_PX4: disable safety switch for aerofc 2017-03-24 12:06:19 +11:00
Lucas De Marchi a682bb837a AP_SerialManager: uartA with 460800 baud for aerofc 2017-03-24 12:06:19 +11:00
Lucas De Marchi 20c5e9ec08 Add support for external mag on aerofc 2017-03-24 12:06:19 +11:00
Lucas De Marchi 327de91b5c AP_HAL_Px4: use RCOutput_Tap for aerofc 2017-03-24 12:06:19 +11:00
Lucas De Marchi 75977cd890 AP_HAL_PX4: implement motor output for aerofc
This uses tap ESCs, as found on the PX4 project, translated to our
internal APIs. It doesn't have the feedback from ESCs yet.
2017-03-24 12:06:19 +11:00
Lucas De Marchi ce9013b8ee AP_HAL_PX4: add RCOutput skeleton for aerofc 2017-03-24 12:06:19 +11:00
Lucas De Marchi 87846fe049 AP_InertialSensor: use MPU6500 on aerofc 2017-03-24 12:06:19 +11:00
Lucas De Marchi b4d0569339 AP_HAL_PX4: Use empty RCOutput driver for aerofc 2017-03-24 12:06:19 +11:00
Lucas De Marchi 00c2949dfb Add support for baro on aerofc 2017-03-24 12:06:19 +11:00
Lucas De Marchi b17acfee12 Add aerofc support
Flight Controller board that comes on Intel Aero RTF Drone.
2017-03-24 12:06:19 +11:00
Andrew Tridgell 2d603c1cba SRV_Channel: fixed reversing on servo gimbals 2017-03-23 11:02:07 +09:00
Jacob Walser 1b00dfb642 AP_GPS: Fix parameter metadata 2017-03-22 16:16:26 -07:00
Jacob Walser a9a8521383 AP_OpticalFlow: Fix parameter metadata 2017-03-22 16:16:26 -07:00
Jacob Walser 646d68c76d AP_NavEKF2: Fix parameter metadata 2017-03-22 16:16:26 -07:00
Jacob Walser 84e5e088de AP_BoardConfig: Fix parameter metadata 2017-03-22 16:16:26 -07:00
murata 1a781f44cc AP_Notify: Correct the display area clear of the text message. 2017-03-22 01:24:21 +00:00
Francisco Ferreira c0238be345
AP_FrSky_Telem: fix sending messages 3 times
Initialize variable
Also some small style changes
2017-03-22 01:23:26 +00:00
Florent Martel 02c0885cfd AP_Frsky_Telem: fixes #5862
MAVLink strings of exactly 50 characters are not NULL terminated, so
instead we must check that the 50th character has been reached.
2017-03-22 01:22:14 +00:00
Siddharth Bharat Purohit 5029dd1bab AP_HAL_PX4: GPIO: return correct FMU pin read even if IO not connected/detected 2017-03-22 12:15:05 +11:00
Michael du Breuil 2aec41e0ef AP_HAL_SITL: Fix SIM_GPS_DISABLE not disabling the ublox GPS with PVT support 2017-03-19 23:13:11 -07:00
Eugene Shamaev 41fe4d0515 AP_Landing: fix to remove reorder warning 2017-03-20 07:32:36 +11:00
Pierre Kancir 1a374aa9f6 SIM_Gazebo: add a timeout to reset timestamp check 2017-03-18 19:58:11 +11:00
Pierre Kancir d4a0a92b8b SITL: cmdline reorder help and param for better readability and futher extension
add missing options
2017-03-18 19:58:11 +11:00
Pierre Kancir 29d35699f2 SITL: Gazebo, throw old paquet based on timestamp as we are using UDP
Add some comments
2017-03-18 19:58:11 +11:00
Pierre Kancir d612209c19 SITL: Gazebo fix implicit cast 2017-03-18 19:58:11 +11:00
Pierre Kancir ee7355a301 SITL: Reduce some variables scope and include 2017-03-18 19:58:11 +11:00
Pierre Kancir 8054405521 SITL: Change interface port to a generic solution for external simulator 2017-03-18 19:58:11 +11:00
Pierre Kancir 6e0319d513 SITL: Add RCout port option to cmdline 2017-03-18 19:58:11 +11:00
Pierre Kancir a8d5079a38 SITL: Ensure that Instance parameter don't override manualy setted port 2017-03-18 19:58:11 +11:00
Tully Foote 25fad0a8c2 SITL: Add more command line arguments for port selection. 2017-03-18 19:58:11 +11:00
Pierre Kancir 5b8c89225a SITL: Make socket more verbose 2017-03-18 19:58:11 +11:00
Pierre Kancir 567a8d68e5 SITL: Make socket error more verbose 2017-03-18 19:58:11 +11:00
Pierre Kancir 8f2bdf51ea SITL: gazebo add socket drain 2017-03-18 19:58:11 +11:00
Pierre Kancir 1bb4e3c9b7 AP_IRLock_SITL: make port variable 2017-03-18 19:58:11 +11:00
Pierre Kancir 63ea8c6f21 SITL: enable multi sitl for gazebo 2017-03-18 19:58:11 +11:00
Andrew Tridgell fc4caf51e9 HAL_PX4: fixed RC failsafe for SBUS on FMUv4
the FMUv4 SBUS parser sets timestamp_last_signal even if we are in
failsafe

thanks to Mark Whitehorn for finding this
2017-03-18 17:36:13 +11:00
Pierre Kancir afb488c627 AP_GPS: fix implicit conversion warning from float to double 2017-03-17 13:07:57 +01:00
murata 33f91b5af5 AP_Notify: whitespace changes 2017-03-17 01:29:11 +00:00
murata 3a6f8d2136 AP_Notify: Preprocessor out EMOJI code group with character bitmap. 2017-03-17 01:26:54 +00:00
CSe 491b545fab SITL: fix gimbal connection on Windows 2017-03-17 00:43:21 +00:00
Peter Barker bcb0ead71a AP_Notify: improve display detection
Create probe function for displays
Use a mask to determine I2C buses to probe
2017-03-17 00:37:40 +00:00
Pierre Kancir bd4880b231 SRV_Channel: correct typo 2017-03-16 19:35:58 +00:00
Andrew Tridgell 2ef6473816 AP_ServoRelayEvents: fix do_set_servo
this was broken by the recent SRV_Channels changes

thanks to Jacob for noticing this!
2017-03-15 12:36:48 +11:00
Randy Mackay 132979b12f AC_PosControl: protect against POS_Z_P, ACCEL_Z_P divide-by-zero 2017-03-15 09:22:23 +09:00
Randy Mackay d4c4daca16 AC_WPNav: speed-up and down parameter min to 10cm/s 2017-03-15 09:22:23 +09:00
Randy Mackay 8c6c2e46cc AC_WPNav: protect against LOIT_SPEED divide-by-zero 2017-03-15 09:22:23 +09:00
Andrey Kolobov 5fdebe23cc AP_TECS: disable bad descent for soaring 2017-03-14 08:53:11 +11:00
Andrey Kolobov 9f2f070439 AP_Soaring: adding const qualifiers to some of soaring controller's methods 2017-03-14 08:53:11 +11:00
Andrew Tridgell 2b2fed735b AP_Soaring: fixed SOAR logging 2017-03-14 08:53:10 +11:00
Andrey Kolobov 42f5b5a232 AP_Soaring: fixes for matrixN changes 2017-03-14 08:53:10 +11:00
Andrew Tridgell 819c70494f AP_Soaring: added SOAR_ENABLE_CH parameter 2017-03-14 08:53:10 +11:00
Andrey Kolobov a1fa2a9de3 AP_Math: added matrixN for soaring controller 2017-03-14 08:35:44 +11:00
akolobov a3f3097941 AP_TECS: added function to reset integrator 2017-03-14 08:20:48 +11:00
akolobov acddf6bdf3 AP_SpdHgtControl: added function to reset integrator 2017-03-14 08:20:48 +11:00
Andrey Kolobov ea534f0445 AP_Soaring: added AP_Soar library, formerly known as SoaringController 2017-03-14 08:20:48 +11:00
Francisco Ferreira 7afcbf51ec
AP_Math: also fix SEC_PER_WEEK 2017-03-13 02:57:30 +00:00
murata 1982285e23 AP_Math: update MSEC_PER_SEC definition to fix GPS time calcs 2017-03-13 11:50:33 +09:00
Randy Mackay b82098ca44 AP_GPS: fix blended ground course
Thanks to jyl58 for finding this
2017-03-13 11:21:47 +09:00
Randy Mackay 3e628f30ff AP_GPS: fix blending when accuracy reported as 1mm
Thanks to Michael DuBreuil for suggesting the fix
2017-03-13 11:31:51 +11:00
Randy Mackay f340c118d4 AP_Arming: GPS blending health check renamed 2017-03-13 11:31:51 +11:00
Randy Mackay 2002827de3 AP_GPS: rename pre-arm blending health check 2017-03-13 11:31:51 +11:00
Randy Mackay e9c881c668 AP_GPS: stop blending if too many blending failures 2017-03-13 11:31:51 +11:00
Randy Mackay b7ad8da9b9 AP_GPS: minor bracketing fix
This silences a warning from eclipse
No functional change
2017-03-13 11:31:51 +11:00
Randy Mackay 5de64273ec AP_GPS: more efficient initialisation of blending arrays 2017-03-13 11:31:51 +11:00
Randy Mackay 81b20e971b AP_GPS_UBLOX: use get_rate_ms accessor 2017-03-13 11:31:51 +11:00
Randy Mackay ef1399a52f AP_GPS: fixups after peer review
This includes these changes:
RATE_MS, RATE_MS2 parameter description Range minimum reduced to 50
_blend_health_counter is reset to 0 if blending is disabled
GPS_MAX_RECEIVERS is replaced with GPS_BLENDED_INSTANCE where appropriate
simplify all_consistent functions check of number of receivers
calc_blended_weights fix for initial check of how many receivers we have
remove unnecessary setting of GPS last time when blending fails
remove RebootRequired from AUTO_SWITCH param description
2017-03-13 11:31:51 +11:00
Randy Mackay 2f21e3b40c DataFlash: rename GPS3/GPA3 to GPSB/GPAB 2017-03-13 11:31:51 +11:00
Randy Mackay 4f0333892d AP_Arming: clarify GPS inconsistency message 2017-03-13 11:31:51 +11:00
Randy Mackay e398bb5c68 AP_Arming: make gps-checks virtual
Copter's GPS checks will override this
2017-03-13 11:31:51 +11:00
Randy Mackay 9f21649dc0 AP_Arming: add gps consistency and blend health check 2017-03-13 11:31:51 +11:00
Randy Mackay 729ce34ce3 AP_GPS: add all_consistent and blend health for use as pre-arm check 2017-03-13 11:31:51 +11:00
Randy Mackay 72dfe1127f AP_GPS: protect parameters from being accessed externally
backends become friends so they can continue to access parameters held in frontend
get_rate_ms made private because only used by frontend
Also moved static arrays higher in cpp file
2017-03-13 11:31:51 +11:00
Randy Mackay 3172657f26 AP_GPS: move constructor and complex accessors to cpp file
These functions are slightly long and make the .h file hard to read.  Also saves a small amount of flash space.
No functional change
2017-03-13 11:31:51 +11:00
Randy Mackay 0066022a7f AP_GPS: check for valid instance in highest_supported_status
highest_supported_status will always return FIX_3D for blended or invalid instance
setHIL_Accuracy checks instance is 2 or less
send_mavlink_gps2_raw uses num_instances variable directly to avoid confusion with num_sensors
2017-03-13 11:31:51 +11:00
Randy Mackay e764f0d5d0 AP_GPS: sanity check update rate
Also minor spelling and parameter documentation fix
2017-03-13 11:31:51 +11:00
priseborough 6b26bdd454 AP_GPS: Add option to blend multiple GPS receivers
Fix pre-existing bug in hard switch logic
Update GPS_AUTO_SWITCH description
protect against zero accuracy estimates returned by GPS drivers
2017-03-13 11:31:51 +11:00
Randy Mackay cd379b0e86 AP_GPS: move time_epoch calcs into proper file
The frontend implementation was in the backend file
No functional change
2017-03-13 11:31:51 +11:00
Randy Mackay a79474dcbc AP_GPS: minor comment fix
No functional change
2017-03-13 11:31:51 +11:00
Randy Mackay 201504dbae AP_GPS: remove unused get_antenna_offsets()
callers always specify an instance
2017-03-13 11:31:51 +11:00
Randy Mackay 2d0258b6a2 AP_GPS: remove unused highest_supported_status(void) 2017-03-13 11:31:51 +11:00
Randy Mackay ac86c7999b AP_GPS_MAV: set have_accuracy as boolean 2017-03-13 11:31:51 +11:00
priseborough a82b6929f1 DataFlash: Allow logging of blended GPS instance
Add GPS and GPA reporting for blended solution
Allow GPS library to manage reporting for the blended solution
2017-03-13 11:31:51 +11:00
priseborough 56a9e2c462 AP_NavEKF3: Reference correct derivation 2017-03-13 11:31:51 +11:00
priseborough 44fa82d58c AP_NavEKF2: Reference correct derivation 2017-03-13 11:31:51 +11:00
priseborough 18927395d7 AP_NavEKF3: log correct GPS for replay 2017-03-13 11:31:51 +11:00
priseborough 407a60e599 AP_NavEKF2: log correct GPS for replay 2017-03-13 11:31:51 +11:00
priseborough 01551a4423 AP_NavEKF3: handle position jump caused by change in GPS receiver
If the GPS receiver selection changes and we are using GPS for height, the vertical position will be reset to the new GPS height measurement.
correct output observer history when doing a GPS height reset
2017-03-13 11:31:51 +11:00
priseborough 8c46d4316b AP_NavEKF2: handle position jump caused by change in GPS receiver
If the GPS receiver selection changes and we are using GPS for height, the
vertical position will be reset to the new GPS height measurement.
correct output observer history when doing a GPS height reset
2017-03-13 11:31:51 +11:00
Randy Mackay 341b926a43 AP_HAL_SITL: add glitch for 2nd ublox 2017-03-13 11:31:51 +11:00
Randy Mackay 07ce7b8bd6 SITL: add GPS2_GLITCH parameter 2017-03-13 11:31:51 +11:00
Michael Oborne e4ff445ea7 AP_GPS_GSOF-NOVA: fix last_gps_time_ms 2017-03-09 10:41:48 -08:00
mirkix 9e1345453f AP_HAL_Linux: BBBmini remove onboard OpticalFlow 2017-03-07 22:48:48 -08:00
mirkix ac60ddfdde AP_OpticalFlow: allow to search on I2C bus 2 2017-03-07 22:48:48 -08:00
mirkix ad208cab56 AP_OpticalFlow: BBBmini remove onboard OpticalFlow 2017-03-07 22:48:48 -08:00
mirkix 81da61a68d AP_HAL: BBBmini remove onboard OpticalFlow 2017-03-07 22:48:48 -08:00
Michael du Breuil be1fd147fc Arming: Remove the SITL protection around GPS configuration, and rely upon the GPS library instead 2017-03-07 12:43:30 +11:00
Michael du Breuil 398ff823c0 AP_GPS: Always consider ublox as configured in sitl 2017-03-07 12:43:30 +11:00
Francisco Ferreira f6687a2d6c AP_Baro: fix example output
PX4 boards can only start console after USB is connected so we need to
check it is available
2017-03-07 09:37:14 +11:00
jaxxzer b98573d55f SITL: Improved Sub simulation
-Constrain z axis movement between -100m (seafloor) and 0m (water
surface)
-More accurate thruster modelling
2017-03-07 09:35:41 +11:00
Michael du Breuil 44bcd74a57 AP_GPS: Remove dead SBF code
CID 125035
2017-03-06 15:24:22 +00:00
Randy Mackay 7a7f8eb7c1 AC_Avoidance: only stop below alt-fence if fence is enabled 2017-03-06 18:02:03 +09:00
Randy Mackay 3e039a6ba4 AP_NavEKF3: minor formatting fixes
No functional change
2017-03-06 18:40:18 +11:00
Randy Mackay a80c0a231d AP_NavEKF3: attempt to set-up every core
previously we would only call setup_core for the 2nd core if the first had been setup successfully
2017-03-06 18:40:18 +11:00
priseborough 7a8783f35e AP_NavEKF3: Fix bug preventing reset to GPS
This fixes a bug that prevented the reset to the GPS position occurring if GPS velocity observations were still passing innovation consistency checks.
2017-03-06 17:11:39 +11:00
priseborough b7c4945000 AP_NavEKF2: Fix bug preventing reset to GPS
This fixes a bug that prevented the reset to the GPS position occurring if GPS velocity observations were still passing innovation consistency checks.
2017-03-06 17:11:39 +11:00
Michael du Breuil 7f11cf3ca6 AP_Mount: Remove solo gimbal from the minimal build support 2017-03-06 11:53:08 +11:00
Randy Mackay 67097c8d59 AC_AttitudeControl: use gyro_latest
This allows moving the attitude control before the ahrs/ekf update

We continue to use ahrs.get_gyro for the non-time-critical heli
passthrough functions.  We should avoid using get_gyro_latest() unless we know there is a direct benefit because it could lead to inconsistent gyro values vs what the EKF is using.
2017-03-03 13:14:28 +11:00
Randy Mackay d3aca5544e AP_AHRS: get_gyro_latest returns latest rates from IMU with drift correction
Pulling the gyro values from the IMU allows our rate controllers to run before the EKF
2017-03-03 13:14:28 +11:00
Andrew Tridgell ce978595cd AP_BoardConfig: added support for ICM-20602 detection 2017-03-02 14:21:36 +11:00
Andrew Tridgell 875274e761 AP_InertialSensor: added support for ICM-20602
treat the same as a 20608
2017-03-02 14:21:36 +11:00
Andrew Tridgell e7024d9203 AP_Landing: restructure parameters into a structure 2017-03-02 12:38:59 +11:00
Michael du Breuil 547d06febf AP_Landing: Add deepstall support 2017-03-02 12:38:59 +11:00
Michael du Breuil 8b20577b74 AP_Landing: Add a servo override interface and PID logging interface 2017-03-02 12:38:59 +11:00
Michael du Breuil ed359a5833 Dataflash: Add landing PID logging 2017-03-02 12:38:59 +11:00
Michael du Breuil c10fe2e7a4 AP_Landing: Add more interfaces from vehicle code
Fixs up some documentation about expected return values
2017-03-02 12:38:59 +11:00
Michael du Breuil c5c94949bf AP_Math: Extend vector2::angle(vector2) to distinguish parallel and antiparallel vectors
There are a number of use cases where distingusihing antiparallel from parallel vectors is important
2017-03-02 00:50:44 +00:00
Andrew Tridgell 05cbc19ad6 AP_RangeFinder: added type 15 for LidareLiteV3 2017-03-01 22:44:37 +11:00
Andrew Tridgell cf3db7560c AP_BoardConfig: fixed AUAV21 board ID to not overlap with VRBrain boards 2017-03-01 18:07:44 +11:00
Jacob Walser 507b461388 AP_Motors: Initialize throttle range directly
This was causing SITL to hang at boot when motors object is statically allocated.
2017-02-28 22:34:35 -08:00
Andrew Tridgell b86513f503 AP_InertialSensor: support AUAV21 board 2017-03-01 17:24:10 +11:00
Andrew Tridgell 37c9e08316 AP_Compass: support AUAV21 board 2017-03-01 17:24:10 +11:00
Andrew Tridgell d5cad2ae44 AP_Baro: support AUAV21 board 2017-03-01 17:24:10 +11:00
Andrew Tridgell 1989f31ae3 AP_BoardConfig: added AUAV21 board type
unfortunately this uses the same sensor types as the PHMini, which
means we can't auto-detect the difference between them.
2017-03-01 17:24:10 +11:00
Randy Mackay d79403707b AC_AttControl: add feed forward param descriptions
No functional change
2017-03-01 14:59:44 +09:00
Randy Mackay fd94ab43fa AP_Proximity: minor fix to param description
No functional change
2017-03-01 14:59:44 +09:00
Randy Mackay 36bcabb4e4 SRV_Channel: add constraint to move_servo 2017-02-28 19:29:00 +11:00
Randy Mackay 7b3af58634 AC_Avoidance: fix AVOID_ANGLE_MAX parameter description 2017-02-28 15:33:59 +09:00
Andrew Tridgell adf215998f SRV_Channel: added MotorTilt to docs for SERVOn_FUNCTION 2017-02-28 08:10:56 +11:00
Randy Mackay 2b43c6aeed DataFlash: log range finder orientation 2017-02-27 15:18:40 +09:00
Randy Mackay e725ae866b AP_OpticalFlow: fix example sketch 2017-02-27 15:18:13 +09:00
Randy Mackay a74833a04a AP_AHRS: fix example sketch 2017-02-27 15:18:13 +09:00
Randy Mackay 65c8f87b17 AP_Frsky_Telem: only use downward facing rangefinder 2017-02-27 15:18:12 +09:00
Randy Mackay 3f6a734a71 AP_NavEKF3: only use downward facing rangefinder 2017-02-27 15:18:11 +09:00
Randy Mackay 563be389ee AP_NavEKF2: only use downward facing rangefinder 2017-02-27 15:18:10 +09:00
Randy Mackay a093bcb05f AP_Proximity: add rangefinder driver
This allows avoidance using upward or forward facing range finders
2017-02-27 15:18:09 +09:00
Randy Mackay c98e598ae2 AP_RangeFinder: fix example sketch 2017-02-27 15:18:08 +09:00
Randy Mackay e7dd21a0bb AP_RangeFinder: remove primary, add orientation 2017-02-27 15:18:03 +09:00
Randy Mackay 49f4afc2a1 AC_Avoidance: add 2m margin to upward avoidance 2017-02-27 09:48:29 +09:00
Peter Barker d170396acf Notify: Display: blank text line after 10s 2017-02-27 09:02:09 +09:00
Peter Barker da03cf29d6 Notify: Display: pad GPS status/sat count to fix stray chars 2017-02-27 08:14:25 +09:00
Lucas De Marchi f972fed70b AP_HAL_PX4: rename method to follow AP_HAL
This allows to avoid the cast in the HAL, making it easier to replace
the implementation with an Empty::RCOutput while prototyping.
2017-02-26 13:38:24 +11:00
Lucas De Marchi 686e0f08d6 AP_HAL: RCOutput: add optional timer_tick() method
This is common enough across the HAL implementaions so add a method for
it to avoid the need for casts inside the HALs.
2017-02-26 13:38:24 +11:00
Lucas De Marchi ade1876318 AP_Motors: tie esc scaling with set_throttle_range()
We need to update the esc scaling from inside the Motors library, that
has access to the MOT_PWM_[MIN|MAX] values. Otherwise even though the
AP_Motors library honors the value for calculations, the RCOutput
drivers that need the scaling to set the real HW scaling will not work.
Right now it scales the value using the throttle_channel's min/max, even
though AP_Motors may be passing values in other range.
2017-02-26 13:38:24 +11:00
Lucas De Marchi e1eda3066c AP_HAL_PX4: SPIDevice: add missing ifdefs
These sensors may always be present on px4fmu* boards, but they are not
always present for all boards supported by the PX4Firmware.
2017-02-26 13:37:13 +11:00
Lucas De Marchi 2d50eb312c AP_InertialSensor: add support to MPU6500
Just like and MPU9250 without mag and with different WHOAMI register.
2017-02-26 13:37:13 +11:00
Lucas De Marchi 8002df6e45 AP_HAL: add MPU6500 defines 2017-02-26 13:37:13 +11:00
Andrew Tridgell e5ed20d6f7 AC_AttitudeControl: added set_throttle_mix_value()
used by quadplane
2017-02-26 09:20:51 +11:00
Peter Barker e744460ff5 AP_AHRS: mark many functions as override
Also take the opportunity to remove void parameter
2017-02-24 21:13:08 +11:00
Peter Barker 6ee4045878 AP_AHRS: mark new relative position functions override 2017-02-24 21:13:08 +11:00
Peter Barker 35f876f853 AP_AHRS: examples: correct AHRS_Test
This is required so gcs() returns an object
2017-02-24 21:13:08 +11:00
Peter Barker 4ed7fb154f AP_AHRS: supply missing get_relative_position_D_home
Simply returns the baro altitude (like EKF does if it lacks
position)
2017-02-24 21:13:08 +11:00
Peter Barker 24647fb2b0 AP_AHRS: make get_relative_position_D_home pure virtual
Having a void function with a return parameter that isn't
filled in by the base class function seems like a bad idea
2017-02-24 21:13:08 +11:00
Peter Barker d6807d749c GCS_MAVLink: make send_statustext virtual 2017-02-23 23:03:54 -08:00
Peter Barker c93942695f AP_Param: load parameters from a comma-separated-list
This patch will break things for anyone who is using
a comma in their filenames for their ardupilot defaults
files.
2017-02-23 22:46:33 -08:00
Peter Barker fe189fefbc AP_Param: Factor load_defaults_file (NFC) 2017-02-23 22:46:33 -08:00
Lucas De Marchi 0a381dfa1b AP_HAL: document method to split transfers 2017-02-23 22:38:15 -08:00
Lucas De Marchi 32d208dbe8 AP_HAL_Linux: move check for _split_transfers
This is likely not true, so allow not to check the other conditions.
Also remove comment since this is going to be added to the method.
2017-02-23 22:38:15 -08:00
Andrew Tridgell df1da3c14e AP_RangeFinder: setup for split I2C transfers
this fixes PulsedLight Lidar on Linux
2017-02-23 22:38:15 -08:00
Andrew Tridgell a2e445cf24 HAL_Linux: implement set_split_transfers() API for I2C 2017-02-23 22:38:15 -08:00
Andrew Tridgell dc26cbc074 AP_HAL: added set_split_transfers() API for I2C 2017-02-23 22:38:15 -08:00
Michael du Breuil 7b483a1460 AP_GPS: Ublox, always quickly set the rates until we have fetched the version 2017-02-23 07:33:58 +11:00
Tom Pittenger 76dabf2dd9 AP_ADSB: cleanup
non-functional change
2017-02-22 11:55:47 -08:00
Tom Pittenger 5adbf9b232 AP_ADSB: populate altitude via pressure for ADSB-Out
fixes https://github.com/ArduPilot/ardupilot/issues/5424
2017-02-22 11:55:47 -08:00
Michael du Breuil 1de198883d AP_NavEKF3: Check gps vertical accuracy for aligning the GPS 2017-02-22 11:53:42 -08:00
Michael du Breuil 8b69f1708e NavEKF2: Add optional check for GPS vertical accuracy before aligning the EKF 2017-02-22 11:53:42 -08:00
Michael du Breuil 61023fc636 NavEKF: Add GPS vertical accuracy to nav_gps_flags 2017-02-22 11:53:42 -08:00
Jacob Walser cde1452da3 AP_Motors: Use fabsf instead of fabs 2017-02-22 11:25:18 -08:00
Jacob Walser 870183f26b AP_TemperatureSensor: Use powf instead of pow 2017-02-22 11:25:18 -08:00
Jacob Walser 06b394bf43 AP_JSButton: Fix param metadata for relay enum values 2017-02-22 14:42:23 +00:00
Tom Pittenger fb214ef95f AP_Baro: fixed spelling in comment 2017-02-21 02:23:23 -08:00
Jacob Walser 8c87868b5c AP_AHRS: Add submarine vehicle class 2017-02-21 11:26:14 +11:00
Jacob Walser 5829d4b645 AC_Avoidance: Refactor fence.get_safe_alt() to fence.get_safe_alt_max() 2017-02-21 11:26:14 +11:00
Jacob Walser e7a34b0fb3 AP_NavEKF2: Add set_baro_alt_noise method 2017-02-21 11:26:14 +11:00
Jacob Walser e7caf05238 AP_HAL_SITL: Add support for Sub 2017-02-21 11:26:14 +11:00
Jacob Walser 613bc46592 AP_Baro: Add support for water pressure and Sub 2017-02-21 11:26:14 +11:00
Jacob Walser 3c6df7cc0e AC_Fence: Add minimum altitude limit
get_safe_alt() -> get_safe_alt_max() and get_safe_alt_min()
2017-02-21 11:26:14 +11:00
Jacob Walser 0e124d0be5 AC_PosControl: Add AC_PosControl_Sub class 2017-02-21 11:26:14 +11:00
Jacob Walser 925fa5d214 AC_AttitudeControl: Add AC_AttitudeControl_Sub class 2017-02-21 11:26:14 +11:00
Jacob Walser ac1e1b9460 AP_NavEKF3: Add set_baro_alt_noise method 2017-02-21 11:26:14 +11:00
Jacob Walser ca603e1517 AP_TemperatureSensor: Add AP_TemperatureSensor library and TSYS01 driver 2017-02-21 11:26:14 +11:00
Jacob Walser 7121910fa7 AP_Compass: Set default learn parameter to disabled for Sub 2017-02-21 11:26:14 +11:00
Rustom Jehangir 36f3cae535 SITL: Add support for Sub 2017-02-21 11:26:14 +11:00
Jacob Walser 96303c3092 AC_WPNav: Add accessor for origin, and make get_bearing_cd() public 2017-02-21 11:26:14 +11:00
Jacob Walser d3442ae16b AP_RangeFinder: Bugfix for mavlink rangefinders to include out of range low/high 2017-02-21 11:26:14 +11:00
Jacob Walser f3fa8403f8 AP_Notify: Add tone and light pattern for leak detection 2017-02-21 11:26:14 +11:00
Jacob Walser 9c8fca02d9 AP_LeakDetector: New library and analog/digital sensor drivers 2017-02-21 11:26:14 +11:00
Rustom Jehangir 116f166a78 AP_JSButton: New library to map joystick buttons to vehicle functions 2017-02-21 11:26:14 +11:00
jaxxzer ccb6434831 AP_Scheduler: Set main loop rate to 400hz for Sub 2017-02-21 11:26:14 +11:00
jaxxzer 44c9efad50 AP_Vehicle: Add the ArduSub vehicle type.
This also fixes the issue causing accel calibration to be unresponsive
in gcs.
2017-02-21 11:26:14 +11:00
Jacob Walser 2bacc2fea2 AP_RCMapper: Add forward and strafe channel mappings for Sub 2017-02-21 11:26:14 +11:00
Rustom Jehangir 237ba87ca4 AP_Motors: New AP_Motors6DOF used by Sub 2017-02-21 11:26:14 +11:00
Peter Barker 1217256898 AP_AHRS: correct infinite recursion in AP_AHRS_View 2017-02-21 09:03:03 +11:00
Andrew Tridgell 29b06d2d4a SRV_Channel: fixed output slew rate handling
this fixes a bug that happens when the RC output speed is much lower
than the main loop speed, such as with forward throttle for
quadplanes. We need to base the slew on the last sent output, not the
last value read back (at 50Hz) from the IO board, or we will slew the
channel at 6x to 8x slower than the correct rate.
2017-02-21 06:09:33 +11:00
Andrew Tridgell 3ce7e4b322 AP_GPS: fixed fake uBlox with PVT message support 2017-02-21 06:09:33 +11:00
murata fe93bdbc5e AP_IRLock: Change from magic number 0 to definition name. 2017-02-18 14:12:36 +00:00
murata eb6cdd27fb AP_Notify: Change from magic number 0 to definition name. 2017-02-18 14:12:36 +00:00
murata d9dbf6e1eb AP_OpticalFlow: Change from magic number 0 to definition name. 2017-02-18 14:12:36 +00:00
murata a3f5b4f319 AP_InertialSensor: Change from magic number 0 to definition name. 2017-02-18 14:12:36 +00:00
murata eb4d8963d0 AP_HAL_Linux: Change from magic number 0 to definition name. 2017-02-18 14:12:36 +00:00
murata bc7b2144e7 AP_Compass: Change from magic number 0 to definition name. 2017-02-18 14:12:36 +00:00
murata f5c3de2a61 AP_Baro: Change from magic number 0 to definition name. 2017-02-18 14:12:36 +00:00
murata af65be5aa4 AP_Airspeed: Change from magic number 0 to definition name. 2017-02-18 14:12:36 +00:00
Andrew Tridgell d338d9c0aa SITL: fixed whitespace on flightaxis code 2017-02-18 17:26:43 +11:00
Andrew Tridgell 83d055eceb AP_Motors: support twin-motor tailsitters
use differential thrust for roll
2017-02-18 17:26:43 +11:00
Andrew Tridgell 584fbf629b SRV_Channel: added k_throttleLeft and k_throttleRight
support for differential thrust for yaw in twin engine planes
2017-02-18 17:26:43 +11:00
Andrew Tridgell 7845181f4b AP_AHRS: fixes for changes in AP_AHRS API from Michael 2017-02-18 17:26:43 +11:00
Andrew Tridgell 17e1329068 AC_WPNav: converted to use AP_AHRS_View
for use in quadplane tailsitters
2017-02-18 17:26:43 +11:00
Andrew Tridgell 3c8020862c SITL: support a builtin tailsitter vehicle type 2017-02-18 17:26:43 +11:00
Andrew Tridgell ac2a9c4b4a AP_Motors: allow Copter to fly the tailsitter motors class 2017-02-18 17:26:43 +11:00
Andrew Tridgell c62c64d27b AP_AHRS: added support for AP_AHRS_View 2017-02-18 17:26:43 +11:00
Andrew Tridgell 1345bf8737 AC_AttitudeControl: added support for AP_AHRS_View
this allows for tailsitters with a different attitude view
2017-02-18 17:26:43 +11:00
Andrew Tridgell 8bd1fc63d5 SITL: support pitch90 and pitch270 in FlightAxis
used for flying tailsitters
2017-02-18 17:26:43 +11:00
Andrew Tridgell 1a74b7fc0c AP_Motors: started on tailsitter support 2017-02-18 17:26:43 +11:00
Andrew Tridgell 5acbf5d16e AC_AttitudeControl: use FF from AC_PID 2017-02-18 17:26:43 +11:00
Andrew Tridgell b97bf5d15e AC_PID: added feed-forward to AC_PID 2017-02-18 17:26:43 +11:00
Francisco Ferreira 23f959b92f
AP_NavEKF3: fix copied parameter descriptions 2017-02-15 19:20:04 +00:00
priseborough 1a7b5538e5 AP_NavEKF2: Enable simple heading fusion to be set for specific cores 2017-02-15 19:17:53 +00:00
priseborough de7a679534 AP_NavEKF3: Enable simple heading fusion to be set for specific cores 2017-02-15 19:09:45 +00:00
priseborough ccb952ba31 AP_NavEKF3: Use the same mag fusion method for all cores
The original reason for using a different method for the second core is no longer valid.
2017-02-15 19:01:10 +00:00
priseborough a1d41edc4e AP_NavEKF2: Use the same mag fusion method for all cores
The original reason for using a different method for the second core is no longer valid.
2017-02-15 19:01:10 +00:00
Randy Mackay 8c7b214d71 AP_BattMonitor: fix param description 2017-02-15 20:01:59 +10:00
priseborough e399f57ffa AP_NavEKF3: prevent NaN if RNGFND_GNDCLEAR is zero 2017-02-15 07:04:38 +09:00
priseborough 5cd403c0b9 AP_NavEKF2: prevent NaN if RNGFND_GNDCLEAR is zero 2017-02-15 07:04:38 +09:00
priseborough bf51da224a AP_RangeFinder: Update min value for RNGFND_GNDCLEAR parameter 2017-02-15 07:04:38 +09:00
Peter Barker 057819ccef DataFlash: zero-pad the number in the log filename
This helps with collating when reviewing log files

Closes #2212
2017-02-15 07:23:49 +11:00
Peter Barker 58d74230d5 DataFlash: correct error detection for asprintf 2017-02-15 07:23:49 +11:00
Michael du Breuil 794f7a969e AP_Arming: Fix up ARMING_REQUIRE param documentation to try and be less confusing 2017-02-15 07:22:11 +11:00
Andrew Tridgell 395702ceff SRV_Channel: make SRV_AUTO_TRIM plane specific 2017-02-14 19:50:01 +11:00
Andrew Tridgell 4626b3a269 AP_Arming: mark ARMING_REQUIRE as plane and rover only 2017-02-14 19:50:01 +11:00
Andrew Tridgell 108cbe1dab AP_Motors: mark tricopter yaw as tricopter only 2017-02-14 19:50:01 +11:00
Andrew Tridgell 79b0c856b2 AP_Param: added support for frame specific parameters
this allows for libraries that have parameters that are only activated
on particular frame types
2017-02-14 19:49:29 +11:00
Andrew Tridgell 2187417d74 AP_Motors: added MOT_SPOOL_TIME
this allows for quadplanes to have faster spoolup, which can help with
transitions
2017-02-14 09:23:17 +09:00
Michael du Breuil 18b5446765 Camera: Fix an incorrect label on CAM_DURATION 2017-02-13 19:20:49 +00:00
Peter Barker 89afa913f1 AP_Frsky_Telem: Support for a GCS singleton 2017-02-13 09:32:01 +11:00
Peter Barker cc28ff49e9 GCS_MAVLink: support for a singleton 2017-02-13 09:32:01 +11:00
Michael du Breuil 31f1545223 DataFlash: Update for AHRS NED changes
Report both origin and home NED altitudes to the log file
2017-02-13 09:23:14 +11:00
Michael du Breuil 2d212e5bd4 AP_InertialNav: Update for AHRS NED changes 2017-02-13 09:23:14 +11:00
Michael du Breuil 42b6ca9eed AP_ICEngine: Update for AHRS NED changes 2017-02-13 09:23:14 +11:00
Michael du Breuil d71533dc2b AC_PrecLand: Update for AHRS NED changes 2017-02-13 09:23:14 +11:00
Michael du Breuil 50346de963 GCS_MAVLink: Update for AHRS NED changes 2017-02-13 09:23:14 +11:00
Michael du Breuil 666c63da9f AP_TECS: Update for AHRS NED changes 2017-02-13 09:23:14 +11:00
Michael du Breuil 95edf6ab66 AP_Module: Update for AHRS NED changes 2017-02-13 09:23:14 +11:00
Michael du Breuil 3274f1dbb1 AP_AHRS: Split all NED methods into a collection of NED relative to home vs origin 2017-02-13 09:23:14 +11:00
Michael du Breuil c079532a7a AP_Avoidance: Remove unutilized get_destination_perpendicular 2017-02-13 09:23:14 +11:00
Michael du Breuil 97c57764c4 AP_Math: Add a 3D location difference, returning NED 2017-02-13 09:23:14 +11:00
Michael du Breuil c716e76bfc AP_HAL_SITL: Apply a GPS noise parameter 2017-02-13 09:23:14 +11:00