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