8266做ap,用WiFi.softAPmacAddress无法获取连接设备的真实MAC地址?-Arduino中文社区 - Powered by Discuz! Archiver

lang2200 发表于 2022-5-10 17:50

8266做ap,用WiFi.softAPmacAddress无法获取连接设备的真实MAC地址?

8266打开AP模式,接入手机,想通过读取手机MAC地址,与之进行绑定,才能做相应控制。。
通过WiFi.macAddress()和WiFi.softAPmacAddress(),无法获得手机真实的MAC。换了另外1台手机连接也是以下这两个MAC。我在网上找了好久,但是没找到,如何获得连接设备的真实MAC。。所以求助大家。。

Serial.print("主机端mac:");
Serial.println(WiFi.macAddress());
Serial.print("客户端mac:");
Serial.println(WiFi.softAPmacAddress());




跑龙套的保 发表于 2022-5-11 12:00

本帖最后由 跑龙套的保 于 2022-5-11 17:40 编辑

这个函数获取的是8266 ap的mac地址,不是连接的设备的。可以通过这个函数获取连接的客户端信息struct station_info *station = wifi_softap_get_station_info();
while (station) {
Serial.printf("%02x:%02x:%02x:%02x:%02x:%02x,", station->bssid,
station->bssid, station->bssid, station->bssid,
station->bssid, station->bssid);
Serial.printf("%s\r\n", IPAddress(station->ip.addr).toString().c_str());
station = STAILQ_NEXT(station, next);
}
wifi_softap_free_station_info(); // Free it by calling functions

页: [1]
查看完整版本: 8266做ap,用WiFi.softAPmacAddress无法获取连接设备的真实MAC地址?