Lucas De Marchi
259195a7c7
AP_BoardConfig: fix handling of AP_FEATURE_SAFETY_BUTTON
...
Not all PX4-based board have a safety button. Rely on
HAL_HAVE_SAFETY_SWITCH instead of ifdef'ing each of them.
This allows to build for aerofc-v1 without safety button.
2018-08-02 13:15:02 -07:00
Andrew Tridgell
2a62938fb1
AP_BoardConfig: enable get_board_type() on all boards
...
return BOARD_TYPE_UNKNOWN for boards that don't use board detection
2018-07-14 17:51:50 +10:00
Peter Barker
59d1d8aecc
AP_BoardConfig: instantiate an RTC
...
AP_BoardConfig: set RTC from hw clock at startup
2018-06-15 08:01:22 +10:00
Andrew Tridgell
677b5f94b2
AP_BoardConfig: allow for non-bool BRD_IO_ENABLE
...
this will be used to avoid CRC checks for IO fw development testing
2018-06-06 07:15:41 +10:00
Andrew Tridgell
751f290be6
AP_BoardConfig: setup FMUv5 for board detection
2018-06-06 07:15:41 +10:00
Andrew Tridgell
99ca0ea913
AP_BoardConfig: moved BRD_PWM_COUNT to common code
...
this allows all boards to configure some PWM outputs as GPIOs
2018-05-26 12:08:54 +10:00
Eugene Shamaev
7a67c82026
AP_BoardConfig: HAL_RCINPUT_WITH_AP_RADIO definition
2018-05-22 08:35:01 +09:00
Andrew Tridgell
e2fa38968f
AP_BoardConfig: fixed build for some boards
...
for boards that don't have board detection but do have a safety switch
this fixes the build
2018-04-21 08:45:34 +10:00
Andrew Tridgell
60f79921ac
AP_BoardConfig: added get_safety_mask()
2018-04-17 10:14:01 +10:00
Andrew Tridgell
57c307a74e
AP_BoardConfig: fixed default pwm count
...
for boards without the parameter we should use 16, meaning all channels
available
thanks to sh83 for noticing
2018-04-16 07:40:55 +10:00
kozinalexey
db6c6b1677
AP_BoardConfig: allow PWM count setting on all chibios boards
2018-04-14 11:09:34 +10:00
Andrew Tridgell
d8abf647e8
AP_BoardConfig: added BRD_SAFETYOPTION parameter
...
allow control of safety button behaviour
2018-04-14 06:22:07 +10:00
Andrew Tridgell
f7ec2618a3
AP_BoardConfig: added SP01 board type
2018-02-14 18:27:00 +11:00
Andrew Tridgell
682dcb65cf
AP_BoardConfig: added param helper for HAL parameters
...
only for HAL_REVOMINI for now
2018-02-10 09:14:41 +11:00
Andrew Tridgell
3afaf81ccc
AP_BoardConfig: added param object for AP_Radio
2018-02-08 17:36:33 +11:00
LukeMike
6b820ac9e4
VRBRAIN / AP_BoardConfig: added VR Brain define into px4_board_type enum
2018-02-05 08:26:49 +11:00
Andrew Tridgell
f8a3b0e753
AP_BoardConfig: improved board config
...
use hwdef.dat to enable RTSCTS and SBUS_OUT
2018-01-20 17:40:07 +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
5458377e67
AP_BoardConfig: support MindPX-v2
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
82cc36d6d0
AP_BoardConfig: called board_setup() even without autodetect
...
we need to init hal.rcou and hal.gpio
2018-01-15 11:46:02 +11:00
Andrew Tridgell
b1ebbd1a1c
AP_BoardConfig: enable auto-detect only on FMUv3
...
F412 should not do board detection
2018-01-15 11:46:02 +11:00
Andrew Tridgell
60b1eab06d
AP_BoardConfig: added get_pwm_count()
2018-01-15 11:46:02 +11:00
Andrew Tridgell
13f4780815
AP_BoardConfig: make a singleton
...
allows for io_enabled() static function
2018-01-15 11:46:02 +11:00
Andrew Tridgell
accac344f2
AP_BoardConfig: support ChibiOS as well as NuttX
...
allow for board detection with ChibiOS
2018-01-15 11:46:02 +11:00
Andrew Tridgell
a4d2d79ce7
AP_BoardConfig: removed create() method for objects
...
See discussion here:
https://github.com/ArduPilot/ardupilot/issues/7331
we were getting some uninitialised variables. While it only showed up in
AP_SbusOut, it means we can't be sure it won't happen on other objects,
so safest to remove the approach
Thanks to assistance from Lucas, Peter and Francisco
2017-12-14 08:12:28 +11:00
Lucas De Marchi
ef3edc531c
AP_BoardConfig: add static create method
2017-09-26 03:01:21 +01:00
Kevin Lopez Alvarez
a5a5bd3a95
AP_BoardConfig: Remove comments and use correct board number
2017-07-24 13:47:06 +10:00
Kevin Lopez Alvarez
a51bf8c918
AP_BoardConfig: initial FMUv4pro support
2017-07-24 13:45:37 +10:00
Eugene Shamaev
a7921a273b
AP_BoardConfig: move of CAN parameters into separate group and support of several interfaces
2017-07-03 11:44:32 +01:00
Peter Barker
5c15c1e4d2
AP_BoardConfig: add public method returning true if on sensor error
2017-06-07 12:56:46 +01:00
Andrew Tridgell
9e74bfbc20
AP_BoardConfig: cope with bad config of pixhawk2
...
don't allow FMUv2 firmware on cube, and force temperature if incorrect
2017-05-24 08:41:16 +10:00
Andrew Tridgell
e32e2f5b5d
AP_BoardConfig: added sensor_config_error()
...
used to notify user of fatal sensor setup error
2017-05-03 11:37:01 +10:00
Andrew Tridgell
4c36c77db1
AP_BoardConfig: split setup of safety switch init init_safety()
...
this allows it to be called late, so that servo outputs are fully
setup before the safety is disabled when BRD_SAFETYENABLE=0
2017-04-30 21:47:04 +10:00
Eugene Shamaev
67a6e651d6
AP_BoardConfig: removal of legacy UAVCAN support
2017-04-17 17:27:18 +10:00
Lucas De Marchi
1adf247a60
AP_BoardConfig: fix board type number for aerofc
...
Types 7-12 are being used by vrbrain boards. Even if they are inside
another ifdef, they can't be the same because it's used by the BRD_TYPE
parameter. Use 13 for aerofc since it was already the one being used in
the parameter description.
Thanks to Michael du Breuil for noticing it.
2017-04-12 11:46:55 -07:00
Eugene Shamaev
0b54d5764c
AP_BoardConfig: support for CAN and UAVCAN at board level
2017-04-10 22:38:13 +01:00
Andrew Tridgell
c118deccb0
AP_BoardConfig: added BRD_IO_ENABLE parameter
...
allow for px4io to be disabled completely
2017-04-05 20:14:53 +10:00
Lucas De Marchi
da68612f4b
AP_BoardConfig: make error function public and static
...
So it can be used by other parts of the code calling px4_start_driver().
2017-03-24 12:06:19 +11:00
Lucas De Marchi
b17acfee12
Add aerofc support
...
Flight Controller board that comes on Intel Aero RTF Drone.
2017-03-24 12:06:19 +11:00
Andrew Tridgell
cf3db7560c
AP_BoardConfig: fixed AUAV21 board ID to not overlap with VRBrain boards
2017-03-01 18:07:44 +11:00
Andrew Tridgell
1989f31ae3
AP_BoardConfig: added AUAV21 board type
...
unfortunately this uses the same sensor types as the PHMini, which
means we can't auto-detect the difference between them.
2017-03-01 17:24:10 +11:00
Andrew Tridgell
67b97b21db
AP_BoardConfig: switched to always using in-tree sensors
2016-12-19 08:07:12 +11:00
Andrew Tridgell
08f770125e
AP_BoardConfig: moved optional sensor startup out of AP_BoardConfig
2016-11-11 15:49:53 +11:00
Andrew Tridgell
4f50d67790
AP_BoardConfig: added board type auto-detection
...
using SPI probing
2016-11-11 08:08:55 +11:00
Andrew Tridgell
73122adb78
AP_BoardConfig: removed unused startup functions for Pixracer
2016-11-10 12:55:22 +11:00
Andrew Tridgell
e7a9de9b41
AP_BoardConfig: use in-tree drivers for PH2SLIM
2016-11-10 11:44:52 +11:00
Andrew Tridgell
b0b93f8928
AP_BoardConfig: switch pixracer to always use in-tree drivers
2016-11-09 17:08:14 +11:00
Andrew Tridgell
88e24dd8bd
AP_BoardConfig: added board type 103
...
for PH2 in-tree drivers
2016-11-09 17:08:03 +11:00
Andrew Tridgell
b9e1490740
AP_BoardConfig: added px4io auto-update to AP_BoardConfig
2016-11-09 17:08:00 +11:00
Andrew Tridgell
7e803df221
AP_BoardConfig: startup core peripherals for PX4
2016-11-09 17:07:59 +11:00
Andrew Tridgell
ce174489c3
AP_BoardConfig: added get_board_type() for PX4
...
used to decide what drivers to start
2016-11-09 17:07:58 +11:00
Mathieu OTHACEHE
152edf7189
Global: remove mode line from headers
...
Using a global .dir-locals.el file is a better alternative than
reincluding the same emacs header in every file of the project.
2016-10-24 09:42:01 -02:00
Andrew Tridgell
7bf81c44b0
AP_BoardConfig: allow programmatic setting of default safety mask
2016-10-21 11:53:34 +11:00
LukeMike
38150a5544
AP_BoardConfig: defined and managed VRBRAIN board type and all functions for sensors startup
2016-08-11 07:52:40 +10:00
Andrew Tridgell
38ebe582cc
AP_BoardConfig: fixed for VRBrain build
...
needs access to driver start function
2016-08-10 20:43:03 +10:00
Andrew Tridgell
77bee322e9
AP_BoardConfig: support the PHMINI as BRD_TYPE=5
2016-08-10 19:54:00 +10:00
Andrew Tridgell
61e15af3ca
AP_BoardConfig: added BRD_TYPE
...
this allows for PH2SLIM support with BRD_TYPE=6
2016-08-10 19:54:00 +10:00
Andrew Tridgell
7806aa4274
AP_BoardConfig: moved optional sensors to the sensor startup
...
this makes startup much faster
2016-08-10 19:54:00 +10:00
Andrew Tridgell
36e0c7229a
AP_BoardConfig: implement PX4 driver start in C++
...
this brings driver startup into AP_BoardConfig, so we can start to
make driver startup depend on parameters
2016-08-10 19:53:59 +10:00
Andrew Tridgell
4643d6f314
AP_BoardConfig: break out PX4 setup from main code
...
refactoring in preparation for larger changes
2016-08-10 19:53:59 +10:00
Andrew Tridgell
e82384990d
AP_BoardConfig: moved px4 variables to px4 structure
...
refactoring in preparation for larger changes
2016-08-10 19:53:59 +10:00
LukeMike
024d3311b3
VRBRAIN / AP_BoardConfig: enabled PWM configuration and safety management for all VirtualRobotix boards
2016-08-07 20:31:51 +10:00
Pavel Kirienko
accf118e38
UAVCAN hardpoint control
2016-08-04 09:16:02 +10:00
Andrew Tridgell
45c72eb442
AP_BoardConfig: added BRD_IMU_TARGTEMP
...
set target temperature for IMU
2016-07-01 15:29:52 +10:00
Michael du Breuil
4d964fbf2f
AP_BoardConfig: allow channels to be moved regardless of safety switch
2016-06-17 15:20:22 +10:00
Lucas De Marchi
235d64b7b9
AP_BoardConfig: replace header guard with pragma once
2016-03-16 18:40:40 +11:00
Andrew Tridgell
36177526cf
AP_BoardConfig: allow setting of SBUS output frame rate
2016-03-10 15:28:46 +11:00
Andrew Tridgell
2ffabe9e05
AP_BoardConfig: fixed PX4v1 build
2015-11-06 17:10:08 +11:00
Andrew Tridgell
c334bd0ddf
AP_BoardConfig: added BRD_CAN_ENABLE option
...
this allows uavcan to be enabled/disabled at boot. When it is disabled
we save about 25k of memory, allowing for more options for things like
multiple EKF
2015-11-06 10:23:37 +11:00
Gustavo Jose de Sousa
c16b46fd23
AP_BoardConfig: standardize inclusion of libaries headers
...
This commit changes the way libraries headers are included in source files:
- If the header is in the same directory the source belongs to, so the
notation '#include ""' is used with the path relative to the directory
containing the source.
- If the header is outside the directory containing the source, then we use
the notation '#include <>' with the path relative to libraries folder.
Some of the advantages of such approach:
- Only one search path for libraries headers.
- OSs like Windows may have a better lookup time.
2015-08-11 16:28:42 +10:00
Tom Pittenger
457d3be4d7
AP_BoardConfig: add user-defined serial number
...
new param: BRD_SERIAL_NUM
// @Description: User-defined serial number of this vehicle, it can be any arbitrary number you want and has no effect on the autopilot
// @Range: -32767 to 32768 (any 16bit signed number)
2015-06-30 17:20:15 +10:00
Andrew Tridgell
e43fe520e8
AP_BoardConfig: added BRD_SBUS_OUT parameter
...
when this is set to 1 it enables SBUS servo output on the SBUS
connector.
2015-02-11 18:35:34 +11:00
LukeMike
fa4fffc878
VRBRAIN: deleted unnecessary customizations
2014-07-01 12:21:35 +02:00
Emile Castelnuovo
39d9e93904
AP_BoardConfig: added #defines for VRBRAIN board
2014-04-08 16:19:19 +10:00
Andrew Tridgell
8095eb0bee
AP_BoardConfig: added BRD_SAFETYENABLE option
...
this allows the safety switch to be disabled on startup
2014-02-11 15:58:25 +11:00
Andrew Tridgell
b907263685
AP_BoardConfig: added BRD_SER1_RTSCTS and BRD_SER2_RTSCTS
...
used to enable flow control on telemetry ports
2014-02-10 12:57:19 +11:00
Andrew Tridgell
b5822cd549
AP_BoardConfig: board specific config library
...
used to control board specific parameters, such as PWM output count
2014-01-20 17:06:28 +11:00