espressif / esptool-js

Javascript implementation of flasher tool for Espressif chips, running in web browser using WebSerial.
https://espressif.github.io/esptool-js/
Apache License 2.0
286 stars 108 forks source link

esp32s3固件烧录失败 Error:Timeout #159

Open TMOW opened 4 days ago

TMOW commented 4 days ago

Checklist

How often does this bug occurs?

often

Expected behavior

串口通讯正常,固件烧录曾经是正常的

Actual behavior (suspected bug)

两周前测试可以正常烧录固件,今天测试时发现无法烧录,但是错误提示不全,只有Error:Timeout node的插件版本:"esptool-js": "^0.4.5"

Error logs or terminal output

esptool.js
Serial port WebSerial VendorID 0x303a ProductID 0x1001
Connecting....
Detecting chip type... ESP32-S3
Chip is ESP32-S3
Features: Wi-Fi,BLE,Embedded PSRAM 2MB (AP_3v3)
Crystal is 40MHz
MAC: 7c:df:a1:f2:0a:d8
Uploading stub...
Running stub...
Stub running...
Warning: Image file at 0x0 doesn't look like an image file, so not changing any flash settings.
Compressed 1967200 bytes to 1287022...
Error: Timeout

Steps to reproduce the behavior

只需要烧录就可以复现

Project release version

node插件版本0.4.5

System architecture

Intel/AMD 64-bit (modern PC, older Mac)

Operating system

Windows

Operating system version

win10

Shell

CMD

Additional context

No response

brianignacio5 commented 3 days ago

Could you try enabling tracing and share the trace output here ? tracing is enabled using the transport class second argument as shown here: https://github.com/espressif/esptool-js/blob/main/examples/typescript/src/index.ts#L89

Example to get trace in here: https://github.com/espressif/esptool-js/blob/main/examples/typescript/src/index.ts#L125

TMOW commented 13 hours ago

我做了进一步测试,如果板子当前的固件是从0x0地址开始烧录的,那么在下一次烧录固件时,会卡在切换波特率这里,我做了bug排查,是在esploader.ts文件的1224行代码:const resp = await this.command(this.ESP_CHANGE_BAUDRATE, pkt);https://github.com/espressif/esptool-js/blob/f699520/src/esploader.ts#L1224 我在这个页面捕获到了详细错误 https://espressif.github.io/esptool-js/ 是用一块esp32s3在从0x0地址烧录成功后,第二次烧录任意地址时会出现的报错信息如下: 3d795c07253ffaeb34489e02ed05adc

esptool.js
Serial port WebSerial VendorID 0x303a ProductID 0x1001
Connecting...Debug: _connect_attempt default_reset false
Debug: Timeout
Debug: Sync
Debug: Sync err Error: Timeout
.Debug: Sync
Debug: 538052359

Debug: Chip Magic 9
Detecting chip type... ESP32-S3
Chip is ESP32-S3
Features: Wi-Fi,BLE,Embedded PSRAM 8MB (AP_3v3)
Crystal is 40MHz
MAC: 7c:df:a1:e1:a5:9c
Debug: In _post_connect 4
Uploading stub...
Debug: mem_begin 5076 1 6144 40378000
Debug: check_command enter RAM download mode
Debug: check_command write to target RAM
Debug: mem_begin 252 1 6144 3fcb2bf4
Debug: check_command enter RAM download mode
Debug: check_command write to target RAM
Running stub...
Debug: check_command leave RAM download mode
Stub running...
Changing baudrate to 921600
Error: Timeout