Andrew Tridgell
7e672628ea
APM: removed the GPS_enabled flag
...
this fixes using GPS_PROTOCOL to specify a specific GPS with a GPS
that takes a few updates before it works (eg. needing baud rate
changes).
This makes it easier to use an APM1-1280 with more features enabled
2012-09-11 13:37:34 +10:00
Andrew Tridgell
c9a299665c
APM: added speed scaling to wheeled steering
...
this allows for a larger amount of steering control at low speeds
without causing osciallation after takeoff
2012-09-11 13:37:34 +10:00
Jason Short
34e07c826f
ACM : Added centralized Iterm logging at a lower rate. Logs all iterms.
2012-09-10 20:26:48 -07:00
Jason Short
e8e8c27db4
ACM Mavlink - fixed comparison of unsigned to signed int by casting to uint8_t
2012-09-10 20:22:57 -07:00
Jason Short
a73bc70553
ACM : Params - formatting cleanup
2012-09-10 20:22:11 -07:00
Andrew Tridgell
b787dc8cce
APM: added wdt.h for SITL build of APM
2012-09-10 15:52:53 +10:00
Andrew Tridgell
841d2700b6
ACM: use spare CPU cycles to read the magnetometer
2012-09-10 11:38:18 +09:00
rmackay9
9f1033dc42
AP_InertialSensor_Stub: added num_samples_available method to fix HIL build
2012-09-10 11:38:13 +09:00
rmackay9
130f3b0030
AP_InertialSensor_MPU6000: move _last_sample_time_micros to capture time data_interrupt was called
2012-09-10 11:38:08 +09:00
rmackay9
7a265dbf61
AP_InertialSensor: use AP_TimerProcess's queue_process to run read from MPU6000 after any currently running processes complete
2012-09-10 11:38:03 +09:00
rmackay9
55ef1e0a29
AP_PeriodicProcess: queue_process changes to suspend other processes before running queued process
...
Also restored suspend_timer to void return type
2012-09-10 11:37:58 +09:00
rmackay9
fd110a2723
ArduCopter: modified mainloop timing to be in sync with the arrival of new data from the IMU.
...
This reduces the maximum delay between when new sensor data arrives and when it is actually used by about 5ms.
2012-09-10 11:37:53 +09:00
rmackay9
42406c827a
ArduCopter: added NUM_IMU_SAMPLES_FOR_XYZHZ definitions for MPU6000 and Oilpan to allow more syncing of the mainloop with the arrival of data from the IMU.
2012-09-10 11:37:48 +09:00
rmackay9
6ea5c21f7c
AP_ADC: added num_samples_available to allow main loop to be synced with arrival of new sensor data for Oilpan.
2012-09-10 11:37:43 +09:00
rmackay9
fc4ff007e6
AP_IMU: added num_samples_available to allow main loop timing to be synced with arrival of new data from IMU.
2012-09-10 11:37:38 +09:00
rmackay9
0a6219695b
AP_InertialSensor: changed read of sensor from MPU6000 to happen immediately
...
This reduces the delay between when data arrives and when it is used
by up to 1ms.
Added num_samples_available method to all InertialSensors to allow
main loop timing to be synced with sensors.
2012-09-10 11:37:33 +09:00
Andrew Tridgell
0812fc4890
APM: reboot only works on the APM2
2012-09-10 11:50:48 +10:00
Andrew Tridgell
cb88681914
APM: added support for MAV_CMD_PREFLIGHT_REBOOT_SHUTDOWN
...
this allows for remote reboot of APM
2012-09-10 11:42:30 +10:00
Andrew Tridgell
e2779523ea
APM: fixed fetch of relative altitude waypoints
...
when we fetch relative altitude waypoints from APM to a file, we need
to preserve the altitude
2012-09-10 09:40:29 +10:00
Craig Elder
90b74f5bab
APM_RC: fixed noisy PWM output on startup for APM2
...
This reduces the number of rubbish pulses on the APM2 PWM output pins
on startup, which should help with booting some cheaper ESCs.
Thanks to Randy for the idea!
2012-09-10 08:09:28 +10:00
rmackay9
5d3ddf1fc9
ArduCopter: bug fix for ROI not working if user did not have a camera mount
...
Changed verify_nav_roi command to attempt to point at the target if our camera mount type is not pan_tilt nor pan_tilt_roll
2012-09-10 02:03:32 +09:00
Michael Oborne
a32002e14b
firmware build
2012-09-09 18:09:07 +08:00
Andrew Tridgell
feb3fe77ce
APM: simplify radio_trim code
...
this removes the duplicate code. Throttle trim is not changed.
2012-09-09 19:39:09 +10:00
Andrew Tridgell
5c3595e0dc
APM: fixed throttle nudging
...
The nudge value depended on RC3_TRIM, which is not a reliable
value. It tried to only take effect when the throttle stick was above
50%, but if RC3_TRIM was high for some reason (say 1500) then it would
actually depress the throttle by a large amount, which could cause the
plane to stall.
This also adds a boolean option THROTTLE_NUDGE to allow disabling of
throttle nudging
2012-09-09 19:39:04 +10:00
Andrew Tridgell
657dd5969f
APM: preparing for 2.61 release
2012-09-08 18:36:17 +10:00
Andrew Tridgell
6e15aa68b8
Rover: updated for new RC_Channel_aux API
2012-09-08 15:14:41 +10:00
Andrew Tridgell
49468953a3
APM: updated for new RC_Channel_aux API
2012-09-08 15:14:41 +10:00
Andrew Tridgell
4c07add542
AP_Camera: updated for new RC_Channel_aux API
2012-09-08 15:13:06 +10:00
Andrew Tridgell
f41270a3ce
AP_Mount: updated for new RC_Channel_aux API
2012-09-08 15:12:52 +10:00
Andrew Tridgell
3b97339104
RC_Channel: simplified RC_Channel_aux and fixed issue 725
...
it is perfectly valid to configure two RC channels with the same
function, especially when that function is manual output (ie. copy
input to output)
This removes the g_rc_function[] indirection array
2012-09-08 15:12:28 +10:00
Andrew Tridgell
a6422be8fb
APM: added mtk and mtk16 build targets
...
useful for testing non-auto gps detection
2012-09-08 12:43:36 +10:00
Andrew Tridgell
f26b9ab286
APM: prevent crosstrack from takeoff point after takeoff completion
2012-09-08 11:37:14 +10:00
Andrew Tridgell
dec12c7370
APM: use ahrs.airspeed_estimate() in two more places
...
this applies the wind constraint
2012-09-08 11:37:11 +10:00
Andrew Tridgell
de28cc8b28
AHRS: added AHRS_WIND_MAX option
...
this allows APM to cope better with airspeed sensor failure, but
ensuring airspeed stays within AHRS_WIND_MAX of ground speed
2012-09-08 11:37:07 +10:00
Andrew Tridgell
8458607928
APM_OBC: changed termination servo values, and added loop counter
2012-09-08 11:37:00 +10:00
Andrew Tridgell
cde7d8c5e7
APM: fixed some compiler warnings
2012-09-08 10:14:32 +10:00
Andrew Tridgell
d07d42403e
APM: tidy up an if() statement
2012-09-08 10:14:20 +10:00
Andrew Tridgell
fa84ba451a
APM_OBM: Failsafe board sketch
...
this combines with the OBC failsafe module
2012-09-08 10:07:17 +10:00
Andrew Tridgell
cca04d195a
APM_OBC: handle separate terminate pin correctly
2012-09-08 10:07:14 +10:00
Andrew Tridgell
13145e4c01
OBC: added FS_TERM_PIN option
...
this sets a pin for flight termination
2012-09-08 10:07:08 +10:00
Andrew Tridgell
164c60d25f
APM: added RUDDER_STEER option
...
when enabled, this uses only the rudder to steer during takeoff and
landing, using aileron only for levelling
2012-09-08 10:07:03 +10:00
Andrew Tridgell
130b26e1f9
APM: support DO_SET_SERVO command
2012-09-08 10:06:53 +10:00
Andrew Tridgell
96ea350143
APM: added XTRK_MIN_DIST option
...
this allows you to disable crosstrack correction on short legs
2012-09-08 10:06:44 +10:00
Andrew Tridgell
a446a7a9ed
APM: allow serial buffer size to be configured
...
very useful for packet forwarding setups
2012-09-08 10:06:35 +10:00
Andrew Tridgell
3a1ff7bdd9
Mavlink: enable MAVLINK_SEPARATE_HELPERS
...
this fixes a seq number problem with SIMSTATE packets
2012-09-08 10:06:19 +10:00
Andrew Tridgell
9b2ad55773
APM: added forwarding of unknown MAVLink types
2012-09-08 10:06:15 +10:00
Andrew Tridgell
f97104b435
ACM: use compass.accumulate() in ArduCopter
...
this gives us a much less noisy magnetometer
2012-09-08 10:06:04 +10:00
Andrew Tridgell
68705fe7e6
APM: accumulate mag readings during spare cycles in ArduPlane
...
With this change we average over 100 mag readings per compass.read()
call, which means we are reading the compass at over 1kHz instead of
10Hz. The noise reduction is huge.
2012-09-08 10:05:58 +10:00
Andrew Tridgell
6922dcdea2
Compass: added compass.accumulate() API
...
this allows us to accumulate mag readings using spare CPU cycles
2012-09-08 10:05:54 +10:00
Michael Oborne
cd08420c3e
AP fix takeoff alt issue
...
issue 733
2012-09-06 20:19:12 +08:00