【花式点灯】呼叫天猫精灵通过TCP订阅巴法云主题点灯

[复制链接]
查看308 | 回复7 | 2024-8-19 19:12:31 | 显示全部楼层 |阅读模式

本帖最后由 qhsj 于 2024-8-19 19:12 编辑

参考资料

参考帖子:【电子DIY作品】接入米家通过手机控制led,基于AI-M61-32S https://bbs.aithinker.com/forum.php?mod=viewthread&tid=45129 作者 沈夜

巴法接入TCP协议文档:https://cloud.bemfa.com/docs/src/tcp.html

天猫精灵接入文档:https://cloud.bemfa.com/docs/src/speaker_mall.html

我的思路

  1. 在巴法云物联网平台注册账号,通过TCP创客云发布led002主题

    QQ_1724059088972.png主题名最后面三位数字002表示灯类设备

    QQ_1724059139758.png

  2. 在手机APP“天猫精灵”通过蓝牙连接家庭里已经联网的天猫精灵设备,再从“技能广场”找到“巴法云”绑定账号,可看到存在一个设备“灯” Screenshot_20240819_171948_com.alibaba.ailabs.tg.jpg

  3. 绑定后,天猫精灵可以识别的口令有以下内容,我只用了“开灯”、“关灯”、“把灯调成红色”、“把灯调成蓝色”、“把灯调成绿色”

    Screenshot_20240819_172054_com.alibaba.ailabs.tg.jpg

  4. 你对天猫精灵喊这些命令,他会在巴法云对应设备的发布主题,数值就会变成对应的字符串 QQ_1724059487268.png

  5. 只要M61连接WIFI,并定时通过TCP订阅巴法云指定的主题获取字符串

  6. 若获取“on”对应打开rgb灯珠的红灯、“off”对应关闭所有灯光、“on#100#16711680”对应打开rgb灯珠的红灯、“on#100#255”对应打开rgb灯珠的蓝灯、“on#100#65280”对应打开rgb灯珠的绿灯

代码

代码用了原作者的,只修改了自己账号的私钥、主题名,还有自己的WIFI账号密码,以及修改了订阅主题获取不同字符串执行对应的点灯动作

代码主函数首先进行板级初始化、rgb灯珠的gpio初始化、TCPIP和WIFI硬件的初始化,在FREERTOS下分三个任务,一个是连接WIFI,一个是TCP连接巴法云的服务器并定时发送心跳数据避免与服务器断开连接,另一个是定时订阅主题获取字符串执行对应的点灯动作

实物现象

VID_20240819_174545.gif

回复

使用道具 举报

iiv | 2024-8-19 20:17:46 | 显示全部楼层
6
回复

使用道具 举报

WT_0213 | 2024-8-19 21:45:33 | 显示全部楼层
回复

使用道具 举报

大猫的鱼 | 2024-8-19 21:54:33 | 显示全部楼层
不错
回复

使用道具 举报

bzhou830 | 2024-8-20 08:46:57 | 显示全部楼层
玩的真花
选择去发光,而不是被照亮
回复

使用道具 举报

爱笑 | 2024-8-20 09:16:06 | 显示全部楼层
用心做好保姆工作
回复

使用道具 举报

WildboarG | 2024-8-20 11:25:42 | 显示全部楼层
不错
回复

使用道具 举报

IBelieve | 2024-8-20 13:58:02 | 显示全部楼层
玩的真花
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则