今天花了将近一天的时间来研究ESP8266的SmartConfig功能,这个应该算是wifi云产品的标配。这篇文章先把SmartConfig操作一遍,我还写了还有一篇文章梳理了物理层的详细协议,点击这里能够看到

转载请注明:http://blog.csdn.net/sadshen/

一、准备



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)方便开发人员的调试。

二、ESP-TOUCH


watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

例如以下是ESP8266在ESP-TOUCH时的信息打印:

<Time:2015-07-14 19:01:13:078 Len:0099>:?

SDK ver: 1.2.0 compiled @ Jul  3 2015 19:36:17
phy ver: 356, pp ver: 8.7 SDK version:1.2.0 <Time:2015-07-14 19:01:13:218 Len:0045>:mode : sta(18:fe:34:f8:8f:cf)
add if0
f 0,
<Time:2015-07-14 19:01:15:296 Len:0015>:scandone
f 0,
<Time:2015-07-14 19:01:17:484 Len:0034>:scandone
SC_STATUS_FIND_CHANNEL <Time:2015-07-14 19:02:07:484 Len:0136>:
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 <Time:2015-07-14 19:02:08:531 Len:0030>:T|SCAN SSID: 杩瀢ifi_2.4g鍚? <Time:2015-07-14 19:02:09:593 Len:0088>:T|pswd: 12345678
T|ssid: 杩瀢ifi_2.4g鍚? T|bssid: 00 c4 38 12 00 5e
SC_STATUS_LINK <Time:2015-07-14 19:02:09:671 Len:0008>:f -240,
<Time:2015-07-14 19:02:11:906 Len:0072>:scandone
no 杩瀢ifi_2.4g鍚?found, reconnect after 1s
reconnect
f 0,
<Time:2015-07-14 19:02:14:093 Len:0123>:scandone
add 0
aid 2
pm open phy_2,type:2 0 0 connected with 杩瀢ifi_2.4g鍚? channel 3
dhcp client start...
cnt <Time:2015-07-1419:02:17:109 Len:0052>:ip:192.168.4.232,mask:255.255.255.0,gw:192.168.4.1 <Time:2015-07-14 19:02:19:937 Len:0046>:SC_STATUS_LINK_OVER
Phone ip: 192.168.4.199

三、AirKiss



例如以下是ESP8266在AirKiss时的信息打印:

<Time:2015-07-14 19:20:00:968 Len:0159>:?
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,
<Time:2015-07-14 19:20:03:046 Len:0015>:scandone
f 0,
<Time:2015-07-14 19:20:05:234 Len:0034>:scandone
SC_STATUS_FIND_CHANNEL <Time:2015-07-14 19:20:16:421 Len:0185>:
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 <Time:2015-07-14 19:20:16:812 Len:0052>:T|retain data: 0
T|all data: 24 T|sync:mgc end <Time:2015-07-14 19:20:17:406 Len:0250>: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,
<Time:2015-07-14 19:20:19:562 Len:0123>:scandone
add 0
aid 2
pm open phy_2,type:2 0 0 connected with 杩瀢ifi_2.4g鍚? channel 3
dhcp client start...
cnt <Time:2015-07-14 19:20:20:343 Len:0052>:ip:192.168.4.232,mask:255.255.255.0,gw:192.168.4.1 <Time:2015-07-14 19:20:24:171 Len:0021>:SC_STATUS_LINK_OVER

四、总结

ESP8266在V1.2.0版本号已经兼容ESP-TOUCH和微信AirKiss,经測试,效果良好。

ESP8266学习笔记4:ESP8266的SmartConfig的更多相关文章

  1. ESP8266学习笔记6:ESP8266规范wifi连接操作

    一.前言 我整理了从2015年至今关于ESP8266的学习笔记,梳理出来了开发环境.基础功能.进阶学习三大部分.方便自己和他人.可点此查看,欢迎交流. 之前在笔记4<ESP8266的SmartC ...

  2. ESP8266学习笔记1:怎样在安信可全功能測试板上实现ESP-01的编译下载和调试

    近期调试用到了安信可的ESP-01模块,最终打通了编译下载调试的整个通道,有一些细节须要记录,方便兴许的开发工作. 转载请注明:http://blog.csdn.net/sadshen/article ...

  3. 10-51单片机ESP8266学习-AT指令(ESP8266连接路由器,建立TCP服务器,分别和C#TCP客户端和AndroidTCP客户端通信+花生壳远程通信)

    http://www.cnblogs.com/yangfengwu/p/8871464.html 先把源码和资料链接放到这里 源码链接:https://pan.baidu.com/s/1wT8KAOI ...

  4. 11-51单片机ESP8266学习-AT指令(ESP8266作为TCP客户端,连接TCP服务器,用串口调试助手和手机TCP调试助手测试)

    写完题目刚想起来一件事情,如果手机作为客户端(不连接路由器的情况下),手机连接模块的无线会分配一个IP地址,,,这个IP地址事先我也不知道....我先看看AT指令里面有没有一个指令可以打印一下连接自己 ...

  5. Arduino学习笔记① 初识Arduino

    1.前言     近段时间,博主陆续更新了ESP8266学习笔记,主要开发平台是Arduino.但是,对于很多无基础的初学者来说,甚至不了解Arduino是什么.因此,博主决定加入一个Arduino学 ...

  6. ESP8266入门学习笔记1:资料获取

    乐鑫官网:https://www.espressif.com/zh-hans/products/hardware/esp8266ex/overview 乐鑫资料:https://www.espress ...

  7. ESP8266开发之旅 网络篇⑧ SmartConfig——一键配网

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  8. 【转】Esp8266学习之旅① 搭建开发环境,开始一个“hellow world”串口打印。

    @2019-02-28 [小记] Esp8266学习之旅① 搭建开发环境,开始一个“hellow world”串口打印.

  9. Arduino学习笔记② Arduino语言基础

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

随机推荐

  1. js 使用(不断更新...)

    1.JS 对象(Object)和字符串(String)互转 var jsObj = {}; jsObj.testArray = [1, 2, 3, 4, 5]; jsObj.name = 'CSS3' ...

  2. 木马——本质就是cs socket远程控制,反弹木马是作为c端向外发起网络请求

    摘自:http://kczxsp.hnu.edu.cn/upload/20150504165623705.pdf 里面对于木马的实验过程写得非常清楚,值得一看.   木马是隐藏在正常程序中的具有特殊功 ...

  3. rsync同步操作命令

    在本地磁盘同步数据 将/home做个备份 # rsync -a --delete /home /backups -a 归档模式,表示以递归方式传输文件, -delete 删除那些接收端还有而发送端已经 ...

  4. HDU4825:Xor Sum 解题报告(0/1 Trie树)

    Problem Description Zeus 和 Prometheus 做了一个游戏,Prometheus 给 Zeus 一个集合,集合中包含了N个正整数. 随后 Prometheus 将向 Ze ...

  5. Spring Boot: Tuning your Undertow application for throughput--转

    原文地址:https://jmnarloch.wordpress.com/2016/04/26/spring-boot-tuning-your-undertow-application-for-thr ...

  6. 【转载】Perl中字符串编码的处理

    在 Perl看来, 字符串只有两种形式. 一种是octets, 即8位序列, 也就是我们通常说的字节数组. 另一种utf8编码的字符串, perl管它叫string. 也就是说: Perl只熟悉两种编 ...

  7. Unity经验之谈

    1.全屏与非全屏之间的切换 if (Input.GetMouseButtonDown(1)) { Screen.fullScreen = !Screen.fullScreen; } 2.Camera适 ...

  8. JavaScript 回车键绑定登录 事件 常用键位码(keyCode)

    1.回车键绑定登录事件 $(document).keydown(function (e) { if ((e.keyCode || e.which) == 13) { //document.queryS ...

  9. 协变 & 逆变

    都跟里氏替换原则有关. 协变:你可以用一个子类对象去替换相应的一个父类对象,这是完全符合里氏替换原则的,和协(谐)的变.如:用Swan替换Bird. 逆变:你可以用一个父类对象去替换相应的一个子类对象 ...

  10. bug14052601

    AppDelegate.obj : error LNK2019: 无法解析的外部符号 "public: __thiscall cocos2d::ui::Margin::Margin(void ...