Fix "adc1 already in use!" log spam.

This commit is contained in:
2025-02-16 19:18:20 +01:00
parent fd1be4ffeb
commit 21f313af5c

View File

@ -36,6 +36,10 @@ void PowerManager::begin() {
} }
} }
// Initialize IO for battery voltage measurement
pinMode(PowerParameters::PinConfig::BAT_ADC_EN, OUTPUT);
pinMode(PowerParameters::PinConfig::BAT_ADC, INPUT);
if (powerScheduler == nullptr) { if (powerScheduler == nullptr) {
ESP_LOGI(TAG, "Creating Power Scheduler"); ESP_LOGI(TAG, "Creating Power Scheduler");
powerScheduler = &PowerScheduler::getPowerScheduler( powerScheduler = &PowerScheduler::getPowerScheduler(
@ -111,8 +115,6 @@ float PowerManager::getConsumerCurrent(PowerParameters::PowerConsumers consumer)
float PowerManager::getBatteryVoltage() { float PowerManager::getBatteryVoltage() {
// Get the battery voltage from the ADC and convert it to a voltage // Get the battery voltage from the ADC and convert it to a voltage
// using the voltage divider. // using the voltage divider.
pinMode(PowerParameters::PinConfig::BAT_ADC_EN, OUTPUT);
pinMode(PowerParameters::PinConfig::BAT_ADC, INPUT);
// Enable voltage divider // Enable voltage divider
digitalWrite(PowerParameters::PinConfig::BAT_ADC_EN, HIGH); digitalWrite(PowerParameters::PinConfig::BAT_ADC_EN, HIGH);
// Allow voltage to stabilize // Allow voltage to stabilize