fix reboot device after WiFi portal configure timeout.

This commit is contained in:
Phat Nguyen
2024-06-05 19:01:25 +07:00
parent 2ae90444bb
commit da323b1a46
3 changed files with 19 additions and 4 deletions

View File

@ -242,6 +242,7 @@ void setup() {
ledBarEnabledUpdate();
}
} else {
if (wifiConnector.isConfigurePorttalTimeout()) {
oledDisplay.showRebooting();
delay(2500);
oledDisplay.setText("", "", "");
@ -249,6 +250,7 @@ void setup() {
}
}
}
}
/** Set offline mode without saving, cause wifi is not configured */
if (wifiConnector.hasConfigurated() == false) {
Serial.println("Set offline mode cause wifi is not configurated");

View File

@ -53,6 +53,7 @@ bool WifiConnector::connect(void) {
WIFI()->setAPCallback([this](WiFiManager *obj) { _wifiApCallback(); });
WIFI()->setSaveConfigCallback([this]() { _wifiSaveConfig(); });
WIFI()->setSaveParamsCallback([this]() { _wifiSaveParamCallback(); });
WIFI()->setConfigPortalTimeoutCallback([this](){});
if (ag->isOne()) {
disp.setText("Connecting to", "WiFi", "...");
} else {
@ -245,6 +246,7 @@ void WifiConnector::_wifiSaveParamCallback(void) {
bool WifiConnector::_wifiConfigPortalActive(void) {
return WIFI()->getConfigPortalActive();
}
void WifiConnector::_wifiTimeoutCallback(void) { connectorTimeout = true; }
#endif
/**
* @brief Process WiFiManager connection
@ -352,3 +354,11 @@ bool WifiConnector::hasConfigurated(void) {
}
return true;
}
/**
* @brief Get WiFi connection porttal timeout.
*
* @return true
* @return false
*/
bool WifiConnector::isConfigurePorttalTimeout(void) { return connectorTimeout; }

View File

@ -24,6 +24,7 @@ private:
bool hasConfig;
uint32_t lastRetry;
bool hasPortalConfig = false;
bool connectorTimeout = false;
bool wifiClientConnected(void);
@ -44,6 +45,7 @@ public:
void _wifiSaveConfig(void);
void _wifiSaveParamCallback(void);
bool _wifiConfigPortalActive(void);
void _wifiTimeoutCallback(void);
#endif
void _wifiProcess();
bool isConnected(void);
@ -51,6 +53,7 @@ public:
int RSSI(void);
String localIpStr(void);
bool hasConfigurated(void);
bool isConfigurePorttalTimeout(void);
};
#endif /** _AG_WIFI_CONNECTOR_H_ */