wifi_scan.ino

Arduino Nicla Vision · Archivo : wifi_scan.ino · Lenguaje : Arduino · Uso : Lister les réseaux Wi-Fi via le module NINA

El módulo inalámbrico de la Nicla Vision (componente familia ESP32, manejado por la librería WiFiNINA del core) barre las redes Wi-Fi e imprime SSID y potencia. Primer paso antes de conectar y ya un indicador de cobertura.

Hardware

Una Arduino Nicla Vision (STM32H7 M7+M4, 23×23 mm) con cámara GC2145, IMU LSM6DSOX, micrófono PDM, ToF (VL53Lx), módulo ESP32 Wi-Fi/BLE y LED RGB (LEDR/G/B). La placa sola, alimentada por USB. Antena embarcada; para una prueba cercana basta un punto de acceso cerca.

Cableado

Sin cableado: el módulo está en la placa, también la antena. La antena de cerámica ve ~10 m en interior.

Funcionamiento

WiFi.status() comprueba que el módulo responde; scanNetworks devuelve el número de redes y SSID(i)/RSSI(i) sus rasgos. El RSSI en dBm (típicamente -50 fuerte, -85 límite) califica la ubicación.

Ejecución

Programación desde Arduino IDE (core ArduinoCore-mbed) por USB-C; librerías Camera, PDM, LSM6DSOX, WiFiNINA y ArduinoBLE.

Variantes

Conectarse a un SSID y enviar sensores por HTTP, escanear periódicamente para mapear potencia, o usar el RSSI como geolocalización gruesa.

wifi_scan.ino

// Le module sans fil embarqué (famille ESP32, piloté comme un
// module NINA) sert de scanner Wi-Fi : liste des SSID + RSSI.

#include <WiFiNINA.h>

void setup() {
  Serial.begin(115200);
  while (!Serial) { ; }

  if (WiFi.status() == WL_NO_MODULE) {
    Serial.println("Module Wi-Fi absent !");
    while (1) { ; }
  }
  Serial.println("Scan des réseaux...");
  int n = WiFi.scanNetworks();
  if (n == 0) {
    Serial.println("Aucun réseau trouvé");
  }
  for (int i = 0; i < n; i++) {
    Serial.print(WiFi.SSID(i));
    Serial.print("  ");
    Serial.print(WiFi.RSSI(i));
    Serial.println(" dBm");
  }
  Serial.println("Scan terminé.");
}

void loop() {
  // Rien de périodique ici : le scan tourne une fois au boot.
}

← Volver a la ficha