cargo: back off missing BMS reconnect attempts
This commit is contained in:
@@ -26,6 +26,8 @@ static int bmsConnectFailCount = 0;
|
|||||||
static unsigned long bmsReconnectPausedUntil = 0;
|
static unsigned long bmsReconnectPausedUntil = 0;
|
||||||
static bool bmsSetupMode = false;
|
static bool bmsSetupMode = false;
|
||||||
static const unsigned long READ_INTERVAL_MS = 5000;
|
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;
|
BmsData bmsData;
|
||||||
|
|
||||||
@@ -307,6 +309,7 @@ static bool connectBms() {
|
|||||||
|
|
||||||
if (!appConfig.bms.enabled || appConfig.bms.address.length() == 0) {
|
if (!appConfig.bms.enabled || appConfig.bms.address.length() == 0) {
|
||||||
bmsData.connected = false;
|
bmsData.connected = false;
|
||||||
|
clearBmsReconnectBackoff();
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -322,6 +325,9 @@ static bool connectBms() {
|
|||||||
bmsData.connected = false;
|
bmsData.connected = false;
|
||||||
NimBLEDevice::deleteClient(client);
|
NimBLEDevice::deleteClient(client);
|
||||||
client = nullptr;
|
client = nullptr;
|
||||||
|
notifyChar = nullptr;
|
||||||
|
writeChar = nullptr;
|
||||||
|
scheduleBmsReconnectBackoff();
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -352,6 +358,7 @@ static bool connectBms() {
|
|||||||
|
|
||||||
Serial.println("BMS: Connected");
|
Serial.println("BMS: Connected");
|
||||||
bmsData.connected = true;
|
bmsData.connected = true;
|
||||||
|
clearBmsReconnectBackoff();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#define FIRMWARE_VERSION "0.5.1-cargo-ota"
|
#define FIRMWARE_VERSION "0.5.2-bms-missing-backoff"
|
||||||
#define FIRMWARE_NAME "overland-controller"
|
#define FIRMWARE_NAME "overland-controller"
|
||||||
|
|||||||
Reference in New Issue
Block a user