智能设备 WiFi 配网的两种方式

智能家居的设备智能化,不少家电设备都安装上了 WiFi 模块, 方便用户经过手机控制和远程查看家里状况,典型的设备如智能插座,智能空调,智能空气净化器。服务器

智能设备首次配置,这个过程简单来说就是把 WiFi 设备初始化后,连到家里的无线路由器上。第一次配置成功后,基本就一劳永逸了。微信

目前流行的wifi配置模式通常有如下2种:网络

  • 1:智能硬件处于AP模式,手机用于station模式,手机链接智能插座的AP后组成局域网,手机发送须要链接路由的SSID及密码至智能插座,智能硬件主动去链接指定路由后,完成链接
  • 2:一键配置(smartconfig)模式:智能硬件处于混杂模式下,监听网络中的全部报文;手机APP将SSID和密码编码到UDP报文中,经过广播包或组播报发送,智能硬件接收到UDP报文后解码,获得正确的SSID和密码,而后主动链接指定SSID的路由,完成链接

AP(兼容) 模式

AP 是 (Wireless) Access Point 的缩写,即 (无线) 访问接入点。简单来说就像是无线路由器同样,设备打开后进入 AP 模式,在手机的网络列表里面,能够搜索到相似 TPLINK_XXX 的名字(SSID)。
链接步骤:less

  • 一、链接路由器(获取路由器名称)
  • 二、请求配网token,用户输入 WiFi 名字和密码后
  • 三、初始化硬件设备,使设备进入 AP 模式,Wifi 灯慢闪
  • 四、手机切回 WiFi:接入上述 设备出现的 WiFi 名字(SSID)的网络 (相似 TPLINK_XXX)。连上设备后,经过 UDP 发送 通过 AES 加密过的 ssid/password/token
  • 五、设备经过 UDP 包获取配置信息,切换网络模式,链接上家里 WiFi,配置完成。断开设备热点。发送token,注册到服务端,登陆MQTT服务器
  • 六、手机切回到家里面的 WiFi ,根据token,去服务端查找设备。
  • 七、服务器返回智能设备的信息

 

EZ(快捷)Easy-Connect 模式

这种快速链接方式,相对于 AP 模式链接简化操做,省了不少步骤,首次配置速度更快。测试

  • 一、手机连上 WiFi,开启 APP 软件,点击"添加新设备",进入配置界面,输入手机所在 WiFi 密码,请求配网token
  • 二、智能硬件开启混杂模式监听全部网络数据包,Wifi 灯快闪
  • 三、手机经过广播、组播循环发送 ssid/password/token
  • 四、硬件设备经过 UDP 包(长度)获取配置信息捕捉到ssid/password/token,Wifi灯熄灭,链接路由器,链接成功后Wifi灯常亮。发送token,注册到服务端,注册成功后登陆MQTT服务器。(广播根据 UDP 包长度,组播根据 IP 地址信息)
  • 五、手机根据token,去服务端查找设备,返回设备信息

当前主流IOT的wifi方案有:

这个功能最先是TI提出并应用于CC3200上;不过从原理上讲,只要芯片驱动支持开启混杂模式(WiFi Promiscuous),就能够支持一键配网功能,只是各个厂家叫法及实现编码方式不一样而已;
手机编码发送采用有UDP组播或广播,不一样的发送方式和编码,对应的解码过程也不同.,当前测试发现,微信是经过UDP广播包实现的;TI是经过往一固定IP地址发送udp包;其余芯片厂家提供的通常为UDP组播方式;
因为无线数据传播一定是广播的,因此必然能够被监听到;若是AP没有加密的话,UDP直接能够把相关的信息发送出来.可是路由器AP通常都是加密的,并且加密方式不固定.wifi模块在没法直接解析出数据包编码

  • 一、广播:发送方可经过改变其所须要发送数据包的长度进行控制
    因此只要指定出一套利用长度编码的通信协议,就可利用数据包的Lenght字段进行数据传递
  • 二、 组播:组播地址是保留的D类地址从224.0.0.0-239.255.255.255
    IP地址与MAC地址映射关系为:将MAC地址的前25位设定为01.00.5e,而MAC地址的后23位对应IP地址的位;故发送端能够将数据编码在组播ip的后23bit中,经过组播包发送,接收端进行解码便可



做者:Orange_iOS
连接:https://www.jianshu.com/p/4fca16d8702f
來源:简书
著做权归做者全部。商业转载请联系做者得到受权,非商业转载请注明出处。加密

相关文章
相关标签/搜索