Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

智能配网 #83

Open
zjy6Archer opened this issue Jun 26, 2022 · 4 comments
Open

智能配网 #83

zjy6Archer opened this issue Jun 26, 2022 · 4 comments

Comments

@zjy6Archer
Copy link

智能配网成功以后,返回的wifi模块ip地址是通过udp广播,然后配网手机得到的吗
我尝试通过在其他设备抓包来获取这个ip,但没有捕获到配网成功后的wifi模块ip地址。
请问如何可以通过电脑来返回这个ip

@XuXiangJun
Copy link
Collaborator

设备连上路由器后会通过得到的手机端 IP 地址,发送 UDP 单播数据包
抓包的话需要抓手机的 IP 地址的数据包

@zjy6Archer
Copy link
Author

您好,我尝试在整个配网过程中来抓包,但并没有以手机ip为目标地址的任何包,只有一条以wifi模块返送的IGMPv2的组播空包,想问一下手机是根据这个来得到wifi模块ip的吗。
因为我是想将这个智能配网的功能写成一个windows下应用的功能,我自己照着这个逻辑原理写了一版,,但wifi模块一直卡在10hz闪烁频段,没有找到解决方案,您能否提供一些相应的帮助,非常感谢

@XuXiangJun
Copy link
Collaborator

Smart Confg 的原理是由客户端(比如手机APP) 通过路由器发送 UDP 广播包
然后设备端抓取空气中的 UDP 包并进行解析获取 SSID,密码,客户端 IP 等等信息
最后设备连上路由器后会向客户端 IP 发送 UDP 包报告自己的 BSSID 和 IP

桌面客户端的话,您可以把 esptouch 模块的代码拿出来,删除或替换部分 Android 相关的代码,直接用 Java 运行

@zjy6Archer
Copy link
Author

这个原理已经了解了,但实际使用时,没有捕获到以客户端为目标的报告wifi模块ip和bssid的包,甚至没有一个包是以手机ip为目标地址的。
然后我自己改写的配网,在路由器后台查到了wifi模块连接,但模块就一直卡在这个状态下,感觉是没能够从路由器获取到ip。wifi模块黄灯一直保持10hz的闪烁,我看了文档指示灯的状态含义,这个应该确实已经收到路由器的ssid和密码,后台也查到了这个WiFi模块连接,但一直卡在这里没获取到ip地址。我也换了手机热点尝试,也是会卡在这里。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants