Commit Graph

222 Commits

Author SHA1 Message Date
Michael du Breuil ba49e9e17c AP_BoardConfig: Add safety option off 2019-01-15 08:59:25 +11:00
Andrew Tridgell ba4e4e2e82 AP_BoardConfig: fixed example builds
don't try to use GCS calls in examples
2019-01-05 13:22:55 +11:00
Andrew Tridgell f13dc69c3d AP_BoardConfig: fixed param handling in sensor error
allow users to set parameters to recover their boards
2019-01-04 19:17:31 +11:00
Andrew Tridgell 3a9d8448b1 AP_BoardConfig: added BRD_SD_SLOWDOWN parameter
allows for reduction in microSD clock speed
2018-12-31 08:00:14 +11:00
Andrew Tridgell ba379d0b18 AP_BoardConfig: fixed param syntax for voltages 2018-12-31 08:00:14 +11:00
Michael du Breuil 6a41f0c86a AP_BoardConfig: Add minimum board and servo voltage parameters 2018-11-12 23:29:04 +00:00
Andrew Tridgell 3505314e64 AP_BoardConfig: updated BRD_PWM_COUNT docs
This reflects the use of this parameter under ChibiOS
2018-10-30 13:36:39 +09:00
Kevin Lopez Alvarez 9f97172cce AP_BoardConfig: add ChibiOS FMUv4pro defines 2018-10-21 09:59:44 +11:00
Andrew Tridgell cd9179e733 AP_BoardConfig: fixed for 8 PWM outputs in IOMCU 2018-10-17 15:11:28 +11:00
Peter Barker 45ac3e6bb2 AP_BoardConfig: correct grammar in @DisplayName 2018-08-21 20:34:01 +09:00
Francisco Ferreira b7a3e1ae77
AP_BoardConfig_CAN: put debug code behind compile-time flag
And disable it by default
2018-08-12 13:35:02 +01:00
Francisco Ferreira 4b4ba66987
AP_BoardConfig_CAN: add singleton and do naming cleanup
Also added more getter methods
2018-08-12 13:35:02 +01:00
Francisco Ferreira 1cfb38b4ee
AP_BoardConfig_CAN: adapt to new CANProtocol interface 2018-08-12 13:35:02 +01:00
Lucas De Marchi 73f8dd98f2 AP_BoardConfig: kill AP_FEATURE_SAFETY_BUTTON
This is redundant and can be just HAL_HAVE_SAFETY_SWITCH.
2018-08-02 13:15:02 -07:00
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
Lucas De Marchi 000ae3cb85 AP_BoardConfig: add default for BOARD_SAFETY_ENABLE
If HAL supports safety button but the board didn't declare a default,
define one to match what is done with BOARD_SAFETY_OPTION_DEFAULT.
2018-08-02 13:15:02 -07:00
Lucas De Marchi 0606b00f15 AP_BoardConfig: don't try to set pwm mode for aerofc-v1
We don't have that in aerofc, so don't try to initialize it and fail
with following error messages:

    RCOutput: unable to setup AUX PWM with BRD_PWM_COUNT 0
2018-08-01 16:49:08 -07:00
Andrew Tridgell ed09467f06 AP_BoardConfig: removed verbose SPI probe debug messages
these are just confusing for users
2018-07-14 17:51:50 +10: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
Andrew Tridgell e52176e23b AP_BoardConfig: allow hwdef.dat override of BRD_TYPE 2018-07-12 12:33:32 +10:00
Peter Barker 22a94addd5 AP_BoardConfig: add parameters for AP_RTC 2018-06-15 08:01:22 +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
Eugene Shamaev 56cc0d3ef7 AP_BoardConfig: comments 2018-06-09 22:46:48 -07:00
Eugene Shamaev 857bd4f775 AP_BoardConfig: reducing indenting by linearizing the logic 2018-06-09 22:46:48 -07: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
Michael du Breuil a47bda0b41 AP_BoardConfig: Fix param doc for BRD_SAFETYOPTION 2018-05-08 17:18:03 +10: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 13cf72ac32 AP_BoardConfig: allow override of PWM count in hwdef.dat 2018-04-09 15:32:04 +10:00
Andrew Tridgell f7ec2618a3 AP_BoardConfig: added SP01 board type 2018-02-14 18:27:00 +11:00
Tom Pittenger 3105fd56bc AP_BoardConfig: add param defaults for EMLID_EDGE for CAN_DRIVER=1 2018-02-13 15:29:53 +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 abd659212e AP_BoardConfig: fixed device semaphore in board detect
thanks to Mark for finding this
2018-02-09 10:14:46 +11:00
Andrew Tridgell 3afaf81ccc AP_BoardConfig: added param object for AP_Radio 2018-02-08 17:36:33 +11:00
Siddharth Purohit a413fef77f AP_BoardConfig: add support for UAVCAN setup on ChibiOS boards 2018-02-07 20:33:45 +11:00
LukeMike ccb316f3f3 VRBRAIN / AP_BoardConfig: some update for new VR Brain 5.2E (EEPROM version) 2018-02-05 08:26:49 +11:00
LukeMike 505497b555 VRBRAIN / AP_BoardConfig: added fmu_mode parameter for VR Brain boards 2018-02-05 08:26:49 +11:00
LukeMike b7985f77b5 VRBRAIN / AP_BoardConfig: added VR Brain boards into board_setup_drivers and board_autodetect 2018-02-05 08:26:49 +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
Nikita Tomilov 1549b1a52a AP_BoardConfig: CAN: Merge PX4 and Linux CAN setup
Here we merge PX4 and Linux CAN bus setup since the interface is almost
the same for both of them.
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 606eb05c95 AP_BoardConfig: Linux CAN initialisation 2018-01-17 07:24:17 -08: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 e88fe93688 AP_BoardConfig: init chibios IO after boardconfig
this allows for the init to use parameters such as BRD_IO_ENABLE from
AP_BoardConfig
2018-01-15 11:46:02 +11:00
Andrew Tridgell 7cb1c0420a AP_BoardConfig: include BRD_IO_ENABLE on ChibiOS 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
Mark Whitehorn 560402bad4 AP_BoardConfig: clarify PX4IO SBUS enable message 2017-11-30 10:20:04 +11:00
DOMINATOR\Eugene 4c6f954cdf AP_BoardConfig: separation of parameter groups 2017-11-15 09:52:43 +11:00
proficnc 6a94d285de AP_BoardConfig: fixed description to warn against
setting the wrong heater value in params
2017-11-07 12:00:32 +11:00
Lucas De Marchi ef3edc531c AP_BoardConfig: add static create method 2017-09-26 03:01:21 +01:00
Peter Barker b8d3d180d1 AP_BoardConfig: clarify board type 2 also to be used on the Cube autopilot 2017-09-08 18:02:34 +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
Andrew Tridgell 401a6f5373 AP_BoardConfig: fixed FMUv1 IO update
when doing an IO firmware update uartC is used to talk to the IO
bootloader. We need to close uartC to prevent corruption of the
bootloader protocol. The uart is automatically re-opened when it is
needed
2017-07-22 16:25:17 +10:00
Peter Barker 4312d1a500 AP_BoardConfig: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Andrew Tridgell dd7c96a6cc AP_Radio: reseve an ID for AP_Radio
as discussed with Randy
2017-07-10 17:07:36 +10:00
Eugene Shamaev 43e9c8370f AP_BoardConfig: increase start delay to 5 seconds 2017-07-03 11:44:32 +01: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
Dr.-Ing. Amilcar Do Carmo Lucas f7a683d38e AP_BoardConfig: remove redundant BRD_ prefix, it also made this parameter 17 characters long 2017-05-30 12:09:02 +09:00
Andrew Tridgell a3cb6a42c9 AP_BoardConfig: drop target temperature for cube to 45
getting to 60 was taking far too long (15 minutes or so). 45 is more
achievable.

This is a result of the fix to the invensense temperature detection
code
2017-05-24 08:41:16 +10: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
Dr.-Ing. Amilcar Do Carmo Lucas a85b7af32d AP_BoardConfig: Use SI units conventions in parameter units
Follow the rules from:
http://physics.nist.gov/cuu/Units/units.html
http://physics.nist.gov/cuu/Units/outside.html
and
http://physics.nist.gov/cuu/Units/checklist.html
one further constrain is that only printable (7bit) ASCII characters are allowed
2017-05-17 18:07:25 +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 bcec837f06 AP_BoardConfig: fixed warning in SITL build 2017-04-10 10:02:42 +10: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 ef1672befc AP_BoardConfig: replace board ifdef with feature ifdef 2017-03-24 12:06:19 +11:00
Lucas De Marchi 9a83f05714 AP_BoardConfig: enable voltage monitoring on aerofc 2017-03-24 12:06:19 +11: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 00c2949dfb Add support for baro on aerofc 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
Jacob Walser 84e5e088de AP_BoardConfig: Fix parameter metadata 2017-03-22 16:16:26 -07:00
Andrew Tridgell ce978595cd AP_BoardConfig: added support for ICM-20602 detection 2017-03-02 14:21:36 +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 a2e92c4054 AP_BoardConfig: increase uavcan bus settle time to 2s
needed to ensure zubax mag has time to come up
2016-11-29 12:51:16 +11:00
Michael Oborne fbeafa0d0a Update AP_BoardConfig.cpp 2016-11-16 16:00:12 +11:00
Michael Oborne e7e3478a58 AP_BoardConfig: add extra uavcan options
this enables the display of dynamic id assignment, which prevents the need for a serial connection to the esc, for first config.
2016-11-16 16:00:12 +11:00
Andrew Tridgell ac4b100ae4 AP_BoardConfig: use in-tree drivers for FMUv1 2016-11-13 16:21:17 +11:00
Andrew Tridgell 08f770125e AP_BoardConfig: moved optional sensor startup out of AP_BoardConfig 2016-11-11 15:49:53 +11:00