esp: Wi-Fi 配网方式
Wi-Fi配网
什么是WiFi配网?
Wi-Fi配网是指外部向Wi-Fi设备提供 SSID 和密码,以便Wi-Fi设备可以连接到指定的AP并加入AP所建立的Wi-Fi网络。
Wi-Fi配网的核心就是通过各种方法,将要连接的AP的SSID和密码发送到需要联网的Wi-Fi设备,然后由Wi-Fi设备去连接指定的Wi-Fi网络,达到接入局域网或互联网的目的。
Wi-Fi配网的实现方式有:SoftAP配网、一键配网、蓝牙配网、其他方式配网。
SoftAP配网
SoftAP配网又称为传统配网。
工作流程:首先,待配网的Wi-Fi设备自身会建立一个AP,用户将智能手机连接到这个AP。然后,智能手机中的APP将要连接的SSID和密码发送给待配网的Wi-Fi设备,待配网的Wi-Fi设备收到信息后,找到对应的AP并与之连接,完成配网。
注意:这里要求Wi-Fi设备支持 AP模式 和 Station模式。启用AP模式,智能手机可以连接Wi-Fi设备发出的热点;启用Station模式,Wi-Fi设备可以连接到路由器发出的热点。
一键配网
一键配网是指智能手机将SSID和密码按照一定的编码格式填充在MAC包中不加密的包头部分,并采用广播或组播方式发送数据包,Wi-Fi设备监听无线信道中的广播包或组播包,然后从数据包的头部解析出SSID和密码,最后去连接SSID对应的Wi-Fi。一般需要在发送SSID和密码的设备上安装一个App,该App实现了和Wi-Fi设备之间发送SSID和密码的协议交互。
注意:这里要求Wi-Fi设备至少支持Station模式
蓝牙配网
待配网的Wi-Fi设备会建立一个蓝牙的Profile,向蓝牙信道一直广播数据,用户将智能手机或其他可以具备人机交互功能的设备(如平板电脑等)通过蓝牙信道连接到设备,然后通过蓝牙将要连接的信息发送给待配网的Wi-Fi设备。待配网的Wi-Fi设备接收到信息后,找到对应的AP并主动与之连接,完成配网。
注意:这里要求Wi-Fi设置至少支持Station模式,同时具备BLE功能。
其他方式配网
其他方式配网包括:直接配网、路由器配网、零配(Zeroconfig)配网、手机AP配网
直接配网
直接配网是指通过UART、SPI、SDIO、I2C等外设接口,遵循一定的通信协议,将SSID和密码直接发送给Wi-Fi设备,所以这种方式也称为有线配网。Wi-Fi设备在收到SSID和密码后连接AP,并将连接的结果从主机接口返回。
注意:这里要求Wi-Fi设备引出外设的GPIO接口。
路由器配网
WPS(Wi-Fi Protected Setup,Wi-Fi安全防护设定)是由Wi-Fi联盟推出的全新标准,推出该标准的主要原因是为了解决长久以来无线网络加密认证设定的步骤过于繁杂之弊病。WPS简化了Wi-Fi的安全设置和网络管理,它支持两种模式:个人识别码(PIN)模式 和 按钮(PBC)模式。
注意:这里要求Wi-Fi设备支持WPS功能(wps client),而且要求路由器也支持WPS功能(wps server)。
零配(Zeroconfig)配网
零配配网的本质是用一台已联网的设备给另外一台设备配网,在整个环节中,智能手机这个角色用别的设备替换掉了,如智能音箱等。
待配网的Wi-Fi设备进入配网状态,并将自己的MAC地址通过自定义报文的方式发送出去,此时路由器下支持的零配配网设备就可以获取到待配网设备的MAC地址,同时已联网设备会将自己保存的路由器SSID和密码通过自定义报文发送给待配网设备,并等待待配网设备连接上网络,进行外网绑定等流程。
手机AP配网
手机AP配网是将智能手机设置成一个具有特定名字和密码的AP,然后让待配网设备连接智能手机,再发送和接收配网绑定信息。