首页 > 解决方案 > 无法使用 ESP32 连接到家庭 WiFi?

问题描述

好的 - 太好了,我有这个 Arduino ESP32 代码,直到几天前它一直运行良好。之前,下面的代码运行良好。

if (wifi_ssid.length() > 0 && wifi_password.length() > 0 && clientId.length() > 0)
{
    WiFi.begin(wifi_ssid.c_str(), wifi_password.c_str());
    for (int i = 0; i < 8; i++)
    {
        delay(500);
        USE_SERIAL.print(".");
    }

    USE_SERIAL.println("");
    USE_SERIAL.println("WiFi connected");
    USE_SERIAL.println("IP address: ");
    USE_SERIAL.println(WiFi.localIP());
}
else if (count > 0)
{
    USE_SERIAL.println("MQTT Broker username, password, or client id are not saved in device preferences or are not correct. Please compelete device setup before connecting to MQTT Broker.");
    count++;
}

现在突然它不再起作用了,我得到了这个:WiFi连接的IP地址:0.0.0.0 ....[D][WiFiGeneric.cpp:337] _eventCallback():事件:5 - STA_DISCONNECTED [W][WiFiGeneric .cpp:353] _eventCallback():原因:201 - NO_AP_FOUND .... WiFi 连接 IP 地址:0.0.0.0 ....[D][WiFiGeneric.cpp:337] _eventCallback():事件:5 - STA_DISCONNECTED [ W][WiFiGeneric.cpp:353] _eventCallback():原因:201 - NO_AP_FOUND

我能够学到的是,如果我使用如下数据创建一个单独的 const char* :

const char *ssid = "MyAmazingSSID";
const char *wifiPassword = "B@tman2389$";

然后像这样连接到我的 SSID:

WiFi.begin(ssid, wifiPassword); 

它工作正常。当然,如果我尝试动态填充 ssid 和密码值的任何变化(例如

WiFi.begin(wifi_ssid.c_str(), wifi_password.c_str())

或者只是从字符串值创建一个缓冲区并将其复制过来我得到了旧的原因:201 - NO_AP_FOUND 废话。

有人以前见过这个或有任何想法吗?我已经在这个烂摊子上浪费了一个周末。完全没有意义的是,直到几天前它还运行良好。为此,我没有升级我的 WiFi 库或任何其他库。

标签: c++arduinoesp32

解决方案


太棒了——因为我被阻止了,所以开始做别的事情了。. . 这个周末又回来了。我在 MiFi 上尝试了我的代码,它运行良好。然后我意识到问题出在我的 Verizon Fios 调制解调器上。. . 我重置它,现在一切正常。呃感觉像个白痴。反正我们可以删除这个帖子吗?我实际上并不认为这对其他人有帮助 Lol


推荐阅读