User Tools

Site Tools


D-Link DSL-504T

This page only refers to generation II devices (marked revision C on the back).

Supported Versions

Version/Model Launch Date S/N OpenWrt Version Supported Model Specific Notes
C3 10.03.1 Use ar7 generic

NOTE: On trunk builds (and Attitude Adjustment at the moment), the default network configuration won't work (see to see if it has been fixed). To get it to work, you must build an image manually and modify target/linux/ar7/base-files/etc/config/network. Change the line:

option ifname	"eth0 eth1 eth0.1 eth0.2"


option ifname	"eth0"

I did find that changing things in Luci was very slow with Attitude Adjustment and possibly unstable (router seemed to hang after changing things) so I tried with the 3.6.11 Kernel and zram and, so far, I haven't had any problems. This was on trunk revision 36367.

UPDATE: Unfortunately, I have found it to be a bit unreliable. I think that this device is probably too slow and doesn't have enough memory to work well with later kernels so I recommend sticking with 10.03.1.

Hardware Highlights

CPU Ram Flash Network USB Serial JTag
TI AR7 (TNETD7200) 16MiB 4MiB 4 x 1 + ADSL2/2+ No Yes Yes but not tested


D-Link DSL-5xxT and DSL-G6xxT - ADAM2 Installation Guide

My router had PSPBoot1.3 and was configured with an IP address of

For the following, I had to hack the ftp client (OS X) I was using so that it handled QUOTE commands as I want (missing line feeds). It’s probably easier to telnet to the device. The ftp client that comes with Linux might not have the same problem.

1. Power on the router.

2. Type "ftp" after about a second. Wait and it should connect. I found it pretty easy to connect. User "adam2" password "adam2".

3. Use the SETENV commands to change flash layout (see dsl-524t). Knowing what I know now, I think the only one that matters is the start and size of mtd1 since that is what PSPBoot uses to boot. I had to change it to start at 0x90020000. The size of mtd1 just has to be big enough to fit your image. See flash layout below. Don't blindly follow these instructions if it looks like your boot and config partitions are in a different place.

4. To put firmware on your router, in ftp type:

 quote "MEDIA FLSH"
 put <path-to-firmware> "x mtd1"

5. Wait a few seconds after it has finished (important if you doing the above as part of a script) and then:

 quote "REBOOT"

Flash Layout

This is in PSPBoot, after changing things. As I said above, the only one that is important is the start of mtd1 and the size has to be sufficient to put your image in it.

 mtd0            0x900b1000,0x903e0000
 mtd1            0x90020000,0x903e0000
 mtd2            0x90000000,0x90010000       # Boot
 mtd3            0x90010000,0x90020000       # Config
 mtd4            0x90020000,0x903e0000

In OpenWrt (note that the names do not match up):

 dev:    size   erasesize  name
 mtd0: 00010000 00002000 "loader"
 mtd1: 00010000 00010000 "config"
 mtd2: 003e0000 00010000 "linux"
 mtd3: 002e4f6b 00010000 "rootfs"
 mtd4: 00120000 00010000 "rootfs_data"



Architecture: MIPS
Vendor: D-Link
Bootloader: PSPBoot
System-On-Chip: TI AR7
CPU/Speed 211 MHz
Flash size: 4 MiB
RAM: 16 MiB
Ethernet: RealTek RTL8306N
Internet: ADSL2+ /(3g/LTE over USB port)
Serial: Yes - tested working over TTL converter
JTAG: Yes - not tested


Seems to be the same as the DSL-524t.

See Also

The DSL-524t appears to be similar.


toh/d-link/dsl-504t.txt · Last modified: 2013/06/27 12:10 (external edit)