Issues using serial connection on WRT3200acm [Solved]

I have a Linksys WRT1900ac and a WRT3200acm. I have used a usb/ttl connection on the wrt1900ac dozens of times without issue. In fact i installed a fancy 3.5mm headphone jack on the back for quick access, which has proven most useful. However the WRT3200 I have had some issues with. It will connect when openwrt is running... meaning if i plug in the serial port, fire up gtkterm and press ENTER, i get the banner and a working tty. Problem is it will not work for uboot. I see nothing when it first boots, in fact, it seems to actually prevent the kernel from booting if the serial connector is plugged in when i power it on (based on the LEDs activity, or lack of). If i let the boot sequence complete however, then plug in my usb/ttl serial connector, it works. Does anyone know whats going on because if I ever brick the 3200 with a bad image then it will not do me much good if it does not work in uboot. I looked on the wiki page and did not see any special notes that are specific to the 3200 that do not apply to the 1900.

That is an annoying, but not rare behaviour of several embedded devices (keep in mind that these serial ports are not meant to be be end-user accessible). The problem here is that the tx pin of your usb2serial adapter (combined with common ground/ GND) leaks current into the SOC, partially powering up the SOC (but not enough for it to actually start up) and leaving it in an uninitialized state. While you can try different usb2serial adapters or fixing it on the electronics level (by adding resistors/ diodes as needed), the common/ lazy approach would be to only connect the tx pin a fraction of a second after applying power to the device (that's usually early enough to catch all early h/w init and bootloader messages); obviously this is slightly difficult to accomplish with an audio jack…


I imagine if a TTL adapter with pins + jumpers that are connected to the audio jack then individual jumper of the TX can do the trick.

Well it is working now, thanks for the input. It would not work until I flashed openwrt to the router via the web interface (a second time) . Maybe this is normal, but I figured since uboot is there from the factory it would still print out the boot process on the serial interface even with the original linksys firmware still installed. Or perhaps it had nothing to do with it and I changed some variable like the grounding issue mentioned unknowingly. Whatever it is, it works now, although I cannot say why.

1 Like

@thermochromic If your problem is solved, please consider marking this topic as [Solved]. (Click the pencil behind the topic...)

1 Like