OpenHarmony开发者论坛
标题:
esp32 移植openharmony wifi模式只能连接没密码的热点,带密码的热点连接不上
[打印本页]
作者:
zlx0606
时间:
2026-1-21 19:12
标题:
esp32 移植openharmony wifi模式只能连接没密码的热点,带密码的热点连接不上
[md]### 【问题描述】
1. 介绍问题现象和发生的背景
(1)参考拓维信息的niobeu4开发板,在esp32上移植了openharmony5.0.2,编译烧录测试简单程序,系统正常运行,串口正常输出。
(2)测试wifi功能,按照openharmony wifi sta功能api开发wifi程序,结果发现只能连接上没有密码的热点,无法连接有密码的热点。
(3)使用esp-idf原生的api开发wifi(系统环境是openharmony,只更换api),结果也是只能连接没有密码的热点,无法连接带密码的热点。
2. 相关的代码(请勿使用截图)
```c
int WifiConnect(void)
{
WifiScanInfo *info = NULL;
unsigned int size = WIFI_SCAN_HOTSPOT_LIMIT;
static struct netif *g_lwip_netif = NULL;
WifiDeviceConfig select_ap_config = {0};
int result;
osDelay(OD_DELAY_200);
printf("<--System Init-->\r\n");
WiFiInit();
printf(" Wifi Init succeed! \r\n");
if (EnableWifi() != WIFI_SUCCESS) {
printf("EnableWifi failed, wifi_error = %d\n", wifi_error);
return -1;
}
printf(" EnableWifi succeed! \r\n");
if (IsWifiActive() == 0) {
printf("Wifi station is not actived.\n");
return -1;
}
printf(" Wifi station is actived! \r\n");
info = malloc(sizeof(WifiScanInfo) * WIFI_SCAN_HOTSPOT_LIMIT);
if (info == NULL) {
printf("faild to create wifiscanInfo.\n");
return -1;
}
printf(" Wifi Scan start! \r\n");
do {
ssid_count = 0;
g_staScanSuccess = 0;
Scan();
WaitScanResult();
wifi_error = GetScanInfoList(info, &size);
} while (g_staScanSuccess != 1);
printf(" Wifi Scan end! \r\n");
//连接指定的WiFi热点
strcpy(select_ap_config.ssid, SELECT_WIFI_SSID);
strcpy(select_ap_config.preSharedKey, SELECT_WIFI_PASSWORD);
printf("[%s][%s] \r\n", select_ap_config.ssid, select_ap_config.preSharedKey);
select_ap_config.securityType = WIFI_SEC_TYPE_PSK;
if (AddDeviceConfig(&select_ap_config, &result) == WIFI_SUCCESS)
{
int ret = ConnectTo(result);
printf("\r\n ConnectTo: %d \r\n", ret);
if ( ret == WIFI_SUCCESS && WaitConnectResult() == 1)
{
printf("WiFi connect succeed!\r\n");
}else
{
printf("WiFi connect failed!\r\n");
}
}
for(;;)
{
osDelay(100);
}
}
```
3. 运行结果、错误截图
连接有密码的热点(连接失败),串口输出如下内容:

连接没有密码的热点(连接成功),串口输出如下内容:

4. 我尝试过的解决方法和结果
尝试使用esp-idf的api,结果还是一样。
5. 我想要达到的结果
看网上资料有人说是鸿蒙的安全管理导致。
### 【运行环境】
硬件:esp32
ROM版本:
DevEvoStudio版本:
SDK版本:openharmony v5.0.2
[/md]
作者:
zlx0606
时间:
2026-2-5 14:45
问题已经解决
作者:
老六
时间:
2026-2-9 22:43
我最近也在做这个,想咨询一下移植方面的问题,能否留个方式,请教一下
欢迎光临 OpenHarmony开发者论坛 (https://forums.openharmony.cn/)
Powered by Discuz! X3.5