diff --git a/src/app/ConnectivityManager.cpp b/src/app/ConnectivityManager.cpp index 95bf9e1..4ee7c0e 100644 --- a/src/app/ConnectivityManager.cpp +++ b/src/app/ConnectivityManager.cpp @@ -49,6 +49,12 @@ boolean ConnectivityManager::enableSTAAndAP(boolean enabled) return enableSTA(enabled) && enableAP(enabled); } +unsigned char ConnectivityManager::RSSIPercent() +{ + int RSSIdBm = RSSI(); + return COEF_RSSI * ((double)RSSIdBm - (double)MIN_RSSI); +} + unsigned char ConnectivityManager::getError() const { return _error; diff --git a/src/app/ConnectivityManager.h b/src/app/ConnectivityManager.h index da517ef..2613a33 100644 --- a/src/app/ConnectivityManager.h +++ b/src/app/ConnectivityManager.h @@ -7,12 +7,17 @@ #include "CFGDictionary.h" #include "definition.h" +#define MIN_RSSI -81 +#define MAX_RSSI -50 +#define COEF_RSSI 3.225806452 + class ConnectivityManager : public ESP8266WiFiClass { friend class SAB; public: boolean enableSTAAndAP(boolean enable); + unsigned char RSSIPercent(); unsigned char getError() const; protected: ConnectivityManager();