ESP8266接入onenet串口调试
ESP8266通过AT指令调试与Onenet进行连接的步骤
- 本次WIFI模块选择的是安信可模组:ESP8266MOD(VCC GND TXD RXD RST IO_0),串口调试软件选择的是:串口调试助手 SSCOM V5.13.1 串口
2.配置WiFi模块
首先在模块串口调试工具中输入“AT”并加上回车,点击“手动发送”按钮,WIFI模块返回“OK”,说明模块工作正常
3.模块配置和用RestFul API接入OneNet相同,依次发送如下几个命令到WIFI模块:
AT+CWMODE=3 //设置WIFI应用模式
AT+RST //重置WIFI模块
AT+CIFSR//查询本地IP
AT+CWJAP=“your ssid”,“password” //连接无线路由器
注意:这些配置完成后,若模块重新上电,可直接进入第二步,与服务器建立TCP连接。
4.和OneNet服务器建立TCP连接,依次发送命令:
AT+CIPSTART=“TCP”,“183.230.40.33”,80 //和服务器建立TCP连接
AT+CIPMODE=1 //进入透明传输模式
AT+CIPSEND //开始传输
5.到此,我们可以发送前面准备好的数据了,发送HTTP数据包为:
POST /devices/131658(创建的设备ID)/datapoints HTTP/1.1(回车)
api-key: mgDiVsQ7E8bPUwfBDtTy4K8yMtMA(创建的产品**)(回车)
3Host:api.heclouds.com(回车)
Content-Length:63(回车且“63”需要和下面的数据参数长度保持一致)
(换行)
{“datastreams”:[{“id”:“sys_time(数据流名称)”,“datapoints”:[{“value”:50}]}]}
6.返回结果如下是正确的
调试过程需要注意的地方:
1.需要保持WIFI模块的波特率与PC的波特率一致,在这个过程中,我们设置的串口波特率为115200;
2.HTTP数据包是一整段发送并非一句一句,但是每一句输完结束需要换行结束,最后一句与倒数第二句之间还需要一个换行,如上面所示;
3.wifi模块上电时候,如果发现没有办法写入数据,这有可能是串口没有打开造成的,因此要保持“关闭串口”,这样才能写入数据并进行传输;
4.若使用EDP协议进行数据包的传送,可以使用EdpProtoDebugger-v2.0调试工具生成数据包,在串口调试工具中发送。