【问题标题】:ESP32 can't connect to iPhone Personal HotspotESP32 无法连接到 iPhone 个人热点
【发布时间】:2021-04-14 03:11:40
【问题描述】:

这是我的代码

#include <WiFi.h>
 
const char* ssid     = "wifiname";
const char* password = "12345678";

void setup() {
  Serial.begin(115200);
  WiFi.mode(WIFI_STA); // SETS TO STATION MODE!
  WiFi.begin(ssid, password);

  while (WiFi.status() != WL_CONNECTED) {
    Serial.print(".");
    delay(1000);
  }  
  Serial.print("IP is ");
  Serial.println(WiFi.localIP());
}

void loop() {
}

我可以使用 WiFiscan 例程找到我 iPhone 的个人热点,但我无法连接到它。

【问题讨论】:

  • ESP32 支持 2.4GHz 频率范围。会不会是你的 iPhone 在 5GHz 范围内创建了热点?

标签: arduino esp32 arduino-esp32


【解决方案1】:

我测试了您的代码,并且能够将我的 ESP32 连接到我的 iPhone 8+。由于您能够扫描 iPhone 的热点,您可以尝试以下操作:

  • 确保您使用的是 2.4GHz 热点而不是 5GHz。如果您的 iPhone 12 现在支持 5GHz 热点,请转到设置 -> 个人热点 -> 启用(!)“最大化兼容性”来禁用 5GHz
  • 尝试连接其他 wifi(在 2.4GHz 范围内)
  • (听起来很愚蠢,但是):您是否尝试更改 iPhone 上的 SSID 和密码?你确定你的“ssid”和“password”变量都是正确的(没有拼写错误)吗?出于测试目的,您甚至可以尝试排除特殊字符,只使用字母和数字。
  • 如果全部失败,则可能是硬件问题。您是否尝试使用其他 ESP32?

【讨论】:

  • 连接热点时,只是偶尔连接成功。大多数时候,我的 iPhone 一直在显示“可发现”和“1 个连接”之间切换。
【解决方案2】:

FWIW:我显然能够将 ESP32 芯片的 Wifi 连接到运行 IOS 15.3.1 的 iPhone13 pro。代码行:

WiFi.mode(WIFI_STA); // SETS TO STATION MODE!

是让我建立这种联系的突破口。请注意,即使使用设置->个人热点->最大化兼容性已禁用,我也可以建立连接。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-03
    • 2022-06-11
    • 1970-01-01
    • 2017-09-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多