Tom Pittenger
d713d57904
AP_HAL_Linux: update software license referencing UAVCAN submodule
2018-01-17 07:24:17 -08:00
Nikita Tomilov
3ac2e4e8c5
AP_HAL_Linux: CAN: _pollRead no more than 100 iterations
...
This adds a counter here to only loop to a maximum number of iterations.
Now we avoid situations in which we would be stuck processing packets here.
This also adds some other meaningful defines
2018-01-17 07:24:17 -08:00
Nikita Tomilov
43bfcbc8e2
AP_HAL_Linux: CAN: Rename CANDriver -> CANManager
2018-01-17 07:24:17 -08:00
Nikita Tomilov
d0fc481202
AP_HAL_Linux: CAN: Rename Linux::LinuxCAN -> Linux::CAN
2018-01-17 07:24:17 -08:00
Alexey Bulatov
e0acbd3e53
AP_HAL_LINUX: Add CAN to timer_task
2018-01-17 07:24:17 -08:00
Alexey Bulatov
606eb05c95
AP_BoardConfig: Linux CAN initialisation
2018-01-17 07:24:17 -08:00
Nikita Tomilov
a50e6c6dd7
AP_HAL: board: linux: Add default CAN interface name
2018-01-17 07:24:17 -08:00
Nikita Tomilov
b6665f7e58
AP_HAL_Linux: CAN: get rid of RaiiCloser
2018-01-17 07:24:17 -08:00
Alexey Bulatov
976500960f
AP_HAL_LINUX: Add CAN driver
2018-01-17 07:24:17 -08:00
Alexey Bulatov
09de8e852d
AP_HAL: Make methods get_UAVCAN and set_UAVCAN pure
2018-01-17 07:24:17 -08:00
Dylan Herman
85e1f9f9f6
AP_SmartRTL: attempts to set home in update
...
update will continuously attempt to set SmartRTL home as long as
position is ok and home has not be set. Updated examples to use set_home.
2018-01-17 11:03:33 +09:00
Andrew Tridgell
8fea99e1da
HAL_Linux: use calloc in preferance to malloc
2018-01-17 11:22:05 +11:00
Andrew Tridgell
3f5534eed5
AP_HAL: use calloc in preferance to malloc
2018-01-17 11:22:05 +11:00
Andrew Tridgell
f6138e3c91
HAL_ChibiOS: use calloc in preferance to malloc
2018-01-17 11:22:05 +11:00
Andrew Tridgell
20d75f52c2
AP_Compass: use calloc in preferance to malloc
2018-01-17 11:22:05 +11:00
Andrew Tridgell
c9deabc283
DataFlash: use calloc in MAVLink backend
2018-01-17 11:22:05 +11:00
Andrew Tridgell
8dae3fe59b
HAL_ChibiOS: use calloc for malloc type
...
this is not strictly necessary on ChibiOS as we already override
malloc, but will keep static analysis happy
2018-01-17 11:22:05 +11:00
Andrew Tridgell
a99b690d49
HAL_PX4: use calloc for malloc_type()
...
this ensures that EKF memory is zero on start
2018-01-17 11:22:05 +11:00
Andrew Tridgell
4322ef7ca4
AP_HAL: prevent valgrind errors in EKF
...
ensure that EKF memory is zero on start
2018-01-17 11:22:05 +11:00
Randy Mackay
094620bc8a
AC_WPNav: pass dt to avoidance
2018-01-16 12:13:48 +09:00
Leonard Hall
f48b14b810
AC_Avoidance: accept dt and pass to sqrt controller
2018-01-16 12:13:48 +09:00
Leonard Hall
b9ed8b292a
AC_PosControl: pass dt to att control sqrt_controller
2018-01-16 12:13:48 +09:00
Leonard Hall
62cc25022c
AC_AttitudeControl: protect against overshoot in sqrt controller
2018-01-16 12:13:48 +09:00
Leonard Hall
75de0cb4ef
AC_AttitudeControl: sqrt_controller accepts dt
2018-01-16 12:13:48 +09:00
Leonard Hall
0a10deb3f7
AP_Motors: Fix gain scaling on Throttle Average Max and reduce additional gain on low throttle for Single and Coax.
2018-01-16 11:50:30 +09:00
Andrew Tridgell
7ca3b56886
HAL_ChibiOS: fixed STM32F405 typos
2018-01-16 09:46:30 +11:00
Andrew Tridgell
b6f3db44d8
DataFlash: log health and primary for airspeed
2018-01-16 07:14:20 +11:00
Andrew Tridgell
5846558b0e
AP_Baro: moved constants to AP_Math/definitions.h
2018-01-16 07:14:20 +11:00
Andrew Tridgell
ee1fea55ce
AP_Math: moved constants from AP_Baro
2018-01-16 07:14:20 +11:00
Andrew Tridgell
8bb0ad7f3a
AP_Arming: check all airspeed sensors are healthy
2018-01-16 07:14:20 +11:00
Andrew Tridgell
bbcda11afe
DataFlash: log both airspeed sensors
2018-01-16 07:14:20 +11:00
Andrew Tridgell
58b0ac07ec
AP_Airspeed: support dual airspeed sensors
...
allow for a primary and secondary airspeed sensor
2018-01-16 07:14:20 +11:00
rde-mato
87e3777f67
AP_Airspeed: added SDP3X airspeed sensor driver
2018-01-16 07:14:20 +11:00
rde-mato
787420931e
AP_Baro: make AP_Baro a singleton
...
for AP_Airspeed
2018-01-16 07:14:20 +11:00
Andrew Tridgell
e120e912f1
HAL_ChibiOS: moved board defines to hwdef.dat
2018-01-15 11:46:02 +11:00
Andrew Tridgell
d2c04aa649
AP_HAL: moved board defines to hwdef.dat
2018-01-15 11:46:02 +11:00
Andrew Tridgell
f8542c86b6
AP_Terrain: added support for AP_Terrain for ChibiOS
2018-01-15 11:46:02 +11:00
Andrew Tridgell
2773b17fad
AP_HAL: added support for AP_Terrain for ChibiOS
2018-01-15 11:46:02 +11:00
Andrew Tridgell
e2a65c8c60
HAL_ChibiOS: added support for AP_Terrain for ChibiOS
2018-01-15 11:46:02 +11:00
Andrew Tridgell
cde930f5c8
HAL_ChibiOS: added skyviper-v2450 hwdef config
2018-01-15 11:46:02 +11:00
Andrew Tridgell
c8beddf1e4
HAL_ChibiOS: allow for includes in hwdef.dat files
...
this allows creation of derived boards
2018-01-15 11:46:02 +11:00
Andrew Tridgell
2929b3dbb1
HAL_ChibiOS: allow builds on systems with no SDIO
2018-01-15 11:46:02 +11:00
Andrew Tridgell
7b0eccc309
HAL_ChibiOS: updated skyviper-f412 hwdef.dat
2018-01-15 11:46:02 +11:00
Andrew Tridgell
60a773d045
HAL_ChibiOS: removed duplicate defines
2018-01-15 11:46:02 +11:00
Andrew Tridgell
ff87d27143
AP_BoardConfig: fixed return of get_pwm_count()
...
thanks to Michael for noticing
2018-01-15 11:46:02 +11:00
Andrew Tridgell
ef1a14cc6c
HAL_ChibiOS: fixed 5V analog scale on fmuv4 and mindpx-v2
2018-01-15 11:46:02 +11:00
Andrew Tridgell
867e7ebf71
HAL_ChibiOS: auto-generate GPIO table from hwdef.dat
2018-01-15 11:46:02 +11:00
Andrew Tridgell
fbe8166c71
HAL_ChibiOS: auto-generate AnalogIn pin table
2018-01-15 11:46:02 +11:00
Andrew Tridgell
f14a847b97
HAL_ChibiOS: rename classes to remove 'Chibi'
...
it is redundent as all classes are in ChibiOS namespace, and makes the
code harder to read
2018-01-15 11:46:02 +11:00
Andrew Tridgell
25b68dc150
HAL_ChibiOS: switch base freq when needed
...
timers can't do below 123 Hz with a clock of 8MHz, so we need to
change clock frequency based on the target period
2018-01-15 11:46:02 +11:00
Andrew Tridgell
ff3b0ec1bd
AP_IOMCU: added set_default_rate method
2018-01-15 11:46:02 +11:00
Andrew Tridgell
738d70ef02
HAL_ChibOS: fixed handling of disabled channels
2018-01-15 11:46:02 +11:00
Andrew Tridgell
320ada2002
AP_IOMCU: fixed crash with BRD_IO_ENABLE=0
2018-01-15 11:46:02 +11:00
Andrew Tridgell
2978649cd4
waf: moved to generated loader script
2018-01-15 11:46:02 +11:00
Andrew Tridgell
6e4ef32628
HAL_ChibiOS: moved to generated loader script
2018-01-15 11:46:02 +11:00
Andrew Tridgell
9482ab1840
waf: use common makefile for ChibiOS if no custom present
2018-01-15 11:46:02 +11:00
Andrew Tridgell
bae9469af7
HAL_ChibiOS: use a common makefile and board.c
...
allow for custom files per board if supplied, but don't require them
for every board
2018-01-15 11:46:02 +11:00
Andrew Tridgell
d17e9f321a
HAL_ChibOS: fixed mixture of brushed and normal PWM
...
allow non-brushed PWM servos with brushed main motors
2018-01-15 11:46:02 +11:00
Andrew Tridgell
c639708e22
HAL_ChibOS: auto-generate full PWM config
...
use PWM markers in hwdef.dat to mark each PWM channel
2018-01-15 11:46:02 +11:00
Andrew Tridgell
b741c6c29e
AP_Compass: fixed build error on ChibiOS
2018-01-15 11:46:02 +11:00
Andrew Tridgell
daa9eec836
HAL_ChibiOS: auto-configure timer channels
...
allow for one marked PPMIN for input
2018-01-15 11:46:02 +11:00
Andrew Tridgell
d65ec2ada7
HAL_ChibiOS: moved more headers to common
...
allow customisation, but don't require every port to copy the defaults
2018-01-15 11:46:02 +11:00
Andrew Tridgell
960bc40ff3
HAL_ChibiOS: moved to a common mcuconf.h
2018-01-15 11:46:02 +11:00
Andrew Tridgell
48d2704cf4
HAL_ChibiOS: CS pins don't need to be a single SPI BUS
...
its possible to use a CS pin on different buses, so they should not
have a particular bus tag
2018-01-15 11:46:02 +11:00
Andrew Tridgell
a554215576
HAL_ChibiOS: start to cope with not having I2C, SPI and UARTs
2018-01-15 11:46:02 +11:00
Andrew Tridgell
f5c8754d75
HAL_ChibiOS: use ARRAY_SIZE_SIMPLE
...
this allows for boards without a device type (eg. no SPI bus)
2018-01-15 11:46:02 +11:00
Andrew Tridgell
7aeab8f5a8
AP_Common: added ARRAY_SIZE_SIMPLE()
...
this works with zero length arrays
2018-01-15 11:46:02 +11:00
Andrew Tridgell
468cadca45
HAL_ChibiOS: auto-generate UART driver declarations
2018-01-15 11:46:02 +11:00
Andrew Tridgell
8e87c30a33
AP_Compass: fixed MindPX-v2 compass orientations
2018-01-15 11:46:02 +11:00
Andrew Tridgell
8ab35e8aca
AP_InertialSensor: fixed MindPX-v2 orientation of IMU2
2018-01-15 11:46:02 +11:00
Andrew Tridgell
58796ff435
HAL_Chibios: moved SPI device tables to hwdef.dat
2018-01-15 11:46:02 +11:00
Andrew Tridgell
d1f93cd66c
HAL_Chibios: auto-generate I2C, SPI and UART device lists
...
this is less error prone and make a port faster as more information is
in hwdef.dat
2018-01-15 11:46:02 +11:00
Andrew Tridgell
c80149123f
AP_HAL: use hwdef.h for config options in chibios
2018-01-15 11:46:02 +11:00
Andrew Tridgell
dcab40459d
AP_InertialSensor: support MindPX-v2
2018-01-15 11:46:02 +11:00
Andrew Tridgell
8699b6233a
AP_HAL: support MindPX-v2
2018-01-15 11:46:02 +11:00
Andrew Tridgell
36a141f9f1
AP_Compass: support MindPX-v2
2018-01-15 11:46:02 +11:00
Andrew Tridgell
5458377e67
AP_BoardConfig: support MindPX-v2
2018-01-15 11:46:02 +11:00
Andrew Tridgell
51f9f087ab
AP_Baro: support MindPX-v2
2018-01-15 11:46:02 +11:00
Andrew Tridgell
280140bf25
HAL_ChibiOS: added support for MindPX-v2
2018-01-15 11:46:02 +11:00
Andrew Tridgell
febe414766
AP_InertialSensor: disable fast sampling on 2nd IMU on Pixracer
...
it also hosts a mag, and gets lots of FIFO resets if we try to run it
at 8kHz
2018-01-15 11:46:02 +11:00
Andrew Tridgell
9f5e01d20a
HAL_Chibios: fixed FMUv4 compasses
2018-01-15 11:46:02 +11:00
Andrew Tridgell
2646b9ef33
HAL_Chibios: matched debug port speed to NuttX
2018-01-15 11:46:02 +11:00
Andrew Tridgell
41be81af34
HAL_Chibios: added hardware flow control for UARTs
...
implement RTS in software and CTS in hardware
2018-01-15 11:46:02 +11:00
Andrew Tridgell
9916a93919
HAL_ChibiOS: fixed I2C device list
2018-01-15 11:46:02 +11:00
Andrew Tridgell
f135e73e04
HAL_ChibiOS: F412 doesn't have CCM ram
2018-01-15 11:46:02 +11:00
Andrew Tridgell
85f4958e4e
AP_OpticalFlow: use AP_FEATURE_BOARD_DETECT
2018-01-15 11:46:02 +11:00
Andrew Tridgell
3fc095589c
AP_InertialSensor: support ChibiOS FMUv4
2018-01-15 11:46:02 +11:00
Andrew Tridgell
0b6659b36a
AP_Baro: support ChibiOS FMUv4
2018-01-15 11:46:02 +11:00
Andrew Tridgell
02c3bea5a5
AP_BoardConfig: support ChibiOS FMUv4
2018-01-15 11:46:02 +11:00
Andrew Tridgell
743714de4c
AP_Compass: support ChibiOS FMUv4
2018-01-15 11:46:02 +11:00
Andrew Tridgell
c7fd455f6a
AP_HAL: added FMUv4 port for ChibiOS
2018-01-15 11:46:02 +11:00
Andrew Tridgell
c3435e45c5
HAL_ChibiOS: initial port to FMUv4
2018-01-15 11:46:02 +11:00
bugobliterator
5feef04f5f
HAL_ChibiOS: add support for CCM memory
...
this uses DMA bounce buffers for bus transfers, and falls back to CCM
ram in allocations if the type is unspecified
2018-01-15 11:46:02 +11:00
bugobliterator
ea2a880d8a
AP_NavEKF3: allocate from MEM_FAST region
2018-01-15 11:46:02 +11:00
bugobliterator
b1213a522d
AP_NavEKF2: allocate NavEKF core from MEM_FAST region
2018-01-15 11:46:02 +11:00
bugobliterator
1c6beaa7c4
AP_InertialSensor: use new API for DMA safe allocation
2018-01-15 11:46:02 +11:00
bugobliterator
e591265329
HAL_PX4: change dma_allocate api to malloc_type
2018-01-15 11:46:02 +11:00
bugobliterator
9d6ab78376
AP_HAL: add support for memory allocation by region type
2018-01-15 11:46:02 +11:00
Andrew Tridgell
08346deed5
AP_BattMonitor: run SMBus batteries at 100kHz
...
use longer timeouts and SMBUS mode. This fixes the SMBus battery
support for Solo on ChibiOS
2018-01-15 11:46:02 +11:00
Andrew Tridgell
f2102bba05
HAL_VRBrain: fixed I2C get_device() interface
...
just stubs for now
2018-01-15 11:46:02 +11:00