I originally bought a WRT54GL but found this D-Link router to be cheaper and more powerfull – however without the knowledge if there would be a serial port to talk to my microprocessors. I quickly installed DD-WRT without any troubles and then opened the case with the two screws under the small plastic protectors at the bottom. I couldn’t find any visible serial port at first, but just before I gave up, I found a small rectangle marked JP1. After measuring, I could quickly find VCC and GND. RX and TX was a bit more tweaky. I removed the ATmega chip from my Arduino and connected it reverse to the different pins during the routers boot (so Arduino TX -> Router TX for use as a usb2serial converter, see the Arduino schematics for details). So I found that the port was called /dev/tts/1 and the TX pin was the one most to the back. RX was obviously the last, but to be sure I programmed my ATmega chip to send a “Hello World\n” every second, connected the Arduino correct (TX -> RX) and got response via SSH to the router using:
cat < /dev/tts/1
Sending commands could be done with:
echo “Hello World!” > /dev/tts/1
The serial port runs at 57600 baud, 8 bits. Voltage levels are +3.3V TTL logic, which means TX transmit at 3.3V and VCC is 3.3V. RX has a pull-up resistor. To help any hackers with DIR-615 D3′s out there, I have updated the DD-WRT wiki.