I have a ESP8266MOD ESP-12-E hooked up to a USB-to-UART module. When I try to communicate with the module I get some intelligible output then an error message and the communication is closed.
For ai-thinker-0.9.5.2-115200 and espressif-nonos-2.0.0-SDK (this is not the actual name of the file):
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
For a nodeMCU firmware built today (see the date) using their cloud service I get a somewhat shorter message:
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
Also, the error messages are: For miniterm.py on linux:
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
For Putty on windows I also get an error at the same stage in the booting process, it seems.
Note 1: I have managed to successfully flash new firmware and I got “verify OK” every time, so the connection is good.
Note 2: When I use the module in the Normal Boot mode (GPIO15 low, GPIO0 and GPIO2 floating), when the EN (enable) pin is high (3.3v), PORT8 on windows and /dev/ttyUSB0 on linux both dissapear. Also when communicating with putty or miniterm on anything similar, I need to keep EN floating so the system sees the module, then connect with the software and then put EN on high (otherwise it gets stuck).
Also tried to use ESPlorer but it was unable to auto-detect the firmware. I’ve got that error on several firmwares and I tried many baud rates.
Advertisement
Answer
The problem was with the power supply for the ESP8266 unit. Instead of supplying 3.6V from the USB-to-UART module, i used another voltage source providing 3.3V, possibly higher current also. Note that the module must be supplied with 3.0V – 3.6V and it may use a few hundred milliamps, so the old supply was a little bit over 3.6V and it might have not been able to provide the required current.