Looking Under Hood : DI-604 Residential Broadband Router

Hardware Information

Vendor: Dlink
Device name: DI-604 - 4-port Ethernet Broadband Router (Revision comparison)
FCC ID : ???
OEM vendor: Global Sun Technology (Taiwan)
OEM name/PCB:GLWRT-4GO Ver : V 1.0
The DI-604 has an integrated 4-port switch with 10/100 Ethernet ports for directly connecting up to four computers. Build-in software supports Network Address Translation, simple firewaling and convinient web-based configuration interface. IPSEC or any other VPN and encription functionality is not implemented.

Internals Photo:

DI-604 PCB top view
DI-604 PCB Bottom view

Internal Components

CPU ARM7TDMI based (no-mmu)
CX84200 by Conexant (ADM5106 by ADMtek)
The ADM5106 SoC have and ARM7TDMI core integrated with seven-port switch engine, five-port physical layer (PHY), two UARTs, USB.
Flash memory MX 29LV800BTC-90 (by AMD ?? Macronix??)
3 Volt Fast Boot Block Flash Memory (512Kbit x 16)
Total : 1 Mbyte
Macronix Specification
AMD Specification
SDRAM memory Winbond W986432DH-6
512k x 4 banks x 32 bits SDRAM
Total: 8 Mbyte
PLD Lattice isp2032VE programmable logic


J1 : a standard 14-pin ARM7TDMI JTAG connector
1 vddh ( positive 3.3) 2 vss (ground)
3 nTRST 4 vss (ground)
5 TDI (pin 161) 6 vss (ground)
7 TMS (pin 164) 8 vss (ground)
9 TCK (pin 165) 10 vss (ground)
11 TDO (pin 162) 12 nRESET ( not implemented ??)
13 vddh (positive 3.3) 14 vss (ground)

J2 is a RESET jumper shorting it will issue reset signal.
Pin 1 -> CPU pin 21 (GPIO[5]) -> R10 -> J1 pin 2 (nTRST)
Pin 2 -> GND ( Vss)

JP1 : a 8-pin PLD programming connector
1 vddh (positive 3.3v)
2 SDO/IN1 (pin 24)
3 SDI/IN2 (pin 14)
4 nISPEN (pin 13)
5 --------
6 MODE (pin 36)
7 vss (ground)
8 SCLK (pin 33)

Software Information

Original Firmware

Firmware upgrade is available from Dlink website
Latest Firmware version is 2.10
Firmware packaged using ARJ compression and could be downloaded using web interface or TFTP protocol (not yet tested).
Decompress version is available here. Decompressed size is 1.1Mb
Firmware is based on ThreadX OS.
Copyright string and version:
"Copyright (c) 1996-2000 Express Logic Inc. * ThreadX ARM7/Green Hills Version G3.0f.3.0c *"

Procedure to restore original firmware

Reverse Engineering

Registers memory map.
Flash details (bootloader, initialisation and so on)

Open Questions

Click here....

$Id: index.html,v 1.4 2004/03/14 11:07:16 bcabral Exp $