No output on serial terminal with asus ac58u and ch341-uart usb serial dongle

Firstly, the hw that i got is ch341 from the linux dmesg logs, even though, the listing on the part site mentions its ch340!

[   86.991514] usb 3-1: new full-speed USB device number 4 using xhci_hcd
[   87.140410] usb 3-1: New USB device found, idVendor=1a86, idProduct=7523, bcdDevice= 2.64
[   87.140415] usb 3-1: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[   87.140417] usb 3-1: Product: USB Serial
[   87.223972] usbcore: registered new interface driver usbserial_generic
[   87.224099] usbserial: USB Serial support registered for generic
[   87.228493] usbcore: registered new interface driver ch341
[   87.228536] usbserial: USB Serial support registered for ch341-uart
[   87.229141] usb 3-1: ch341-uart converter now attached to ttyUSB0

You are right for '0' and '1' are the timeout counts. If i dont press any key, they still appear.

But definitely, i keep pressing '1' well before the menu appears in the video which i linked.
The usb dongle seems to sending the tx and receiving on rx properly, as when i short the rx and tx pins on the usb dongle, i get echoed what i type.

Q1- Can a rx-rx and tx-tx connection which i mistakenly did on first attempt might have caused the rx on the router to malfunction??

Q2- Is there any way i can check if the rx is functioning on the board properly? i have a multimeter.. if it can help.

Q3- Even if the shorting test passes for the USB dongle, do you think ordering a different usb dongle might help i.e an actual ch340? if so, can you suggest one from robu.in (this marketplace is what i have access to from my location)

Secondly, let me summarize you how i ended up in falling on the serial flashing way...

To begin with, i was following the Detailed guide link under easy installation method from the wiki:
1 used stock asus fw upgrade page to upload the stock2lede.trx.
2 connected LAN, and login to 192.168.1 root/root/r
3 tried to flash latest sysupgrade.bin file from the openwrt device page using the lede flash fw ui, but
got error: The uploaded image file does not contain a supported format error message.
4 so instead of sysupgrade.bin, used openwrt-r1834-0f04829-ipq806x-asus_rt-ac58u-squashfs-sysupgrade.tar.
5 now on reentrring the lede ui, now flash the latest sysupgrade.bin file from openwrt device page.
6 BOOM... i could not get to the router's 192.168.1.1 since..

So essentially, as per my bootlog i pasted in one of my previous post, i am actually on openwrt fw:
Description: ARM OpenWrt Linux-4.14.221
but somehow since i didnt do this step: Delete volume jffs2 with ubirmvol /dev/ubi0 -N jffs2
i might have ended in this state, where the router isint assigning ip address to LAN clients

Q4- BTW, i saw few routers supporting the asus recovery fw installation method where the router is put in some recovery mode and then using the asus fw restoration tool to get back to stock. Though, i couldnt find any one using this process on ac58u, just wanted to know if its possible or not for this device?

Thanks for the response!

K, so ch341-uart. Google found this blog-post warning for a CH341A? (No idea, if this is the same as CH341) :

Could you check the voltages levels between the ground-pins and the RX+TX of your UART-Adaptor in the same fashion as that guy did it?

Because, yea that IPQ4018 is (I think) a 40nm CMOS-ish-chip. 5V can do some harm, but not necessarily instantly. https://learn.sparkfun.com/tutorials/logic-levels/all has a nice expose of what this is about.

As for recommendations what usb-dongles to get. Sorry, I don't think I can give you great advice there. The save(ish) route would be to get a dongle for specifically a RPi or one of many ARM clones... But if your routers UART-RX is blown then I don't think a new dongle can help with that. :cry:

That ubirmvol would give you more space on the flash to play with. But leaving it alone is "fine". The original ASUS "kernel"/linux1 image is like 18/20 MiB. This is easily enough for a full kernel+rootfs+overlay to fit in there.

What you could do, is trying to reset the likely config mismatch between the old and new images.
This can be done by pushing the reset pin for 10 seconds after OpenWrt booted (that status LED is no longer blinking and stays solid). You'll get a message on the serial too... and the router reboots.... and when it has completed booting up, you should get ssh on 192.168.1.1.

Thanks for the reply...

I checked the voltages, i get:
GND->RX is 3.78v
GND->TX is 3.82v

Q- Does small voltage this difference from ideal 3.3v create issues??
i get GND->5v pin as 5.21v
i have correctly shunted the 3.3v pin and the vcc pin on the dongle.

Secondly, i tried the reset button, but on reboot, it does not make any difference.

Thirdly, the CH341A chip also available on robu.in is significantly different from my dongle. though i am just going by the physical appearance of both device..

uhhh, CMOS-chips really don't like voltages over 3.3 V. Let's hope the port isn't dead. The IPQ40XX specs says 3.6V is the "Max" for High-level on IO-Ports (V_IH).

I'm somewhat familiar with CH341A as well. But not as an UART and instead as a in-circut SPI/EEPROM programmer. The same you linked to.

Hi, here is a similar issue I had on the AC58U, and how I solved it: https://forum.openwrt.org/t/another-install-on-asus-rt-ac58u/
An oscilloscope would be needed to check if this is also the issue here, and some soldering tools to apply the fix.

1 Like

Hello @kent_c thanks for your efforts to solve my case!
Though this looks too technical, and actually very involved since it removes a resistor, i would not have tried it even if i could not have solved this issue! But i did managed to solve my issue by changing to a different serial dongle.

So, in essence, somehow the dongle in my first post either is not functional, or the router does not support it. As soon as i switched to the other dongle, i could enter the uboot menu, and uploaded the fw through tftp, and my router is back to life!

Thanks @chunkeey @frollic @anon50098793 (for the dongle link on a different thread)
for all the help and suggestions.

2 Likes

thanks for the update...

connecting uart can be daunting even for those of us who have done it a few times... often there is some device peculiarity (specificness)...

and user head clarity is required for more than 7+ baby steps in the puzzle... i've;

  • fried stuff... (sloppy wiring / labelling or incorrect voltages)
  • re-installed my os and lost terminal speed defaults...
  • used incorrect LF/CR/HWFLOW terminal settings
  • used and arduino and pins can may swapped depending on how your using it
  • wire faults
  • pin soldering faults

the list goes on... amazingly simple when you get it right... but alot of places to go wrong...

2 Likes

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.