Modify the Linksys hardware

From Embedded Xinu
Revision as of 13:53, 5 March 2007 by Phinze (talk | contribs) (→‎Task Four: Mount the DB9 Connectors: draft of db9 mounting)
Jump to navigation Jump to search

Work in progress...

Parts List

Quantity Part Name Details Part / Model Number Price
1 LinkSys WRT54GL Router 802.11b/g wireless broadband router LinkSys WRT54GL ~$65.00
1 Ribbon cable 28 AWG, 10 conductor, 25' Jameco 643508CM $4.99
1 IDC socket connector 0.1”, 10 conductor Jameco 32491CM $0.25
1 IDC shrouded header 0.1”, 10 conductor Jameco 67811CM $0.33
1 RS232 Transmitter/Receiver IC 2DVR/2RCVR RS232 5V 20-DIP DigiKey MAX233CPP-ND $7.45
2 Two (2) DB9 Female 22AWG,SOLDER CUP Jameco 15771CM $0.59

Tools List

  • Soldering Iron
  • Dremel tool (for cutting holes in plastic case)

Steps

Task Zero: Install OpenWRT [Recommended]

While the purpose of this HOWTO is a hardware modification, the fruits of our labor will be in software functionality. In order to place a light at the end of this tunnel, it would be a good idea to install OpenWRT using the instructions provided on this wiki. OpenWRT by default runs a console on UART0, and so once the connection is made properly you need only to send an <enter> into the input and you will be provided with a root console on the router. It's a very satisfying way of confirming that you've done everything correctly.

Task One: Opening the Router

It's really very easy... almost too easy.

As others have done, I will defer to Void Main, who provides nice illustrated opening instructions.

DO NOTE: This is where the warranty on the router is voided! (But really, you know there's no real fun to be had unless a warranty gets voided somewhere.)

Task Two: Attaching the Serial Header

An overhead view to get your bearings. The serial header is (D) here.

Now that your PCB is naked, locate the serial header holes provided by LinkSys. This would be a grid of 10 holes (5x2) located on the bottom-right corner of the board when the antennae stubs are on top (see the top-down photo for clarification). These ten holes hold all of the input and output for the two serial interfaces--UART0, and UART1--on the device. (OpenWRT by default runs a console on UART0, so we have something to look forward to here!)

A closer look at our attached serial header.

Now, we could just solder wires right onto these holes, but a by placing a nice 10-pin header on the board we can easily attach and detach a 10 connection cable. This is where you will use your soldering iron solder the IDC shrouded header onto the board.

This will be the only soldering that you have to do on the LinkSys PCB. The rest of the work will be done wiring the MAX233A transceiver correctly and it just has to be plugged it into this header.

Task Three: Install wiring for MAX233A RS232 Transmitter/Receiver

Using information on the Wiring page, make the connections from the IDC shrouded header to the MAX233A RS232 Transmitter/Receiver chip. As you can see from the Build Pictures page, we did this with the ribbon cable from our parts list. The IDC socket connector goes on one end of the cable, and the correct connections are made to the RS232 Transmitter/Receiver on the other. Because we will be mounting our DB9 connectors to the front of the case, this will allow for easy disconnection and opening of the case. In terms of cable length, try and decide where you are going to mount the MAX233A on the outer case so you can estimate correctly. Do not wire up the Two (2) DB9 Female Connectors just yet, as it would be a better idea to mount them first.

Task Four: Mount and Connect the DB9 Connectors

This is the final version of the faceplate of our router, with the two external serial ports attached and ready to go.

Using your trusty dremel cut a few DB9 shaped holes in the plastic casing of the router. There are several options for placement; we chose the front so that multiple routers would still be stackable. The picture at right shows the placement of our connectors with wires attached. The fit is quite tight; you may wish to consider only installing one jack (you only need port 0 to communicate with the router,) or installing them horizontally instead of vertically.

Using either epoxy or mounting screws (I believe we used a combination of both, as one of our jacks could not fit a hole for a screw), secure the connectors to the case (soldering cups facing inside, just in case you were wondering). Then use the diagram provided to make the connections required with either chopped up portions of the ribbon cable or some other wire (which you can see that we did). Note that there are two connections per DB9 that need to be made between pins 4-6 and 7-8.