我整理了从2015年至今关于ESP8266的学习笔记,梳理出来了开发环境、基础功能、进阶学习三大部分,方便自己和他人。可点此查看,欢迎交流。
今天花了将近一天的时间来研究ESP8266的SmartConfig功能,这个应该算是wifi云产品的标配。这篇文章先把SmartConfig操作一遍,后面我再写篇文章梳理下物理层的具体协议。
本文作者twowinter,转载请注明作者:http://blog.csdn.net/iotisan/
ESP8266目前的SDK_v1.2.0支持SmartConfig。将esp_iot_sdk_v1.2.0\examples\smart_config
\目录的例程源码拷贝至app目录即可。
ESP-Touch的APP在乐鑫官网有下载。
微信官方对AirKiss有初步介绍(http://iot.weixin.qq.com/document-7_1.html),这个介绍中提到的库文件误导了我。事实上ESP的SDK_v1.2.0已经支持了AirKiss,我们只需要调用SmartConfig接口就可以了。
一个比较大的限制是,微信只将AirKiss的功能权限开放给企业服务号,而个人申请的订阅号则不能申请这个权限。不过微信还是给了DEMO(http://iot.weixin.qq.com/download.html)方便开发者的调试。
如下是ESP8266在ESP-TOUCH时的打印信息:
:?
SDK ver: 1.2.0 compiled @ Jul 3 2015 19:36:17
phy ver: 356, pp ver: 8.7
SDK version:1.2.0
:mode : sta(18:fe:34:f8:8f:cf)
add if0
f 0,
:scandone
f 0,
:scandone
SC_STATUS_FIND_CHANNEL
:
TYPE: ESPTOUCH V2.4
T|PHONE MAC: b4 b 44 1 6 5
T|AP MAC : 0 c4 38 12 0 5e
SC_STATUS_GETTING_SSID_PSWD
SC_TYPE:SC_TYPE_ESPTOUCH
>
:T|SCAN SSID: 杩瀢ifi_2.4g鍚?
>
:T|pswd: 12345678
T|ssid: 杩瀢ifi_2.4g鍚?
T|bssid: 00 c4 38 12 00 5e
SC_STATUS_LINK
>
:f -240,
:scandone
no 杩瀢ifi_2.4g鍚?found, reconnect after 1s
reconnect
f 0,
:scandone
add 0
aid 2
pm open phy_2,type:2 0 0
>
connected with 杩瀢ifi_2.4g鍚? channel 3
dhcp client start...
cnt
>
:ip:192.168.4.232,mask:255.255.255.0,gw:192.168.4.1
>
:SC_STATUS_LINK_OVER
Phone ip: 192.168.4.199
如下是ESP8266在AirKiss时的打印信息:
:?
SDK ver: 1.2.0 compiled @ Jul 3 2015 19:36:17
phy ver: 356, pp ver: 8.7
>
SDK version:1.2.0
mode : sta(18:fe:34:f8:8f:cf)
add if0
f 0, scandone
f 0,
:scandone
f 0,
:scandone
SC_STATUS_FIND_CHANNEL
>
:
TYPE: AIRKISS V2.4
T|sniffer on ch:3
T|PHONE MAC: b4 b 44 1 6 5
T|AP MAC : 0 c4 38 12 0 5e
T|Head Len : 66
>
SC_STATUS_GETTING_SSID_PSWD
SC_TYPE:SC_TYPE_AIRKISS
T|sync:wait
>
:T|retain data: 0
T|all data: 24
>
T|sync:mgc end
>
:T|ssid len15
T|SSID: 杩瀢ifi_2.4g鍚?
T|SCAN CRC SSID: 1
T|index:2, remain:1
T|password len: 8
T|sync:pfx end
T|seq:0
T|seq:1
T|seq:2
T|I get it!
T|pswd : 12345678
T|ssid : 杩瀢ifi_2.4g鍚?
T|bssid: 00 c4 38 12 00 5e
SC_STATUS_LINK
f 0,
:scandone
add 0
aid 2
pm open phy_2,type:2 0 0
>
connected with 杩瀢ifi_2.4g鍚? channel 3
dhcp client start...
cnt
>
:ip:192.168.4.232,mask:255.255.255.0,gw:192.168.4.1
>
:SC_STATUS_LINK_OVER
ESP8266在V1.2.0版本已经兼容ESP-TOUCH和微信AirKiss,经测试,效果良好。