ESP8266 模块在启动时失败
ESP8266 module fails at boot
我有一个 ESP8266MOD ESP-12-E 连接到 USB 转 UART 模块。当我尝试与模块通信时,我得到了一些可理解的输出,然后是一条错误消息,并且通信已关闭。
适用于 ai-thinker-0.9.5.2-115200 和 espressif-nonos-2.0.0-SDK (这不是文件的实际名称):
ets Jan 8 2013,rst cause:1, boot mode:(3,7)
load 0x40100000, len 816, room 16
tail 0
chksum 0x8d load 0x3ffe8000, len 788, room 8
tail 12
chksum 0xcf ho 0
tail 12
room 4 load 0x3ffe8314, len 288, room 12 tail 4
chksum 0xcf
csum 0xcf
2nd boot version : 1.2
SPI Speed : 40MHz
SPI Mode : DIO SPI
Flash Size : 32Mbit
jump to run user1
对于今天构建的 nodeMCU 固件 (查看日期) 使用他们的云服务,我收到了一条较短的消息:
ets Jan 8 2013,rst cause:1, boot mode:(3,7)
load 0x40100000, len 26160, room 16
tail 0
chksum 0xb1
load 0x3ffe8000, len 2192, room 8
tail 8
chksum 0x5d
load 0x3ffe8890, len 136, room 0
tail 8
chksum 0xd8
csum 0xd8
另外,错误信息是:
对于 linux 上的 miniterm.py:
Exception in thread rx:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 754, in run
self.__target(*self.__args, **self.__kwargs)
File "/usr/bin/miniterm.py", line 403, in reader
data = self.serial.read(self.serial.in_waiting or 1)
File "/usr/lib/python2.7/dist-packages/serial/serialposix.py", line 495, in read
raise SerialException('device reports readiness to read but returned no data (device disconnected or multiple access on port?)')
SerialException: device reports readiness to read but returned no data (device disconnected or multiple access on port?)
Exception in thread tx:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 754, in run
self.__target(*self.__args, **self.__kwargs)
File "/usr/bin/miniterm.py", line 444, in writer
self.serial.write(self.tx_encoder.encode(text))
File "/usr/lib/python2.7/dist-packages/serial/serialposix.py", line 547, in write
raise SerialException('write failed: %s' % (v,))
SerialException: write failed: [Errno 5] Input/output error
对于 windows 上的 Putty,我似乎也在启动过程的同一阶段遇到错误。
注1:我刷新固件成功了,每次都刷到"verify OK",所以连接正常。
注2:当我在Normal Boot模式下使用模块时(GPIO15为低电平,GPIO0和GPIO2悬空),当EN(enable)pin为高电平(3.3v)时,PORT8 on windows and /dev/ttyUSB0 在 linux 上都消失了。此外,在与 putty 或 miniterm 进行任何类似通信时,我需要保持 EN 浮动以便系统看到模块,然后连接软件,然后将 EN 置于高电平(否则它会卡住)。
也尝试过使用 ESPlorer,但无法自动检测固件。我在几个固件上遇到了这个错误,我尝试了很多波特率。
问题出在 ESP8266 单元的电源上。我没有从 USB-to-UART 模块提供 3.6V,而是使用另一个提供 3.3V 的电压源,也可能提供更高的电流。
请注意,模块必须由 3.0V - 3.6V 供电,它可能会使用几百毫安,因此旧电源略高于 3.6V,可能无法提供所需的电流。
我有一个 ESP8266MOD ESP-12-E 连接到 USB 转 UART 模块。当我尝试与模块通信时,我得到了一些可理解的输出,然后是一条错误消息,并且通信已关闭。
适用于 ai-thinker-0.9.5.2-115200 和 espressif-nonos-2.0.0-SDK (这不是文件的实际名称):
ets Jan 8 2013,rst cause:1, boot mode:(3,7)
load 0x40100000, len 816, room 16
tail 0
chksum 0x8d load 0x3ffe8000, len 788, room 8
tail 12
chksum 0xcf ho 0
tail 12
room 4 load 0x3ffe8314, len 288, room 12 tail 4
chksum 0xcf
csum 0xcf
2nd boot version : 1.2
SPI Speed : 40MHz
SPI Mode : DIO SPI
Flash Size : 32Mbit
jump to run user1
对于今天构建的 nodeMCU 固件 (查看日期) 使用他们的云服务,我收到了一条较短的消息:
ets Jan 8 2013,rst cause:1, boot mode:(3,7)
load 0x40100000, len 26160, room 16
tail 0
chksum 0xb1
load 0x3ffe8000, len 2192, room 8
tail 8
chksum 0x5d
load 0x3ffe8890, len 136, room 0
tail 8
chksum 0xd8
csum 0xd8
另外,错误信息是: 对于 linux 上的 miniterm.py:
Exception in thread rx:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 754, in run
self.__target(*self.__args, **self.__kwargs)
File "/usr/bin/miniterm.py", line 403, in reader
data = self.serial.read(self.serial.in_waiting or 1)
File "/usr/lib/python2.7/dist-packages/serial/serialposix.py", line 495, in read
raise SerialException('device reports readiness to read but returned no data (device disconnected or multiple access on port?)')
SerialException: device reports readiness to read but returned no data (device disconnected or multiple access on port?)
Exception in thread tx:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 754, in run
self.__target(*self.__args, **self.__kwargs)
File "/usr/bin/miniterm.py", line 444, in writer
self.serial.write(self.tx_encoder.encode(text))
File "/usr/lib/python2.7/dist-packages/serial/serialposix.py", line 547, in write
raise SerialException('write failed: %s' % (v,))
SerialException: write failed: [Errno 5] Input/output error
对于 windows 上的 Putty,我似乎也在启动过程的同一阶段遇到错误。
注1:我刷新固件成功了,每次都刷到"verify OK",所以连接正常。
注2:当我在Normal Boot模式下使用模块时(GPIO15为低电平,GPIO0和GPIO2悬空),当EN(enable)pin为高电平(3.3v)时,PORT8 on windows and /dev/ttyUSB0 在 linux 上都消失了。此外,在与 putty 或 miniterm 进行任何类似通信时,我需要保持 EN 浮动以便系统看到模块,然后连接软件,然后将 EN 置于高电平(否则它会卡住)。
也尝试过使用 ESPlorer,但无法自动检测固件。我在几个固件上遇到了这个错误,我尝试了很多波特率。
问题出在 ESP8266 单元的电源上。我没有从 USB-to-UART 模块提供 3.6V,而是使用另一个提供 3.3V 的电压源,也可能提供更高的电流。 请注意,模块必须由 3.0V - 3.6V 供电,它可能会使用几百毫安,因此旧电源略高于 3.6V,可能无法提供所需的电流。