自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库

  1. 点击下载

  1. 通过Arduino IDE 菜单>项目>加载库>添加.ZIP库 导入到库,如图:

在app中添加设备,获取Secret Key


  1. 进入App,点击右上角的“+”号,然后选择 添加设备

  1. 点击选择Arduino > WiFi接入

  1. 复制申请到的Secret Key

DIY界面


  1. 在设备列表页,点击设备图标,进入设备控制面板

  1. 首次进入设备控制面板,会弹出向导页

  1. 在向导页点击 载入示例,即可载入示例组件

编译并上传示例程序


打开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足以进行加密通信,默认使用加密通信。

为什么设备显示不在线?


  1. blinker App如何判断设备是否在线?

blinker App在 App打开时、进入设备页面时、在设备页面中每隔一定时间 会向设备发送心跳请求,内容为 {"get":"state"} 。

设备收到请求后,会返回 {"state":"online"} ,app接收到这个返回,即会显示设备在线。

  1. 程序没有成功上传到开发板

解决办法:重新上传,上传后打开串口监视器,确认程序正确运行

  1. 程序中没有设置正确的ssid和密码,导致没有连接上网络

解决办法:设置后再重新上传程序,上传后打开串口监视器,确认程序正确运行

  1. 程序错误,导致程序运行不正确

解决办法:先使用并理解blinker例程,再自由发挥

  1. 开发板供电不足

解决办法:换电源 或 换USB口,供电口需要3.3V的电压,少于3.2看起来没问题,但是程序无法运行

为什么无法切换到局域网通信?


  1. 路由器开启了AP隔离功能或禁止了UDP通信,从而阻止了局域网中设备的发现和通信

解决办法:关闭路由器AP隔离功能 或 允许UDP通信;如果找不到相关设置,通常可重置路由器解决

  1. mdns没有及时发现设备

解决办法:在首页下拉刷新,可以重新搜索局域网中的设备

ESP8266使用blinker WiFi接入相关推荐

  1. 使用ESP8266通过Blinker平台接入天猫精灵控制电视/空调

    目录 `演示视频` 1.准备工作 1.1 `原理` 1.2 `使用的硬件以及硬件连接图` 1.3 `开发环境准备` 2.解码空调红外键值 2.1 `把ESP8266红外接收的实例,上传到NodeMCU ...

  2. 基于ESP8266与Blinker(点灯科技平台)的智能遥控器设计

    实现步骤 1. 简介 -今天一起来学习做一个可以用手机控制的红外遥控器,还可根据需求定时开关电视,一键进入设定电视节目.或者在快到家时,提前开启家中的空调.窗帘等红外遥控装置,为本不支持智能控制的红外 ...

  3. 基于ESP8266与Blinker(点灯科技平台)的智能遥控器设计(三)

    3. 遥控控制 我们根据已经获取到的按键与其红外信号,开始进行控制设计 首先,我们需要手机下载软件 点灯 blinker ,注册登陆 点击右上方"+"号 -> Arduino ...

  4. 基于ESP8266与Blinker(点灯科技平台)的智能遥控器设计(四)

    4 接入小爱同学 在点灯科技官网可以看到,BLINKER连接小爱同学的操作主要有 点灯科技官网链接 https://www.diandeng.tech/doc/xiaoai 所以,我们的语音控制只能是 ...

  5. 手机控制的esp8266利用mqtt协议接入百度云智能插座

    手机控制的esp8266利用mqtt协议接入百度云智能插座 19年的春节,相信大家和我一样都待在家里,利用在家的时间现学现卖,制作了一款手机控制的智能插座,网上资料很多,我在查询资料中发现,esp82 ...

  6. ESP8266 AT指令模式接入贝壳物联,实现远程控制

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 ESP8266 AT指令模式接入贝壳物联,实现远程控制 前言 一.接线方法 二.AT指令配置ESP8266 三.ESP8266与贝壳物 ...

  7. 【阿里云生活物联网架构师专题 ②】esp8266 sdk 直连接入阿里云物联网平台,实现天猫精灵找队友零配网功能和语音控制;

    本系列博客学习由非官方人员 半颗心脏 潜心所力所写,仅仅做个人技术交流分享,不做任何商业用途.如有不对之处,请留言,本人及时更改. 1.esp32接入阿里云物联网平台,实现天猫精灵语音控制: 2.es ...

  8. 基于ESP8266与Blinker(点灯科技平台)的智能遥控器设计(一)

    实现步骤 1. 简介 -今天一起来学习做一个可以用手机控制的红外遥控器,还可根据需求定时开关电视,一键进入设定电视节目.或者在快到家时,提前开启家中的空调.窗帘等红外遥控装置,为本不支持智能控制的红外 ...

  9. 通过微软虚拟wifi接入点共享网络连接的方法以及一个问题的解决方案

    大家知道,window系统联网后,可以通过本机的无线网卡虚拟一个wifi接入点,共享连接,是的其他机器或者手机等使用wifi接入的方式,通过本机上网. 命令大家都知道通过以下命令: netsh wla ...

最新文章

  1. DeepMind 打造 AI 游戏系统,可以玩扑克、国际象棋、围棋等,战斗力爆表
  2. 使用kubectl port-forward暴露minikube k8s service端口
  3. element标签弹窗_如何在element plus中实现不同弹窗传值
  4. VC的MFC中重绘函数的使用总结(整理)
  5. scala入门-01-IDEA安装scala插件
  6. java integer 不变模式_《JAVA与模式》之不变模式
  7. DOM、Window操作
  8. exception java doc_在javadoc中,標簽@throws和@exception之間有什么區別?
  9. oracle pivot 去除引号,使用pivot显示列式统计结果实例
  10. ubuntu18.04+语音识别
  11. db9针232接口波特率标准_RS232 DB9 计算机接口定义
  12. 华为面试状态码解密手把手教学
  13. Excel表格进行10进制/16进制换算
  14. 找不到工作?女生转行学IT到底靠不靠谱!
  15. C++移动输出端的光标代码实现
  16. 如何通过低代码平台搭建以“督办”为中心的办公管理系统
  17. 【Flask】学习笔记 #12 —— JinJa2模板继承与引入
  18. python编程课哪个机构最好,python培训比较好的机构
  19. 什么是XML?如何学习XML?
  20. Redis安装与使用

热门文章

  1. Html透明滚动条,透明滚动条 HTML
  2. 换了个无线怎么找到服务器,路由器再接一个路由器怎么设置? | 192路由网
  3. 关于arm-none-linux-gnueabi-4.4.3编译环境下,lib1funs.S编译报错的处理
  4. Kotlin DSL
  5. Python Pandas窗口函数
  6. 【首测】两款OpenCV 人工智能深度相机OAK PoE
  7. python读取pdf文件_python读取pdf文件
  8. html单元格左边合并三个,HTML连载3-单元格合并练习amp;表单标签
  9. 漏洞复现—Weblogic CVE-2017-10271/CVE-2018-2628/CVE-2018-2894/CVE-2020-14882/ssrf/weak_password
  10. 苹果升级后怎么恢复以前的版本_苹果承认iOS13致设备耗电过快:让所有iPhone用户更新...