1. 原理
分析见 http://blog.csdn.net/flyingcys/article/details/49283273
从这篇文章可知,ESP8266采用的是组播地址的长度编码,其他还有组播地址编码,广播地址长度编码(微信),固定IP发udp包(TI)。
2.代码
- 代码库为./lib/libsmartconfig.a
- 代码流程:
-- 注册回调函数,smartconfig_start(smartconfig_done);
-- 接下来回调打印如下:
-- 回调返回"SC_STATUS_LINK时,返回值为station_config,接下来就可以配置wifi了;
-- 最后一个回调消息为SC_STATUS_LINK_OVER,可以返回对端的ip地址;
- wifi_station_connect()触发dhcp过程,在./lib/libwpa.a中
3. 分析
从原理可知,如果想实现一个芯片能同时被多个app配网,需要他们使用同样的smartconfig配网方式。
那么问题是阿里智能、京东微联等是否都用同一smartconfig方式呢?