Commit Graph

5052 Commits

Author SHA1 Message Date
Andrew Tridgell 7b2d56a8cb AC_Fence: disable example build
fails to build with compiler error
2014-04-01 06:38:25 +11:00
Andrew Tridgell 3b8c6e629d AC_AttitudeControl: updated example for new GPS API 2014-04-01 06:38:25 +11:00
Andrew Tridgell c2486d8d6e AP_GPS: updated examples for new API
removed old per-driver examples, and updates AUTO example
2014-04-01 06:38:25 +11:00
Andrew Tridgell d04d33a02d AP_InertialNav: convert to new GPS API 2014-04-01 06:38:24 +11:00
Andrew Tridgell 5a2e84e792 AP_NavEKF: changes for new GPS API 2014-04-01 06:38:24 +11:00
Andrew Tridgell b7a2db716b AP_Arming: convert to new GPS API 2014-04-01 06:38:24 +11:00
Andrew Tridgell eb67948171 AP_Mount: convert to new GPS API 2014-04-01 06:38:24 +11:00
Andrew Tridgell f07e4dee52 AP_AHRS: convert to new GPS API 2014-04-01 06:38:24 +11:00
Andrew Tridgell 31d3b6555f DataFlash: convert to new GPS API 2014-04-01 06:38:23 +11:00
Andrew Tridgell 368daf89f1 AP_GPS: new GPS API
This is a complete rewrite of the GPS driver structure, with a static
main driver and separate backend drivers. This will allow proper
support for multiple GPSes, and will allow parameters to be set on the
GPS object
2014-04-01 06:38:23 +11:00
Andrew Tridgell 2dd92832dc AP_GPS: support multiple AP_GPS_Auto drivers
move all static variables into a dynamically allocated structure in
the AUTO driver which gets freed when we have found a GPS type
2014-04-01 06:38:23 +11:00
Andrew Tridgell 3c4389180e AP_GPS: removed GPS_406 driver
this driver was untested and badly structured. If we want to support
the 406 we can revive it and do it properly
2014-04-01 06:38:23 +11:00
Jonathan Challinger f0fc0397d3 Notify: add arming failure tone 2014-03-31 20:34:27 +09:00
Randy Mackay 7bb981f2df AP_Notify: correct dos formatting 2014-03-31 20:34:24 +09:00
Andrew Tridgell 31082f4ce2 AP_Mission: fixed a bug re-entering AUTO
this fixes a bug found by Marco where we would continue in CRUISE mode
with no waypoint if we re-entered AUTO after a mission reset
2014-03-31 06:18:07 +11:00
Randy Mackay 93f8d53d1b Mission: make get_prev_nav_cmd_index const 2014-03-30 23:09:54 +09:00
Randy Mackay b15d4379d8 AC_WPNav: use atan2f, make methods const 2014-03-30 23:09:51 +09:00
Randy Mackay 3ad635feeb AC_AttControl: 45deg/sec yaw rate for Auto, RTL 2014-03-30 15:44:14 +09:00
Randy Mackay d27ca53a9d AC_WPNav: spline sets origin vel to zero when no prev segment
Issue caught by Michael Oborne
2014-03-30 15:19:18 +09:00
Randy Mackay 7dfde39e19 AC_WPNav: advance_spline to use dt 2014-03-30 15:02:07 +09:00
Randy Mackay c0458b786a AC_WPNav: check acceleration is non zero 2014-03-30 11:52:44 +09:00
Randy Mackay f0f3688172 AC_WPNav: rounder corners for short spline segments 2014-03-30 11:52:41 +09:00
priseborough 9c5f564dc5 AP_NavEKF : Fixes bug in initial earth magnetic field states
The calculation for these states was not being bias corrected
2014-03-30 07:43:52 +11:00
Randy Mackay 7bff8e9312 AC_AttControl: constrain earth frame yaw angle error
This temporarily resolves the wobble we see in Auto when the target
heading is suddenly changed leading to a large yaw angle error
2014-03-29 20:42:21 +09:00
Randy Mackay 197683d539 WPNav: clean up spline comments 2014-03-29 17:57:47 +09:00
priseborough e1819bb53a AP_NavEKF : Add initial parameter defaults for Copter, Rover and Plane 2014-03-29 14:06:43 +11:00
Randy Mackay ac339a0289 Mission: add decoding of NAV_SPLINE command 2014-03-28 09:23:30 +09:00
Randy Mackay e7be622eef GCS_MAVLink: generate after adding NAV_SPLINE cmd 2014-03-28 09:23:28 +09:00
Randy Mackay 519d5fc444 GCS_MAVLink: add MAV_CMD_NAV_SPLINE_WAYPOINT cmd
This is the same as a NAV_WAYPOINT except that the vehicle flies a
spline curved path to the destination
2014-03-28 09:23:23 +09:00
Randy Mackay 24eb195aa3 WPNav: add yaw control for straight line wp nav 2014-03-28 09:23:13 +09:00
Randy Mackay b42b12f7be AC_WPNav: add get_spline_yaw 2014-03-28 09:23:07 +09:00
Randy Mackay f2d9ad41aa Mission: minor comment update 2014-03-28 09:22:56 +09:00
Randy Mackay e5e71ce371 WPNav: add spline support 2014-03-28 09:22:53 +09:00
Michael Day e1d193f539 GCS_MAVLink: Generated code from message additions for autofence. 2014-03-27 09:26:20 +11:00
Michael Day c5ebd120f1 GCS_MAVLink: XML for MAV_CMD_DO_FENCE_ENABLE and MAV_SYS_STATUS_GEOFENCE 2014-03-27 09:26:20 +11:00
priseborough 55c60b8f07 AP_NavEKF : Reduce Magnetometer innovation consistency check threshold 2014-03-26 21:29:47 +11:00
priseborough 45b1a2fa46 AP_NavEKF : Reduce GPS position innovation consistency fail threshold
This patch reduces the maximum acceptable GPS jump from approximately 16 to 8 metres
This will provide copters with more protection for close in loiter situations
2014-03-26 21:29:45 +11:00
Andrew Tridgell 8c0c9c317e RC_Channel: prevent a numerical exception with bad mount parameters 2014-03-26 17:38:27 +11:00
Andrew Tridgell bafc664750 AP_NavEKF: use APM_BUILD_TYPE() macro 2014-03-26 12:42:11 +11:00
Andrew Tridgell fbec098e2f AP_Vehicle: added APM_BUILD_TYPE() macro
this makes checking build type less fragile
2014-03-26 12:41:53 +11:00
Andrew Tridgell e3792f9b26 AP_NavEKF: added a mechanism for per-vehicle-type defaults in EKF 2014-03-26 12:30:17 +11:00
Andrew Tridgell 6b2f0b9553 AP_Vehicle: added defines for main vehicle types 2014-03-26 12:15:45 +11:00
Andrew Tridgell 6bf2b5033e DataFlash: support logging up to 14 RC input channels 2014-03-25 16:39:19 +11:00
Andrew Tridgell 6039eab442 RC_Channel: support up to 12 aux channels on PX4
this allows RC13 and RC14 to work correctly as aux outputs on Pixhawk
2014-03-25 15:42:48 +11:00
Andrew Tridgell 64772cede8 GCS_MAVLink: rebuild MAVLink headers 2014-03-25 14:47:43 +11:00
Andrew Tridgell d24547b390 GCS_MAVLink: merge latest msgs from upstream 2014-03-25 14:47:05 +11:00
Andrew Tridgell 6eee2421cc AP_HAL: removed RCInput valid_channels() and added new_input() and num_channels()
the valid_channels() method was inconsistently implemented between
boards, and served two quite different purposes. It is clearer as two
functions
2014-03-25 14:39:41 +11:00
Andrew Tridgell 27dbf608c8 DataFlash: fixed a build warning 2014-03-25 13:31:21 +11:00
Andrew Tridgell 2a9a89e020 HAL_PX4: fixes for merged upstream PX4Firmware 2014-03-25 10:30:00 +11:00
priseborough 17cdac7bc8 AP_NavEKF : Clean up angle and mag field initialisation
This path reduces duplicated code, eliminates unused variables and
causes the earth magnetic field states to be reset when exiting static mode
which will occur every time copter is armed. This enables copters to be
powered on and initialised inside vehicles or houses, without bad earth
field values affecting flight.
2014-03-24 19:54:48 +11:00
Andrew Tridgell f05b90bfd2 GCS_MAVLink: fixed some compiler warnings 2014-03-24 12:52:39 +11:00
Andrew Tridgell 0af35bd636 AP_Mission: fixed some compiler warnings 2014-03-24 12:52:27 +11:00
Andrew Tridgell 2763393908 AP_InertialSensor: fixed some compiler warnings 2014-03-24 12:52:16 +11:00
Andrew Tridgell c6f3e0a81c AP_GPS: fixed example builds 2014-03-24 12:20:34 +11:00
Andrew Tridgell 271ba3a6bc AP_InertialNav: fixed example build 2014-03-24 12:03:47 +11:00
Andrew Tridgell 1b1a92251f DataFlash: allow drivers to setup their own logging formats
this allows drivers to ask the dataflash driver to add new log formats
2014-03-24 12:03:31 +11:00
Andrew Tridgell 5630bb1ef6 AP_GPS: added detailed hardware status logging for uBlox
this gives us noise, jamming and RF information from the uBlox
protocol. This will hopefully allow a more detailed investigation of
antenna choices and RF interference
2014-03-24 12:02:37 +11:00
Andrew Tridgell 7ff293ca38 AP_GPS: added DataFlash to GPS init to allow for detailed logging
this will allow GPS drivers to log much more detailed device specific
information
2014-03-24 12:01:13 +11:00
Andrew Tridgell 485ae596fc AP_Compass: fixed last_update for secondary compass with primary failed
this ensures EKF and DCM will use a secondary compass if the primary
fails
2014-03-23 22:05:17 +11:00
Matthew Lloyd 60a4f74de6 AP_Compass: avoid division by zero if we haven't received any mag reports
Otherwise, get_field() will return NaNs after once every few calls to
read() during compassmot on PX4 platforms, which causes compassmot to fail.

This is a quick hack around the deeper issue, which could be something
like the PX4 mag driver experiencing starvation and skipping mag reports,
buffer overrun or something else that causes mag reports to be dropped.
Or perhaps we should never expect in the first place that we will always
receive at least one mag report between calls to read().
2014-03-23 21:22:32 +11:00
priseborough 7ae86b3979 AP_NavEKF : Track baro height observations pre-arm
This prevents copter from failing the pre-arm height discrepancy test
2014-03-23 18:25:50 +11:00
priseborough 7780d55788 AP_NavEKF : Prevent large magnetic field adaptations early in flight 2014-03-22 19:55:26 +11:00
Randy Mackay 3efad982c0 GCS_Mavlink: return MISSION_INVALID when conversion fails
Requested by MichaelO to allow better error message to be displayed to
user when the mission upload from the GCS to vehicle fails
2014-03-22 11:29:36 +09:00
Paul Riseborough f7007569d1 AP_NavEKF : Fix bug that limits copter sensor delay compensation to 125
msec
2014-03-21 21:52:20 +11:00
Paul Riseborough b2c0979947 AP_NavEKF : Fixes bug that causes accel bias to diverge in static mode, preventing copter arming 2014-03-21 21:49:50 +11:00
Andrew Tridgell a55c4e2296 AP_TECS: set target airspeed, not min/max airspeed, on landing
this seems to prevent ballooning of the altitude when we are in the
landing approach, and gives a much smoother landing
2014-03-20 17:34:39 +11:00
Andrew Tridgell 98530928b5 AP_TECS: make target landing speed a float
some users may want more precise control
2014-03-20 17:34:36 +11:00
Andrew Tridgell b1ad2be897 AP_SpdHgtControl: added get_target_airspeed() interface 2014-03-20 17:34:29 +11:00
Michael Day bd7e1b82e1 AP_TECS: Auto landing now takes throttle_nudge into account. 2014-03-20 17:34:26 +11:00
Michael Day 861690dea2 AP_TECS: New params LAND_ARSPD and LAND_THR auto-slowing landings.
Also controlling pitch by ignoring height error during landing.
This serves to keep the nose up.
2014-03-20 17:34:23 +11:00
Andrew Tridgell 3bdc22d672 AP_Mission: make p1 16 bit
this gives us a 16 bit value for extra data on a location, allowing
for an accurate angle in centi-degrees.

Also add validation of the size of the union arms in Content
2014-03-20 16:57:09 +11:00
Andrew Tridgell 959cafef8d AP_Common: make alt in Location 24 bit
this allows for up to 83km mission altitudes, while allowing for 1
more byte in the command structure, making p1 16 bits
2014-03-20 16:57:09 +11:00
Andrew Tridgell d508c7f37f GCS_MAVLink: re-generate MAVLink headers 2014-03-20 10:21:28 +11:00
Andrew Tridgell 106fda773f GCS_MAVLink: merge XML from upstream 2014-03-20 10:20:00 +11:00
Andrew Tridgell 8af9573806 GCS_MAVLink: allow logging of RADIO_STATUS, very useful for link analysis 2014-03-20 09:56:37 +11:00
Michael Day 68dbfd6315 DataFlash: Add Log_Write_Radio to store RSSI and noise on board. 2014-03-20 09:56:37 +11:00
Andrew Tridgell 8202cf437b AP_Relay: fixed Pixhawk relay pin numbers
thanks to Craig for spotting this!
2014-03-20 09:40:08 +11:00
Paul Riseborough 8a2d16d13d AP_NavEKF : modifed Zaccel bias noise parameter to prevent unstable bias estimate 2014-03-20 08:50:00 +11:00
Randy Mackay c520cb789c Mission: cmd field types to match mavlink commands
Split Set-Servo and Repeat-Servo command structures
Split Set-Relay and Repeat-Relay command structures
2014-03-19 12:14:22 +09:00
Andrew Tridgell 0832aba6bc GCS_MAVLINK: moved deferred message handling into common code 2014-03-19 12:14:15 +09:00
Andrew Tridgell 8d89a64312 GCS_MAVLink: moved handling of MISSION_ITEM into common code 2014-03-19 12:14:09 +09:00
Andrew Tridgell ba8c4b86a0 AP_InertialNav: fixed example build 2014-03-19 12:14:08 +09:00
Andrew Tridgell d36989f6a1 AP_HAL: fixed example build 2014-03-19 12:14:06 +09:00
Andrew Tridgell d3d71d597c AP_Baro: fixed example build 2014-03-19 12:14:05 +09:00
Andrew Tridgell dbd8f4b735 AP_Airspeed: fixed example build 2014-03-19 12:14:03 +09:00
Andrew Tridgell afab8a9c5b AP_AHRS: fixed example build 2014-03-19 12:14:02 +09:00
Andrew Tridgell 04587efb2d AC_WPNav: fixed example build 2014-03-19 12:14:00 +09:00
Andrew Tridgell 1e9dcba3da AC_Sprayer: fixed example build 2014-03-19 12:13:59 +09:00
Andrew Tridgell 4507c0fc4c AC_Fence: fixed example build 2014-03-19 12:13:57 +09:00
Andrew Tridgell 73ae38eaf0 AC_AttitudeControl: fixed example build 2014-03-19 12:13:56 +09:00
Andrew Tridgell 23e296dd00 GCS_Console: fixed example build 2014-03-19 12:13:55 +09:00
Andrew Tridgell 5f85792224 DataFlash: fixed example build 2014-03-19 12:13:53 +09:00
Andrew Tridgell 2a199c4f03 AP_Notify: fixed example build 2014-03-19 12:13:51 +09:00
Andrew Tridgell 6eece3a278 AP_Mount: fixed example build 2014-03-19 12:13:50 +09:00
Andrew Tridgell acd54d0826 AP_Math: fixed example build 2014-03-19 12:13:48 +09:00
Andrew Tridgell 731f980327 AP_InertialSensor: fixed example build 2014-03-19 12:13:47 +09:00
Andrew Tridgell 965f6bd3bd GCS_MAVLink: make DataFlash a pointer
handle sketches where DataFlash is not available
2014-03-19 12:13:37 +09:00
Andrew Tridgell b85c5123b2 GCS_MAVLink: added save parameter to handle_request_data_stream()
this allows copter to not save stream rate changes
2014-03-19 12:13:35 +09:00
Andrew Tridgell 79bb14b8c1 GCS_MAVLink: moved RADIO_STATUS handling into common code 2014-03-19 12:13:34 +09:00
Andrew Tridgell 144217ac74 GCS_MAVLink: moved parameter and stream handling into common code
this keeps it in common between vehicles, and saves stack space
2014-03-19 12:13:32 +09:00