Index: firmware/App/Controllers/Buttons.c =================================================================== diff -u -r8c00197ce69e80f1967aa3f2eb36beb3573f36f3 -r1c628bfd5d6414b74b8cbd083f66839888a8236b --- firmware/App/Controllers/Buttons.c (.../Buttons.c) (revision 8c00197ce69e80f1967aa3f2eb36beb3573f36f3) +++ firmware/App/Controllers/Buttons.c (.../Buttons.c) (revision 1c628bfd5d6414b74b8cbd083f66839888a8236b) @@ -348,6 +348,24 @@ } return result; +} + +/*********************************************************************//** + * @brief + * The initiatePowerOff function initiates a power off sequence. + * @details Inputs: none + * @details Outputs: offRequestDelayTimer, offRequestPulseTimer, offRequestPulseCount, offButtonPressPending + * @return none + *************************************************************************/ +void initiatePowerOff( void ) +{ + // Warn NV Data Mgr that power will be lost shortly + signalPowerOffWarning(); + // Mimic confirmed power off button state to initiate power off cycle + offRequestDelayTimer = 0; + offRequestPulseTimer = 0; + offRequestPulseCount = OFF_REQUEST_PULSE_COUNT; + offButtonPressPending = TRUE; } /*********************************************************************//**