Andrew Tridgell
93f45f232f
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
98d5a49717
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
9d9c7b0455
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
Amilcar Lucas
9a8fd4738e
Add an optional second mount to ArduPlane and ArduCopter
2012-08-08 23:22:24 +02:00
Andrew Tridgell
5e19c0cf04
AP_Airspeed: removed values passed to constructor
2012-08-08 16:38:39 +10:00
Andrew Tridgell
67f076a9db
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
b366205172
APM: removed cli slider and dipswitch options
...
use mavlink/eeprom for all config
2012-08-08 12:12:29 +10:00
Andrew Tridgell
f98b887dbe
AP_Param: update ArduPlane core for new AP_Param interface
2012-08-08 12:11:57 +10:00
Amilcar Lucas
03b902d4b7
Add me :)
2012-08-06 00:40:12 +02:00
Amilcar Lucas
fe4713b46e
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
9b31938519
The mount type must be updated periodically
2012-08-04 18:44:08 +02:00
Andrew Tridgell
526344ab7c
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
717d0d25d4
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
Andrew Tridgell
cfe19c8f53
APM: update version for 2.50 release
2012-07-26 11:36:17 +10:00
Andrew Tridgell
d4599aa4f0
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
7dd58227a6
AP fix sitl hil attitude mode.
2012-07-24 07:18:25 +08:00
Jeff Taylor
c083ca5f35
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
2121491197
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
Amilcar Lucas
d911e4f61e
Support up to 11 servos in APM2
...
Conflicts:
ArduPlane/ArduPlane.pde
2012-07-18 22:01:19 +02:00
Andrew Tridgell
ead41670c4
Airspeed: change APM to use new AP_Airspeed library
...
the next step is AHRS dead reckoning
2012-07-16 11:21:50 +10:00
Andrew Tridgell
d07593b3bb
APM: added credit for FBW altitude limit code
...
thanks Yuri!
2012-07-10 08:36:50 +10:00
Andrew Tridgell
7bc724d118
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
6ced622da4
APM: fixed some build warnings and type errors
2012-07-06 19:59:18 +10:00
Andrew Tridgell
d9351ff681
APM: use new location functions
2012-07-04 12:42:46 +10:00
Andrew Tridgell
f150c645c8
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
Andrew Tridgell
1cb96e14a9
SITL: enable the SIM_* parameters in ArduCopter and ArduPlane
2012-06-29 15:10:52 +10:00
Andrew Tridgell
44b7d94b1c
APM: ArduPlane updates for new compass interface
2012-06-27 16:01:50 +10:00
Andrew Tridgell
4fda89beb7
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
7941abad16
APM: prepare for 2.40 release
2012-06-16 10:11:26 +10:00
Amilcar Lucas
a12cb8fd9a
Added camera trigger functionality
2012-06-13 21:00:20 +02:00
Amilcar Lucas
f7ef60565e
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
e9226d6f0a
Spellcheck
2012-06-13 20:44:35 +02:00
Jason Short
8e570fa2d0
Cosmetic changes only.
2012-06-10 13:10:07 -07:00
Andrew Tridgell
c034a3a6f7
APM: ready for 2.40-beta
2012-06-08 18:03:21 +10:00
Andrew Tridgell
43fe5bab78
re-enable the AP_Mount build
2012-06-04 19:32:11 +10:00
Andrew Tridgell
18b5933240
AP_Mount: disable AP_Mount until it works with MAVLINK10
2012-06-04 13:14:51 +10:00
Andrew Tridgell
557834f9a9
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
116ed39e77
APM: prepare for 2.34
2012-05-14 14:29:59 +10:00
Andrew Tridgell
78d273fa34
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
Andrew Tridgell
9d56d28615
MAVLink: make APM build with MAVLink 1.0 possible with arduino GUI
2012-04-24 22:24:58 +10:00
Andrew Tridgell
840f7f87ca
ready for 2.33 release
2012-04-09 18:16:49 +10:00
Andrew Tridgell
222009002e
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
5dbd2a2b60
APM: enable AP_Declination by default
2012-03-30 14:25:27 +11:00
Andrew Tridgell
eb98442ed0
APM: Change version to 2.32
2012-03-29 12:50:12 +11:00
Andrew Tridgell
491b73c4e2
APM: increase ArduPlane version to 2.31
2012-03-27 16:13:29 +11:00
Andrew Tridgell
3a325541f6
APM: enable the new offset nulling in APM
2012-03-27 15:37:24 +11:00
Andrew Tridgell
c1e4f63907
APM: adapt ArduPlane for AHRS framework
2012-03-19 17:29:02 +11:00
Michael Oborne
80b356367e
update AP version to 2.30
2012-03-18 10:27:49 +08:00
Andrew Tridgell
1e47ab26f2
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
2e1cacd67f
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
Andrew Tridgell
3239a00b23
APM: avoid fetching the DCM matrix twice
...
also no special case for quaternions
2012-03-10 10:34:32 +11:00
Andrew Tridgell
aa4beb9753
APM: make it possible to build ArduPlane with quaternion support
2012-03-10 10:34:29 +11:00
rmackay9
630de04bd1
ArduPlane - updated to use new filter library
2012-02-28 21:03:04 +09:00
rmackay9
4501c488b4
ArduPlane - added Filter.h to unbreak the build!
2012-02-26 17:05:56 +09:00
rmackay9
6363da2829
ArduPlane - switch sonar to use new mode filter from filter library
2012-02-26 15:35:42 +09:00
Andrew Tridgell
3fe5b3151b
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
252a2d0c9b
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
faa098b2b6
adapt mainline APM code to AP_Param
2012-02-13 16:22:51 +11:00
Michael Oborne
9dafc668cd
fix SITL attitude hil
2012-01-20 16:04:49 +08:00
analoguedevices
40f37c1037
Increment version number in anticipation of a firmware hex push.
2012-01-16 22:48:46 +00:00
Doug Weibel
78ac65d6c3
Additional commenting on global variables
...
First pass done.
2012-01-16 10:28:03 -07:00
Doug Weibel
a3f9fee3d2
Additional commenting on global variables
2012-01-16 09:45:42 -07:00
Doug Weibel
17b3e514dc
Just a little more commenting work on global variables
2012-01-15 16:11:02 -07:00
Doug Weibel
fd8dc84fac
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
6f9c6a3b8e
Adding comments for global variables
2012-01-11 12:37:43 -07:00
Doug Weibel
35fba5d4a3
Tweak to FBW min altitude
...
Patch from Yury
2011-12-31 15:44:40 -07:00
Andrew Tridgell
5aca951438
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
2c41264a9b
APM: added error checking on compass read
2011-12-28 20:41:53 +11:00
Andrew Tridgell
c6b8a08918
APM: convert to new I2C library
2011-12-28 20:41:53 +11:00
analoguedevices
fefda548d2
Added contributor names, removed "alpha" from firmware name
2011-12-26 17:13:37 +00:00
Andrew Tridgell
0aab4da1a1
mainloop_count should be uint16_t
2011-12-21 23:31:38 +11:00
Andrew Tridgell
61b2b2e32a
always declare a timer_scheduler
...
we should always run this code
2011-12-21 23:31:38 +11:00
Andrew Tridgell
5d2301ef47
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
4bbd5392ef
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
b3327c64de
geofence: added fence status reporting and faster altitude check
2011-12-16 20:11:51 +11:00
Andrew Tridgell
1b64185b18
geofence: main geo-fence code
...
this implements the primary logic of geo-fencing
2011-12-16 20:11:51 +11:00
Andrew Tridgell
1455ff4a91
removed an unused variable
2011-12-16 20:09:49 +11:00
Andrew Tridgell
4e4a4a685c
fixed two more CONFIG_HARDWARE #ifdef bugs
2011-12-13 17:05:48 +11:00
Andrew Tridgell
80a0dfe862
fixed hardware config check for barometer
2011-12-12 15:14:55 +11:00
Andrew Tridgell
faf58a355b
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
Pat Hickey
85b82e75f6
ArduPlane: update AP_Baro construtors and initializers
2011-12-11 15:21:10 -08:00
Pat Hickey
63d3b6a278
ArduPlane: Rename APM_BMP085 classes to AP_Baro_BMP085 classes
2011-12-11 15:21:09 -08:00
Doug Weibel
f34333d42b
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
Pat Hickey
0fa8ce9a52
ArduPlane: rev version number from 2.26 to 2.27 Alpha
2011-11-25 20:00:19 -08:00
Andrew Tridgell
7467bf649c
ArduPlane: rename purple to APM2
2011-11-25 20:00:19 -08:00
Andrew Tridgell
0604f2c667
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
2bed1dcfd5
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
446a9aac84
re-organiser sensor declarations
...
this tries to make the #ifdef nesting easier to understand
2011-11-25 20:00:17 -08:00
Andrew Tridgell
992fc87112
purple: always declare timer_scheduler
2011-11-25 20:00:17 -08:00
Pat Hickey
d3a45a053d
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
analoguedevices
1a610ba450
Rev version number
2011-11-19 23:43:47 +00:00
Doug Weibel
a11ea12ca8
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
analoguedevices
fa4896ee91
Rev version number
2011-11-16 05:04:36 +00:00
analoguedevices
b4ccf3b41b
Rev version number to 2.25
2011-11-14 05:31:27 +00:00
Amilcar Lucas
01df18b292
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
3991f9eff3
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
Doug Weibel
1cd3c21774
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
Doug Weibel
86ea3a9558
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
392160314e
Sensor hil fix's
2011-10-13 22:22:03 +08:00
Andrew Tridgell
657367426b
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