From f51f0c1aa8ebbba4229e7f71c400eca059dae10d Mon Sep 17 00:00:00 2001 From: Raphael Coeffic Date: Wed, 6 Jul 2022 12:52:03 +0200 Subject: [PATCH] Disable PWR_FIX for EL18 The pin is connected to the battery voltage and is meant to be used as ADC pin. --- radio/src/targets/nv14/extmodule_helper.cpp | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/radio/src/targets/nv14/extmodule_helper.cpp b/radio/src/targets/nv14/extmodule_helper.cpp index 8780a3f81..00534ee1b 100644 --- a/radio/src/targets/nv14/extmodule_helper.cpp +++ b/radio/src/targets/nv14/extmodule_helper.cpp @@ -24,13 +24,19 @@ void EXTERNAL_MODULE_ON() { GPIO_SetBits(EXTMODULE_PWR_GPIO, EXTMODULE_PWR_GPIO_PIN); - GPIO_ResetBits(EXTMODULE_PWR_FIX_GPIO, EXTMODULE_PWR_FIX_GPIO_PIN); + + if (hardwareOptions.pcbrev == PCBREV_NV14) { + GPIO_ResetBits(EXTMODULE_PWR_FIX_GPIO, EXTMODULE_PWR_FIX_GPIO_PIN); + } } void EXTERNAL_MODULE_OFF() { GPIO_ResetBits(EXTMODULE_PWR_GPIO, EXTMODULE_PWR_GPIO_PIN); - GPIO_SetBits(EXTMODULE_PWR_FIX_GPIO, EXTMODULE_PWR_FIX_GPIO_PIN); + + if (hardwareOptions.pcbrev == PCBREV_NV14) { + GPIO_SetBits(EXTMODULE_PWR_FIX_GPIO, EXTMODULE_PWR_FIX_GPIO_PIN); + } } void extModuleInit() @@ -48,9 +54,12 @@ void extModuleInit() GPIO_InitStructure.GPIO_OType = GPIO_OType_OD; //pin must be pulled to V+ (voltage of board - VCC is not enough to fully close transistor) GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL; - GPIO_InitStructure.GPIO_Pin = EXTMODULE_PWR_FIX_GPIO_PIN; - GPIO_SetBits(EXTMODULE_PWR_FIX_GPIO, EXTMODULE_PWR_FIX_GPIO_PIN); - GPIO_Init(EXTMODULE_PWR_FIX_GPIO, &GPIO_InitStructure); + + if (hardwareOptions.pcbrev == PCBREV_NV14) { + GPIO_InitStructure.GPIO_Pin = EXTMODULE_PWR_FIX_GPIO_PIN; + GPIO_SetBits(EXTMODULE_PWR_FIX_GPIO, EXTMODULE_PWR_FIX_GPIO_PIN); + GPIO_Init(EXTMODULE_PWR_FIX_GPIO, &GPIO_InitStructure); + } GPIO_InitStructure.GPIO_Pin = EXTMODULE_TX_INVERT_GPIO_PIN; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;