Commit Graph

227 Commits

Author SHA1 Message Date
Randy Mackay 0460147a15 Copter: guided mode yaw fix
Nose of copter now points at next guided point if it is more than 10m
away
2013-06-02 11:25:35 +09:00
Andrew Tridgell 30df8796ce Copter: fixed loading of waypoints
copter code assumes that command_total includes the home waypoint
2013-05-29 21:44:08 +10:00
Andrew Tridgell 903d5636bb Copter: added support for partial mission load
this allows individual waypoints to be updated in missions
2013-05-29 16:25:05 +10:00
Randy Mackay 1dbe98b566 Copter: display reason for pre-arm-check failures in GCS 2013-05-20 13:03:18 +09:00
Randy Mackay d10e3bc75f Copter: send_text_P bug fix for short messages 2013-05-20 12:52:20 +09:00
Randy Mackay 28c37dd798 Copter: do pre-arm checks when arming from GCS 2013-05-17 11:22:32 +09:00
Andrew Tridgell 9feb46c834 Copter: use new accel cal interact over MAVLink 2013-05-08 16:19:26 +10:00
Andrew Tridgell b6e3e59bc3 Copter: simplify setHIL for baro 2013-05-02 15:26:54 +10:00
Andrew Tridgell db57c8d7c5 Copter: removed the deprecated HIL sensors interface
must use the new HIL_STATE message now
2013-05-02 15:00:50 +10:00
Andrew Tridgell 172d9724df Copter: use new HIL compass API 2013-05-02 15:00:07 +10:00
Andrew Tridgell 25c576cad7 Copter: replaced constrain() with constrain_float() 2013-05-02 10:26:49 +10:00
Randy Mackay bab9fa25e5 Copter: add GCS failsafe 2013-04-29 21:30:22 +09:00
Randy Mackay 58d1da2d80 Copter: integrate AC_Fence in place of limits
Lesser functionality than limits but saves more than 150 bytes and it
works
2013-04-27 11:14:07 +09:00
Andrew Tridgell a0708460a4 Copter: convert to new logging system 2013-04-20 13:52:37 +10:00
Andrew Tridgell 67484a2ea1 Copter: make copter code compatible with the new logging system
not fully converted yet
2013-04-20 13:52:36 +10:00
Randy Mackay d2bd818b2d Copter: bug fix for auto_armed logic
Zero throttle when switching into an auto flight mode would cause the
motors to stop.
2013-04-17 21:28:42 +09:00
Randy Mackay 1ee825ee9a Copter: move alt and wp checking to AC_WPNAV
RTL fix so that if it starts rtl-ing from above 80m it returns home
while descending instead of descending at initial position.
add get and set_target_alt_for_reporting
2013-04-14 10:39:23 +09:00
Randy Mackay 58ed8cd544 Copter: replace set_next_WP with direct call to wp_nav 2013-04-14 10:37:55 +09:00
Randy Mackay 1dcd46bffc Copter: reduce compiler warnings 2013-04-05 22:25:58 +09:00
Michael Oborne 541fa13291 cleanup comments 2013-03-31 17:14:54 +08:00
Michael Oborne e80f2c094e HIL fix location, alt, mag from hil state message 2013-03-31 16:42:16 +08:00
Andrew Tridgell b280857025 Copter: use common angle wrap code 2013-03-29 13:14:31 +11:00
Randy Mackay f7d977fe37 Copter: add support for GPS fix type 2D 2013-03-27 11:41:47 +09:00
Andrew Tridgell d22a7c64c9 Copter: only enter CLI is link is idle when 3 enters are hit
this will prevent binary contents of RADIO packets being interpreted
as CLI enter line-feeds
2013-03-21 21:56:02 +11:00
Andrew Tridgell ce8313e8fb Copter: only allow CLI within 20s of startup and when motors not armed 2013-03-21 17:34:11 +11:00
Randy Mackay dcf21eee8f Copter: only allow entering the CLI within 30 seconds of start-up 2013-03-21 11:54:04 +09:00
Randy Mackay a17421da27 Copter: scale HIL accels consistently with Plane code 2013-03-19 15:07:15 +09:00
Randy Mackay b4b9d80c2f Copter: bug fix to accept HIL accel values correctly 2013-03-19 11:33:58 +09:00
Andrew Tridgell 952c56e990 Copter: fixed barometer init in HIL sensors mode 2013-03-18 16:20:25 +11:00
Andrew Tridgell ac06b5e62d Copter: remove unused function 2013-03-18 16:20:25 +11:00
Randy Mackay 597a4b912a Copter: fix to allow building HIL_MODE_SENSORS 2013-03-18 13:41:52 +09:00
Randy Mackay 61e29173e3 Copter: remove unused crosstrack variables and parameters
Cross track is still calculated internally to the wpnav controller so we
should move this to a library and still report it to the ground station
2013-03-17 16:46:31 +09:00
Randy Mackay f9539384a1 Copter: rename failsafe to failsafe_radio
Makes way for separation of failsafes for throttle, gps and gcs
2013-03-16 17:14:21 +09:00
Randy Mackay cb84ec9d9b Copter: add current based compass compensation 2013-03-03 23:02:36 +09:00
Randy Mackay 6601bd37cf Copter: integrate automatic roll and pitch trims 2013-02-19 12:51:24 +09:00
Michael Oborne 61e5b09f28 Send FS state to gcs for AC 2013-02-09 10:11:36 +08:00
Pat Hickey d418197898 ArduCopter: fixed memory unsafe member access in GCS_MAVLINK
* Smokey, this is not 'Nam. this is bowling. there are rules
2013-02-02 22:43:56 -08:00
Andrew Tridgell 47cc247046 Copter: limit number of bytes read per GCS check 2013-01-23 09:34:54 +11:00
Andrew Tridgell ae5f46abc9 Copter: fixed mavlink fetch of 16 character parameter 2013-01-21 16:52:01 +11:00
James Bielman 5631f865b2 Update floating point calculations to use floats instead of doubles.
- Allows use of hardware floating point on the Cortex-M4.
- Added "f" suffix to floating point literals.
- Call floating point versions of stdlib math functions.
2013-01-16 13:52:01 +11:00
Randy Mackay 177da0ca74 ArduCopter: fixed minor bug in logging of parameter changes to dataflash
It is questionable whether we should even bother writing these to the
dataflash as there is no way to recognise which parameter has been
affectded
2013-01-13 00:15:34 +09:00
Andrew Tridgell dcb181d2d8 Copter: use new AP_Scheduler library 2013-01-12 12:02:57 +11:00
Andrew Tridgell a237b6cc7b Copter: update for new AP_Param API 2013-01-09 13:30:58 +11:00
Andrew Tridgell 860f4b2605 Copter: merge the latest 2.9 changes into master 2013-01-08 14:37:40 -08:00
Andrew Tridgell 647b3b09b6 Copter: ensure we process deferred mavlink messages 2013-01-07 11:07:39 +11:00
Andrew Tridgell d952ccf968 Copter: added main_loop_ready() function
this tells us when the main loop is ready to run. MAVLink won't send a
message if the main loop could run.
2013-01-07 11:07:34 +11:00
Andrew Tridgell b079a96eaf Copter: removed GPS_STATUS message
this message is huge, and completely pointless now that we have
num_satellites in GPS_RAW_INT
2013-01-05 20:39:31 +11:00
rmackay9 861a66e26e ArduCopter: remove @brief from GCS_MAVLINK class's comments because they mess up the mission planner's parsing of parameter descriptions 2013-01-03 00:34:10 +09:00
rmackay9 4ef7e7b1c6 ArduCopter: add parameter descriptions for GCS_Mavlink objects 2013-01-02 23:36:48 +09:00
Andrew Tridgell 94e3322e24 Copter: fixed build on px4 2013-01-02 22:09:02 +11:00
Andrew Tridgell ead38f917f Copter: use GRAVITY_MSS 2013-01-02 14:45:08 +11:00
rmackay9 68b62abd38 ArduCopter with the new Camera and Relay classes for APM1 and APM2.
All changes by Sandro Benigno
2013-01-02 09:55:37 +11:00
rmackay9 e77b54c7dc ArduCopter: bug fix to GUIDED mode. Now checks that desired altitude was reached before deciding the waypoint is complete. 2013-01-02 09:24:31 +11:00
rmackay9 331a73c4ac ArduCopter: remove duplicate (?) send of MSG_EXTENDED_STATUS1 2013-01-02 09:20:08 +11:00
rmackay9 6baddf4aee ArduCopter: remove unused variable last_5hz 2013-01-02 09:20:08 +11:00
rmackay9 1f5fdcdaa8 ArduCopter: remove unnecessary "Initialising APM message..." 2013-01-02 09:20:08 +11:00
rmackay9 d926360e81 ArduCopter: move gcs updates to run only when there are 4ms of spare time before the next 100hz iteration starts 2013-01-02 09:14:31 +11:00
rmackay9 6da68c53a5 ArduCopter: bug fix so AP_Limits does not use up memory if it is disabled 2013-01-02 09:13:42 +11:00
rmackay9 0ab82f8c4e ArduCopter: clear ahrs roll and pitch trims after an accel level command 2013-01-02 09:12:17 +11:00
Andrew Tridgell 9931009db2 Math: use pythagorous2() in some more places 2012-12-20 15:16:18 +11:00
Pat Hickey 1878290510 ArduCopter: fixes for AP_InertialSenor_UserInteract 2012-12-20 14:53:23 +11:00
Pat Hickey 2ad4fed8cd Rover/Copter/Plane: change from vsnprintf to vsnprintf_P 2012-12-20 14:52:38 +11:00
Pat Hickey 54b98c0a7c ArduPlane: use hal's vsnprintf 2012-12-20 14:52:37 +11:00
Andrew Tridgell 9e986801c9 Copter: fixed SITL for ArduCopter 2012-12-20 14:52:34 +11:00
Pat Hickey 7af03127f6 ArduCopter: more work 2012-12-20 14:52:28 +11:00
Pat Hickey d9e0bbbbab ArduCopter: first pass at AP_HAL porting
* changed all the byte types to uint8_t
* fixed up much of the serial stuff
2012-12-20 14:52:27 +11:00
rmackay9 9dd978576b ArduCopter: auto yaw changes to allow pilot override of yaw during missions
Added set_yaw_mode to better control of yaw controller changes and variable initialisation.
Replaced AUTO_YAW mode with separate yaw controllers YAW_LOOK_AT_NEXT_WP, YAW_LOOK_AT_LOCATION, YAW_LOOK_AT_HEADING.
Pilot manual override of yaw causes yaw to change to YAW_HOLD (i.e. manual yaw) until next waypoint is reached.
Added get_yaw_slew function to control how quickly autopilot turns copter
Changed YAW_LOOK_AHEAD to use GPS heading and moved to new get_look_ahead_yaw function in Attitude.pde
Renamed variables: target_bearing->wp_bearing, original_target_bearing->original_wp_bearing.
Removed auto_yaw_tracking and auto_yaw variables and update_auto_yaw function as they are no longer needed.
Simplified MAV_CMD_CONDITION_YAW handling (do_yaw).  We lose ability to control direction of turn and ability to do long panorama shots but it now works between waypoints and save 20bytes.
2012-12-08 14:23:32 +09:00
Michael Oborne 68aa5e4682 AC add ability to start new accel_scale via mavlink 2012-11-28 21:38:58 +08:00
Andrew Tridgell 2949d58b71 Copter: re-enable sending of GLOBAL_POSITION_INT message
this gives important raw GPS velocity information, plus relative and
absolute height
2012-11-28 11:26:19 +11:00
Andrew Tridgell 5818aaad42 Copter: fixed build error
thanks to Marco for pointing this out
2012-11-24 20:39:35 +11:00
Andrew Tridgell f6ec932d63 Copter: added reboot in CLI and over MAVLink
useful for getting out of CLI
2012-11-24 18:20:37 +11:00
Andrew Tridgell cd07d965a7 Copter: ported RSSI_PIN option from ArduPlane
this is useful for OSD users
2012-11-22 20:59:33 +11:00
Andrew Tridgell dbdb3e1194 ACM: allow fetch of parameters by index
this makes it more efficient to re-fetch parameters that are missing
2012-11-22 00:16:57 +11:00
Andrew Tridgell bcae83c4f6 ACM: make it possible to run CLI on radio port in ArduCopter 2012-11-21 21:41:34 +11:00
Andrew Tridgell 704da2a5d9 MAVLink: make it possible to enter the CLI over the radio
this only works on the APM2, where UART0 is also the radio port
2012-11-21 14:11:05 +11:00
Andrew Tridgell bcf740a82f ACM: support 16 character parameter names 2012-11-20 21:38:58 +11:00
Andrew Tridgell 69fbcc8683 MAVLink: fixed accel and gyro sensor offsets in MAVLink 2012-11-20 18:32:26 +11:00
Andrew Tridgell 531e62d3b5 MAVLink: improve usefulness of logged GPS velocities
we need them to align with time to use them for accelerations
2012-11-17 17:45:30 +11:00
rmackay9 cdfd3f9ccc ArduCopter, ArduPlane: rename ap variable in GCS_Mavlink.pde to resolve compiler warning re shadowing of variable 'ap'
Changed ArduPlane to keep function consistent with ArduCopter
2012-11-12 13:30:04 +09:00
Andrew Tridgell fddfb0b1a3 MAVLink: update compass health in SYS_STATUS
this will make it easier to tell if a I2C error occurred in flight
2012-11-12 11:26:54 +11:00
rmackay9 bcb9519fd7 ArduCopter: renamed system bitmap to ap_system to resolve desktop compile issues 2012-11-11 22:42:10 +09:00
rmackay9 95f6357d35 ArduCopter: fix APM2 build 2012-11-10 22:06:23 +09:00
Jason Short d2a5928c06 Ap state updates 2012-11-09 22:15:15 -08:00
rmackay9 a1b4ec6d0e ArduCopter: move to use new INS library instead of IMU library 2012-11-07 19:21:09 +09:00
Andrew Tridgell e8ab62f6e5 ACM: switch to GPS velocity numbers in GLOBAL_POSITION_INT
these numbers are much more useful than the redundent rotated ground
speed. They tell us exactly what the GPS is giving to AHRS
2012-11-05 15:23:41 +11:00
Pat Hickey bbc7f050e5 ArduCopter GCS_MAVLink: COMMAND_LONG for arm/disarm motors
Date: Wed, 26 Sep 2012 15:56:43 -0700
Subject: ArduCopter arm/disarm command consensus
From: Pat Hickey
To: Michael Oborne
Cc: "Craig J. Elder", arducopter
<arducopter@googlegroups.com>,
    mavelous <mavelous@googlegroups.com>

    Michael,

    Per our discussion today,

    In a MAVLINK_MSG_ID_COMMAND_LONG
    A MAV_CMD of type MAV_CMD_COMPONENT_ARM_DISARM
    with component id MAV_COMP_ID_SYSTEM_CONTROL = 250,
    uses param index 1 to specify an arm/disarm motors event: 1 to arm,
    0 to disarm

    Thanks for working this out with me. Sorry to get it so completely
    wrong the first time around!

    Best
    Pat
2012-10-10 18:59:55 +08:00
Michael Oborne a38fef65c7 AP,AC Add ability to override an altitude in any auto mode, on the current active target 2012-09-30 07:29:33 +08:00
Jason Short e8e8c27db4 ACM Mavlink - fixed comparison of unsigned to signed int by casting to uint8_t 2012-09-10 20:22:57 -07:00
Andrew Tridgell e8d928cca4 ACM: added TELEM_DELAY to ArduCopter 2012-08-30 09:03:01 +10:00
uncrustify f7a748d43b uncrustify ArduCopter/GCS_Mavlink.pde 2012-08-21 18:56:01 -07:00
rmackay9 11e946eb54 ArduCopter, ArduPilot: revert mavlink delay callback to be "unsigned long" 2012-08-18 20:34:41 +09:00
rmackay9 2e4e8bbf1a ArduCopter: changed "unsigned long" to "uint32_t" 2012-08-18 19:05:55 +09:00
rmackay9 36f947acb9 ArduCopter: changed all "int" to "int16_t" and a few "long"s to "int32_t".
Also moved "simple_counter" variable from global scope to the "update_simple_mode" function which is the only place that it's actually used.
2012-08-16 20:04:46 +09:00
Andrew Tridgell ed064b2506 MAVLink: enable fetching of single parameters
this makes it possible for the GCS to fetch a single parameter by
name, which is useful for parameters that change in flight
2012-08-16 10:14:46 +10:00
Andrew Tridgell dc47074dbd MAVLink: removed the need for Mavlink_compat.h
we have now fully transitioned to MAVLink 1.0, so we no longer need
the compatibility layer and the old names in the code
2012-08-09 12:22:46 +10:00
Andrew Tridgell 2a7b298bbc MAVLink: moved mavlink variables back to library
these were moved to the main sketches to allow for compile time
selection of MAVLink 0.9 vs 1.0. We no longer support 0.9, so we can
move it back, which simplifies some test sketches
2012-08-09 12:06:21 +10:00
Andrew Tridgell c2a4d59132 AP_Param: update ArduCopter core for new AP_Param interface 2012-08-08 12:11:57 +10:00
Michael Oborne e577b51e17 AC remove attitude hil unused extra (gps jump issue.) 2012-07-29 08:18:41 +08:00
Michael Oborne ef870e3ca1 AC remove some attitude HIL limitations 2012-07-28 13:59:30 +08:00
rmackay9 8e5312a759 ArduCopter: add support for MAVLink's MAV_CMD_NAV_ROI command
do_nav_roi and verify_nav_roi functions added to turn the copter and/or mount in response to a MAV_CMD_NAV_ROI way point
2012-07-25 11:02:54 +09:00