ESP8266透传设置脚本,设置成功后自动连接贝壳物联平台

作者:bigiot | 更新时间:2018-12-15 | 浏览量:63827

新选择:透传贝壳物联平台,可直接刷smartconfig2bigiot.bin固件,通过手机直接配置WiFi信息,随时更换WiFi信息,开机自动透传,断线自动重连。

详情参见:ESP8266-01 Smartconfig 直接透传贝壳物联断线重连固件

一、手动设置

1、硬件

2、软件

3、接线

1451714015951938.png

ESP8266-01 USB to TTL 独立电源
VCC   3.3V
GND GND GND
RXD TXD  
TXD RXD  
CH_PD   3.3V

4、串口调试工具使用及AT命令示例

先确定usb to ttl连接的端口,再打开串口调试工具,设置如下图:

网络串口调试工具使用说明

AT命令输入界面如下,一个命令一个命令输入:

AT固件查询版本号

4、命令

依次输入以下命令(v0.9.5.2版):

//设置WiFi应用模式为Station
AT+CWMODE=1
//连接到WiFi路由器,请将SSID替换为路由器名称,Password替换为路由器WiFi密码
AT+CWJAP="SSID","Password"
//连接贝壳物联服务器
AT+CIPSTART="TCP","www.bigiot.net",8181
//设置为透传模式
AT+CIPMODE=1
//进入透传模式
AT+CIPSEND

完成以上命令重启,自动进入透传模式,并连接贝壳物联服务器。

v1.0+固件命令如下:

+++
AT
ATE0
AT+RESTORE
AT+CWMODE=3
AT+CWJAP="SSID","Password"
AT+CIPMUX=0
AT+CIPMODE=1
AT+SAVETRANSLINK=1,"121.42.180.30",8181,"TCP"

刷AT固件教程参见:《ESP8266刷机刷固件方法,ESP一键烧录工具使用教程

二、自动设置

此方法将ESP8266连接在Arduino的虚拟串口上,通过Arduino自动执行手动设置代码,省去usb转ttl模块操作。

1、硬件

2、接线

接线尽量简洁,连接线要短,这样可以提高成功率。

ESP8266-01 Arduino开发板
VCC 3.3V
GND GND
TXD 2
RXD 3
CH_PD 3.3V(加电阻上拉)

3、代码

本站所有公开代码托管于GitHub,方便大家使用和共同参与完善,地址:https://github.com/bigiot

进入以上链接,依次点击 bigiotArduino -> Download ZIP下载。

由于固件版本不一样,AT指令也有所不同,代码中有v0.9.5.2和v1.0+的版本。

可通过AT+GMR查看固件版本。

4、代码使用说明

下载代码后解压得到如下文件:

/  
    examples/  
    libraries/  
    README.md
    ...

5、用Arduino IDE打开

examples/ESP8266/config/config.ino

按代码中的注释说明,修改其中的WiFiSSID(路由器名称)、WiFiPASSWORD(WiFi密码)参数,上传至Arduino开发板,Arduino和Esp8266同时断电重启

打开串口监视器,当看到 "{"M":"WELCOME TO BIGIOT"}" 说明设置成功。设置成功后一定要断电重启几次esp8266,看是否每次都能进入透传模式并收到"{"M":"WELCOME TO BIGIOT"}" ,以确定稳定性。

ESP8266透传自动设置成功图

前面有点乱码是正常现象,但不能全是乱码,没有一个看得懂,就有可能波特率不对,或固件有问题。

====================================

如果严格按照以上教程来做,还出现以下情况:

esp自动设置.jpg

考虑以下几点:

1、针脚对应、接线是否正确,WiFi模块供电是否充足(笔记本的USB口往往供电不足,特别是用电池的时候);

2、模块固件、硬件是否有问题;

3、使用手动设置输入AT指令(参见下载文件中的:ESP8266透传设置命令.txt),查看ESP模块的反馈情况。


评论:共67条

贝壳物联 评论于:2016-03-07 21:29:24
有疑问可在下方贴出来进行讨论,方便他人解决,我总回答同样的问题-_-!!!!!
liforce 回复于:2016-05-13 10:20:47
回复 @贝壳物联:怎么设置才能保证设备不掉线
bigiot 回复于:2017-07-24 08:13:04
回复 @liforce:每隔50秒用status指令检测一下设备在线状态, 如果是connected发送checkin,收到welcome发checkin。这样就可以保存在线,并发现掉线重连了。为快速登录期间,可以在checkin之前先checkout一下。
一声叹息 回复于:2020-10-18 22:03:58
回复 @贝壳物联:我想问下,为什么设备连接上了,我发 play 过去,led没有反应?
shan2699 评论于:2016-03-10 15:49:44
ESP8266配置通过,但运行控制led程序时,不能连接服务器,一直无法在线?
sxmwhl 回复于:2016-03-10 16:00:28
回复 @shan2699:配置成功后,可再考虑以下几个方面:
1、再确认一遍esp8266重启后是否自动进入透传模式,
2、检查登陆信息是否正确?id和apikey是否对应。
3、参照:http://www.bigiot.net/help/18.html 手动测试登陆信息,看是能正常登陆。
无聊哦 回复于:2016-09-20 17:03:21
回复 @sxmwhl:http://www.bigiot.net/help/18.html 按这个方法,无法登陆时怎么回事?但是我ping 域名或ip都没问题
Himi 回复于:2017-05-03 17:16:44
重启后并不能自动进入透传模式怎么办回复 @sxmwhl:
shan2699 评论于:2016-03-10 15:51:05
查看路由器也能看到登录信息,不知下一步如何调试?
oksuyong2006 评论于:2016-03-18 14:26:45
忙了很久,今天刚刚出现{“M”:"WELCOM TO BIGHOT"},但是马上又重新跳回乱码,一会又出现{“M”:"WELCOM TO BIGHOT"},总是来回反复,请问,是什么原因啊??
贝壳物联 回复于:2016-03-18 14:34:28
回复 @oksuyong2006:这是esp8266模块重启造成的,造成重启的原因可能是接线原因电源是否稳定,多个电源的话是否共地,也有可能模块本身不好,连路由器不稳定,可常识刷新固件,或换一家模块试试。
nikochanzp 评论于:2016-04-07 22:27:29
如何查看是否进入透传模式
贝壳物联 回复于:2016-04-08 19:55:03
回复 @nikochanzp:用串口调试工具查看,输入AT指令看是否有反应。
nikochanzp 评论于:2016-04-07 22:29:25
没有出现乱码是正常吗?
贝壳物联 回复于:2016-04-08 19:57:22
回复 @nikochanzp:没有乱码,说明只有输出的命令,设备没有做出任何回应,这时候很可能应为Arduino的命令没有通过模拟串口发送到esp,或者是esp有回应但是Arduino没有接收到,或者esp模块有问题无法做出回应。
longhuan 回复于:2016-04-10 22:48:59
回复 @贝壳物联:这个情况应该怎么解决?我也遇到了这样的情况
贝壳物联 回复于:2016-04-11 19:14:53
回复 @longhuan:遇到这种情况,请尝试手动设置透传。
ridxqqqq 评论于:2016-04-10 08:43:12
我用的是ESP8266-01系列的 一切都弄好后 能正常操作 但断电后再上电红灯和蓝灯都亮了。后来试着把索接的02引脚断开以后再上电 然后再接上就正常了。个人感觉是电源的问题。大家都有什么看法??
贝壳物联 回复于:2016-04-11 19:18:02
回复 @ridxqqqq:esp01针脚少,可能在启动过程该针脚有其他用途,造成冲突。
longhuan 评论于:2016-04-10 22:38:08
SoftwareSerial mySerial(19, 18); //设置模拟串口针脚(RX, TX)我用的arduino2560,所以更改了一下端口,结果显示mySerial没有通,为啥?串口显示器显示如下;waiting start
setting start
exit pass-through mode
choose station mode
connect wireless router
choose pass-through mode
connect bigiot.net and save translink
restarting...
贝壳物联 回复于:2016-05-13 21:12:08
回复 @longhuan:原因可能很多,慢慢排除。
图图小怪 回复于:2021-02-09 21:13:21
回复 @贝壳物联:大概有些啥原因,能给个方向排除吗
@ Zero 回复于:2021-04-26 14:48:44
回复 @longhuan:兄弟,你的解决了吗,我也用的2560,也不好用
kangzhuo 评论于:2016-05-19 21:35:27
一直循环乱码下去,过去了十多分钟,正常吗?
猪猪侠的棒棒糖 回复于:2021-04-01 13:13:39
回复 @kangzhuo:我也是
shaonaiwen 评论于:2016-06-18 19:26:40
{"M":"WELCOME TO BIGIOT"}出现了这个提示,而且很稳定,怎么添加到贝壳设备中?
bigiot 回复于:2016-06-23 11:46:04
回复 @shaonaiwen:参考通讯协议http://www.bigiot.net/help/1.html
下一步你需要在用户中心新建一个设备,使用该设备的id和key登录服务,通过checkin指令。
╬══→ 唯愛の媄 评论于:2016-07-19 10:54:02
按照上面给的图连好以后出现了帖子最下面那种情况,确定连线没错,串口输入命令也没反应,这是什么情况?
shadowyingjian 评论于:2016-07-28 11:00:21
setting start
exit pass-through mode
Close command echo
choose station mode
connect wireless router
connect www.bigiot.net
choose pass-through mode
enter pass-through mode
setting over
exit pass-through mode
请问出现这些问题,是什么问题呢?求解,
并且在控制设备时一直显示设备不在线。
贝壳物联 回复于:2016-07-28 21:00:48
回复 @shadowyingjian:设置完透传是不会设备在线的,要回到教程里,继续完成Arduino与esp8266的连接,烧录代码。
shadowyingjian 回复于:2016-07-29 12:16:59
回复 @贝壳物联:设置好透传后,连线也没问题,烧写程序也没问题,设备连上热点后一直是0k的数据,而且设备也是不在线的
ding 回复于:2016-08-06 11:28:39
回复 @shadowyingjian:
跟你的问题一样,设备显示不在线,期待找出问题...
bigiot 回复于:2016-09-20 19:14:48
回复 @ding:要查看arduino监视窗口打印信息进行分析。
jiaboyu 评论于:2016-11-06 22:55:45
透传设置时,wifi模块的接线是不是tx接3引脚,rx接2引脚呢
nangeque 评论于:2016-11-17 18:52:41
发送AT指令没反应,wifi也连不上是咋回事
activemee 评论于:2016-11-23 00:00:10
我的8266固件版本是1.0以下的,没有SAVETRANSLINK这个命令,怎么保持透传状态?
贝壳物联 回复于:2017-04-08 09:51:23
回复 @activemee:查看相应AT指令手册
Himi 评论于:2017-05-02 12:26:55


重启后连不上贝壳物联
waiting start
setting start
exit pass-through mode
OK choose station mode
connect wireless router
OI choose pass-through mode
OK connect bigiot.net and save translink
restarting...
OK OK
j旽?
OK
j礖?
f靤 Jan 8 2013,rst causfr1, boot mo蘣:(3,3)
load 0x4010000ot`裭C?踜誱<YMC!??<&朧
倐俠a暪?76, roo?0 tail 8 chkq韒 0x84 lo`?0xf 0tail 8 chkq韒 d P eOhMKu 0屻>
yY,甠H?
maxf 评论于:2017-05-03 19:54:34
按照教程上做了,但是显示第二种情况,怎么解决?
fat_summer 评论于:2017-05-29 11:04:10
烧录代码后,设备只在线一分钟后又显示不在线了,请问这个是什么原因呢?
charm 评论于:2017-05-30 10:03:41
电脑上面可以正常监视数据,手机APP也显示在线,但是APP的数据一直为0。这是什么原因?
bigiot 回复于:2017-06-06 18:07:00
回复 @charm:用最新版的APP试试,贝壳物联v2.0,在群文件或者,移动端处下载。
niwusong 评论于:2017-06-18 19:41:33
有计划开发nodemcu或者python固件吗?AT都没人用,太繁琐了
bigiot 回复于:2017-06-20 07:22:16
回复 @niwusong:这要分什么场合用,nodemcu、Python是不错的玩法。
tange 评论于:2017-07-16 21:38:55
Arduino:1.8.3 (Windows 7), 开发板:"Arduino/Genuino Uno"

In file included from C:\Users\tange\AppData\Local\Temp\arduino_modified_sketch_900124\wendu.ino:1:0:

C:\Program Files (x86)\Arduino\libraries\aJson/aJSON.h:92:6: error: conflicting return type specified for 'virtual int aJsonStream::flush()'

int flush();

^

In file included from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Stream.h:26:0,

from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/HardwareSerial.h:29,

from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:232,

from sketch\wendu.ino.cpp:1:

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Print.h:90:18: error: overriding 'virtual void Print::flush()'

virtual void flush() { /* Empty implementation for backward compatibility */ }

^

exit status 1
为开发板 Arduino/Genuino Uno 编译时出错。

在文件 -> 首选项开启
“编译过程中显示详细输出”选项
这份报告会包含更多信息。
贝壳物联 回复于:2017-07-22 12:02:50
回复 @tange:arduino IDE 1.8.3版本,不支持ajson,请使用ArduinoJson代替,或者换用之前版本的Arduino IDE 譬如 1.6.x
WECAN 评论于:2017-08-27 16:00:10
看了这个终于回了!
Spark 评论于:2017-12-19 01:20:22
到最后也没有返回"{"M":"WELCOME TO BIGIOT"}" ,只出现了一个ready,这是成功了还是失败了啊?
Wangfh 评论于:2018-02-28 20:04:06
前面一切正常,也能连接,设备显示在线,但是不能控制
Y134 评论于:2018-05-01 22:11:46
请问连接成功后,但是显示设备不在是怎么回事呢。对应的ID和APIKEY和数据接口ID都没问题
yuchuang15 回复于:2019-03-29 09:07:51
回复 @Y134:我也是同样的问题 期待答案
一声叹息 回复于:2020-10-18 22:05:08
回复 @Y134:我也是,请问你解决了吗?
一声叹息 回复于:2020-10-18 22:06:00
回复 @Y134:我也是,请问你解决了吗?
ぃ听海哭的声音ヽ 评论于:2018-05-25 23:55:32
我ESP8266的版本是1.3.0,没有成功
zhousiyuan 评论于:2018-09-04 10:14:41
setting start
exit pass-through mode
+++AT


Close command echo


choose station mode
OK

connect wireless router
ARE0



connect www.bigiot.net
OK

choose pass-through mode


enter pass-through mode
OK
WICI DISCONOECJ

setting over
exit pass-through mode
WIFI CONOECTED

WHFI GOT IPCONNECT



OK





WIFH CONNECTED

WIFI GOT IP
wifi 连接成功了,但总显示不在线怎么回事啊
翠微薛之谦 评论于:2018-10-11 21:28:51

ERROR
AT+CIPSTART="TCP","www.bigiot.net",8181



busy p...


busyp...
DNS Fail
请问dns 错误的怎么解决呢
谢谢
bigiot 回复于:2018-10-12 08:36:53
回复 @翠微薛之谦:路由器修改DNS服务器
翠微薛之谦 评论于:2018-10-12 10:27:24
7620 翠微薛之谦的第一个设备 f91d240e0 公开 不在线 0秒
您好 我的wifiesp8266已经通过at指令成功连接贝壳物联服务器了
arduino也成功烧写了 但是设备这里一直没有显示在线 无法进行对话
请问怎么解决呢 谢谢
gracegao 评论于:2018-11-02 14:22:20
都弄完了, 程序也烧好了, 电脑串口显示正常, 客户端一直显示不在线, 什么问题
bigiot 回复于:2018-11-11 16:57:26
回复 @gracegao:多半是透传和接线问题
· Papuer 回复于:2018-12-02 11:29:41
回复 @gracegao:解决了吗 我也是同样的问题
yuchuang15 回复于:2019-03-29 09:11:43
回复 @bigiot:我也是一样的 我用手机开的热点,而且已经显示esp8266成功连接,用电脑cmd pingwifi模块和贝壳物联官网的模块都可以成功 就是设备不在线,大神可以告诉我该怎么排查么,我使用arduino的串口监视器可以看到update的温度信息以及state,但是看不见checkin 和checkout的打印指令,求助大佬
奋斗し 评论于:2019-04-24 23:22:02
有没有可以自动写串口的,因为每一次都需要自己设置一遍透传
JeeryF 评论于:2019-05-22 16:24:30
这个是说连上贝壳物联了,但怎么和我的设备链接呢
15902269825 评论于:2019-06-10 19:54:13
waiting start
setting start
exit pass-through mode
choose station mode
connect wireless router
choose pass-through mode
connect bigiot.net and save translink
restarting...
严格执行之后,一直这样怎么咋回事儿啊
图图小怪 回复于:2021-02-09 21:11:52
回复 @15902269825:我也是,请问你解决了吗
aaronwang 评论于:2020-01-31 12:07:18
我用了esp8266nodemcu开发板来做,AT设置成功,但是连上arduino之后就不行了。显示设备不在线。。。电源gnd txrx都连了
返回顶部