ESP32 WiFi Scanner Using Wokwi Online Simulator




This project demonstrates how to scan for available WiFi networks using an ESP32 microcontroller. We'll use the Wokwi online simulator, so you don't need any physical hardware to get started!


📡

Network Scanning

Detect nearby WiFi networks

📊

Signal Strength

View RSSI values

🔒

Security Detection

Identify encryption types

🌐

No Hardware Needed

Runs in Wokwi simulator

What is Wokwi?

Wokwi is a free online simulator for Arduino, ESP32, and other microcontrollers. It allows you to:

  • Write and test code without physical hardware
  • Simulate WiFi, sensors, and other components
  • Share projects with a simple link
  • Debug code in real-time
  • Learn electronics safely

Expected Output

WiFi Scanner Starting... Scan starting... Scan complete! Found 3 networks: 1: Wokwi-GUEST (Open) Signal: -42 dBm ▂▄▆█ Channel: 6 2: MyHomeNetwork (WPA2) Signal: -67 dBm ▂▄__ Channel: 11 3: Office-5G (WPA2) Signal: -78 dBm ▂___ Channel: 1 ------------------------------------ Scanning again in 5 seconds...


CODE:

 /* ESP32 WiFi Scanning example */


#include "WiFi.h"

void setup() {
  Serial.begin(115200);
  Serial.println("Initializing WiFi...");
  WiFi.mode(WIFI_STA);
  Serial.println("Setup done!");
}

void loop() {
  Serial.println("Scanning...");

  // WiFi.scanNetworks will return the number of networks found
  int n = WiFi.scanNetworks();
  Serial.println("Scan done!");
  if (n == 0) {
    Serial.println("No networks found.");
  } else {
    Serial.println();
    Serial.print(n);
    Serial.println(" networks found");
    for (int i = 0; i < n; ++i) {
      // Print SSID and RSSI for each network found
      Serial.print(i + 1);
      Serial.print(": ");
      Serial.print(WiFi.SSID(i));
      Serial.print(" (");
      Serial.print(WiFi.RSSI(i));
      Serial.print(")");
      Serial.println((WiFi.encryptionType(i) == WIFI_AUTH_OPEN) ? " " : "*");
      delay(10);
    }
  }
  Serial.println("");

  // Wait a bit before scanning again
  delay(5000);
}



Comments