From 86cd90b94aa0b2030a6b55e4b8e23d52484ed43e Mon Sep 17 00:00:00 2001 From: samuelbles07 Date: Thu, 27 Mar 2025 16:10:56 +0700 Subject: [PATCH] Handling cellular client not ready better --- examples/OneOpenAir/OneOpenAir.ino | 14 ++++++++------ src/Libraries/airgradient-client | 2 +- src/Main/BoardDef.h | 2 +- 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/examples/OneOpenAir/OneOpenAir.ino b/examples/OneOpenAir/OneOpenAir.ino index 2910869..955b0fb 100644 --- a/examples/OneOpenAir/OneOpenAir.ino +++ b/examples/OneOpenAir/OneOpenAir.ino @@ -1455,7 +1455,12 @@ void networkSignalCheck() { } else if (networkOption == UseCellular) { auto result = cell->retrieveSignal(); if (result.status != CellReturnStatus::Ok) { - // TODO: Need to do something when get signal failed + agClient->setClientReady(false); + return; + } + if (result.data == 99) { + // 99 indicate cellular not attached to network + agClient->setClientReady(false); return; } Serial.printf("Cellular signal strength %d\n", result.data); @@ -1496,11 +1501,8 @@ void networkingTask(void *args) { } } else if (networkOption == UseCellular) { - // Check if last fetch config and post measures failed - // It can be an indication that module has a problem - if (agClient->isLastFetchConfigSucceed() == false || - agClient->isLastPostMeasureSucceed() == false) { - Serial.println("Last server communication might failed, checking..."); + if (agClient->isClientReady() == false) { + Serial.println("Cellular client not ready, ensuring connection..."); if (agClient->ensureClientConnection() == false) { Serial.println("Cellular client connection not ready, retry in 5s..."); delay(5000); diff --git a/src/Libraries/airgradient-client b/src/Libraries/airgradient-client index b76bb96..774f8b7 160000 --- a/src/Libraries/airgradient-client +++ b/src/Libraries/airgradient-client @@ -1 +1 @@ -Subproject commit b76bb9635bf099d199e22c0cefe43f3921b27b5d +Subproject commit 774f8b70e68a6c867d72d7a8ed2d6b12354cb9bd diff --git a/src/Main/BoardDef.h b/src/Main/BoardDef.h index 9c25453..58748a7 100644 --- a/src/Main/BoardDef.h +++ b/src/Main/BoardDef.h @@ -10,7 +10,7 @@ } #else #include -#define AgLog(c, ...) log_d(c, ##__VA_ARGS__) +#define AgLog(c, ...) log_i(c, ##__VA_ARGS__) #endif /**