ESP8266 快速对接小爱同学

  • 一、环境资料
  • 二、安装配置
  • 三、下载Blinker手机APP,并更改符合小米小爱协议的代码
  • 四、米家绑定Blinker点灯

一、环境资料

1. 硬件:ESP8266 NodeMCU 开发板
点击查阅硬件开发文档

2. 点击参考blinker官方开发文档

3. 开发工具下载链接,里面包含了本次开发所需的工具:https://pan.baidu.com/s/1Zc0BsXgfPfbXw7UCn1sD_Q 提取码:vgvr

二、安装配置

1. 在上面百度云网盘下载“串口驱动” 并安装之后,会在装置管理员看到serial port:

2. 安装Arduino IDE开发环境
将网盘中的“arduino-nightly-windows.zip”下载到电脑,解压至当前文件夹,双击直接运行。

3. 安装完之后,打开Arduino IDE,为了让Arduino IDE找到ESP8266的设定档,先到 “File” -> “Preferences”

并在Additional Boards Manager URLs 填入:

https://arduino.esp8266.com/stable/package_esp8266com_index.json


填完之后按OK,接着准备选板子,到 “Tools” -> “Board” -> “Boards Manager”

在“Boards Manager” 里,它需要约十几秒钟整理所有硬体,所以我们等一会儿之后,将卷轴往下拉找到“esp8266”,点右边的Install,这时候Arduino IDE就根据ESP8266的设定档开始下载ESP8266所需要的硬件,我这里已经安装好了

选择对应的硬件就行了

4. 安装第三方库
将下载好的blinker库解压到 我的电脑>文档>Arduino>libraries 文件夹中

打开Arduino.exe,选择File->Examples->Blinker->Blinker_Hello->Hello_wifi

示例代码:

#define BLINKER_WIFI#include <Blinker.h>char auth[] = "Your Device Secret Key";
char ssid[] = "Your WiFi network SSID or name";
char pswd[] = "Your WiFi network WPA password or WEP key";// 新建组件对象
BlinkerButton Button1("btn-abc");
BlinkerNumber Number1("num-abc");int counter = 0;// 按下按键即会执行该函数
void button1_callback(const String & state)
{BLINKER_LOG("get button state: ", state);digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));
}// 如果未绑定的组件被触发,则会执行其中内容
void dataRead(const String & data)
{BLINKER_LOG("Blinker readString: ", data);counter++;Number1.print(counter);
}void setup()
{// 初始化串口Serial.begin(115200);BLINKER_DEBUG.stream(Serial);// 初始化有LED的IOpinMode(LED_BUILTIN, OUTPUT);digitalWrite(LED_BUILTIN, HIGH);// 初始化blinkerBlinker.begin(auth, ssid, pswd);Blinker.attachData(dataRead);Button1.attach(button1_callback);
}void loop() {Blinker.run();
}

三、下载Blinker手机APP,并更改符合小米小爱协议的代码

具体可以参靠Blinker小爱同学语音对接

#define BLINKER_WIFI#define BLINKER_MIOT_LIGHT#include <Blinker.h>char auth[] = "填写自己手机APP创建的key";
char ssid[] = "wifi名称";
char pswd[] = "wifi密码";// 新建组件对象
BlinkerButton Button1("ledkey");
BlinkerNumber Number1("num-abc");int counter = 0;// 按下按键即会执行该函数
void button1_callback(const String & state)
{BLINKER_LOG("get button state: ", state);digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));
}void miotPowerState(const String & state)
{BLINKER_LOG("need set power state: ", state);if (state == BLINKER_CMD_ON) {digitalWrite(LED_BUILTIN, LOW);BlinkerMIOT.powerState("off");BlinkerMIOT.print();}else if (state == BLINKER_CMD_OFF) {digitalWrite(LED_BUILTIN, HIGH);BlinkerMIOT.powerState("on");BlinkerMIOT.print();}
}
// 如果未绑定的组件被触发,则会执行其中内容
void dataRead(const String & data)
{BLINKER_LOG("Blinker readString: ", data);counter++;Number1.print(counter);
}void setup()
{// 初始化串口Serial.begin(115200);BLINKER_DEBUG.stream(Serial);// 初始化有LED的IOpinMode(LED_BUILTIN, OUTPUT);digitalWrite(LED_BUILTIN, HIGH);// 初始化blinkerBlinker.begin(auth, ssid, pswd);Blinker.attachData(dataRead);Button1.attach(button1_callback);BlinkerMIOT.attachPowerState(miotPowerState);
}void loop() {Blinker.run();
}

四、米家绑定Blinker点灯

打开米家->我的->其他平台设备->添加->Blinker点灯科技


编译上传代码,对小爱同学说一句开灯试下吧。

ESP8266 快速对接小爱同学 语音控制相关推荐

  1. 基于Blinker的小爱同学语音控制【脱坑指南】

    基于Blinker的小爱同学语音控制ESP8266 前些天在使用esp8266时遇到很多小爱不能控制设备问题,现在来叙述我控制过程中所遇到的问题,以及到完整的小爱能成功控制Esp8266的过程. 1. ...

  2. 使用小爱同学语音控制电脑关机 - Winform C#

    使用小爱同学语音控制电脑变关机 前言 实现原理 准备 注册巴法云账号 接入巴法云 接入米家 编写程序 连接TCP 接收信息并运行关机指令 发送指令订阅主题 添加心跳机制 后台运行 阻止默认关闭窗口事件 ...

  3. 想用天猫精灵、小爱同学语音控制灯、窗帘、卷帘门、投影幕……实现你的智能家居梦?用十几元钱制作一个红外射频转发器试试吧

    使用场景 自从智能音箱出现以后,是不是想用智能音箱控制家里的电器和设备?但是购买接入天猫精灵和小爱同学的设备都很贵,比如一套普通的电动窗帘架300元左右,但是接入智能音箱控制的最少要700元.想尝试智 ...

  4. 【小米米家对接连载】 安信可 ESP8266-12S模块作为米家通用模块,直连小米米家平台,小爱同学语音控制;

    文章目录 一. 准备工作 二. 通过STM32代码设置产品model 三. STM32单片机不断发送get_down指令一直查询模块返回的状态 四. 模块核心指令的解答 五. 关于模块返回的参数说明 ...

  5. 基于ESP8266+点灯科技+小爱同学控制开门解决方案!

    前言 每次下班回到家就已经很累了,到门口还要到处翻找钥匙,然后开门,是不是觉得很烦,那我们有没有不用通过钥匙开门且成本低的方案了?下面我会教大家基于ESP8266+点灯科技+小爱同学来控制开门的方法 ...

  6. 从零开始使用ESP8266 + Blinker 实现小爱同学可控可读取状态的多路插座

    从零开始使用ESP8266 + Blinker 实现小爱同学可控可读取状态的多路插座 前言 一直对8266很感兴趣,放寒假嘛,也挺闲,刚好手头有原来买下的Nodemcu,就拿来做个多路开关 参考资料我 ...

  7. python控制小爱同学_神秘鸭,用Siri小爱同学语音助手控制你的电脑

    智能手机发展至今,智能可不仅是改变了沟通和上网形式,依据强大的算法核心,各种基于AI的智能语音助手屡见不鲜,其中苹果的Siri.小米的小爱同学.阿里的天猫精灵,极受欢迎.虽说现在的人工智能语音助手,仍 ...

  8. esp8266接入Blinker小爱同学控制WS2812的RGB以及亮度调节

    esp8266接入Blinker小爱同学控制WS2812的RGB以及亮度调节 所需准备的库: Adafruit_NeoPixel Blinker 开发板选择 1.源代码部分: 源代码: //WS281 ...

  9. 【Homeassistant 的Node-red插件之小爱同学语音功能开通】

    目的:Homeassistant 的Node-red插件之小爱同学语音功能开通,实现播报任意带变量的文本 视频部分效果可见:https://www.bilibili.com/video/BV1id4y ...

最新文章

  1. 算法人必懂的进阶SQL知识,4道面试常考题
  2. 一个网站让你系统的入门脑机接口和神经科学
  3. 吐槽: 移动端缓存策略
  4. Git内部原理之深入解析维护与数据恢复
  5. 混合使用Azure LB和ILB访问相同web服务(3)
  6. java平台调试架构JPDA
  7. 现实世界的Windows Azure:与iQmetrix的市场营销副总裁Anne Weiler对话
  8. java 日期和时间
  9. LeetCode 5354. 通知所有员工所需的时间
  10. Parrot 发布新版本——基于Debian的Linux 发行版
  11. Go Module 工程化实践(二):go get 取包原理篇
  12. 计算机二级分省和国家吗,计算机国家二级和省二级有什么区别?
  13. js中对于json判断的总结(持续整理中~)
  14. python 背单词_python实现艾宾浩斯背单词功能,实现自动提取单词、邮件发送,部署在阿里云服务器......
  15. 汽车汽油电子喷射系统
  16. Linux4 移植 6410,linux 3.4.103 内核移植到 S3C6410 开发板 移植失败 (问题总结,来日再战!)...
  17. PHP生成短链接的方法
  18. shell 中如何输出回车符号
  19. 防火墙一个系统加固的例子
  20. 【SVG】svg入门

热门文章

  1. 【Ubuntu】安装Adobe Acrobat
  2. woff 这种字体文件怎么抓取数据
  3. 拼音反查(转自大富翁)
  4. Hello China操作系统在Virtual PC上的安装和使用
  5. matlab画最小二乘线,matlab非线性最小二乘法求解 - 计算模拟 - 小木虫 - 学术 科研 互动社区...
  6. visual C+ 6.0的使用安装
  7. 微信小程序有什么商业价值?
  8. 昆仑万维或将引领国内 AIGC 技术发展
  9. 前端程序员忙里偷闲入门一波SpringBoot
  10. Python 静态类型解析工具简介和实践