diff --git a/boards/holybro/kakuteh7-wing/src/board_config.h b/boards/holybro/kakuteh7-wing/src/board_config.h index 3e70a227f4..b6ba3321e9 100644 --- a/boards/holybro/kakuteh7-wing/src/board_config.h +++ b/boards/holybro/kakuteh7-wing/src/board_config.h @@ -114,7 +114,6 @@ #define BOARD_NUMBER_BRICKS 2 -// TODO: fix #define GPIO_nVDD_BRICK1_VALID (1) /* Brick 1 Is Chosen */ #define GPIO_nVDD_BRICK2_VALID (0) /* Brick 2 Is Chosen */ @@ -129,17 +128,15 @@ */ #define UAVCAN_NUM_IFACES_RUNTIME 1 -#define GPIO_VDD_5V_PERIPH_nEN /* PE2 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_SET|GPIO_PORTE|GPIO_PIN2) -#define GPIO_VDD_5V_PERIPH_nOC /* PE3 */ (GPIO_INPUT |GPIO_FLOAT|GPIO_PORTE|GPIO_PIN3) -#define GPIO_VDD_5V_HIPOWER_nEN /* PC10 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_SET|GPIO_PORTC|GPIO_PIN10) -#define GPIO_VDD_5V_HIPOWER_nOC /* PC11 */ (GPIO_INPUT |GPIO_FLOAT|GPIO_PORTC|GPIO_PIN11) -#define GPIO_VDD_3V3_SENSORS_EN /* PB2 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_CLEAR|GPIO_PORTB|GPIO_PIN2) +#define GPIO_VDD_3V3_SENSORS_EN /* PB2 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_SET|GPIO_PORTB|GPIO_PIN2) + +#define GPIO_VTX_9V_EN /* PE3 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_SET|GPIO_PORTE|GPIO_PIN3) /* Define True logic Power Control in arch agnostic form */ -#define VDD_5V_PERIPH_EN(on_true) px4_arch_gpiowrite(GPIO_VDD_5V_PERIPH_nEN, !(on_true)) -#define VDD_5V_HIPOWER_EN(on_true) px4_arch_gpiowrite(GPIO_VDD_5V_HIPOWER_nEN, !(on_true)) -#define VDD_3V3_SENSORS_EN(on_true) px4_arch_gpiowrite(GPIO_VDD_3V3_SENSORS4_EN, (on_true)) +#define VDD_3V3_SENSORS_EN(on_true) px4_arch_gpiowrite(GPIO_VDD_3V3_SENSORS_EN, (on_true)) + +#define VTX_9V_EN(on_true) px4_arch_gpiowrite(GPIO_VTX_9V_EN, (on_true)) /* Tone alarm output */ @@ -196,11 +193,10 @@ #define BOARD_ADC_SERVO_VALID (1) -#define BOARD_ADC_BRICK1_VALID (!px4_arch_gpioread(GPIO_nVDD_BRICK1_VALID)) -#define BOARD_ADC_BRICK2_VALID (!px4_arch_gpioread(GPIO_nVDD_BRICK2_VALID)) +#define BOARD_ADC_BRICK1_VALID (1) +#define BOARD_ADC_BRICK2_VALID (1) -#define BOARD_ADC_PERIPH_5V_OC (!px4_arch_gpioread(GPIO_VDD_5V_PERIPH_nOC)) -#define BOARD_ADC_HIPOWER_5V_OC (!px4_arch_gpioread(GPIO_VDD_5V_HIPOWER_nOC)) +#define BOARD_ADC_SERVO_VALID (1) /* This board provides a DMA pool and APIs */ @@ -217,6 +213,7 @@ GPIO_VDD_3V3_SENSORS_EN, \ GPIO_TONE_ALARM_IDLE, \ GPIO_PPM_IN, \ + GPIO_VTX_9V_EN, \ } #define BOARD_ENABLE_CONSOLE_BUFFER diff --git a/boards/holybro/kakuteh7-wing/src/init.c b/boards/holybro/kakuteh7-wing/src/init.c index 5908f71f2f..4d93e5c16a 100644 --- a/boards/holybro/kakuteh7-wing/src/init.c +++ b/boards/holybro/kakuteh7-wing/src/init.c @@ -108,21 +108,19 @@ __END_DECLS ************************************************************************************/ __EXPORT void board_peripheral_reset(int ms) { - /* set the peripheral rails off */ + /* off */ + VTX_9V_EN(false); + VDD_3V3_SENSORS_EN(false); - VDD_5V_PERIPH_EN(false); board_control_spi_sensors_power(false, 0xffff); - /* wait for the peripheral rail to reach GND */ usleep(ms * 1000); syslog(LOG_DEBUG, "reset done, %d ms\n", ms); /* re-enable power */ - - /* switch the peripheral rail back on */ board_control_spi_sensors_power(true, 0xffff); - VDD_5V_PERIPH_EN(true); - + VDD_3V3_SENSORS_EN(true); + VTX_9V_EN(true); } /************************************************************************************ @@ -210,10 +208,6 @@ __EXPORT int board_app_initialize(uintptr_t arg) { #if !defined(BOOTLOADER) - /* Power on Interfaces */ - VDD_5V_PERIPH_EN(true); - VDD_5V_HIPOWER_EN(true); - /* Need hrt running before using the ADC */ px4_platform_init();