ESA2GJK1DH1K基础篇: Android实现SmartConfig简单Demo
下载源码去
百度安信可
导入源码
等待加载完
我的提示更新下软件 ,我就更新下
安装完成以后重新导入工程
安装到手机
注意,由于Android 9.0 以后的获取WIFI名称需要打开GPS,所以如果提示下图
需要自己手动打开GPS
输入密码,然后测试
测试准备工作
一,下载单片机程序
"测试APP使用SmartConfig绑定Wi-Fi 设备通过MQTT控制设备"
二,调整波动开关位置,STM32和Wi-Fi通信
三,短接STM32的PB2和Wi-Fi模块的RST引脚(为了做项目稳定可靠,请使用单片机硬件复位Wi-Fi)
开始测试
一.长按PB5大约4S,等待指示灯快闪,松开PB5,Wi-Fi模块进入配网状态
二.点击APP的"确认"按钮,开始搜索设备,配网成功以后,会获取到WIFI的MAC地址信息,还有WI-Fi当前分配的IP地址信息
结语
SmartConfig呢,就是控制WI-Fi连接上路由器,同时获取到WI-Fi的MAC地址信息
有些人可能会问,为什么需要WI-Fi的MAC地址.
我的单片机程序订阅的主题是这样的
我单片机
订阅的主题是: user/WI-Fi的MAC地址
发布的主题是:device/WI-Fi的MAC地址
而APP在SmartConfig的时候获取到了这个MAC地址
我设置的APP订阅的主题是:device/WI-Fi的MAC地址
APP发布的主题是:user/WI-Fi的MAC地址
这样APP和设备就完成了数据通信了...
有人又会问,自己指定不可以吗???你自己想想会出什么问题吧!
太麻烦了.......APP怎么做到动态绑定呢!!!!!!!
我说说现在用MAC的好处.
第一: 每个设备订阅和发布的主题唯一,各个设备不会冲突(MAC地址全球唯一)
第二: 设备端的程序只需要程序获取MAC然后设置订阅和发布的主题就可以了
第三: APP在SmartConfig的时候获取到设备的MAC,然后设置订阅和发布的主题就可以了
现在厂商都是利用MAC地址绑定.....