AndersonRayner
10e7d43007
AP_InertialSensor: Add output of all IMUs to example
2016-03-31 14:54:17 -03:00
Lucas De Marchi
a502c0924c
GCS_MAVLink: simplify sanity check
2016-03-30 01:32:45 -03:00
Francisco Ferreira
d3e149e5d7
GCS_MAVLink: ignore Clang out-of-range warning
...
warning: comparison of constant 4 with expression of type 'mavlink_channel_t' is always false [-Wtautological-constant-out-of-range-compare]
if (chan >= MAVLINK_COMM_NUM_BUFFERS) {
~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~
2016-03-30 01:32:45 -03:00
Marc MERLIN
5bcd1b02ef
RSSI channel is not limited to 5-8.
...
Fix doc per my request on https://github.com/ArduPilot/ardupilot/issues/3280
2016-03-29 08:16:42 -07:00
Tom Pittenger
6718241dad
cleanup comments
2016-03-29 05:32:28 -07:00
Andrew Tridgell
894e07a0bd
AP_Parachute: added CHUTE_DELAY_MS parameter
...
on fixed wing it may take quite some time for the propeller to stop
2016-03-29 05:48:40 +11:00
Andrew Tridgell
73a2c99d56
SITL: limit rotational rate to 2000dps
2016-03-26 14:23:05 +11:00
Andrew Tridgell
4d01cb1716
HAL_SITL: fixed SITL engine mul error
...
expression without get() was treated as int
2016-03-26 14:17:12 +11:00
Andrew Tridgell
b4c6a0e30e
AP_TECS: added logging of speed_weight and state flags
2016-03-26 08:41:09 +11:00
Andrew Tridgell
8ff932b61c
AP_TECS: allow underspeed to end faster
...
we now can exit an underspeed condition if we stay above min speed for
3 seconds and also reach 15% above min speed. This prevents a problem
with the thrust line causing downpitch leading to a crash due to too
much throttle
2016-03-26 07:44:22 +11:00
Andrew Tridgell
1ecfa6b487
RC_Channel: fixed example in SITL
2016-03-25 21:35:33 +11:00
Andrew Tridgell
5c92adddf9
HAL_SITL: allow examples to run under SITL
2016-03-25 21:35:16 +11:00
Andrew Tridgell
1e4fe7996e
HAL_Linux: update URL
2016-03-25 20:47:53 +11:00
Andrew Tridgell
9737050a23
HAL_FLYMAPLE: update URL
2016-03-25 20:47:44 +11:00
Andrew Tridgell
664d91802e
HAL_AVR: update URL
2016-03-25 20:47:35 +11:00
Andrew Tridgell
075dd49afe
DataFlash: added Log_Write_Rate()
...
needed for quadplane as well as copter so should be in common code
2016-03-25 12:13:58 +11:00
Andrew Tridgell
ab07781c66
APM_Control: raise default P and I gains, and set a lower limit on I for pitch
...
Too many users have very low I gains, which causes a lot of problems for TECS
2016-03-25 09:54:53 +11:00
Lucas De Marchi
46936767c1
AP_Compass: LSM303D: check for overruns in compass values
2016-03-23 17:50:38 -03:00
Lucas De Marchi
cf2d866d51
AP_Compass: LSM303D: used AP_HAL::Device interface
...
Initialization was also changed a little bit so we don't try to
initialize 25 times. We rather use the same methods as in the
AP_InertialSensor drivers.
Also move up the call to is_zero() in read_raw so we don't set
_mag_[x|y|z] in case of failure.
2016-03-23 17:50:38 -03:00
Lucas De Marchi
5164fbb81b
AP_Compass: LSM303D: cleanup driver
...
Make it similar to other compass drivers, including method names.
2016-03-23 17:50:38 -03:00
Lucas De Marchi
20a4a42cb3
AP_Compass: don't store raw and unfiltered fields
...
These are not used. The only place where raw fields are used are in the
compass calibrator and we don't need to store them.
Additionally remove duplicated documentation about the meaning of the
functions to avoid them getting out of sync.
2016-03-23 17:50:38 -03:00
Lucas De Marchi
e6059f5197
AP_Compass: rename files to follow other libraries
...
AP_Compass.h is the main header to be exported and AP_Compass.cpp its
implementation. There's no need for an additional header.
2016-03-23 17:50:38 -03:00
Lucas De Marchi
286697b844
AP_Compass: don't rebuild tree when single driver changes
...
Let the drivers be internal to the library so we don't need to rebuild
the entire tree when a single driver changes.
2016-03-23 17:50:38 -03:00
Lucas De Marchi
d3831dbb98
AP_Compass: AK8963: use AP_HAL::I2CDevice abstraction
...
We still need the BusDriver (in some places called SerialBus) interface
since this driver can also be used on an AuxiliaryBus and that has a
different interface.
2016-03-23 17:50:38 -03:00
Lucas De Marchi
41c1209169
AP_Compass: HMC5843: improve readability
...
- Capitalize and rename constants
- Make clear what gain is applied in calibration and what is the
"normal" gain
- Make the separation between HMC5883L and HMC5843 explicit when it
makes sense to improve readability
- Remove spurious delay in calibrate function
2016-03-23 17:50:38 -03:00
Lucas De Marchi
0291ad869b
AP_Compass: HMC5843: use AP_HAL::I2CDevice abstraction
...
We still need the BusDriver (in some places called SerialBus) interface
since this driver can also be used on an AuxiliaryBus and that has a
different interface.
Besides the usual conversion some more improvements:
- Use generic function to convert endianness
- Minor cleanups
- Reorder per-board ifdefs in compass instantiation: distinguish when
there's a default compass to when it should probe other compasses
2016-03-23 17:50:38 -03:00
Lucas De Marchi
57f8db5672
AP_HAL: sparse-endian: conditionally include byteswap header
...
This is not present in qurt.
2016-03-23 17:50:38 -03:00
Lucas De Marchi
c5dc54dac7
AP_HAL: utility: import sparse-endian header
2016-03-23 17:50:38 -03:00
Lucas De Marchi
0ed3a93142
AP_HAL: define compass locations for linux boards
2016-03-23 17:50:38 -03:00
ashwinvasudevan
e33812e1cb
AP_InertialSensor: added missing brackets
2016-03-23 17:46:41 +09:00
Lucas De Marchi
72b246e52c
AP_HAL_Linux: fix use of 0-length array
...
0-length arrays are supported in C but forbidden in C++. GCC allows it
but clang is more strict:
../../libraries/AP_HAL_Linux/SPIDriver.cpp:75:35: fatal error: no matching constructor for initialization of 'Linux::SPIDeviceDriver [0]'
SPIDeviceDriver SPIDeviceManager::_device[0];
^
../../libraries/AP_HAL_Linux/SPIDriver.h:20:7: note: candidate constructor (the implicit move constructor) not viable: requires 1 argument, but 0 were provided
class SPIDeviceDriver : public AP_HAL::SPIDeviceDriver {
^
../../libraries/AP_HAL_Linux/SPIDriver.h:20:7: note: candidate constructor (the implicit copy constructor) not viable: requires 1 argument, but 0 were provided
../../libraries/AP_HAL_Linux/SPIDriver.h:25:5: note: candidate constructor not viable: requires 9 arguments, but 0 were provided
SPIDeviceDriver(const char *name, uint16_t bus, uint16_t subdev, enum AP_HAL::SPIDeviceType type, uint8_t mode, uint8_t bitsPerWord, int16_t cs_pin, uint32_t lowspeed, uint32_t highspeed);
^
1 error generated.
2016-03-20 00:17:02 -03:00
Andrew Tridgell
da2a71a3de
AP_BoardConfig: raise uavcan startup delay to 2s
2016-03-19 21:18:05 +11:00
Lucas De Marchi
abbe419823
AP_Compass: fix mismatched tag
...
In file included from /home/lucas/p/dronecode/ardupilot/libraries/AP_Compass/Compass.h:6:
/home/lucas/p/dronecode/ardupilot/libraries/AP_Compass/CompassCalibrator.h:86:5: warning: struct 'param_t' was previously declared as a class [-Wmismatched-tags]
struct param_t _params;
^
/home/lucas/p/dronecode/ardupilot/libraries/AP_Compass/CompassCalibrator.h:44:11: note: previous use is here
class param_t {
^
/home/lucas/p/dronecode/ardupilot/libraries/AP_Compass/CompassCalibrator.h:86:5: note: did you mean class here?
struct param_t _params;
^~~~~~
2016-03-18 22:39:39 -03:00
Lucas De Marchi
d5d6a10e63
AP_Compass: LSM303D now is part of LSM9DS0
2016-03-18 21:51:37 -03:00
Lucas De Marchi
a671b7f5b2
AP_Compass: remove misleading message
...
Not having data ready during initialization is normal. Don't print error
message since it can mislead people to think the compass was not
initialized successfully.
2016-03-18 21:51:37 -03:00
raspilot
1d1d224c18
AP_InertialSensor: Enable dual IMU for raspilot
2016-03-18 21:51:37 -03:00
raspilot
9d787e44cc
AP_HAL_Linux: update spi table for raspilot
2016-03-18 21:51:37 -03:00
Lucas De Marchi
c5022ef5c9
AP_HAL: add names for LSM9DS0 on raspilot
2016-03-18 21:51:37 -03:00
Lucas De Marchi
f75c12f57c
AP_InertialSensor: LSM9DS0: change mode of drdy pins to input
2016-03-18 21:51:37 -03:00
raspilot
c83e4df002
AP_InertialSensor: LSM9DS0: Disable I2C at init to avoid SDA hanging by slave.
2016-03-18 21:51:37 -03:00
raspilot
557beb4bb1
AP_InertialSensor: LSM9DS0: Fixed wrong call to _register_read_xm()
2016-03-18 21:51:37 -03:00
Lucas De Marchi
c1623c21cc
AP_HAL_Linux: rename ToneAlarmDriver to follow other names
...
We don't add "Driver" to the name of the files anymore.
2016-03-18 21:51:37 -03:00
Lucas De Marchi
d52ee7c0a1
AP_HAL_Linux: ToneAlarmDriver_Raspilot: cleanup driver
...
- Fix coding style
- Remove unused variables and members
- Add virtual as needed and override where needed
2016-03-18 21:51:36 -03:00
Pritam Ghanghas
6de5b52974
AP_HAL_Linux: separate class for tone alarm driver
2016-03-18 21:51:36 -03:00
Michael Oborne
92106a944f
AP_GPS_UBLOX: add data injection support
2016-03-18 15:51:32 +11:00
Andrew Tridgell
eb89b5bbb6
AP_L1_Control: prevent possibly fly-away when passed waypoint in L1
...
if the top level controller doesn't consider a waypoint complete when
we are passed next_WP then it would keep flying away from the line
segment. This doesn't happen with the current master code, but we want
to ensure it is handled
2016-03-18 13:47:44 +11:00
Andrew Tridgell
7d92202db9
AP_Param: save flash space for parameter strings
...
now that we no longer need AVR support we can use nul terminated
strings for parameter names, saving a couple of k of flash space
2016-03-18 13:03:18 +11:00
Andrew Tridgell
692e042eac
AP_Arming: set AP_PARAM_NO_SHIFT
2016-03-18 12:33:45 +11:00
Andrew Tridgell
4deb01b8d5
RC_Channel: set AP_PARAM_NO_SHIFT
2016-03-18 12:33:34 +11:00
Andrew Tridgell
018c7425a4
AP_Param: added AP_PARAM_NO_SHIFT
...
used for cases where we know the shift is not needed
2016-03-18 12:33:16 +11:00
Andrew Tridgell
1d42b0281a
SITL: ADSB: fixed heading and fixed windows startup
2016-03-18 11:18:19 +11:00
Andrew Tridgell
71b6d3e33d
AP_Param: add in nested group offset in load for conversion
2016-03-18 10:04:56 +11:00
Randy Mackay
c15fa950c0
AP_Param: convert_old_parameter becomes public and accepts scaling
2016-03-18 10:04:55 +11:00
Andrew Tridgell
12067b27b3
AP_Param: cope with multi-level nesting and zero-idx
...
this copes properly with multi-level nesting of groups, and fixes an
issue with an idx of zero in nested groups
2016-03-18 10:04:55 +11:00
Lucas De Marchi
d8eb0d401d
AP_Compass: fix missing rename
...
cb8355c
(AP_HAL: fix compass define for bebop) renamed the constant in
AP_HAL but not in AP_Compass.
2016-03-17 11:49:38 -03:00
Lucas De Marchi
b3d26c5988
AP_Compass: remove trailing whitespaces in header
2016-03-17 02:57:05 -03:00
Lucas De Marchi
cb8355c315
AP_HAL: fix compass define for bebop
2016-03-17 02:55:51 -03:00
Lucas De Marchi
057822b51c
AP_InertialSensor: AuxiliaryBus: fix return value
...
We should return the number of bytes written/read, not 0 on success.
This number may be useful in some cases so return it.
While at it fix a simple wrong space in the header.
2016-03-17 02:55:39 -03:00
Lucas De Marchi
6a6175df1c
AP_HAL_Linux: move dirname to I2CDevice core
...
All entries would need the "devices/" prefix and it's more natural not
using it.
2016-03-17 02:55:31 -03:00
Peter Barker
a66da7be00
AP_Motors: correct parameter documenation
2016-03-17 16:10:10 +11:00
Don Gagne
cae7ea0d13
Add @Volatile, @ReadOnly support
2016-03-17 10:58:05 +11:00
Paul Riseborough
6d9ba8c527
AP_NavEKF2: Improve protection against ground based mag interference
...
Reset the mag field states and yaw earlier than the normal 5m height threshold if toilet bowling is detected.
2016-03-17 10:55:11 +11:00
Lucas De Marchi
08cc7b2472
RC_Channel: replace header guard with pragma once
2016-03-16 18:40:44 +11:00
Lucas De Marchi
96c30aea39
PID: replace header guard with pragma once
2016-03-16 18:40:44 +11:00
Lucas De Marchi
c2b5ad46b4
GCS_MAVLink: replace header guard with pragma once
2016-03-16 18:40:44 +11:00
Lucas De Marchi
96ad73d198
GCS_Console: replace header guard with pragma once
2016-03-16 18:40:44 +11:00
Lucas De Marchi
ec36e06c63
DataFlash: replace header guard with pragma once
2016-03-16 18:40:44 +11:00
Lucas De Marchi
80749af698
AP_Vehicle: replace header guard with pragma once
2016-03-16 18:40:44 +11:00
Lucas De Marchi
8fcf551505
AP_Terrain: replace header guard with pragma once
2016-03-16 18:40:44 +11:00
Lucas De Marchi
9271e97c0b
AP_TECS: replace header guard with pragma once
2016-03-16 18:40:43 +11:00
Lucas De Marchi
0d2f661a6c
AP_SpdHgtControl: replace header guard with pragma once
2016-03-16 18:40:43 +11:00
Lucas De Marchi
9c28730815
AP_ServoRelayEvents: replace header guard with pragma once
2016-03-16 18:40:43 +11:00
Lucas De Marchi
d82369b293
AP_SerialManager: replace header guard with pragma once
2016-03-16 18:40:43 +11:00
Lucas De Marchi
336e04ca60
AP_RSSI: replace header guard with pragma once
2016-03-16 18:40:43 +11:00
Lucas De Marchi
109f807260
AP_RPM: replace header guard with pragma once
2016-03-16 18:40:43 +11:00
Lucas De Marchi
0332cde374
AP_Relay: replace header guard with pragma once
2016-03-16 18:40:43 +11:00
Lucas De Marchi
41d5f4a3b1
AP_RCMapper: replace header guard with pragma once
2016-03-16 18:40:43 +11:00
Lucas De Marchi
f6712c8bc4
AP_RangeFinder: replace header guard with pragma once
2016-03-16 18:40:43 +11:00
Lucas De Marchi
f908dffbeb
AP_Rally: replace header guard with pragma once
2016-03-16 18:40:42 +11:00
Lucas De Marchi
b180f3a83f
AP_Parachute: replace header guard with pragma once
2016-03-16 18:40:42 +11:00
Lucas De Marchi
5518cb2b01
AP_Navigation: replace header guard with pragma once
2016-03-16 18:40:42 +11:00
Lucas De Marchi
bb0d96cedd
AP_NavEKF: replace header guard with pragma once
2016-03-16 18:40:42 +11:00
Lucas De Marchi
e40b87cd0e
AP_NavEKF2: replace header guard with pragma once
2016-03-16 18:40:42 +11:00
Lucas De Marchi
3a771bf0e3
AP_Mount: replace header guard with pragma once
2016-03-16 18:40:42 +11:00
Lucas De Marchi
7d9153feb8
AP_Motors: replace header guard with pragma once
2016-03-16 18:40:42 +11:00
Lucas De Marchi
d82e80c749
APM_OBC: replace header guard with pragma once
2016-03-16 18:40:42 +11:00
Lucas De Marchi
2790c16905
AP_Mission: replace header guard with pragma once
2016-03-16 18:40:42 +11:00
Lucas De Marchi
9c4f93244e
AP_Menu: replace header guard with pragma once
2016-03-16 18:40:42 +11:00
Lucas De Marchi
382b6f87fe
APM_Control: replace header guard with pragma once
2016-03-16 18:40:41 +11:00
Lucas De Marchi
b4a8a0b961
AP_Math: replace header guard with pragma once
2016-03-16 18:40:41 +11:00
Lucas De Marchi
83f11145d5
AP_LandingGear: replace header guard with pragma once
2016-03-16 18:40:41 +11:00
Lucas De Marchi
7ad0036a11
AP_L1_Control: replace header guard with pragma once
2016-03-16 18:40:41 +11:00
Lucas De Marchi
152f169b76
AP_IRLock: replace header guard with pragma once
2016-03-16 18:40:41 +11:00
Lucas De Marchi
79837c343f
AP_InertialNav: replace header guard with pragma once
2016-03-16 18:40:41 +11:00
Lucas De Marchi
44bc2eceb4
AP_HAL_VRBRAIN: replace header guard with pragma once
2016-03-16 18:40:41 +11:00
Lucas De Marchi
bcdc3336de
AP_HAL_SITL: replace header guard with pragma once
2016-03-16 18:40:41 +11:00
Lucas De Marchi
6f028502b0
AP_HAL_QURT: replace header guard with pragma once
2016-03-16 18:40:41 +11:00
Lucas De Marchi
28f67f0947
AP_HAL_PX4: replace header guard with pragma once
2016-03-16 18:40:41 +11:00
Lucas De Marchi
f7a983e525
AP_HAL_FLYMAPLE: replace header guard with pragma once
2016-03-16 18:40:40 +11:00
Lucas De Marchi
cd266fbf4f
AP_GPS: replace header guard with pragma once
2016-03-16 18:40:40 +11:00
Lucas De Marchi
761ed7ae03
AP_Frsky_Telem: replace header guard with pragma once
2016-03-16 18:40:40 +11:00
Lucas De Marchi
37d7a8214d
AP_EPM: replace header guard with pragma once
2016-03-16 18:40:40 +11:00
Lucas De Marchi
d721ad70eb
AP_Camera: replace header guard with pragma once
2016-03-16 18:40:40 +11:00
Lucas De Marchi
235d64b7b9
AP_BoardConfig: replace header guard with pragma once
2016-03-16 18:40:40 +11:00
Lucas De Marchi
39f39afa7b
AP_Arming: replace header guard with pragma once
2016-03-16 18:40:40 +11:00
Lucas De Marchi
ffe36afeb2
AP_Airspeed: replace header guard with pragma once
2016-03-16 18:40:40 +11:00
Lucas De Marchi
e0153faa85
AP_AHRS: replace header guard with pragma once
2016-03-16 18:40:40 +11:00
Lucas De Marchi
5047f2b6f8
AP_ADSB: replace header guard with pragma once
2016-03-16 18:40:39 +11:00
Lucas De Marchi
155fb6f600
AP_AccelCal: replace header guard with pragma once
2016-03-16 18:40:39 +11:00
Lucas De Marchi
3ae4c222e0
AC_WPNav: replace header guard with pragma once
2016-03-16 18:40:39 +11:00
Lucas De Marchi
65680c8b8d
AC_Sprayer: replace header guard with pragma once
2016-03-16 18:40:39 +11:00
Lucas De Marchi
4e9ca31cb9
AC_PrecLand: replace header guard with pragma once
2016-03-16 18:40:39 +11:00
Lucas De Marchi
f637a29ab6
AC_PID: replace header guard with pragma once
2016-03-16 18:40:39 +11:00
Lucas De Marchi
498693d0b8
AC_InputManager: replace header guard with pragma once
2016-03-16 18:40:39 +11:00
Lucas De Marchi
7dc3942ad4
AC_Fence: replace header guard with pragma once
2016-03-16 18:40:39 +11:00
Lucas De Marchi
f42484bcc5
AC_AttitudeControl: replace header guard with pragma once
2016-03-16 18:40:39 +11:00
Andrew Tridgell
ff04871fc5
AP_Param: fixed a reporting problem with AP_Vector3f
...
if we load an element other than the X element of a Vector3f via
MAVLink then the value reported back to the GCS would be at the wrong
offset in memory. This led to some very confusing results for users
2016-03-16 17:03:30 +11:00
Tom Pittenger
425c9bcd0b
AP_Arming: use AP_BATT_MONITOR_MAX_INSTANCES instead of fixed array size
2016-03-14 09:19:09 -07:00
Tom Pittenger
5872512d85
AP_Arming: added more info to battery arming failure
2016-03-14 09:16:14 -07:00
Michael du Breuil
21bdf32d33
AP_Arming: Add minimum voltage to arm
2016-03-14 09:06:57 -07:00
Gustavo Jose de Sousa
4613b68efb
AP_InertialSensor: waf: skip VibTest example
...
The code is currently broken.
2016-03-14 11:54:31 -03:00
Gustavo Jose de Sousa
6729475b25
AP_Math: fix eulers example for PX4
2016-03-14 11:54:31 -03:00
Gustavo Jose de Sousa
d9bb696fa3
AP_Math: avoid bias in rand_num() in eulers example
...
Use RAND_MAX to avoid bias.
2016-03-14 11:54:31 -03:00
Andrew Tridgell
b0ac6c26e0
SITL: support octaquad in quadplane sim
2016-03-13 10:12:14 +11:00
Andrew Tridgell
2a6e64e358
HAL_PX4: send all channels to px4io
...
this allows for 16 channel SBUS out
2016-03-13 10:03:56 +11:00
Jonathan Challinger
4bf3ec0e91
AP_HAL_PX4: implement RCOutput::read_last_sent
2016-03-10 13:56:27 -08:00
Jonathan Challinger
6663d30728
AP_HAL: add RCOutput::read_last_sent definition
2016-03-10 13:56:23 -08:00
Tom Pittenger
a85d4f2f4b
AP_TECS: reverse-thrust cleanup
...
- throttle slew rate was using % full range including the negative range (-100 to +100 instead of 0 to 100) which meant it was faster
- throttle integrator windup limit was higher than normal because it's a porportional to throttle max - min but that makes no sense when min is negative causing larger limits
2016-03-10 15:34:52 +11:00
Andrew Tridgell
36177526cf
AP_BoardConfig: allow setting of SBUS output frame rate
2016-03-10 15:28:46 +11:00
Lucas De Marchi
4467929692
AP_Notify: add class to turn LED off
...
On early versions of minlure an RGB LED was wrongly placed next to the
barometer, causing trouble on it.
Additionally depending on the LED intensity it may be a pain to leave it
turned on for boards supposed to be used for bench testing. This allows
to disable the LED by software so we don't have to remove it.
2016-03-09 20:46:06 -03:00
Gustavo Jose de Sousa
e5de4f2348
AP_Compass: AP_Compass_test: code enhancements
...
- Use panic() instead of looping forever.
- Readability improvement with the use of MAX() and MIN().
2016-03-09 10:12:14 -03:00
Gustavo Jose de Sousa
a61f9855d3
AP_Compass: AP_Compass_test: report multiple compasses
...
Report data from all available compasses, not just the primary one.
2016-03-09 10:12:10 -03:00
Gustavo Jose de Sousa
16acca865f
AP_Compass: AP_Compass_test: fix style
...
Used uncrustify and some manual changes.
2016-03-09 10:12:05 -03:00
Gustavo Jose de Sousa
0efbe8c80c
AP_Compass: allow calling calculate_heading() for different instances
2016-03-09 10:12:00 -03:00
Lucas De Marchi
6358876f58
AP_HAL: add missing MPU9250 name for BH
2016-03-07 14:50:14 -03:00
Lucas De Marchi
71eefdfd2c
AP_Compass: remove trailing whitespaces
2016-03-07 14:49:35 -03:00
Lucas De Marchi
a46ca4c810
AP_Compass: HMC5883: reorganize header
2016-03-07 14:49:35 -03:00
Holger Steinhaus
d2b6eb7700
AP_BoardConfig: wait for UAVCAN initialization complete signal
2016-03-05 09:32:13 +11:00
Holger Steinhaus
503e196546
AP_BoardConfig: allow to enable UAVCAN plug-and-play mode
2016-03-05 09:32:13 +11:00
Andrew Tridgell
d0b67ce007
AP_AHRS: allow for EKF without GPS on plane in VTOL modes
...
this allows for testing quadplanes indoors
2016-03-05 08:58:08 +11:00
Andrew Tridgell
5d5c398344
AP_BoardConfig: raise UAVCAN startup time
...
new version needs a longer time to start sensors
2016-03-04 14:57:16 +11:00
Lucas De Marchi
47be4b5868
AP_OpticalFlow: fix use of undefined variable
...
../../libraries/AP_OpticalFlow/AP_OpticalFlow_Onboard.cpp:86:5: warning: "FLOWONBOARD_DEBUG" is not defined [-Wundef]
#if FLOWONBOARD_DEBUG
^
2016-03-03 18:37:15 -03:00
Tom Pittenger
ff249788bf
Plane: add a default Navigation option as explained in the param docs
2016-03-03 09:16:26 -08:00
Paul Riseborough
1e8af3dea4
AP_Notify: Add tone sequence to alert user when throw detector is armed
...
Use a medium tempo ascending three tone sequence with sufficient gap to allow the throwing action to be completed without distraction.
2016-03-03 12:18:16 +09:00
Tom Pittenger
67e2db7975
AP_TECS: add TECS_LAND_PDAMP
...
// @Description: This is the damping gain for the pitch demand loop. Increase to add damping to correct for oscillations in speed and height. If set to 0 then TECS_PTCH_DAMP will be used instead.
2016-03-02 10:54:21 -08:00
Tom Pittenger
fcb802cccc
AP_TECS: add TECS_LAND_I_GAIN and TECS_TKOFF_I_GAIN
...
// more integral gain options for land
2016-03-02 10:54:20 -08:00
Tom Pittenger
a139789693
AP_TECS: add TECS_LAND_TDAMP for land damp
...
+ // @Description: This is the damping gain for the throttle demand loop during and auto-landing. Same as TECS_THR_DAMP but only in effect during an auto-land. Increase to add damping to correct for oscillations in speed and height. When set to 0 landing throttle damp is controlled by TECS_THR_DAMP.
2016-03-02 10:54:19 -08:00
Tom Pittenger
035f3b16a1
AP_BattMonitor: add new param BATT_WATT_MAX
...
Description: If battery wattage (voltage * current) exceeds this value then the system will reduce max throttle (THR_MAX and TKOFF_THR_MAX) to satisfy this limit. This helps limit high current to low C rated batteries regardless of battery voltage. The max throttle will slowly grow back to THR_MAX (or TKOFF_THR_MAX) if demanding the current max and under the watt max.
2016-03-02 10:14:25 -08:00
Tom Pittenger
278fb2e60d
AP_Math: add location sanity checker/fixer util
2016-03-02 08:48:26 -08:00
Tom Pittenger
1c513a99a0
AP_Mission: removed LOITER_TO_ALT heading requirement param field
...
- and increased loiter radius max size (8bit to 16bit), it will soon always have heading requirement along with all loiter cmds
2016-03-02 08:48:24 -08:00
Alexey Bulatov
3933ac2a63
AP_GPS: Added ERB to AP_GPS
2016-03-02 06:04:52 -08:00
Alexey Bulatov
7e2c822499
AP_GPS: Structure for detect ERB
2016-03-02 06:04:46 -08:00
Alexey Bulatov
97190c89d1
AP_GPS: ERB GPS driver
...
ERB - Emlid Reach Binary protocol.
That driver designed for communication between Reach
and ArduPilot.
Provided opportunities:
- Detection of the driver
- Parsing of input messages: status of transmitter
and navigation information.
- Inject GPS messages from base
2016-03-02 06:04:39 -08:00
Jonathan Challinger
e946e047e6
AC_AttitudeControl: add attitude_controller_run functions, call from input functions
2016-03-02 20:16:18 +09:00
Tom Pittenger
c0a6a94936
AP_IntertialNav: ensure we work on valid updated data
2016-03-02 10:53:07 +09:00
Paul Riseborough
38b3625ed8
AP_NavEKF2: Fix bug in initial alignment calculation
...
The bug caused the initial roll angle to be incorrect if the vehicle was powered up when inverted, causing long alignment times.
2016-03-02 09:10:09 +09:00
Paul Riseborough
2888bdd6d5
AP_NavEKF: Protect against possible div by 0
2016-03-01 10:08:47 -03:00
Paul Riseborough
7d6b926749
AP_NavEKF2: Improved magnetic heading fusion
...
Use an Euler yaw heading that switches between a 321 and 312 rotation
sequence to avoid areas of singularity. Using Euler yaw decouples the
observation from the roll and pitch states and prevents magnetic
disturbances from affecting roll and pitch via the magnetometer fusion
process.
2016-03-01 10:08:47 -03:00
Randy Mackay
e502e0fc2e
SoloGimbal: resolve compiler warning re float comparison
2016-03-01 21:51:43 +09:00
Randy Mackay
438769c8ae
SoloGimbal: resolve compiler warning re initialisation order
2016-03-01 21:51:41 +09:00
Paul Riseborough
bb74371c58
AP_NavEKF2: Do not use GPS height if GPS accuracy is poor
...
If we are using GPS height, revert back to using Baro height if the GPS accuracy is poor.
2016-03-01 15:13:13 +09:00
Tom Pittenger
b1ea82079e
AP_Rangefinder: compiler warning float to double on atof()
...
- this is horribly inefficient so better to change the parsing
2016-02-29 10:26:31 -08:00
Tom Pittenger
068374658c
AP_Mission: utilize radius for loiter commands
2016-02-29 06:43:19 -08:00
Will Sackfield
8b5fa9d23d
SITL: Initialise yaw_rate and pitch_rate
...
* Clang requires these variables to be initialized
2016-02-29 14:14:37 +11:00
Will Sackfield
6f43b7121c
DataFlash: Cast msg to uint8
...
* Clang requires this explicit cast
2016-02-29 14:14:37 +11:00
Will Sackfield
723e166c13
AP RPM: Initialise backend with _instance
...
* Unsure how this worked in the past
2016-02-29 14:14:37 +11:00
Will Sackfield
0a60d713af
AP HAL SITL: Use fully qualified SITL namespace
...
* using namespace SITL caused ambiguities due to
both SITL and HAL SITL using the same namespace
2016-02-29 14:14:37 +11:00
Will Sackfield
8c98eb2b84
APMControl: Cast type to uint8
...
* Clang requires that the type be explicitly cast
to uint8
2016-02-29 14:14:37 +11:00
Staroselskii Georgii
5b3627f83e
AP_Notify: made DiscreteRGBLed more generic
...
- made pins and polarity configurable
- got rid of all Navio specific code
2016-02-27 03:06:50 -03:00
Staroselskii Georgii
ef4e3aa333
AP_Notify: renamed Navio2Led to DiscreteRGBLed
2016-02-27 03:06:50 -03:00
Staroselskii Georgii
0bd7839b9f
AP_Notify: made Navio2LED a little easier to configure
...
- got rid of a lot of not needed defines
- allocated channels on init instead of accessing them every time
through the HAL reference
- simpliefied hw_set_rgb()
2016-02-27 03:06:50 -03:00
Staroselskii Georgii
da550e5e98
AP_Inertial_Sensor: do not rotate MPU9250 on Navio2
2016-02-27 03:06:50 -03:00
Staroselskii Georgii
f93e790717
AP_HAL_Linux: make Ublox work on the higher frequency
...
The lower speed was only valid for very old Navio's. All new boards ship
with the GPSs that support higher frequencies.
2016-02-27 03:06:50 -03:00
Staroselskii Georgii
a327a8779e
AP_HAL_Linux: added Navio2 support
2016-02-27 03:06:50 -03:00
Staroselskii Georgii
7187f26220
AP_HAL_Linux: use Raspberry Pi GPIO for Navio2
2016-02-27 03:06:50 -03:00
Staroselskii Georgii
6680baf777
AP_HAL_Linux: use MPU9250 for Navio2
2016-02-27 03:06:50 -03:00
Staroselskii Georgii
c9869e768a
AP_HAL_Linux: use Util_RPI for Navio2
2016-02-27 03:06:50 -03:00
Staroselskii Georgii
23a2cf45aa
AP_HAL_Linux: added RCInput for Navio2
2016-02-27 03:06:50 -03:00
Staroselskii Georgii
2ea69571ef
AP_Notify: disabled boardled for Navio
2016-02-27 03:06:50 -03:00
Staroselskii Georgii
3223802431
AP_Notify: enabled leds for Navio2
2016-02-27 03:06:50 -03:00
Alexey Bulatov
fc6351b929
AP_Notify: added Navio2LED driver
2016-02-27 03:06:50 -03:00
Staroselskii Georgii
a24e9df765
AP_HAL_Linux: added AnalogIn_Navio2
...
This is a shim driver around the temporarily interface that is exported via
sysfs entries.
2016-02-27 03:06:50 -03:00
Staroselskii Georgii
392165c6a2
AP_HAL: added Navio2 board definitions
2016-02-27 03:06:50 -03:00
Staroselskii Georgii
6172ed078e
GCS_Mavlink: send power status from all boards
2016-02-27 03:06:50 -03:00
dgrat
672acdc8ef
AP_Math: Created location.h header for location functions
...
Helps to order AP_Math functions by purpose.
2016-02-27 02:51:33 -03:00
Lucas De Marchi
7f685a12bd
AP_Math: remove trailing whitespaces and tabs
2016-02-27 02:51:33 -03:00
dgrat
5148e41c1a
AP_Math: Cleaned macro definitions
...
Moved Definitions into a separate header. Replaced PI with M_PI and
removed the M_PI_*_F macros.
2016-02-27 02:51:33 -03:00
dgrat
7c4c8ea579
AP_Math: Remove ROTATION_COMBINATION_SUPPORT
...
This function is not used.
2016-02-27 02:51:33 -03:00
Gustavo Jose de Sousa
6144226c51
AP_HAL: always define HAL_OS_SOCKETS
...
And avoid warnings.
2016-02-26 14:17:33 -03:00
AndersonRayner
c9d5c548a6
Corrects a bracket error for the LSM9DS0 IMU
...
Switches the probe of the accel and gyro so they boot correctly (was
failing the WHOAMI with a switched result)
2016-02-25 20:08:01 -03:00
Michael du Breuil
287a3367ad
AP_HAL_SITL: Force the simulated gps time to be on valid intervals for u-blox hardware
2016-02-26 09:57:03 +11:00
Daniel Frenzel
ead51a9d19
AP_Math: Removed useless "undef INLINE"
2016-02-25 02:10:39 -03:00
Daniel Frenzel
ef7cf7c4aa
AP_Math: Removed useless header
...
"float.h" does not exist. It is useless and wrong to include it.
2016-02-25 02:10:39 -03:00
Andrew Tridgell
04bac8a446
AP_GPS: removed duplicate dataflash write of ublox version
2016-02-24 14:26:57 +11:00
Andrew Tridgell
14bd4ba2c7
AP_GPS: removed console print for GPS type
...
it is now sent as a STATUSTEXT
2016-02-24 14:22:48 +11:00
Michael du Breuil
1426ff2732
AP_GPS: Broadcast what type of GPS is found and at what baud rate
2016-02-24 14:22:48 +11:00
Andrew Tridgell
fe3812c51b
GCS_MAVLink: re-worked text send in terms of ObjectArray
2016-02-24 09:18:06 +11:00
Andrew Tridgell
2120913ac2
AP_HAL: added ObjectArray template
...
this is a ring buffer that supports indexing for efficient handling of
queue peeking and manipulation
2016-02-24 09:18:06 +11:00
Tom Pittenger
9718ee23d1
AP_HAL: fix peekbytes casting
2016-02-24 09:18:06 +11:00
Tom Pittenger
54d2a263fe
GCS_MAVLink: create queue scheme for static statustext msgs
2016-02-24 09:18:05 +11:00
Tom Pittenger
faa4238370
SITL: fixed warning comparing signed vs unsigned
2016-02-23 10:32:48 -08:00
Andrew Tridgell
7fede90df3
HAL_PX4: work around a bus locking issue on Pixracer
...
Pixracer has FRAM on the same bus as the ms5611 and the FRAM ramtron
driver does not use the same locking mechanism as other px4 SPI
drivers. We need to disable interrupts during FRAM transfers to ensure
we don't get FRAM corruption
2016-02-23 16:34:06 +11:00
Andrew Tridgell
0a72c2bbd5
AP_Baro: prevent bad ground pressure from making a board unbootable
2016-02-23 16:34:06 +11:00
Andrew Tridgell
1df2512935
AP_HAL: added update() method for object ringbuffer
...
to support updating objects for GCS work Tom is doing
2016-02-23 16:34:06 +11:00
Tom Pittenger
1d528d552f
AP_HAL: rename RingBuffer.force() to RingBuffer.push_force()
2016-02-21 22:13:27 -08:00
Paul Riseborough
7459bfb96b
AP_NavEKF2: Eliminate simple compass fusion singularities near +-90 deg pitch
...
The use of yaw angle fusion during startup and ground operation causes problems with tail-sitter vehicle types.
Instead of observing an Euler yaw angle, we now observe the yaw angle obtained by projecting the measured magnetic field onto the the horizontal plain.
This avoids the singularities associated with the observation of Euler yaw angle.
2016-02-22 16:29:36 +11:00
Andrew Tridgell
4ff396dfa8
AP_HAL: added force() and peek() method for object ringbuffers
2016-02-22 12:34:32 +11:00
Andrew Tridgell
5080201be6
GCS_MAVLINK: added set_dataflash() method
2016-02-22 12:34:32 +11:00
Paul Riseborough
4aefe1caee
AP_NavEKF2: Fix sign error in magnetic heading innovation calculation
2016-02-20 08:55:48 +11:00
Tom Pittenger
7e4ae39b8e
AP_Arming: fixed GPS_CFG mask bug
2016-02-19 13:53:44 -08:00
Víctor Mayoral Vilches
9bb039accd
AP_HAL: PXFmini add HAL_BARO_MS5611_NAME
...
Peer coded with @LanderU.
2016-02-19 19:17:34 -02:00
Lucas De Marchi
0ccd2de12b
AP_AHRS: fix use of undefined macro
...
../../libraries/AP_AHRS/examples/AHRS_Test/AHRS_Test.cpp:63:5: warning: "WITH_GPS" is not defined [-Wundef]
#if WITH_GPS
^
g_gps was not even declared so remove it.
2016-02-19 12:35:20 -02:00
Lucas De Marchi
7d24b4d1ca
AP_Notify: add missing include to use board config
...
<command-line>:0:18: warning: "HAL_BOARD_LINUX" is not defined [-Wundef]
../../libraries/AP_Notify/Buzzer.h:20:5: note: in expansion of macro ‘CONFIG_HAL_BOARD’
#if CONFIG_HAL_BOARD == HAL_BOARD_VRBRAIN
^
In file included from ../../libraries/AP_Notify/Buzzer.cpp:18:0:
../../libraries/AP_Notify/Buzzer.h:20:25: warning: "HAL_BOARD_VRBRAIN" is not defined [-Wundef]
#if CONFIG_HAL_BOARD == HAL_BOARD_VRBRAIN
^
2016-02-19 12:35:20 -02:00
Lucas De Marchi
69f6a73c19
Global: fix missing renames for HAL_BOARD_SUBTYPE_LINUX_ERLEBOARD
...
Commit b87fd58
(AP_HAL: ERLEBOARD legacy support) renamed the define but
forgot some around.
2016-02-19 12:35:18 -02:00
Peter Barker
475a2040a1
AP_NavEKF2: avoid use of undefined #defines
...
Ensure EKF_DISABLE_INTERRUPTS is defined
Do not define MATH_CHECK_INDEXES, assume it is defined
2016-02-19 12:34:24 -02:00
Peter Barker
11760c33f6
AP_NavEKF: avoid use of undefined #defines
...
Ensure EKF_DISABLE_INTERRUPTS is defined
Do not define MATH_CHECK_INDEXES, assume it is defined
2016-02-19 12:34:24 -02:00
Peter Barker
80bc7a50d7
AP_Math: define MATH_CHECK_INDEXES
...
Wrapped in ifndefs so the top-level Makefile can override
Assume MATH_CHECK_INDEXES is always defined
2016-02-19 12:34:23 -02:00
Lucas De Marchi
3ace8b52de
AP_HAL_Linux: use AnalogIn_IIO for minlure
2016-02-19 11:55:31 -02:00
Lucas De Marchi
f865e085b1
AP_BattMonitor: add defaults for minlure
2016-02-19 11:55:31 -02:00
Lucas De Marchi
4e034cd2e1
AP_HAL_Linux: AnalogIn_IIO: add scale for minlure
2016-02-19 11:55:31 -02:00
Lucas De Marchi
f56a80cd80
AP_HAL_Linux: AnalogIn_IIO: return fixed board voltage
...
Return board voltage as 5V so we don't fail prearm checks.
2016-02-19 11:55:31 -02:00
Lucas De Marchi
d387deb2f5
PID: fix example using wrong type
...
pid.imax() has type int16_t
../../libraries/PID/examples/pid/pid.cpp:36:53: warning: format ‘%f’ expects argument of type ‘double’, but argument 6 has type ‘int’ [-Wformat=]
pid.kP(), pid.kI(), pid.kD(), pid.imax());
^
2016-02-19 11:51:49 -02:00
Lucas De Marchi
edd3e3c34a
Filter: silence warning about unused function
...
../../libraries/Filter/examples/Derivative/Derivative.cpp:16:14: warning: ‘float noise()’ defined but not used [-Wunused-function]
static float noise(void)
^
2016-02-19 11:51:49 -02:00
Lucas De Marchi
1f072c4353
AP_HAL: fix unused variable
...
../../libraries/AP_HAL/examples/UART_test/UART_test.cpp:13:28: warning: ‘uarts’ defined but not used [-Wunused-variable]
static AP_HAL::UARTDriver* uarts[] = {
^
2016-02-19 11:51:49 -02:00
Jonathan Challinger
c454631be8
AP_InertialSensor: work around gyro and accel errors on startup
2016-02-19 16:40:52 +09:00
Paul Riseborough
047e9fabaf
AP_NavEKF2: Fix bug in simple heading fusion
...
The innovation calculation should have been updated when the heading fusion maths was updated.
We now use a direct heading or yaw angle measurement in the derivation, not the difference between observed and published declination.
2016-02-19 15:35:11 +09:00
Lucas De Marchi
bf9cf74c38
StorageManager: replace header guard with pragma once
2016-02-18 14:52:35 -02:00
Lucas De Marchi
98904825cb
Filter: replace header guard with pragma once
2016-02-18 14:52:35 -02:00
Lucas De Marchi
f5437f30ac
AP_Scheduler: replace header guard with pragma once
2016-02-18 14:52:35 -02:00
Lucas De Marchi
008e3c9810
AP_OpticalFlow: replace header guard with pragma once
2016-02-18 14:52:35 -02:00
Lucas De Marchi
09d926fa11
AP_Notify: replace header guard with pragma once
2016-02-18 14:52:35 -02:00
Lucas De Marchi
705393b30c
AP_HAL_Linux: replace header guard with pragma once
2016-02-18 14:52:35 -02:00
Lucas De Marchi
dbf2aedf1e
AP_HAL: replace header guard with pragma once
2016-02-18 14:52:34 -02:00
Lucas De Marchi
2bed317c6c
AP_HAL_Empty: replace header guard with pragma once
2016-02-18 14:52:34 -02:00
Lucas De Marchi
1a71c169fe
AP_Compass: replace header guard with pragma once
2016-02-18 14:52:34 -02:00
Lucas De Marchi
246f940d01
AP_Buffer: replace header guard with pragma once
2016-02-18 14:52:34 -02:00
Lucas De Marchi
62f50aede7
AP_BattMonitor: replace header guard with pragma once
2016-02-18 14:52:34 -02:00
Lucas De Marchi
6623246cf5
AP_ADC: replace header guard with pragma once
2016-02-18 14:52:34 -02:00
Leonard Hall
49a4bde5d9
AC_AttControl: lower minimum accelerations for large copters
2016-02-18 20:49:13 +09:00
mirkix
8da58226ae
AP_HAL_Linux: Fix BBBmini IIO scaling
2016-02-18 00:00:07 -02:00
mirkix
d868fe4eff
AP_HAL: Remove unused GPIO leds for BBBmini
2016-02-17 23:41:24 -02:00
Paul Riseborough
d3c9a0aef1
AP_NavEKF: Limit heading innovations after the consistency check
2016-02-18 08:53:47 +09:00
Paul Riseborough
6a34e4c384
AP_NavEKF2: Fix bug in magnetic heading and declination fusion equations.
...
The derivation incorrectly used a tan instead of an atan function. This applies the corrected auto-code.
2016-02-18 08:53:45 +09:00
Paul Riseborough
59bf29198d
AP_NavEKF2: Remove unnecessary logic preventing constant position
...
This removes a legacy design concept that is no longer required in this filter implementation. Planes will not be armed without EKF aiding and the proposed copter throw mode also requires EKF aiding to be operating.
The other problem with interrupting fusion during the launch is it doesn't reduce the corrections, it just delays them as wen the launch completes, the EKF inertial position estimate is still moving still moved and the corrections are therefore just delayed by the short launch interval.
Thank you to OXINARF for picking up the inconsistency with the previous logic
2016-02-18 08:53:43 +09:00
Paul Riseborough
7e05646316
AP_NavEKF2: Improvements to non-GPS performance
...
Change to user adjustable fusion of constant position (as per legacy EKF) instead of constant velocity.
Enable user to specify use of 3-axis magnetometer fusion when operating without aiding.
Don't allow gyro scale factor learning without external aiding data as it can be unreliable
2016-02-18 08:53:41 +09:00
Tom Pittenger
a9c985bfb3
AP-Mount: compiler warning
...
ardupilot/libraries/AP_Mount/SoloGimbal_Parameters.cpp:193:107: warning: comparing floating point with == or != is unsafe [-Wfloat-equal]
2016-02-17 14:54:31 -08:00
Lucas De Marchi
10abec277d
AP_HAL: functor: use std::remove_reference
2016-02-16 19:49:09 -02:00
Lucas De Marchi
d80a0e47bc
AP_Common: missing: move definitions to standard headers
...
This way we don't create problems regarding which header to include: we
just include the normal/c++11 headers and everything works as it should.
2016-02-16 19:49:09 -02:00
Lucas De Marchi
75d58bcfb6
Global: rename HAVE_NULLPTR_T with HAVE_STD_NULLPTR_T
...
This makes for a more standard name for these overrides.
2016-02-16 19:49:09 -02:00
Andrew Tridgell
29100937bc
AP_Common: allow for nullptr_t but not std::move replacement
2016-02-16 19:49:09 -02:00