uncrustify
0683be294b
uncrustify ArduPlane/climb_rate.pde
2012-08-21 18:57:21 -07:00
uncrustify
c69772388b
uncrustify ArduPlane/control_modes.pde
2012-08-21 18:57:21 -07:00
Andrew Tridgell
343f7d2de0
APM: removed DMP support from ArduPlane
...
Without centripetal correction the DMP code will almost certainly
crash a plane
2012-08-22 11:46:35 +10:00
Andrew Tridgell
6d11940ada
AHRS: removed Quaternion build support from APM/ACM/rover
2012-08-22 10:42:21 +10:00
Andrew Tridgell
bf2319a0fc
AHRS: fixed reference to AHRS var_info for APM and ACM
2012-08-21 15:58:32 +10:00
Andrew Tridgell
c5b77f3909
APM: reset steering PID integrator in reset_I()
2012-08-21 15:01:01 +10:00
rmackay9
11e946eb54
ArduCopter, ArduPilot: revert mavlink delay callback to be "unsigned long"
2012-08-18 20:34:41 +09:00
rmackay9
360c1198a6
ArduPlane: more "int" to "int16_t" and added cast to (int) in printf statements.
...
Also modified dump_log function's last_log_num to be int16_t which matches return type from DataFlash's find_last_log method.
2012-08-18 18:55:14 +09:00
rmackay9
6d489947cf
ArduPlane: replaced many "int" with "int16_t", "long" with "int32_t"
2012-08-18 18:26:13 +09:00
rmackay9
9773c8ce93
ArduPlane: commented out two unused variables to remove compiler warning
2012-08-18 13:20:34 +09:00
Andrew Tridgell
0868bb76e5
APM: fixed SITL build
2012-08-17 16:28:45 +10:00
Andrew Tridgell
5e690d5680
APM: added parameter FBWB_ELEV_REV
...
this fixes issue 343
2012-08-17 15:04:53 +10:00
Andrew Tridgell
6300fa7399
math: more abs() fixes
...
abs() is 16 bit
2012-08-16 15:17:42 +10:00
Andrew Tridgell
034fb5b194
APM: fixed hil build
2012-08-16 12:53:37 +10:00
Andrew Tridgell
d27e51f20a
APM: allow telemetry send during parameter and waypoint fetch
...
this slows down telemetry by a factor of 4 during parameter or
waypoint transmit. That ensures that mode changes and gps position are
still updated during a long parameter fetch
2012-08-16 10:50:12 +10: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
c960db7af5
APM: allow for separate calibration of airspeed/barometer
...
this is useful just before takeoff, to account for temperature changes
2012-08-15 19:49:09 +10:00
Andrew Tridgell
ad73c229ab
APM: added LAND_FLARE_ALT and LAND_FLARE_SEC
...
these allow you to configure the altitude and time before touchdown to
flare the plane and lock the heading. Useful on larger planes.
2012-08-15 18:11:16 +10:00
Andrew Tridgell
1252ddfe0c
APM: rename RDRSTEER to WHEELSTEER
...
thanks to Jon for the suggestion
2012-08-15 16:28:59 +10:00
Andrew Tridgell
ffbd229841
APM: use AHRS position for geo-fence
...
this allows it to take account of dead-reckoning
2012-08-15 14:31:10 +10:00
Andrew Tridgell
df3c8a5bc0
APM: when land_complete is true, use land_pitch
...
this gives a flare on final landing
2012-08-15 12:39:35 +10:00
Andrew Tridgell
2d7fcbd14b
APM: reload airspeed and throttle after landing
...
this allows for restarting a mission after landing with reasonable
airspeed values
2012-08-15 12:39:35 +10:00
Andrew Tridgell
47be6d8ad1
AP_Airspeed: remove airspeed filter and run at 10Hz
...
this saves on the filter memory, and gives just as good a result
2012-08-15 12:39:35 +10:00
Andrew Tridgell
e26e8b3b67
APM: added RDRSTEER_ PID for steering on ground
...
this allows for rolling takeoff with steering, and use of rudder in
landing
2012-08-15 12:39:35 +10:00
Andrew Tridgell
52064772ee
APM: report speed changes via MAVLink
2012-08-15 12:39:35 +10:00
Andrew Tridgell
817017658d
APM: implement FENCE_ACTION_REPORT
...
when FENCE_ACTION is set to FENCE_ACTION_REPORT a fence breach is
reported, but the flight mode is not changed
2012-08-15 12:39:35 +10:00
Andrew Tridgell
8cb55eb75a
APM: keep the time of the last heartbeat message
...
this will be used for failsafe processing
2012-08-15 12:39:34 +10:00
Andrew Tridgell
0584017aff
APM: expose change_command() and geofence_breached() to libraries
...
this makes a failsafe library easier
2012-08-15 12:39:34 +10:00
Andrew Tridgell
ff6301fb46
APM: show waypoint number in jump message
2012-08-15 12:39:34 +10:00
Andrew Tridgell
92bdc23ab6
APM: minor formatting fix
2012-08-15 12:39:34 +10:00
Andrew Tridgell
2865434d02
APM: added 'OBC' failsafe module for ArduPlane
...
this adds FS_* parameters for setting up APM to follow the outback
challenge failsafe rules.
This includes:
- manual pin
- heartbeat pin
- waypoint for heartbeat failure
- waypoint for GPS failure
2012-08-15 12:39:34 +10:00
Andrew Tridgell
5631b90222
APM: interpret zero lat/lng as being current location
...
this makes it easy to have a "loiter in current position" mission
element
2012-08-15 12:39:34 +10:00
Andrew Tridgell
93f1d5645b
APM: fixed LOITER_TIME and LOITER_TURNS
...
These now follow the mavlink spec. Loiter time is in seconds, and
loiter turns is now 32 bit angle, so can handle larger numbers of
turns.
2012-08-15 12:39:34 +10:00
Andrew Tridgell
3bdc7d41be
INS: disable INS AP_Param table when not on APM1 hardware
...
this could cause overwriting of memory with default values
2012-08-11 22:06:03 +10:00
Andrew Tridgell
c31eef59ae
Mavlink: log wind estimation result
2012-08-11 22:06:03 +10:00
Andrew Tridgell
d9b09d2c93
APM: allow for navigation by dead-reckoning
...
we now ask AHRS if we have a position estimate, and use that if
available
2012-08-11 12:01:08 +10:00
Andrew Tridgell
9fea3e3ac1
APM: pass airspeed sensor to AHRS
2012-08-11 08:57:44 +10:00
Andrew Tridgell
0ffc89d512
APM: support the MISSION_WRITE_PARTIAL_LIST command
...
this allows missions to be partially updated in flight
2012-08-09 17:13:36 +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
5498d347f3
APM: Added RST_MISSION_CH option
...
this allows a pilot to reset the mission using a transmitter
switch. Very useful for repeating a mission during testing
2012-08-09 10:33:16 +10:00
Andrew Tridgell
e2c8ec2c9e
APM: removed THROTTLE_REVERSE option
...
Better to use RC3_REV
2012-08-09 10:04:44 +10:00
Andrew Tridgell
e133900c68
APM: Added STICK_MIXING option
...
this replaces the compile time option. Disabling during long distance
flights when the transmitter may be out of range is useful.
2012-08-09 08:53:29 +10:00
Amilcar Lucas
d34549f386
Add an optional second mount to ArduPlane and ArduCopter
2012-08-08 23:22:24 +02:00
Andrew Tridgell
dc99586981
APM: removed pointless load() call
2012-08-08 16:51:23 +10:00
Andrew Tridgell
dcc50b5705
AP_Airspeed: removed values passed to constructor
2012-08-08 16:38:39 +10:00
Andrew Tridgell
2114acddf1
APM: fixed default flap speed
...
the default of 255 translates to -1 as a AP_Int8, so use zero to mean
no flaps
2012-08-08 13:04:21 +10:00
Andrew Tridgell
5bfd1200d6
APM: change variables to use _cm, _cd and _ms suffix for units
...
this makes it less likely that we mix up units
2012-08-08 12:12:30 +10:00
Andrew Tridgell
a823c9ceae
APM: removed cli slider and dipswitch options
...
use mavlink/eeprom for all config
2012-08-08 12:12:29 +10:00
Andrew Tridgell
12cd6b68ff
AP_Param: update ArduPlane core for new AP_Param interface
2012-08-08 12:11:57 +10:00
Jonathan Challinger
7815e3d810
APM: fixed rounding of altitude
...
the cast was rounding to the nearest meter
2012-08-08 12:07:35 +10:00
Amilcar Lucas
f14237126a
Add me :)
2012-08-06 00:40:12 +02:00
Amilcar Lucas
b8c7b8a786
RC_Channel: Allow each channel to know who they are, this simplifies the enabling and output function calls.
2012-08-05 23:08:31 +02:00
Amilcar Lucas
9c1ac2d9e6
More work on ch9, 10 and 11
2012-08-04 19:44:41 +02:00
Amilcar Lucas
95f2af6d2d
Implement set ROI
2012-08-04 18:44:29 +02:00
Amilcar Lucas
4ba847c449
The mount type must be updated periodically
2012-08-04 18:44:08 +02:00
Amilcar Lucas
bbc4bdb729
More flexible RC support
2012-08-04 18:39:20 +02:00
Amilcar Lucas
50b5d33745
Enable camera triggering by default
2012-08-04 16:32:47 +02:00
Amilcar Lucas
82b82283be
ATmega1280 does not have enough memory for mount support so disable AUTO GPS support, to allow mount support to fit.
...
This should almost have no side effects, because the most users use MTK anyways.
If the user defined a GPS protocol, than we will NOT overwrite it
2012-08-04 16:32:20 +02:00
Andrew Tridgell
301ab00c5b
APM: added control switch debouncer
...
this adds a switch debouncer, similar to the one used in
ArduCopter. I'm adding this after a flight on the weekend where noise
on the control mode channel caused a mode change away from auto.
To prevent this change adding excessive mode switch latency, it also
moves the reading of the control switch to the 10Hz loop, away from
the 3.3Hz loop. That gives us 0.2s delay in mode switch changes and
allows for spikes in the control mode for 0.1 seconds without changing
mode.
2012-08-01 13:59:37 +10:00
rmackay9
176e6fdd68
ArduPlane: bug fix to global var_info parameter list for ahrs object.
2012-08-01 10:52:34 +09:00
Andrew Tridgell
0b49ac0ed0
APM: fixed overflow in geofence code for altitudes above 327 meters
2012-07-31 15:46:47 +10:00
Andrew Tridgell
cb61c3be96
APM: fixed case of 'LAND_PITCH_CD'
...
mavlink parameters are uppercase by convention
2012-07-29 17:07:38 +10:00
rmackay9
06e35820e5
ArduPlane: allow MPU6000's DMP to be used for attitude estimation.
...
Enable by adding this line to APM_Config.h:
#define DMP_ENABLED ENABLED
2012-07-28 19:50:40 +09:00
rmackay9
842ce47219
ArduPlane: change to Parameters.pde to support moving var_info from AP_AHRS to AP_AHRS_DCM
2012-07-28 14:31:01 +09:00
Michael Oborne
cb0eacca37
AP Fix Hil Airspeed calc in m/s
2012-07-26 20:21:17 +08:00
Andrew Tridgell
9eb05a2e1a
APM: update version for 2.50 release
2012-07-26 11:36:17 +10:00
Andrew Tridgell
6bcfe913f7
APM: added a SCALING_SPEED parameter
...
this allows users to adjust the base speed used for scaling roll/pitch
PIDs. This can be used to make PIDs work for both airspeed and
non-airspeed control
2012-07-26 11:30:23 +10:00
Andrew Tridgell
3c2fc72654
APM: fixed HIL build
2012-07-26 10:09:07 +10:00
Andrew Tridgell
07992bc943
APM: fixed build
...
the SET_ROI commands are not supported yet
2012-07-26 10:03:36 +10:00
Andrew Tridgell
7e697e4abd
APM: switch back to old nav_roll calculation
...
the old nav_roll will be used for the 2.50 release to prevent the need
for re-tuning. For the release after that we will use the new
calculation
2012-07-26 10:03:36 +10:00
Michael Oborne
39ad8b5eec
AP fix sitl hil attitude mode.
2012-07-24 07:18:25 +08:00
Andrew Tridgell
9e72d4c3f4
APM: fixed a problem with wayoints completing early
...
when a user forces a waypoint jump, we may need to reset prev_WP to
prevent us thinking the waypoint is complete before we have started
2012-07-21 20:32:07 +10: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
Jason Short
98237a0e00
Added Oilpan INS group object param
2012-07-18 23:07:50 -07:00
Jason Short
e574f3c8cf
Arduplane: Fixed unsigned int comparison warning
2012-07-18 23:07:34 -07:00
Jeff Taylor
d02655ac56
APM: Fixed bug where landing_pitch wasnt initialized properly
...
this adds a new LAND_PITCH_CD parameter to control the landing pitch
when an airspeed sensor is not being used
2012-07-19 13:59:30 +10:00
Andrew Tridgell
d6e370886f
APM: rename airspeed_cruise to airspeed_cruise_cm to make the units clearer
...
it is in cm/s, not m/s
2012-07-19 11:50:41 +10:00
Andrew Tridgell
1cf5057c61
APM: Use g.airspeed_cruise for turn rate calculation if the airspeed sensor is disabled.
...
This gives our best approximation for auto flight
2012-07-19 11:50:41 +10:00
Jonathan Challinger
c7da63509b
APM: Removed unused YAW_DAMPENER code.
...
YAW_DAMPENER was defined as zero
2012-07-19 11:50:21 +10:00
Jonathan Challinger
d9d055ef78
APM: Removed incorrect nav_gain_scaler from nav_roll calculation.
...
nav_gain_scaler was originally added due to a perceived improvement in
loiter performance, but is incorrect for navigation. Turn rate is a
function of airspeed and bank angle, ground speed has no effect on
that.
2012-07-19 11:50:06 +10:00
Amilcar Lucas
3d385c0fb4
ArduPlane parameters: re-order the files, looks like the second file gets ignored :(
2012-07-18 22:52:17 +02:00
Amilcar Lucas
8a8e11fa7f
ArduPlane parameters: Add base class info as well
2012-07-18 22:39:49 +02:00
Amilcar Lucas
610fdeacc1
Support up to 11 servos in APM2
...
Conflicts:
ArduPlane/ArduPlane.pde
2012-07-18 22:01:19 +02:00
Michael Oborne
636fcadde4
fix rc libray param gen
2012-07-18 07:03:39 +08: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
Andrew Tridgell
de3c9ce56d
Airspeed: change APM to use new AP_Airspeed library
...
the next step is AHRS dead reckoning
2012-07-16 11:21:50 +10:00
Michael Oborne
67ecaa9252
AP fix duplicate keys in param config
2012-07-13 07:06:01 +08:00
Amilcar Lucas
dfe0983e1e
Merge the changes from APM_Camera branch into ArduCopter
...
Conflicts:
ArduCopter/Camera.pde
ArduCopter/Parameters.pde
2012-07-11 00:39:13 +02:00
Andrew Tridgell
c80a88766f
APM: added credit for FBW altitude limit code
...
thanks Yuri!
2012-07-10 08:36:50 +10:00
Andreas M. Antonopoulos
de64c05f8e
param_parser: cosmetic
...
Arduplane: doc fixes
2012-07-08 21:45:26 -07:00
Andrew Tridgell
78c51b945f
APM: fixed DisplayName/Description mixups in parameter docs
2012-07-07 17:40:43 +10:00
Andrew Tridgell
f6d7d1bc59
APM: changed PID library to do automatic deltat calculation
...
this fixes a problem with the HDNG2RLL PID, which was using the wrong
time base and prevents similar bugs from happening in the future
2012-07-06 19:59:18 +10:00
Andrew Tridgell
58fd91165f
APM: fixed some build warnings and type errors
2012-07-06 19:59:18 +10:00
Andrew Tridgell
5abd26a142
APM: more parameter documentation
2012-07-05 15:06:45 +10:00
Andrew Tridgell
21f06f8a39
GeoFence: fixed default return altitude units
...
off by 100x!
2012-07-05 15:06:44 +10:00
Andrew Tridgell
0385932afb
MAVLink: added climb rate reporting
2012-07-05 13:00:46 +10:00
Andrew Tridgell
95d9569b35
Docs: fixed some units in APM parameter docs
2012-07-05 13:00:46 +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
Andrew Tridgell
fb66899414
APM: changed test for having completed a waypoint
...
the new test is that we have passed a "finish line" perpendicular to
the track between the last waypoint and the current waypoint.
The previous tests are also still used, so if we circle a waypoint or
get within the waypoint radius we also consider it completed
2012-07-04 12:42:46 +10:00
Andrew Tridgell
6ee9f1ae97
APM: use new location functions
2012-07-04 12:42:46 +10:00
Andrew Tridgell
99b11e4f19
Mount: enable mount control via eeprom parameters
...
this enables MNT_* parameter control of the camera mount code. It also
fixes the conversion of calculated angles between degrees and
integers, and fixes stabilised mount control when yaw control is not
available.
2012-07-03 10:21:01 +10:00
Michael Oborne
b2d73d8f68
fixup sitl attribute group for planner. - causing invalid advanced/standard views
2012-07-01 21:43:32 +08:00
Andrew Tridgell
82ede937e7
AnalogSource: convert analogRead() calls to the new API
...
this should give us much better analog values, plus save a bunch of
CPU time
2012-07-01 15:01:05 +10:00
Andrew Tridgell
55092c25a6
SITL: enable the SIM_* parameters in ArduCopter and ArduPlane
2012-06-29 15:10:52 +10:00
Andrew Tridgell
5bccfbd94c
Barometer: fixed airstart for APM
...
we need to re-load the ground pressure and temperature from eeprom on
and airstart
2012-06-27 16:01:50 +10:00
Andrew Tridgell
3a2594fa1a
APM: ArduPlane updates for new compass interface
2012-06-27 16:01:50 +10:00
Andrew Tridgell
6639294c72
APM: update for new barometer interface
...
the barometer can now calibrate and return altitude values.
A 0.3 low pass filter is used on altitude to match the previous code
2012-06-27 16:01:50 +10:00
Andrew Tridgell
2934b4173b
APM: set_centripetal() is now set_fly_forward()
...
this controls more than just centripetal correction
2012-06-27 16:01:49 +10:00
rmackay9
621e020dac
ArduPlane HIL: fixed bug so g_gps->setHil calls send time as a uint32_t (was sending a float but was cast back to an uint32_t resulting in a meaningless time that never changed).
2012-06-26 22:59:24 +09:00
Amilcar Lucas
b072a59843
Improve parameters descriptive text
2012-06-21 00:20:37 +02:00
Andrew Tridgell
4a50686c3e
APM: prepare for 2.40 release
2012-06-16 10:11:26 +10:00
Andrew Tridgell
58379b928f
MAVLink: make usage of MAVLink defines more consistent
2012-06-15 16:27:11 +10:00
Andrew Tridgell
619bcc00d9
APM: parameter enums should not be conditionally compiled
2012-06-15 11:57:00 +10:00
Andrew Tridgell
0900751bcd
APM: added longer comment on k_format_version
2012-06-15 11:55:09 +10:00
Amilcar Lucas
6d2ac62006
Let's keep the same format version until CAMERA is activated by default
2012-06-13 21:28:13 +02:00
Amilcar Lucas
07a18904fc
With CLI and MOUNT active, the linker says: region `text' overflowed by 3858 bytes
...
So disable CLI when MOUNT is active. Sorry I did not detect it before, but the APM_Camera branch worked in a different way.
2012-06-13 21:08:09 +02:00
Amilcar Lucas
1906e06b69
Added camera trigger functionality
2012-06-13 21:00:20 +02:00
Amilcar Lucas
a32b7c200b
Add "3 axis camera stabilization" and "point camera to 3D point" functionality
...
Patch by Gregory Fletcher and reviewed by me
2012-06-13 20:55:19 +02:00
Amilcar Lucas
5ffd489d87
Spellcheck
2012-06-13 20:44:35 +02:00
Jason Short
448e4d8728
Added CLI level command
2012-06-11 23:01:25 -07:00
Jason Short
c804860243
Cosmetic changes only.
2012-06-10 13:10:07 -07:00
Jason Short
4e50db2f6e
Added missing Manual_level config
2012-06-10 13:08:48 -07:00
Jason Short
37d8f86d33
Added missing Manual Level initializer
2012-06-10 13:08:22 -07:00
Andrew Tridgell
940d994efb
GPS: Use appropiate GPS_ENGINE settings in APM, ACM and rover
2012-06-10 16:36:18 +10:00
Andrew Tridgell
99b39aef93
APM: ready for 2.40-beta
2012-06-08 18:03:21 +10:00
Andrew Tridgell
a684bddbda
GPS: open the GPS serial port with a 256 byte buffer
...
the UBLOX needs more than 128 bytes for reliable parsing
2012-06-08 16:42:03 +10:00
Andrew Tridgell
25c17a5425
re-enable the AP_Mount build
2012-06-04 19:32:11 +10:00
Andrew Tridgell
e7cf643386
added mavlink09 targets
...
allows easier building with mavlink0.9
2012-06-04 13:14:52 +10:00
Andrew Tridgell
3af29bd84e
AP_Mount: disable AP_Mount until it works with MAVLINK10
2012-06-04 13:14:51 +10:00
Michael Oborne
a71ed6c5ce
enable mavlink10 by default
2012-06-04 08:02:08 +08:00
Michael Oborne
b4a1b03fd3
AP: add fake satellite count for hil.
2012-06-02 16:38:20 +08:00
Pat Hickey
5766afa6c8
ArduPlane: Increment format number in Parameters.h
...
* Force all users to reconfigure to take advantage of elevon patch
( 669e6867 )
2012-05-28 20:51:12 -07:00
Pat Hickey
1c00d1ffe3
ArduPlane: Fix effect of ELEVON_REVERSE
...
* Previously, the ELEVON_REVERSE parameter was equivelant in function to the
ELEVON_CH1_REVERSE parameter. These parameter values are found in
g.reverse_elevons and g.reverse_ch1_elevon, and used to map to the radio_out
channels in ArduPlane/Attitude.pde
* It seems the author's intent was for ELEVON_REVERSE to change the sign for
the combination of pitch & roll into ch1 & ch2, as there are already
parameters which change just the sign of ch1 and just the sign of ch2.
* Discovered this bug because I happened to build an elevon airframe which was
not possible to setup with the existing ELEVON_ and RCn_REV parameters.
* This will break existing elevon setups if the user used ELEVON_REVERSE
instead of ELEVON_CH1_REVERSE, since they were previously interchangable.
2012-05-27 22:15:08 -07:00
Michael Oborne
c307b69515
increase resolution on params 0.1 > 0.01
2012-05-24 06:22:57 +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
66544a5db2
Log: don't print '+' while erasing logs
...
we no longer do page based erase, so printing a + every 128 pages
makes no sense
2012-05-22 20:10:29 -07:00
Andrew Tridgell
b3aa704c49
AirSpeed: added parameter ARSPD_USE
...
setting ARSPD_ENABLE to 1 and ARSPD_USE to 0 allows the airspeed
sensor to be initialised and logged without it being used for flight
control. This is very useful when initially testing an airspeed sensor
in a new plane. It also makes it possible to enable/disable the use of
the airspeed sensor during a flight at any time.
2012-05-22 20:02:23 +10:00
Andrew Tridgell
8e01bc3593
MAVlink: update ArduPlane for param fetch during DataFlash erase
...
same changes as for ArduCopter
2012-05-22 16:13:35 +10:00
Andrew Tridgell
251fe26875
GPS: added ublox build target
...
useful for 1280 APM1s
2012-05-18 22:31:50 +10:00
Andrew Tridgell
3ae1c6f9e0
APM: prepare for 2.34
2012-05-14 14:29:59 +10:00
Michael Oborne
218e70cd8b
AP - fix attitude level hil mavlink 1.0 issue
2012-05-06 11:05:35 +08:00
Andrew Tridgell
f43f5900bc
Telemetry: make it possible to use UART2 on APM2
...
building with TELEMETRY_UART2=ENABLED allows you to use the solder
bridge on the APM2 to enable telemetry on UART2. This allows both USB
telemetry and a radio at the same time.
2012-05-04 10:39:44 +10:00
Michael Oborne
75f091cd9c
more arduplane param info
2012-04-30 20:39:41 +08:00
Michael Oborne
c1115d83c7
update some arduplane config items
2012-04-30 18:44:20 +08:00
Andrew Tridgell
8fab91e063
APM-nav: set NAV I value defaults to 0.1
...
a small I value is good on most planes, so I think this is a better
default than 0. Thanks to Chris for asking about this.
2012-04-30 12:27:30 +10:00
Andrew Tridgell
67afdc7485
autotest: fixes for MAVLink 1.0 in autotest
2012-04-27 15:15:53 +10:00
Andrew Tridgell
b6a475f6a5
MAVLink: make APM build with MAVLink 1.0 possible with arduino GUI
2012-04-24 22:24:58 +10:00
Andrew Tridgell
95be2c5922
APM: updates for MAVLink 1.0
2012-04-24 19:54:20 +10:00
Andrew Tridgell
615defdc37
use build_all.sh to ensure we don't break the mount code
2012-04-24 10:57:43 +10:00
Andrew Tridgell
8e6fdb8981
APM: use OutputCh_current() in MAVLink servo logging
...
this gives a more accurate picture of what is actually happening with
the servos
2012-04-24 10:57:43 +10:00
Michael Oborne
8d797fec3c
fix potential null pointer
2012-04-20 17:57:06 +08:00
Andrew Tridgell
1cc7adbac0
sitl: allow sitl build with MAVLink 1.0
2012-04-20 10:09:21 +10:00
James Goppert
5390467f3d
Worked on ArduCopter cmake options.
2012-04-19 16:05:08 -04:00
James Goppert
6fae800dc2
Working on ArduPlane options.
2012-04-19 02:23:54 -04:00
James Goppert
53c143a575
Improved cmake options.
2012-04-18 23:15:29 -04:00
James Goppert
0f90164f03
Changed default cmake port for ArduPlane.
2012-04-18 21:31:46 -04:00
James Goppert
0e7e77760a
Updated ArduPlane/ArduCopter cmake options.
2012-04-18 15:16:02 -04:00
James Goppert
a9f0bd24d7
Switched to project specific cmake lists.
...
This is better since each project has very different options.
2012-04-17 23:07:20 -04:00
James Goppert
fb07cddd6f
Making cmake local to projects.
2012-04-17 21:31:10 -04:00
Andrew Tridgell
d07b77237e
AHRS: enable AHRS_ group in ArduPlane
2012-04-16 20:55:13 +10:00
Andrew Tridgell
85ba978a65
ready for 2.33 release
2012-04-09 18:16:49 +10:00
Andrew Tridgell
e1270401bf
MAVLink: make parameter send use adaptive stream rate
...
this makes it possible to fetch parameters with very low air data
rates
2012-04-02 11:18:53 +10:00
Andrew Tridgell
7b50724f60
MAVLink: allow for find grained stream rate control
...
streams can now be requested at any multiple of 20ms. So if you ask
for a stream at 7Hz then you will get it at close to 7Hz.
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
87ed39ea46
APM: use set_blocking_writes(false) when we have done ground start
2012-03-30 17:46:20 +11:00
Andrew Tridgell
b4107d35e8
MAVLink: raise the serial transmit buffer size to 256 bytes
...
the 128 byte serial transmit buffer was causing significant problems
with queueing of mavlink messages. With 256 bytes we can fit a lot
more messages out in each pass of the code, which makes telemetry more
efficient
As we discussed on the dev call, we now have enough free ram for this
to be worthwhile
2012-03-30 17:46:20 +11:00
Andrew Tridgell
86cc7a5e1d
APM: enable AP_Declination by default
2012-03-30 14:25:27 +11:00
Andrew Tridgell
168c45ab12
AP_Declination: enabled auto declination by default in APM
2012-03-30 14:25:27 +11:00
Andrew Tridgell
9d193f06c9
APM: Change version to 2.32
2012-03-29 12:50:12 +11:00
Andrew Tridgell
4c4c38f69a
APM: Added MANUAL_LEVEL option
...
when MANUAL_LEVEL is set to 1, we don't do accelerometer levelling at
startup, and instead used the values saved in the EEPROM. This makes
it easier to do levelling on the bench, or once for a series of
flights for the day
2012-03-29 12:39:53 +11:00
Andrew Tridgell
1c934dc7ef
APM: increase ArduPlane version to 2.31
2012-03-27 16:13:29 +11:00
Andrew Tridgell
34506b170f
Mavlink: fixed warnings about limits on int32 values
2012-03-27 15:37:25 +11:00
Andrew Tridgell
989304fb47
APM: enable the new offset nulling in APM
2012-03-27 15:37:24 +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
8afd196907
APM: adapt ArduPlane for AHRS framework
2012-03-19 17:29:02 +11:00
Andrew Tridgell
e81060a1a6
APM: removed some config file cruft
...
these options are now settable via MAVLink
2012-03-18 13:34:40 +11:00
Michael Oborne
3944c1e665
update AP version to 2.30
2012-03-18 10:27:49 +08:00
Amilcar Lucas
6e9ffb4249
correct small typos in comments
2012-03-11 21:30:09 +01:00
Andrew Tridgell
2a03a0584f
AP_Declination: disable library when AUTOMATIC_DECLINATION is not ENABLED
...
unfortunately this library was causing avrdude to fail to load the hex
to my APM2. Until we work out why, it's disabled.
2012-03-11 21:46:41 +11:00
Adam M Rivera
d3667faef4
AP_Declination: Added call to compass.set_initial_location if the compass is enabled when the 3D fix is obtained.
...
Signed-off-by: Andrew Tridgell <tridge@samba.org>
2012-03-11 20:59:47 +11:00
Adam M Rivera
2524f9c8df
AP_Declination: Added new config value to allow the user to have the declination overwritten on every 3D fix.
...
Signed-off-by: Andrew Tridgell <tridge@samba.org>
2012-03-11 20:59:47 +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
9a06d35772
make 'ENABLE' and 'ENABLED' mean the same things
...
users get this wrong far too often!
2012-03-10 10:34:33 +11:00
Andrew Tridgell
13d5839778
APM: removed quaternion special cases
2012-03-10 10:34:32 +11:00
Andrew Tridgell
371677610d
APM: avoid fetching the DCM matrix twice
...
also no special case for quaternions
2012-03-10 10:34:32 +11:00
Andrew Tridgell
7a9b3d3388
Quaternion: show "Quaternion test" on startup if enabled
2012-03-10 10:34:29 +11:00
Andrew Tridgell
e39c3cb9d2
APM: make it possible to build ArduPlane with quaternion support
2012-03-10 10:34:29 +11:00
Andrew Tridgell
367947fd33
HWSTATUS: if we don't know the voltage, report it as zero
...
this will tell us if board_voltage() is really working
2012-03-10 10:34:28 +11:00
Andrew Tridgell
511f65e2ef
APM: fixed reset of control switch when short_fs_action is disabled
...
When FS_SHORT_ACTN is 0, we should not re-read the control switch
unless we changed mode on the initial short fs action
2012-03-10 10:34:28 +11:00
Andrew Tridgell
b455443e2c
APM: added logging of DCM, HWSTATUS and SIMSTATE
2012-03-10 10:34:27 +11:00
Andrew Tridgell
b20084af7d
APM: added board_voltage() function
2012-03-02 15:48:27 +11:00
Pat Hickey
ff0fc26484
Cleanup: rename files with spaces in their names, replace with underscores
...
* Skipped /Tools/ArdupilotMegaPlanner/Resources/new...
and /archive/Configurator/Source/Utilities/TDMS/G...
because I don't want to mess with that.
2012-02-28 16:14:31 -08:00
rmackay9
02cf07bb6b
ArduPlane - updated to use new filter library
2012-02-28 21:03:04 +09:00
rmackay9
e1114bf7f7
ArduPlane - added Filter.h to unbreak the build!
2012-02-26 17:05:56 +09:00
rmackay9
21d7a77009
ArduPlane - switch sonar to use new mode filter from filter library
2012-02-26 15:35:42 +09:00
Andrew Tridgell
0248b48d30
allow MAG_ENABLE to be changed in flight
...
this disables the compass in DCM if MAG_ENABLE is changed in
flight. Without this we would use a fixed yaw once the compass is
disabled
This also makes sure we don't pass the compass to DCM till we have
done a read. This ensures we have a good compass fix for the initial
DCM heading
2012-02-25 14:51:09 +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
95ef9206dc
DCM: renorm_sqrt_count is now called renorm_range_count
2012-02-23 08:16:08 +11:00
Andrew Tridgell
df8a557630
AP_Param: update users of AP_Param for ParamToken
2012-02-19 17:05:28 +11:00
Andrew Tridgell
16009777d9
APM: expanded parameter area to match ACM
...
this ensures waypoints and basic eeprom layout remain in sync
2012-02-18 10:51:57 +11:00
Andrew Tridgell
718a5b70e3
AP_Param: fixed saving of sensor calibration
...
this fixes the saving of the accel and gyro calibration to EEPROM,
which was initially broken by the AP_Param conversion
2012-02-18 10:51:57 +11:00
Andrew Tridgell
78babd37fa
APM: use set_and_save_ifchanged() for GCS stream rates
...
this avoids a lot of EEPROM scan operations when the groundstation
updates the stream rates
2012-02-18 10:51:57 +11:00
Phil
9242c157ee
APM: Fix rudder in elevon mode.
...
elevon planes can have rudders too
2012-02-16 14:43:24 +11:00
Andrew Tridgell
c14097ffa1
APM: changed hold_course for landing to be based on yaw_sensor
...
when we are in the final stages of a landing (less than 2 seconds from
landing waypoint, or less than 3m above landing altitude) we switch
the navigation to use a fixed course. The code previously used the
crosstrack_bearing for this, but this can lead to a large nav_roll in
this final stage of the approach, which can put a wing into the
runway. In autotest we were seeing a nav_roll value of -45 degrees as
we crossed the transition point for the landing, which often led to a
crash.
This changes the code to use the current yaw_sensor value instead,
which is much less likely to lead to large rolls in the final landing
stages.
2012-02-15 08:50:45 +11:00
Andrew Tridgell
c662140a2b
APM: report the nav_bearing as hold_course when enabled
...
this gives a more accurate view of the navigation code, as when
hold_course is not -1 it overrides nav_bearing
2012-02-15 08:50:45 +11:00
Andrew Tridgell
330ff5dc8b
APM: added some comments related to hold_course
...
hold_course is either -1 (for disabled) or a course to hold for
takeoff/landing. This makes the code a bit clearer.
It also resets hold_course in all non-auto modes, to ensure it isn't
used
2012-02-15 08:50:45 +11:00
Andrew Tridgell
11835508a7
when setting airspeed and groundspeed in a mission, don't save to EEPROM
...
If you include airspeed, throttle or groundspeed changes in a mission
then those should not be saved to EEPROM, as otherwise if you restart
and re-fly the mission you will be starting with different parameters
to the ones you used for the first flight.
This is particularly important for setting the target airspeed when
coming in for a landing. You typically set a low target, but if you
fly again the next day I think it would be a real surprise to find
that your loiter airspeed has then changed to the value from the
landing part of your last mission.
This one can be argued either way, but I think that not saving these
changes is the more conservative choice, and better fits the
'principal of least surprise'
2012-02-14 15:20:44 +11:00
Andrew Tridgell
c042ef1298
APM: fixed some build warnings
2012-02-14 08:58:56 +11:00
Andrew Tridgell
8d1729b3ba
Mavlink: report the corrected pitch via MAVLink
...
this subtracts the TRIM_PITCH_CD from the pitch reported via
MAVLink. That gives a better indication of the true pitch in the tlog
2012-02-14 08:58:56 +11:00
Andrew Tridgell
cdf296d8f6
fixed some printf casts
2012-02-14 08:34:10 +11:00
Andrew Tridgell
35badbb97d
APM: the CLI fits nicely on the 1280 again now
...
I find the CLI very useful for testing, so enable it by default on the
1280. Logging is still off by default.
2012-02-14 08:33:49 +11:00
Andrew Tridgell
ecdbfd257a
token is 16 bits now
2012-02-13 16:22:53 +11:00
Andrew Tridgell
d55a0c3a71
added AP_Param::show_all()
...
this moves the logic into common code
2012-02-13 16:22:52 +11:00
Andrew Tridgell
0f9adbdae0
token size for first()/next() is now 16 bits
2012-02-13 16:22:52 +11:00
Andrew Tridgell
617082769a
go back to 1024 bytes for variables in EEPROM
2012-02-13 16:22:52 +11:00
Andrew Tridgell
0b3e3ec5c8
added group indexes to GCS_MAVLINK class
2012-02-13 16:22:52 +11:00
Andrew Tridgell
e85da68fe6
expand parameter area for ArduPlane
...
this ensures all parameters can be saved without overflow
2012-02-13 16:22:52 +11:00
Andrew Tridgell
983192c5d5
tidy up a comment
2012-02-13 16:22:52 +11:00
Andrew Tridgell
2c3ec5de99
fixed two parameter names
2012-02-13 16:22:51 +11:00
Andrew Tridgell
676ca03977
expose mavlink stream rates as parameters
2012-02-13 16:22:51 +11:00
Andrew Tridgell
f22988163e
imported new Parameters code to APM
2012-02-13 16:22:51 +11:00
Andrew Tridgell
e7174bc649
import new Parameters.h for AP_Param to APM
2012-02-13 16:22:51 +11:00
Andrew Tridgell
3d598c8caa
implement dump of all vars in CLI using AP_Param
2012-02-13 16:22:51 +11:00
Andrew Tridgell
bc0ed62aa9
adapt mainline APM code to AP_Param
2012-02-13 16:22:51 +11:00
Sandro Benigno
3200781f56
Battery monitor type 3 cannot calculate battery remaining properly, due it uses only voltage reading. This path set battery_remaining to a value out-of-band for that type of monitoring. It informs to external devices to not show that info.
2012-02-11 21:01:13 -02:00
Andrew Tridgell
1a861b3de5
allow for lower serial baud rates
...
not many people will use less than 9600 baud, except for those wanting
to test extreme range radios, which is what I'm trying to do :-)
2012-02-04 19:07:18 +11:00
Pat Hickey
dfece8e3ff
ArduPlane: Call APM_RC.enable_out for all channels in init_rc_out.
2012-01-22 12:03:11 -08:00
Michael Oborne
6b949511ca
change rc norm_output to scale evenly across the entire range
2012-01-20 16:24:55 +08:00
Michael Oborne
9ca6668c1b
fix SITL attitude hil
2012-01-20 16:04:49 +08:00
analoguedevices
418f5ea31e
Increment version number in anticipation of a firmware hex push.
2012-01-16 22:48:46 +00:00
Doug Weibel
797e0e27a9
Additional commenting on global variables
...
First pass done.
2012-01-16 10:28:03 -07:00
Doug Weibel
b4e58b50ee
Additional commenting on global variables
2012-01-16 09:45:42 -07: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
Doug Weibel
762a5550de
Remove a debugging print
2012-01-15 16:37:07 -07:00
Doug Weibel
4b24d865bf
Stashing some battery monitoring ratio values in the comments for future use.
2012-01-15 16:35:46 -07:00
Doug Weibel
e22a83eec0
Add a CLI setup action to reset the magnetometer offsets
...
Since the magnetometer offsets are not available through the MAVLink parameter interface (since they are an AP_Var vector) this little feature allows them to be reset from the CLI. Useful if you somehow get bad offsets or if you change magnetometer. If you have a bad set of large offset values I have seen issues with the nulling algorithm have trouble converging to the proper values. I have never seen it have trouble converging from 0/0/0, so this could be a useful feature from time to time.
2012-01-15 16:15:08 -07:00
Doug Weibel
6e8ac99ed6
Fix airspeed sensor support for APM2.
...
Airspeed sensor should be attached to Analog input 0
2012-01-15 16:12:08 -07:00
Doug Weibel
0306bf97a0
Just a little more commenting work on global variables
2012-01-15 16:11:02 -07:00
Doug Weibel
69c7598db2
Update battery monitoring code for ArduPlane
...
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.
2012-01-15 16:10:28 -07:00
Doug Weibel
9846822748
Bug fix for compass.
...
This is a fix for an interesting bug when a DCM matrix reset was added to the ground start. This bug only showed up if (A) a ground start were performed after an air start or due to use of the "Calibrate Gryo" action, (B) if the current orientation were sufficiently different from 0/0/0, and (C.) if the particular magnetometer had sufficiently large offsets. Why did resetting the DCM matrix to 0/0/0 pitch/roll/yaw at ground start cause a bug? The magnetometer offset nulling determines the proper offsets for the magnetometer by comparing the observed change in the magnetic field vector with the expected change due to rotation as calculated from the rotation in the DCM matrix. This comparison is made at 10Hz, and then filtered with a weight based on the amount of rotation to estimate the offsets. Normally it would take considerable time at normal in-flight rotation rates for the offset estimate to converge.
If a DCM matrix reset occurs when the offset nulling algorithm is up and running, the algorithm sees the DCM reset as a instantaneous rotation, however the magnetic field vector did not change at all. Under certain conditions the algorithm would interpret this as indicating that the offset(s) should be very large. Since the "rotation" could also have been large the filter weighting would be large and it was possible for a large erroneous estimate of the offset(s) to be made based on this single (bad) data point.
To fix this bug methods were added to the compass object to start and stop the offset nulling algorithm. Further, when the algorithm is started, it is set up to get fresh samples. The DCM matrix reset method now calls these new methods to stop the offset nulling before resetting the matrix, and resume after the matrix has been reset.
2012-01-12 14:44:24 -07:00
Doug Weibel
892f24ac5c
Adding comments for global variables
2012-01-11 12:37:43 -07:00
analoguedevices
ee18748565
Put in commented-out APM2 # defines, to save people the trouble of having to type them in themselves.
2012-01-09 02:00:46 +00:00
Doug Weibel
44c66c2e8e
Bug fix for issue 438.
...
The rate in a change alt command does not need to be signed. The code will determine if the rate needs to be positive or negative
2012-01-08 18:24:55 -07:00
Michael Oborne
e1a544cc78
fix relay on apm 1 AP
2012-01-05 07:51:01 +08:00
Andrew Tridgell
cdd5589498
I2c: default to 5ms timeout, and faster bus speed
...
we will slow down the speed when we get a failure
2012-01-04 16:36:47 +11:00
Doug Weibel
4de2155845
Tweak to FBW min altitude
...
Patch from Yury
2011-12-31 15:44:40 -07:00
Jason Short
a6c09b3ea5
Small issue with newline formatting
2011-12-29 23:02:02 -08:00
Michael Oborne
cd145fd7a9
add circle to output modes
2011-12-29 18:21:32 +08:00
Andrew Tridgell
cd3729d993
APM: added error checking on barometer read
...
if the barometer is dead and the GPS has a fix, use the GPS for
altitude
2011-12-28 20:41:53 +11:00
Andrew Tridgell
98353b7ba8
APM: added error checking on compass read
2011-12-28 20:41:53 +11:00
Andrew Tridgell
3cb96fb8af
APM: convert to new I2C library
2011-12-28 20:41:53 +11:00
Andrew Tridgell
a6920d603d
geofence: re-breach if user changes mode outside the fence
...
if the user changes mode while outside the fence, and fencing is still
enabled, then declare a new breach
2011-12-28 17:28:35 +11:00
Andrew Tridgell
8d87aa41b9
APM: Update for DataFlash changes
2011-12-28 16:00:49 +11:00
analoguedevices
b8917b58bd
Added contributor names, removed "alpha" from firmware name
2011-12-26 17:13:37 +00:00
Andrew Tridgell
f5a3eed1a7
APM: fixed some unsigned/signed warnings
2011-12-26 19:17:11 +11:00
Andrew Tridgell
d81dc21dfe
APM-log: fixed reading of GPS logs
2011-12-26 19:17:11 +11:00
Andrew Tridgell
3f9f3f3416
APM-log: changed to use df_NumPages
...
this copes with different data flash sizes on APM1 and APM2
2011-12-26 19:17:11 +11:00
Doug Weibel
8e17b8d6d4
Correct a bug in throttle failsafe feature
2011-12-24 15:34:31 -07:00
Doug Weibel
a5df59eba3
Remove old debug print
2011-12-24 14:26:35 -07:00
Doug Weibel
7879efb8ae
Fix scaling on "turn coordination" yaw PID so that P gain values fall in "usual" range 0.1 to 10.
2011-12-24 14:26:35 -07:00
Andrew Tridgell
5e347854c3
setup the main loop failsafe after RC library is setup
2011-12-23 11:13:01 +11:00
Andrew Tridgell
5bda871d60
added comment on using GPS ground course
2011-12-23 11:13:01 +11:00
Andrew Tridgell
d0245b206a
APM2: default magnetometer to enabled
...
all APM2s have a MAG at the moment
thanks to Chris for the suggestion
2011-12-22 17:51:14 +11:00
Andrew Tridgell
c805f2a0c3
failsafe: make sure we clear any RC override in manual failsafe
2011-12-22 10:55:43 +11:00
Andrew Tridgell
26d5d3c385
fixed HIL build
2011-12-21 23:31:39 +11:00
Andrew Tridgell
29fa78214b
APM: added failsafe support
...
we now pass all channels through at 50Hz if the main loop stops
running, regardless of why. This gives us a reasonable failsafe, as
long as the low level RC library is still working, and interrupts
don't get completely disabled.
2011-12-21 23:31:39 +11:00
Andrew Tridgell
e687ce9b3d
mainloop_count should be uint16_t
2011-12-21 23:31:38 +11:00
Andrew Tridgell
89561d49d0
always declare a timer_scheduler
...
we should always run this code
2011-12-21 23:31:38 +11:00
Andrew Tridgell
4bdc872595
APM: show temperature in airpressure test
...
useful for tracking down baro bugs
2011-12-19 18:52:56 +11:00
Andrew Tridgell
c14d702912
geofence: send fence status messages on fence events
...
this ensures the fence status goes out as soon as possible, which
means the messages arrive in a sane order on the GCS
2011-12-19 11:25:59 +11:00
Andrew Tridgell
e99db6526f
APM: added RST_SWITCH_CH parameter
...
This is useful for switching back to the mode indicated by the control
switch after a failsafe or fence breach. I was just changing modes
each time, but it is far more elegant to have a spring loaded switch
for "I am ready to take control again", rather than continually
changing modes.
2011-12-19 11:25:59 +11:00
Andrew Tridgell
71c911f65d
Log: fixed logging dependence on compiler arg eval order
2011-12-18 17:31:45 +11:00
Andrew Tridgell
f25ee899f3
APM: run mavlink loop while erasing logs
2011-12-18 10:19:52 +11:00
Andrew Tridgell
fc20aa9602
geofence: enable return to old control mode via FENCE_CHANNEL
...
if you disable fencing with the fence channel switch while still in
GUIDED mode to the return point, then reset the control mode back to
the transmitter control mode
2011-12-18 10:00:44 +11:00
Andrew Tridgell
df094ce463
fixed airspeed sensor for ArduPlane on APM2
...
we were trying to use a non-existant ADC chip!
2011-12-17 07:29:09 +11:00
Andrew Tridgell
f6f808357c
removed AperiodicProcess code
...
this code was never being used, and was more complex than it was
worth.
2011-12-17 07:29:09 +11:00
Andrew Tridgell
b9a88aac32
geofence: added FENCE_TRIGGERED_PIN
...
this allows for a digital pin to be set high when the geofence
triggers. This pin can be connected to an external failsafe device
2011-12-17 07:29:08 +11:00
Michael Oborne
28d280562a
apm 1280 disables
2011-12-16 22:26:39 +08:00
Andrew Tridgell
42522baf9f
geofence: store fence points as int32_t
...
this keeps maximum precision in fence boundaries
2011-12-16 20:11:51 +11:00
Andrew Tridgell
fc495ce6a7
geofence: added fence status reporting and faster altitude check
2011-12-16 20:11:51 +11:00
Andrew Tridgell
64ae2ebec5
geofence: don't trim control surfaces on geo-fence breach
...
the user input is likely to be bad
2011-12-16 20:11:51 +11:00
Andrew Tridgell
3b148c87d5
geofence: main geo-fence code
...
this implements the primary logic of geo-fencing
2011-12-16 20:11:51 +11:00
Andrew Tridgell
82b615df50
geofence: added geo-fencing control parameters
2011-12-16 20:11:51 +11:00
Andrew Tridgell
960d6ee38a
removed an unused variable
2011-12-16 20:09:49 +11:00
Andrew Tridgell
84a694efb9
only check for "enter 3 times" in first 20s after boot
...
we don't want stray bytes on serial3 to make us enter the CLI during
flight!
2011-12-16 20:09:32 +11:00
Doug Weibel
ca89857854
Changes to logging file system to avoid problems with 0 and 1 page logs
2011-12-13 20:09:07 -07:00
Andrew Tridgell
1998908a05
DCM: reset the DCM matrix after a ground start
2011-12-13 21:33:07 +11:00
Andrew Tridgell
8cd13749bd
MAVLink: fixed link flood on waypoint upload
2011-12-13 20:39:04 +11:00
Andrew Tridgell
dd9f3a3fa6
fixed a hang on 2nd run of IMU test
...
we should not try to initialise the ISR handlers twice
2011-12-13 18:28:50 +11:00
Andrew Tridgell
483bef35e5
IMU: update ACM and APM for flash_leds change in IMU init
2011-12-13 18:19:41 +11:00
Andrew Tridgell
888d6226b2
fixed two more CONFIG_HARDWARE #ifdef bugs
2011-12-13 17:05:48 +11:00
Andrew Tridgell
07dba4eff7
desktop: fixed Wire.begin() build problem
2011-12-12 15:14:55 +11:00
Andrew Tridgell
78e8fbff9c
fixed hardware config check for barometer
2011-12-12 15:14:55 +11:00
Andrew Tridgell
1b1c629167
added sitl build target
2011-12-12 15:14:55 +11:00
Andrew Tridgell
2bd18e937c
throttle: only use throttle slew in auto throttle modes
...
we don't want STABILISE and FBWA to have throttle change limits
2011-12-12 15:14:55 +11:00
Andrew Tridgell
0a7332b6e3
airspeed: smooth the airspeed value a bit more
...
the value is very noisy in my tests. A bit more smoothing may help
2011-12-12 15:14:55 +11:00
Andrew Tridgell
011110e1dd
airspeed: use floating point values and better averaging in zero_airspeed()
...
this makes the calibration of airspeed a bit more accurate, and
prevents truncation of airspeed values
2011-12-12 15:14:55 +11:00
Andrew Tridgell
d5c23c83cf
apm2: fixed for new barometer code
2011-12-11 15:21:10 -08:00
Pat Hickey
a99a1dbc9a
ArduPlane: update AP_Baro construtors and initializers
2011-12-11 15:21:10 -08:00
Pat Hickey
f3ad7f3af8
Wire and SPI Init: move to sketch system.pde from libraries
...
* Wire.begin removed from AP_Baro_BMP085::init()
* SPI.begin removed from AP_Baro_MS5611::init()
* SPI.begin removed from AP_InertialSensor_MPU6000::hardware_init()
* Both Wire.begin and SPI.begin added very early in init_ardupilot in
ArduCopter/system.pde and ArduPlane/system.pde
2011-12-11 15:21:10 -08:00
Pat Hickey
d7f77aec93
ArduCopter & ArduPlane: Added support for apm2beta build via APM2_BETA_HARDWARE define
...
* This enables the BMA085 driver for compatibility with beta boards.
* The CLI_SLIDER_ENABLED=DISABLED line does not need to be in the makefile.
config.h takes care of this default.
2011-12-11 15:21:09 -08:00
Pat Hickey
1b2ebdff44
ArduPlane: added config.h and defines.h to support CONFIG_BARO
2011-12-11 15:21:09 -08:00
Pat Hickey
04ea979331
ArduPlane: Rename APM_BMP085 classes to AP_Baro_BMP085 classes
2011-12-11 15:21:09 -08:00
Pat Hickey
f2652d23bf
ArduPlane: calibrate accel with imu.init_accel after imu.init
...
* complements commit 73418559, where init_accel was eliminated
from AP_IMU_INS::init cold start.
2011-12-10 13:32:47 -08:00
Doug Weibel
2ef4c79a7c
Minimum ground speed patch from Claudio Natoli. Thanks Claudio!
...
This patch will boost the target airspeed as necessary to keep the ground speed above a parameter value - param_min_groundspeed. Airspeed is still limited to FBW-max. Setting min_groundspeed to zero (default) disables the feature.
2011-12-09 16:43:25 -07:00
Doug Weibel
2f962fe6da
Augment failsafe gcs_send_text message
2011-12-09 09:11:45 -07:00
Doug Weibel
502a98dda1
Add hook to dump log filesystem index for debugging
2011-12-07 08:13:30 -07: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
Andrew Tridgell
4a057aefa0
test: removed the broken gyro test and merge it into the imu test
...
the gyro test assumed APM1 hardware, and would hang on APM2. The imu
test can just as easily display gyro and accelerometer data as well as
roll/pitch/yaw, so combine it in one test
2011-12-03 14:08:20 +11:00
Doug Weibel
88ab4f7d70
Fix for intermittent bug of log #1 starting on page 2 and confusing file system
2011-11-28 19:43:10 -07:00
Doug Weibel
b03de3095e
Add DataFlash.Init before doing a forced log erase on eeprom reset.
...
Add progress indication during log erase
2011-11-28 19:42:27 -07:00
Andrew Tridgell
2cabb11307
mavlink: don't force CLI and HIL with mavlink10 build
2011-11-28 16:22:33 +11:00
Andrew Tridgell
838c57cd1a
mavlink: paranoia setting of failsafe when forcing AUTO mode
...
this shouldn't be needed, but will do no harm, and I thought I saw
this fail in a test
2011-11-28 16:22:33 +11:00
Andrew Tridgell
4036604fb7
mavlink: move Mavlink_compat.h to common code
...
this will allow it to be used by ArduCopter
2011-11-28 13:53:57 +11:00
Andrew Tridgell
5ae929ace9
build: CLI_SLIDER_ENABLED doesn't need to be forced off in apm2 build
...
this is handled by config.h now
2011-11-28 13:53:57 +11:00
Doug Weibel
7960e7963c
Add Guided mode to failsafe handling
2011-11-26 21:10:53 -07:00
Andrew Tridgell
a048709828
Logs: don't print hundreds of bogus log boundaries
...
this can take quite a long time
2011-11-26 17:02:55 +11:00
Pat Hickey
ab56a764d3
ArduPlane: rev version number from 2.26 to 2.27 Alpha
2011-11-25 20:00:19 -08:00
Pat Hickey
f7a9b8a563
ArduPlane: LED digital writes use LED_OFF and LED_ON
2011-11-25 20:00:19 -08:00
Andrew Tridgell
86927ac0a5
ArduPlane: rename purple to APM2
2011-11-25 20:00:19 -08:00
Andrew Tridgell
7def0e98e8
USB-MUX: auto-switch telemetry port based on UXB mux for ArduPlane
...
when USB is unplugged, switch baud rate to the SERIAL3_BAUD rate from
EEPROM
2011-11-25 20:00:19 -08:00
Andrew Tridgell
ffba37d599
desktop: first version of register level SITL support
...
this adds register level emulation of the ADS7844 and the RC
input/output hardware on the APM1, allowing for SITL testing without
enabling HIL in the code
2011-11-25 20:00:18 -08:00
Andrew Tridgell
3a0b1d1903
purple: there are no dipswitches on the purple board
2011-11-25 20:00:18 -08:00
Andrew Tridgell
6093db948b
compass: added AP_COMPASS_APM2_SHIELD
...
this makes the orientation clearer
2011-11-25 20:00:18 -08:00
Andrew Tridgell
649da8e05d
purple: adc test not useful if no ADC
2011-11-25 20:00:18 -08:00
Andrew Tridgell
40459653b5
purple: fixed LED and IO pin defintitions
2011-11-25 20:00:18 -08:00
Andrew Tridgell
ca76f6d0ec
purple: add the remaining hw defines for purple hardware
2011-11-25 20:00:18 -08:00
Andrew Tridgell
1e41b4b2b0
timer_scheduler doesn't exist in HIL_MODE_ATTITUDE
2011-11-25 20:00:18 -08:00
Andrew Tridgell
a3701e521a
build: added hlsensors target
2011-11-25 20:00:18 -08:00
Andrew Tridgell
1c20efe4b8
re-organiser sensor declarations
...
this tries to make the #ifdef nesting easier to understand
2011-11-25 20:00:17 -08:00
Andrew Tridgell
3d175c449e
adc.Init() takes timer_scheduler
2011-11-25 20:00:17 -08:00
Andrew Tridgell
03c7d7bfb6
purple: always declare timer_scheduler
2011-11-25 20:00:17 -08:00
Pat Hickey
1895458dbf
purple: added new parameters to Init() functions
...
this adapts the test code for the purple API changes
2011-11-25 20:00:17 -08:00
Pat Hickey
f9d6facdda
test: added new passthru test
...
this passes radio inputs direct to servo outputs, which is useful for
hardware testing
2011-11-25 20:00:17 -08:00
Pat Hickey
bad177bfdc
removed old commented out code
2011-11-25 20:00:17 -08:00
Pat Hickey
ad0cac670c
purple: added new parameters needed for new library APIs
...
new APIs pass in timer_scheduler. We also to init the isr_registry
2011-11-25 20:00:17 -08:00
Pat Hickey
4015cb0a40
purple: fixed APM_RC.Init() to add isr_registry parameter
2011-11-25 20:00:17 -08:00
Pat Hickey
9e47536924
purple: declare sensors for purple library rework
...
we need some different declarations to match the new APIs
2011-11-25 20:00:17 -08:00
Pat Hickey
08675a91d8
purple: added config options for purple/APM1 hardware
2011-11-25 20:00:17 -08:00
Pat Hickey
3300032a89
purple: added hardware defines for ArduPlane
2011-11-25 20:00:17 -08:00
Pat Hickey
cc67062442
build: added new command line build targets
...
this makes it more convenient to build common options
2011-11-25 20:00:16 -08:00
Andrew Tridgell
89d2f0f849
mod barometer.Init() based on hardware
2011-11-25 20:00:15 -08:00
Michael Oborne
0a0b2d32f4
Add rc input to cli planner mode
2011-11-26 11:23:14 +08:00
Doug Weibel
b05e1d90f5
Change type to support "dump all with -1"
2011-11-24 18:55:33 -07:00
Doug Weibel
0f428bd43a
Logging cleanup. Fixed missing cast, removed erase warning, added -1 to dump all option, and fix intermittent bug for log number 1.
2011-11-24 18:55:33 -07:00
Doug Weibel
27e68234b7
Simplified logging logic for finding start/end of log files
2011-11-24 18:55:32 -07:00
Doug Weibel
244eeea34a
Rework logging file system to be more robust
2011-11-22 20:20:17 -07:00
Andrew Tridgell
8ef364657b
MAVLink: fixed throttle display in VFR_HUD
2011-11-21 20:29:19 +11:00
Andrew Tridgell
4933c5bcdd
zero airspeed on ground start when initiated by MAVLink
...
If the users asks for a new calibration, that should include the
airspeed sensor
2011-11-21 20:29:18 +11:00
Andrew Tridgell
faaaf11822
fixed disabling of GPS in ArduPlane
...
we may need a new hex
2011-11-21 20:29:18 +11:00
Andrew Tridgell
9ea0fc9539
Log: prevent looping forever
...
this happened with an empty dataflash
2011-11-20 19:06:24 +11:00
analoguedevices
b3716d988f
Rev version number
2011-11-19 23:43:47 +00:00
Jason Short
7ffa2c4347
shortened strings
2011-11-19 14:02:45 -08:00
Doug Weibel
88f5669104
Remaining changes to the logging file system.
...
With these changes the logging system will allow overwriting of logs with no loss of functionality. I have tested (successfully) logging with the Dataflash being filled and overwriting previous files. I have also tested with a single long file that partially overwrites itself.
2011-11-17 21:25:51 -07:00
Doug Weibel
f752c4b799
Change to logging file system.
...
This commit is somewhat temporary as I have come up with a better scheme and will be modifying this. Just making this commit in case I need to roll back
2011-11-17 21:25:51 -07:00
Jason Short
ddd89e1849
Mission Scripting updates
2011-11-16 00:22:23 -08:00
analoguedevices
7535b8a3d5
Rev version number
2011-11-16 05:04:36 +00:00
Doug Weibel
e6542ec1a2
Fix Do_Jump bug. Also fix cross track bearing bug after Jump
2011-11-15 20:44:19 -07:00
Doug Weibel
0433cd6d69
Missed hunk for last commit
2011-11-15 20:43:00 -07:00
Doug Weibel
9fe554236b
Add logging of DCM drift correction integrator in PM
...
This may be a temporary feature… Mostly added to check new (lower) integrator limit.
2011-11-15 20:42:59 -07:00
analoguedevices
e3ef9a2a36
Rev version number to 2.25
2011-11-14 05:31:27 +00:00
Michael Oborne
31159a7e1b
modify crosstrack calc
2011-11-13 08:25:24 +08:00
Andrew Tridgell
407d66b41e
fixed a valgrind warning
...
need to initialise all fields
2011-11-08 17:26:53 +11:00
Andrew Tridgell
92471aead2
Log: better way to check for -1 long portably
2011-11-08 07:58:34 +11:00
Andrew Tridgell
2bd451b445
Log: make find_last_log_page() portable
...
this makes it work with platforms with a larger 'long'
2011-11-07 23:50:49 +11:00
Andrew Tridgell
ae1e1c940f
Log: fixed a bug where we could index outside an array
...
when we first start up, num_existing_logs may be zero
2011-11-07 22:56:13 +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
Amilcar Lucas
ab730ff919
Added camera and/or antenna mount support.
...
It is fully configurable with the mission planner, there is no need to change
the source code to adapt to your setup.
It needs more testing, but the SIL is not working for me.
2011-10-31 22:55:58 +01:00
Andrew Tridgell
9eb27c2573
GCS: fixed timeout loading waypoints
...
while loading waypoints we could saturate the link
2011-10-31 21:25:35 +11:00
James Goppert
9d278ab355
Merge branch 'master' of https://code.google.com/p/ardupilot-mega
2011-10-30 23:12:53 -04:00
James Goppert
3f8603331d
Switching to new eclipse project style.
2011-10-30 22:57:34 -04:00
Michael Oborne
c07d56ccbf
Revert Changes
...
switch back to old nav_rol lcalc
switch back to old planner - non mavlink 1.0
2011-10-31 07:23:20 +08:00
Michael Oborne
3f3c04f95b
Add MAVLINK_MSG_ID_HIL_STATE message
2011-10-30 18:17:37 +08:00
Michael Oborne
ccd51fea2c
Merge branch 'master' of https://code.google.com/p/ardupilot-mega
2011-10-30 14:27:13 +08:00
Andrew Tridgell
d9ae4e4e6e
MAVLink: use new MAV_MODE_FLAG_CUSTOM_MODE_ENABLED flag
...
this enables us to tell if custom_mode is set
2011-10-30 13:00:54 +11:00
Andrew Tridgell
e722126843
fixed uninitialised variable warning
2011-10-30 11:48:56 +11:00
Andrew Tridgell
580647b1de
use C++ tricks to minimise differences for MAVLink 1.0
...
this should make maintainence/testing a bit easier
2011-10-30 11:48:56 +11:00
Michael Oborne
9465617b02
Merge branch 'master' of https://code.google.com/p/ardupilot-mega
2011-10-30 07:35:10 +08:00
James Goppert
8102b31d8d
Merge branch 'master' of https://code.google.com/p/ardupilot-mega
2011-10-29 15:09:35 -04:00
James Goppert
1a8c4a2597
Working on cmake support.
2011-10-29 15:01:05 -04:00
Andrew Tridgell
0211fc2f09
move g_rc_function[] to RC_Channel library
...
libraries should not rely on data declared in the main program. This
caused a build error for the Desktop build for ArduCopter under cygwin
2011-10-29 18:42:18 +11:00
Michael Oborne
374f8cbcd0
better crosstrack
2011-10-29 12:54:13 +08:00
Michael Oborne
f70868348c
Merge branch 'master' of https://code.google.com/r/meee146-hil
2011-10-29 11:37:54 +08:00
Andrew Tridgell
1118d26f03
fixed "Free RAM" display on bootup
2011-10-28 21:34:10 +11:00
Michael Oborne
835b585e03
APM track following change
2011-10-28 12:05:22 +08:00
Doug Weibel
cbf59e96bd
Bug fixes for command logic re-write
2011-10-27 13:45:57 -06:00
Doug Weibel
645b9c1d48
Initial rewrite of command logic.
...
Changes mission structure so that conditional and immediate commands are located between associated waypoints instead of after the second waypoint.
2011-10-27 13:45:52 -06: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
2b9daf65ff
mavlink: fixed WP upload
...
The previous code accepted arbitrary command codes here, and ACKed
them. Later we should specifically list which ones are OK
2011-10-26 12:18:24 +11:00
Andrew Tridgell
5a089f98d2
MAVLink: MAVLink 1.0 support now builds
...
not testing at all - so be careful!
2011-10-24 12:21:26 +11:00
Andrew Tridgell
f815a1b27b
mavlink: started adding support for MAVLink 1.0
...
this is nowhere near complete, and does not compile yet
2011-10-24 10:20:36 +11:00
Doug Weibel
9cbc38b516
Add a feature for a minimum altitude parameter while flying in FBW-B
...
This patch written by YureZzZ - Thank you!
2011-10-16 23:11:40 -06:00
Michael Oborne
d38b289766
hil sensor cleanup
2011-10-14 18:14:32 +08:00
Michael Oborne
7ef51f723d
Sensor hil fix's
2011-10-13 22:22:03 +08:00
Andrew Tridgell
ea82b27fe5
support building with common Makefile.desktop
2011-10-11 17:49:40 +11:00
Michael Oborne
14dbc9523c
Merge branch 'master' of https://code.google.com/p/ardupilot-mega
2011-10-11 08:05:14 +08:00
Michael Oborne
3bc793bb9b
Merge branch 'desktop-wip' of https://code.google.com/r/tridge60-apm-wip
2011-10-10 07:22:57 +08:00
Andrew Tridgell
0939b51a4c
added build makefiles
2011-10-10 07:18:38 +11:00
Amilcar Lucas
6484b83291
More optimizations
...
I forgot these ones.
2011-10-09 15:34:47 +02:00
Amilcar Lucas
865bb34657
Optimize the code a bit more, only perform calculations if they are necessary
2011-10-09 15:27:17 +02:00
Amilcar Lucas
c624582c91
Use a single if instead of four
2011-10-09 15:27:17 +02:00
Amilcar Lucas
e232a0936f
Use the shorter macro call instead
2011-10-09 13:57:35 +02:00
Andrew Tridgell
5d0d1b6a6d
fixed a crash in HIL
...
The g_rc_function[RC_Channel_aux::k_flap_auto] ptr came out as NULL
during one HIL run on a desktop CPU, which led to ArduPlane
crashing. I am not yet sure if this can happen in real flight, but I
think the NULL check is worthwhile to be sure.
2011-10-09 22:09:00 +11:00
Andrew Tridgell
6656847faa
fixed some ambiguous if/else combinations
...
gcc was complaining about the logic
2011-10-09 22:09:00 +11:00
Andrew Tridgell
e7e8165bc7
don't initialise DataFlash if logging is disabled
...
this fixes HIL without an IMU
2011-10-09 22:08:59 +11:00
Andrew Tridgell
63ac6bcd94
use memcheck_available_memory() instead of freeRAM()
...
this gives a more accurate view of free memory
2011-10-09 22:08:59 +11:00
Andrew Tridgell
546b4df76d
avoid the need for compiler optimisation for HIL build
...
read_airspeed() is only available when in a non-HIL build. The
optimiser normally removes this call, but when debugging in a desktop
build, it is nice to avoid using the optimiser
2011-10-09 22:08:58 +11:00
Amilcar Lucas
f1d47982e2
Only use radio_in values if the channel is not used as flight_mode_channel
2011-10-08 22:15:54 +02:00
Amilcar Lucas
ee4251baef
Fix compilation
2011-10-02 14:52:02 +02:00
Amilcar Lucas
7b4ccffa53
Moved relay control functions to it's own library
2011-10-02 01:00:27 +02:00
Amilcar Lucas
dcef0f34e9
Correct/update channel assigment comment
2011-10-02 00:06:44 +02:00
Doug Weibel
5073acce3e
Add auto flap functionality to FBW-B
2011-09-30 07:25:36 -06:00
Doug Weibel
9396e3ab58
Fix missing capitalization
2011-09-30 07:25:35 -06:00
Doug Weibel
adbe965f35
Rework prev commit a bit cleaner as suggested by Janne Mäntyharju
2011-09-30 07:25:35 -06:00
Doug Weibel
3fff788f95
Add code to disable throttle if we are on the ground and in FBW_B or higher
...
Add code to disable throttle if we are on the ground and in FBW_B or higher. We believe we are on the ground if speed < 5 and alt < 5. Also check that we are not trying to perform a takeoff.
2011-09-30 07:25:35 -06:00
James Goppert
e20c279ca5
Added makefiles for ArduCopter/ArduPlane.
...
These files are not generated by cmake. They are necessary for
the make based build to work. To build using this method
type make in the directoy such as ArudPlane/ArduCopter. Make
sure that you do not call cmake in the ArduPlane etc directory
as this will overwrite this Makefile with the autogenerated cmake
version. Cmake should be called from withing a build directory.
2011-09-30 07:16:48 -04:00
Janne M
8aac89e549
Fixed board setting in cmake-file. Removed now autogenerated Makefile
2011-09-30 11:17:08 +03:00
James Goppert
5489b84f8e
Improvements to cmake.
2011-09-29 21:23:26 -04:00
James Goppert
5e92e1f982
Corrected makefile.
2011-09-29 18:57:19 -04:00
James Goppert
ed850d4e0c
Added missing files.
2011-09-29 14:18:05 -04:00
James Goppert
d887a28b91
Added ArduBoat/ ArduRover/ and APO library.
2011-09-29 14:12:15 -04:00
Jason Short
326cfef808
Dead Zone fix - Now the range is full instead of clipped. Should make the Yaw much more smooth.
2011-09-26 22:12:39 -07:00
Amilcar Lucas
dca013965a
Fix issue #285
2011-09-25 11:36:31 +02:00
Amilcar Lucas
e5c248e2bf
Moved mavlink_check_target() to the libraries/.
...
This allows it to be reused by the other libraries and by other projects ArduPlane, ArduCopter, ArduRover ... etc.
It also reduces code duplication
2011-09-24 14:40:07 +02:00
Doug Weibel
932e0fe45c
Correct bug in auto flap handling
2011-09-22 20:50:15 -06:00
Andrew Tridgell
e2ed1f1c56
removed some more unused defines
...
mavlink is now the only choice for HIL and GCS
2011-09-19 11:04:02 +10:00
Andrew Tridgell
4437ff1046
get rid of the last active uses of the SendDebug macros
...
please use gcs_send_text*() from now on, to ensure serial queueing
2011-09-19 11:04:02 +10:00
Andrew Tridgell
6a9a85f184
remove unused climb_rate code
2011-09-19 11:04:02 +10:00
Andrew Tridgell
20bfe6b01d
use gcs_send_text_fmt() and cleanup a few old debug lines
2011-09-19 11:04:02 +10:00
Andrew Tridgell
0f09bf6654
GCS: added new gcs_send_text_fmt() method
...
this allows low priorty formatted messages to be sent to the ground
station, without causing a CPU stall on the serial send buffer
2011-09-19 11:04:02 +10:00
Andrew Tridgell
9351ef17a9
GCS: don't send low priority messages unless they fit
...
check the serial transmit buffer, and don't send low priority messages
unless they can go straight out without blocking the CPU
2011-09-19 11:04:02 +10:00
Andrew Tridgell
55cd7bcf1d
added gcs_severity enum
...
this makes it harder to mixup defines
2011-09-19 11:04:02 +10:00
Andrew Tridgell
66e4ae50bb
remove some more old cruft
2011-09-19 11:04:02 +10:00
Andrew Tridgell
73223ee458
remove Mavlink_Common.h and used deferred logic for params/waypoints
...
this moves the mavlink send logic into GCS_Mavlink.pde, and also
ensures we only ever send parameters and waypoints when there is
sufficient space in the serial send buffer
2011-09-19 11:04:02 +10:00
Andrew Tridgell
de12ea429e
remove some more unused code in the GCS interface
2011-09-19 11:04:02 +10:00
Andrew Tridgell
e61d742345
GCS: make the two GCS links gcs0 and gcs3
...
the artifical separation between 'gcs' and 'hil' just leads to
confusion. This also simplifies the code a bit more, and saves us a
bit more text
2011-09-19 11:04:02 +10:00
Andrew Tridgell
2ca8e58bc2
GCS: simplify the API for sending messages
...
this makes the code clearer, and saves us another 100 bytes of text
2011-09-19 11:04:02 +10:00
Andrew Tridgell
17ebb311a7
MAVLink: use enum ap_message and remove unused param argument
...
saves us another 200 bytes of text
2011-09-19 11:04:02 +10:00
Andrew Tridgell
220b941e31
removed some more dead messages, and convert MSG_* to an enum
...
this make it safer to add a new message while keeping deferred queue
the right size
2011-09-19 11:04:02 +10:00
Andrew Tridgell
3f37cce6c7
remove unused MESSAGE_COMMAND_LIST
2011-09-19 11:04:02 +10:00
Andrew Tridgell
9baab490f1
HIL: first step in simplifying the HIL/GCS code
...
this gets rid of the messy #ifdefs around HIL_PORT, and removes
non-MAVLink GCS and HIL support
2011-09-19 11:04:01 +10:00
Andrew Tridgell
87ddd50c2a
remove unsued MSG_LOCAL_LOCATION
...
this saves us a bit of code
2011-09-18 11:07:24 +10:00
Andrew Tridgell
5042ca8e9e
rework the MAVLink send code to avoid excessive stack usage
...
this avoids a varient of the gcc excessive stack usage bug, by
wrapping the send calls in NOINLINE functions. This saves us a lot of
stack space, and strangely enough produces slightly smaller code!
2011-09-18 11:05:21 +10:00
Janne M
eb7bd2586c
Merge branch 'divider'
2011-09-17 23:56:41 +03:00
Janne M
b5cfbd10ae
Added voltage divider, input voltage and amps per volt to parameters.
2011-09-17 22:32:19 +03:00
Amilcar Lucas
227ce0a92d
Merge some small misc improvements from APM_Camera branch
2011-09-17 20:25:31 +02:00
Andrew Tridgell
58fa51b680
ArduPilot updates for new DCM code
...
G_Dt is no longer needed, and scale ADC values by 8 to match old
constants
2011-09-17 14:58:02 +10:00
Andrew Tridgell
49d96726d5
MAVLink: only send HEARTBEAT and SYS_STATUS during initialisation
...
I am concerned that some of the mavlink send routines may impact on
sensor calibration, so its safer to just send the minimum information
to keep the GCS happy
2011-09-17 14:58:02 +10:00
Michael Oborne
e43b711e96
fix remote error value
2011-09-15 18:26:59 +08:00
unknown
7a70cb6169
Merge branch 'master' of https://code.google.com/p/ardupilot-mega/
2011-09-14 16:02:21 +02:00
unknown
a4e001bbcf
Adding CMake support
2011-09-14 15:44:55 +02:00
Amilcar Lucas
1f29197771
Revert more of 6dcbc7f44bc0.
...
Fix an issue with initialization of channels that on-line changed their function.
For the curious people that the code size overhead of having any aux channel do any function (with this code) is 44 bytes.
To see wich code I'm talking about, do a git diff 05057ac2d455..this_commit (replace this commit with the commit hash of this commit)
2011-09-13 14:01:35 +02:00
Amilcar Lucas
f08cea8044
These changes were meant to be inside commit a14c06adc06b. I'm sorry but reverting stuff is not that easy
2011-09-13 01:54:47 +02:00
Amilcar Lucas
5406991831
Added support for routing any function to any of the aux. servos.
...
This is a manual merge from the APM_Camera branch.
It reverts the stuff that Oliver did not menat to do with his commit 6dcbc7f44bc0
2011-09-13 01:24:06 +02:00
Amilcar Lucas
c7b3bfd295
Use the G_RC_AUX macro when possible. Added more comments. Remove unused code
2011-09-12 20:21:12 +02:00
Doug Weibel
f05f56f83f
Correct bug in initialization of auxiliary channels
...
The value of aux_servo_function[CH_x] was not being set before the radio init_rc_in() function was setting channel angle/range.
2011-09-12 20:21:12 +02:00
Doug Weibel
119d006e03
Change default setting for auto_trim to disabled per user (JB) request.
2011-09-12 07:24:52 -06:00
Doug Weibel
8c9757a8d1
Correct state machine processing for long failsafe event following short failsafe from lower modes
2011-09-11 21:59:46 -06:00
Doug Weibel
251c5875fb
Disable stick mixing if in failsafe
...
If trim values differ from failsafe channel values then stick mixing will adversely affect performance while in failsafe
2011-09-11 21:50:32 -06:00
Amilcar Lucas
77c798abd5
Use G_RC_AUX macro to simplify accessing the auxiliary servos
2011-09-12 00:02:47 +02:00
Amilcar Lucas
46f9d4cec8
This is ugly, but it fixes compilation on arduino
2011-09-11 23:25:06 +02:00
Amilcar Lucas
ce010b4e38
Moved update_aux_servo_function() to the RC_Channel_aux.* files.
...
This simplifies code sharing between ArduCopter and Arduplane at the expense of 48bytes.
Moved CH_x defines out of the defines.h file and into the library where they belong
2011-09-11 23:07:30 +02:00
Amilcar Lucas
213969202a
Moved the RC_Channel_aux class to its own file. The includes could be improved, has anyone got any ideas how ?
2011-09-11 19:13:01 +02:00
Amilcar Lucas
93cbe664d6
Only run camera code if camera support is enabled
2011-09-11 17:41:18 +02:00
Amilcar Lucas
2fa92aea4c
Fix RC range reversal
2011-09-11 04:12:04 +02:00
Amilcar Lucas
46185ee5d8
Revert "Fix RC range reversal"
...
This reverts commit d5046b1097b0b5455aa1a59e9dd80533e589432e.
2011-09-11 04:07:36 +02:00
Amilcar Lucas
51a8ec0ba8
Fix RC range reversal
2011-09-11 04:04:02 +02:00
Amilcar Lucas
8aeee578b4
For now point the camera manually via the RC inputs
2011-09-11 02:40:13 +02:00
Amilcar Lucas
b36d0352f3
Added a comment about lower half of the array
2011-09-10 23:58:25 +02:00
Amilcar Lucas
d3280bdd16
Added comments explaining when should the function be used
2011-09-10 23:36:47 +02:00
Amilcar Lucas
7e0bff9cbe
Egg_drop has a 0..100 range
2011-09-10 23:35:23 +02:00
Andrew Tridgell
0a793a1327
Revert "added support for AP_ADC MAVLink packet"
...
This reverts commit a65a2dda2c1bfa95437880227a3abddc95b329f5.
I am reverting this not for any sane reason, but because my 3 APM
boards now lock up on any I2C operation, and I don't know why. I can't
see how this change could have caused it, but I don't want to take the
chance.
2011-09-10 22:00:29 +02:00
Andrew Tridgell
c65d038ccf
added support for AP_ADC MAVLink packet
...
this adds AP_ADC, which sends raw ADC 16 bit values for all 6 ADC
channels at the Extra3 MAVLink stream rate. Extra3 was previously
unused
2011-09-10 14:18:15 +02:00
Amilcar Lucas
59cbb8ec6f
Moved a camera mount function call, out of the servos update function
2011-09-10 13:47:09 +02:00
Amilcar Lucas
f4998c3673
Moved a function from radio.pde to the RC_Channel_aux library. Now its more readable and reusable
2011-09-10 13:26:29 +02:00
Amilcar Lucas
b7a0d8836a
This is the real HEAD of the APM_Camera branch. Seams that lots of changes got lost in the SVN to GIT port
2011-09-09 16:18:38 +02:00
Amilcar Lucas
f40c85a601
This is the real HEAD of the APM_Camera branch. Seams that lots of changes got lost in the SVN to GIT port
2011-09-09 16:02:22 +02:00
Andrew Tridgell
ec398505a6
rename main pde file for arduino requirements
2011-09-09 11:52:25 +10:00
Andrew Tridgell
609ae8359d
import APM_Camera branch from SVN
2011-09-09 11:45:13 +10:00
Andrew Tridgell
e0dc1271d6
imported ArduPlane from ArduPilotMega svn
2011-09-09 11:29:39 +10:00