better ADC and VEXT control

This commit is contained in:
Ricardo Guzman (Richonguzman)
2026-02-23 11:14:42 -03:00
parent f26ded5b5c
commit c48dd15bd6
13 changed files with 68 additions and 72 deletions

View File

@@ -49,40 +49,23 @@ extern bool stationCallsignIsValid;
namespace POWER_Utils { namespace POWER_Utils {
#ifdef VEXT_CTRL #ifdef ADC_CTRL_PIN
void vext_ctrl_ON() {
#if VEXT_CTRL_INVERTED == 1
digitalWrite(VEXT_CTRL, Config.digi.ecoMode == 1 ? HIGH : LOW);
#else
digitalWrite(VEXT_CTRL, Config.digi.ecoMode == 1 ? LOW : HIGH);
#endif
}
void vext_ctrl_OFF() {
#if VEXT_CTRL_INVERTED == 1
digitalWrite(VEXT_CTRL, Config.digi.ecoMode == 1 ? LOW : HIGH);
#else
digitalWrite(VEXT_CTRL, Config.digi.ecoMode == 1 ? HIGH : LOW);
#endif
}
#endif
#ifdef ADC_CTRL
void adc_ctrl_ON() { void adc_ctrl_ON() {
#if ADC_CTRL_INVERTED == 1 digitalWrite(ADC_CTRL_PIN, ADC_CTRL_ON_STATE);
digitalWrite(ADC_CTRL, LOW);
#else
digitalWrite(ADC_CTRL, HIGH);
#endif
} }
void adc_ctrl_OFF() { void adc_ctrl_OFF() {
#if ADC_CTRL_INVERTED == 1 digitalWrite(ADC_CTRL_PIN, !ADC_CTRL_ON_STATE);
digitalWrite(ADC_CTRL, HIGH); }
#else #endif
digitalWrite(ADC_CTRL, LOW);
#endif #ifdef VEXT_CTRL_PIN
void vext_ctrl_ON() {
digitalWrite(VEXT_CTRL_PIN, Config.digi.ecoMode == 1 ? !VEXT_CTRL_ON_STATE : VEXT_CTRL_ON_STATE);
}
void vext_ctrl_OFF() {
digitalWrite(VEXT_CTRL_PIN, Config.digi.ecoMode == 1 ? VEXT_CTRL_ON_STATE : !VEXT_CTRL_ON_STATE);
} }
#endif #endif

View File

@@ -48,7 +48,8 @@
// Aditional Config // Aditional Config
#define INTERNAL_LED_PIN 25 #define INTERNAL_LED_PIN 25
#define BATTERY_PIN 37 #define BATTERY_PIN 37
#define ADC_CTRL 21
#define ADC_CTRL_INVERTED 1 #define ADC_CTRL_PIN 21
#define ADC_CTRL_ON_STATE LOW
#endif #endif

View File

@@ -48,7 +48,8 @@
// Aditional Config // Aditional Config
#define INTERNAL_LED_PIN 25 #define INTERNAL_LED_PIN 25
#define BATTERY_PIN 37 #define BATTERY_PIN 37
#define ADC_CTRL 21 #define ADC_CTRL 21
#define ADC_CTRL_INVERTED 1 #define ADC_CTRL_ON_STATE LOW
#endif #endif

View File

@@ -50,9 +50,10 @@
// Aditional Config // Aditional Config
#define INTERNAL_LED_PIN 45 #define INTERNAL_LED_PIN 45
#define BATTERY_PIN 7 #define BATTERY_PIN 7
#define ADC_CTRL 46
#define ADC_CTRL_INVERTED 0 #define ADC_CTRL_PIN 46
#define VEXT_CTRL 18 #define ADC_CTRL_ON_STATE HIGH
#define VEXT_CTRL_INVERTED 0 #define VEXT_CTRL_PIN 18
#define VEXT_CTRL_ON_STATE HIGH
#endif #endif

View File

@@ -53,9 +53,10 @@
// Aditional Config // Aditional Config
#define INTERNAL_LED_PIN 35 #define INTERNAL_LED_PIN 35
#define BATTERY_PIN 1 #define BATTERY_PIN 1
#define VEXT_CTRL 36
#define VEXT_CTRL_INVERTED 0 #define ADC_CTRL_PIN 37
#define ADC_CTRL 37 #define ADC_CTRL_ON_STATE LOW
#define ADC_CTRL_INVERTED 1 #define VEXT_CTRL_PIN 36
#define VEXT_CTRL_ON_STATE HIGH
#endif #endif

View File

@@ -53,9 +53,10 @@
// Aditional Config // Aditional Config
#define INTERNAL_LED_PIN 35 #define INTERNAL_LED_PIN 35
#define BATTERY_PIN 1 #define BATTERY_PIN 1
#define VEXT_CTRL 36
#define VEXT_CTRL_INVERTED 1 #define ADC_CTRL_PIN 37
#define ADC_CTRL 37 #define ADC_CTRL_ON_STATE HIGH
#define ADC_CTRL_INVERTED 0 #define VEXT_CTRL_PIN 36
#define VEXT_CTRL_ON_STATE LOW
#endif #endif

View File

@@ -53,10 +53,11 @@
// Aditional Config // Aditional Config
#define INTERNAL_LED_PIN 35 #define INTERNAL_LED_PIN 35
#define BATTERY_PIN 1 #define BATTERY_PIN 1
#define VEXT_CTRL 36
#define VEXT_CTRL_INVERTED 1 #define ADC_CTRL_PIN 37
#define ADC_CTRL 37 #define ADC_CTRL_ON_STATE HIGH
#define ADC_CTRL_INVERTED 0 #define VEXT_CTRL_PIN 36
#define VEXT_CTRL_ON_STATE LOW
// GPS ?? // GPS ??
#define VGNS_CTRL 34 // cambiar nombre para prender GPS ? #define VGNS_CTRL 34 // cambiar nombre para prender GPS ?

View File

@@ -50,9 +50,10 @@
// Aditional Config // Aditional Config
#define INTERNAL_LED_PIN 18 #define INTERNAL_LED_PIN 18
#define BATTERY_PIN 20 #define BATTERY_PIN 20
#define ADC_CTRL 19
#define ADC_CTRL_INVERTED 1 #define ADC_CTRL_PIN 19
#define VEXT_CTRL 45 #define ADC_CTRL_ON_STATE LOW
#define VEXT_CTRL_INVERTED 1 #define VEXT_CTRL_PIN 45
#define VEXT_CTRL_ON_STATE LOW
#endif #endif

View File

@@ -50,9 +50,10 @@
// Aditional Config // Aditional Config
#define INTERNAL_LED_PIN 18 #define INTERNAL_LED_PIN 18
#define BATTERY_PIN 20 #define BATTERY_PIN 20
#define ADC_CTRL 19
#define ADC_CTRL_INVERTED 1 #define ADC_CTRL_PIN 19
#define VEXT_CTRL 45 #define ADC_CTRL_ON_STATE LOW
#define VEXT_CTRL_INVERTED 1 #define VEXT_CTRL_PIN 45
#define VEXT_CTRL_ON_STATE LOW
#endif #endif

View File

@@ -50,9 +50,11 @@
// Aditional Config // Aditional Config
#define INTERNAL_LED_PIN 35 #define INTERNAL_LED_PIN 35
#define BATTERY_PIN 1 #define BATTERY_PIN 1
#define ADC_CTRL 37
#define VEXT_CTRL 36 #define ADC_CTRL_PIN 37
#define VEXT_CTRL_INVERTED 1 #define ADC_CTRL_ON_STATE LOW
#define VEXT_CTRL_PIN 36
#define VEXT_CTRL_ON_STATE LOW
#define BOARD_I2C_SDA 41 #define BOARD_I2C_SDA 41
#define BOARD_I2C_SCL 42 #define BOARD_I2C_SCL 42

View File

@@ -40,9 +40,10 @@
// Aditional Config // Aditional Config
#define INTERNAL_LED_PIN 35 #define INTERNAL_LED_PIN 35
#define BATTERY_PIN 1 #define BATTERY_PIN 1
#define ADC_CTRL 37
#define ADC_CTRL_INVERTED 1 #define ADC_CTRL_PIN 37
#define VEXT_CTRL 36 #define ADC_CTRL_ON_STATE LOW
#define VEXT_CTRL_INVERTED 1 #define VEXT_CTRL_PIN 36
#define VEXT_CTRL_ON_STATE LOW
#endif #endif

View File

@@ -44,9 +44,10 @@
// Aditional Config // Aditional Config
#define INTERNAL_LED_PIN 35 #define INTERNAL_LED_PIN 35
#define BATTERY_PIN 1 #define BATTERY_PIN 1
#define ADC_CTRL 37
#define ADC_CTRL_INVERTED 1 #define ADC_CTRL_PIN 37
#define VEXT_CTRL 36 #define ADC_CTRL_ON_STATE LOW
#define VEXT_CTRL_INVERTED 1 #define VEXT_CTRL_PIN 36
#define VEXT_CTRL_ON_STATE LOW
#endif #endif

View File

@@ -44,10 +44,11 @@
// Aditional Config // Aditional Config
#define INTERNAL_LED_PIN 18 #define INTERNAL_LED_PIN 18
#define BATTERY_PIN 1 #define BATTERY_PIN 1
#define VEXT_CTRL 3 // To turn on GPS and TFT
#define VEXT_CTRL_INVERTED 0 #define ADC_CTRL_PIN 2 // HELTEC Wireless Tracker ADC_CTRL = HIGH powers the voltage divider to read BatteryPin. Only on V05 = V1.1
#define ADC_CTRL 2 // HELTEC Wireless Tracker ADC_CTRL = HIGH powers the voltage divider to read BatteryPin. Only on V05 = V1.1 #define ADC_CTRL_ON_STATE HIGH
#define ADC_CTRL_INVERTED 0 #define VEXT_CTRL_PIN 3 // To turn on GPS and TFT
#define VEXT_CTRL_ON_STATE HIGH
// GPS // GPS
#define HAS_GPS #define HAS_GPS