Commit Graph

8405 Commits

Author SHA1 Message Date
Víctor Mayoral Vilches
790f4ec56c HAL_Linux: Util fix indentation 2015-06-30 14:35:59 +10:00
Andrew Tridgell
ac3200fd32 AP_InertialSensor: make max_abs_offsets a single float, not a vector 2015-06-30 10:51:43 +10:00
Gustavo Jose de Sousa
0fcd98c804 AP_InertialSensor: disable debug on LSM9DS0 2015-06-30 10:28:05 +10:00
Gustavo Jose de Sousa
c168e19e73 AP_InertialSensor: fix coding style with uncrustify on LSM9DS0
This commit makes backend source code for LSM9DS0 comply with the configuration
files "uncrustify_cpp.cfg" and "uncrustify_headers.cfg".
2015-06-30 10:28:02 +10:00
Gustavo Jose de Sousa
2f2a627002 AP_InertialSensor: use runtime GPIO drdy pins numbers instead C constant macros
As we intend to eventually get board related parameters from a configuration
file, this commit makes the GPIO numbers for data-ready pins be instance
variables instead of from C constant macros.

Another advantage of using instance variables in this context is the
possibility of using more than one LSM9DS0.
2015-06-30 10:27:59 +10:00
Gustavo Jose de Sousa
0ef914adac AP_InertialSensor: don't take SPI semaphore if not necessary on LSM9DS0
If the data-ready polling is done entirely on GPIO pins, it isn't necessary to
hold the semaphore before we now we have data to consume. In that case, only
take the SPI semaphore if there's new data available.

On the other hand, if at least one SPI transaction is done in order to check
for new data, then it makes sense to take the semaphore beforehand.
2015-06-30 10:27:57 +10:00
Gustavo Jose de Sousa
a82ab25ed3 AP_InertialSensor: use bitfield macros instead of literal values on LSM9DS0
This commit makes accel and gyro initialization routines use bitfield macros
instead of hardcoding the literal value when wrinting on registers. That is
less prone to typos and a lot of times self-explanatory. Also, due to the
latter, the long comments explaining each register field were removed (any
detail can be checked on the datasheet).
2015-06-30 10:27:54 +10:00
Gustavo Jose de Sousa
1572324315 AP_InertialSensor: add macros for LSM9DS0 registers' bitfields 2015-06-30 10:27:51 +10:00
Gustavo Jose de Sousa
033409c629 AP_InertialSensor: set max abs calibration offset for LSM9DS0 2015-06-30 10:27:48 +10:00
Gustavo Jose de Sousa
42eb73a1d1 AP_InertialSensor: add LSM9DS0 backend
This adds the backend driver for LSM9DS0. This implementation is based on the
legacy driver coded by Víctor Mayoral Vilches (under folder LSM9DS0) and makes
some necessary adaptations and fixes in order to work properly. The legacy
driver folder was removed.
2015-06-30 10:27:46 +10:00
Gustavo Jose de Sousa
c340e072f2 AP_InertialSensor: use accel instance max abs offset instead of a constant value
The calibration on LSM9DS0 was giving offsets between 4.0 and 4.2 on x-axis and
around 3.6 on y-axis. It turned out that those offsets were actually right.

The maximum absolute values of calibration offset should be a sensor
characteristic rather than a constant value for all sensors.

The constant value previously used (3.5 m/s/s for all axes) is set here as a
default maximum absolute calibration offset for every instance to keep it
working.
2015-06-30 10:27:44 +10:00
Lucas De Marchi
623c5f0713 AP_HAL_Linux: check if I2C device is chardev 2015-06-30 09:10:54 +10:00
Lucas De Marchi
acc571c2c5 AP_HAL_Linux: add function to check if path is chardev
Utility function to allow checking if a certain path is a character
device.
2015-06-30 09:10:54 +10:00
Lucas De Marchi
a4c1b0d75f AP_HAL_Linux: add constructor to find I2C bus reliably
The device number in /dev may not be reliable from one boot to another
due to the initialization order of each bus.

For example, in Minnow Board Max, the exposed I2C buses may be i2c-7 and
i2c-8 or i2c-8 and i2c-9 depending if the platform driver in the kernel
is initialized before or after the PCI.

It also may change with different version and configuration of the DT or
UEFI used making another kernel driver to bind to the device. This means that
for Minnow Board Max we need to use something like below to pass to the
constructor:

	static const char * const i2c_devpaths[] = {
	    /* UEFI with lpss set to ACPI */
	    "/devices/platform/80860F41:05",
	    /* UEFI with lpss set to PCI */
	    "/devices/pci0000:00/0000:00:18.6",
	     NULL
	};

The devpath here is the one returned by udev with the following command:

	udevadm info -q path /dev/<i2c-device>

In contrary to the device number in /dev/i2c-N, this path in sysfs is
stable across reboots and can only change if there's a change in the
UEFI firmware or the board's device tree.

This patch assumes the currently supported boards don't have this
problem so it's not touching them.
2015-06-30 09:10:54 +10:00
Lucas De Marchi
ec5d0b6c08 AP_HAL_Linux: reorder members and methods and use C++ initializer 2015-06-30 09:10:53 +10:00
Michael du Breuil
a382ce2b0c AP_GPS: Add support for logging ublox RXM-RAWX messages
Can only record 32 satellites raw info before memory corruption occurs. (And raised the limit on normal RXM-RAW messages to 22)
2015-06-30 09:05:49 +10:00
Michael du Breuil
d665c85c20 DataFlash: Add RXM-RAWX logging messages 2015-06-30 09:05:48 +10:00
mirkix
38a8a772f8 AP_GPS: Add fix status 3D+DGPS 2015-06-30 09:00:31 +10:00
Andrew Tridgell
15efae5a48 HAL_SITL: use SITL_NUM_CHANNELS 2015-06-30 08:55:02 +10:00
Andrew Tridgell
f8944ab6be SITL: define number of RC out channels 2015-06-30 08:54:46 +10:00
Vladislav Zakharov
be4b6033e4 AP_HAL_Linux: Navio RCInput reimplemented. 2015-06-29 16:45:43 +10:00
Vladislav Zakharov
e505eb2cd8 AP_HAL_Linux: Changes in Scheduler: Added defines for delays, RCIN_RERIOD changed 2015-06-29 16:45:42 +10:00
Przemek Lekston
90378b21da AP_BattMonitor: Fix battery monitor Floating Point Exception in SITL
Adds a sanity check to avoid division by zero when BATT_CAPACITY is set to 0.
2015-06-29 16:42:52 +10:00
Andrew Tridgell
ff88932091 SITL: setup turbulence in JSBSim 2015-06-29 11:25:59 +10:00
Andrew Tridgell
92c9779d18 HAL_SITL: pass turbulence to simulators 2015-06-29 11:25:44 +10:00
Randy Mackay
ef20676c67 GPS: fix INJECT_TO param desc and add definition
No functional change
2015-06-27 16:31:03 +09:00
Randy Mackay
0264b1aa84 AC_Circle: set only xy position targets 2015-06-27 15:43:49 +09:00
Randy Mackay
0b9c7c2a3b SerialManager: add SToRM32 to protocol param description 2015-06-27 11:18:17 +09:00
Víctor Mayoral Vilches
ab5f1b3a24 BusTest: Fix compilation error with AP_ADC 2015-06-26 21:59:22 +10:00
Peter Barker
723c37bcf7 DataFlash: backend/frontend split 2015-06-26 16:02:50 +10:00
Andrew Tridgell
21c8a2d94a AP_Common: override new and delete on all platforms to zero memory
this guarantees that all classes get zero initial members when
they are dynamically allocated.
2015-06-26 15:55:19 +10:00
Andrew Tridgell
eeb97800ae AC_AttitudeControl: allow for tail pass-thru in ACRO mode
this allows for all channels to be passed through
2015-06-26 12:45:38 +09:00
Michael du Breuil
e45f3537cf APM_Control: Remove duplicate include statements 2015-06-25 10:23:47 +10:00
Michael du Breuil
aa04c81e3c APM_Control: Fix a typo in the docstring for YAW2SRV_SLIP 2015-06-25 10:22:36 +10:00
Tom Pittenger
e6122d1a4e AP_Mission: ensure cache coherence on mission resume
- when resuming a mission we should read the value from storage of the same index to ensure we're not continuing an old cached version of the mission item.
- inherent problem: DO commands will continue and will be unaffected unless the new mission has a different DO_ command structure. If so, a set_current_cmd() or reset() should be issued by the GCS.
2015-06-25 10:21:06 +10:00
Andrew Tridgell
a81590f7ac HAL_SITL: prevent FPE on zero range with optflow 2015-06-25 10:08:53 +10:00
Randy Mackay
9f17fc17ab NavEKF: update parameter descriptions 2015-06-24 16:25:14 +09:00
Paul Riseborough
87e6a24154 AP_NavEKF: Add public method to reset EKF height datum and baro alt 2015-06-24 16:25:11 +09:00
Randy Mackay
1e3e65e443 AC_AttControl: add shift_ef_yaw_target
This allows shifting the target heading in case the EKF shifts it's
heading estimate
2015-06-24 11:49:32 +09:00
Paul Riseborough
e3ccb74e12 AP_NavEKF: Publish amount of in-flight yaw angle reset 2015-06-24 11:49:29 +09:00
Gustavo Jose de Sousa
c72dc9bd45 AP_InertialSensor: make single rotation on MPU9250
The previous implementation made some boards apply two rotations to suit
their default orientation. That was happening because there was an
unconditional rotation being done (commented as "rotate for bbone
default").

This commit makes that unconditional rotation as a default rotation
instead and adjusts the former additional rotations to be single
rotations.
2015-06-22 17:45:20 +10:00
Gustavo Jose de Sousa
3dad768e8b AP_InertialSensor: log failure to initialize after max attempts on MPU9250
This happens for example when you are trying to use an SPI speed that's
above the one supported by the sensor or the controller.
2015-06-22 17:45:20 +10:00
Gustavo Jose de Sousa
587471ab54 AP_InertialSensor: disable I2C on MPU9250
As the datasheet says: "To prevent switching into I2C mode when using
SPI, the I2C interface should be disabled by setting the I2C_IF_DIS
configuration bit."

We also reset the sensor like PX4Firmware does for initializing the
MPU6000.  See: ee1d8cd770/src/drivers/mpu6000/mpu6000.cpp (L695)
2015-06-22 17:45:20 +10:00
Michael du Breuil
6cd81ae1fb APM_Control: Add PID logging to yaw controller 2015-06-22 15:41:44 +10:00
Michael du Breuil
225c946af0 DataFlash: Add PIDS for steering logging 2015-06-22 15:41:44 +10:00
Robert Lefebvre
11214b3414 AP_Motors: move constraints to set_throttle 2015-06-22 13:52:59 +09:00
Grant Morphett
84ac8abc42 AP_Mount: Fixed a bug with wrapping of panning angles. 2015-06-22 09:32:26 +09:00
Andrew Tridgell
a424686d2f DataFlash: reduce future merge conflicts
an enum makes it easier to merge new messages
2015-06-20 16:18:50 +10:00
Andrew Tridgell
81e6d88560 StorageManager: fixed hang in erase()
found by coverity
2015-06-20 15:00:57 +10:00
Andrew Tridgell
4eab27abe9 AP_InertialSensor: fixed logic bug in MPU6000 init
thanks to coverity
2015-06-20 14:53:04 +10:00
Andrew Tridgell
131b345ccc APM_Control: cleanup some coverity warnings 2015-06-20 13:30:32 +10:00
Andrew Tridgell
322a61635f SITL: allow extra arguments to be passed to last_letter 2015-06-19 16:39:46 +10:00
Robert Lefebvre
0c92565d23 AP_MotorsHeli: add Critical Rotor Speed param, use to switch off runup_complete 2015-06-19 15:10:53 +09:00
Robert Lefebvre
3ad6700c5d AP_MotorsHeli: add getters for rotor speed 2015-06-19 15:10:51 +09:00
Robert Lefebvre
8b917b82ee AP_MotorsHeli: Simplify set_desired_rotor_speed function definition 2015-06-19 15:10:50 +09:00
Robert Lefebvre
79e8c8f7f7 AP_MotorsHeli: whitespace fixes 2015-06-19 15:10:47 +09:00
Georacer
b375a8debf SITL: Allows last_letter to start at the location specified by the SITL arguments 2015-06-19 12:49:29 +10:00
Leonard Hall
cfc388934b AC_AttControl: add set_accel_roll_max
Also equivalents for pitch and yaw
2015-06-18 23:06:33 +09:00
mirkix
7c55689aad AP_HAL_Linux: Fix loading Firmware 2015-06-18 10:13:49 +10:00
Paul Riseborough
6ba8cd05ff AP_NavEKF: Fix bug preventing GPS vertical velocity being used
This fixes a bug that prevents GPS velocity being used permanently if there is a temporary unavailability
2015-06-18 09:01:21 +10:00
mirkix
a1d478909a AP_BattMonitor: Add Linux support for example 2015-06-18 09:00:01 +10:00
mirkix
d169fea9ec AP_AHRS: Add Linux support for example 2015-06-18 08:59:16 +10:00
mirkix
588a16dec2 AP_InertialSensor: Add Linux support for VibTest example 2015-06-18 08:48:23 +10:00
Andrew Tridgell
de11b5394e GCS_MAVLink: support NSH shell with SERIAL_CONTROL 2015-06-17 20:30:10 +10:00
Andrew Tridgell
a0594bd50e GCS_MAVLink: regenerate headers 2015-06-17 20:30:10 +10:00
Andrew Tridgell
bdbe1a7553 GCS_MAVLink: added SERIAL_CONTROL_DEV_SHELL 2015-06-17 20:30:09 +10:00
Andrew Tridgell
d909f11ba3 HAL_PX4: added implementation of NSH shell stream 2015-06-17 20:30:09 +10:00
Andrew Tridgell
7f239f5d46 AP_HAL: added get_shell_stream() 2015-06-17 17:04:15 +10:00
Andrew Tridgell
4fe092fead AP_InertialSensor: panic on bad gyro or accel sample rates 2015-06-17 15:01:23 +10:00
Andrew Tridgell
d3b85eb792 AP_InertialSensor: use driver supplied sample rate
this will work with a wider range of sensors
2015-06-17 14:44:19 +10:00
Andrew Tridgell
e91bfdfc1c AP_InertialSensor: fixed VibTest example build 2015-06-17 14:15:58 +10:00
Andrew Tridgell
feb928dcd3 DataFlash: fixed build warnings 2015-06-17 13:10:26 +10:00
Andrew Tridgell
c9988d8b37 AP_NavEKF: rely on delta_velocity and delta_angles always being available 2015-06-17 13:10:26 +10:00
Andrew Tridgell
bc0ae630a1 AP_InertialSensor: always provide delta_velocity and delta_angles
this makes the NavEKF code simpler
2015-06-17 13:10:26 +10:00
Andrew Tridgell
a115182041 AP_NavEKF: fixed minimum deltat to be 100us 2015-06-17 13:10:26 +10:00
Andrew Tridgell
c221959d5a AP_NavEKF: fixed corrected del velocity to use both accels 2015-06-17 13:10:25 +10:00
Andrew Tridgell
f831c16238 AP_InertialSensor: use fixed sensor sample times
this uses fixed sample times for PX4 IMUs, rather than reported
timestamps. It avoids timing jitter caused by the over-sampling in
the PX4 drivers
2015-06-17 13:03:56 +10:00
Andrew Tridgell
f77ffd30f6 AP_GPS: fixed HIL GPS driver to make have vertical velocity sticky 2015-06-17 12:46:56 +10:00
Randy Mackay
9d81856580 InertialSensor: fix name of get_delta_velocity method 2015-06-17 12:46:54 +10:00
Randy Mackay
384755e271 Dataflash: add IMT messages 2015-06-17 12:46:54 +10:00
Andrew Tridgell
727be87d84 AP_InertialSensor: support HIL functions for delta_velocity and delta_angles 2015-06-16 09:53:55 +10:00
Andrew Tridgell
4677c189e0 HAL_SITL: support balloon model 2015-06-15 09:20:56 +10:00
Andrew Tridgell
83cc60a699 SITL: added simple balloon simulator
for testing balloon release code in plane
2015-06-15 09:20:55 +10:00
Andrew Tridgell
5e80f0cf72 APM_Control: allow for multiple stop calls in autotune 2015-06-15 09:20:54 +10:00
Andrew Tridgell
9bd8e215b2 AP_Mission: enable DO_AUTOTUNE_ENABLE 2015-06-15 09:20:54 +10:00
Andrew Tridgell
08acde2766 AP_Mission: added ALTITUDE_WAIT NAV command
used for HAB launch
2015-06-15 09:20:54 +10:00
Andrew Tridgell
c415bfe766 GCS_MAVLink: regenerate headers 2015-06-15 09:20:54 +10:00
Andrew Tridgell
3ef44459c8 GCS_MAVLink: added ALTITUDE_WAIT message 2015-06-15 09:17:27 +10:00
Randy Mackay
69e59b2d99 GCS_MAVLink: update version after adding LANDING_TARGET 2015-06-12 21:37:09 +09:00
Randy Mackay
835a203566 GCS_MAVLink: generate after adding LANDING_TARGET 2015-06-12 21:37:07 +09:00
Randy Mackay
94aec19336 GCS_MAVLink: import LANDING_TARGET from upstream 2015-06-12 21:37:04 +09:00
Randy Mackay
76fdfdfcf2 GCS_MAVLink: do not send_vibration on APM2 2015-06-12 21:37:01 +09:00
Randy Mackay
0d239d2746 DataFlash: disable vibration logging on APM2
Also remove unnecessary include
2015-06-12 21:36:59 +09:00
Randy Mackay
8ceccd778d InertialSensor: disable vibration checks on APM2
Also bug fix get_accel_clip_count's instance check
2015-06-12 21:36:56 +09:00
Randy Mackay
642aa74530 GCS_MAVLink: add send_vibration 2015-06-12 21:36:42 +09:00
Randy Mackay
581e43bd0e GCS_MAVLink: update version after adding VIBRATION msg 2015-06-12 21:36:39 +09:00
Randy Mackay
afbb670e73 GCS_MAVLink: generate after adding VIBRATION message 2015-06-12 21:36:36 +09:00
Randy Mackay
e677a100c6 GCS_MAVLink: add VIBRATION message to common.xml 2015-06-12 21:36:34 +09:00
Randy Mackay
f0f262eb04 DataFlash: add Log_Write_Vibration 2015-06-12 21:36:28 +09:00
Randy Mackay
1289208244 LowPassFilter: add get method 2015-06-12 21:36:24 +09:00
Randy Mackay
0db7acc628 InertialSensor: calc vibration and accel clipping 2015-06-12 21:36:22 +09:00
Tom Pittenger
3544549cf4 AP_GPS: Allow switching primary GPS instance with 1 sat difference
Rapid switching between GPS receivers can cause real problems.
Switch if:
1) secondary GPS has 1 more satellite for at least 20 seconds
OR
2) secondary GPS has 2 more satellites for at least 5 seconds

Fixes https://github.com/diydrones/ardupilot/pull/2320
2015-06-11 21:33:06 +10:00
Andrew Tridgell
dea36c1ae9 HAL_PX4: fixed build on non-PX4 systems 2015-06-11 15:17:02 +10:00
Andrew Tridgell
88655b48e1 HAL_PX4: added px4_param stub functions
this replaces the PX4 parameter system with stub functions that fail
all parameter find calls
2015-06-11 13:31:41 +10:00
Randy Mackay
0b6323d5ed Mount: default MNT_TYPE to servo gimbal if rc outputs defined 2015-06-10 16:47:08 +09:00
Randy Mackay
03a336d496 RC_Channel: update_aux_servo_function made public 2015-06-10 16:47:06 +09:00
Eugene Shamaev
40a5aa497a HAL_PX4: added rc_bind for DSM bind 2015-06-10 17:19:09 +10:00
Eugene Shamaev
8cb367eaf8 AP_HAL: added rc_bind rcin method 2015-06-10 17:19:08 +10:00
Lucas De Marchi
b3da1579c1 AP_Notify: rename member to initialized
We are not only checking if there was an error, but if it was already
initialized.  Let's make it explicit by inverting the value we store.
2015-06-10 16:39:01 +10:00
Lucas De Marchi
3f8dab41c4 AP_Notify: fix wrong boolean check
Check by false instead of checking by -1. Fix the following compiler warning
with gcc 5.1.0:

ardupilot/libraries/AP_Notify/ToneAlarm_Linux.cpp:64:13: warning: comparison of constant '-1' with boolean expression is always false [-Wbool-compare]
     if (err == -1) {
             ^

Also change the initialization code not to use -1.
2015-06-10 16:39:01 +10:00
Andrew Tridgell
979a571d68 AP_HAL: fixed example build 2015-06-10 09:27:41 +10:00
Andrew Tridgell
d6af9fd0ee HAL_PX4: prevent uavcan motor spin up while booting 2015-06-09 19:45:01 +10:00
Andrew Tridgell
6a33aeef67 HAL_PX4: cope with multi-instance actuator_outputs uORB
we need to subscribe to all of them
2015-06-09 19:45:00 +10:00
Andrew Tridgell
2167675b3d AP_RangeFinder: update for upstream merge 2015-06-09 19:44:20 +10:00
Andrew Tridgell
23d291f144 AP_Notify: update for upstream merge 2015-06-09 19:44:20 +10:00
Andrew Tridgell
333778bac1 HAL_PX4: updates for upstream merge 2015-06-09 19:44:20 +10:00
Andrew Tridgell
02aa6983a7 APM_Control: fixed FF handling in steering controller 2015-06-09 13:28:26 +10:00
Andrew Tridgell
5105d510b8 APM_Control: added pid_info and FF to steering controller
used for realtime ground steering tuning
2015-06-09 12:48:55 +10:00
Andrew Tridgell
c44ab01be8 AP_HAL: use noreturn attribute on panic
should reduce coverity warnings
2015-06-08 21:09:08 +10:00
Randy Mackay
aa7a151fe5 AC_WPNav: init flags
Resolves Coverity warning
2015-06-08 14:46:39 +09:00
Randy Mackay
bb382a65e8 AC_Circle: init members and flags
Removed unused dir flag
Resolves Coverity warning
2015-06-08 14:46:37 +09:00
Randy Mackay
1bf0139162 AC_Sprayer: init flags
Resolves warning from Coverity
2015-06-08 14:46:35 +09:00
Randy Mackay
d2f93dd379 AC_PosControl: init flags
Resolves warning from Coverity
2015-06-08 14:46:32 +09:00
Randy Mackay
d366c30358 AP_RangeFinder: fix potential out-of-bounds read
Issue found by Coverity
2015-06-08 14:46:21 +09:00
Randy Mackay
2849430341 AP_Motors: init flags
resolves coverity issue
2015-06-08 14:46:16 +09:00
Randy Mackay
ac76562638 RangeFinder: init state and drivers
resolves a coverity defect
2015-06-08 14:46:14 +09:00
Randy Mackay
7bbaeac55f OpticalFlow: init _last_update_ms member
This resolves a defect found with coverity
2015-06-08 14:46:11 +09:00
Eugene Shamaev
ca482cf44a StorageManager: added example sketch 2015-06-08 10:05:05 +09:00
Eugene Shamaev
c6c6e2dc13 AP_GPS: add comments to example sketch 2015-06-08 10:04:36 +09:00
Max Basescu
32994a5b1e AP_HAL_AVR: Changed constrain_period to use RC_OUTPUT bounds instead of RC_INPUT
Done in order to get full range of motion for servo output
2015-06-05 21:03:03 +10:00
Max Basescu
de50217809 AP_HAL: Added RC_OUTPUT_MIN_PULSEWIDTH set to 400 and RC_OUTPUT_MAX_PULSEWIDTH set to 2100
For use in AP_HAL_AVR in RCOutput_APMx
2015-06-05 21:03:03 +10:00
Randy Mackay
382f5d087f AC_PosControl: explicitly set set_alt_target_from_climb_rate params 2015-06-05 15:51:02 +09:00
Randy Mackay
6ea60aa662 AC_PosControl: remove default from set_alt_target_from_climb_rate 2015-06-05 15:15:03 +09:00
Randy Mackay
11fee21f06 AC_PosControl: init accel_last_z_cms 2015-06-05 15:06:34 +09:00
Randy Mackay
b8e3fe8f26 Mount: AlexMos fix to stop crashing before init 2015-06-05 12:31:16 +09:00
Randy Mackay
66d2328163 Mount: Alexmos save 4 bytes of RAM 2015-06-05 12:31:14 +09:00
Randy Mackay
7a8fe5f4d4 Mount: Alexmos formatting fixes 2015-06-05 12:31:12 +09:00
Tim Ryan
d7fe6bfe0d Terrain: cast grid_spacing to fix OSX clang error 2015-06-04 21:01:34 +09:00
Lucas De Marchi
1d39f548dc AP_HAL: remove aliases FUNCTOR_[BIND|TYPEF]_VOID
Nobody is using them anymore, so kill them.
2015-06-04 13:37:41 +09:00
Lucas De Marchi
98a1a05933 AP_Scheduler: stop using alias FUNCTOR_BIND_VOID 2015-06-04 13:37:40 +09:00
Andrew Tridgell
2de8c26c06 AP_Arming: allow pre_arm_checks() to be subclassed
this allows for vehicle specific arming checks
2015-06-04 13:26:39 +10:00
Andrew Tridgell
dbff6cab43 HAL_Linux: added udp example to help 2015-06-03 21:47:01 +10:00
Paul Riseborough
d3f83e8ec6 AP_NavEKF: Improve gyro bias learning rate for plane and rover
This patch increases initial gyro bias uncertainty and plane and rover specific process noise to improve the rate of gyro bias learning.
This reduces the likelihood of a navigation failure due to rapid temperature changes in the inertial sensors causing rapid changes in zero rate offset.

The increase in process noise cannot be applied to Copter due to different numerical stability limits arising from the faster update rate.
2015-06-03 11:46:17 +10:00
Andrew Tridgell
367a87591a AP_Param: fixed build of eedump_apparam 2015-06-03 11:46:00 +10:00
Andrew Tridgell
9a7b283322 AP_GPS: fixed enable of RXM_RAW on uBlox on Pixhawk
if version detection was disabled this would never trigger
2015-06-02 16:52:08 +10:00
Grant Morphett
7d1bf75aa8 DataFlash: Moving parameter logging to be after all systems have started
Moved Log_Write_Parameters to be public so we can call it from the
vehcile code at the end of the startup sequence.
We needed to do this because parameters like COMPASS_EXTERNAL are
modified by the startup code and if we log the parameters too early we
will be recording the wrong value.
2015-06-01 20:22:43 +09:00
Randy Mackay
9c28d61a5c Mission: protect against endless loops of do-commands 2015-06-01 18:11:54 +09:00
Andrew Tridgell
e234844905 RC_Channel: fixed example sketch 2015-06-01 18:05:50 +10:00
Andrew Tridgell
767aeedf01 AP_Mission: fixed example sketch 2015-06-01 18:05:38 +10:00
Andrew Tridgell
b2a5de8a63 AP_Scheduler: fixed example sketch 2015-06-01 17:42:32 +10:00
Andrew Tridgell
214b61bfc0 AP_InertialSensor: fixed example build 2015-06-01 17:35:15 +10:00
Andrew Tridgell
3edac37929 AP_Math: removed unused include in example 2015-06-01 17:35:03 +10:00
Andrew Tridgell
407fbc7261 AP_Menu: remove unused AP_Vehicle.h include 2015-06-01 17:34:48 +10:00
Andrew Tridgell
9fa1e15238 AP_Menu: removed example sketch
not very useful
2015-06-01 17:34:34 +10:00
Andrew Tridgell
5c86005160 AP_HAL: removed spurious delay example 2015-06-01 17:28:45 +10:00
Andrew Tridgell
1bd61ae96e AP_HAL: no need to include AP_Vehicle_Type.h here any more 2015-06-01 17:28:24 +10:00
Andrew Tridgell
d746e8fa29 AP_Motors: mark examples as nobuild
waiting for fix from Rob
2015-06-01 17:27:33 +10:00
Andrew Tridgell
7f408cae02 AP_PerfMon: convert example from .pde to .cpp 2015-06-01 17:07:09 +10:00
Andrew Tridgell
421c7e02ae StorageManager: convert example from .pde to .cpp 2015-06-01 17:07:08 +10:00
Andrew Tridgell
6c1c2dd8bd RC_Channel: convert example from .pde to .cpp 2015-06-01 17:07:08 +10:00
Andrew Tridgell
fce95178e7 PID: convert example from .pde to .cpp 2015-06-01 17:07:08 +10:00
Andrew Tridgell
3b48f68cce GCS_MAVLink: convert example from .pde to .cpp 2015-06-01 17:07:07 +10:00
Andrew Tridgell
89c4e6fc21 GCS_Console: convert example from .pde to .cpp 2015-06-01 17:07:07 +10:00
Andrew Tridgell
b7f0735c2b Filter: convert example from .pde to .cpp 2015-06-01 17:07:07 +10:00
Andrew Tridgell
e734f24cc1 DataFlash: convert example from .pde to .cpp 2015-06-01 17:07:07 +10:00
Andrew Tridgell
ae4cfe3f2f AP_Scheduler: convert example from .pde to .cpp 2015-06-01 17:07:06 +10:00
Andrew Tridgell
b2fb2c676e AP_RangeFinder: convert example from .pde to .cpp 2015-06-01 17:07:06 +10:00
Andrew Tridgell
330d8f5c3a AP_Parachute: convert example from .pde to .cpp 2015-06-01 17:07:06 +10:00
Andrew Tridgell
637f8430c9 AP_OpticalFlow: convert example from .pde to .cpp 2015-06-01 17:07:06 +10:00
Andrew Tridgell
24e2e4b35e AP_Notify: convert example from .pde to .cpp 2015-06-01 17:07:05 +10:00
Andrew Tridgell
83b46243db AP_Mount: convert example from .pde to .cpp 2015-06-01 17:07:05 +10:00
Andrew Tridgell
89baf2bdf1 AP_Motors: convert example from .pde to .cpp 2015-06-01 17:07:05 +10:00
Andrew Tridgell
d1ed4c863c AP_Mission: convert example from .pde to .cpp 2015-06-01 17:07:04 +10:00
Andrew Tridgell
4d040bbb94 AP_Math: convert example from .pde to .cpp 2015-06-01 17:07:04 +10:00
Andrew Tridgell
7f7113c1de AP_InertialSensor: convert example from .pde to .cpp 2015-06-01 17:07:04 +10:00
Andrew Tridgell
ca8482b4d6 AP_HAL_PX4: convert example from .pde to .cpp 2015-06-01 17:07:04 +10:00
Andrew Tridgell
dd10cbc976 AP_HAL_Linux: convert example from .pde to .cpp 2015-06-01 17:03:44 +10:00
Andrew Tridgell
f9aa1d1a8b AP_HAL_FLYMAPLE: convert example from .pde to .cpp 2015-06-01 17:03:44 +10:00
Andrew Tridgell
36b19b26ce AP_HAL: convert example from .pde to .cpp 2015-06-01 17:03:40 +10:00
Andrew Tridgell
379b130d0a AP_HAL_Empty: convert example from .pde to .cpp 2015-06-01 17:03:37 +10:00
Andrew Tridgell
0cc31c2db5 AP_HAL_AVR: convert example from .pde to .cpp 2015-06-01 17:03:37 +10:00
Andrew Tridgell
e18a2df64e AP_GPS: convert example from .pde to .cpp 2015-06-01 16:58:11 +10:00
Andrew Tridgell
7320a35ad2 AP_GPS: convert example from .pde to .cpp 2015-06-01 16:58:11 +10:00
Andrew Tridgell
c18c84fbe1 AP_Declination: convert example from .pde to .cpp 2015-06-01 16:58:11 +10:00
Andrew Tridgell
d6a1bd98e6 AP_Compass: convert example from .pde to .cpp 2015-06-01 16:58:11 +10:00
Andrew Tridgell
191cdb8bc1 AP_Common: convert example from .pde to .cpp 2015-06-01 16:58:11 +10:00
Andrew Tridgell
debe7db861 AP_BattMonitor: convert example from .pde to .cpp 2015-06-01 16:58:11 +10:00
Andrew Tridgell
4368f922a3 AP_Baro: convert example from .pde to .cpp 2015-06-01 16:58:10 +10:00
Andrew Tridgell
e66b56970e AP_Airspeed: convert example from .pde to .cpp 2015-06-01 16:58:10 +10:00
Andrew Tridgell
edab50ab5a AP_AHRS: convert example from .pde to .cpp 2015-06-01 16:58:10 +10:00
Andrew Tridgell
0cfdb9af8a AP_ADC: convert example from .pde to .cpp 2015-06-01 16:58:10 +10:00
Andrew Tridgell
a62c450f86 AC_PID: convert example from .pde to .cpp 2015-06-01 16:58:10 +10:00
Andrew Tridgell
2b828a794e AP_Math: fixed example build 2015-06-01 16:36:54 +10:00
Andrew Tridgell
04ba5fa0bd AP_AHRS: pass EKF into constructor
this makes it possible for var_info in vehicle code to be in text
segment
2015-06-01 16:16:24 +10:00
Andrew Tridgell
f50ee4c44c GCS_MAVLink: all vehicles now use functors 2015-06-01 15:18:33 +10:00
Andrew Tridgell
9379e79489 DataFlash: all vehicles now use functors 2015-06-01 15:18:32 +10:00
Andrew Tridgell
f24e69f4a0 AP_Vehicle: all vehicles now use functors 2015-06-01 15:18:32 +10:00
Andrew Tridgell
dd691ae75c AP_Scheduler: all vehicles now use functors 2015-06-01 15:18:31 +10:00
Andrew Tridgell
ec2d429513 AP_Mission: all vehicles now use functors 2015-06-01 15:18:31 +10:00
Andrew Tridgell
bd5a58e4c4 AP_Menu: all vehicles now use functors 2015-06-01 15:18:31 +10:00
Andrew Tridgell
4dd47ead0e AP_HAL: removed old fastdelegate code 2015-06-01 15:18:30 +10:00
Andrew Tridgell
9ed0ee12fb AP_Vehicle: all vehicle types now use functors 2015-06-01 15:06:31 +10:00
Andrew Tridgell
96737a3982 SITL: fixed yaw wrap in simulated AntennaTracker 2015-06-01 14:08:45 +10:00
Andrew Tridgell
d57eca9de8 HAL_SITL: enable simulated antenna tracker 2015-06-01 12:53:50 +10:00
Andrew Tridgell
edb54cabb5 SITL: added simulated antenna tracker 2015-06-01 12:53:30 +10:00
Andrew Tridgell
14bdfe2889 SITL: started to use C++11 variable initialisation 2015-06-01 08:04:51 +10:00
Andrew Tridgell
b541bfb739 SITL: fixed build warnings 2015-05-30 22:51:38 +10:00
Andrew Tridgell
d5da9fcca6 AP_NavEKF: fixed build warnings 2015-05-30 22:51:30 +10:00
Andrew Tridgell
6a2c585632 AP_InertialSensor: fixed build warnings 2015-05-30 22:51:19 +10:00
Andrew Tridgell
ac3fc2f373 AP_HAL: fixed build warnings 2015-05-30 22:51:09 +10:00
Andrew Tridgell
084521243e AP_GPS: fixed some build warnings 2015-05-30 22:51:00 +10:00
Andrew Tridgell
249b339e6c HAL_SITL: fixed a build warning 2015-05-30 22:16:37 +10:00
Andrew Tridgell
73445fdae9 DataFlash: added error checking and fixed a warning 2015-05-30 22:16:22 +10:00
Andrew Tridgell
1088e72fda AP_Vehicle: make copter use functors 2015-05-30 15:21:22 +09:00
Robert Lefebvre
1424b17a83 AP_Motors_Heli: Change default RSC_SETPOINT to 700 2015-05-29 17:46:25 +09:00
Robert Lefebvre
4da54783fd AC_AttitudeControl_Heli: Semantic Change. Motor Runup to Rotor Runup. 2015-05-29 17:46:23 +09:00
Robert Lefebvre
d24664ccf9 AP_MotorsHeli: Semantic change. Motor Runup to Rotor Runup 2015-05-29 17:46:18 +09:00
Robert Lefebvre
65ca09600c AP_Motors: Heli eliminate _dt member and fix rsc_runup calculation 2015-05-29 17:46:09 +09:00
Robert Lefebvre
18bac524a3 Copter: TradHeli, change Rate FF LPF to 10Hz 2015-05-29 17:46:05 +09:00
Andrew Tridgell
f39063e023 DataFlash: don't do PID logging on APM2 2015-05-29 16:32:05 +10:00
Randy Mackay
19b021f729 RCMap: added RebootRequired param description 2015-05-28 19:32:38 +09:00
svefro
b02bbcd289 RCMap: added Reboot required to rcmap parameter descriptions
Added Reboot required to rcmap throttle, yaw, pitch, roll
2015-05-28 19:32:20 +09:00
Andrew Tridgell
b6eba0842a DataFlash: fixed CAM message format 2015-05-27 22:10:39 +10:00
Andrew Tridgell
00ca493860 AP_AHRS: prevent a floating exception in update_trig 2015-05-27 22:10:39 +10:00
Randy Mackay
b121d83beb RC_Channel: add EPM, LandingGear to FUNCTION param description 2015-05-27 18:05:01 +09:00
Andrew Tridgell
8454246fae AP_Param: make it safe to change the type of a parameter
if the type is changed then the value will revert to its default value
2015-05-27 15:29:40 +10:00
Andrew Tridgell
95ff71940c DataFlash: fixed rebase errors 2015-05-27 14:28:50 +10:00
Andrew Tridgell
8f34ed5b76 DataFlash: added PIDA message
for logging Z accel PID in copter
2015-05-27 14:28:50 +10:00
Andrew Tridgell
a57889e3b0 GCS_MAVLink: re-generate headers 2015-05-27 14:28:49 +10:00
Andrew Tridgell
0ed7fda41d GCS_MAVLink: added ACCZ and STEER PID_TUNING axes 2015-05-27 14:28:49 +10:00
Andrew Tridgell
521dae1c65 AC_AttitudeControl: use set_desired_rate() on PID controllers
this sets them up for logging of PIDs
2015-05-27 14:28:49 +10:00
Andrew Tridgell
3ec8857fbc AC_PID: added set_desired_rate() interface
used to setup _pid_info for logging
2015-05-27 14:28:48 +10:00
Andrew Tridgell
6000bb0c32 AC_PID: log desired rate for VFF as well as AFF 2015-05-27 14:28:48 +10:00
Andrew Tridgell
b45ab52015 DataFlash: added desired rate to PID logging 2015-05-27 14:28:48 +10:00
Andrew Tridgell
86a3bca88c APM_Control: added FF parameters to roll and pitch controllers
these are much easier to tune with the new PID_TUNING messages
2015-05-27 14:28:47 +10:00
Robert Lefebvre
353879cd2b AC_AttitudeControl_Heli: Add Rate Accel FF to Yaw control 2015-05-27 14:28:47 +10:00
Robert Lefebvre
366f87c91c AC_HELI_PID: Add Acceleration FF method. 2015-05-27 14:28:47 +10:00
Robert Lefebvre
7ab628521e DataFlash: Add Acceleration Feedforward to PID_Info. 2015-05-27 14:28:47 +10:00
Robert Lefebvre
810b12a1ac AC_AttitudeControlHeli: Change Rate Yaw FF LPF from 5Hz to 10Hz. 2015-05-27 14:28:46 +10:00
Andrew Tridgell
e79a21d8c2 AC_PID: fill in desired rate for heli PID 2015-05-27 14:28:46 +10:00
Andrew Tridgell
d148c38f68 DataFlash: added desired rate to PID_Info 2015-05-27 14:28:45 +10:00
Andrew Tridgell
0fe04a93ce GCS_MAVLink: rebuilt headers 2015-05-27 14:28:45 +10:00
Andrew Tridgell
cc80fdf593 GCS_MAVLink: added PID_TUNING message 2015-05-27 14:28:45 +10:00
Andrew Tridgell
216a78a9f0 APM_Control: added get_pid_info() interface 2015-05-27 14:28:44 +10:00
Robert Lefebvre
23adf2773c AC_AttitudeControl: Remove To-Do comments for Attitude Rate logging. 2015-05-27 14:28:44 +10:00
Robert Lefebvre
967071ca62 AC_PID: Integrate PID Logging functionality. 2015-05-27 14:28:44 +10:00
Robert Lefebvre
753be18c17 DataFlash: Add PID Logging Method 2015-05-27 14:28:44 +10:00
Andrew Tridgell
d8df31c023 SITL: initialise a couple of variables to prevent a valgrind error 2015-05-27 11:54:18 +10:00
Andrew Tridgell
2a22ae5404 DataFlash: support 64 bit TimeUS log dumping 2015-05-27 11:54:18 +10:00
Andrew Tridgell
1400d0155c AP_Mount: fixed valgrind error with gimbal code 2015-05-27 11:54:17 +10:00