diff --git a/cmake/configs/nuttx_tap-v1_default.cmake b/cmake/configs/nuttx_tap-v1_default.cmake index d4753fdaca..6ce1ae215c 100644 --- a/cmake/configs/nuttx_tap-v1_default.cmake +++ b/cmake/configs/nuttx_tap-v1_default.cmake @@ -14,6 +14,7 @@ set(config_module_list drivers/px4fmu drivers/boards/tap-v1 drivers/rgbled_pwm + drivers/tap_esc #drivers/mpu6500 drivers/ms5611 drivers/gps diff --git a/src/drivers/boards/tap-v1/board_config.h b/src/drivers/boards/tap-v1/board_config.h index 87291d3ad8..b31935e258 100644 --- a/src/drivers/boards/tap-v1/board_config.h +++ b/src/drivers/boards/tap-v1/board_config.h @@ -235,8 +235,15 @@ __BEGIN_DECLS #define MS_PWR_BUTTON_DOWN 750 #define KEY_AD_GPIO (GPIO_INPUT|GPIO_PULLDOWN|GPIO_EXTI|GPIO_PORTC|GPIO_PIN1) #define POWER_ON_GPIO (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_SET|GPIO_PORTA|GPIO_PIN4) -#define POWER_OFF_GPIO (GPIO_INPUT|GPIO_PULLDOWN|GPIO_SPEED_2MHz|GPIO_OUTPUT_CLEAR|GPIO_PORTA|GPIO_PIN4) +#define POWER_OFF_GPIO (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTA|GPIO_PIN4) +#define GPIO_S0 (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_50MHz|GPIO_OUTPUT_CLEAR|GPIO_PORTC|GPIO_PIN15) +#define GPIO_S1 (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_50MHz|GPIO_OUTPUT_CLEAR|GPIO_PORTC|GPIO_PIN14) +#define GPIO_S2 (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_50MHz|GPIO_OUTPUT_CLEAR|GPIO_PORTC|GPIO_PIN13) + +#define GPIO_PCON_RADIO (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_SET|GPIO_PORTC|GPIO_PIN3) + +#define RF_RADIO_CONTOL(_on_true) px4_arch_gpiowrite(GPIO_PCON_RADIO, !(_on_true)) #define FLASH_BASED_PARAMS /**************************************************************************************************** diff --git a/src/drivers/boards/tap-v1/tap_init.c b/src/drivers/boards/tap-v1/tap_init.c index 86773fccb5..238963c941 100644 --- a/src/drivers/boards/tap-v1/tap_init.c +++ b/src/drivers/boards/tap-v1/tap_init.c @@ -129,15 +129,31 @@ __END_DECLS __EXPORT void stm32_boardinitialize(void) { - /* configure always-on ADC pins */ - stm32_configgpio(GPIO_ADC1_IN10); + /* Hold power state */ board_pwr_init(0); + /* Select 0 */ + + stm32_configgpio(GPIO_S0); + stm32_configgpio(GPIO_S1); + stm32_configgpio(GPIO_S2); + + /* Radio Off (active low, init is set) */ + + stm32_configgpio(GPIO_PCON_RADIO); + + /* configure always-on ADC pins */ + + stm32_configgpio(GPIO_ADC1_IN10); + + /* configure SPI interfaces */ + stm32_spiinitialize(); /* configure LEDs (empty call to NuttX' ledinit) */ + up_ledinit(); }