ESP32 zapnutí po výpadku napájení bez sítě

Uživatelský avatar
kiRRow
Příspěvky: 1317
Registrován: 07 kvě 2019, 07:03
Bydliště: Opava

Re: ESP32 zapnutí po výpadku napájení bez sítě

Příspěvek od kiRRow » 30 dub 2024, 15:42

No nenačetlo se to zřejmě proto, že jsi se je snažil načítat v momentě kdy neexistovalo připojení .... :?:

myslel jsem to spíš tak, že půjdeš cestou, že ten pokus o navázání spojení s wifi vyhodíš že setupu a uděláš z toho samostatnou funkci, kterou se pokusíš zavolat v setupu ... pokud se to nepovede, tak se vykašleš na nějaké další nastavování parametrů a skočíš do loopu, stím že jsi je program vědom, že spojení s wifi neexistuje a bude přeskakovat funkce a příkazy, které to spojení potřebují a zároveň třeba jednou za 5minut zkusí znovu to spojení navázat, nastavit parametry a pokud bude úspěšný, tak se přestanou přeskakovat ty funkce ...

Cmrnda
Příspěvky: 43
Registrován: 25 dub 2024, 17:58

Re: ESP32 zapnutí po výpadku napájení bez sítě

Příspěvek od Cmrnda » 19 črc 2025, 00:12

kiRRow píše:
30 dub 2024, 15:42
No nenačetlo se to zřejmě proto, že jsi se je snažil načítat v momentě kdy neexistovalo připojení .... :?:

myslel jsem to spíš tak, že půjdeš cestou, že ten pokus o navázání spojení s wifi vyhodíš že setupu a uděláš z toho samostatnou funkci, kterou se pokusíš zavolat v setupu ... pokud se to nepovede, tak se vykašleš na nějaké další nastavování parametrů a skočíš do loopu, stím že jsi je program vědom, že spojení s wifi neexistuje a bude přeskakovat funkce a příkazy, které to spojení potřebují a zároveň třeba jednou za 5minut zkusí znovu to spojení navázat, nastavit parametry a pokud bude úspěšný, tak se přestanou přeskakovat ty funkce ...
Nakonec jsem použil v loop:
if (!WiFi.config(local_IP, gateway, subnet, primaryDNS, secondaryDNS))
{
//
}
// Volani
ConnectToWiFi_setup();

Setup:
void ConnectToWiFi_setup()
{
Serial.println("Connecting to WiFi network: " + String(ssid));

// delete old config
WiFi.disconnect(true);
//register event handler
WiFi.onEvent(WiFiEvent);
//Initiate connection
WiFi.begin(ssid, password);
WiFi.begin();
WiFi.setAutoReconnect(true);

Serial.println("Waiting for WIFI connection...");
}

//wifi event handler
void WiFiEvent(WiFiEvent_t event){
switch(event) {
case ARDUINO_EVENT_WIFI_STA_GOT_IP:
//When connected set
Serial.print("WiFi connected! IP address: ");
Serial.println(WiFi.localIP());
//initializes the UDP state
//This initializes the transfer buffer
udp.begin(WiFi.localIP(),UDP_port);
connected = true;
break;
case ARDUINO_EVENT_WIFI_STA_DISCONNECTED:
Serial.println("WiFi lost connection");
connected = false;
break;
default: break;
}
}

Opsáno z internetu a plně funkční pro ver.2.x žadnej problem neni, po výpadku po 10 min (volitelně, jak kdo si naprogramuje) se to výše obnoví, atd. Super.

Kdybych věřil na boha, tak řeknu: Pro boha proč mi nejde Ver.3x? Knihovnu pro wifi přejmenovali, ale i tak s ní nic nejde. Nějakej nucenej přechod zatím nemusím, mám procesor z doby knihovny "2.x ", tj. koupené ESP V 3.0 a V3.1 a zatím žádný problém.
Co až příjde verze knihoven 4.x? Já bych řekl že to jsou pitomci a pro nové verze čipů mají akorát důvod že si nějaká firma zaplatí tam něco vpresovat ve svůj prospěch... ZigBe apod. :roll:

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 0 hostů