Here are my notes from my serial project for the WRT54g.
This isn't pretty or necessarily well designed. You can find plans for those elsewhere.
It's my quick and dirty, hurry up and get it done already using stuff lying around method:
I installed a pin header for the serial port using the pins below.
The missing pins make good polarity (I had to leave out pin 10 also as
the IDC connector was already filled for that hole).
I read in others experience to stick something in the hole
of the idc connector for pins 7&8 to make sure it doesn't get
put in backwards. Excellent idea.
My WRT54G v2.2 serial port pinout:
2 4 6 8 10
+-----------+
| o o o - o |
| o o o - o |
+-----------+
1 3 5 7 9
Pins 1,2 = 3.3v
Pins 3,4 = TX (ttyS1,ttyS0)
Pins 5,6 = RX (ttyS1,ttyS0)
Pins 7,8 = NC
Pins 9,10 = GND
I took two male DB9 connectors I salvaged from a 486 machine
that terminate as 10 pin idc connectors (with pin 10 blocked).
(They were to connect the serial ports from the mobo to the case).
I cut off the IDC connectors, discarded one and soldered the wires
of the other directly to the breadboard to form the connection
between the WRT and the breadboard.
The breadboard was a corner of a piece of copper clad perf-board from Radio Shack.
Next, I soldered on the DB9 connectors using only 3 wires each,
making sure that I pinned out the ribbon cable to the DB9 connector pins!
I used a stock TI MAX232N from digikey.com for 78 cents plus 5
electrolytic 1uf caps for the basic level shifter.
The chip normally does 5Volts for +/-8v RS232 levels.
With a 3.3V supply, it still worked for me and my PC (terminal)
I measured (+4.81, -5.76v levels for rs232)
Schematic: (Observe polarity of caps)
WRT pins 1/2 ---------> ^ +3.3v 1uf
+--------------+||------------- to GND
|16
--------------
| |
WRT pin 6 <--- 9 | from rs232 | 8 <--- rs232 DB9(a) pin 2
| (ttyS0) |
WRT pin 4 --> 10 | to rs232 | 7 --> rs232 DB9(a) pin 3
.......... | ......... |...........
WRT pin 5 <-- 12 | from rs232 | 13 <-- rs232 DB9(b) pin 2
| (ttyS1) |
WRT pin 3 --> 11 | to rs232 | 14 --> rs232 DB9(b) pin 3
| |
+-------- 5 | max232 |
| 1uf | |
+---||+-- 4 | <-charge |
| pump | 1uf
+-------- 3 | <-caps | 6 ----||+--- to GND
| 1uf | --> | 1uf
+--+||--- 1 | | 2 ---+||---- to GND
| 15 |
--------------
|
WRT pins 9/10 ---------+------------- connect to pin 5 on
| both DB9(a) and DB9(b) serial connectors
-----
---
-
After putting everything on the breadboard, I enclosed it in
discarded plasic packaging to avoid shorts and located it in the box,
bringing the two DB9's out via a dremmeled slit between the
top cover and the front blue piece.
I needed a male to male converter AND a null modem cable to
communicate with the PC.
I set communcations to 115200,N,8,1 with NO Flow Control,
connected DB9(a) and was treated to WRT kernel messages
at bootup.
YMMV. Try this only at your own risk.
Disclaimer: Don't blame me for anything that results from your own experience,
for instance, if your router smokes, or if your house burns down, or if the shiny new computer you hook this up to frys!
Comments, questions, success or horror stories welcomed.
Good Luck!
Robert