【问题标题】:esp32 stable wifi connection on reboot router/esp32, lost connection, bads connection etcesp32 重启路由器/esp32 时稳定的 wifi 连接、丢失连接、坏连接等
【发布时间】:2018-02-18 11:26:33
【问题描述】:

您好,有人管理过稳定的 wifi 连接,可以处理各种问题,例如断电、路由器重启、wifi 丢失并管理机器以正确重新连接吗?此代码不会以稳定的方式工作:

void setup() {
   wifiConnect();
}

 void loop(){
    wifiConnect();
 }
void wifiConnect(){  
  if(WiFi.status() != WL_CONNECTED) {
      Serial.print("Connecting to ");
      Serial.println(ssid);  
      WiFi.begin(ssid, password);  
      // attempt to connect to Wifi network:

      while(WiFi.status() != WL_CONNECTED) {
        // Connect to WPA/WPA2 network. 
        delay(500);
        Serial.print(".");
      }
      Serial.println("");
      Serial.println("WiFi connected");
      Serial.println("IP address: ");
      Serial.println(WiFi.localIP());
  }  
}

这在 raspberry 上非常稳定且容易,因为 pi 可以处理它,但在 esp32 上,示例代码根本无法处理可能出现的所有问题。如果遇到无法调试的问题,非常令人沮丧。

【问题讨论】:

    标签: arduino esp32


    【解决方案1】:

    这对我来说非常有效(路由器重启、频道更改、WiFi 丢失等):

    void setup()
    {
      WiFi.begin(ssid, password);
    }
    
    void loop()
    {   
      wifiConnect();
      delay(10000);      
    }
    
    void wifiConnect()
    {
      if (WiFi.status() != WL_CONNECTED) {
        WiFi.disconnect(true);
        delay(1000);
        WiFi.begin(ssid, password);
        return;
      }
      // other stuff
    }
    

    【讨论】:

      猜你喜欢
      • 2022-06-13
      • 1970-01-01
      • 1970-01-01
      • 2022-08-16
      • 2022-08-02
      • 1970-01-01
      • 2020-10-18
      • 1970-01-01
      • 2019-12-16
      相关资源
      最近更新 更多