27 #if CONFIG_HAL_BOARD == HAL_BOARD_LINUX 32 #if CONFIG_HAL_BOARD == HAL_BOARD_PX4 33 # define BOARD_SAFETY_ENABLE_DEFAULT 1 34 #if defined(CONFIG_ARCH_BOARD_PX4FMU_V1) 35 #define BOARD_PWM_COUNT_DEFAULT 2 36 #define BOARD_SER1_RTSCTS_DEFAULT 0 // no flow control on UART5 on FMUv1 37 #elif defined(CONFIG_ARCH_BOARD_PX4FMU_V4) 38 #define BOARD_PWM_COUNT_DEFAULT 6 39 #define BOARD_SER1_RTSCTS_DEFAULT 2 40 #elif defined(CONFIG_ARCH_BOARD_AEROFC_V1) 41 #define BOARD_PWM_COUNT_DEFAULT 0 42 #define BOARD_SER1_RTSCTS_DEFAULT 0 43 # undef BOARD_SAFETY_ENABLE_DEFAULT 44 # define BOARD_SAFETY_ENABLE_DEFAULT 0 46 #define BOARD_PWM_COUNT_DEFAULT 4 47 #define BOARD_SER1_RTSCTS_DEFAULT 2 49 #define BOARD_TYPE_DEFAULT PX4_BOARD_AUTO 51 #elif CONFIG_HAL_BOARD == HAL_BOARD_VRBRAIN 52 # define BOARD_SAFETY_ENABLE_DEFAULT 0 53 # define BOARD_PWM_COUNT_DEFAULT 8 54 # if defined(CONFIG_ARCH_BOARD_VRBRAIN_V51) 55 # define BOARD_TYPE_DEFAULT VRX_BOARD_BRAIN51 56 # elif defined(CONFIG_ARCH_BOARD_VRBRAIN_V52) 57 # define BOARD_TYPE_DEFAULT VRX_BOARD_BRAIN52 58 # elif defined(CONFIG_ARCH_BOARD_VRBRAIN_V52E) 59 # define BOARD_TYPE_DEFAULT VRX_BOARD_BRAIN52E 60 # elif defined(CONFIG_ARCH_BOARD_VRUBRAIN_V51) 61 # define BOARD_TYPE_DEFAULT VRX_BOARD_UBRAIN51 62 # elif defined(CONFIG_ARCH_BOARD_VRUBRAIN_V52) 63 # define BOARD_TYPE_DEFAULT VRX_BOARD_UBRAIN52 64 # elif defined(CONFIG_ARCH_BOARD_VRCORE_V10) 65 # define BOARD_TYPE_DEFAULT VRX_BOARD_CORE10 66 # elif defined(CONFIG_ARCH_BOARD_VRBRAIN_V54) 67 # define BOARD_TYPE_DEFAULT VRX_BOARD_BRAIN54 70 #elif CONFIG_HAL_BOARD == HAL_BOARD_CHIBIOS 71 # define BOARD_SAFETY_ENABLE_DEFAULT 1 72 #ifndef BOARD_PWM_COUNT_DEFAULT 73 # define BOARD_PWM_COUNT_DEFAULT 6 75 #ifndef BOARD_SER1_RTSCTS_DEFAULT 76 # define BOARD_SER1_RTSCTS_DEFAULT 2 78 # define BOARD_TYPE_DEFAULT PX4_BOARD_AUTO 81 #ifndef HAL_IMU_TEMP_DEFAULT 82 #define HAL_IMU_TEMP_DEFAULT -1 // disabled 85 #if AP_FEATURE_SAFETY_BUTTON 86 #ifndef BOARD_SAFETY_OPTION_DEFAULT 87 #define BOARD_SAFETY_OPTION_DEFAULT (BOARD_SAFETY_OPTION_BUTTON_ACTIVE_SAFETY_OFF|BOARD_SAFETY_OPTION_BUTTON_ACTIVE_SAFETY_ON) 91 #ifndef BOARD_PWM_COUNT_DEFAULT 92 #define BOARD_PWM_COUNT_DEFAULT 8 108 #if AP_FEATURE_RTSCTS 126 #if AP_FEATURE_SAFETY_BUTTON 136 #if AP_FEATURE_SBUS_OUT 153 #if AP_FEATURE_SAFETY_BUTTON 164 #if HAL_HAVE_IMU_HEATER 174 #if AP_FEATURE_BOARD_DETECT 184 #if AP_FEATURE_BOARD_DETECT 185 #if HAL_PX4_HAVE_PX4IO || HAL_WITH_IO_MCU 196 #if HAL_RCINPUT_WITH_AP_RADIO 202 #if defined(HAL_NEEDS_PARAM_HELPER) 208 #if AP_FEATURE_SAFETY_BUTTON 224 #if HAL_HAVE_IMU_HEATER 235 #if AP_FEATURE_SAFETY_BUTTON 236 state.ignore_safety_channels.set_default(mask);
237 #if CONFIG_HAL_BOARD == HAL_BOARD_PX4 245 #if AP_FEATURE_SAFETY_BUTTON 265 printf(
"Sensor failure: %s\n", reason);
266 gcs().
send_text(MAV_SEVERITY_ERROR,
"Check BRD_TYPE: %s", reason);
int printf(const char *fmt,...)
void board_init_safety(void)
Interface definition for the various Ground Control System.
AP_Int8 _imu_target_temperature
#define AP_GROUPINFO(name, idx, clazz, element, def)
virtual void set_imu_target_temp(int8_t *target)
void set_default_safety_ignore_mask(uint16_t mask)
struct AP_BoardConfig::@14 state
#define HAL_IMU_TEMP_DEFAULT
void px4_setup_safety_mask(void)
virtual void delay(uint16_t ms)=0
static const struct AP_Param::GroupInfo var_info[]
#define BOARD_SAFETY_OPTION_DEFAULT
#define BOARD_SER1_RTSCTS_DEFAULT
void send_text(MAV_SEVERITY severity, const char *fmt,...)
Common definitions and utility routines for the ArduPilot libraries.
#define BOARD_TYPE_DEFAULT
#define BOARD_SAFETY_ENABLE_DEFAULT
static bool _in_sensor_config_error
#define BOARD_PWM_COUNT_DEFAULT
static AP_BoardConfig * instance
#define AP_SUBGROUPINFO(element, name, idx, thisclazz, elclazz)
AP_HAL::Scheduler * scheduler
static void sensor_config_error(const char *reason)