WeatherDuino Forum
Wifi Signal Bars - Printable Version

+- WeatherDuino Forum (https://www.meteocercal.info/forum)
+-- Forum: Weather Stations & Environmental Measurement Equipment - WeatherDuino 4Pro Line (https://www.meteocercal.info/forum/Forum-Weather-Stations-Environmental-Measurement-Equipment-WeatherDuino-4Pro-Line)
+--- Forum: Air Quality Measurement (https://www.meteocercal.info/forum/Forum-Air-Quality-Measurement)
+---- Forum: User support forum for 4Pro Air Quality Measurement equipment (https://www.meteocercal.info/forum/Forum-User-support-forum-for-4Pro-Air-Quality-Measurement-equipment)
+---- Thread: Wifi Signal Bars (/Thread-Wifi-Signal-Bars)



Wifi Signal Bars - Phil23 - 29-06-2022

Noticed my Wifi Bars were missing on my display while testing.
Webpage was reporting RSSI as -55.

Would that mean all the IF statements below failed as the signal was exactly -55, not > or < ?
Bars did appear when Signal changed to -51.

Assume:-
    if (rssi > -55) WiFibars = 3;

Will fix it but what will be appropriate for the other two lines?

Thanks

Phil.
 
Code:
// ---------------------------------------------------------------
//    Draw WiFi signal strenght on the clock display
// ---------------------------------------------------------------
#if (ENABLE_WIFI == 1)
  void get_Wifistrength()
  {
    rssi = WiFi.RSSI();
  
    if (rssi > -55) WiFibars = 3;
    else if (rssi < -55 && rssi > -70) WiFibars = 2;
    else if (rssi < -70 && rssi > -82) WiFibars = 1;
    else WiFibars = 0;
  }
#endif

Edit:- Or would this work correctly?
 
Code:
#if (ENABLE_WIFI == 1)
  void get_Wifistrength()
  {
    rssi = WiFi.RSSI();
  
    if (rssi >= -55) WiFibars = 3;
    else if (rssi >= -70) WiFibars = 2;
    else if (rssi >= -82) WiFibars = 1;
    else WiFibars = 0;
  }
#endif



RE: Wifi Signal Bars - werk_ag - 30-06-2022

Hi Phil

Indeed it should be:

Code:
if (rssi >= -55) WiFibars = 3

Thanks for having pointed it to me. Like

(29-06-2022, 07:44)Phil23 Wrote:  Edit:- Or would this work correctly?

Code:
#if (ENABLE_WIFI == 1)
  void get_Wifistrength()
  {
    rssi = WiFi.RSSI();
  
    if (rssi >= -55) WiFibars = 3;
    else if (rssi >= -70) WiFibars = 2;
    else if (rssi >= -82) WiFibars = 1;
    else WiFibars = 0;
  }
#endif

This will work perfectly, and its more elegant Cool
Adopted for next release.
Thanks

Rgs.
Werk_AG