Deduplicate DC/DC regulator enable for NRF52 boards

Some NRF52 boards are able to use the internal power-efficient DC/DC
regulator. Add a new class that can be inherited by board classes to
enable this feature and reduce the power consumption.

Signed-off-by: Frieder Schrempf <frieder@fris.de>
This commit is contained in:
Frieder Schrempf
2025-12-09 17:05:33 +01:00
parent 93d1560d14
commit e3bb225efb
12 changed files with 40 additions and 56 deletions

View File

@@ -19,18 +19,9 @@ static void disconnect_callback(uint16_t conn_handle, uint8_t reason) {
}
void WioTrackerL1Board::begin() {
NRF52Board::begin();
NRF52BoardDCDC::begin();
btn_prev_state = HIGH;
// Enable DC/DC converter for improved power efficiency
uint8_t sd_enabled = 0;
sd_softdevice_is_enabled(&sd_enabled);
if (sd_enabled) {
sd_power_dcdc_mode_set(NRF_POWER_DCDC_ENABLE);
} else {
NRF_POWER->DCDCEN = 1;
}
pinMode(PIN_VBAT_READ, INPUT); // VBAT ADC input
// Set all button pins to INPUT_PULLUP
pinMode(PIN_BUTTON1, INPUT_PULLUP);