Problem with boot mode on T-Deck
bryanlyon opened this issue ยท 17 comments
I have 3 t-decks. Unfortunately one of them corrupted during a download, since then I have been unable to get it to take an new firmware.
I can (sometimes) get it to boot into the rom bootloader mode by holding down the trackball while resetting, however, once I try to use the esptool it finds the com port, but times out in writing.
esptool.py v4.5.1
Serial port /dev/ttyACM0
Connecting....
A serial exception error occurred: Write timeout
I have tried this also on other computers with identical results. I've also tried putting my working T-decks into bootloader mode and while I can get them to bootloader mode the results are identical to my failed T-Deck.
The good ones will still take updated firmware while running normally, but the failed T-Deck will not, as it continually resets the USB connection.
With trace enabled in esptool I get the following:
esptool.py v4.6.2
Serial port /dev/ttyACM0
Connecting...TRACE +0.000 command op=0x08 data len=36 wait_response=1 timeout=0.100 data=
0707122055555555 5555555555555555 | ... UUUUUUUUUUUU
5555555555555555 5555555555555555 | UUUUUUUUUUUUUUUU
55555555 | UUUU
TRACE +0.000 Write 46 bytes:
c000082400000000 0007071220555555 | ...$........ UUU
5555555555555555 5555555555555555 | UUUUUUUUUUUUUUUU
5555555555555555 5555555555c0 | UUUUUUUUUUUUU.
A serial exception error occurred: Write timeout
I've tried forcing the chip with --chip esp32s3 (and esp32) as well as various baud rates. Everything I try fails with the write timeout.
Connection is successful and I get data from the chip when I do:
[Fri Jul 21 10:05:03 2023] usb 1-2.4: new full-speed USB device number 95 using xhci_hcd
[Fri Jul 21 10:05:03 2023] usb 1-2.4: New USB device found, idVendor=303a, idProduct=1001, bcdDevice= 1.01
[Fri Jul 21 10:05:03 2023] usb 1-2.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[Fri Jul 21 10:05:03 2023] usb 1-2.4: Product: USB JTAG/serial debug unit
[Fri Jul 21 10:05:03 2023] usb 1-2.4: Manufacturer: Espressif
[Fri Jul 21 10:05:03 2023] usb 1-2.4: SerialNumber: 34:85:18:A6:34:44
[Fri Jul 21 10:05:03 2023] cdc_acm 1-2.4:1.0: ttyACM0: USB ACM device
But any attempt to write or to erase the flash fails with a write timeout.
This is reproducable on all 3 of my T-Decks when in bootloader mode (and on multiple computers), but like I said, 2 of them can get flashed normally in the non-bootloader mode.
I have the same issues. erase_flash works fine on T-HMI and on T-Display-S3 but the T-Desk either times out (non bootloader mode) or stalls (bootloader mode by pressing the trackball-button). I also tried it under Windows 11 and on MacOS.
I only once was able to install Micropython .. probably this bricked my T-Desk.
Try this method!
https://github.com/Xinyuan-LilyGO/T-Deck/tree/master/firmware
Unfortunately the linked instructions are the ones I've already followed and does not make bootloader mode work on the T-deck. I am still unable to flash when the T-Deck is in bootloader mode on any of my devices.
Please take a photo of the PCB on ESP32S3 and show it to me.
Hello, I tried all kinds of setting on the Windows Flasher, but I always see the same behaviour:
If not in bootloader-mode (on COM5): it just runs forever
test offset : 0 0x0
case ok
.................................................................................................................................................................................
if in bootload-mode (COM4 or COM7): it waits some seconds and returns with a message box saying:
2-sync fail:
Tips: Please refer to the chip dataset and confirm that strapping pin's status is correct.
KInd regards
Bernd
Thanks!
Removing D2 worked perfectly fine for me! Uploading new firmware is no longer a problem.
Kind regards
Bernd
I just received two T-Decks with the D2 jumper. Should they be removed in all cases? Kindly explain before I have the same problem.
Can confirm. i was having the same problem and removing D2 fixed it.
Had the very same problem.
Removing D2 works to use simple commands like chip_id.
However, I had to upgrade to esptool.py v4.7-dev (direct from the github repo) to get erase_flash etc. working.
Wow, talk about fast fix to the production line: I just received two T-Decks ordered 2 weeks ago and notice D2 is not installed on either. I don't see any version info on the PCB though, is there any way to tell the difference?
Ok So I got a boot load problem and I did figure it out. The ESP32-S3 need to have GPIO0 and GPIO46 to 0 to go into the boot load mode but the ESP32-C3 int is connected to the GPIO46 and disturb the very high resistor pull down value.
So shorting the GPIO46 and the same time that I press the GPIO0 button , then press the reset and release both GPIO0 and GPIO46 does the trick. This tooks me 2 evenings to figure out why the T DecK didnt want to go to boot load. I
m sure I`m not the only one with this problem.
Name of God thank you for this answer I've been looking for a solution for 3 days
THANK YOU THANK YOU, fixed my issue uploading code. removing D2.
This issue is stale because it has been open for 30 days with no activity.