D-Link DIR-400 rev A1

Specs
Platform Serial Num. = ? FCC ID = KA2DIR400A1 Industry Canada ID = 4216A-IR400 CPU Type = Atheros AR2318 MIPS Rev = ? CPU Speed = 182MHz Bus = ? Flash Type = ? Flash Chip = Spansion FL032AIF Flash Size = 4 MB Max Firmware Size = ? RAM Size = 16 MB RAM Chip = ESMT M12L128168A nvram Size = ? ETH chip1 = Atheros AR2318 Switch = Marvell 88E6060 Port-based vlan = ? 802.1q vlan = ? Ethernet Port Count = 1-10/100-WAN 4-10/100-LAN Wired Standard = IEEE 802.3/3u Ethernet interface OUI = none specified boot_wait = ? bootloader = ? Flash Card Socket/Type = ? SD/MMC Mod Support = ? Expansion IF types = ? PoE = ? Power = 5VDC/2.5A Connector type/size = Barrel plug LEDs/Color = ? Size = ? USB = ? Serial Port = Yes JTAG Port = Yes Supported by TJTAG/Version = ? Supported by dd-wrt as of = v24 rc7 - build 9120 dd-wrt K2.4 Support = Yes dd-wrt K2.6 Support = No Special Features = ? Radio (ath0) Wireless Radio = Atheros AR2318 WLAN DSP processor = Atheros AR2318 Wireless interface OUI = none specified Antenna Connector Type = RP-SMA MIMO status = ? Wireless Standard = IEEE 802.11b/g 802.11g = 6, 9, 12, 18, 24, 36, 48, 54 Mbps 802.11b = 1, 2, 5.5, 11 Mbps WiFi Operating Frequency = 2.4 GHz Radio cor_rev = ? Radio Capabilities = ? Other Default SSID: dlink Default IP address: 192.168.0.1 Default login user: admin Default login password: blank OEM = ? 3rd Party Firmware Support = ?

Flashing DD-WRT
In order to flash your router you need to do the following steps:
 * Download TFTPserver, it can be downloaded from here
 * Download firmware from here
 * Download Putty client or you can use any telnet clients(try to stay away from Windows built in telnet)
 * Change your local IP adress to a static 192.168.0.2 and subnet mask to 255.255.255.0
 * Connect an ethernet cable between your computer and DIR-400's WAN port
 * Prepare Putty telnet session—192.168.0.1 port 9000
 * Start pinging your router throught a command line. Type ping 192.168.0.1 -n 900 (You don't really need to ping that many times)
 * Power DIR-400 router on and wait for 2nd successful ping and then initiate putty telnet session.
 * Press CTRL-C as soon as you see that boot script is executing (if you are using Putty ver. 0.60 or newer then you don't have to worry about this)
 * Start TFTP server with linux.bin in TFTP root directory

If you did everything right then you should see the following on the window of putty:

== Executing boot script in 1.140 seconds - enter ^C to abort ^C RedBoot>

Type ip_address -l 192.168.0.1/24 -h 192.168.0.2 and press Enter

You should see the following:

RedBoot> ip_address -l 192.168.0.1/24 -h 192.168.0.2 IP: 192.168.0.1/255.255.255.0, Gateway: 0.0.0.0 Default server: 192.168.0.2

Type fis init and then RedBoot> fis init About to initialize [format] FLASH image system - continue (y/n)? Type y and press Enter. Wait until the process is complete: About to initialize [format] FLASH image system - continue (y/n)? y *** Initialize FLASH Image System And a descriptor for the configuration data size = 10000 ... Erase from 0xbffe0000-0xbfff0000:. ... Program from 0x80ff0000-0x81000000 at 0xbffe0000:. Type load -r -b 0x80041000 linux.bin and press Enter RedBoot> load -r -b 0x80041000 linux.bin Using default protocol (TFTP) Raw file loaded 0x80041000-0x803bafff, assumed entry at 0x80041000 Type fis create linux and press Enter (this one will take a while. DO NOT UNPLUG YOUR ROUTER) RedBoot> fis create linux ... Erase from 0xbfc40000-0xbffba000: ........................................................ ... Program from 0x80041000-0x803bb000 at 0xbfc40000: ........................................................ prog_ok flash_addr = 0xbfc40000 mem_addr = 0x80041000 entry_addr = 0x80041000 length = 0x37a000 img_size = 0x37a000 ... Erase from 0xbffe0000-0xbfff0000:. ... Program from 0x80ff0000-0x81000000 at 0xbffe0000:. Type fconfig and press Enter RedBoot> fconfig Run script at boot: true Press Enter

Run script at boot: true Boot script: .. fis load -l linux .. exec Enter script, terminate with empty line

Type fis load -l linux and press Enter >> fis load -l linux type exec and press Enter >> exec just press Enter >> Boot script timeout (1000ms resolution): 2 press Enter Use BOOTP for network configuration: false press Enter Gateway IP address: press Enter Local IP address: 192.168.0.1 press Enter Local IP address mask: 255.255.255.0 press Enter Default server IP address: 192.168.0.100 press Enter Console baud rate: 9600 press Enter GDB connection port: 9000 press Enter Force console for special debug messages: false press Enter Network debug at boot time: false press Enter Update RedBoot non-volatile configuration - continue (y/n)? type y and press Enter Update RedBoot non-volatile configuration - continue (y/n)? y ... Erase from 0xbffe0000-0xbfff0000:. ... Program from 0x80ff0000-0x81000000 at 0xbffe0000:. Type reset and press Enter RedBoot> reset
 * Re-connect an ethernet cable between your computer and DIR-400’s LAN port
 * Change your local IP adress to a static 192.168.1.2 and subnet mask to 255.255.255.0

Your router will be accessible at http://192.168.1.1

Pictures
FCCID KA2DIR400A1