🛠 Scan des réseaux Wi-Fi

ESP32 (original, classe ESP32-WROOM-32) · debutant · Schéma : IMG-esp32-debutant-1-wifi-scan-reseaux.svg — Carte ESP32 à côté d'un routeur Wi-Fi avec liste des réseaux détectés et barres de signal

Objectifs

Découvrir la pile Wi-Fi de l'ESP32 (double cœur Xtensa, radio 2,4 GHz intégrée) en effectuant un scan passif des réseaux environnants. À la fin, vous saurez initialiser le mode station, lancer un scan et interpréter le SSID, le RSSI et le canal de chaque réseau.

Matériel

Code complet

#include <WiFi.h>

void setup {
  Serial.begin(115200);
  delay(500);
  WiFi.mode(WIFI_STA);   // mode station : indispensable avant un scan
  WiFi.disconnect;     // s'assure qu'aucune connexion ne gêne le scan
  delay(200);
  Serial.println(F("Scan en cours..."));
}

void loop {
  int n = WiFi.scanNetworks;
  if (n == 0) {
    Serial.println(F("Aucun réseau trouve"));
  } else {
    Serial.printf("%d réseau(x) :\n", n);
    for (int i = 0; i < n; i++) {
      Serial.printf("  [%d] %-20s RSSI %d dBm canal %d\n",
                    i, WiFi.SSID(i).c_str, WiFi.RSSI(i), WiFi.channel(i));
    }
  }
  delay(5000);
}

Vérification attendue

La console à 115200 bauds affiche « Scan en cours... » puis une liste de réseaux avec, pour chacun, le nom (SSID), la puissance du signal (RSSI entre environ -40 et -90 dBm) et le canal (1 à 13). Approcher ou éloigner la carte fait varier le RSSI. Le scan se répète toutes les 5 secondes.

Erreurs fréquentes

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels