SmartConfig一键配网,给8266一键配网上云端

了解SmartConfig与Airkiss一键配网,给8266一键配网上云端,当你拿到一块WiFi模块,如果需要连上网络,则需要将SSID名称、密码设置到模块当中。一般有几种方式:

一种就是通过串口接到输入设备,通过串口输入AT指令(SSID名称和密码);

一种就是设备提供一个AP热点,手机连上这个热点,然后通过手机把家里的WiFi的SSID和密码配置到设备上,最后手机再切换回家里的WiFi,这种配网成功率可以说是100%。

通过SmartConfig技术配置,微信的AirKiss、ESP8266的esptouch,这是最智能的配网方式。但是缺点也很明显,那就是配网成功率未达到100%,同时SmartConfig还得另外安装一个app。SmartConfig最佳的应用场景就是你开发的产品需要搭配App来使用。

一、步骤

接下来我们通过实例来做一个小DEMO

打开零知开发工具,界面如下:

二、连接

电脑连接8266WiFi模块

三、代码


							
	/**
	*    by 零知实验室([url=http://www.lingzhilab.com]www.lingzhilab.com[/url])
	*    -- 零知开源,让电子制作变得更简单! --
	*    作者:云上上云
	*    时间: 2019/06/01 13:39
	*    说明: 一键配网
	**/
	#include <ESP8266WiFi.h>
	void smartConfig()
	{
	  WiFi.mode(WIFI_STA);
	  Serial.println("\r\nWait for Smartconfig等待连接");
	  delay(2000);
	  // 等待配网
	  WiFi.beginSmartConfig();
	 
	while (1)
	  {
	    Serial.print(".");
	    delay(500);
	    if (WiFi.smartConfigDone())
	    {
	      Serial.println("SmartConfig Success");
	      Serial.printf("SSID:%s\r\n", WiFi.SSID().c_str());
	      Serial.printf("PSW:%s\r\n", WiFi.psk().c_str());
	      WiFi.setAutoConnect(true);  // 设置自动连接
	      break;
	    }
	  }
	 
	  Serial.println("");
	  Serial.println("WiFi connected");  
	  Serial.println("IP address: ");
	  Serial.println(WiFi.localIP());
	}
	 
	void setup()
	{
	  Serial.begin(115200);
	  smartConfig();
	}
	 
	void loop()
	{
	  delay(100);
	  Serial.println("配置成功");
	}
							
						

2.验证代码,连接esp8266,上传程序,打开调试,串口选择1152000,窗口会不断打印一个一个的点,等待连接

3.然后使用ESP8266提供的App ESPTouch 或者 SmartConfigAPP。(在Github下载,也可以点击本文最后下载),进行如下操作

\

4.验证成果,当手机端配置成功,出现如下结果

app下载

一键配置8266.zip(点击下载)