Soluzione per cambio rete wifi

Buongiorno a tutti!
Avrei bisogno di un vostro consiglio per trovare una soluzione semplice ad un problema.
Sto utilizzando la notifica telegram quando un tasto viene premuto, come potete vedere nel codice sotto

#include <SPI.h>

#include <WiFiNINA.h>


#include <UniversalTelegramBot.h>
// Library for connecting to Telegram

#include <ArduinoJson.h>

#define BOT_TOKEN "MyToken"

#define chat_id "MyID"

char SSID[] = "Myssid";         // your network SSID (name)
char PASS[] = "Mypass"; // your network password

int status = WL_IDLE_STATUS;

WiFiSSLClient client;
UniversalTelegramBot bot(BOT_TOKEN, client);

void printWiFiStatus() {
  // print the SSID of the network you're attached to:
  Serial.print("SSID: ");
  Serial.println(WiFi.SSID());

  // print your board's IP address:
  IPAddress ip = WiFi.localIP();
  Serial.print("IP Address: ");
  Serial.println(ip);

  // print the received signal strength:
  long rssi = WiFi.RSSI();
  Serial.print("signal strength (RSSI):");
  Serial.print(rssi);
  Serial.println(" dBm");
}

void setup()
{
  //Initialize serial and wait for port to open:
  Serial.begin(9600); {
    // This delay gives the chance to wait for a Serial Monitor without blocking if none is found
  // Defined in thingProperties.h
  }

  // check for the WiFi module:
  if (WiFi.status() == WL_NO_MODULE) {
    Serial.println("Communication with WiFi module failed!");
    // don't continue
    while (true);
  }

  String fv = WiFi.firmwareVersion();
  if (fv < "1.0.0") {
    Serial.println("Please upgrade the firmware");
  }

  // attempt to connect to WiFi network:
  while (status != WL_CONNECTED) {
    Serial.print("Attempting to connect to SSID: ");
    Serial.println(SSID);
    // Connect to WPA/WPA2 network. Change this line if using open or WEP network:
    status = WiFi.begin(SSID, PASS);

    // wait 10 seconds for connection:
    delay(10000);
  }
  Serial.println("Connected to wifi");
  printWiFiStatus();

  pinMode (4, INPUT);
  
  bot.sendMessage(chat_id, "Connesso!", "");
}

void loop() {

  if (digitalRead(4)) {
    bot.sendMessage(chat_id, "Aperto", "");
    // Attesa tempo 8 ore per ripristino tasto
    delay(28800000);
  } else {
  }
}

Vorrei trovare una soluzione semplice per configurare la rete wifi inserendo semplicemente i dati, senza mettere mano al codice ogni volta.
Ho provato con la libreria WiFi Manager, ma non riesco a recuperare SSID e PASS inseriti nel web portal.
Qualcuno mi può suggerire una soluzione semplice per fare ciò?

Ringrazio in anticipo.
Alessandro

Ti rammento che, da regolamento, è permesso sollecitare risposte (fare "up") solo dopo almeno 48 ore dall'ultimo post.

Guglielmo

:arrow_up: :arrow_up: :arrow_up:

ti serve comunque un wifimanager.
Che scheda stai usando ?

Sto usando un 33 iot, ho provato il wifimanager, ma una volta connesso alla rete non riesco a dirgli come far riferimento alla rete che seleziono. Volendo potrei usare anche un file su sd e recuperare quei 2 valori, ma non so come recuperarli e impostarli come SSID e pass.
Sono bloccato :sweat:

Se è quella rete, metti quella password; se è quell'altra, metti quell'altra password...

Scusa, ma se ben ricordo, WiFiManager, se non riesce a collegarsi ad una rete pre impostata, trasforma il modulo in un "access point" e, collegadosi a detto "access point", si riceve una maschera dove introdurre SSID e password della rete a cui collegarsi. Al riavvio il processo si ripete e quindi, se è stato dato il giusto SSID e la giusta password, si collega alla rete.

Quindi ... cosa significa:

Guglielmo

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.