Merge pull request #313 from airgradienthq/fix/mode-cloud-disable

Fix bootloop when cloud connection is disabled
This commit is contained in:
Samuel Siburian
2025-05-08 01:28:07 +07:00
committed by GitHub

View File

@@ -555,6 +555,11 @@ static bool sgp41Init(void) {
}
void checkForFirmwareUpdate(void) {
if (configuration.isCloudConnectionDisabled()) {
Serial.println("Cloud connection is disabled, skip firmware update");
return;
}
AirgradientOTA *agOta;
if (networkOption == UseWifi) {
agOta = new AirgradientOTAWifi;
@@ -1562,6 +1567,8 @@ void restartIfCeClientIssueOverTwoHours() {
}
void networkingTask(void *args) {
// If cloud connection enabled, run first transmission to server at boot
if (configuration.isCloudConnectionDisabled() == false) {
// OTA check on boot
#ifndef ESP8266
checkForFirmwareUpdate();
@@ -1578,10 +1585,10 @@ void networkingTask(void *args) {
postUsingCellular(true);
measurementSchedule.update();
}
// Reset scheduler
configSchedule.update();
transmissionSchedule.update();
}
while (1) {
// Handle reconnection based on mode
@@ -1637,7 +1644,7 @@ void networkingTask(void *args) {
// If connection to AirGradient server disable don't run config and transmission schedule
if (configuration.isCloudConnectionDisabled()) {
delay(1000);
return;
continue;
}
// Run scheduler