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
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
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
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
9aa49cda93
Global: remove system_initializing() from scheduler
...
This is not used anymore.
2016-02-12 23:42:34 -02:00
mirkix
f777a25de8
AP_HAL: Enable optical flow onboard for BBBMINI
2016-02-08 08:52:10 -02:00
Lucas De Marchi
9d5fb97819
Global: rename enum SPIDevice to SPIDeviceType
...
Free the SPIDevice name so to have a consistent name for I2C/SPI device
classes.
2016-02-01 14:18:50 -02:00
Peter Barker
f0c165f0e4
AP_HAL: ensure CONFIG_MAIN_WITHOUT_ARGC_ARGV is always defined
2016-01-30 12:48:51 -02:00
Gustavo Jose de Sousa
c2e3f05dbf
waf: ardupilotwaf: prefix build context methods with ap_
...
It helps to distinguish between things from waf and things from ardupilotwaf.
2016-01-22 20:10:29 -02:00
Gustavo Jose de Sousa
3d22490397
waf: examples: use methods from bld instead of ardupilotwaf
2016-01-22 20:10:29 -02:00
Julien BERAUD
d5c4917bcd
AP_HAL: add default support for timesliced timers
...
To keep compatibility
2016-01-18 16:57:48 -02: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
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
Andrew Tridgell
5f4bd10477
AP_HAL: added get_custom_defaults_file() to Util
2016-01-07 09:09:09 +11:00
Víctor Mayoral Vilches
0aee50b99e
HAL: Add PXFmini board
2016-01-05 15:31:43 -02:00
Jonathan Challinger
d7639ce03a
AP_HAL: fix example build
2015-12-29 10:46:35 -08:00
Andrew Tridgell
dafc9b4c6b
AP_HAL: allow getopt_cpp on QURT
...
avoid using stderr
2015-12-29 19:10:46 +11:00
Andrew Tridgell
bd2f548130
AP_HAL: allow argc and argc on QURT
2015-12-29 18:52:17 +11:00
Lucas De Marchi
97022a4161
AP_HAL: RingBuffer: fix macro expansion
...
Fix warning that reveals a real bug:
In file included from libraries/AP_HAL_Linux/UARTDriver.cpp:25:0:
libraries/AP_HAL_Linux/UARTDriver.cpp: In member function 'virtual bool Linux::UARTDriver::tx_pending()':
libraries/AP_HAL/utility/RingBuffer.h:21:35: warning: logical not is only applied to the left hand side of comparison [-Wlogical-not-parentheses]
#define BUF_EMPTY(buf) buf##_head == buf##_tail
^
libraries/AP_HAL_Linux/UARTDriver.cpp:355:13: note: in expansion of macro 'BUF_EMPTY'
return !BUF_EMPTY(_writebuf);
The problem is when there's a ! operator: without the parenthesis we would actually be doing
return !_write_buf_head == _write_buf_tail
which is not what we want.
2015-12-28 21:50:27 -02:00
Andrew Tridgell
c90d7dd86e
AP_HAL: fixed vprintf segfault
2015-12-28 08:44:40 +11:00
Lucas De Marchi
a096703b06
Global: don't link with AP_Progmem
...
AP_Progmem is not used anymore.
2015-12-27 15:58:12 -02:00
Lucas De Marchi
520b0384fd
AP_HAL: remove unused in_progmem flag to print_vprintf
2015-12-27 15:58:12 -02:00
Lucas De Marchi
8e0c125f56
AP_HAL: print_vprintf: follow coding style
...
- Use 4 spaces to indent
- Add braces to control statements
- Don't use tabs
2015-12-27 15:58:12 -02:00
Lucas De Marchi
c35730058a
AP_HAL: print_vprintf: stop using Progmem.h
...
Remove the unused support to data from progmem, including the unused %S
format specifier.
2015-12-27 15:58:12 -02:00
Lucas De Marchi
29ed01189d
AP_HAL: ftoa_engine: replace tabs with spaces
2015-12-27 15:58:12 -02:00
Lucas De Marchi
e751d632e6
AP_HAL: ftoa_engine: stop using Progmem.h
2015-12-27 15:58:12 -02:00
Andrew Tridgell
7c431b40f2
AP_HAL: enable HAL_QURT
2015-12-27 16:21:25 +11:00
Andrew Tridgell
cfd54c5683
AP_HAL: moved dsm implementation into AP_HAL/utility
2015-12-27 16:12:27 +11:00
Andrew Tridgell
fec9ffd1a0
AP_HAL: support UARTs on timer thread
...
This adds a macro for boards that need to have UARTs on the timer
thread instead of their own thread. This is needed for the qflight
port due to restrictions in the RPC API
2015-12-27 16:12:27 +11:00
Andrew Tridgell
ac1e75ae77
AP_HAL: added qflight linux subtype
2015-12-27 16:12:27 +11:00
Julien BERAUD
0ffba07ec8
AP_HAL: Set default params for Bebop
2015-12-23 10:24:04 -02:00
Aaron Wang Shi
c7a77af47f
AP_HAL: add BH HAT board info
2015-12-21 15:54:30 +11:00
Andrew Tridgell
9d4b31ca3c
AP_HAL: added a new_semaphore() interface to Util
2015-12-20 17:55:39 +11:00
Andrew Tridgell
ec6a679482
AP_HAL: added ByteBuffer and ObjectBuffer in RingBuffer
...
much better API than old macros
2015-12-20 07:33:54 +11:00
Julien BERAUD
eccef24fa7
AP_HAL: Add optical flow params for bebop
...
Params that are necessary for optical flow
2015-12-18 17:56:05 +11:00
Lucas De Marchi
c7668479bb
AP_HAL: follow coding style
2015-12-18 17:56:03 +11:00
Julien BERAUD
2b681f2f13
AP_HAL: Add support for an Optflow driver
...
This is meant to be used for onboard optical flow
2015-12-18 17:56:03 +11:00
Lucas De Marchi
f69208d47d
AP_HAL: remove state leftover from SPIDeviceDriver
...
This was previously used to allow to save a state in a SPIDriver so we
could synchronize the initialization of AP_Compass and
AP_InertialSensor.
It was only used by MPU9250 and is not used anymore since the move to
AuxiliaryBus initialization and it's not used anymore since c3dae6f
("AP_InertialSensor: MPU9250: Remove methods not used anymore")
2015-12-08 11:10:23 +11:00
Lucas De Marchi
a1c3912bd8
AP_HAL: remove unused AP_ADC_AnalogSource
2015-12-03 13:32:43 +11:00
Caio Marcelo de Oliveira Filho
6e7b73610d
waf: add waf support
2015-12-03 07:54:30 +11:00
Lucas De Marchi
036eb21c09
AP_HAL: remove init() method with unused argument
2015-12-02 14:49:12 -02:00
Lucas De Marchi
6bc07da0ee
AP_HAL: use init() method without arguments
...
Override the init() method from parent class that doesn't have a
parameter since it's not used here.
2015-12-02 14:42:37 -02:00
Lucas De Marchi
6b1c5e6f72
AP_HAL: add init() method without argument
...
The argument in init() is not used by any implementation. Add a second
method without it so the HAL implementation can used it instead. Later
the unused method will be removed.
2015-12-02 14:21:58 -02:00