Commit Graph

105 Commits

Author SHA1 Message Date
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