Commit Graph

11768 Commits

Author SHA1 Message Date
Randy Mackay
e41f798ba1 AP_Motors: remove unused set_stabilizing 2016-05-07 10:08:36 +09:00
Andrew Tridgell
ab0b76764f RC_Channel: added set_servo_failsafe_pwm() 2016-05-07 07:25:27 +10:00
Andrew Tridgell
46f257fd9b DataFlash: convert Log_Write() to use a linked list
this saves some memory and means we don't need to know how many we
will need in advance
2016-05-07 07:21:16 +10:00
Andrew Tridgell
9a1cbff850 DataFlash: allow access to DataFlash instance as a static singleton 2016-05-07 07:21:16 +10:00
Peter Barker
11dd254498 DataFlash: Log_Write optimisations 2016-05-07 07:21:16 +10:00
Peter Barker
cf15bb5f6e DataFlash: AllTypes example also covers Log_Write 2016-05-07 07:21:16 +10:00
Peter Barker
b273514cf9 DataFlash: create example outputting all field types 2016-05-07 07:21:16 +10:00
Peter Barker
518fabe035 DataFlash: StopLogging method, virtual stop_logging on backends 2016-05-07 07:21:16 +10:00
Peter Barker
77dd170e03 DataFlash: Log_Write support
A generic logging method to avoid the need to set up a format and structures etc
2016-05-07 07:21:16 +10:00
Peter Barker
334af1ecd7 DataFlash: base class method for resetting state on log open 2016-05-07 07:21:16 +10:00
Peter Barker
eea2d5dcb5 DataFlash_File: avoid integer wrap when checking minimum time 2016-05-07 07:21:15 +10:00
Michael Day
62a7074dd7 AP_Mission: Added mavlink_cmd_long_to_mission_cmd method. 2016-05-06 11:59:44 -07:00
Lucas De Marchi
fea084a596 Global: use ap_version.h
This header is used by waf to contain the generated version macros,
particularly using the git hash. For waf it's better to be in a separate
header since it then can keep track of changes on it a trigger
recompilation.

For the make build system, a dummy ap_version.h file has been added in
the missing/ folder so both implementations can co-exist.
2016-05-06 13:11:28 -03:00
Lucas De Marchi
1238c872a9 AP_Common: remove unused Arduino.h header 2016-05-06 13:11:27 -03:00
Allan Matthew
d01db0edd6 AC_PrecLand: remove PI controller, speed limits as they are unused 2016-05-06 11:04:12 +09:00
skyscraper
134ea338da RC_Channel: remove unused control_mix method 2016-05-05 18:58:17 -03:00
Andrew Tridgell
9c4dd024bf AP_NavEKF2: auto change EK2_GPS_TYPE for NMEA
this fixes a problem where users of NMEA GPS receivers could not arm
with default EK2 parameters.
2016-05-05 19:46:33 +10:00
Andrew Tridgell
826cb0887a AP_SerialManager: changed default for SERIAL4_PROTOCOL to 5
this makes it a documented protocol number. No functionality change
2016-05-05 08:08:30 +10:00
Lucas De Marchi
cf11776150 AP_HAL: fix signed and unsigned comparison warning
../../libraries/AP_HAL/examples/Printf/Printf.cpp:63:17: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if (ret != strlen(float_tests[i].result)) {
                 ^
...

ardupilot/modules/gtest/include/gtest/gtest.h:1448:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   if (expected == actual) {
                ^
And similar ones.
2016-05-04 08:58:37 -03:00
Lucas De Marchi
9ac63d7128 AP_HAL: examples: fix coding style 2016-05-04 08:58:37 -03:00
Lucas De Marchi
b5d3094738 AP_ADC: fix warning on printf
../../libraries/AP_ADC/examples/AP_ADC_test/AP_ADC_test.cpp: In function ‘void show_timing()’:
../../libraries/AP_ADC/examples/AP_ADC_test/AP_ADC_test.cpp:61:88: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 3 has type ‘uint32_t {aka unsigned int}’ [-Wformat=]
     hal.console->printf("timing: mint=%lu maxt=%lu avg=%lu\n", mint, maxt, totalt/count);
                                                                                        ^
../../libraries/AP_ADC/examples/AP_ADC_test/AP_ADC_test.cpp:61:88: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 4 has type ‘uint32_t {aka unsigned int}’ [-Wformat=]
../../libraries/AP_ADC/examples/AP_ADC_test/AP_ADC_test.cpp:61:88: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 5 has type ‘uint32_t {aka unsigned int}’ [-Wformat=]
2016-05-04 08:58:37 -03:00
Randy Mackay
53785d1f72 AP_RangeFinder: add Bebop and MAVLink types
Thanks OXINARF!
2016-05-04 15:00:48 +09:00
Randy Mackay
96f665061e AP_RangeFinder: call handle_msg for all backends 2016-05-04 12:10:58 +09:00
Randy Mackay
9b940687c1 AP_RangeFinder: rename CompanionComputer files to MAVLink 2016-05-04 12:10:58 +09:00
Randy Mackay
c541cb27f8 AP_RangeFinder: rename CompanionComputer to MAVLink 2016-05-04 12:10:58 +09:00
Allan Matthew
d3831e4a5d RangeFinder: add MAVLink rangefinder 2016-05-04 12:10:58 +09:00
Andrew Tridgell
7cdab2a6c9 SITL: FlightAxis can support 8 channels 2016-05-04 13:05:43 +10:00
Andrew Tridgell
9081310ff1 HAL_SITL: support simulator RC input 2016-05-04 12:51:28 +10:00
Andrew Tridgell
3b0cd9f101 SITL: added RC input from FlightAxis
use the interlink controller for input for 6 channels
2016-05-04 12:51:27 +10:00
Julien Beraud
33a699f29c AP_RangeFinder: Add support for bebop Rangefinder
This rangefinder uses an spi device to send pulses and an iio driver
in buffer mode to get data
The data is then analyzed and the maximum pulse received is considered to
represent the echo of the pulses that have been sent. The distance in time
between the pulse that is sent and the pulse with the maximum amplitude
is used to calculate the altitude based on the speed of sound.

There is a dependency with libiio, and in order to build, there is a need
to provide a rootfs that includes libiio.a.
The other solution is to build dynamically after having updated the rootfs
to use on compiled with a more recent toolchain and include libiio
2016-05-03 16:43:39 -03:00
Julien Beraud
c22d791bfc AP_HAL_Linux: Add SPI driver for bebop 2016-05-03 16:43:39 -03:00
Julien Beraud
d0114eac05 AP_HAL: Add bebop SPI Device to spi devices
Added to namespace
2016-05-03 16:43:39 -03:00
Julien Beraud
738096b3ae AP_HAL_Linux: Add support for Sonar GPIO 2016-05-03 16:43:39 -03:00
Andrew Tridgell
664ce5c16e AP_AHRS: don't use disabled gyro in rate controllers
obey INS_USE* parameters in gyro estimate
2016-05-01 22:16:06 +10:00
Andrew Tridgell
0e32c047c3 AP_Compass: allow for COMPASS_EXTERNAL=2 for forced external
this allows users with unusual compass bus connections to force the
compass to external
2016-05-01 10:54:46 +10:00
Michael du Breuil
a17ea5c121 GCS_MAVLink: Add POSITION_TARGET_GLOBAL_INT to the list of messages 2016-05-01 07:38:23 +10:00
Michael Oborne
848fa27d1c GCS_MAVLink: support MAVLINK_MSG_ID_MISSION_ITEM_INT 2016-05-01 07:13:45 +10:00
Michael Oborne
fb3fc118f1 AP_Mission: support MAVLINK_MSG_ID_MISSION_ITEM_INT 2016-05-01 07:13:23 +10:00
Andrew Tridgell
ed999a283f AP_Compass: added get_learn_type() API
this allows caller to determine if EKF offsets should be saved
2016-04-30 16:43:14 +10:00
Michael du Breuil
fff21a1db9 Mission: Remove support for CONDITION_CHANGE_ALT 2016-04-30 10:56:09 +09:00
Randy Mackay
85963cecb4 Location: add additional comments 2016-04-30 10:33:01 +09:00
Randy Mackay
5161d63f8b Location: operator= uses const reference 2016-04-30 10:33:01 +09:00
Randy Mackay
d6309a3a1a Location: remove unused methods 2016-04-30 10:33:01 +09:00
Randy Mackay
1bfb565e18 Location: rename set_alt to set_alt_cm 2016-04-30 10:33:01 +09:00
Randy Mackay
3d646a26e2 AP_HAL_SITL: calls to terrain:height_amsl provide extrapolate and corrected params 2016-04-30 10:33:01 +09:00
Randy Mackay
1c4b2be16a AC_WPNav: simplify use of terrain to just current location 2016-04-30 10:33:01 +09:00
Randy Mackay
c5a3781507 AC_WPNav: accept terrain library reference 2016-04-30 10:33:01 +09:00
Randy Mackay
e23c869c5d AC_WPNav: fix reporting of set_wp_destination failure 2016-04-30 10:33:01 +09:00
Randy Mackay
9fbfea951a AC_WPNav: spline handles terrain altitudes 2016-04-30 10:33:01 +09:00
Randy Mackay
8b2c479d62 AC_WPNav: straight line waypoints accept terrain 2016-04-30 10:33:01 +09:00
Randy Mackay
cd999a2091 Location: initial class implementation 2016-04-30 10:33:01 +09:00
Randy Mackay
83922f9b65 AP_Terrain: update comments for height_terrain_difference_home 2016-04-30 10:33:01 +09:00
Randy Mackay
d84321be2e AP_Terrain: height_amsl can correct for non-zero terrain alt at home position 2016-04-30 10:33:01 +09:00
Randy Mackay
7474e827ce AP_Terrain: get_statistics made public 2016-04-30 10:33:01 +09:00
AndersonRayner
74b9f624a3 Added temperature to the Airspeed.cpp example script
Fixed the formatting of the output data
2016-04-29 17:59:11 -03:00
Niti Rohilla
8fcf5cf0c1 Changed the prototype of handle_guided_request() to report error
while setting guided points.
2016-04-29 12:39:28 -03:00
Lucas De Marchi
6839ee4f37 AP_OpticalFlow: remove trailing whitespaces 2016-04-29 12:10:52 -03:00
Lucas De Marchi
5a52533084 AP_OpticalFlow: move bus definition to AP_HAL header 2016-04-29 12:10:21 -03:00
Ricardo de Almeida Gonzaga
46fb57fcf1 AP_OpticalFlow: use I2CDevice interface 2016-04-29 12:01:04 -03:00
Andrew Tridgell
68e17af070 SITL: allow for changing FlightAxis controller IP 2016-04-29 09:03:48 +10:00
Andrew Tridgell
e428d1e72d SITL: support tricopter quadplanes 2016-04-28 22:36:53 +10:00
Andrew Tridgell
ff96085bd3 AP_Motors: allow arbitrary motor mapping with tricopters 2016-04-28 22:36:41 +10:00
Andrew Tridgell
4908350ccb AC_WPNav: limit WPNAV_ACCEL to that implied by ANGLE_MAX
this prevents an overshoot and backtracking in the navigation code
when WPNAV_ACCEL is unachievable due to an angle limit
2016-04-28 17:47:50 +10:00
Andrew Tridgell
c7664291f9 AC_AttitudeControl: fixed comment on function 2016-04-28 17:46:58 +10:00
Andrew Tridgell
23a64e1227 AC_AttitudeControl: fixed accel limit trigonometry
Leonard had mentioned the limit should be tan(angle) not sin(angle). I
noticed this one was wrong.
2016-04-28 16:15:15 +10:00
Andrew Tridgell
9e01d7de6c SITL: added support for "quad-fast" frame
much more powerful copter for testing nav at high speed
2016-04-28 10:05:04 +10:00
Staroselskii Georgii
60426faa52 AP_HAL_Linux: changed ADC logic a bit for Navio 2
- make voltage_average_ratiometric() the same as voltage_average()
- make read_latest() the same as voltage_average()

wip
2016-04-27 17:14:21 +03:00
Staroselskii Georgii
3feade792a AP_Airspeed: changed default pin for Navio boards
Use channel 5 (i.e. /sys/kernel/adc/ch5) for Airspeed sensors instead of virtual 65 that doesn't
make sense on these boards.
2016-04-27 15:37:34 +03:00
Peter Barker
e83b10cbc5 AP_HAL: move definition of callbacks structure out of C linkage
This fixes all the examples which use the AP_HAL_MAIN macro.
2016-04-27 14:21:28 +10:00
Rustom Jehangir
4a10156b13 AP_HAL_Linux: Fix RCInput::read from stopping at any zero channel
This bug led to issues for us so it may help others to resolve it.
Currently, the AP_HAL_Linux RCInput::read(uint16_t*,uint8_t) function
only returns the first x nonzero channels. Once it hits a channel that
is set to zero, it stops and all remaining channels are returned as
zero, even if they are set. This causes discrepancies between the raw RC
input sent to the GCS and the RC input that is actually used on the
vehicle.

The fixes this issue and makes it behave exactly as it does on the
PX4_HAL code. We ran into this issue when sending rc_override messages
in which there were some channels set to zero.
2016-04-26 22:32:07 -03:00
Andrew Tridgell
197e72acc0 GCS_MAVLink: fixed null termination bug
found with ASAN
2016-04-26 18:20:49 +10:00
Andrew Tridgell
69e233a39d AP_GPS: fixed init string for SBF GPS
coverity #125042
2016-04-26 16:51:29 +10:00
Andrew Tridgell
785ad0614a SITL: fixed coverity 125055 2016-04-26 16:46:06 +10:00
Andrew Tridgell
ed4e8b635a SITL: fixed fd leak
coverity #125056
2016-04-26 16:43:54 +10:00
Andrew Tridgell
97d27ce58f AP_Math: fixed memory leak
found by coverity
2016-04-26 16:41:44 +10:00
Andrew Tridgell
847483d744 SITL: fixed coverity warning 2016-04-26 16:37:17 +10:00
Andrew Tridgell
be41d402b5 AP_InertialSensor: added set of delta angle time for replay 2016-04-26 15:50:46 +10:00
Andrew Tridgell
bcefb45e0a DataFlash: added DelaT to delta-angle logs 2016-04-26 15:50:29 +10:00
Andrew Tridgell
4401cbec72 AP_InertialSensor: cope with zero delta angle time from Replay 2016-04-26 15:37:11 +10:00
Michael du Breuil
831ae72908 AP_Mission: Remove DO_SET_PARAMETER 2016-04-25 09:59:59 +09:00
mirkix
6e546ba181 AP_HAL_Linux: Fix compiler warning unused hal 2016-04-24 11:09:55 -03:00
mirkix
b381045d5e AP_HAL: BBBmini rework for dual MPU9250 and external HMC5843 compass 2016-04-24 10:57:57 -03:00
mirkix
c3a6a56ebb AP_InertialSensor: Add second MPU9250 autodetection to BBBmini 2016-04-24 10:57:57 -03:00
mirkix
3df5a02448 AP_Compass: Add HMC5843 and second AK8963 autodetection to BBBmini 2016-04-24 10:57:57 -03:00
mirkix
2aba5a4643 AP_HAL_Linux: BBBmini add second MPU9250 2016-04-24 10:57:57 -03:00
Randy Mackay
f70072c54b AP_AccelCal: check return of get_calibrator
resolves compiler warning
2016-04-23 23:06:27 -07:00
Randy Mackay
39560f9af8 DataFlash: remove unused num_format_types and _structures
resolves compiler warning
2016-04-23 23:06:26 -07:00
Randy Mackay
6ef735c41e AP_RSSI: use fabsf instead of abs
resolves compiler warning
2016-04-23 23:06:26 -07:00
Randy Mackay
7af9892bd1 AP_MotorsMatrix: make const a float
resolves compiler warning
2016-04-23 23:06:25 -07:00
Randy Mackay
a50f5bfaf8 AP_L1_Control: replace fabsf with labs
resolves a compiler warning
2016-04-23 23:06:25 -07:00
Randy Mackay
b2153fb97f AP_L1_Control: remove unused _xtrackVelPos 2016-04-23 23:06:24 -07:00
Randy Mackay
58e65c836f HAL_Linux: remove unused pru_chan_map from RCOutput 2016-04-23 23:06:24 -07:00
Randy Mackay
d6d5bac419 RCInput_UART: remove unused _count, _direction
resolves a compiler warning
2016-04-23 23:06:23 -07:00
Randy Mackay
3c7b2232b0 AP_GPS_GSOF: remove unused last_hdop
resolves a compiler warning
2016-04-23 23:06:22 -07:00
Randy Mackay
ea3c44f9fa AP_Frsky_Telem: remove unnecessary abs
resolves a compiler warning
2016-04-23 23:06:22 -07:00
Randy Mackay
4aba25d2ef AP_Compass_AK8963: remove unused _bus_sem, _last_accum_time
Resolves a compiler warning
2016-04-23 23:06:21 -07:00
Randy Mackay
04b2e65627 AP_Airspeed: remove unused _last_pin
Resolves a compiler warning
2016-04-23 23:06:21 -07:00
Randy Mackay
722095e56d APM_Control: remove unused _last_error member
Resolves a compiler warning
2016-04-23 23:06:20 -07:00
Luis Vale Gonçalves
b64d28b825 Revising ardupilot.com to .org
Revising ardupilot.com to .org
2016-04-23 22:49:45 -07:00
Luis Vale Gonçalves
5b60d1514f Revising ardupilot.com to .org
Revising ardupilot.com to .org
2016-04-23 22:49:41 -07:00
Luis Vale Gonçalves
bbbb3047fa Revising ardupilot.com to .org
Revising ardupilot.com to .org
2016-04-23 22:49:40 -07:00
Luis Vale Gonçalves
4e70665f17 Revising ardupilot.com to .org
Revising ardupilot.com to .org
2016-04-23 22:49:39 -07:00
Luis Vale Gonçalves
0d9ea7597c Revising ardupilot.com to .org
Revising ardupilot.com to .org
2016-04-23 22:49:38 -07:00
Luis Vale Gonçalves
a16e9b3606 Revising ardupilot.com to .org
Revising ardupilot.com to .org
2016-04-23 22:49:36 -07:00
Randy Mackay
72a7f674ec AP_Motors: protect against out-of-bounds memory access
resolves a compiler warning
2016-04-23 21:06:18 +10:00
Andrew Tridgell
54f7aeed83 RC_Channel: extend channel mapping to 16 channels
this gives more flexibility, no reason to limit it to 8
2016-04-23 21:03:46 +10:00
Andrew Tridgell
3a5e4c80ca AP_Mission: support DO_VTOL_TRANSITION command
first 16 bit command ID
2016-04-23 21:03:46 +10:00
Andrew Tridgell
09c3c36c00 AP_Mission: allow for 16 bit command IDs
this uses command ID 0 to allow for 16 bit command IDs. When used it
limits the content to just 10 bytes.
2016-04-23 21:03:45 +10:00
Tom Pittenger
bcc2838a37 APM_OBC: changed param RC_FAIL_MS to RC_FAIL_TIME in float seconds 2016-04-22 16:05:07 -07:00
Tom Pittenger
f2d744b7c9 APM_OBC: non-functional change - cleaned up logic 2016-04-22 16:05:02 -07:00
James Stoyell
48a7363608 APM_OBC: Added params for AUVSI student competition 2016-04-22 11:48:31 -07:00
Francisco Ferreira
af6d8e3c36 AP_Param: explicitly cast to float to avoid Clang warning
/home/travis/build/ArduPilot/ardupilot/libraries/AP_Param/AP_Param.h:542:22: warning: using floating point absolute value function 'fabsf' when argument is of integer type [-Wabsolute-value]
        bool force = fabsf(_value - v) < FLT_EPSILON;
2016-04-22 17:33:06 +01:00
Randy Mackay
71692044f8 AP_Parachute: resolve compile warning re init order 2016-04-22 21:32:35 +09:00
Tom Pittenger
431b3c7160 AP-TECS: constrain proportion to 0-1 for spdweight scale so it doesn't grow backup after land point 2016-04-21 21:31:02 -07:00
Tom Pittenger
25c3367341 AP_L1 - add a stale flag
threading bug fix. When a mission wp updates, but the L1 controller had not yet, the data is stale. Example, On Plane when NAV_LAND starts for a moment your xtrack and bearing is most likely bear zero regardless if you have a big turn or not until 10 Hz later when the update() gets called and updates those values with correct values for the new waypoint.
2016-04-21 21:30:57 -07:00
Tom Pittenger
2ce964c8ac AP_L1_Controller: add accessor for xtrack_error_integrator 2016-04-21 21:30:54 -07:00
Tom Pittenger
595badce3e AP_TECS: rely on single flag for all land stage differences
recent fixes in Plane have made the stage more accurate so exceptions/hacks are no longer needed to differentiate between knowing if executing NAV_LAND vs being in stage_approach.
2016-04-21 21:30:52 -07:00
Tom Pittenger
0af878703f AP_TECS: move target land_airspeed logic to top layer 2016-04-21 21:30:49 -07:00
Tom Pittenger
525c7b24e3 AP_TECS: created accessor for TECS_LAND_ARSPD param 2016-04-21 21:30:48 -07:00
Andrew Tridgell
0af322e90d HAL_PX4: added comment on oneshot 2016-04-22 13:50:05 +10:00
Andrew Tridgell
5ce7ae71a7 HAL_PX4: fixed enabling oneshot on a subset of motors 2016-04-22 13:24:24 +10:00
Andrew Tridgell
fd7c87e629 AP_Motors: allow enabling oneshot on a subset of motors 2016-04-22 13:24:04 +10:00
Andrew Tridgell
bcd0d48ced HAL_PX4: fixed non-contiguous motor outputs
this fixes tricopter with chan3 never set
2016-04-22 11:51:08 +10:00
Andrew Tridgell
180a7905e5 SITL: make Z down in motors 2016-04-22 10:45:55 +10:00
Andrew Tridgell
46f368f17d HAL_SITL: support fireflyy6 as quadplane 2016-04-22 10:28:15 +10:00
Andrew Tridgell
aa80851138 SITL: support fireflyY6 quadplane model 2016-04-22 10:28:15 +10:00
Andrew Tridgell
8880635fe1 SITL: support vtail and elevon planes in builtin plane sim
remove old tiltrotor in favor of new tiltrotor code
2016-04-22 10:28:15 +10:00
Andrew Tridgell
b4d24d8e03 SITL: fixed rotations of motors by large angles 2016-04-22 10:28:15 +10:00
Andrew Tridgell
6165c42535 AP_Math: added from_axis_angle() method on Matrix3f
for arbitrary rotations in simulator
2016-04-22 10:28:15 +10:00
Andrew Tridgell
f2c63e24c5 AP_Motors: allow tricopter motor 7 to be moved to any output 2016-04-22 08:32:03 +10:00
Tom Pittenger
0e775f595d AP_BattMonitor: make param BATT_WATT_MAX plane only 2016-04-21 13:59:45 -07:00
Rimvydas Naktinis
df922dacfa Plane: Suppress throttle when parachute release initiated, not after release. 2016-04-21 09:53:22 -07:00
Andrew Tridgell
21fb38da8f HAL_SITL: support Y6 frame 2016-04-21 21:11:46 +10:00
Andrew Tridgell
71ca534ec6 SITL: added Y6 frame 2016-04-21 21:11:38 +10:00
Andrew Tridgell
41b3cb2ff7 HAL_SITL: support tri sim 2016-04-21 20:29:58 +10:00
Andrew Tridgell
49822effca SITL: added tricopter simulator 2016-04-21 20:29:49 +10:00
Andrew Tridgell
c262d6a1b4 SITL: break up multicopter into Motor/Frame/Multicopter classes
ready for more tiltrotors
2016-04-21 19:56:44 +10:00
Michael du Breuil
fd51c3cc16 AP_TECS: Remove hgt_afe from update_50hz() 2016-04-21 17:03:00 +10:00
Michael du Breuil
475e731e34 AP_SpdHgt_Control: Remove hgt_afe from update_50hz() 2016-04-21 17:03:00 +10:00
Andrew Tridgell
c765979f9a DataFlash: expose the number of lost log messages
will be logged in PM message
2016-04-21 16:45:02 +10:00
Andrew Tridgell
ced4cce358 AP_Scheduler: added optional perf counters at SCHED_DEBUG >= 4 2016-04-21 16:45:02 +10:00
Randy Mackay
4419b3c617 AHRS_NavEKF: fix get_position by using ekf origin
The EKF's getPosNED returns a vertical position relative to the EKF origin but previously this function was using it as if it was relative to ahrs's home
2016-04-21 11:23:07 +10:00
Jonathan Challinger
a7f959e6f9 AP_Notify: add ToneAlarm_PX4_Solo 2016-04-21 10:05:36 +10:00
Jonathan Challinger
d2ca2d2e0e AP_Notify: change OREOLED config to ifdef 2016-04-21 10:04:37 +10:00
Jonathan Challinger
06ccf88cc9 AP_BattMonitor_SMBus: set AP_Notify powering_off flag 2016-04-21 10:04:37 +10:00
Jonathan Challinger
dba55182af AP_Notify: add flags.powering_off 2016-04-21 10:04:37 +10:00
Andrew Tridgell
ac60901b0c AP_NavEKF2: use vector comparison for new mag vector 2016-04-21 09:56:22 +10:00
Jonathan Challinger
6a5f1c0bec AP_AHRS_NavEKF: reflect changes to getMagOffsets 2016-04-21 09:53:03 +10:00
Jonathan Challinger
97112ccd44 AP_NavEKF2: check mag instance id when returning mag offsets 2016-04-21 09:51:41 +10:00
Jonathan Challinger
6938e3d57b AP_NavEKF: check mag instance id when returning mag offsets 2016-04-21 09:51:41 +10:00
Jonathan Challinger
1185cd1be7 AP_NavEKF2: move getMagOffsets into outputs 2016-04-21 09:51:41 +10:00
Jonathan Challinger
acfaafe276 AP_NavEKF2: detect changes to magnetometer offset parameters and reset states 2016-04-21 09:51:41 +10:00
Andrew Tridgell
835c0b1759 HAL_SITL: follow sqrt law to 60m for wind
this makes testing wind in landings more useful
2016-04-20 17:26:16 +10:00
Andrew Tridgell
57aef8e1e9 SITL: added basic wind support in multicopter, plane and quadplane
this adds non-turbulent wind support for the built-in simulators. I
added it primarily for quadplane testing, but it should also be useful
for multicopter navigation testing.
2016-04-20 11:48:37 +10:00
Andrew Tridgell
28aa4c40cc HAL_PX4: fixed order of wifi and frsky on FMUv4
thanks to OXINARF for noticing!
2016-04-20 10:23:11 +10:00
Andrew Tridgell
4a35f8e9fc HAL_PX4: fixed comments for FMUv4 uarts 2016-04-20 10:08:48 +10:00
Andrew Tridgell
4ef977c68b HAL_SITL: fixed initial path for uartF 2016-04-20 10:08:35 +10:00
Andrew Tridgell
ef180710db AP_SerialManager: fixed doc strings 2016-04-20 10:03:45 +10:00
Andrew Tridgell
62986957b4 GCS_MAVLink: raise number of mavlink buffers to 5 2016-04-20 09:39:50 +10:00
Andrew Tridgell
0baf8ee2eb AP_SerialManager: added SERIAL5_* support 2016-04-20 09:39:49 +10:00
Andrew Tridgell
6120631977 HAL_VRBRAIN: added uartF 2016-04-20 09:39:49 +10:00
Andrew Tridgell
0d27409511 HAL_SITL: added uartF 2016-04-20 09:39:49 +10:00
Andrew Tridgell
9c9f66e5f3 HAL_QURT: added uartF 2016-04-20 09:39:49 +10:00
Andrew Tridgell
18ccaf7e2b HAL_PX4: added uartF 2016-04-20 09:39:49 +10:00
Andrew Tridgell
c7dabad02c HAL_Linux: added uartF 2016-04-20 09:39:49 +10:00
Andrew Tridgell
543604731f HAL_FLYMAPLE: added uartF 2016-04-20 09:39:49 +10:00
Andrew Tridgell
a78e23d6fb HAL_Empty: added uartF 2016-04-20 09:39:49 +10:00
Andrew Tridgell
76868dd070 AP_HAL: added uartF 2016-04-20 09:39:48 +10:00
Andrew Tridgell
2a214f1e46 AP_GPS: support a wider variety of NMEA receivers
some reeivers use a different talker ID. This allows us to accept
them.
2016-04-18 15:30:17 +10:00
Lucas De Marchi
0d9b9433da GCS_MAVLink: fix home position unit
As per documentation the home position is in mm. Since location stores
it in cm, convert to mm before sending.
2016-04-18 13:07:45 +10:00
Michael du Breuil
bb7cf6c0b6 AP_Math: Update location_sanitize to sanitize for lat/lng 2016-04-17 19:00:03 -07:00
Francisco Ferreira
b7135175c9 AC_AttitudeControl: fix heli documentation 2016-04-18 07:40:34 +09:00
Andrew Tridgell
8586b0ae5a APM_Control: added tuning accessors 2016-04-16 20:37:33 +10:00
Andrew Tridgell
a731caa4ab HLA_PX4: prevent timer disturbance in oneshot mode 2016-04-16 18:52:31 +10:00
Andrew Tridgell
6df4d11d3f AP_Motors: ensure OneShot125 is within 125 to 250usec 2016-04-16 18:52:12 +10:00
Andrew Tridgell
d9d6f87195 HAL_PX4: fixed bug in pwm send code
many thanks to Oxinarf for spotting this!
2016-04-16 08:32:04 +10:00
Andrew Tridgell
c9dfccfb26 HAL_PX4: improved oneshot support
this now supports oneshot properly on both IO and FMU
2016-04-16 07:30:44 +10:00
Andrew Tridgell
2304c41f44 AP_BoardConfig: use hal.rcout->enable_sbus_out() 2016-04-16 07:30:43 +10:00
Andrew Tridgell
6f284d673a HAL_PX4: enable oneshot support on px4io 2016-04-16 07:30:43 +10:00
Andrew Tridgell
b94e577cb8 AP_HAL: added enable_sbus_out() call in RCOutput 2016-04-16 07:30:43 +10:00
Lucas De Marchi
ff10d1136c AP_GPS: reorganize includes
Due to the way the headers are organized a single change in a
AP_GPS backend 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.

This makes internal headers internal and then other libraries only
depend on the AP_GPS.h header.
2016-04-14 21:01:51 -03:00
Andrew Tridgell
e83a3d8185 AP_Camera: clearer parameter docs for trigger pin 2016-04-15 09:33:47 +10:00
Andrew Tridgell
9f31fbb895 AP_Camera: support fast timer capture on AUX4 on Pixhawk
microsecond capture of hot-shoe
2016-04-15 09:28:51 +10:00
Andrew Tridgell
5b8401cbbc AP_BoardConfig: allow setup of more complex modes for aux pins on PX4
this allows for setting up of timer capture pins
2016-04-15 09:23:46 +10:00
Paul Riseborough
1ecc206eee AP_NavEKF2: Allow use in planes without a magnetometer
Implements the following techniques to enable planes to operate without magnetometers.

1) When on ground with mag use inhibited, a synthetic heading equal to current heading is fused to prevent uncontrolled covariance growth.
2) When transitioning to in-flight, the delta between inertial and GPS velocity vector is used to align the yaw.
3) The yaw gyro bias state variance is reset following an in-flight heading reset to enable the yaw gyro bias to be learned faster.
2016-04-15 08:31:47 +10:00
Peter Barker
daa210729c AP_HAL_PX4: correct systemid output for PX4v4 2016-04-14 13:40:27 -07:00
Jonathan Challinger
18240107f0 AP_AHRS_NavEKF: add getGpsGlitchStatus 2016-04-14 12:24:04 +09:00
Jonathan Challinger
a0e291bf89 DataFlash: add reason to MODE 2016-04-14 12:24:04 +09:00
Andrew Tridgell
16b3fe75d1 AP_RSSI: default to analog RSSI on pixracer 2016-04-14 11:13:47 +10:00
pepevalbe
abb667fac3 AP_Notify: enable/disable buzzer in Linux based boards 2016-04-14 08:59:11 +09:00
pepevalbe
c00cbcf076 AP_Notify: enable/disable buzzer in PX4 based boards 2016-04-14 08:59:08 +09:00
pepevalbe
c9862b1502 AP_Notify: New parameter to enable/disable buzzer 2016-04-14 08:59:06 +09:00
Grant Morphett
5861b754cc Rover: fixing a bug the Rover simulation
Just a small change to ensure the max_wheel_turn parameter is used
instead of a hard coded value.
2016-04-14 08:55:04 +09:00
mirkix
0366bce9c1 AP_SerialManager: Fix FrSky baudrate comment 2016-04-14 08:46:49 +09:00
Andrew Tridgell
fe2065cd72 AP_Motors: rename MOT_PWM_MODE to MOT_PWM_TYPE
Randy prefers TYPE
2016-04-14 08:05:07 +10:00
Andrew Tridgell
c3546dfbb0 AP_BoardConfig: default to 6 PWM on FMUv4
less likely to use relays
2016-04-14 08:05:06 +10:00
Andrew Tridgell
8b6322082e AP_SerialManager: default wifi port to MAVLink at 921600 on Pixracer 2016-04-14 08:05:06 +10:00
Andrew Tridgell
8695668da3 HAL_PX4: enable wifi port on FMUv4 2016-04-14 08:05:06 +10:00
Andrew Tridgell
5922e67785 HAL_PX4: allow sbus output on channels beyond BRD_PWM_COUNT 2016-04-14 08:05:06 +10:00
Andrew Tridgell
759b0d6629 HAL_PX4: only support oneshot on FMU outputs for now
oneshot on PX4IO gives some very weird results. I think it is doable,
but will take a bit more work
2016-04-14 08:05:06 +10:00
Andrew Tridgell
f54bcc6c7f AP_Motors: added oneshot support via MOT_PWM_MODE
MOT_PWM_MODE=0 is normal
MOT_PWM_MODE=1 is oneshot
MOT_PWM_MODE=2 is oneshot125
2016-04-14 08:05:05 +10:00
Andrew Tridgell
934b4dd475 HAL_PX4: support OneShot on PX4
this greatly lowers output latency
2016-04-14 08:05:05 +10:00
Andrew Tridgell
e24d600e78 AP_HAL: added hal.rcout->set_output_mode() 2016-04-14 08:05:05 +10:00
Andrew Tridgell
36528965f7 AP_BoardConfig: added 7s timeout on uavcan startup 2016-04-14 08:05:05 +10:00
Andrew Tridgell
1d5deed72a HAL_PX4: fixed build for new px4 param functions 2016-04-14 08:05:04 +10:00
Randy Mackay
8d77bdec15 AP_MotorsMulti: minor comment fix 2016-04-14 05:45:24 +09:00
Lucas De Marchi
affa759fb4 AP_GPS: add missing override 2016-04-13 11:27:19 -03:00
Michael du Breuil
bd6aa982e7 AP_Arming: Fetch GPS configuration failure reason 2016-04-13 11:24:01 -03:00
Michael du Breuil
2538c17ee0 AP_GPS: add fetching of gps configuration failure reasons 2016-04-13 11:24:01 -03:00
Andrew Tridgell
d03a232659 AC_AttitudeControl: added set_limit_accel_xy() API
for preventing integrator buildup
2016-04-10 22:01:18 +10:00
Andrew Tridgell
ed2f26d7b8 RC_Channel: allow for pass-thru from low channels to any channel
this makes it easier to setup things like ignition cut or bottle drop
with a 8 channel radio
2016-04-10 20:33:12 +10:00
hiro2233
7814841cd6 AP_HAL: Add RCOutput interactive example with Menu 2016-04-09 07:01:35 -07:00
Ricardo de Almeida Gonzaga
5bd034a5a8 Global: start using cmath instead of math.h 2016-04-05 21:06:19 -07:00
Ricardo de Almeida Gonzaga
60d141c717 missing: add cmath 2016-04-05 20:44:15 -07:00
Andrew Tridgell
9db618c73c AP_AHRS: disable EKF1 for plane
we are running too close to the 1MByte limit for pixhawk. This
recovers nearly 100kbyte of flash
2016-04-04 11:08:03 +10:00
Andrew Tridgell
7dcd17a2fa SITL: make multicopter motors only effective above 10% 2016-04-02 22:45:05 +11:00
Andrew Tridgell
6bff07397e AP_Math: added linear_interpolate() function 2016-04-02 22:44:47 +11:00
Andrew Tridgell
602ff03c41 AP_TECS: limit both negative and positive pitch on quadplane transition
this makes for smoother auto takeoff
2016-04-02 19:53:16 +11:00
Andrew Tridgell
86416e8f05 AP_Param: added set_default_by_name() 2016-04-01 16:39:51 +11:00
Andrew Tridgell
0530af93aa AP_Param: allow top level parameters to be pointers
this will allow for the attitude_control variable in quadplane to be a
pointer
2016-04-01 16:16:03 +11:00
Randy Mackay
87399776a3 AC_PosControl: hover throttle default to 0.5 2016-04-01 11:59:30 +09:00
Randy Mackay
f6eabfdab2 AP_MotorsMulticopter: formatting fixes 2016-04-01 11:59:30 +09:00
Randy Mackay
6807b961e2 AP_MotorsMulticopter: protect against div-by-zero if MOT_SPIN_ARMED is zero 2016-04-01 11:59:30 +09:00
Randy Mackay
b39798ad90 AP_Motors: remove unused DESIRED_SPIN_MIN_THROTTLE 2016-04-01 11:59:30 +09:00
Randy Mackay
dc86e1472c AP_MotorsTri: protect against div-by-zero if MOT_YAW_SV_ANGLE param was set to 90 2016-04-01 11:59:30 +09:00
Randy Mackay
9b5b6f3779 AP_MotorsHeli: constrain filtered throttle
This is required because we have removed the constraint on the throttle input.  This also insures that there is no lag caused by the filtered throttle straying far outside the 0 to 1 range
2016-04-01 11:59:30 +09:00
Randy Mackay
b4a61e6ccf AP_Motors: remove constrain on throttle input
This constraint is redundant because we already constrain the filtered throttle
2016-04-01 11:59:30 +09:00
Leonard Hall
fce426409e AP_MotorsTri: fix stab patch 2016-04-01 11:59:30 +09:00
Randy Mackay
49562c5ca3 AP_MotorsMulticopter: reduce num bits used for spool-up-down-mode 2016-04-01 11:59:30 +09:00
Randy Mackay
3ee88fd8c7 AP_MotorsCoax: remove output_min
This is now implemented by parent AP_MotorsMulticopter
2016-04-01 11:59:30 +09:00
Randy Mackay
8566a61660 AP_MotorsSingle: remove output_min
This is now implemented by parent AP_MotorsMulticopter
2016-04-01 11:59:30 +09:00
Randy Mackay
8621774040 AP_MotorsTri: remove output_min
This is now implemented by parent AP_MotorsMulticopter
2016-04-01 11:59:30 +09:00
Randy Mackay
f4d94806e5 AP_MotorsMatrix: remove output_min
This is now implemented by parent AP_MotorsMulticopter
2016-04-01 11:59:30 +09:00
Randy Mackay
b4b33db79b AP_MotorsMulticopter: promote output_min from Matrix class 2016-04-01 11:59:30 +09:00
Randy Mackay
2e8acf1f74 AP_MotorsHeli: calculate_scalars made protected
No functional change
2016-04-01 11:59:30 +09:00
Randy Mackay
165d739b45 AC_AttControl_Heli: roll, pitch, yaw passthrough to motors in -1 to +1 range 2016-04-01 11:59:30 +09:00
Randy Mackay
344d86a095 AC_AttControl_Heli: fix parameter description 2016-04-01 11:59:30 +09:00
Randy Mackay
685be4083c AC_AttControl_Heli: remove unnecessary cast to AC_HELI_PID 2016-04-01 11:59:30 +09:00
Randy Mackay
6c91e50f8c AC_AttControl_Heli: remove scaling for centi-degrees and legacy motor input 2016-04-01 11:59:30 +09:00
Randy Mackay
32d238187f AC_AttControl_Heli: get_althold_lean_angle_max in 0 to 1 range 2016-04-01 11:59:30 +09:00
Randy Mackay
db04dddba5 AC_AttControl_Heli: adjust rate gain param descriptions 2016-04-01 11:59:30 +09:00
Randy Mackay
35c6ea994d AC_AttControl_Multi: fix parameter descriptions 2016-04-01 11:59:30 +09:00
Randy Mackay
ace58d114f AC_AttControl_Multi: reduce rate gain defaults 2016-04-01 11:59:30 +09:00
Leonard Hall
b30606bb22 AC_AttControl: remove scaling for centi-degrees and legacy motor input 2016-04-01 11:59:30 +09:00
Randy Mackay
7f2c1f830f AC_AttControl_Heli: add rate PIDs 2016-04-01 11:59:30 +09:00
Randy Mackay
5edc16dfb4 AC_AttControl_Multi: add rate PIDs 2016-04-01 11:59:30 +09:00
Randy Mackay
75042e5e27 AC_AttControl: remove rate PIDs 2016-04-01 11:59:30 +09:00
Randy Mackay
17c9db08f3 AC_AttControl: add angle and rate PIDs 2016-04-01 11:59:30 +09:00
Randy Mackay
de537390c2 AC_HELI_PID: adjust parameter descriptions
ILMI range is now 0 to 1
2016-04-01 11:59:30 +09:00
Randy Mackay
3465f05bec AC_HELI_PID: shorten FILT_HZ to FILT, I_L_MIN to ILMI
Also minor formatting fix
2016-04-01 11:59:30 +09:00
Randy Mackay
425caeabf7 AC_PI_2D: fix parameter description 2016-04-01 11:59:30 +09:00
Randy Mackay
227e4f86d7 AC_PID: fix parameter description 2016-04-01 11:59:30 +09:00
Randy Mackay
920425567c AC_PID: shorten FILT_HZ to FILT 2016-04-01 11:59:30 +09:00
Randy Mackay
bc1b8f415a AP_Motors: example sketch output limit flags 2016-04-01 11:59:30 +09:00
Randy Mackay
c9055ccdb1 AP_Motors: example sketch tests Single and Coax 2016-04-01 11:59:30 +09:00
Randy Mackay
41c55ffbe7 AP_MotorsTri: use YAW_SV_REV to reverse yaw output 2016-04-01 11:59:30 +09:00
Leonard Hall
13d727c2c6 AP_MotorsTri: add YAW_SV_ANGLE parameter to capture yaw servo lean angle max 2016-04-01 11:59:30 +09:00
Randy Mackay
c939cc1551 AP_MotorsTri: clarify YAW_SV parameter descriptions and comments 2016-04-01 11:59:30 +09:00
Leonard Hall
267513d864 AP_MotorsTri: fixes to output_armed_stabilizing
Also minor comment fixes
2016-04-01 11:59:30 +09:00
Leonard Hall
250a444e57 AP_MotorsCoax: fixes to stab patch
Fix throttle_lower flag
Also some formatting changes
2016-04-01 11:59:30 +09:00
Randy Mackay
20565580ed AP_MotorsCoax: remove disabling of output ch7 2016-04-01 11:59:30 +09:00
Randy Mackay
63fefae7cf AP_MotorsCoax: use calc_pwm_output_1ot1 instead of local calc_pivot_radio_output 2016-04-01 11:59:30 +09:00
Leonard Hall
840e60c930 AP_MotorsSingle: fixes to stab patch
Fixes throttle_lower flag
Also some formatting changes
2016-04-01 11:59:30 +09:00
Randy Mackay
af9b18329c AP_MotorsSingle: use calc_pwm_output_1to1 instead of local calc_pivot_radio_output 2016-04-01 11:59:30 +09:00
Randy Mackay
c4b88aafef AP_MotorsHeli: swash and tail servo objects moved into class 2016-04-01 11:59:30 +09:00
Randy Mackay
4f1e62d551 AP_MotorsHeli: remove reset_radio_passthrough 2016-04-01 11:59:30 +09:00
Randy Mackay
b5593431bf AP_MotorsHeli_Single: replace collective_mid_pwm with collective_mid_pct 2016-04-01 11:59:30 +09:00
Randy Mackay
9790245bf1 AP_MotorsHeli: replace collective_mid_pwm with collective_mid_pct 2016-04-01 11:59:30 +09:00
Randy Mackay
a39bbc5421 AP_MotorsHeli: servo_test in range -1 to 1 2016-04-01 11:59:30 +09:00
Randy Mackay
a42706bdcc AP_Motors: remove unused example sketch to test timing
This test was only important on the slower AVR boards
2016-04-01 11:59:30 +09:00
Randy Mackay
a3450b712c AP_Motors: fix example sketch 2016-04-01 11:59:30 +09:00
Leonard Hall
753b72b28c AP_MotorsY6: call normalise_rpy_factors in motor setup 2016-04-01 11:59:30 +09:00
Leonard Hall
13ab3ecfea AP_MotorsQuad: call normalise_rpy_factors in motor setup 2016-04-01 11:59:30 +09:00
Leonard Hall
7ac4fc5569 AP_MotorsOctaQuad: call normalise_rpy_factors in motor setup 2016-04-01 11:59:30 +09:00
Leonard Hall
e182c10625 AP_MotorsOcta: call noramlise_rpy_factors in motor setup 2016-04-01 11:59:30 +09:00
Leonard Hall
733b89cf3c AP_MotorsHexa: call noramlise_rpy_factors in motor setup 2016-04-01 11:59:30 +09:00
Leonard Hall
8f8eb7e214 AP_MotorsMatrix: add normalise_rpy_factors 2016-04-01 11:59:30 +09:00
Randy Mackay
e7ba5ae451 AP_MotorsMulticopter: fix get_hover_throttle_as_high_end_pct 2016-04-01 11:59:30 +09:00
Randy Mackay
4514e8d100 AP_MotorsHeli: remove slow_start 2016-04-01 11:59:30 +09:00
Randy Mackay
c41a5dc3bd AP_MotorsMulticopter: remove slow_start
This has been replaced with the spool logic feature
2016-04-01 11:59:30 +09:00
Randy Mackay
b436dde60c AP_Motors: remove slow_start
This has been replaced with the spool logic feature
2016-04-01 11:59:30 +09:00
Randy Mackay
e863f0b9c0 AP_MotorsHeli: use AP_Motors set_radio_passthrough in 0 to 1 range 2016-04-01 11:59:30 +09:00
Randy Mackay
68a6408a23 AP_MotorsMulticopter: remove set_radio_passthrough
This has been moved up to the AP_Motors class
2016-04-01 11:59:30 +09:00
Randy Mackay
5ba3a6c536 AP_Motors: add set_radio_passthrough 2016-04-01 11:59:30 +09:00
Randy Mackay
fe4733121d AP_MotorsHeli_Single: ext_gyro_gain in 0 to 1 range 2016-04-01 11:59:30 +09:00
Randy Mackay
e1e4e37c92 AP_MotorsHeli_Single: use RSC class's get_idle_output function
No functional change
2016-04-01 11:59:30 +09:00
Randy Mackay
2cdc5da226 AP_MotorsHeli_Single: rotor speed functions in 0 to 1 range 2016-04-01 11:59:30 +09:00
Randy Mackay
68945df45d AP_MotorsHeli_Single: write_aux uses 0 to 1 range 2016-04-01 11:59:30 +09:00
Randy Mackay
b3334c3ae5 AP_MotorsHeli: rotor speed function in 0 to 1 range 2016-04-01 11:59:30 +09:00
Randy Mackay
832a226f13 AP_MotorsHeli_RSC: rotor speeds in 0 to 1 range
Also move recalc_scalers functionality into update_rotor_ramp and update_rotor_runup
2016-04-01 11:59:30 +09:00
Randy Mackay
4775843e3c AP_MotorsHeli_RSC: add get_idle_output accessor 2016-04-01 11:59:30 +09:00
Randy Mackay
a63dba5b13 AP_MotorsHeli_Single: servo_test becomes protected 2016-04-01 11:59:30 +09:00
Randy Mackay
cefd114964 AP_MotorsHeli_Single: remove unused accessors for tail_type, ext_gyro_gain, phase_angle 2016-04-01 11:59:30 +09:00
Randy Mackay
f2fc39943e AP_MotorsHeli_Single: remove unused delta_phase_angle 2016-04-01 11:59:30 +09:00
Randy Mackay
381f538aca AP_HotorsHeli_Single: remove unused definition 2016-04-01 11:59:30 +09:00
Randy Mackay
27fed39671 AP_MotorsHeli_Single: remove roll_scalar, pitch_scalar 2016-04-01 11:59:30 +09:00
Randy Mackay
756236af35 AP_MotorsHeli: remove unused delta_phase_angle 2016-04-01 11:59:30 +09:00
Randy Mackay
16ac92be82 AP_MotorsHeli: remove unused definitions 2016-04-01 11:59:30 +09:00
Randy Mackay
aeef6692cb AP_MotorsHeli: remove unused roll_scalar, pitch_scalar, collective_range 2016-04-01 11:59:30 +09:00
Randy Mackay
1a690772e1 AP_Motors: example sketch outputs headers 2016-04-01 11:59:30 +09:00
Randy Mackay
361b64f817 AP_Motors: example sketch uses AP_Motors set_desired_spool_state 2016-04-01 11:59:30 +09:00
Randy Mackay
d4998089c8 AP_Motors: example sketch provides roll, pitch, yaw in -1 to +1 range 2016-04-01 11:59:30 +09:00
Randy Mackay
93597d152f AP_Motors: example sketch can test helicopter 2016-04-01 11:59:30 +09:00
Randy Mackay
47873c1d34 AP_MotorsHeli: fix RSC_SETPOINT param description 2016-04-01 11:59:30 +09:00
Randy Mackay
bcbe6b279e AP_MotorsHeli: explicitely set ServoControlModes enum
Non functional change but this enum is tied to a parameter value so the exact value is important
2016-04-01 11:59:30 +09:00
Randy Mackay
8febcedf4b AP_MotorsHeli: remove unnecessary static declaration 2016-04-01 11:59:30 +09:00
Randy Mackay
f022e504b0 AP_MotorsHeli: remove unused get_collective_mid and out methods 2016-04-01 11:59:30 +09:00
Randy Mackay
a18722a2fc AP_MotorsHeli: output_min uses new move_actuators in -1 to +1 range 2016-04-01 11:59:30 +09:00
Randy Mackay
1197a439af AP_MotorsHeli: move_actuators to -1 to +1 range 2016-04-01 11:59:30 +09:00
Randy Mackay
8057d2fc58 AP_MotorsMatrix: remove unnecessary virtual declarations 2016-04-01 11:59:30 +09:00
Randy Mackay
c49a914597 AC_AttControlHeli: remove unnecessary virtual declaration 2016-04-01 11:59:30 +09:00
Randy Mackay
2b123ee15d AC_AttControlHeli: fix rate_bf_to_motor_roll_pitch and yaw output in -1 to +1 range 2016-04-01 11:59:30 +09:00
Randy Mackay
71866be652 AP_MotorsHeliSingle: move_yaw in -1 to +1 range 2016-04-01 11:59:30 +09:00
Randy Mackay
f6120b801b AP_MotorsHeliSingle: move_actuators in -1 to +1 range 2016-04-01 11:59:30 +09:00
Randy Mackay
61cf8e1698 AP_Motors: add calc_pwm_output_1to1 and 0to1
Convenience functions to convert from -1 to +1 input to pwm output
2016-04-01 11:59:30 +09:00
Randy Mackay
56f05e6a96 AP_Motors: add set_desired_spool_state 2016-04-01 11:59:30 +09:00
Randy Mackay
2716126e40 AP_MotorsMulticopter: use desired_spool from AP_Motors class 2016-04-01 11:59:30 +09:00
Randy Mackay
93d1f1969c AP_MotorsMulticopter: remove set_desired_spool_state
This is being moved to AP_Motors
2016-04-01 11:59:30 +09:00
Randy Mackay
4dd4d38b9b AP_MotorsMulticopter: fix output_to_motors definition 2016-04-01 11:59:30 +09:00
Randy Mackay
c5e5b4f783 AC_AttControl: fix rate controller max definitions to -1 to +1 range 2016-04-01 11:59:30 +09:00
Randy Mackay
3ae9b606ff AP_Motors: remove unnecessary output_to_motors declaration
This is declared down in the AP_MotorsMulticopter
2016-04-01 11:59:30 +09:00
Randy Mackay
f2ff9e34ad AP_Motors: remove output_armed_zero_throttle 2016-04-01 11:59:30 +09:00
Leonard Hall
979534279a AC_AttControl: roll, pitch, yaw output to motors in -1 to +1 range 2016-04-01 11:59:30 +09:00
Leonard Hall
879e12ba43 AP_MotorsHeli_Single: roll, pitch, yaw input in -1 to +1 range 2016-04-01 11:59:30 +09:00
Leonard Hall
97f0b00e3e AP_MotorsHeli: roll, pitch, yaw input in -1 to +1 range 2016-04-01 11:59:30 +09:00
Leonard Hall
b701c109cf AP_MotorsSingle: roll, pitch, yaw input in -1 to +1 range 2016-04-01 11:59:30 +09:00
Leonard Hall
1a308c2eb8 AP_MotorsCoax: roll, pitch, yaw input in -1 to +1 range 2016-04-01 11:59:30 +09:00
Leonard Hall
4d208fcd47 AP_MotorsTri: roll, pitch, yaw input in -1 to +1 range 2016-04-01 11:59:30 +09:00
Leonard Hall
027284fba0 AP_MotorsMatrix: roll, pitch, yaw input in -1 to +1 range 2016-04-01 11:59:30 +09:00
Leonard Hall
ae4e495698 AP_Motors: roll, pitch, yaw input in -1 to +1 range 2016-04-01 11:59:30 +09:00
Leonard Hall
90b3d7ca39 AP_Motors: example sketch tests stab patch more thoroughly 2016-04-01 11:59:30 +09:00
Leonard Hall
cef3f42df5 AP_Motors: fix example make.inc 2016-04-01 11:59:30 +09:00
Leonard Hall
1174ad3e66 AC_InputManager_Heli: get_pilot_desired_throttle in 0 to 1 range 2016-04-01 11:59:30 +09:00
Leonard Hall
d312e52aee AC_InputManager: add f for float constants 2016-04-01 11:59:30 +09:00
Leonard Hall
c64a505906 AC_PosControl: relax_alt_hold_controllers accepts throttle in 0 to 1 range 2016-04-01 11:59:30 +09:00
Leonard Hall
15be80a25d AC_PosControl: accel_to_throttle outputs 0 to 1 2016-04-01 11:59:30 +09:00
Leonard Hall
e5d6d45851 AC_AttControl_Heli: angle_boost to float 2016-04-01 11:59:30 +09:00
Leonard Hall
2822b93cd4 AC_AttControl: add get_throttle_in accessor
Used for logging only
2016-04-01 11:59:30 +09:00
Leonard Hall
c0f209fa42 AC_AttControl: angle_boost to float 2016-04-01 11:59:30 +09:00
Leonard Hall
6f29bbafb4 AC_AttControl_Multi: get_althold_lean_angle_max uses motor thrust in 0 to 1 range 2016-04-01 11:59:30 +09:00
Leonard Hall
24f975c16a AC_AttControl_Multi: fix throttle boost for 0 to 1 2016-04-01 11:59:30 +09:00
Leonard Hall
bab08cbcc1 AC_AttControl_Multi: add divide by zero check 2016-04-01 11:59:30 +09:00
Leonard Hall
d2a1cdf906 MotorsHeli: replace throttle_control_input with throttle_in
throttle_control_input was 0 to 1000 range, throttle_in is 0 to 1
2016-04-01 11:59:30 +09:00
Leonard Hall
f02e8f8e01 AP_MotorsHeli: remove output_armed_not_stabilizing 2016-04-01 11:59:30 +09:00
Leonard Hall
5cd4b78918 AP_MotorsSingle: remove reverse parameters
No longer necessary because we can use individual servo reverse params
2016-04-01 11:59:30 +09:00
Leonard Hall
6264159f4d AP_MotorsSingle: move servo objects into Single class 2016-04-01 11:59:30 +09:00
Leonard Hall
21d304b86d AP_MotorsSingle: output_to_motors implements spool logic 2016-04-01 11:59:30 +09:00
Leonard Hall
24a100e429 AP_MotorsSingle: stability patch uses 0 to 1 range 2016-04-01 11:59:30 +09:00
Leonard Hall
cffdced838 AP_MotorsSingle: support 4 servo outputs 2016-04-01 11:59:30 +09:00
Leonard Hall
f53d6e95e8 AP_MotorsSingle: rename _rev_roll to _roll_reverse
Also rename _rev_pitch to _pitch_reverse and _rev_yaw to _yaw_reverse
2016-04-01 11:59:30 +09:00
Leonard Hall
4db73d86af AP_MotorsSingle: remove output_disarmed 2016-04-01 11:59:30 +09:00
Leonard Hall
46ab198ebc AP_MotorsSingle: remove output_armed_not_stabilizing 2016-04-01 11:59:30 +09:00
Leonard Hall
40c18891cf AP_MotorsCoax: remove reverse parameters
No longer necessary because we can use individual servo reverse params
2016-04-01 11:59:30 +09:00
Leonard Hall
260006dcb3 AP_MotorsCoax: move servo objects into Coax class 2016-04-01 11:59:30 +09:00
Leonard Hall
110d41ee24 AP_MotorsCoax: fix SV_SPEED param description 2016-04-01 11:59:30 +09:00
Leonard Hall
8d8f52b22f AP_MotorsCoax: output_to_motors implements spool logic 2016-04-01 11:59:30 +09:00
Leonard Hall
b85c20bb65 AP_MotorsCoax: stability patch in 0 to 1 range
Also removes setting of limits in stability patch
sets outputs for additional 2 servos
2016-04-01 11:59:30 +09:00
Leonard Hall
7df9b2eb8c AP_MotorsCoax: support 4 servo outputs 2016-04-01 11:59:30 +09:00
Leonard Hall
7d6c6b5556 AP_MotorsCoax: rename _rev_roll to _roll_reverse
Also rename _rev_pitch to _pitch_reverse and _rev_yaw to _yaw_reverse
2016-04-01 11:59:30 +09:00
Leonard Hall
5cb44901ff AP_MotorsCoax: remove output_disarmed 2016-04-01 11:59:30 +09:00
Leonard Hall
3df52aad5f AP_MotorsCoax: remove output_armed_not_stabilizing 2016-04-01 11:59:30 +09:00
Leonard Hall
45a16d6dad AP_MotorsTri: implement output_to_motors for spool logic 2016-04-01 11:59:30 +09:00
Leonard Hall
d0a7579fa0 AP_MotorsTri: stability patch in 0 to 1 range 2016-04-01 11:59:30 +09:00
Leonard Hall
80f77bc30b AP_MotorsTri: output_min does not set limits 2016-04-01 11:59:30 +09:00
Leonard Hall
ba659be5cb AP_MotorsTri: rename _yaw_servo_reverse to _yaw_reverse 2016-04-01 11:59:30 +09:00
Leonard Hall
8c4d6d6fbe AP_MotorsTri: remove output_disarmed 2016-04-01 11:59:30 +09:00
Leonard Hall
a2fdcfaf3f AP_MotorsTri: remove output_armed_not_stabilizing 2016-04-01 11:59:30 +09:00
Leonard Hall
397940a9a4 AP_MotorsMatrix: implement output_to_motors 2016-04-01 11:59:30 +09:00
Leonard Hall
cdec8f3387 AP_MotorsMatrix: remove output_disarmed 2016-04-01 11:59:30 +09:00
Leonard Hall
b965857229 AP_MotorsMatrix: remove output_armed_not_stabilizing 2016-04-01 11:59:30 +09:00
Leonard Hall
d0c6d087a5 AP_MotorsMatrix: do not set limits in output_min 2016-04-01 11:59:30 +09:00
Leonard Hall
3fef60da45 AP_MotorsMatrix: stability patch in 0 to 1 range
Includes storing motor level thrusts to _thrust_rpyt_out
rename _throttle_thr_mix_desired to _throttle_rpy_mix_desired
rename _throttle_thr_mix to _throttle_rpy_mix
use get_hover_throttle_as_high_end_pct
use throttle_thrust_max updated by multicopter spool logic
do not set limits in stability patch
2016-04-01 11:59:30 +09:00
Leonard Hall
5841310ac7 AP_MotorsMulticopter: update_throttle_filter limits throttle to 0 to 1 2016-04-01 11:59:30 +09:00
Leonard Hall
420b90953c AP_MotorsMulticopter: throttle_radio_min, max to multicopter class
Moved in from Motors class, only ever used by multicopters
No functional change
2016-04-01 11:59:30 +09:00
Leonard Hall
2c9a02066d AP_MotorsMulticopter: remove unused functions and variables 2016-04-01 11:59:30 +09:00
Leonard Hall
290e657f61 AP_MotorsMulticopter: update_battery_resistance captures resting voltage while disarmed
Previously it could also capture this when the input throttle was zero
2016-04-01 11:59:30 +09:00
Leonard Hall
bc42cb2a66 AP_MotorsMulticopter: update_battery_resistance uses get_throttle accessor 2016-04-01 11:59:30 +09:00
Leonard Hall
8228d9e72c AP_MotorsMulticopter: current_limit_max_throttle uses get_throttle accessor 2016-04-01 11:59:30 +09:00
Leonard Hall
3cbc15bb5b AP_MotorsMulticopter: add get_throttle_thrust_max accessor 2016-04-01 11:59:30 +09:00
Leonard Hall
d7dc37bda0 AP_MotorsMulticopter: remove apply_thrust_curve_and_volt_scaling_pwm 2016-04-01 11:59:30 +09:00
Leonard Hall
06f25b669d AP_MotorsMulticopter: add roll, pitch, throttle and yaw pass through 2016-04-01 11:59:30 +09:00
Leonard Hall
d7c27c949c AP_MotorsMulticopter: add spool_up_complete accessor function 2016-04-01 11:59:30 +09:00
Leonard Hall
983d2dc97a AP_MotorsMulticopter: update_throttle_filter does not set throttle_in
get_throttle method now used to access filtered throttle
2016-04-01 11:59:30 +09:00
Leonard Hall
3fc3858fbd AP_MotorsMulticopter: set_throttle_range calcs _min_throttle before use 2016-04-01 11:59:30 +09:00
Leonard Hall
b26318c178 AP_MotorsMulticopter: output_logic implements spooling 2016-04-01 11:59:30 +09:00
Leonard Hall
b7fe6aa16e AP_MotorsMulticopter: remove update_max_throttle 2016-04-01 11:59:30 +09:00
Leonard Hall
be64c71065 AP_MotorsMulticopter: add get_current_limit_max_throttle
returns the current limited maximum throttle as a number between 0 ~ 1 in the range throttle_min to throttle_max
2016-04-01 11:59:30 +09:00
Leonard Hall
64ba45a683 AP_MotorsMulticopter: add spin_when_armed_low_end_pct
returns the spin-when-armed value as a number from 0 to 1 in the range 0 to throttle_min
2016-04-01 11:59:30 +09:00
Leonard Hall
49819d822f AP_MotorsMulticopter: add get_hover_throttle_as_high_end_pct
Returns hover throttle as a number from 0 to 1 in the range from throttle_min to throttle_max
2016-04-01 11:59:30 +09:00
Leonard Hall
e625c105a4 AP_MotorsMulticopter: remove get_throttle_warn 2016-04-01 11:59:30 +09:00
Leonard Hall
3854f2eda7 AP_MotorsMulticopter: rename _throttle_thr_mix_desired to _throttle_rpy_mix_desired
No functional change
Also rename _throttle_thr_mix to _throttle_rpy_mix
2016-04-01 11:59:30 +09:00
Leonard Hall
65bbc23a08 AP_MotorsMulticopter: apply_thrust_curve_and_volt_scaling in 0 to 1 range
existing equivalent pwm function becomes apply_thrust_curve_and_volt_scaling_pwm
2016-04-01 11:59:30 +09:00
Leonard Hall
cb39f8aab7 AP_MotorsMuticopter: calc_thrust_to_pwm converts thrust in 0 to 1 range to pwm
pwm output is always between throttle min and throttle max
2016-04-01 11:59:30 +09:00
Leonard Hall
80ddce103f AP_Motors: move set_throttle_filter_cutoff declaration
No functional change
2016-04-01 11:59:30 +09:00
Leonard Hall
649a8c461d AP_Motors: remove unused throttle_radio_min, max
Moved to AP_MotorsMulticopter
2016-04-01 11:59:30 +09:00
Leonard Hall
e84011603c AP_Motors: remove unused throttle_pwm_scalar, rpy_pwm_scalar 2016-04-01 11:59:30 +09:00
Leonard Hall
8e1351e474 AP_Motors: init member to resolve compiler warning 2016-04-01 11:59:30 +09:00
Leonard Hall
ed51c7a28d AP_Motors: replace throttle_control_input with throttle_in
throttle_control_input was 0 to 1000 range, throttle_in is 0 to 1
2016-04-01 11:59:30 +09:00
Leonard Hall
c96b91efb6 AP_Motors: add output_to_motors 2016-04-01 11:59:30 +09:00
Leonard Hall
ac579685df AP_Motors: remove output_armed_not_stabilizing 2016-04-01 11:59:30 +09:00
Leonard Hall
666a92ae2f AP_Motors: set_throttle accepts 0 to 1 range 2016-04-01 11:59:30 +09:00
Leonard Hall
3c74b4cc69 Motors: add get_roll_thrust which returns roll input in range 0 to 1
Also added get_pitch_thrust, get_yaw_thrust
2016-04-01 11:59:30 +09:00
Lucas De Marchi
f304fcf4da AP_InertialSensor: examples: add coding style fixes
Several coding style problems were already fixed by previous commit,
just finish the cleanup on this example:

  - replace tabs with spaces
  - remove unneeded \r
  - remove extra spaces
2016-03-31 14:54:17 -03:00
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
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