🛠 Scanner les réseaux Wi-Fi 2,4 GHz
Objetivos
Poner el Wi-Fi en modo estación, escanear las redes circundantes con WiFi.scanNetworks, mostrar SSID, RSSI y canal, y sentar las bases de una conexión. El Nano ESP32 (módulo NORA-W106) solo admite Wi-Fi 4 de 2,4 GHz (802.11 b/g/n).
Material
- 1 × Arduino Nano ESP32 + cable USB-C
- Un punto de acceso de 2,4 GHz (un router solo de 5 GHz no será visible)
Código completo
#include <WiFi.h>
void setup {
Serial.begin(115200);
delay(1000);
WiFi.mode(WIFI_STA); // station, pas de point d'accès
Serial.print("Scan en cours...");
int n = WiFi.scanNetworks; // appel bloquant
Serial.printf(" %d réseaux trouvés\n", n);
for (int i = 0; i < n; i++) {
Serial.printf("%2d | %-24s | %4d dBm | canal %2d\n",
i + 1, WiFi.SSID(i).c_str, WiFi.RSSI(i), WiFi.channel(i));
}
WiFi.scanDelete; // libère la mémoire du scan
}
void loop {}
Verificación esperada
La consola lista las redes con su potencia RSSI (típicamente de -40 a -90 dBm) y su canal. La red más cercana tiene el RSSI menos negativo; el escaneo suele encontrar una decena de redes en un apartamento.
Errores frecuentes
- Olvidar WiFi.mode(WIFI_STA): el escaneo puede no devolver nada.
- Router solo de 5 GHz: lista vacía, el módulo es solo 802.11 b/g/n de 2,4 GHz.
- Olvidar WiFi.scanDelete en un bucle de escaneo repetido: la memoria de los resultados se acumula.
- Confundir los núcleos (cores): utilizar el paquete «Arduino ESP32 Boards», no el paquete Espressif, de lo contrario no se instalará ningún controlador en Windows.
Otros tutoriales para esta placa
Ejemplos de código para esta placa
connexion-wifi.inoArduinopoint-acces.inoArduinoble-capteur.inoArduinoneoled-rgb.inoArduinoadc-12bits.inoArduinopreferences.inoArduino