cargo: back off missing BMS reconnect attempts

This commit is contained in:
2026-06-22 22:39:54 -06:00
parent a18ed0aeca
commit b11151c832
2 changed files with 8 additions and 1 deletions
@@ -26,6 +26,8 @@ static int bmsConnectFailCount = 0;
static unsigned long bmsReconnectPausedUntil = 0;
static bool bmsSetupMode = false;
static const unsigned long READ_INTERVAL_MS = 5000;
static const unsigned long BMS_CONNECT_BACKOFF_INITIAL_MS = 30000;
static const unsigned long BMS_CONNECT_BACKOFF_MAX_MS = 300000;
BmsData bmsData;
@@ -307,6 +309,7 @@ static bool connectBms() {
if (!appConfig.bms.enabled || appConfig.bms.address.length() == 0) {
bmsData.connected = false;
clearBmsReconnectBackoff();
return false;
}
@@ -322,6 +325,9 @@ static bool connectBms() {
bmsData.connected = false;
NimBLEDevice::deleteClient(client);
client = nullptr;
notifyChar = nullptr;
writeChar = nullptr;
scheduleBmsReconnectBackoff();
return false;
}
@@ -352,6 +358,7 @@ static bool connectBms() {
Serial.println("BMS: Connected");
bmsData.connected = true;
clearBmsReconnectBackoff();
return true;
}
@@ -1,4 +1,4 @@
#pragma once
#define FIRMWARE_VERSION "0.5.1-cargo-ota"
#define FIRMWARE_VERSION "0.5.2-bms-missing-backoff"
#define FIRMWARE_NAME "overland-controller"