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
Andrew Tridgell
52e36908ff
AP_Common: fixed std::move() for qurt build
...
Thanks Lucas!
2016-02-16 19:49:09 -02:00
Lucas De Marchi
cc4504e613
AP_Airspeed: fix coding style
...
- replace tabs with spaces
- remove C-style void from function arguments
- use pragma once
- fix pointer alignement
- remove unused header: AP_Airspeed_I2C_PX4 - we actually use
AP_Airspeed_PX4
2016-02-16 19:49:09 -02:00
Lucas De Marchi
02a7fa5c2b
AP_InertialSensor: MPU9250: use AP_HAL::Device abstraction
...
This makes MPU9250 be almost the same as MPU6000 driver. Work has been
done here to make than similar so it's easier to spot the differences.
2016-02-16 19:49:09 -02:00
Lucas De Marchi
d2b267d026
AP_InertialSensor: LSM9DS0: use AP_HAL::SPIDevice abstraction
2016-02-16 19:49:09 -02:00
Lucas De Marchi
58f4624f8c
AP_InertialSensor: L3G4200D: use AP_HAL::I2CDevice abstraction
2016-02-16 19:49:09 -02:00
Lucas De Marchi
af846636e4
AP_InertialSensor: MPU60x0: use AP_HAL::Device abstraction
2016-02-16 19:49:09 -02:00
Lucas De Marchi
f1ade970a3
AP_Baro: MS5611: Use AP_HAL::Device abstraction
...
This allows to share almost all the I2C/SPI code and remove the
AP_Serial abstraction since that is now handled by AP_HAL itself.
2016-02-16 19:49:09 -02:00
Lucas De Marchi
b05954660a
AP_Baro: BMP085: use I2CDevice interface
2016-02-16 19:49:09 -02:00
Lucas De Marchi
3060c3da3c
AP_HAL_Linux: Add fake device to SPIDriver
...
This allows us to re-use SPIDevice from SPIDeviceDriver (the
to-become-SPIDeviceProperties) while the drivers are
converted. We create a fake device by calling the temporary
SPIDeviceManager::get_device() method passing the descriptor. The
transfer and assert logic is still using the old code.
Now we can interoperate SPIDeviceDriver with the ones based in
SPIDevice since they are going to use the same semaphore and bus.
2016-02-16 19:49:09 -02:00
Lucas De Marchi
61ef653181
AP_HAL_Linux: implement SPIDevice
...
The way this code is structured is a little bit different from the
SPIDriver implementation:
- We only open the bus once, no matter how many devices we have in it
- There's a single transfer() method which uses half-duplex mode
instead of full duplex. The reason is that for all cases in the
codebase we are using half-duplex transfers using the full-duplex
API, i.e. a single SPI msg with both tx and rx buffers. This is
cumbersome because the buffers need to be of the same size and the
receive buffer using an offset of the same length as the actux data
being written. This means the high level APIs need to copy buffers
around.
If later we have uses for a real full duplex case it's just a matter
of adding another transfer_fullduplex() method or something like
this.
- The methods are implemented in the SPIDevice class instead of having
proxy methods to SPIDeviceManager as is the case of SPIDriver
Also from now on we refer to the SPIDriver objects as "descriptors"
because they have the parameters of each device in the
SPIDeviceManager::devices[] table. When SPIDeviceDriver is completely
replaced we can rename them to SPIDeviceProperties.
2016-02-16 19:49:09 -02:00
Lucas De Marchi
0d1bb7aa84
AP_HAL_Linux: export number of SPI devices
...
Save in the manager the number of devices so it can be used in other
places like the SPIDevice implementation. This is a temporary storage
while we migrate to SPIDevice.
While at it use protected rather than private.
2016-02-16 19:49:09 -02:00
Lucas De Marchi
cb40444bf8
AP_HAL_Empty: implement SPIDevice
2016-02-16 19:49:09 -02:00
Lucas De Marchi
66f644c50d
AP_HAL: add interface for SPIDevice devices
...
In order to interoperate with SPIDeviceDriver this is re-using the same
SPIDeviceManager interface.
2016-02-16 19:49:09 -02:00
Andrew Tridgell
30ce8ad311
HAL_QURT: fixed for addition of i2c manager
2016-02-16 19:49:09 -02:00
Lucas De Marchi
00249dc8bb
AP_HAL_VRBRAIN: use empty I2CDevice
2016-02-16 19:49:09 -02:00
Lucas De Marchi
8de329fc81
AP_HAL_PX4: use empty I2CDevice
2016-02-16 19:49:09 -02:00
Lucas De Marchi
c3d8ba3ea5
AP_HAL_SITL: use empty I2CDevice
2016-02-16 19:49:09 -02:00
Lucas De Marchi
f22f4928dc
AP_HAL_FLYMAPLE: fix constructor after I2CDevice
2016-02-16 19:49:09 -02:00
Lucas De Marchi
e40785b002
AP_HAL_Linux: Add fake device to I2CDriver
...
This allows us to re-use I2CDevice from I2CDriver while the drivers are
converted. We create a fake device with addr = 0 for each I2CDriver but
we only use the register/unregister logic. The transfer logic still uses
the methods from I2CDriver in order to use the right address.
Now we can interoperate I2CDevice drivers with the ones base in
I2CDriver since they are going to use the same semaphore and bus.
The I2CDriver constructors were changed to re-use the logic in I2CDevice
(it uses a number rather than an string) and the semaphore doesn't live
outside anymore, its embedded in the fake I2CDevice, as well as the
bus's file descritor.
2016-02-16 19:49:09 -02:00
Lucas De Marchi
5194f7e5ce
AP_HAL_Linux: I2CDevice: method to read multiple times
2016-02-16 19:49:09 -02:00
Lucas De Marchi
c394de31a0
AP_HAL_Linux: register I2CManager instance
2016-02-16 19:49:09 -02:00
Lucas De Marchi
bc2f7f2783
AP_HAL_Linux: implement function to transfer data
...
This is a similar function to what we have in I2CDriver, but it can
receive a nullptr to recv or send. It will create 2 i2c_msg structs to
send and receive data to/from the I2C slave.
2016-02-16 19:49:08 -02:00
Lucas De Marchi
2fc534d18d
AP_HAL_Linux: implement methods to open the bus
...
These are very similar to their counterparts in I2CDriver. The changes
were:
- Don't use fixed buffer with PATH_MAX length: allocate the string
- Change the interface to use std::vector so we can simplify the
implementation
2016-02-16 19:49:08 -02:00
Lucas De Marchi
cd0e1dff82
AP_HAL_Linux: Add skeleton for I2CDevice
...
This adds the logic to maintain the I2CDevice's managed by I2CManager.
2016-02-16 19:49:08 -02:00
Lucas De Marchi
a117c22c34
AP_HAL_Empty: add I2CDevice
2016-02-16 19:49:08 -02:00
Lucas De Marchi
2250d9d768
AP_HAL: initialize I2C manager
...
Add I2CManager to AP_HAL's contructor.
2016-02-16 19:49:08 -02:00
Lucas De Marchi
f8e6c5b379
AP_HAL: add helper method to read registers
...
This just forwards to the transfer() method, avoiding the need in driver
code to have a similar method.
2016-02-16 19:49:08 -02:00
Lucas De Marchi
b4ff2d7595
AP_HAL: add helper method to write register
...
This just forwards to the transfer() method, avoiding the need in driver
code to have a similar method.
2016-02-16 19:49:08 -02:00
Lucas De Marchi
872b255384
AP_HAL: Add interface for I2CDevice
...
This is a new interface to replace I2CDriver in future, when all drivers
are converted.
2016-02-16 19:49:08 -02:00
Lucas De Marchi
0eb450d379
AP_HAL: Add interface for I2C/SPI devices
...
These interfaces are intended to abstract I2C and SPI devices for
drivers.
2016-02-16 19:49:08 -02:00
Lucas De Marchi
2e60e1b1f2
AP_HAL: utility: Add OwnPtr implementation
...
This is very similar to std::unique_ptr, but doesn't require including
the <memory> header which pulls lots of c++ headers and cause problems
with nuttx headers. It's header-only. It contains an explanation on what
it solves, how to use and unit tests.
2016-02-16 19:49:08 -02:00
Lucas De Marchi
e1ae79688d
AP_Common: add directory to add missing C/C++ symbols
...
Add a cstddef header to allow using std::nullptr_t with those toolchains
that don't provide it. The idea is to make these platforms to use our
wrapper header (see https://gcc.gnu.org/onlinedocs/cpp/Wrapper-Headers.html )
and then we add the missing bits to the header.
2016-02-16 19:49:08 -02:00
Julien Beraud
c2db6bfb9d
AP_Param: Fix warning
...
Cast to the original type to use get function.
Still a hack but better than casting a pointer to an object which
memory mapping we are not supposed to know
2016-02-15 15:48:35 -02:00
Tom Pittenger
786d14cd3c
AP_RangeFinder: For LightWareSerial, write 'd' to support more devices
2016-02-14 16:05:50 -08:00
Andrew Tridgell
b76aff2dcb
AP_Arming: allow unconfigured GPS in SITL arming checks
...
the SITL GPS does not implement the needed protocol negotiation
2016-02-15 07:49:19 +11:00
Lucas De Marchi
7debd14683
AP_HAL_Linux: Scheduler: remove unused _in_io_proc
2016-02-12 23:42:34 -02:00
Lucas De Marchi
fbb3bb2fd0
AP_HAL_Linux: Scheduler: remove unused _timer_event_missed
2016-02-12 23:42:34 -02:00
Lucas De Marchi
f39a6745d1
Global: remove unused _timer_pending from scheduler
2016-02-12 23:42:34 -02:00
Lucas De Marchi
0ad436c337
AP_HAL_Linux: Scheduler: bring back scheduler table
...
Use a scheduler table to list threads' properties in a single place.
2016-02-12 23:42:34 -02:00
Lucas De Marchi
a1b62b4984
AP_HAL_Linux: Scheduler: use PeriodicThread
...
Some tasks were not accounting for the time to execute the tasks. Now
that we are using the infra from PeriodicThread all of them are.
2016-02-12 23:42:34 -02:00
Lucas De Marchi
48e81c8589
AP_HAL_Linux: Thread: add PeriodicThread helper
...
This is a helper class to run a single periodic function like the ones
used in the scheduler.
2016-02-12 23:42:34 -02:00
Lucas De Marchi
860d5aaf84
AP_HAL_Linux: Scheduler: move rpcmem initialization to setup phase
...
This was the only piece remaining in the timer thread that was used only
to setup the thread.
2016-02-12 23:42:34 -02:00
Lucas De Marchi
0282ebb8ff
AP_HAL_Linux: add method to check caller same as thread
2016-02-12 23:42:34 -02:00
Lucas De Marchi
e3beef0f77
AP_HAL_Linux: Scheduler: remove unused parameter
2016-02-12 23:42:34 -02:00
Lucas De Marchi
2b61eaf9f2
Global: remove {begin,end}_atomic from scheduler
...
These are never used and largely not implemented.
2016-02-12 23:42:34 -02:00
Lucas De Marchi
9aa49cda93
Global: remove system_initializing() from scheduler
...
This is not used anymore.
2016-02-12 23:42:34 -02:00
Lucas De Marchi
9cf9fc152b
AP_HAL_Linux: use pthread's barrier instead of polling
...
Use pthread's barrier so we don't keep waking up threads with possibly
higher priority during initialization phase.
This also synchronizes all of them to a single point. With the previous
approach it was possible (but unlikely) that a thread hadn't reach the
synchronization point when main thread signalize "system initialized".
2016-02-12 23:42:34 -02:00
Lucas De Marchi
2b0e214168
AP_HAL_Linux: Scheduler: move synchronization to common method
2016-02-12 23:42:34 -02:00
Lucas De Marchi
66e6cd60d8
AP_HAL_Linux: Thread: allow to override run method
2016-02-12 23:42:34 -02:00
Lucas De Marchi
a183ff8d32
AP_HAL_Linux: Scheduler: use Thread abstraction
2016-02-12 23:42:34 -02:00
Lucas De Marchi
3e0a83ede9
AP_HAL_Linux: add Thread abstraction class
2016-02-12 23:42:34 -02:00
Lucas De Marchi
5e9b45ebc2
AP_HAL_Linux: Scheduler: make microsleep() public
...
This will be used outside of scheduler class.
2016-02-12 23:42:34 -02:00
Tom Pittenger
12fab6c59a
AP_GPS: save cfg only when needed
...
added GPS_SAVE_CFG param option 2
2016-02-12 15:33:33 -08:00
Tom Pittenger
18163bd01f
AP_GPS_UBLOX: save cfg only when needed
...
added GPS_SAVE_CFG param option 2
2016-02-12 15:33:18 -08:00
Michael du Breuil
55e64b3622
AP_GPS: u-blox: copy paste typo in a #else
2016-02-12 15:33:08 -08:00
Michael du Breuil
217a06322b
AP_GPS: u-blox: don't throw 5hz update warnings if no fix
...
5hz update warnings are only valid if you have a fix, without a fix it adds load
to the GPS without any benefit. Our _5hz time messages are depenend upon GPS fix
time which isn't available yet
2016-02-12 15:32:41 -08:00
Tom Pittenger
da01ceee53
AP_TECS: change order of update_speed() so it's not using the previous EAS_dem
...
bug reported by @NUAAFLY https://github.com/diydrones/ardupilot/issues/1547
2016-02-12 13:23:02 -08:00
Tom Pittenger
afe9f544e5
AP_TECS: remove incorrect comment about TECS running at 5Hz, it runs at 10Hz.
2016-02-12 13:04:11 -08:00
Tom Pittenger
b38e27cadc
AP_SpdHgtControl: 2/3 Land Sink Rate Change
2016-02-12 11:39:12 -08:00
Tom Pittenger
67ce22660e
AP_TECS: 1/3 new param TECS_LAND_SRC for Land Sink Rate Change
...
// @Description: When zero, the flare sink rate (TECS_LAND_SINK) is a fixed sink demand. With this enabled the flare sinkrate will increase/decrease the flare sink demand as you get further beyond the LAND waypoint. Has no effect before the waypoint. This value is added to TECS_LAND_SINK proportional to distance traveled after wp. With an increasing sink rate you can still land in a given distance if you're traveling too fast and cruise passed the land point. A positive value will force the plane to land sooner proportional to distance passed land point. A negative number will tell the plane to slowly climb allowing for a pitched-up stall landing. Recommend 0.2 as initial value.
2016-02-12 11:38:40 -08:00
Tom Pittenger
e40bba3d13
AP_TECS: removing mission_cmd in TECS and making it bool is_landing
...
this is reverse-thrust cleanup
2016-02-12 11:08:47 -08:00
Tom Pittenger
215ecb6b71
AP_SpdHgtControl: removing mission_cmd in TECS and making it bool is_landing
2016-02-12 10:59:35 -08:00
Lucas De Marchi
bac29be0b7
AP_Common: remove warnings from headers
...
Let the warning flag be added by the build system and not when/if the
header AP_Common.h is included. Both waf and make were already updated
to contain these warnings. Besides being in the wrong place, with
clang++ we actually can't add "-Wno-" definitions in build system
because we enable all of the in the header with -Wall.
2016-02-12 20:41:30 +11:00
Tom Pittenger
a0755a84e7
AP_TECS: change param TECS_LAND_SPDWGT default from +1 to -1
2016-02-12 20:36:18 +11:00
Michael du Breuil
726bf110cc
AP_GPS: update save_cfg description
...
Saving config is not expected to work on a LEA-6H based on user reports, so the parameter should warn of this
2016-02-12 00:37:05 -08:00
Michael du Breuil
18f55eccea
AP_Arming: Add GPS configuration checks to arming
2016-02-12 00:37:04 -08:00
Michael du Breuil
4251ee0e4b
AP_GPS: u-blox verify ublox settings
...
The ublox driver will now continuosly poll for the settings from the GPS and correct any that are found to be in correct.
This status is then reported to the arming library as an additional arming check, allowing the user to be sure that the
gps is correctly configured before using it. If a user has a GPS2 configured that is not present they will fail the arming
checks until after they have disabled the second GPS.
2 new parameters were introduced as well:
-GPS_AUTO_CONFIG: Will not request any configuration packets to attempt to change them. (If the packet is recieved then
a update will be sent to it, but in testing this scenario never occured. This is set to 1 or 0 to change the setting.
(Defaults to 1 enabling auto config)
-GPS_GNSS_MODE2: Behaves the same way as GPS_GNSS_MODE but only applies to the second GPS.
GPS drivers are now allowed 2 seconds of non responsiveness before being unloaded
2016-02-12 00:37:04 -08:00
Andrew Tridgell
a7079b730a
AP_GPS: GPVTG can give new velocity
2016-02-11 18:46:01 +11:00
Andrew Tridgell
4beb1748c5
AP_GPS: better handle corrupted NMEA sentences
...
when a NMEA sentence is corrupted we should discard it
completely. This change prevents us considering a set of sentences
that includes corrupted sentences from being seen as new data
2016-02-11 18:46:01 +11:00
Andrew Tridgell
cb60384dc4
AP_HAL_SITL: allow auto-baudrate detection in GPS driver in SITL
...
this is useful when testing a real GPS in SITL
2016-02-11 18:46:01 +11:00
Tom Pittenger
149cc7c5da
AP_TECS: increase range of TECS_LAND_PMAX to include negative
2016-02-10 22:18:08 -08:00
Tom Pittenger
f435c5ee50
AP_Baro: tolerate GND_ALT_OFFSET step inputs
...
large inputs make the EKF angry, this will allow the param update to slew over a few seconds
2016-02-08 21:13:58 -08:00
Andrew Tridgell
13c217c060
AP_TECS: make demanded airspeed during landing stages clearer
2016-02-09 14:18:02 +11:00
Tom Pittenger
5ba2bff85f
AP_TECS: Reverse Thrust
...
Reverse thrust for controlled landings, even with much steeper approach slopes. This is achieved by allowing throttle demand to go negative to maintain a target airspeed. A Pre-Flare stage was added, triggered by an altitude, to allow for a slower airspeed just before land. That lower airspeed can be near stall.
new params TECS_APPR_SMAX - sink rate max during approach
2016-02-09 14:18:02 +11:00
Tom Pittenger
19c7859d04
AP_SpdHgtControl: add mission item to AP_TECS
2016-02-09 14:18:02 +11:00
Tom Pittenger
96833a0b73
AP_Vehicle: new params for pre-flare
2016-02-09 14:18:02 +11:00
Tom Pittenger
5338a76a58
AP_TECS: add flight stage LAND_PREFLARE
2016-02-09 14:18:02 +11:00
Tom Pittenger
4bc30f6479
AP_SpdHgtControl: add new flight stage LAND_PREFLARE and reorder them all
2016-02-09 14:18:02 +11:00
Tom Pittenger
f20841f491
SITL: add reverse thrust to Plane Sim
2016-02-09 14:18:01 +11:00
Tom Pittenger
1f714ed75d
SITL: handle negative throttle
...
- negative throttle was causing negative offsets
2016-02-09 14:18:01 +11:00
Tom Pittenger
f695f37ca3
AP_HAL_SITL: handle negative throttle
...
- negative throttle was causing negative voltage offsets
2016-02-09 14:18:01 +11:00
Lucas De Marchi
b55294920b
AP_Compass: AK8963: remove logging on fail to get semaphore
...
This is the only driver doing this, using the system_initializing() from
scheduler to log selectively. Remove the check together with removal of
unused wrapper methods to semaphore.
2016-02-08 13:28:32 -02:00
Lucas De Marchi
27999b339d
AP_HAL_Linux: Scheduler: include cleanups
...
While at it also remove some wrong whitespaces.
2016-02-08 13:28:31 -02:00
Randy Mackay
adfa03ce69
PID: add parameter descriptions
...
These actually aren't referred to from anywhere but it makes this class more consistent with other PID classes
2016-02-08 20:42:35 +09:00
mirkix
d1babdb0fb
AP_OpticalFlow: Enable optical flow onboard for BBBMINI
2016-02-08 08:52:10 -02:00
mirkix
5b8de06beb
AP_HAL_Linux: Enable optical flow onboard for BBBMINI
2016-02-08 08:52:10 -02:00
mirkix
f777a25de8
AP_HAL: Enable optical flow onboard for BBBMINI
2016-02-08 08:52:10 -02:00
Andrew Tridgell
d820eeaec6
SITL: use AP_Motors conventions for multicopters
...
this makes it easier to add a simulated vehicle to match a
MotorsMatrix frame type
2016-02-08 10:58:56 +11:00
Andrew Tridgell
5efe98a814
SITL: allow quadplane simulator to simulate other frame types
2016-02-08 09:17:22 +11:00
Daniel Frenzel
b01406e671
AP_Limits: Remove unused module
2016-02-04 09:43:29 +09:00
Lucas De Marchi
2296139516
AP_HAL_Linux: remove unused constant
2016-02-01 14:18:51 -02:00
Lucas De Marchi
5ba20b1763
AP_Notify: sanitize includes
...
Due to the way the headers are organized changing a single change in
an AP_Notify driver would trigger a rebuild for most of the files in
the project. Time could be saved by using ccache (since most of the
things didn't change) but we can do better, i.e. re-organize the headers
so we don't have to re-build everything.
2016-02-01 14:18:51 -02:00
Lucas De Marchi
0e09975fa6
AP_HAL_SITL: fix typo
2016-02-01 14:18:51 -02:00
Lucas De Marchi
21b2d5d34c
AP_HAL_Linux: AnalogIn_Raspilot: rename classes to follow other names
2016-02-01 14:18:51 -02:00
Lucas De Marchi
87e7704b1c
AP_HAL_Linux: ADS1115: rename classes to follow other names
...
While at it, remove some dead/commented-out code.
2016-02-01 14:18:51 -02:00
Lucas De Marchi
4562c0cffc
AP_ADC: ADS1115: coding style fixes
...
- Clean trailing whitespaces
- Fix switch
- Use pragma once
2016-02-01 14:18:51 -02:00
Lucas De Marchi
c1d19fa4dc
AP_InertialSensor: LSM9DS0: sanitize whitespaces
2016-02-01 14:18:51 -02:00
Lucas De Marchi
9c6bd38e91
AP_InertialSensor: sanitize includes
...
Due to the way the headers are organized changing a single change in an
inertial sensor driver would trigger a rebuild for most of the files in
the project. Time could be saved by using ccache (since most of the
things didn't change) but we can do better, i.e. re-organize the headers
so we don't have to re-build everything.
With this patch only AP_InertialSensor/AP_InertialSensor.h is exposed to
most users. There are some corner cases to integrate with some example
code, but most of the places now depend only on this header and this
header doesn't depend on the specific backends.
Now changing a single header, e.g. AP_InertialSensor_L3G4200D.h triggers
a rebuild only of these files:
$ waf copter
'copter' finished successfully (0.000s)
Waf: Entering directory `/home/lucas/p/dronecode/ardupilot/build/minlure'
[ 80/370] Compiling libraries/AP_InertialSensor/AP_InertialSensor.cpp
[ 84/370] Compiling libraries/AP_InertialSensor/AP_InertialSensor_L3G4200D.cpp
[310/370] Linking build/minlure/ArduCopter/libArduCopter_libs.a
[370/370] Linking build/minlure/bin/arducopter
Waf: Leaving directory `/home/lucas/p/dronecode/ardupilot/build/minlure'
2016-02-01 14:18:51 -02:00
Lucas De Marchi
1ca03006ad
AP_InertialSensor: MPU9150: remove driver
...
This is not used by any board and has a lot of commented out code. For
example, the compass is not enabled. The comment in the beginning of
the driver says it should serve as an example, but we should rather use
a working driver as an example. If this was at least a bit simpler and
that worked in the past we could refactor it to the new I2CDevice API.
This is not the case.
2016-02-01 14:18:51 -02:00
Lucas De Marchi
22f2a2ee09
AP_InertialSensor: L3G4200D: fix coding style
...
- remove trailing and leading whitespaces
- remove unecessary void from functions taking no parameters
2016-02-01 14:18:51 -02:00
Lucas De Marchi
637b53f4ce
AP_InertialSensor: L3G4200D: sanitize includes
2016-02-01 14:18:51 -02:00
Lucas De Marchi
5088dca072
AP_InertialSensor: MPU60x0: coding style fixes
2016-02-01 14:18:51 -02:00
Lucas De Marchi
ed653f8dbb
AP_InertialSensor: MPU60x0: add comment about 8G/16G
2016-02-01 14:18:51 -02:00
Lucas De Marchi
56e4de0bdd
AP_Baro: MS56XX: remove initialization to 0 from constructor
2016-02-01 14:18:50 -02:00
Lucas De Marchi
5bb2716081
AP_HAL_Linux: add name to SPI device table
...
A string name allows to more easily expand the table: the board is
responsible for the name and doesn't have to declare it as a enum or
define. It's also easier to add 2 sensors of the same type.
2016-02-01 14:18:50 -02:00
Lucas De Marchi
9d5fb97819
Global: rename enum SPIDevice to SPIDeviceType
...
Free the SPIDevice name so to have a consistent name for I2C/SPI device
classes.
2016-02-01 14:18:50 -02:00
Paul Riseborough
8630874ef3
AP_NavEKF2: Send correct data over mavlink status message
2016-02-01 10:02:22 +09:00
Paul Riseborough
1950008248
AP_NavEKF: Send correct data over mavlink status message
2016-02-01 10:02:20 +09:00
Peter Barker
f21774d3e8
AP_Vehicle: define vehicle type APM_BUILD_Replay
2016-01-30 12:52:51 -02:00
Peter Barker
f0c165f0e4
AP_HAL: ensure CONFIG_MAIN_WITHOUT_ARGC_ARGV is always defined
2016-01-30 12:48:51 -02:00
Peter Barker
ede7ffedfc
AP_GPS: correct #if from UBLOX_DEBUG to UBLOX_DEBUGGING
2016-01-30 12:48:39 -02:00
Peter Barker
afafcbc4f3
AP_BattMonitor: correct names of #defines
2016-01-30 12:48:19 -02:00
Peter Barker
09525e8568
AP_Mount: remove redundant include dependant on bad #define
2016-01-30 12:48:05 -02:00
Peter Barker
4548466701
DataFlash: correct use of #defines
...
HIL_BOARD_AVR_SITL was renamed
Move use of define to after include where it is defined
2016-01-30 12:46:25 -02:00
Andrew Tridgell
e62d6711c3
SITL: added very simple tiltrotor simulation
...
uses channel 9 to control tilt of rotors
2016-01-30 09:45:43 +11:00
Tom Pittenger
eeb77c3413
AP_TECS: updated TECS_LAND_SPDWGT param description
2016-01-30 07:31:10 +11:00
Andrew Tridgell
6f59c4ae53
DataFlash: added GPSAlt to CAM and TRIG log messages
...
useful for people with RTK GPS
2016-01-29 10:01:51 +11:00
Andrew Tridgell
dc998a2eaf
AP_Camera: make AP_Camera::control() return bool for picture trigger
...
this allows a picture to be logged if it is requested
2016-01-29 09:31:40 +11:00
Andrew Tridgell
2099f40d89
AP_Camera: added CAM_FEEDBACK_POL option
...
allows selection of trigger polarity
2016-01-29 09:19:44 +11:00
Andrew Tridgell
0be28999ea
AP_Camera: updated docs for timing of trigger pin
2016-01-29 09:19:44 +11:00
Andrew Tridgell
061ee5e4fd
AP_Camera: use timer for faster camera trigger pin detection
2016-01-29 09:19:43 +11:00
Jaime Machuca
1001e53140
DataFlash: added TRIGGER message to Logs
...
DataFlash.h: added support for Trigger MSG, supressed TAB separations
and file reorganized LogFile.cpp: included Trigger packet
2016-01-29 09:19:43 +11:00
Dario Lindo Andres
2f3510023d
AP_Camera: Support for camera feedback signal
...
Added _feedback_pin;
Added _camera_triggered;
Included FEEDBACK_PIN parameter and his default definition
2016-01-29 09:19:43 +11:00
mirkix
b5cb48ba6d
AP_BattMonitor: Add BBBMINI defaults
2016-01-28 13:44:44 -02:00
mirkix
c622ff1539
AP_HAL_Linux: Enable AnalogIN_IIO for BBBMINI
2016-01-28 13:44:43 -02:00
mirkix
fe404c8a5d
AP_HAL_Linux: AnalogIIO: Remove unused code, add scaling for BBBMINI, rework
2016-01-28 13:44:43 -02:00
Jonathan Challinger
9a09a86bb8
AP_Motors: add AP_MOTORS_DENSITY_COMP_DISABLED option
2016-01-27 09:18:09 +09:00
Andrew Tridgell
68cf1b6956
HAL_QURT: automatically find broadcast address for UDP network
2016-01-25 19:43:55 +11:00
Jonathan Challinger
ac3b5a4400
GCS_MAVLink: add messages to routing switch statement
2016-01-23 10:35:44 +09:00
Jonathan Challinger
5b834330cb
AP_Mount: merge SoloGimbal from solo master
2016-01-23 10:35:40 +09:00
Jonathan Challinger
eabede692e
AP_SmallEKF: move to AP_Mount/SoloGimbalEKF and merge solo version
2016-01-23 10:35:38 +09:00
Jonathan Challinger
02d8b28fa3
DataFlash: add GMB1, GMB2, GMB3
2016-01-23 10:35:37 +09:00
Jonathan Challinger
cbf2309023
AP_AHRS: add get_mag_field_NED and get_mag_field_correction
2016-01-23 10:35:36 +09:00
Jonathan Challinger
4c2e6af6ee
AP_InertialSensor: statically register with AP_AccelCal
2016-01-23 10:35:34 +09:00
Jonathan Challinger
49ad2d26c6
AP_AccelCal: make client list static
2016-01-23 10:35:33 +09:00
Randy Mackay
081beacb8d
AP_InertialSensor: replace sqrt with safe_sqrt to resolve compiler warning
...
Also add suppressing comment for missing break at end of switch
2016-01-23 10:10:17 +09:00
Gustavo Jose de Sousa
c2e3f05dbf
waf: ardupilotwaf: prefix build context methods with ap_
...
It helps to distinguish between things from waf and things from ardupilotwaf.
2016-01-22 20:10:29 -02:00
Gustavo Jose de Sousa
a2d2661765
waf: use methods from bld instead of ardupilotwaf for the remaining
2016-01-22 20:10:29 -02:00
Gustavo Jose de Sousa
3d22490397
waf: examples: use methods from bld instead of ardupilotwaf
2016-01-22 20:10:29 -02:00
mirkix
2d9b230be1
AP_RangeFinder: Load .data section for HC-SR04 PRU driver used by BBBMINI
...
This adds .data section loading to the HC-SR04 range finder driver used by
BBBMINI. The firmware is running inside a PRU. It is necessary to develop more
complex driver software inside the PRU.
2016-01-21 14:02:41 -02:00
Andrew Tridgell
5da6082d78
GCS_MAVLink: raise the waypoint receive timeout to 8s
...
this fixes a timeout in autotest
2016-01-20 17:23:36 +11:00
Andrew Tridgell
6baae735de
SITL: updated fixed wing model based on last_letter skywalker_2013
...
many thanks to Georacer for this code!
2016-01-20 17:23:36 +11:00
Andrew Tridgell
bc5210d6f2
AP_Arming: don't reporting IMU inconsistencies if IMU not enabled
2016-01-19 18:05:08 +11:00
Andrew Tridgell
24d8610013
AP_InertialSensor: use SIM_GYR_SCALE in SITL
2016-01-19 15:29:08 +11:00
Andrew Tridgell
a828db792e
SITL: added SIM_GYR_SCALE_{X,Y,Z}
...
allows testing of gyro scale factor learning in EKF2
2016-01-19 15:28:53 +11:00
mirkix
86e335b6b6
AP_HAL_Linux: Prevent buffer overflow
2016-01-19 00:14:48 -02:00
Víctor Mayoral Vilches
5d28fbfa1b
Compass: Erle-Brain 2 and PXFmini fix
2016-01-18 23:59:25 -02:00
Andrew Tridgell
640332113c
AP_L1_Control: calculate dt for crosstracking
2016-01-19 11:05:56 +11:00
Andrew Tridgell
4f9927beda
AP_TECS: added set_pitch_max_limit() API
2016-01-19 11:05:56 +11:00
Andrew Tridgell
acb4885989
AP_NavEKF2: use get_delta_angle_dt() API
2016-01-19 09:50:22 +11:00
Andrew Tridgell
ee453783eb
AP_InertialSensor: added get_delta_angle_dt() API
2016-01-19 09:50:21 +11:00
Lucas De Marchi
2d3a62eae3
AP_HAL_Linux: RCInput_RPI: revert PWM support
...
This reverts support for RCInput via PWM. This is causing trouble in
some RPI-based boards, receiving a SIGSEGV. Let's revert it for now and
retry this later.
This reverts commit 5629f38b2c
.
This reverts commit 51fd0b3d55
.
This reverts commit 79d56073f7
.
2016-01-18 20:07:42 -02:00
Lucas De Marchi
c8947c3e9c
AP_HAL_Linux: RCInput_RPI: provide signal information
...
Otherwise it's difficult to know what signal is causing the program to
exit.
2016-01-18 19:20:44 -02:00
Lucas De Marchi
5629f38b2c
AP_HAL_Linux: RCInput_RPI: fix use of uninitiliazed value
...
../../libraries/AP_HAL_Linux/RCInput_RPI.cpp: In member function ‘virtual void Linux::RCInput_RPI::_timer_tick()’:
../../libraries/AP_HAL_Linux/RCInput_RPI.cpp:489:127: warning: ‘x’ may be used uninitialized in this function [-Wmaybe-uninitialized]
counter = circle_buffer->bytes_available(curr_pointer, circle_buffer->get_offset(circle_buffer->_virt_pages, (uintptr_t)x));
^
2016-01-18 19:19:36 -02:00
Julien BERAUD
45d668df47
AP_Compass_AK8963: support for timesliced timers
...
fallback in case the current scheduler doesn't support it
2016-01-18 16:57:48 -02:00
Julien BERAUD
d15097f3fc
AP_Baro_MS5611: Support for timesliced timers
...
fallback if current scheduler doesn't support it
2016-01-18 16:57:48 -02:00
Julien BERAUD
4acc121bd6
AP_HAL_Linux: support for timesliced timers
...
In order for lower frequency timers not to be called at the same iteration
of the main timer loop. This improves scheduling.
2016-01-18 16:57:48 -02:00
Julien BERAUD
d5c4917bcd
AP_HAL: add default support for timesliced timers
...
To keep compatibility
2016-01-18 16:57:48 -02:00
Don Gagne
c13cf70163
GCS_MAVLink: system id output as severity INFO
2016-01-18 09:40:00 +09:00
Gustavo Jose de Sousa
d281067bcc
waf: make example binaries be placed in 'examples' dir
...
This commit makes examples' wscripts use ardupilotwaf.example() instead of
ardupilot.program().
2016-01-15 16:46:41 -02:00
Ricardo de Almeida Gonzaga
4c60dd5e44
AP_HAL_Linux: improve yuyv_to_grey() performance
...
Based on gbenchmark metrics.
Before:
Benchmark Time(ns) CPU(ns) Iterations
----------------------------------------------------
BM_YuyvToGrey/4k 3109 3114 233334
BM_YuyvToGrey/75k 55777 55857 12353
BM_YuyvToGrey/300k 231829 232227 3043
After:
Benchmark Time(ns) CPU(ns) Iterations
----------------------------------------------------
BM_YuyvToGrey/4k 1713 1716 411765
BM_YuyvToGrey/75k 32124 32152 21875
BM_YuyvToGrey/300k 128530 128753 5385
2016-01-15 16:43:52 -02:00
Ricardo de Almeida Gonzaga
3748760ead
AP_HAL_Linux: improve crop_8bpp() performance
...
Based on gbenchmark metrics.
Before:
Benchmark Time(ns) CPU(ns) Iterations
----------------------------------------------------
BM_Crop8bpp/64/64 3206 3197 198113
BM_Crop8bpp/240/240 38166 38181 18421
BM_Crop8bpp/640/480 193589 193317 3621
After:
Benchmark Time(ns) CPU(ns) Iterations
----------------------------------------------------
BM_Crop8bpp/64/64 2652 2657 232103
BM_Crop8bpp/240/240 33532 33506 20792
BM_Crop8bpp/640/480 187848 188201 3684
2016-01-15 16:43:52 -02:00
Ricardo de Almeida Gonzaga
210c90e784
AP_HAL_Linux: add benchmark for crop_8bpp() and yuyv_to_grey()
...
We had to check for board subtypes in the benchmark since VideoIn.cpp
does these checks.
2016-01-15 16:43:52 -02:00
Julien BERAUD
43307d95c8
OpticalFlow_Onboard: fix body rate calculation
...
The correct integral of the body rate is (rate + last_rate)/2*dt
and not rate * dt
2016-01-15 16:11:19 -02:00
Ricardo de Almeida Gonzaga
753f7d864a
AP_HAL_Linux: add a shrink by software option in OpticalFlow
...
This shrink must be used when the output camera sizes doesn't fit
the expected output.
We don't need to crop it even when the camera sizes aren't squared since
the shrink_8bpp() function shrinks a selected area.
2016-01-15 16:05:47 -02:00
Ricardo de Almeida Gonzaga
553d36c860
AP_HAL_Linux: add shrink_8bpp() to VideoIn
...
This function shrinks a selected area on a 8bpp image.
The focus in this function was the performance, so this may not be the
clearer or the most understandable way to write it. The performance
was measured using GoogleBenchmark[1].
[1] - https://github.com/google/benchmark.git
2016-01-15 16:05:47 -02:00
Lucas De Marchi
51fd0b3d55
AP_HAL_Linux: RCInput_RPI: fix coding style
...
- Remove trailing whitespaces
- Remove some uneeded comments
- Fix indentation
- Replace some breaks inside the loop by checking in the loop itself
2016-01-15 00:16:14 -02:00
Aaron Wang Shi
79d56073f7
AP_HAL_Linux: support PWM input for BH hat
2016-01-15 00:16:14 -02:00
Julien BERAUD
f449107563
AP_HAL_Linux: Add Perf Lttng
...
Support for perf api using lttng.
Some additional build tricks needed for bebop because lttng uses dl_open
which is not compatible with a static link on a different libc as used
on the bebop
2016-01-14 19:13:35 -02:00
bugobliterator
d7fcc7cd85
GCS_MAVLink: remove obsolete files from GCS_MAVLink dir
2016-01-15 07:28:47 +11:00
Paul Riseborough
287ebe8e6a
AP_NavEKF2: Fix bug in application of sensor bias corrections
...
Sensor bias corrections were being applied to the incoming IMU data using the wrong delta time.
This was what was driving the different tuning between plane and copter for gyro bias process noise so the same gyro bias process noise default tuning value can now be used for all platform types.
Sensor bias corrections were being applied a a second time to the output observer inertial data.
2016-01-13 08:05:39 +11:00
Paul Riseborough
20923da23a
AP_NavEKF2: Allow tuning of non-GPS mode
...
Eliminate the use of horizontal position states during non-aiding operation to make it easier to tune.
Explicitly set the horizontal position associated Kalman gains to zero and the coresponding covariance entries to zero after avery fusion operation.
Make the horizontal velocity observation noise used during non-aiding operation adjustable.
Use a fixed value of velocity noise during initial alignment so that the flight peformance can be tuned without affecting the initial alignment.
2016-01-13 08:05:39 +11:00
Paul Riseborough
23038e7243
AP_NavEKF2: Use measurement uncertainties to initialise covariance
2016-01-13 08:05:39 +11:00
Lucas De Marchi
a3cac102cd
AP_HAL_Linux: AnalogIn_Raspilot: rename misleading variables
...
We are not doing any dma here, it's just an SPI transaction. Name them
only rx/tx (although io_packet_tx/io_packet_rx could be another option).
This also zero-initialize the struct to keep valgrind happy about not
calling ioctl() with uninitialized variables.
2016-01-11 16:03:28 -02:00
Lucas De Marchi
0cff40ed7b
AP_HAL_Linux: AnalogIn_Raspilot: remove unused debug
2016-01-11 15:58:49 -02:00
Pritam Ghanghas
60636c1653
AP_HAL_Linux: rename RaspilotAnalogIn.cpp to AnalogIn_Raspilot.cpp
2016-01-11 15:56:20 -02:00
Lucas De Marchi
1fde473afc
AP_HAL_Linux: AnalogIn_IIO: normalize names
...
Use same name for file and classes, preferring AnalogIn_IIO over
IIOAnalogIn.
2016-01-11 15:44:24 -02:00
Lucas De Marchi
be2af0877c
AP_HAL_Linux: AnalogIn_IIO: formatting fixes
...
- remove trailing whitespaces
- use pragma 0 for header guard
2016-01-11 15:44:24 -02:00
Víctor Mayoral Vilches
8195631fac
HAL_Linux: AnalogIn_IIO update reopen_pin
2016-01-11 15:44:24 -02:00
Víctor Mayoral Vilches
b9c83da8c6
HAL_Linux: AnalogIn_IIO, replace reopen by select
...
A new select_pin method has been implemented and
set that changes solely the file descriptor (avoids
reopening the file every time we call set_pin).
2016-01-11 15:44:24 -02:00
Víctor Mayoral Vilches
da1b529415
HAL_Linux: AnalogIn_IIO add init_pins
...
initializes all the available analog
sources and stores the corresponding file descriptors
in fd_analog_sources.
2016-01-11 15:44:24 -02:00
Víctor Mayoral Vilches
546fbd1f25
HAL_Linux: mv AnalogIn_PXF to AnalogIn_IIO
...
Initial implementation used for the PXF moved for
a wider use. The implementation uses the Linux Industrial
I/O Subsystem (IIO) to get Analog Input.
2016-01-11 15:44:24 -02:00
Víctor Mayoral Vilches
4820e0b2c7
HAL_Linux: AnalogIn_PXF changes in AnalogIn
...
Recent changes in AP_HAL::AnalogIn have made the previous
code not valid anymore. This commit fixes the init()
method and adds common headers.
2016-01-11 15:44:24 -02:00
pkancir
c117b41188
AP_BattMonitor: add PXF default pins
2016-01-11 15:44:24 -02:00
pkancir
506db4eaf5
AP_HAL_Linux: add ADC support for PXF cape
2016-01-11 15:44:24 -02:00
Lucas De Marchi
0817fe6033
AP_HAL_Linux: default USE_FRAM to 0 for all boards
...
This disables FRAM usage in PXF and erleboard. The reason is it's
failing and not being used. Right now we get this on startup:
root@beaglebone:~# ./ArduCopter.elf
FRAM: Online
Storage: FRAM is getting reset to default values
Failed to read FRAM
Testing with valgrind also reveals some invalid memory reads. Let's
disable it for now to be common with other boards.
2016-01-11 15:44:24 -02:00
Lucas De Marchi
2a33b6bf33
AP_HAL_Linux: OpticalFlow: remove unneeded panic
...
There's already a panic() below.
2016-01-11 15:34:14 -02:00
Ricardo de Almeida Gonzaga
7adbccac9a
AP_HAL_Linux: add support for OpticalFlow to MinnowBoardMax
...
This commit adds support for OpticalFlow to MinnowBoardMax trying to
leave the OpticalFlow implementation as generic as it already is.
We had to add some format conversion and software crop to the cameras that
do not have this features.
2016-01-11 15:31:27 -02:00
Ricardo de Almeida Gonzaga
8aded390e7
AP_HAL_Linux: add yuyv_to_grey() and crop_8bpp() to VideoIn
...
Most cameras do not support NV12 or GREY formats, we are adding in this commit
a conversion from YUYV format, that seems pretty common in cameras, to GREY
format (since we do not use Cb and Cr data on OpticalFlow).
Also we are adding a software crop for 8bpp images, such as GREY format. For
the same reason, most cameras do not have support for overlaying (crop, resize
and so on).
These functions are being added in order to be used in the next commits,
where we will add support for OpticalFlow on MinnowBoardMax.
2016-01-11 15:31:27 -02:00
Ricardo de Almeida Gonzaga
27f909319e
AP_HAL_Linux: add get_pixel_formats() to VideoIn
...
This function is being added in order to be used in the next commits,
where we will add support for OpticalFlow on MinnowBoardMax.
2016-01-11 15:31:26 -02:00
Julien BERAUD
979184607d
OpticalFlow_Onboard: fix comment
...
Copy-paste mistake
2016-01-11 14:54:51 -02:00
Andrew Tridgell
097c2011e1
HAL_SITL: prevent abort on select with -1 fd
2016-01-10 21:26:35 +11:00
Andrew Tridgell
deb0b9c197
HAL_SITL: read in larger chunks
2016-01-10 17:43:01 +11:00
Andrew Tridgell
655f57ad01
HAL_SITL: cleanup class names
...
remove SITL prefix
2016-01-10 17:43:01 +11:00
Andrew Tridgell
492c733750
HAL_SITL: added RingBuffers to UART driver
...
makes for faster log download
2016-01-10 17:43:01 +11:00
Tom Pittenger
db8a2f7e8b
AP_TECS: changed land_spdwgt to be sliding scale
2016-01-09 13:25:02 +11:00
Tom Pittenger
89ce0b062b
AP_SpdHgtControl: added new path_propportion var
2016-01-09 13:25:02 +11:00
Andrew Tridgell
ef151944b8
GCS_MAVLink: regenerate headers
2016-01-09 07:38:54 +11:00
Andrew Tridgell
ad59cb9f5c
AP_Mission: support VTOL_TAKEOFF and VTOL_LAND
2016-01-09 07:38:53 +11:00
Andrew Tridgell
712a45eb22
GCS_MAVLink: added VTOL_TAKEOFF and VTOL_LAND
2016-01-09 07:38:53 +11:00
Andrew Tridgell
b3bd83b1c6
AP_TECS: no underspeed when in VTOL
2016-01-09 07:38:52 +11:00
Andrew Tridgell
4f70ca22c1
AP_SpdHgtControl: added VTOL flight stage
2016-01-09 07:38:52 +11:00
Andrew Tridgell
b187a0c6eb
AP_Motors: added quadplane frame type
...
this puts the motors on outputs 5 to 8, to leave the first 4 for the
plane
2016-01-09 07:38:51 +11:00
Andrew Tridgell
22e25cc792
HAL_SITL: added Flightaxis support
2016-01-09 07:38:51 +11:00
Andrew Tridgell
7a7bd0607f
SITL: first version of FlightAxis SITL support
2016-01-09 07:38:51 +11:00
Andrew Tridgell
76e3ae190a
GCS_MAVLink: partial merge of common.xml from upstream
2016-01-09 07:38:51 +11:00
Randy Mackay
b742ee9cfb
AP_Motors: fix example sketch
2016-01-08 18:36:47 +09:00
Michael du Breuil
8c9eafeb3c
AP_GPS: Fix param docs that had incorrect spaces
...
The spaces between values aren't stirpped by the autodoc tool that generates the XML files
2016-01-08 20:17:54 +11:00
Randy Mackay
8c7f36563c
AC_AttControl: bug fix to angle_boost reporting
...
Thanks to OXINARF for finding this
2016-01-08 10:48:59 +09:00
Michael Oborne
a42b286c01
AP_GPS_SBF: update logging based on vendor recommendation.
2016-01-08 10:47:05 +11:00
Andrew Tridgell
b54bb757df
AP_Param: fixed flymaple build
2016-01-08 10:33:45 +11:00
mirkix
1744bc0850
AP_Notify: Use display with bbbmini
2016-01-07 14:32:56 -02:00
mirkix
2457558624
AP_Notify: Add display support
2016-01-07 14:32:56 -02:00
mirkix
dee20a31f1
AP_Notify: Add gps_num_sats
2016-01-07 14:32:56 -02:00
Lucas De Marchi
a803cfd1e8
AP_HAL_Linux: RCInput: use GPIO5 for PPMSUM in bhat
2016-01-07 10:28:16 -02:00
Lucas De Marchi
321803919c
Revert "AP_HAL_Linux: support PWM input for BH hat"
...
This reverts commit 8cca0beba9
.
The PWM input using the RPI DMA is causing trouble with RPI boards using
PPMSUM. Let's revert it until the solution is found. We still leave the
ifdef in RCInput for BH hat.
2016-01-07 10:27:07 -02:00
Randy Mackay
c829ec0c2c
AC_PrecLand: add missing parameter description
...
Thanks to Thomas Stone for finding this
2016-01-07 17:35:18 +09:00
Jonathan Challinger
8fdbb36827
AP_BattMonitor: add is_powering_off
2016-01-07 15:14:07 +09:00
Randy Mackay
5ddd332277
AC_AttControl: add ANGLE_BOOST param
...
This allows disabling angle boost
2016-01-07 12:31:52 +09:00
Randy Mackay
6c458b07cb
MotorsHeli_RSC: resolve compiler warning re init order
2016-01-07 12:31:49 +09:00
Randy Mackay
f6b909d0a5
AHRS_NavEKF: resolve compiler warning re signed vs unsigned comparison
2016-01-07 12:31:47 +09:00
Tom Pittenger
70a45680ed
AP_TECS: fixed param desc for TECS_LAND_THR
2016-01-07 09:36:54 +11:00
Andrew Tridgell
415d800957
AP_Param: use get_custom_defaults_file()
2016-01-07 09:09:54 +11:00
Andrew Tridgell
b4cc3d9668
HAL_SITL: implement get_custom_defaults_file()
2016-01-07 09:09:40 +11:00
Andrew Tridgell
5f4bd10477
AP_HAL: added get_custom_defaults_file() to Util
2016-01-07 09:09:09 +11:00
Andrew Tridgell
f8b52c6a67
AP_AHRS: try to start EKF2 slightly before EKF2
...
this gives priority to EKF2 on memory
2016-01-07 08:34:32 +11:00
Andrew Tridgell
a6c39dee84
AP_NavEKF: don't allocate EKF1 unless it will leave 4k free memory
2016-01-07 08:33:33 +11:00
Andrew Tridgell
9188670e03
AP_TECS: added get_height_rate_demand() call
2016-01-06 22:47:38 +11:00
Andrew Tridgell
a07a8aece1
RC_Channel: added pwm_to_angle_dz_trim()
2016-01-06 22:47:21 +11:00
Andrew Tridgell
7c9ee9363b
AP_Motors: added rc_map_mask() function
2016-01-06 22:09:40 +11:00
Andrew Tridgell
dfccf8f713
AP_Motors: also wrap set_freq and enable_ch for motor mapping
2016-01-06 22:09:40 +11:00
Andrew Tridgell
77af00c5e1
AP_Motors: allow arbitrary mapping of channels on multirotors
...
using RCn_FUNCTION with motor1, motor2 etc
2016-01-06 22:09:40 +11:00
Andrew Tridgell
2777ff63ba
SITL: heli-sim: prevent ground rotation and reduced affect of ground impact
2016-01-06 21:59:56 +11:00
Paul Riseborough
e80fb8b3fa
AP_NavEKF2: Improve non-GPS in-flight attitude accuracy
...
The non-GPS mode was not being activated for small height gains - eg indoor flight.
The incorrect innovation consistency check was being applied to the synthetic velocity observations.
2016-01-06 20:49:21 +11:00
Andrew Tridgell
a3d781bf3f
GCS_MAVLink: fixed a valgrind error
2016-01-06 19:54:00 +11:00
Andrew Tridgell
0e8dbe92f0
GCS_MAVLink: fixed string overrun found by asan
2016-01-06 19:53:14 +11:00
Andrew Tridgell
519afc7a06
HAL_PX4: debug code for FRAM corruption
2016-01-06 19:16:16 +11:00
Andrew Tridgell
9941c91d36
RC_Channel: prevent a warning message for assigned RC channels
2016-01-06 19:16:12 +11:00
Andrew Tridgell
6c064ae8bd
HAL_SITL: flow control is enabled on SITL
...
faster parameter download
2016-01-06 19:16:08 +11:00
Andrew Tridgell
68a46bc1ff
GCS_MAVLink: use AP_Param::count_parameters()
2016-01-06 14:44:37 +11:00
Andrew Tridgell
93f0707679
AP_Param: added count_parameters() API
...
this auto-clears when an ENABLE parameter changes
2016-01-06 14:44:34 +11:00
Peter Barker
ff8008d81a
DataFlash: remove unused callbacks, unimplemented functions
...
Closes #3269
2016-01-05 17:08:07 -02:00
Víctor Mayoral Vilches
d73fc4c0b2
AP_Notify: Add PXFmini support
2016-01-05 15:35:56 -02:00
Víctor Mayoral Vilches
fa3dad928b
HAL_Linux: Add PXFmini to Linux_Class
2016-01-05 15:35:56 -02:00
Víctor Mayoral Vilches
e1de1f5f80
HAL_Linux: Util, add PXFmini support
2016-01-05 15:35:56 -02:00
Víctor Mayoral Vilches
e493bfcae4
AP_InertialSensor: add PXFmini support
2016-01-05 15:35:56 -02:00
Víctor Mayoral Vilches
a0b9181198
HAL_Linux: Scheduler add PXFmini support
2016-01-05 15:35:55 -02:00
Víctor Mayoral Vilches
1c49b086eb
HAL_Linux: SPIDriver add PXFmini support
2016-01-05 15:35:55 -02:00
Lucas De Marchi
e0d19dc87d
AP_HAL_Linux: RCInput_RPI: fix coding style
2016-01-05 15:35:34 -02:00
Víctor Mayoral Vilches
fdf490dad1
HAL_Linux: RCInput support for PXFmini
2016-01-05 15:34:50 -02:00
Lucas De Marchi
4e883e033f
AP_HAL_Linux: GPIO: remove ifdef comment
...
It just clutters the source code and review process when a new similar
board is added.
2016-01-05 15:34:49 -02:00
Víctor Mayoral Vilches
8ce8045033
HAL_Linux: GPIO, add support for PXFmini
2016-01-05 15:31:43 -02:00
Víctor Mayoral Vilches
0aee50b99e
HAL: Add PXFmini board
2016-01-05 15:31:43 -02:00
Andrew Tridgell
ea823a818c
AP_AHRS: enable EKF2 by default in AHRS
2016-01-05 16:42:01 +11:00
Andrew Tridgell
a0a4b698f6
AP_NavEKF: disable EKF1 by default
...
use EKF2 instead
2016-01-05 16:41:48 +11:00
Andrew Tridgell
c34626ec4e
AP_NavEKF2: automatically cut back EK2_IMU_MASK to suit number of IMUs
2016-01-05 16:40:43 +11:00
Andrew Tridgell
cc25575b3a
AP_Scheduler: prevent a startup crash in autotest for Rover
2016-01-05 16:31:06 +11:00
Andrew Tridgell
62b2a2117d
SITL: only report ground contact at most once per second
2016-01-05 09:47:58 +11:00
Andrew Tridgell
dd07ffce08
HAL_SITL: enable debug of rcoutput channel enable and frequency
2016-01-05 09:47:55 +11:00
Andrew Tridgell
526fb65dd1
HAL_PX4: fixed setting of rcout frequency on alt channels
2016-01-05 09:47:52 +11:00
Andrew Tridgell
224b2e2dda
AP_Param: allow group entries as duplicates
...
otherwise this breaks heli attitude control object
2016-01-05 07:50:23 +11:00
Andrew Tridgell
b6155d2cb6
RC_Channel: fixed output for k_motor*
2016-01-05 06:41:51 +11:00
Andrew Tridgell
1b682e3c8f
AP_Motors: swash servos are output only
2016-01-05 06:41:51 +11:00
Andrew Tridgell
238e912000
RC_Channel: allow find_channel() to be called early
...
and fix a bug!
2016-01-05 06:40:48 +11:00
Lucas De Marchi
47f25a0aa0
AP_HAL_Linux: remove _export_pins() method
...
The initial idea was to export all pins to be used at once, so we
created _export_pins() to take all of them and a wrapper method,
_export_pin() to export a single one. However we never export more than
one pin at once.
2016-01-04 15:12:49 -02:00
José Roberto de Souza
ba0ed84039
AP_HAL_Linux: Refactor GPIO_Sysfs
...
- Replaced PATH_MAX by the maximum stack memory it will use for GPIO
paths
- Added more information to error logs
- Removed the '/n' when writing to GPIO sysfs files
- Using Linux Util write_file() on _pinMode()
2016-01-04 15:12:49 -02:00
José Roberto de Souza
0c0d595b55
AP_HAL_Linux: Export GPIO pin inside of pinMode()
...
Make sure pinMode() method exports the pin before using it. Otherwise
the export method would need to be called, differently from other GPIO
implementations.
Since now export_pin and export_pins are called only internally, reduce
their visibility to protected.
2016-01-04 15:12:49 -02:00
Ricardo de Almeida Gonzaga
7033e4d8ed
AP_HAL_Linux: OpticalFlow swap crop and scale order
...
In order to be easier to understand the image manipulation for the ones
who read this part, since the order makes no difference in this stage.
2016-01-04 09:24:01 -02:00
Ricardo de Almeida Gonzaga
cbb313ec2c
AP_HAL_Linux: Fix OpticalFlow crop calculation
...
'left' value should be the lateral edges size
2016-01-04 09:24:01 -02:00
Andrew Tridgell
9123ef9f38
RC_Channel: added find_channel() and channel numbers
2016-01-04 17:06:57 +11:00
Andrew Tridgell
d31ba2b380
AP_Motors: added rc_write function
...
this is intended to make remapping motors and rescaling output easier
2016-01-04 16:56:54 +11:00
Andrew Tridgell
79c90d37f6
AP_Motors: apply HELI_RSC output type if available
2016-01-04 16:14:09 +11:00
Andrew Tridgell
6a58264c6b
RC_Channel: added set_aux_channel_default() API
...
this will allow for a default channel for aux functions. Also adds
heli_rsc and heli_tail_rsc functions
2016-01-04 16:14:09 +11:00
Randy Mackay
ccd3725f63
AP_Mount_Servo: remove out of date comment
2016-01-04 11:23:41 +09:00
Andrew Tridgell
e1f4814068
AP_Motors: only set output side of range for RSC
2016-01-04 11:23:38 +09:00
Andrew Tridgell
7cc53b6449
RC_Channel: setup only in or out part of channels for aux channels
...
this allows separate use of input and output
2016-01-04 11:23:36 +09:00
Andrew Tridgell
48b774bc63
RC_Channel: allow more complete separation of input and output of channels
...
this allows for the type and range of channels to be different on
input and output
2016-01-04 11:23:30 +09:00
Andrew Tridgell
0ef61b1637
AP_NavEKF: moved ENABLE param to front of list
...
and mark as FLAG_ENABLE. This removes the EKF_* parameters when
EKF_ENABLE is 0
2016-01-04 11:14:43 +11:00
Andrew Tridgell
ac64effc74
AP_Param: allow group entries in any order
...
this will make the ENABLE flag more useful
2016-01-04 11:14:43 +11:00
Andrew Tridgell
57f580fdfc
AP_Param: enable param debug by default
2016-01-04 11:14:43 +11:00
Andrew Tridgell
60af7a6087
AP_Math: removed matrix3 parameter support
2016-01-04 11:14:43 +11:00
Andrew Tridgell
1b8cf84801
AP_Param: allow for up to 512 top level vehicle parameters
...
this will make life a bit easier for copter
2016-01-04 11:14:43 +11:00
Andrew Tridgell
0831661b3c
AP_NavEKF2: mark EK2_ENABLE as an ENABLE parameter
2016-01-04 11:14:42 +11:00
Andrew Tridgell
29cb0dcf2c
AP_Param: enable variables to be marked as enable variables
...
used to hide unused subtrees of variables
2016-01-04 11:14:42 +11:00
Andrew Tridgell
37b2e23322
AP_Param: allow objects containing parameters to be dynamically loaded
...
this makes it possible for objects containing parameters to be
dynamically loaded.
2016-01-04 11:14:42 +11:00
Andrew Tridgell
2dd8a0af74
HAL_SITL: allow visualisation of quad motor speeds in flightgear
2016-01-04 11:09:27 +11:00
Andrew Tridgell
c3829dfb64
AP_Scheduler: allow for arbitrary loop rates
...
it turns out 300Hz is pretty useful as it allows for triple EKF on
pixhawk
2016-01-04 08:37:31 +11:00
Andrew Tridgell
27b43f4036
AC_PID: fixed example build warning
2016-01-04 08:22:17 +11:00
Andrew Tridgell
1450f33b51
HAL_SITL: support 16 RC input channels in SITL
2016-01-04 08:22:02 +11:00
Andrew Tridgell
0966398d8d
SITL: improved realism of fixed wing sim somewhat
...
still not good, but a bit better for manual flight
2016-01-04 08:03:46 +11:00
Andrew Tridgell
83c8505b3c
HAL_SITL: send state to flightgear viewer
2016-01-04 08:02:37 +11:00
Lucas De Marchi
f3ee7a9a85
AP_AccelCal: use union instead of reference
...
The current approach to access the same memory location by using a
reference is giving this warning:
../libraries/AP_AccelCal/AccelCalibrator.cpp: In constructor ‘AccelCalibrator::AccelCalibrator()’:
../libraries/AP_AccelCal/AccelCalibrator.cpp:34:64: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
_param_struct(*reinterpret_cast<struct param_t *>(&_param_array))
^
../libraries/AP_AccelCal/AccelCalibrator.cpp: In member function ‘void AccelCalibrator::run_fit(uint8_t, float&)’:
../libraries/AP_AccelCal/AccelCalibrator.cpp:336:79: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
struct param_t &fit_param(*reinterpret_cast<struct param_t *>(¶m_array));
^
Using a union allows us to get rid of the warning, make sure the sizes of the
different structs match and have a more elegant solution.
2016-01-02 10:04:16 +11:00
Tom Pittenger
841f34effa
AP_Arming: add param for accel error threshold
...
This is the threshold error to determine inconsistent accelerometers.
2016-01-02 10:01:46 +11:00
Andrew Tridgell
b2745bb545
AP_InertialSensor: we only need peak hold for negative X for now
2016-01-02 09:58:32 +11:00
Tom Pittenger
3aaf2b1d2b
AP_InertialSensor: add pos/neg peak detector
...
new functions that get a filtered min/max accel peaks on each axis with fixed 500ms timeout:
Vector3f get_accel_peak_hold_pos()
Vector3f get_accel_peak_hold_neg()
This allows slower mechanisms, such as is_flying, to detect accel spikes which would indicate ground or object impacts. Vibe is too filtered. Independent positive and negative peaks are available
2016-01-02 09:58:31 +11:00
Andrew Tridgell
b052959c61
GCS_MAVLink: re-generated headers
2016-01-02 08:44:49 +11:00
Jonathan Challinger
c2b4235662
GCS_MAVLink: merge mavlink-solo
2016-01-02 08:42:33 +11:00
Jonathan Challinger
41c881cc9e
GCS_MAVLink: temporarily remove GIMBAL_ and GOPRO_ messages pending solo sync
2016-01-02 08:42:33 +11:00
Jonathan Challinger
2a3fe35731
GCS_MAVLink: run xmlpretty.py on ardupilotmega.xml
2016-01-02 08:42:33 +11:00
Andrew Tridgell
22873ee687
SITL: reduced drag in plane model
2016-01-01 18:40:22 +11:00
Andrew Tridgell
619a4c0925
SITL: use common dynamics code for QuadPlane
2016-01-01 17:20:30 +11:00
Andrew Tridgell
33998a58ac
SITL: prevent aircraft going below ground level
2016-01-01 17:01:23 +11:00
Andrew Tridgell
d425965f6d
SITL: expose home yaw to FDMs
2016-01-01 17:00:57 +11:00
Andrew Tridgell
630d4410d4
SITL: removed debug code from QuadPlane
2016-01-01 15:48:56 +11:00
Andrew Tridgell
8a98ce427c
SITL: moved to common code for attitude/pos update
2016-01-01 15:12:33 +11:00
Andrew Tridgell
e6555aae6d
HAL_SITL: added quadplane model
2016-01-01 14:35:15 +11:00
Andrew Tridgell
d0896a1fb2
HAL_SITL: fixed init of channel 8 out in plane and rover
...
should be low
2016-01-01 14:35:15 +11:00
Andrew Tridgell
f2c8193f8b
SITL: added a QuadPlane model
2016-01-01 14:35:15 +11:00
Andrew Tridgell
6f9e9d761f
SITL: move calculations into multicopter frame class
...
this will enable a QuadPlane model
2016-01-01 14:35:15 +11:00
Andrew Tridgell
c6b6d7137d
HAL_SITL: added plane simulator
2016-01-01 12:41:06 +11:00
Andrew Tridgell
16e0a6d7b0
AP_Math: fixed angle between two vector3s
2016-01-01 12:41:05 +11:00
Andrew Tridgell
fcfd11ef53
SITL: very simple fixed wing simulator
...
useful for debugging
2016-01-01 12:41:05 +11:00
Randy Mackay
bea69521c8
AC_PrecLand: velocity PI controller into parent class
2015-12-31 15:30:33 +09:00
Andrew Tridgell
8e4586b4a2
AP_Param: allow for nested groups without subclassing
...
this allows for param tables containing other unrelated objects
2015-12-31 15:30:31 +09:00
Tom Pittenger
4e4c1831f0
AP_ADSB: added guided mode handling
2015-12-31 15:36:49 +11:00
Randy Mackay
4e9f82a0e7
Notify: fix parameter description
2015-12-31 11:33:02 +09:00
pepevalbe
0d5e59eaa3
AP_Notify: configurable RGB LED brightness
2015-12-31 11:32:59 +09:00
Lucas De Marchi
180359d6dd
AP_Math: fix unit test
...
For ROTATION_ROLL_90_PITCH_68_YAW_293 consider the angles as 90, 68.8
and 293.3 degrees to pre-calculate rotation. This matches the rotation
matrix used in code.
While at it, check not only the values are close enough but also the
length of the vector.
2015-12-30 20:22:28 -02:00
Lucas De Marchi
ba3325ffd3
AP_Math: rename rotation
...
The rotations are supposed to follow the name of the enum, in order. The
ROTATION_YAW_293_PITCH_68_ROLL_90 was added with the name of an
intrinsic 321 rotation, but the matrix is actually a 123 rotation,
following the other rotations already present.
Change the name to follow the other names.
2015-12-30 20:22:27 -02:00
Jonathan Challinger
bae16a61e2
AP_InertialSensor: fix segfault
2015-12-29 23:10:56 -08:00
Jonathan Challinger
83d5a6664a
AP_Math: minor changes to matrix_alg in response to review
2015-12-29 22:57:21 -08:00
Jonathan Challinger
0a3c2774e9
AP_InertialSensor: fixes in response to review
2015-12-29 22:55:04 -08:00
Jonathan Challinger
24e413c6af
AP_AccelCal: fixes in response to review
2015-12-29 22:55:04 -08:00
Jonathan Challinger
660d9e86d5
AP_AccelCal: basic sanity check on fit parameters
2015-12-29 11:00:20 -08:00
Jonathan Challinger
1482614a7d
AP_Arming: add accel cal requires reboot
2015-12-29 10:46:35 -08:00
Jonathan Challinger
137ace473d
AP_InertialSensor: add accel_cal_requires_reboot
2015-12-29 10:46:35 -08:00
Jonathan Challinger
f6a41a8936
AP_InertialSensor: ensure that accel calibration object isn't allocated more than once
2015-12-29 10:46:35 -08:00
bugobliterator
1a4b4fa85e
AP_Math: add inverse matrix test to check if inverse(mat)*mat = I
...
where I is an identity matrix (a matrix with diagonal elements = 1)
2015-12-29 10:46:35 -08:00
Jonathan Challinger
65915bbe71
StorageManager: fix example build
2015-12-29 10:46:35 -08:00
Jonathan Challinger
027e622a3c
RC_Channel: fix example build
2015-12-29 10:46:35 -08:00
Jonathan Challinger
2c0657f326
GCS_MAVLink: fix example build
2015-12-29 10:46:35 -08:00
Jonathan Challinger
b85631bec3
DataFlash: fix example build
2015-12-29 10:46:35 -08:00
Jonathan Challinger
94543d55bb
AP_Scheduler: fix example build
2015-12-29 10:46:35 -08:00
Jonathan Challinger
780d0de4bb
AP_RangeFinder: fix example build
2015-12-29 10:46:35 -08:00
Jonathan Challinger
b0de3957ea
AP_OpticalFlow: fix example build
2015-12-29 10:46:35 -08:00
Jonathan Challinger
99636b3e8b
AP_Notify: fix example build
2015-12-29 10:46:35 -08:00
Jonathan Challinger
62701448ca
AP_Mount: fix example build
2015-12-29 10:46:35 -08:00
Jonathan Challinger
b803907163
AP_Motors: fix example build
2015-12-29 10:46:35 -08:00
Jonathan Challinger
30a563044e
AP_Mission: fix example build
2015-12-29 10:46:35 -08:00
Jonathan Challinger
f376510524
AP_HAL_PX4: fix example build
2015-12-29 10:46:35 -08:00
Jonathan Challinger
ac152b564f
AP_HAL_FLYMAPLE: fix example build
2015-12-29 10:46:35 -08:00
Jonathan Challinger
d7639ce03a
AP_HAL: fix example build
2015-12-29 10:46:35 -08:00
Jonathan Challinger
04dc7130f5
AP_GPS: fix example build
2015-12-29 10:46:35 -08:00
Jonathan Challinger
9b5644fdb6
AP_Compass: fix example build
2015-12-29 10:46:35 -08:00
Jonathan Challinger
a3789542cd
AP_BattMonitor: fix example build
2015-12-29 10:46:35 -08:00
Jonathan Challinger
dcfc95fadf
AP_Baro: fix example build
2015-12-29 10:46:35 -08:00
Jonathan Challinger
a1c7b32387
AP_Airspeed: fix example build
2015-12-29 10:46:35 -08:00
Jonathan Challinger
5cb7331095
AP_AHRS: fix example build
2015-12-29 10:46:35 -08:00
Jonathan Challinger
9e6be648b9
AC_PID: fix example build
2015-12-29 10:46:35 -08:00
bugobliterator
fe62a049bd
AP_Math: implement LU decomposition based matrix inverse
...
Replaces previous matlab generated code, which was giving imprecise results
2015-12-29 10:46:34 -08:00
Siddharth Bharat Purohit
a0c3cbffee
AP_Math: add inverse matrix test example
...
fix example build
2015-12-29 10:46:34 -08:00
Siddharth Bharat Purohit
5af0cc8eaf
AP_Math: add inverse rotate example function
2015-12-29 10:46:34 -08:00
Jonathan Challinger
7ed8b3814f
AP_Math: add rotate_inverse to Vector3
2015-12-29 10:46:34 -08:00
Jonathan Challinger
492223cb84
AP_InertialSensor: support AP_AccelCal
2015-12-29 10:46:34 -08:00
bugobliterator
d24b5023f4
AP_AccelCal: Add separate lib for accel calibration
2015-12-29 10:46:34 -08:00
Andrew Tridgell
f70d9d26ba
HAL_QURT: fixed README formatting
2015-12-29 19:23:14 +11:00
Andrew Tridgell
70877ebd50
HAL_QURT: fixed open of new storage file
2015-12-29 19:20:51 +11:00
Andrew Tridgell
aae7dd952c
HAL_QURT: document command line options
2015-12-29 19:15:47 +11:00
Andrew Tridgell
f832f29bfb
HAL_QURT: allow cmdline to specify UART, RCin and RCout paths
2015-12-29 19:12:17 +11:00
Andrew Tridgell
dafc9b4c6b
AP_HAL: allow getopt_cpp on QURT
...
avoid using stderr
2015-12-29 19:10:46 +11:00
Andrew Tridgell
ea1e3f4928
HAL_QURT: pass argc and argv into main thread
2015-12-29 18:53:05 +11:00
Andrew Tridgell
bd2f548130
AP_HAL: allow argc and argc on QURT
2015-12-29 18:52:17 +11:00
Lucas De Marchi
97022a4161
AP_HAL: RingBuffer: fix macro expansion
...
Fix warning that reveals a real bug:
In file included from libraries/AP_HAL_Linux/UARTDriver.cpp:25:0:
libraries/AP_HAL_Linux/UARTDriver.cpp: In member function 'virtual bool Linux::UARTDriver::tx_pending()':
libraries/AP_HAL/utility/RingBuffer.h:21:35: warning: logical not is only applied to the left hand side of comparison [-Wlogical-not-parentheses]
#define BUF_EMPTY(buf) buf##_head == buf##_tail
^
libraries/AP_HAL_Linux/UARTDriver.cpp:355:13: note: in expansion of macro 'BUF_EMPTY'
return !BUF_EMPTY(_writebuf);
The problem is when there's a ! operator: without the parenthesis we would actually be doing
return !_write_buf_head == _write_buf_tail
which is not what we want.
2015-12-28 21:50:27 -02:00
Andrew Tridgell
fe8070bd51
DataFlash: move lock to protect just buffer IO
2015-12-29 09:10:28 +11:00
Lucas De Marchi
1a0f613a0f
AP_Curve: remove unused library
2015-12-28 10:23:23 -02:00
Lucas De Marchi
8d252955f5
AP_Motors: don't link unused AP_Curve library
2015-12-28 10:23:23 -02:00
Lucas De Marchi
326e74f64f
AP_Mission: don't link unused AP_Curve library
2015-12-28 10:23:23 -02:00
Lucas De Marchi
5d3a519277
APM_PI: remove unused library
2015-12-28 10:23:23 -02:00
Lucas De Marchi
8cee02cde7
AP_PerfMon: remove unused library
2015-12-28 10:23:23 -02:00
Jonathan Challinger
a2999ece54
AP_AHRS_NavEKF: add setTakeoffExpected, setTouchdownExpected
2015-12-28 13:51:24 +09:00
Andrew Tridgell
c90d7dd86e
AP_HAL: fixed vprintf segfault
2015-12-28 08:44:40 +11:00
Andrew Tridgell
fa2a39f6c6
HAL_QURT: small cleanups
...
thanks to Lucas for finding these
2015-12-28 06:42:11 +11:00
Julien BERAUD
e46f23f538
RCOutput_Bebop: Increase max_rpm on Bebop 2
...
Bebop 2 can go as high as 12200 rpm. Use get_hw_arm32 method to see
if we are on a bebop or bebop 2
2015-12-27 16:11:36 -02:00
Julien BERAUD
b6f51233db
AP_HAL_Linux: Make RPI get_hw method public
...
Valid also on Bebop
2015-12-27 16:11:36 -02:00
Julien BERAUD
cadef09542
AP_HAL_Linux: Fix comment and panic on Bebop
2015-12-27 16:11:36 -02:00
Lucas De Marchi
3a8bd7b829
AP_Progmem: remove unused library
2015-12-27 15:58:12 -02:00
Lucas De Marchi
a096703b06
Global: don't link with AP_Progmem
...
AP_Progmem is not used anymore.
2015-12-27 15:58:12 -02:00
Lucas De Marchi
52ef8c10a5
AP_Param: stop using Progmem.h
2015-12-27 15:58:12 -02:00
Lucas De Marchi
360855f109
StorageManager: stop using Progmem.h
2015-12-27 15:58:12 -02:00
Lucas De Marchi
5f26c951d8
GCS_MAVLink: stop using Progmem.h
2015-12-27 15:58:12 -02:00
Lucas De Marchi
5d07e5bdbf
DataFlash: stop using Progmem.h
2015-12-27 15:58:12 -02:00
Lucas De Marchi
eb9fd96d5c
AP_Scheduler: remove trailing whitespace
2015-12-27 15:58:12 -02:00
Lucas De Marchi
3375b6b01c
AP_Scheduler: stop using Progmem.h
2015-12-27 15:58:12 -02:00
Lucas De Marchi
25c289b74c
AP_Menu: stop using Progmem.h
2015-12-27 15:58:12 -02:00
Lucas De Marchi
502077d763
AP_Math: stop using Progmem.h
2015-12-27 15:58:12 -02:00
Lucas De Marchi
520b0384fd
AP_HAL: remove unused in_progmem flag to print_vprintf
2015-12-27 15:58:12 -02:00
Lucas De Marchi
8e0c125f56
AP_HAL: print_vprintf: follow coding style
...
- Use 4 spaces to indent
- Add braces to control statements
- Don't use tabs
2015-12-27 15:58:12 -02:00
Lucas De Marchi
c35730058a
AP_HAL: print_vprintf: stop using Progmem.h
...
Remove the unused support to data from progmem, including the unused %S
format specifier.
2015-12-27 15:58:12 -02:00
Lucas De Marchi
5bb4e3eda9
AP_GPS: stop using Progmem.h
...
Besides the trivial convertions, while reading
initblob_state[instance].blob we need to be sure to read only one byte
like we were before.
2015-12-27 15:58:12 -02:00
Lucas De Marchi
88319f52f7
AP_Declination: remove line continuation slashes
...
These are not necessary and only clutter the code.
2015-12-27 15:58:12 -02:00
Lucas De Marchi
3ae0082f52
AP_Declination: stop using Progmem.h
...
Since the headers were re-ordered we also had to add inttypes.h to
AP_Declination.h following a include-what-you-use approach.
2015-12-27 15:58:12 -02:00
Lucas De Marchi
cfb5bbeb9f
APM_Control: stop using Progmem.h
2015-12-27 15:58:12 -02:00
Lucas De Marchi
29ed01189d
AP_HAL: ftoa_engine: replace tabs with spaces
2015-12-27 15:58:12 -02:00