ESP8266使用blinker WiFi接入
自blinker App 2.1.1起,原WiFi接入和MQTT已经合并为新WiFi接入
使用WiFi接入,当设备和手机在同一个局域网中,为局域网通信
其余情况,使用MQTT远程通信
准备工作
硬件准备
esp8266开发板(查看支持的设备)
软件准备
Arduino IDE需安装好esp8266扩展
Arduino IDE 1.8.7或更新版本
务必使用 3.0.0 或以上release版本的 ESP8266 Arduino package
中国大陆安装方法(windows)
常规安装方法
下载并安装blinker APP
Android下载:
点击下载 或 在android应用商店搜索“blinker”下载安装
IOS下载:
点击下载 或 在app store中搜索“blinker”下载
下载并安装blinker Arduino库
点击下载
通过Arduino IDE 菜单>项目>加载库>添加.ZIP库 导入到库,如图:
![](/assets/blank.gif)
在app中添加设备,获取Secret Key
进入App,点击右上角的“+”号,然后选择 添加设备
点击选择Arduino > WiFi接入
复制申请到的Secret Key
DIY界面
在设备列表页,点击设备图标,进入设备控制面板
首次进入设备控制面板,会弹出向导页
在向导页点击 载入示例,即可载入示例组件
编译并上传示例程序
打开Arduino IDE,通过 文件>示例>Blinker>Blinker_Hello/Hello_WiFi 打开例程
在程序中找到如下变量,填入您申请到的Secret Key(auth)和要连接的WiFi热点名(ssid)、密码(pswd),如:
注意:esp系列芯片只能连接2.4G WiFi热点
char auth[] = "abcdefghijkl"; //上一步中在app中获取到的Secret Key
char ssid[] = "abcdefg"; //您的WiFi热点名称
char pswd[] = "123456789"; //您的WiFi密码
例程中宏LED_BUILTIN为开发板厂家定义的连接板载LED的引脚,如果您选择的开发板没有定义LED_BUILTIN,可以自行修改为您要使用的引脚
编译并上传程序到esp8266开发板,打开串口调试器
当看到提示“MQTT Connected!”,说明设备已经成功连接到MQTT服务器
恭喜!一切就绪
在APP中点击刚才您添加的设备,即可进入控制界面,点点按钮就可以控制Arduino上的LED灯开关
另一个按钮也点下试试,放心,您的手机不会爆炸~
进一步使用blinker
想了解各接入方式的区别?
看看添加设备
想深入理解以上例程?
看看Arduino开发入门
更多实例?
看看Arduino实例教程
想制作与众不同的物联网设备?
看看自定义界面 和 Arduino 支持库函数参考
完整示例程序
#define BLINKER_PRINT Serial
#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);#if defined(BLINKER_PRINT)BLINKER_DEBUG.stream(BLINKER_PRINT);#endif// 初始化有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();
}
由于esp8266资源有限,通信加密会消耗大量的RAM,blinker默认使用非加密方式进行远程通信,如果您对通信安全性有要求,可以添加宏BLINKER_WITH_SSL启用esp8266加密通信。
#define BLINKER_WIFI
#define BLINKER_WITH_SSL
#include <Blinker.h> void setup() { Blinker.begin(auth, ssid, pswd);
}
BLINKER_WITH_SSL目前仅可用于ESP8266,其他设备的RAM足以进行加密通信,默认使用加密通信。
为什么设备显示不在线?
blinker App如何判断设备是否在线?
blinker App在 App打开时、进入设备页面时、在设备页面中每隔一定时间 会向设备发送心跳请求,内容为 {"get":"state"} 。
设备收到请求后,会返回 {"state":"online"} ,app接收到这个返回,即会显示设备在线。
程序没有成功上传到开发板
解决办法:重新上传,上传后打开串口监视器,确认程序正确运行
程序中没有设置正确的ssid和密码,导致没有连接上网络
解决办法:设置后再重新上传程序,上传后打开串口监视器,确认程序正确运行
程序错误,导致程序运行不正确
解决办法:先使用并理解blinker例程,再自由发挥
开发板供电不足
解决办法:换电源 或 换USB口,供电口需要3.3V的电压,少于3.2看起来没问题,但是程序无法运行
为什么无法切换到局域网通信?
路由器开启了AP隔离功能或禁止了UDP通信,从而阻止了局域网中设备的发现和通信
解决办法:关闭路由器AP隔离功能 或 允许UDP通信;如果找不到相关设置,通常可重置路由器解决
mdns没有及时发现设备
解决办法:在首页下拉刷新,可以重新搜索局域网中的设备
ESP8266使用blinker WiFi接入相关推荐
- 使用ESP8266通过Blinker平台接入天猫精灵控制电视/空调
目录 `演示视频` 1.准备工作 1.1 `原理` 1.2 `使用的硬件以及硬件连接图` 1.3 `开发环境准备` 2.解码空调红外键值 2.1 `把ESP8266红外接收的实例,上传到NodeMCU ...
- 基于ESP8266与Blinker(点灯科技平台)的智能遥控器设计
实现步骤 1. 简介 -今天一起来学习做一个可以用手机控制的红外遥控器,还可根据需求定时开关电视,一键进入设定电视节目.或者在快到家时,提前开启家中的空调.窗帘等红外遥控装置,为本不支持智能控制的红外 ...
- 基于ESP8266与Blinker(点灯科技平台)的智能遥控器设计(三)
3. 遥控控制 我们根据已经获取到的按键与其红外信号,开始进行控制设计 首先,我们需要手机下载软件 点灯 blinker ,注册登陆 点击右上方"+"号 -> Arduino ...
- 基于ESP8266与Blinker(点灯科技平台)的智能遥控器设计(四)
4 接入小爱同学 在点灯科技官网可以看到,BLINKER连接小爱同学的操作主要有 点灯科技官网链接 https://www.diandeng.tech/doc/xiaoai 所以,我们的语音控制只能是 ...
- 手机控制的esp8266利用mqtt协议接入百度云智能插座
手机控制的esp8266利用mqtt协议接入百度云智能插座 19年的春节,相信大家和我一样都待在家里,利用在家的时间现学现卖,制作了一款手机控制的智能插座,网上资料很多,我在查询资料中发现,esp82 ...
- ESP8266 AT指令模式接入贝壳物联,实现远程控制
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 ESP8266 AT指令模式接入贝壳物联,实现远程控制 前言 一.接线方法 二.AT指令配置ESP8266 三.ESP8266与贝壳物 ...
- 【阿里云生活物联网架构师专题 ②】esp8266 sdk 直连接入阿里云物联网平台,实现天猫精灵找队友零配网功能和语音控制;
本系列博客学习由非官方人员 半颗心脏 潜心所力所写,仅仅做个人技术交流分享,不做任何商业用途.如有不对之处,请留言,本人及时更改. 1.esp32接入阿里云物联网平台,实现天猫精灵语音控制: 2.es ...
- 基于ESP8266与Blinker(点灯科技平台)的智能遥控器设计(一)
实现步骤 1. 简介 -今天一起来学习做一个可以用手机控制的红外遥控器,还可根据需求定时开关电视,一键进入设定电视节目.或者在快到家时,提前开启家中的空调.窗帘等红外遥控装置,为本不支持智能控制的红外 ...
- 通过微软虚拟wifi接入点共享网络连接的方法以及一个问题的解决方案
大家知道,window系统联网后,可以通过本机的无线网卡虚拟一个wifi接入点,共享连接,是的其他机器或者手机等使用wifi接入的方式,通过本机上网. 命令大家都知道通过以下命令: netsh wla ...
最新文章
- DeepMind 打造 AI 游戏系统,可以玩扑克、国际象棋、围棋等,战斗力爆表
- 使用kubectl port-forward暴露minikube k8s service端口
- element标签弹窗_如何在element plus中实现不同弹窗传值
- VC的MFC中重绘函数的使用总结(整理)
- scala入门-01-IDEA安装scala插件
- java integer 不变模式_《JAVA与模式》之不变模式
- DOM、Window操作
- exception java doc_在javadoc中,標簽@throws和@exception之間有什么區別?
- oracle pivot 去除引号,使用pivot显示列式统计结果实例
- ubuntu18.04+语音识别
- db9针232接口波特率标准_RS232 DB9 计算机接口定义
- 华为面试状态码解密手把手教学
- Excel表格进行10进制/16进制换算
- 找不到工作?女生转行学IT到底靠不靠谱!
- C++移动输出端的光标代码实现
- 如何通过低代码平台搭建以“督办”为中心的办公管理系统
- 【Flask】学习笔记 #12 —— JinJa2模板继承与引入
- python编程课哪个机构最好,python培训比较好的机构
- 什么是XML?如何学习XML?
- Redis安装与使用
热门文章
- Html透明滚动条,透明滚动条 HTML
- 换了个无线怎么找到服务器,路由器再接一个路由器怎么设置? | 192路由网
- 关于arm-none-linux-gnueabi-4.4.3编译环境下,lib1funs.S编译报错的处理
- Kotlin DSL
- Python Pandas窗口函数
- 【首测】两款OpenCV 人工智能深度相机OAK PoE
- python读取pdf文件_python读取pdf文件
- html单元格左边合并三个,HTML连载3-单元格合并练习amp;表单标签
- 漏洞复现—Weblogic CVE-2017-10271/CVE-2018-2628/CVE-2018-2894/CVE-2020-14882/ssrf/weak_password
- 苹果升级后怎么恢复以前的版本_苹果承认iOS13致设备耗电过快:让所有iPhone用户更新...