Julien BERAUD
4acc121bd6
AP_HAL_Linux: support for timesliced timers
...
In order for lower frequency timers not to be called at the same iteration
of the main timer loop. This improves scheduling.
2016-01-18 16:57:48 -02:00
Julien BERAUD
d5c4917bcd
AP_HAL: add default support for timesliced timers
...
To keep compatibility
2016-01-18 16:57:48 -02:00
Don Gagne
c13cf70163
GCS_MAVLink: system id output as severity INFO
2016-01-18 09:40:00 +09:00
Gustavo Jose de Sousa
d281067bcc
waf: make example binaries be placed in 'examples' dir
...
This commit makes examples' wscripts use ardupilotwaf.example() instead of
ardupilot.program().
2016-01-15 16:46:41 -02:00
Ricardo de Almeida Gonzaga
4c60dd5e44
AP_HAL_Linux: improve yuyv_to_grey() performance
...
Based on gbenchmark metrics.
Before:
Benchmark Time(ns) CPU(ns) Iterations
----------------------------------------------------
BM_YuyvToGrey/4k 3109 3114 233334
BM_YuyvToGrey/75k 55777 55857 12353
BM_YuyvToGrey/300k 231829 232227 3043
After:
Benchmark Time(ns) CPU(ns) Iterations
----------------------------------------------------
BM_YuyvToGrey/4k 1713 1716 411765
BM_YuyvToGrey/75k 32124 32152 21875
BM_YuyvToGrey/300k 128530 128753 5385
2016-01-15 16:43:52 -02:00
Ricardo de Almeida Gonzaga
3748760ead
AP_HAL_Linux: improve crop_8bpp() performance
...
Based on gbenchmark metrics.
Before:
Benchmark Time(ns) CPU(ns) Iterations
----------------------------------------------------
BM_Crop8bpp/64/64 3206 3197 198113
BM_Crop8bpp/240/240 38166 38181 18421
BM_Crop8bpp/640/480 193589 193317 3621
After:
Benchmark Time(ns) CPU(ns) Iterations
----------------------------------------------------
BM_Crop8bpp/64/64 2652 2657 232103
BM_Crop8bpp/240/240 33532 33506 20792
BM_Crop8bpp/640/480 187848 188201 3684
2016-01-15 16:43:52 -02:00
Ricardo de Almeida Gonzaga
210c90e784
AP_HAL_Linux: add benchmark for crop_8bpp() and yuyv_to_grey()
...
We had to check for board subtypes in the benchmark since VideoIn.cpp
does these checks.
2016-01-15 16:43:52 -02:00
Julien BERAUD
43307d95c8
OpticalFlow_Onboard: fix body rate calculation
...
The correct integral of the body rate is (rate + last_rate)/2*dt
and not rate * dt
2016-01-15 16:11:19 -02:00
Ricardo de Almeida Gonzaga
753f7d864a
AP_HAL_Linux: add a shrink by software option in OpticalFlow
...
This shrink must be used when the output camera sizes doesn't fit
the expected output.
We don't need to crop it even when the camera sizes aren't squared since
the shrink_8bpp() function shrinks a selected area.
2016-01-15 16:05:47 -02:00
Ricardo de Almeida Gonzaga
553d36c860
AP_HAL_Linux: add shrink_8bpp() to VideoIn
...
This function shrinks a selected area on a 8bpp image.
The focus in this function was the performance, so this may not be the
clearer or the most understandable way to write it. The performance
was measured using GoogleBenchmark[1].
[1] - https://github.com/google/benchmark.git
2016-01-15 16:05:47 -02:00
Lucas De Marchi
51fd0b3d55
AP_HAL_Linux: RCInput_RPI: fix coding style
...
- Remove trailing whitespaces
- Remove some uneeded comments
- Fix indentation
- Replace some breaks inside the loop by checking in the loop itself
2016-01-15 00:16:14 -02:00
Aaron Wang Shi
79d56073f7
AP_HAL_Linux: support PWM input for BH hat
2016-01-15 00:16:14 -02:00
Julien BERAUD
f449107563
AP_HAL_Linux: Add Perf Lttng
...
Support for perf api using lttng.
Some additional build tricks needed for bebop because lttng uses dl_open
which is not compatible with a static link on a different libc as used
on the bebop
2016-01-14 19:13:35 -02:00
bugobliterator
d7fcc7cd85
GCS_MAVLink: remove obsolete files from GCS_MAVLink dir
2016-01-15 07:28:47 +11:00
Paul Riseborough
287ebe8e6a
AP_NavEKF2: Fix bug in application of sensor bias corrections
...
Sensor bias corrections were being applied to the incoming IMU data using the wrong delta time.
This was what was driving the different tuning between plane and copter for gyro bias process noise so the same gyro bias process noise default tuning value can now be used for all platform types.
Sensor bias corrections were being applied a a second time to the output observer inertial data.
2016-01-13 08:05:39 +11:00
Paul Riseborough
20923da23a
AP_NavEKF2: Allow tuning of non-GPS mode
...
Eliminate the use of horizontal position states during non-aiding operation to make it easier to tune.
Explicitly set the horizontal position associated Kalman gains to zero and the coresponding covariance entries to zero after avery fusion operation.
Make the horizontal velocity observation noise used during non-aiding operation adjustable.
Use a fixed value of velocity noise during initial alignment so that the flight peformance can be tuned without affecting the initial alignment.
2016-01-13 08:05:39 +11:00
Paul Riseborough
23038e7243
AP_NavEKF2: Use measurement uncertainties to initialise covariance
2016-01-13 08:05:39 +11:00
Lucas De Marchi
a3cac102cd
AP_HAL_Linux: AnalogIn_Raspilot: rename misleading variables
...
We are not doing any dma here, it's just an SPI transaction. Name them
only rx/tx (although io_packet_tx/io_packet_rx could be another option).
This also zero-initialize the struct to keep valgrind happy about not
calling ioctl() with uninitialized variables.
2016-01-11 16:03:28 -02:00
Lucas De Marchi
0cff40ed7b
AP_HAL_Linux: AnalogIn_Raspilot: remove unused debug
2016-01-11 15:58:49 -02:00
Pritam Ghanghas
60636c1653
AP_HAL_Linux: rename RaspilotAnalogIn.cpp to AnalogIn_Raspilot.cpp
2016-01-11 15:56:20 -02:00
Lucas De Marchi
1fde473afc
AP_HAL_Linux: AnalogIn_IIO: normalize names
...
Use same name for file and classes, preferring AnalogIn_IIO over
IIOAnalogIn.
2016-01-11 15:44:24 -02:00
Lucas De Marchi
be2af0877c
AP_HAL_Linux: AnalogIn_IIO: formatting fixes
...
- remove trailing whitespaces
- use pragma 0 for header guard
2016-01-11 15:44:24 -02:00
Víctor Mayoral Vilches
8195631fac
HAL_Linux: AnalogIn_IIO update reopen_pin
2016-01-11 15:44:24 -02:00
Víctor Mayoral Vilches
b9c83da8c6
HAL_Linux: AnalogIn_IIO, replace reopen by select
...
A new select_pin method has been implemented and
set that changes solely the file descriptor (avoids
reopening the file every time we call set_pin).
2016-01-11 15:44:24 -02:00
Víctor Mayoral Vilches
da1b529415
HAL_Linux: AnalogIn_IIO add init_pins
...
initializes all the available analog
sources and stores the corresponding file descriptors
in fd_analog_sources.
2016-01-11 15:44:24 -02:00
Víctor Mayoral Vilches
546fbd1f25
HAL_Linux: mv AnalogIn_PXF to AnalogIn_IIO
...
Initial implementation used for the PXF moved for
a wider use. The implementation uses the Linux Industrial
I/O Subsystem (IIO) to get Analog Input.
2016-01-11 15:44:24 -02:00
Víctor Mayoral Vilches
4820e0b2c7
HAL_Linux: AnalogIn_PXF changes in AnalogIn
...
Recent changes in AP_HAL::AnalogIn have made the previous
code not valid anymore. This commit fixes the init()
method and adds common headers.
2016-01-11 15:44:24 -02:00
pkancir
c117b41188
AP_BattMonitor: add PXF default pins
2016-01-11 15:44:24 -02:00
pkancir
506db4eaf5
AP_HAL_Linux: add ADC support for PXF cape
2016-01-11 15:44:24 -02:00
Lucas De Marchi
0817fe6033
AP_HAL_Linux: default USE_FRAM to 0 for all boards
...
This disables FRAM usage in PXF and erleboard. The reason is it's
failing and not being used. Right now we get this on startup:
root@beaglebone:~# ./ArduCopter.elf
FRAM: Online
Storage: FRAM is getting reset to default values
Failed to read FRAM
Testing with valgrind also reveals some invalid memory reads. Let's
disable it for now to be common with other boards.
2016-01-11 15:44:24 -02:00
Lucas De Marchi
2a33b6bf33
AP_HAL_Linux: OpticalFlow: remove unneeded panic
...
There's already a panic() below.
2016-01-11 15:34:14 -02:00
Ricardo de Almeida Gonzaga
7adbccac9a
AP_HAL_Linux: add support for OpticalFlow to MinnowBoardMax
...
This commit adds support for OpticalFlow to MinnowBoardMax trying to
leave the OpticalFlow implementation as generic as it already is.
We had to add some format conversion and software crop to the cameras that
do not have this features.
2016-01-11 15:31:27 -02:00
Ricardo de Almeida Gonzaga
8aded390e7
AP_HAL_Linux: add yuyv_to_grey() and crop_8bpp() to VideoIn
...
Most cameras do not support NV12 or GREY formats, we are adding in this commit
a conversion from YUYV format, that seems pretty common in cameras, to GREY
format (since we do not use Cb and Cr data on OpticalFlow).
Also we are adding a software crop for 8bpp images, such as GREY format. For
the same reason, most cameras do not have support for overlaying (crop, resize
and so on).
These functions are being added in order to be used in the next commits,
where we will add support for OpticalFlow on MinnowBoardMax.
2016-01-11 15:31:27 -02:00
Ricardo de Almeida Gonzaga
27f909319e
AP_HAL_Linux: add get_pixel_formats() to VideoIn
...
This function is being added in order to be used in the next commits,
where we will add support for OpticalFlow on MinnowBoardMax.
2016-01-11 15:31:26 -02:00
Julien BERAUD
979184607d
OpticalFlow_Onboard: fix comment
...
Copy-paste mistake
2016-01-11 14:54:51 -02:00
Andrew Tridgell
097c2011e1
HAL_SITL: prevent abort on select with -1 fd
2016-01-10 21:26:35 +11:00
Andrew Tridgell
deb0b9c197
HAL_SITL: read in larger chunks
2016-01-10 17:43:01 +11:00
Andrew Tridgell
655f57ad01
HAL_SITL: cleanup class names
...
remove SITL prefix
2016-01-10 17:43:01 +11:00
Andrew Tridgell
492c733750
HAL_SITL: added RingBuffers to UART driver
...
makes for faster log download
2016-01-10 17:43:01 +11:00
Tom Pittenger
db8a2f7e8b
AP_TECS: changed land_spdwgt to be sliding scale
2016-01-09 13:25:02 +11:00
Tom Pittenger
89ce0b062b
AP_SpdHgtControl: added new path_propportion var
2016-01-09 13:25:02 +11:00
Andrew Tridgell
ef151944b8
GCS_MAVLink: regenerate headers
2016-01-09 07:38:54 +11:00
Andrew Tridgell
ad59cb9f5c
AP_Mission: support VTOL_TAKEOFF and VTOL_LAND
2016-01-09 07:38:53 +11:00
Andrew Tridgell
712a45eb22
GCS_MAVLink: added VTOL_TAKEOFF and VTOL_LAND
2016-01-09 07:38:53 +11:00
Andrew Tridgell
b3bd83b1c6
AP_TECS: no underspeed when in VTOL
2016-01-09 07:38:52 +11:00
Andrew Tridgell
4f70ca22c1
AP_SpdHgtControl: added VTOL flight stage
2016-01-09 07:38:52 +11:00
Andrew Tridgell
b187a0c6eb
AP_Motors: added quadplane frame type
...
this puts the motors on outputs 5 to 8, to leave the first 4 for the
plane
2016-01-09 07:38:51 +11:00
Andrew Tridgell
22e25cc792
HAL_SITL: added Flightaxis support
2016-01-09 07:38:51 +11:00
Andrew Tridgell
7a7bd0607f
SITL: first version of FlightAxis SITL support
2016-01-09 07:38:51 +11:00
Andrew Tridgell
76e3ae190a
GCS_MAVLink: partial merge of common.xml from upstream
2016-01-09 07:38:51 +11:00
Randy Mackay
b742ee9cfb
AP_Motors: fix example sketch
2016-01-08 18:36:47 +09:00
Michael du Breuil
8c9eafeb3c
AP_GPS: Fix param docs that had incorrect spaces
...
The spaces between values aren't stirpped by the autodoc tool that generates the XML files
2016-01-08 20:17:54 +11:00
Randy Mackay
8c7f36563c
AC_AttControl: bug fix to angle_boost reporting
...
Thanks to OXINARF for finding this
2016-01-08 10:48:59 +09:00
Michael Oborne
a42b286c01
AP_GPS_SBF: update logging based on vendor recommendation.
2016-01-08 10:47:05 +11:00
Andrew Tridgell
b54bb757df
AP_Param: fixed flymaple build
2016-01-08 10:33:45 +11:00
mirkix
1744bc0850
AP_Notify: Use display with bbbmini
2016-01-07 14:32:56 -02:00
mirkix
2457558624
AP_Notify: Add display support
2016-01-07 14:32:56 -02:00
mirkix
dee20a31f1
AP_Notify: Add gps_num_sats
2016-01-07 14:32:56 -02:00
Lucas De Marchi
a803cfd1e8
AP_HAL_Linux: RCInput: use GPIO5 for PPMSUM in bhat
2016-01-07 10:28:16 -02:00
Lucas De Marchi
321803919c
Revert "AP_HAL_Linux: support PWM input for BH hat"
...
This reverts commit 8cca0beba9
.
The PWM input using the RPI DMA is causing trouble with RPI boards using
PPMSUM. Let's revert it until the solution is found. We still leave the
ifdef in RCInput for BH hat.
2016-01-07 10:27:07 -02:00
Randy Mackay
c829ec0c2c
AC_PrecLand: add missing parameter description
...
Thanks to Thomas Stone for finding this
2016-01-07 17:35:18 +09:00
Jonathan Challinger
8fdbb36827
AP_BattMonitor: add is_powering_off
2016-01-07 15:14:07 +09:00
Randy Mackay
5ddd332277
AC_AttControl: add ANGLE_BOOST param
...
This allows disabling angle boost
2016-01-07 12:31:52 +09:00
Randy Mackay
6c458b07cb
MotorsHeli_RSC: resolve compiler warning re init order
2016-01-07 12:31:49 +09:00
Randy Mackay
f6b909d0a5
AHRS_NavEKF: resolve compiler warning re signed vs unsigned comparison
2016-01-07 12:31:47 +09:00
Tom Pittenger
70a45680ed
AP_TECS: fixed param desc for TECS_LAND_THR
2016-01-07 09:36:54 +11:00
Andrew Tridgell
415d800957
AP_Param: use get_custom_defaults_file()
2016-01-07 09:09:54 +11:00
Andrew Tridgell
b4cc3d9668
HAL_SITL: implement get_custom_defaults_file()
2016-01-07 09:09:40 +11:00
Andrew Tridgell
5f4bd10477
AP_HAL: added get_custom_defaults_file() to Util
2016-01-07 09:09:09 +11:00
Andrew Tridgell
f8b52c6a67
AP_AHRS: try to start EKF2 slightly before EKF2
...
this gives priority to EKF2 on memory
2016-01-07 08:34:32 +11:00
Andrew Tridgell
a6c39dee84
AP_NavEKF: don't allocate EKF1 unless it will leave 4k free memory
2016-01-07 08:33:33 +11:00
Andrew Tridgell
9188670e03
AP_TECS: added get_height_rate_demand() call
2016-01-06 22:47:38 +11:00
Andrew Tridgell
a07a8aece1
RC_Channel: added pwm_to_angle_dz_trim()
2016-01-06 22:47:21 +11:00
Andrew Tridgell
7c9ee9363b
AP_Motors: added rc_map_mask() function
2016-01-06 22:09:40 +11:00
Andrew Tridgell
dfccf8f713
AP_Motors: also wrap set_freq and enable_ch for motor mapping
2016-01-06 22:09:40 +11:00
Andrew Tridgell
77af00c5e1
AP_Motors: allow arbitrary mapping of channels on multirotors
...
using RCn_FUNCTION with motor1, motor2 etc
2016-01-06 22:09:40 +11:00
Andrew Tridgell
2777ff63ba
SITL: heli-sim: prevent ground rotation and reduced affect of ground impact
2016-01-06 21:59:56 +11:00
Paul Riseborough
e80fb8b3fa
AP_NavEKF2: Improve non-GPS in-flight attitude accuracy
...
The non-GPS mode was not being activated for small height gains - eg indoor flight.
The incorrect innovation consistency check was being applied to the synthetic velocity observations.
2016-01-06 20:49:21 +11:00
Andrew Tridgell
a3d781bf3f
GCS_MAVLink: fixed a valgrind error
2016-01-06 19:54:00 +11:00
Andrew Tridgell
0e8dbe92f0
GCS_MAVLink: fixed string overrun found by asan
2016-01-06 19:53:14 +11:00
Andrew Tridgell
519afc7a06
HAL_PX4: debug code for FRAM corruption
2016-01-06 19:16:16 +11:00
Andrew Tridgell
9941c91d36
RC_Channel: prevent a warning message for assigned RC channels
2016-01-06 19:16:12 +11:00
Andrew Tridgell
6c064ae8bd
HAL_SITL: flow control is enabled on SITL
...
faster parameter download
2016-01-06 19:16:08 +11:00
Andrew Tridgell
68a46bc1ff
GCS_MAVLink: use AP_Param::count_parameters()
2016-01-06 14:44:37 +11:00
Andrew Tridgell
93f0707679
AP_Param: added count_parameters() API
...
this auto-clears when an ENABLE parameter changes
2016-01-06 14:44:34 +11:00
Peter Barker
ff8008d81a
DataFlash: remove unused callbacks, unimplemented functions
...
Closes #3269
2016-01-05 17:08:07 -02:00
Víctor Mayoral Vilches
d73fc4c0b2
AP_Notify: Add PXFmini support
2016-01-05 15:35:56 -02:00
Víctor Mayoral Vilches
fa3dad928b
HAL_Linux: Add PXFmini to Linux_Class
2016-01-05 15:35:56 -02:00
Víctor Mayoral Vilches
e1de1f5f80
HAL_Linux: Util, add PXFmini support
2016-01-05 15:35:56 -02:00
Víctor Mayoral Vilches
e493bfcae4
AP_InertialSensor: add PXFmini support
2016-01-05 15:35:56 -02:00
Víctor Mayoral Vilches
a0b9181198
HAL_Linux: Scheduler add PXFmini support
2016-01-05 15:35:55 -02:00
Víctor Mayoral Vilches
1c49b086eb
HAL_Linux: SPIDriver add PXFmini support
2016-01-05 15:35:55 -02:00
Lucas De Marchi
e0d19dc87d
AP_HAL_Linux: RCInput_RPI: fix coding style
2016-01-05 15:35:34 -02:00
Víctor Mayoral Vilches
fdf490dad1
HAL_Linux: RCInput support for PXFmini
2016-01-05 15:34:50 -02:00
Lucas De Marchi
4e883e033f
AP_HAL_Linux: GPIO: remove ifdef comment
...
It just clutters the source code and review process when a new similar
board is added.
2016-01-05 15:34:49 -02:00
Víctor Mayoral Vilches
8ce8045033
HAL_Linux: GPIO, add support for PXFmini
2016-01-05 15:31:43 -02:00
Víctor Mayoral Vilches
0aee50b99e
HAL: Add PXFmini board
2016-01-05 15:31:43 -02:00
Andrew Tridgell
ea823a818c
AP_AHRS: enable EKF2 by default in AHRS
2016-01-05 16:42:01 +11:00
Andrew Tridgell
a0a4b698f6
AP_NavEKF: disable EKF1 by default
...
use EKF2 instead
2016-01-05 16:41:48 +11:00
Andrew Tridgell
c34626ec4e
AP_NavEKF2: automatically cut back EK2_IMU_MASK to suit number of IMUs
2016-01-05 16:40:43 +11:00