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
Andrew Tridgell
85465c9126
MAVLink: fixed another two places where micros() was used for a millisecond time
2012-07-20 11:57:15 +10:00
Jonathan Challinger
fc4f111d15
Changed mavlink GLOBAL_POSITION_INT.relative_alt message to correctly return altitude above ground.
2012-07-17 16:15:11 +10:00
Andreas M. Antonopoulos
a976a59c88
AP_Limits: Configuration defaults moved to config.h. Fixed AP_LIMITS==DISABLED handling.
2012-07-16 11:46:43 -07:00
Andreas M. Antonopoulos
c73f7ef3ab
AP_Limits library, provides modular "limits" such as altitude and geo-fencing.
2012-07-14 19:26:17 -07:00
Andrew Tridgell
8220ae8096
MAVLink: climb_rate is in m/s
2012-07-05 13:20:26 +10:00
Andrew Tridgell
60caaa4b04
MAVLink: remove MAVLink 0.9 protocol support
...
this simplifies the code a lot. We're not going back to 1.0
2012-07-05 13:00:46 +10:00
Jason Short
3cf16c1424
GCS_Mavlink.pde
...
removed Approach define
2012-07-01 13:40:11 -07:00
Jason Short
c276fe8fa0
GCS_Mavlink: added notes to #if malink10
2012-06-29 21:20:28 -07:00
Andrew Tridgell
55092c25a6
SITL: enable the SIM_* parameters in ArduCopter and ArduPlane
2012-06-29 15:10:52 +10:00
Andrew Tridgell
dae1a57dc5
ACM: adapt the ArduCopter code for new barometer interface
2012-06-27 16:01:50 +10:00
rmackay9
068fe64b9b
ArduCopter HIL: changed calls to setHIL to send in time as a uint32_t (it was a float)
2012-06-26 22:50:17 +09:00
Jason Short
46fb3b783a
GCS_Mavlink.pde : mav_nav only used in legacy Mavlink.
2012-06-25 23:08:25 -07:00
Jason Short
c71c503c84
GCS Mavlink.pde: change reference to nav_bearing to target_bearing.
2012-06-25 23:06:28 -07:00
Andreas M. Antonopoulos
bef005b5f2
AC2.6: Fix battery calculation and scaling bug for MAV1.0, now same as ArduPlane
...
http://code.google.com/p/arducopter/issues/detail?id=430
2012-06-24 17:01:25 -07:00
Michael Oborne
14be88dd55
AC: add hilstate message
2012-06-04 16:24:08 +08:00
Andrew Tridgell
7c63d2c17b
ACM: MAVLINK10 uses HIL_STATE
...
thanks to Michael for noticing this
2012-06-04 13:31:07 +10:00
Andrew Tridgell
3f4e87cccc
ACM: fixed HIL build for MAVLINK10
2012-06-04 13:14:52 +10:00
Michael Oborne
9303a89573
fix AC hil build
2012-06-04 11:12:52 +08:00
Andrew Tridgell
d9457ecc38
MAVLink: send time of GPS fix accurately
...
when we send a GPS_RAW message, set the usec field to the time we got
the fix from the GPS, not the current time. This makes it possible for
aerial photo processing to be more accurate, as the usec field with
more accurately reflect the planes position/time pair
2012-05-23 17:33:33 +10:00
Andrew Tridgell
422dc82f32
MAVLink: allow parameter fetch during mavlink_delay()
...
this allows the planner to fully connect to the APM with MAVLink while
doing a DataFlash erase
2012-05-22 16:13:35 +10:00
Andrew Tridgell
4fee26437b
MAVLink: make ACM build with MAVLink 1.0 possible in arduino GUI
2012-04-24 22:24:58 +10:00
Andrew Tridgell
fe970221e2
ACM: added support for MAVLink 1.0 to ArduCopter
...
most operations should now work
2012-04-24 19:54:20 +10:00
rmackay9
e5710958bc
ArduCopter - GCS_Mavlink.pde - changed output to ground station to use new AP_Motor's class motors array inplace of the global "motor_out" array.
2012-04-04 22:52:26 +09:00
Andrew Tridgell
c0a54762c6
MAVLink: port the new adaptive flow control to ArduCopter
...
This allows for arbitrary stream rates, and supports flow control if
you are using a 3DR radio
2012-04-02 11:18:53 +10:00
Andrew Tridgell
e0bb7e2777
MAVLink: don't waste 100 bytes of bandwidth sending 1 byte of information
...
the GPS_STATUS message is a massive waste of bandwidth, but it is the
only message that tells us the number of visible satellites. So only
send it if that information changes.
This makes MAVLink work better at low baud rates
2012-03-30 17:46:20 +11:00
Andrew Tridgell
34506b170f
Mavlink: fixed warnings about limits on int32 values
2012-03-27 15:37:25 +11:00
Andrew Tridgell
458d55e5bc
MAVLink: constrain variable changes to the datatype range
...
if someone tries to set a AP_Int16 to a value of 300000, they now get
32767 instead of -27678
2012-03-19 17:29:02 +11:00
Andrew Tridgell
547b4ed55b
AHRS: adapt ArduCopter for new AHRS framework
2012-03-19 17:29:02 +11:00
Andrew Tridgell
d75e883fe8
GCS: get_integrator() is now get_gyro_drift() in DCM
2012-03-10 10:34:33 +11:00
Andrew Tridgell
7291dfc25a
ACM: removed the special case for quaternions in GCS code
2012-03-10 10:34:31 +11:00
Andrew Tridgell
7e4c8592ff
ACM: make it possible to build ArduCopter with quaternions
2012-03-10 10:34:29 +11:00
Andrew Tridgell
a0ce202d87
ACM: added SIMSTATE, DCM and HWSTATUS messages to ACM
2012-03-10 10:34:27 +11:00
Andrew Tridgell
690dc9052a
GCS: force scalar type in copy_name()
...
this enables access to compass offsets over MAVLink
2012-02-25 11:37:20 +11:00
Andrew Tridgell
2e9105c68a
AP_Param: added special handling for Vector3f
...
We would like to be able to use Vector3f as a parameter while exposing
the individual elements of the vector as MAVLink parameters. This
change to AP_Param makes that possible, by giving AP_Vector3f a dual
personality
2012-02-25 11:37:20 +11:00
Andrew Tridgell
df8a557630
AP_Param: update users of AP_Param for ParamToken
2012-02-19 17:05:28 +11:00
Andrew Tridgell
ecdbfd257a
token is 16 bits now
2012-02-13 16:22:53 +11:00
Andrew Tridgell
0b3e3ec5c8
added group indexes to GCS_MAVLINK class
2012-02-13 16:22:52 +11:00
Andrew Tridgell
d4305e0ae2
fixed apm2beta build with AP_Param
2012-02-13 16:22:52 +11:00
Andrew Tridgell
c9c422539e
update ACM MAVLink code for AP_Param
2012-02-13 16:22:52 +11:00
Jason Short
7833cea9d4
2.2B6 - Please verify Heli still functions properly.
...
Added AC_PID lib
Updated landing code
bug fixes
2012-01-28 22:00:05 -08:00
Jason Short
dd1e08a7e0
Causes Aero_SIM to fail
2012-01-22 09:34:43 -08:00
Jason Short
2fa24e0557
added conversions of CM to M
2012-01-21 22:09:39 -08:00
Jason Short
287ffb5fb4
enabled Mavlink Land command
2012-01-20 22:52:30 -08:00
Michael Oborne
3142a75913
AC fix attitude level hil
2012-01-21 07:52:52 +08:00
Doug Weibel
ed9f7cb1b6
Update battery monitoring code for ArduCopter
...
Fixes compatibility for APM2. Also a significant update to the battery monitoring code: We previously had monitoring modes for individual cell voltages for 3 and 4 cell lipos. These have been removed as they were never really supported (the cell voltages were computed but were not reported or recorded anywhere). Also, some clean-up/prep work was done for supporting monitoring 2 separate battery packs. The CLI battery and current monitoring tests were consolidated into 1 test.
changed
2012-01-15 17:10:02 -07:00
Jason Short
28262dd825
Added Xplane output option
2012-01-04 09:28:38 -08:00
Jason Short
a2c8f5af15
removed unused vars
2012-01-04 09:28:37 -08:00
Jason Short
2fc6a645b4
removed unused Airspeed config
2012-01-04 09:28:36 -08:00
Jason Short
dac29af7ab
Sync with Arduplane
2011-12-30 23:48:04 -08:00
Michael Oborne
e20d3a3676
add method of detecting if motors are armed
2011-12-14 06:18:29 +08:00
Andrew Tridgell
483bef35e5
IMU: update ACM and APM for flash_leds change in IMU init
2011-12-13 18:19:41 +11:00
Pat Hickey
6dbd6b4181
ArduCopter: Get barometer data in terms of AP_Baro interface
...
* Major change: Log.pde Log_Write_Control_Tuning has changed significantly
* MS5611 has no concept of RawPres and _offset_press
* Log the get_pressure() instead. (If we don't trust the barometer, what's the point?)
2011-12-11 15:21:10 -08:00
Jason Short
d7cc241f85
formatting
2011-12-03 15:29:33 -08:00
Andrew Tridgell
39a36fe946
fixed the "reboot on GPS lock" bug
...
the problem was that with APM2 we may not have a 2nd GCS instance. The
"gps alt: xxx" message was being unconditionally sent to both GCS
instances, which caused a crash
2011-12-04 09:06:58 +11:00
Jason Short
b3bd4bd3c9
Cosmetic cleanup, commented functions for compiler warnings
2011-11-27 22:23:02 -08:00
Jason Short
ca5e4bb802
Allow output of system type
2011-11-26 16:39:28 -08:00
Jason Short
52297679c4
sending Mavlink system type
2011-11-26 16:39:28 -08:00
Andrew Tridgell
3a542b3ef3
USB-MUX: enable USB MUX switching for ArduCopter
2011-11-25 20:00:19 -08:00
Andrew Tridgell
338445e60c
ArduCopter-HIL: fixed HIL build
...
Logging isn't always enabled
2011-11-25 20:00:18 -08:00
Andrew Tridgell
aa558eb033
fixed a valgrind error
...
this error is harmless, but false positives can disguise real errors
2011-11-25 20:00:18 -08:00
Jason Short
7feecf3220
renamed WP mask
2011-11-20 00:22:53 -08:00
Jason Short
194778a6f9
Logging APVar saves
2011-11-19 16:59:54 -08:00
Jason Short
8392e375e1
Do not write home from GS,
...
MAV_Action_Continue disabled until I find out what it does and how to do it.
2011-11-16 00:22:23 -08:00
Jason Short
901e46334d
updates to Mavlink for zero based WP counting
2011-11-12 21:44:38 -08:00
Jason Short
27d9bc92f3
Added more output to Mavlink for debugging
2011-11-09 11:00:40 -08:00
Jason Short
e5b37d9d89
Added MAV_CMD YAW parsing
2011-11-08 23:44:14 -08:00
Jason Short
7714f203f9
Added Mav_CMD_Yaw parsing
2011-11-08 23:42:41 -08:00
Jason Short
90ee0f7e09
bad hijacking of GPS_Status
2011-11-08 10:48:47 -08:00
Jason Short
1ab1d8bab4
Fixes for Sim - Missing climb rate calculation
2011-11-08 10:46:52 -08:00
Andrew Tridgell
28634f51b7
ArduCopter: use specific sized data types in a lot of places
...
this will make the Desktop build more consistent with the real AVR
build, and also with a future ARM build
2011-11-08 11:05:36 +11:00
Jason Short
c8304114a3
renamed some command variables to align with Arduplane
...
reworked the arming code and moved the DCM gains out.
updated climb_rate to include sonar data.
2011-11-04 21:41:51 -07:00
Andrew Tridgell
56390c4696
GCS: fixed timeout loading waypoints (ArduCopter)
...
prevents link saturation
2011-10-31 21:25:58 +11:00
Andrew Tridgell
5a44298d57
CLI: enable "hit enter 3 times" support for CLI
...
if you hit enter 3 times before you send any mavlink packets, we will
enter CLI mode
2011-10-27 21:54:07 +11:00
Andrew Tridgell
d89ae696ef
merged the GCS updates from ArduPlane to ArduCopter
...
this removes all the non-MAVLink GCS options, and simplifies the HIL
and GCS code a lot. It also adds async sending of low priority GCS
text messages.
2011-10-11 20:53:43 +11:00
Michael Oborne
b33eaa8c9c
heli hil config
2011-09-27 07:34:32 +08:00
Michael Oborne
e43b711e96
fix remote error value
2011-09-15 18:26:59 +08:00
Andrew Tridgell
1456a2a912
renamed top level directories
...
ArduCopterMega -> ArduCopter
added archives directory for old code
2011-09-09 11:27:41 +10:00