ESP8266--SmartConfig

       smartconfig,字面意思智能配置,所谓智能,我觉得应该体现在配网上的方便快捷。如下图所示,手机已经通过无线WIFI接入了路由器,而设备不知道无线路由器WIFI密码,这时可通过手机将路由器WIFI信息告知设备,smartconfig可以理解为接入路由器的手机快速配置设备,使其接入路由器

     smartconfig完成配网主要分以下3个步骤:

1、设备进入初始化状态,开始收听附近的 WiFi 数据包。

2. 手机/平板设置 WiFi 名字和密码后,发送 UDP 广播包。

3. 设备通过 UDP 包(长度)获取配置信息,切换网络模式,连接上家里 WiFi,配置完成。

       关于UDP数据包发送有一个难点是,如果WLAN都是不加密的话,那UDP直接把相关信息发出来就好,但可惜路由器AP的加密方式是不固定的,模块没法知道UDP数据是何种加密方式,因此没办法解析出DATA信息,DATA不行,聪明的人类打算从其他字段下手,大部分字段手机端无法获得权限,最适合的只剩下长度字段。

      ESP8266 smartconfig使用AT指令进行配置,关于smartconfig指令只有两条:

AT+CWSTARTSMART—开启 SmartConfig

AT+CWSTOPSMART—停⽌止 SmartConfig

1、配置AT+CWSTARTSMART=1,wifi模块会一直进入广播监听模式。通过手机发送UDP信息:

2、直到成功接受到ssid和pwd,手机会接受到相应的应答,并显示发送成功的信息模块的回传信息,WIFI模块在连接过程中的提示信息如下:

3、最后通过AT+CWSTOPSMART=1停止smart config ,无论 smartconfig 成功与否,调⽤ AT+CWSTOPSMART 可释放快连占⽤用的内存。

  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 首先,您需要在移动onenet平台上创建一个设备并获取设备ID和API Key。然后,您需要将ESP8266-01S连接到您的WiFi网络,并使用AT指令将其配置为连接到onenet平台。以下是一些步骤: 1. 将ESP8266-01S连接到您的计算机,并使用串口工具(如Arduino IDE的串口监视器)打开串口连接。 2. 输入AT指令,检查模块是否正常工作。例如,输入AT指令并按回车键,如果模块正常工作,它将返回“OK”。 3. 使用AT指令将ESP8266-01S连接到您的WiFi网络。例如,输入AT+CWJAP="your_SSID","your_password"并按回车键。如果连接成功,它将返回“OK”。 4. 使用AT指令将ESP8266-01S配置为连接到onenet平台。例如,输入AT+CWMODE=1并按回车键,将模块设置为客户端模式。然后,输入AT+CWSTARTSMART并按回车键,启动SmartConfig模式。在SmartConfig模式下,您可以使用移动onenet应用程序扫描WiFi网络并将WiFi网络信息发送到ESP8266-01S。 5. 在移动onenet平台上创建一个设备,并获取设备ID和API Key。然后,使用AT指令将ESP8266-01S连接到onenet平台。例如,输入AT+MQTTUSERCFG="your_device_id","your_api_key"并按回车键。如果连接成功,它将返回“OK”。 6. 现在,您可以使用AT指令发布和订阅onenet平台上的主题。例如,输入AT+MQTTPUBLISH="your_topic","your_message"并按回车键,将消息发布到指定的主题。或者,输入AT+MQTTSUBSCRIBE="your_topic"并按回车键,订阅指定的主题并接收消息。 希望这些步骤能帮助您将ESP8266-01S连接到移动onenet平台。 ### 回答2: ESP8266-01S是一款基于ESP8266芯片的Wi-Fi模块,它可以作为一个独立的微控制器或作为另一个微控制器的无线扩展模块使用。移动OneNet是一款物联网平台,可以帮助我们连接各种设备实现数据的采集、存储和管理。下面我们就来介绍一下如何把ESP8266-01S连接到移动OneNet平台。 1.注册登录OneNet平台 首先,我们需要注册OneNet平台账号并登录,然后创建一个新的产品,生成产品ID和API Key。在我们的ESP8266-01S设备连接到OneNet时,需要使用这些信息进行鉴权以确保数据的安全性。 2.连接ESP8266-01S到OneNet 然后,我们需要使用Arduino IDE为ESP8266-01S编写一个程序,该程序可以将设备的数据发送到OneNet平台。我们可以通过AT指令或使用Arduino库来实现这个过程。 使用AT指令时,我们需要在ESP8266-01S上安装透传固件,并使用以下指令连接到OneNet: AT+CWMODE=1 //设置为Station 模式 AT+CWJAP="WiFi名称","WiFi密码" //连接到WIFI AT+CIPSTART="TCP","openapi.heclouds.com",80 //连接OneNet平台 AT+CIPSEND="指令长度" //发送数据 "API Key\n" //API Key "POST /devices/产品ID/datapoints HTTP/1.1\n" //数据点请求路径 "Host:api.heclouds.com\n" //主机地址 "Content-Length:数据内容长度\n" //数据内容长度 "{\"datastream_id\":\"数据流名称\",\"datapoints\":[{\"value\":数值}]} //数据流名称和数值 AT+CIPCLOSE //关闭连接 通过Arduino库,我们可以使用OneNet库和ESP8266库将数据发送到OneNet平台。以下是一个示例程序: #include <SoftwareSerial.h> #include <ESP8266WiFi.h> #include <OneNet.h> SoftwareSerial ESPserial(2,3);//(rx,tx) OneNet mqtt("你的API Key"); WiFiClient wifiClient; void setup() { ESPserial.begin(115200); Serial.begin(9600); WiFi.begin("WiFi名称", "WiFi密码"); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println("对接OneNet..."); mqtt.begin(&wifiClient); } void loop() { int value = analogRead(A0); mqtt.saveDataStream("数据流名称", value); delay(5000); } 在这个程序中,我们第一步是初始化ESP8266-01S串口和OneNet库,接着我们使用WiFi库连接到WiFi,然后使用OneNet库将数据发送到OneNet平台。我们可以根据需要自定义数据流的名称和数值。 3.在OneNet平台中查看数据 现在,我们的ESP8266-01S已经成功连接到OneNet平台了,我们可以在平台上查看设备发送的数据。我们可以在OneNet的数据流管理页面中查看数据流的名称和数值,还可以创建新的图表和报警规则来满足不同的需求。 总结: 以上就是ESP8266-01S连接移动OneNet的详细说明,我们需要在OneNet平台中创建一个新的产品,并生成API Key和产品ID,然后通过AT指令或使用OneNet库将设备数据发送到OneNet平台,最后在平台上查看数据并进行分析和处理。这个过程需要一定的编程和网络知识,但是通过这个过程,我们可以将我们的设备连接到移动OneNet平台,实现更加智能和高效的数据采集和管理。 ### 回答3: ESP8266-01S是一款带有WiFi功能的微控制器芯片,它可以通过WiFi无线网络连接到互联网。移动OneNET是中国移动推出的一款物联网云平台,它可以接收和处理来自各种设备的数据,方便用户进行数据管理和应用开发。 下面是连接ESP8266-01S到移动OneNET的步骤: 1. 首先,需要申请一个OneNET账号,并创建一个设备。在OneNET的控制台中,选择“设备管理”并点击“添加设备”,填写设备的相关信息,如设备名称、设备标识符等。 2. 在ESP8266-01S上运行程序,将其与WiFi网络连接。通过AT指令发送“AT+CWJAP”和“AT+CIPSTART”指令,可以连接到WiFi网络,并建立TCP连接。 3. 编写与OneNET进行通信的程序。在ESP8266-01S上运行程序,通过TCP连接向OneNET发送HTTP POST请求,将设备数据上传到OneNET的云平台。此外,也可以通过HTTP GET请求,从OneNET平台上获取特定的数据。 4. 配置设备的数据流。在OneNET的控制台中,选择设备并点击“数据流管理”,可以创建各种数据流,将设备上传的数据存储在相应的数据流中。 5. 查看数据。在OneNET的控制台中,选择设备,并点击“数据记录”,可以查看设备上传的数据,并进行图表展示和数据分析。 总之,连接ESP8266-01S到移动OneNET需要完成以下步骤:注册OneNET账号,创建设备,连接WiFi网络并建立TCP连接,编写与OneNET通信的程序并上传数据,配置数据流,查看设备数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值