esp8266接入小爱同学,通过mqtt

原理:esp8266连接mqtt服务,并订阅mqtt的主题,当通过小爱语音发出指令,相当于mqtt的消息推送,由于esp8266订阅了主题,就可以收到小爱同学推送的消息,从而进行控制esp8266。

esp8266接入小爱同学,通过mqtt

第一步 下载程序到esp8266

下载地址: 点击下载

本demo 是利用arduino IDE开发,关于arduino IDE 的ESP8266环境配置可参考:环境配置: 点击跳转

程序下载好,需要修改的信息有:

需要修改的信息有WIF名称,WIFI密码,用户私钥UID,设备主题topic。

//********************需要修改的部分*******************//
const char* ssid = "newhtc";           //修改,你的路由去WIFI名字
const char* password = "qq123456";     //你的WIFI密码
#define ID_MQTT  "4d9ec352e0376f2110a0c601a2857225"     //用户私钥,控制台获取
const char*  topic = "light002";        //主题名字,可在巴法云控制台自行创建,名称随意
const int B_led = D2;       //单片机LED引脚值,D系列是NodeMcu引脚命名方式,其他esp8266型号将D2改为自己的引脚
//**************************************************//

用户私钥可以巴法云控制台 点击跳转 获取,注册绑定邮箱即可在巴法控制台获取。

关于主题topic:主题可在控制台 点击跳转 新建,字母+数字自定义组合即可,注意:创建mqtt设备主题。

现在支持的设备有:灯泡、插座、风扇、传感器设备、空调

关于设备类型,由创建的主题名称决定:
当主题名字后三位是001时为插座设备
当主题名字后三位是002时为灯泡设备
当主题名字后三位是003时为风扇设备
当主题名字后三位是004时为传感器设备
当主题名字后三位是005时为空调设备

在本demo中主题为light002,故为灯泡设备,详细介绍见巴法云官方接入文档。

修改好,下载到ESP8266即可。

测试程序:控制台推送on是开灯。推送off关灯,可打开串口调试助手查看调试。

第二步 绑定到米家

打开米家app,底部--我的---其他平台设备---->点击添加--->找打巴法,登录你的巴法云账号,如果巴法云控制台有创建设备,设备就会自动同步过去了。(如果没同步到,再次点击底部的同步设备即可)

esp8266接入小爱同学,通过mqtt

设备成功同步后,就成功接入到了米家,现在就可以使用小爱同学来控制灯了。,比如说:小爱同学,打开台灯,此时esp8266就会收到on的字符串,从而执行打开操作,可打开单片机串口调试助手查看调试信息。

上一篇:源码实践_实现一个mqtt(2)


下一篇:Qt开发MQTT(一) 之Qt官方Qt MQTT