Accessing the Serial Port on TL-WR703N without Solder

I've posted on the TL-WR703N about dumping and flashing firmware. However, to perform such a task, you have to be able to open up the case and get at the router board. If you're going to flash, you also need to set up a serial connection. Since I'm working on another post that involves flashing the TL-WR703N, I figured I would make a dedicated post about opening the case and setting up the serial connection. I'm working from a Linux environment, but the only software I'll be referencing in this post is PuTTY, which is available for Linux and Windows. Sorry Apple folks, you'll have to figure something else out.

Check List

Here's what you'll need to get going:
  • A TL-WR703N router (Any version -- I have 1.7)
  • A male USB to male USB micro cable to power the router (like you would use to charge a cell phone)
  • Some guitar picks (I'm using a 0.71mm and a .81mm guitar pick)
  • A couple of alligator clips (on the smaller side)
  • Some jumper wires
  • Some electrical tape
  • A USB to serial adapter (I'm using a PL-2303HX device)
  • A computer running PuTTY or other software capable of talking serial
  • An extra measure of patience

Opening the Case 

The case on this router is made of two parts. The blue piece that constitutes the top and the white piece which makes of the rest of the housing. There are no screws holding anything together. It all simply snaps into place with three plastic clasps circled in the image below. Note the numbering. This represents the order in which I release each of these. This thing is such a pain to take apart that  that I ended up connecting an old audio jack to my serial port and putting a hole in the back side of the case for easy access. I won't cover that process here, but if you're handy with a soldering iron, it shouldn't be too hard to figure out.


  1. Take the 0.81mm pick and cut it down to size as shown in the picture. Maybe it's just my imagination, but I think I have an easier time when the bottom end of the cut pick goes at an angle. Jam the thinner pick between the top and side right at the USB port. I find it's easier to wedge a thinner pick in the side first so that there is a crack to shove the thicker pick into.
  2. Wedge the thicker (yellow) pick that has been cut down into the crack and slide it along to where the first snap is.
  3.  Force the pick down in between the two pieces that make up the housing. It's not easy, and may take a lot of trial and error! You'll feel it go down in when it's between the two pieces. I use the thicker pick here because it doesn't bend and break as easily. Once you have it down in, use the white pick again to pry upward on the top while pulling the yellow pick back in the outward direction. The top should lift a little bit, and you'll be able to slide your thinner pick horizontally between the top and the side. Yours probably won't raise as much as mine did in the picture below because I removed the second clasp from the top piece on my router.
  4. Now keep the white pick horizontal and slide the yellow pick around to the second clasp and repeat the same thing you did for the first one. Unfortunately I can't depict this well because I modified my case already to ensure that the second clasp doesn't catch any more. Imagine, in the image below, that the yellow pick is standing upright and being pushed straight down where you see it located..
  5. Finally slide the white pick further around to the side that was just released, and slide the yellow pick around to the third clasp, shoving it down in to release the final clasp. Once done, the top should lift off pretty easily.
That's it for opening up this little guy, now let's get connected to the serial interface.

Setting up a serial connection

As I've already mentioned, there's more than one way to go about this. You can solder onto the pads available on the board. Alternatively, you could modify the case. I modified the case on a router that died. I put a hole in the top above the serial pads. Then I put two needles down through the hole so that they were sitting on top of the pads. I then used some hot glue to fix them in place. Now I can drop any board in that case, put the top back on (from which I removed all the snap fits) and use some alligator clips to connect to the needles for easy access.

To keep it simple, I'm going to do something a little different and demonstrate using alligator clips to connect directly to the router board itself.

  1. Find the serial pads on the top side of the router
  2. Cut off a square of electrical tape and cut a notch out as wide as the pads. This you'll wrap around the board to prevent shorts. The bit you cut out gets turned length-wise to cover any contacts above the serial pads. Make sure that none of the board is exposed on the underside where the pads are since you're going to clip on with alligator clips.
  3. Get a trusty USB to serial adapter. Hook up two jumper wires. I'm using a white and a yellow. With the white wire connected to the TXD (transmit) pin and the yellow wire connected to the RXD (receive) pin.
  4. Put alligator clips on the other ends of these wires. Connect TP_OUT on the router (see image in step 1) to RXD on the serial adapter, and connect TP_IN on the router to TXD on the serial adapter. The colors of the alligator clips below match the wires I used in the previous step.
  5. Plug the USB serial adapter into the computer you'll be running PuTTY on. If you need to install drivers, do so. I'm running Ubuntu, and there was no need for driver installation. Since this is the only USB TTY device I have connected, the device path is /dev/ttyUSB0 (if you have more than one USB TTY device, the path will be /dev/ttyUSB# where # is a numeral). In Windows, you'll have to poke around the device manager to find out what COM# to use.
  6. In Ubuntu you will need read/write permissions on the USB serial adapter. Run sudo chmod o+rw /dev/ttyUSB#, replacing # with the correct number for your device. If you're using Windows, I think you can skip this step.
  7. Now, open PuTTY on your computer. Change the connection type to Serial, enter the path to your serial device (COM# if you're on Windows), and change the Speed (baud rate) to 115200. Then click the Open button. You should see a black window open.
  8. Now, take the micro USB cable and plug one end into the computer running PuTTY and the other end into the router. I'm using the same computer so that I don't have to connect ground on the USB serial adapter to ground on the router (because it gets connected automatically via the power cable). At this point, the text should start flying up the screen.
  9. If you don't see text flying up the PuTTY window, or if you can't type in the PuTTY window, then one or both of your alligator clips is probably not making good contact on the router board. Try working with just the yellow clip first if this is working, you should be able to see text in the PuTTY window that was sent by the router. If you've had the router connected for more than about 30 seconds, it may stop sending text because it has finished booting. Just reboot to get the text scrolling again. When you have the yellow alligator clip in place try adjusting the white one. If the white clip is not properly seated, you won't be able to see text that you type in the PuTTY window. When it is properly seated and the router is running, you should see text appear as you type in the PuTTY window. Make sure the two alligator clips don't touch, or you'll see the text you type because you've shorted the circuit.
  10. Once you have the clips in place properly, reboot the router. There is a short, 1-second pause at the beginning of boot. Type tpl as quickly as you can. If you do this correctly, the router will drop to a hornet>  prompt.
If you made it this far, congratulations! You're ready to dump or flash firmware on your TL-WR703N router! 

Comments

Popular posts from this blog

Encrypted Ubuntu Installation with "Manual" Partitioning

Router Firmware -- Dumping and Flashing

Flashing TL-WR703N firmware directly to the flash chip