#include "wifi_util.h" #include "web_config.h" #include "util.h" #include "ntp.h" #include "led_effects.h" #include "sensor_console.h" #if defined(ESP8266) # include #elif defined(ESP32) # include #endif namespace wifi { char local_ip[16]; // "255.255.255.255\0" bool connected() { return WiFi.status() == WL_CONNECTED; } void scanNetworks() { Serial.println(); Serial.println(F("WiFi - Scanning...")); bool async = false; bool showHidden = true; int n = WiFi.scanNetworks(async, showHidden); for (int i = 0; i < n; ++i) { Serial.print(F(" * '")); Serial.print(WiFi.SSID(i)); Serial.print(F("' (")); int16_t quality = 2 * (100 + WiFi.RSSI(i)); Serial.print(util::min(util::max(quality, 0), 100)); Serial.println(F(" %)")); } Serial.println(F("Done!")); Serial.println(); } void showLocalIp() { Serial.print(F("WiFi - Local IP : ")); Serial.println(wifi::local_ip); Serial.print(F("WiFi - SSID : ")); Serial.println(config::selected_ssid()); } void defineCommands() { sensor_console::defineCommand("wifi_scan", scanNetworks, F("(Scans available WiFi networks)")); sensor_console::defineCommand("local_ip", showLocalIp, F("(Displays local IP and current SSID)")); } }