mirror of
https://github.com/infiniteCable2/panda.git
synced 2026-02-18 17:23:52 +08:00
Only allow deep sleep if there's been ignition before (#1019)
* add another gate for deepsleep * Minimum uptime for deep sleep (#1020) add minimum uptime before going back to deepsleep
This commit is contained in:
@@ -28,7 +28,9 @@
|
||||
// ********************* Serial debugging *********************
|
||||
|
||||
bool check_started(void) {
|
||||
return current_board->check_ignition() || ignition_can;
|
||||
bool started = current_board->check_ignition() || ignition_can;
|
||||
ignition_seen |= started;
|
||||
return started;
|
||||
}
|
||||
|
||||
void debug_ring_callback(uart_ring *ring) {
|
||||
@@ -419,7 +421,7 @@ int main(void) {
|
||||
}
|
||||
#endif
|
||||
} else {
|
||||
if (deepsleep_allowed && !usb_enumerated && !check_started()) {
|
||||
if (deepsleep_allowed && !usb_enumerated && !check_started() && ignition_seen && (heartbeat_counter > 20U)) {
|
||||
usb_soft_disconnect(true);
|
||||
current_board->set_fan_power(0U);
|
||||
current_board->set_usb_power_mode(USB_POWER_CLIENT);
|
||||
|
||||
@@ -22,6 +22,7 @@ bool heartbeat_disabled = false; // set over USB
|
||||
|
||||
// Enter deep sleep mode
|
||||
bool deepsleep_allowed = false;
|
||||
bool ignition_seen = false;
|
||||
|
||||
// siren state
|
||||
bool siren_enabled = false;
|
||||
|
||||
Reference in New Issue
Block a user