mirror of
https://github.com/meshcore-dev/MeshCore.git
synced 2026-04-20 22:13:47 +00:00
nRF52840 Power Management - Phase 1 - Boot Low VBAT Voltage Lockout
Added NRF52840 power management core functionality: - Boot‑voltage lockout - Initial support for shutdown/reset reason storage and capture (via RESETREAS/GPREGRET2) - LPCOMP wake (for voltage-driven shutdowns) - VBUS wake (for voltage-driven shutdowns) - Per-board shutdown handler for board-specific tasks - Exposed CLI queries for power‑management status in CommonCLI.cpp - Added documentation in docs/nrf52_power_management.md. - Enabled power management support in Xiao nRF52840, RAK4631, Heltec T114 boards
This commit is contained in:
parent
7d1f52252b
commit
1f59e52880
17 changed files with 667 additions and 24 deletions
|
|
@ -56,6 +56,14 @@ public:
|
|||
virtual void setGpio(uint32_t values) {}
|
||||
virtual uint8_t getStartupReason() const = 0;
|
||||
virtual bool startOTAUpdate(const char* id, char reply[]) { return false; } // not supported
|
||||
|
||||
// Power management interface (boards with power management override these)
|
||||
virtual bool isExternalPowered() { return false; }
|
||||
virtual uint16_t getBootVoltage() { return 0; }
|
||||
virtual uint32_t getResetReason() const { return 0; }
|
||||
virtual const char* getResetReasonString(uint32_t reason) { return "Not available"; }
|
||||
virtual uint8_t getShutdownReason() const { return 0; }
|
||||
virtual const char* getShutdownReasonString(uint8_t reason) { return "Not available"; }
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue