Lucas De Marchi
79b004cf6a
AP_HAL_Linux: add prototype for handling SoloLink
...
This allows to use a Solo controller to control Linux-based flight
controllers. The protocol has been derived by analyzing a tcpdump
trace: some fields are ignored. Example trace of RC data (obtained
with `tshark -T fields -e data -n -c 5 -r rc.pcap`
unkonwn seq ch1 ch2 ch3 ... ch8
5fa8 f441 3414 0500 73d7 dc05 dc05 dc05 db05 e803 e803 e803 f401
73f6 f441 3414 0500 74d7 dc05 dc05 dc05 db05 e803 e803 e803 f401
dc44 f541 3414 0500 75d7 dc05 dc05 dc05 db05 e803 e803 e803 f401
bc92 f541 3414 0500 76d7 dc05 dc05 dc05 db05 e803 e803 e803 f401
dfe0 f541 3414 0500 77d7 dc05 dc05 dc05 db05 e803 e803 e803 f401
8 years ago
Peter Barker
23d91c93c8
AP_HAL_Linux: correct compilation warning
...
../../../libraries/AP_HAL_Linux/RCInput_RPI.cpp:129:35: warning: ignoring return value of ‘ssize_t read(int, void*, size_t)’, declared with attribute warn_unused_result [-Wunused-result]
::read(file, &pageInfo, 8);
8 years ago
Lucas De Marchi
5ea1784838
global: remove AP_HAL::in_timerprocess()
...
This is not used and in the only places it would make sense would be
internally to the scheduler so remove it.
8 years ago
Lucas De Marchi
93a558ce5c
AP_HAL_Linux: do not call delay callbacks on other threads
...
If a thread other than the main one calls Scheduler::delay() we could
end up triggering the call of delay callbacks. Those should only ever
happen on the main thread.
8 years ago
Lucas De Marchi
c170c2a847
AP_HAL_Linux: remove register_timer_process with extra arg
...
This is not used anymore.
8 years ago
Lucas De Marchi
0a158f6d3f
AP_HAL_Linux: remove support for timesliced timer
...
This has long been replaced by the bus per thread scheme.
8 years ago
Siddharth Bharat Purohit
d1e0f9733e
HAL_Linux: use correct datatype for time conversion
8 years ago
Andrew Tridgell
9868ffe13b
HAL_Linux: support receiver based RSSI
8 years ago
Lucas De Marchi
ee0f46e3aa
AP_HAL_Linux: RCInput_RPI: ignore unwanted signals
...
We are setting a termination handler for some signals which are of not
interest. Just ignore them. Ignoring SIGWINCH allows for example to
run on a screen and change the window size later without killing
ardupilot.
8 years ago
Lucas De Marchi
e803045d1f
AP_HAL_Linux: Scheduler: increase stack for scheduler threads
...
RPI-based boards that use RCInput_RPI need more stack space otherwise we
end up with stack corruption. This leads to crash particularly when also
using GPIO_RPI since it may change what that driver is poking on memory.
This increases stack size to 1M which is overkill for most of other
boards with a more controllable stack usage. However this exposes that
on multiple different HWs a single point for stack size decision may not
be the best. This can be improved in future.
8 years ago
Peter Barker
c78f3b9e78
AP_HAL_Linux: use HAL_SEMAPHORE_BLOCK_FOREVER macro
8 years ago
Andrew Tridgell
279c1b9d9c
AP_HAL_Linux: rename macros to avoid conflicts
...
these macros were also defined in NuttX in clock.h
8 years ago
Peter Barker
5a02219642
AP_HAL_Linux: use HAL_SEMAPHORE_BLOCK_FOREVER
8 years ago
Andrew Tridgell
9b297ef5a1
HAL_Linux: fixed nested cork/push
...
don't generate extra pulse sets if we nest
8 years ago
Lucas De Marchi
875538ccb5
AP_HAL_Linux: examples: small fixes to BusTest
...
- Fix char allocation
- Fix coding style
- Fix accessing dev->bus_type(): it's a function
8 years ago
hiro2233
0d1d430600
AP_HAL_Linux:examples: Example to test device bus with the new APM API.
8 years ago
hiro2233
be06c1e8ed
AP_HAL_Linux:SPIDevice: Add functions to get possible spi registered device
8 years ago
Lucas De Marchi
16c1bc1b0e
AP_HAL_Linux: Util: fix coding style for pointers
8 years ago
Lucas De Marchi
9aa2a3938c
AP_HAL_Linux: Util: make get_custom_log_directory const override final
...
While at it, add final and override to mark this as being the overriden
final implementation of this method.
Thanks to Phillip Khandeliants (@khandeliants ) for reporting.
8 years ago
Lucas De Marchi
008e631147
AP_HAL_Linux: Util: fix overriden function signature
...
While at it, add final and override to mark this as being the overriden
final implementation of this method.
Thanks to Phillip Khandeliants (@khandeliants ) for reporting.
8 years ago
Lucas De Marchi
6f952fe3dd
AP_HAL_Linux: fix checking wrong value for pthread function
...
Thanks to Phillip Khandeliants (@khandeliants ) for reporting.
8 years ago
Pierre Kancir
8d357983ee
AP_HAL_LINUX: example fix travis warning
...
missing function declaration
implicit cast
some style fix
8 years ago
davidaroyer
512cd11125
AP_HAL_Linux: RCOutput_ZYNQ: check for valid channel
8 years ago
Eugene Shamaev
7831a85f1c
AP_HAL_Linux: definitions for CAN bus
8 years ago
mirkix
9e1345453f
AP_HAL_Linux: BBBmini remove onboard OpticalFlow
8 years ago
Lucas De Marchi
32d208dbe8
AP_HAL_Linux: move check for _split_transfers
...
This is likely not true, so allow not to check the other conditions.
Also remove comment since this is going to be added to the method.
8 years ago
Andrew Tridgell
a2e445cf24
HAL_Linux: implement set_split_transfers() API for I2C
8 years ago
murata
eb4d8963d0
AP_HAL_Linux: Change from magic number 0 to definition name.
8 years ago
murata
30bbe7abb6
AP_HAL_Linux: Unify from print or println to printf.
8 years ago
mirkix
6d99bb0937
AP_HAL_Linux: Add BeagleBone Blue to GPIO_BBB
8 years ago
mirkix
954267fc22
AP_HAL_Linux: Add BeagleBone Blue to RCInput_AioPRU
8 years ago
mirkix
d16ab890e8
AP_HAL_Linux: Add BealgeBone Blue
8 years ago
mirkix
ad7e21b860
AP_HAL_Linux: fix compiler warning in AnalogIn_IIO
8 years ago
Mathieu OTHACEHE
7c96f8e6a2
AP_HAL_Linux: rename APM to ardupilot.
...
This rename should have happened here:
fdb2a9c99b
but was forgotten.
8 years ago
Julien Beraud
710875d3b9
OpticalFlow_Onboard: remove gyro cb
...
Not used anymore
8 years ago
Julien Beraud
59404f686d
OpticalFlow_Onboard: add gyro integration support
...
Integrate the gyro values pushed by the inertial sensor backend using
bias values sent by EKF.
Use the unblocking RingBuffer to avoid locking the callers.
8 years ago
Lucas De Marchi
c27c414e5a
AP_HAL_Linux: Led_Sysfs: small fixes
...
- avoid trying to close fd when it's -1
- Keep includes sorted
- AP_HAL::panic() doesn't need \n terminator
- %u requires unsigned type
- #pragma once is the first thing on a header
8 years ago
Mathieu OTHACEHE
7d4d14a409
AP_HAL_Linux: add Led_Sysfs class.
...
Add a class to control leds via linux sysfs API.
8 years ago
Julien Beraud
0d4ca03dcd
AP_HAL_Linux: init SPIDevice speed by default
...
Else a speed of 0 will be sent at each transfer.
Behaviour has changed when introducing SPIDevice
8 years ago
Lucas De Marchi
5472bc4de1
Global: change Device::PeriodicCb signature
...
Remove bool return as it's never being used and not supported on PX4.
8 years ago
Lucas De Marchi
b910f230fb
AP_HAL_Linux: RCInput: replace volatile with atomic
8 years ago
Andrew Tridgell
0a18f5e7b2
HAL_Linux: fixed a bug in RCInput::new_input
...
when a library called read() it would clear the new input flag, which
would cause new_input() in the main loop to return false. This could
trigger a false RC failsafe.
8 years ago
Lucas De Marchi
b0ddf81687
Remove stdbool.h include for C++ sources
...
This header is not needed in our C++ sources.
8 years ago
Ivan Smirnov
d4d35bdcbd
AP_HAL_Linux: Scheduler: added _timer_tick for uartD
8 years ago
Lucas De Marchi
f9b0f9164a
AP_HAL_Linux: add TODO to AnalogIn_Raspilot
...
This is especially bad for raspilot since it has a spi bus shared for
all the peripherals.
8 years ago
Andrew Tridgell
6f82ec0642
HAL_Linux: convert RASPilot drivers to thread per bus
8 years ago
Lucas De Marchi
504de3ea9e
AP_HAL_Linux: RCInput_RPI: fix whitespaces
...
Also add/change some minor coding style issues, reducing scope of
variables.
8 years ago
Lucas De Marchi
aadc1643fc
AP_HAL_Linux: reduce speed of MPU* devices
...
After introducing the temperature check we are resetting the fifo
several times due to difference in temperature.
8 years ago
Lucas De Marchi
8d3361cef4
AP_HAL_Linux: RCInput_RPI: fix using Util class on constructor
...
Program received signal SIGSEGV, Segmentation fault.
0x000b8760 in Linux::UtilRPI::get_rpi_version() const ()
(gdb) bt
#0 0x000b8760 in Linux::UtilRPI::get_rpi_version() const ()
#1 0x000b57ac in Linux::RCInput_RPI::RCInput_RPI() ()
#2 0x0000acfc in _GLOBAL__sub_I__ZN9HAL_LinuxC2Ev ()
#3 0x000e1600 in __libc_csu_init ()
#4 0x76cad228 in __libc_start_main (main=0x7efff774, argc=1994186752,
argv=0x76cad228 <__libc_start_main+168>, init=0xe15b4 <__libc_csu_init>,
fini=0xe1614 <__libc_csu_fini>, rtld_fini=0x76fdf464 <_dl_fini>,
stack_end=0x7efff774) at libc-start.c:246
#5 0x0000afa4 in _start ()
8 years ago
Peter Barker
cf5ed25c9e
AP_HAL_Linux: do not attempt realtime when compiling Replay
8 years ago