add timestamp for last failed connection attempt
This commit is contained in:
@@ -123,6 +123,7 @@ uint8_t _wifiConnectFailCounter{};
|
|||||||
|
|
||||||
std::optional<StaError> _last_sta_error;
|
std::optional<StaError> _last_sta_error;
|
||||||
std::string _last_sta_error_message;
|
std::string _last_sta_error_message;
|
||||||
|
std::optional<espchrono::millis_clock::time_point> _last_wifi_connect_failed;
|
||||||
|
|
||||||
// scan
|
// scan
|
||||||
std::optional<espchrono::millis_clock::time_point> scanStarted;
|
std::optional<espchrono::millis_clock::time_point> scanStarted;
|
||||||
@@ -148,6 +149,7 @@ const std::optional<espchrono::millis_clock::time_point> &lastStaSwitchedToConne
|
|||||||
const bool &esp_wifi_started{_esp_wifi_started};
|
const bool &esp_wifi_started{_esp_wifi_started};
|
||||||
const uint8_t &sta_error_count{_wifiConnectFailCounter};
|
const uint8_t &sta_error_count{_wifiConnectFailCounter};
|
||||||
const std::string &last_sta_error_message{_last_sta_error_message};
|
const std::string &last_sta_error_message{_last_sta_error_message};
|
||||||
|
const std::optional<espchrono::millis_clock::time_point> &last_wifi_connect_failed{_last_wifi_connect_failed};
|
||||||
const std::optional<StaError> &last_sta_error{_last_sta_error};
|
const std::optional<StaError> &last_sta_error{_last_sta_error};
|
||||||
const std::vector<mac_t> &pastConnectPlan{_pastConnectPlan};
|
const std::vector<mac_t> &pastConnectPlan{_pastConnectPlan};
|
||||||
const mac_t ¤tConnectPlanEntry{_currentConnectPlanEntry};
|
const mac_t ¤tConnectPlanEntry{_currentConnectPlanEntry};
|
||||||
@@ -564,7 +566,7 @@ void update(const config &config)
|
|||||||
}
|
}
|
||||||
else if (_wifiConnectFailFlag && espchrono::ago(*_wifiConnectFailFlag) < 5s)
|
else if (_wifiConnectFailFlag && espchrono::ago(*_wifiConnectFailFlag) < 5s)
|
||||||
{
|
{
|
||||||
ESP_LOGI(TAG, "clearing connect fail flag");
|
ESP_LOGD(TAG, "clearing connect fail flag");
|
||||||
_wifiConnectFailFlag = std::nullopt;
|
_wifiConnectFailFlag = std::nullopt;
|
||||||
|
|
||||||
if (auto newConnectPlanWifisChecksum = calculateWifisChecksum(*config.sta);
|
if (auto newConnectPlanWifisChecksum = calculateWifisChecksum(*config.sta);
|
||||||
@@ -1373,7 +1375,8 @@ void wifi_event_callback(const config &config, const WifiEvent &event)
|
|||||||
const auto sta_status = get_sta_status();
|
const auto sta_status = get_sta_status();
|
||||||
if (sta_status != WiFiStaStatus::DISCONNECTING)
|
if (sta_status != WiFiStaStatus::DISCONNECTING)
|
||||||
{
|
{
|
||||||
ESP_LOGW(TAG, "setting fail flag");
|
ESP_LOGD(TAG, "setting fail flag");
|
||||||
|
_last_wifi_connect_failed = espchrono::millis_clock::now();
|
||||||
_wifiConnectFailFlag = espchrono::millis_clock::now();
|
_wifiConnectFailFlag = espchrono::millis_clock::now();
|
||||||
}
|
}
|
||||||
switch (sta_status)
|
switch (sta_status)
|
||||||
|
@@ -50,6 +50,8 @@ extern const bool &esp_wifi_started;
|
|||||||
extern const uint8_t &sta_error_count;
|
extern const uint8_t &sta_error_count;
|
||||||
extern const std::string &last_sta_error_message;
|
extern const std::string &last_sta_error_message;
|
||||||
|
|
||||||
|
extern const std::optional<espchrono::millis_clock::time_point> &last_wifi_connect_failed;
|
||||||
|
|
||||||
struct StaError
|
struct StaError
|
||||||
{
|
{
|
||||||
espchrono::millis_clock::time_point timestamp{espchrono::millis_clock::now()};
|
espchrono::millis_clock::time_point timestamp{espchrono::millis_clock::now()};
|
||||||
|
Reference in New Issue
Block a user