From b943cc347874bbbed509b095473a4815b81c2f0a Mon Sep 17 00:00:00 2001 From: Bertrand Lemasle Date: Mon, 6 Aug 2018 16:14:12 +1200 Subject: [PATCH] Reworked network isAvailable condition to gain 26 bytes on hex size --- Network.cpp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/Network.cpp b/Network.cpp index 5ec6ff6..c812668 100644 --- a/Network.cpp +++ b/Network.cpp @@ -37,7 +37,7 @@ namespace network { report = hardware::sim808::device.getSignalQuality(); NOTICE_FORMAT("waitForRegistered", "%d, [%d %ddBm]", currentStatus.stat, report.ssri, report.attenuation); - + if (report.ssri < NETWORK_DEFAULT_NO_NETWORK_QUALITY_THRESHOLD) noReliableNetwork++; else noReliableNetwork = 0; if (noReliableNetwork > NETWORK_DEFAULT_NO_NETWORK_TRIES) { @@ -50,14 +50,15 @@ namespace network { } while (timeout > 1); - report = hardware::sim808::device.getSignalQuality(); + report = hardware::sim808::device.getSignalQuality(); //FIXME : report does not match currentStatus NOTICE_FORMAT("waitForRegistered", "%d, [%d %ddBm]", currentStatus.stat, report.ssri, report.attenuation); - return currentStatus; + return currentStatus; //FIXME : on last loop waited for nothing } bool isAvailable(SIM808_NETWORK_REGISTRATION_STATE state) { - return state == SIM808_NETWORK_REGISTRATION_STATE::REGISTERED || - state == SIM808_NETWORK_REGISTRATION_STATE::ROAMING; + return static_cast(state) & + (static_cast(SIM808_NETWORK_REGISTRATION_STATE::REGISTERED) | static_cast(SIM808_NETWORK_REGISTRATION_STATE::ROAMING)) + != 0; } bool enableGprs() {