From DD-WRT Wiki

Revision as of 18:34, 5 March 2009 by Redhawk0 (Talk | contribs)
Jump to: navigation, search

Installing DD-WRT on a router in most cases is almost as simple as installing a program onto your computer. Installing programs on a router, known as firmware, are achieved by a method called flashing. This article helps you determine which installation process is for you on your supported router, as well as giving router suggestions and information about flashing each one.


Is your router supported?

For a list of devices working with DD-WRT, please see Supported Devices.


First before loading any firmware to your the Broadcom Forum Sticky entitled Peacock Thread It contains more information than just for those that having problems. Start there...Do some research...then ask questions. Don't just load V24-Final or the first couple of posts to find out why.

Downloading DD-WRT

  • Download the latest stable release from the DD-WRT Downloads page (or secure version).
    • Some newer routers are not supported by the latest stable release. Check the Supported Devices list for the minimum required DD-WRT version for your device. You may need to use a release candidate or experimental build.
  • Ensure you are using the correct version of the firmware.
    • For more information about which version to use, see File Versions.
    • Updating through the Web GUI means you need to use the _generic version, as mentioned briefly in the hwsupport.txt file.
    • Use the _mini version when upgrading from original Linksys firmware. You only need the _micro version if your hardware has 2 MB of flash (WRT54G v5 through v8 for instance). Use the regular firmware if your hardware has 4 MB or more of flash (WRT54GL for instance).
  • Read the changelog and all other information files on the download pages. They contain important information!
  • If you downloaded a .zip file, then extract the archive.
  • Confirm a good download by comparing the MD5 hash fingerprint of the firmware you downloaded with the published checksums. See Hashes & Checksums for further info and instructions.


Follow all the instructions precisely, or you may run into trouble. Incorrectly flashing can brick your router!

  • As this documentation says elsewhere, upon flashing the first time, before dd-wrt is running and while the Linksys software is still installed, do not use Firefox. Use IE to flash the router (even OS X IE works). Once dd-wrt is running, you can use any browser you like to administer or even flash the router.
  • Do NOT use a wireless connection to upload firmware. Use a wired connection. It is recommended that you disable any wireless adapters on your system to ensure that none are used for the transfer.
  • Do NOT flash/backup your firmware over an SSL (https) connection. Make sure you are using http.
  • Disable your anti-virus-software, as a false-positive virus detection could interrupt the upload.
  • If you need to use TFTP to upload firmware, disable your software firewall first.
  • You will not have internet access through the router during the process of replacing the firmware. We recommend you save this webpage and the Recover from a Bad Flash and FAQ pages to your hard drive (use File->Save As, *NOT* a bookmark). This will allow you to review the information offline in the event that something goes wrong.
  • Do not forget to make note of your current settings, especially if you have static IP addresses. A quick way of doing this is to take screenshots of your current configuration screens.
    • It can be essential to record your current WAN MAC address. Some ISPs do not allow an immediate change of the routing hardware and changing the firmware changes the MAC address.
  • Have a secondary router or internet connection available while experimenting with your router's firmware, to expedite any trouble shooting and remove the risk of becoming stranded.
    • If you have a cable modem which connects to your router with Ethernet, you can plug your PC straight into the modem should you have any problems. Your PC will be assigned your external IP with DHCP, and you will be on the net. Remember to use a software firewall.

Flashing with Web GUI (Not for Buffalo devices)

===Reset to Factory Defaults=== ( is best to do a Hard reset or 30/30/30)

If you know the IP address, username, and password of your router:

  1. Follow the instructions in the next section to log in to the Web GUI.
  2. Click the "Administration" tab.
  3. Click the "Factory Defaults" sub-tab.
  4. Select "Yes".
  5. Click the "Save Settings" button.
  6. A new page will open, click "continue".

If you do not know the IP address, username, or password of your router, you will need to use the reset button. Be careful when using this method! Apparently if you have OpenWRT already on your router the reset button may not function as it is assumed here and may actually brick your router! Research the functionality of your current firmware to be safe.

Logging In to the Web GUI

To use the Web interface, you will need to have Javascript enabled with any security restrictions disabled. If the Linksys firmware is currently installed, do not use Firefox as certain versions of the Linksys firmware are known to have problems with Firefox.

  1. Type in the IP address of the router (default into the address bar of your browser.
  2. You will be prompted for username and password.
    • For DD-WRT versions starting with 2006-Feb-28, the default username is root. Prior versions have a blank username by default.
    • For Linksys firmware, the default username can be left blank or set to anything.
    • For DD-WRT and Linksys firmware, the default password is admin.

Upload The Firmware


It is VERY important that you not interrupt the setup while the router is being flashed and rebooted. Do not turn off the computer, close the web browser, or turn off the router during this process! I usually just take a step back, and turn my head away so I don't breathe on it for these crucial 2 minutes.

[Comment added 10/03/06 by JoE] At the time of this writing, the current version of Mozilla Firefox will cause your installation to fail when trying to upgrade firmware (dd-wrt.v23_mini_wrt54g.bin, dd-wrt.v23_generic.bin, dd-wrt.v23_wrt54g.bin) using the web interface. I used the current version of Internet Explorer with no problems. Additionally, if your power button keeps flashing and/or you cannot reach/ping after a reset, unplug and plug in the power cord real quick. Wait a few seconds and then everything is hunky-dory.

  1. First do a hard reset on the unit that dd-wrt is to be loaded onto.
  2. You should be in the Web GUI of the router. Go there now.
  3. Click the "Administration" tab
  4. Click the "Firmware Upgrade" sub-tab.
  5. (Only applicable when DD-WRT is already installed.) Click the "No reset" radio button (works for me, but please double check if "Firmware Defaults" would be better!).
  6. Click the "Browse" button and select the DD-WRT .bin file you downloaded and confirmed.
  7. Click the "Upgrade" button.
  8. The router will take a few minutes to upload the file and flash the firmware. During this time, the power light will flash.
  9. A new page will open confirming that the upload was successful (Installation#Possible errors if not). Now wait about 5 minutes before clicking "Continue".
  10. Lastly, do another hard reset on the unit.
  11. If flashed successfully you will now be able to access the DD-WRT web interface at

[Comment added 2007/03/27 by staylor] Or, you won't be at the dd-wrt web interface I have a wrt54g v1.1 (also with wrt54gl v1.1), flashing with dd-wrt v23 sp2. I waited the requisite number of minutes, and my "Wireless-G" badge lit up (a good sign), but when I clicked "Continue" after the upload was successful, I did not get to the dd-wrt web interface. Nor was the device ping-able.

[Comment added 1/04/08 by jwebste1] I can confirm Staylor's comment above for a brand new store bought WRT350N (had to soft reset the router to get the mini install to become accessible on

Holding down the reset button for 30 seconds (leaving the power cable connected) re-booted the router, and all was fine thereafter.

If the above doesn't result in a successful load of the dd-wrt web interface, try a "ipconfig -renew" in a command prompt window.

Possible errors

During the firmware upload process, if your router says something similar to, "Upload Failed," you may be using the wrong version of DD-WRT. This may occur through the web GUI if you use a *wrt54g.bin version when you should have selected the generic version instead. It may also be that your router requires the mini version to be flashed before the full version. Be sure to double check to make sure you have the right version. If you are certain that your router is supported and that you have the correct firmware, you may simply need to use a different web browser (e.g. from Firefox to Internet Explorer).

When logging in fails with the default username/password (see above), you can reset the password.

Reset to Factory Defaults AGAIN

Do this only after you have confirmed that the firmware upgrade is working. At this point you may have temporary problems using Web Interface, so just ping your router.

For V23 SP2: Please do a hard reset: While holding down the reset button, plug in the power cord. Hold the reset button for 30 seconds. Also see Reset And Reboot. This is because SP2 uses encrypted password storage inside NVRAM. You are unable to login using root/admin before you reset. Please take this step seriously!

With Linksys WRT54G variants, just holding the reset button for 30 seconds may be sufficient to allow logging in. One user has reported that resetting wasn't necessary at all.

For previous versions: Press and hold the reset button on the back of the router for 30 seconds. See also Reset And Reboot.

Flashing with TFTP

Although TFTP is a safe method to flash many routers, it should not be seen as the standard procedure for flashing. Only use it when you are specifically told to do so (for example in the specific instructions for flashing your brand or type of device). Normally, the GUI flashing method should be used, as it is adequate for any standard situation. See that section for more information. If you still wish to flash with TFTP, see the articles TFTP flash and Recovering with TFTP.

Note for users not using the original Linksys firmware: you cannot use TFTP! Change your firmware to the official Linksys firmware, and then continue below.

Owners of the Siemens Gigaset SE505 have to flash their device with tftp. Look at Flash Your Siemens SE505.

Flashing with Command Line

This is available on routers that have DD-WRT installed and Telnet/SSH enabled.

It's the *ONLY* recommended mode to upgrade the router wirelessly.

1) telnet or ssh into WRT

2) download the firmware to the router's /tmp directory with wget or scp

cd /tmp

2a) Alternatively, you could use the mounted share if you have one, and simply download the file there.

3) compare the MD5 checksum of the original and the downloaded file

md5sum dd-wrt.v2x_generic.bin

4) write the firmware to flash

write dd-wrt.v2x_generic.bin linux

5) wait...

6) reboot

7) restore factory defaults using the web interface or reset button

Upgrading to a newer version of DD-WRT

If DD-WRT is already installed on your router, you can simply upgrade to a new version via the web interface or TFTP. However, it is highly recommended that you restore the router to defaults using the reset button before and after flash. Never restore old backups from previous versions! Skipping these steps could lead to a bricked device!

Please see wiki article Hard reset for further information on how to restore your device back to DD-WRT default settings.

Configuration Notes

  • You must start to configure router from scratch. Do not try to use config files from older firmware versions.
  • It is strongly advised that you enable the "Boot Wait" option under the "Administration" tab. This will help you recover in the future should you flash your router improperly. If you use v23 or higher the "Boot Wait" option is enabled by default.

If something goes wrong

  • If your router fails to reboot (power light doesn't stop flashing, no web interface, etc) you will need to Recover from a Bad Flash. Additional help can be found by doing a forum search.

Hardware-Specific Information

Netgear WGR614v8/L/WW

Initial flash of dd-wrt firmware is done though Netgear update gui using a device specific .chk file

If the firmware you are loading is before svn11600 then you will need to update the firmware using this file first before upgrading to a newer build. After the initial .chk flash (after svn11600) any generic .bin file can be used to upgrade firmware to the router using the dd-wrt Firmware update tab.

These are the notes provided by Eko.

Files listed are located here


Flashing Netgear WGR614v8, WGR614L, WGR614WW

For first flash (running original Netgear's firmware) or for tftp please use dd-wrt.v24-11604_NEWD_mini_wgr614v8-L.chk file.

For upgrade when already running dd-wrt (IMPORTANT!!!):

- if your dd-wrt build is less then 11600 please use dd-wrt.v24-11604_WGR614v8-L_mini.bin file. Then you can upgrade to any build listed below.

- if your dd-wrt build number is greater then 11600, you can upgrade directly using any build listed below. Keep in mind that as newer builds come out (higher svn numbers than 11600) they are also compatible.

Compatible builds:

  • dd-wrt.v24-11604_NEWD_mini.bin
  • dd-wrt.v24-11604_NEWD_mini_hotspot.bin
  • dd-wrt.v24-11604_NEWD_std.bin
  • dd-wrt.v24-11604_NEWD_std-nokaid.bin
  • dd-wrt.v24-11604_NEWD_std-nokaid_nohotspot_nostor.bin
  • dd-wrt.v24-11604_NEWD_voip.bin
  • dd-wrt.v24-11604_NEWD_openvpn_jffs_small.bin
  • dd-wrt.v24-11604_NEWD_openvpn.bin

Additional wiki information about the WGR614v8 can be found here. Some of this data is outdated...but it could still provide to be useful.

Netgear WNR834Bv2

(See Important Notes below before attempting to flash)

The Netgear WNR834Bv2 is now fully supported as of 3rd July 2008. Thanks to Eko, Brainslayer, etc. for their superb work in getting this router supported.

These (slightly modified) instructions were first posted by sparkie HERE. Read that complete thread for the hairy details on getting this device fully supported, if you are so interested or suffer from insomnia.

Step 1: Download the mini version of DD-WRT version 24, build 9856, new driver in the dot CHK format HERE.

Step 2: Flash the firmware to your router using Netgear's factory firmware standard web interface. Note that to successfully flash this device, you may need to use IE or Firefox 3 or higher. sparkie has reported in the thread linked above that Firefox 2 will not work with the Netgear factory web upgrade page to flash this device.

Step 3: If the mini build is insufficient for your needs, you may download your preferred flash BIN file from HERE. Then flash up the new .BIN file using the DD-WRT web interface from the Administration tab, then the Firmware Upgrades tab.

Important Notes (Please read these in full before attempting to flash):

  • DO NOT ATTEMPT TO FLASH ANY BUILDS EARLIER THAN 9856 DATED 3RD JULY 2008, or you risk bricking your router. Some of the v24 release candidate 7s worked with minor bugs. But the first final v24 bricked the router for some users as a result of a problem with JFFS.
  • NEWD = New Drivers; VINT = Vintage Drivers. Use only NEWD firmwares with this router. VINT builds are for much older routers.
  • DO NOT INSTALL the generic broadcom dd-wrt.v24_std_generic.bin file (2.4 SP1). It will likely brick your router.
  • If your router is stuck in 'tftp only' mode (characterized by a constant TTL=100 ping response), you can rescue it by TFTPing the original Netgear firmware less the header file located HERE, which will flash your router back to Netgear's stock 1.0.22 North America firmware. This file is called wnr834bv2_1_0_22_na.bin
  • For routers will a more recent flash, you will need the 2.1.13 version of the flashes 2.1.13_NA / 2.1.13_WW
  • Your router has only 4 MB of Flash RAM. Do not attempt to flash the MEGA version of DD-WRT to this device.

DOUBLE SUPER DUPER Extremely Important Note:

According to Eko, the NVRAM of this router has an additional partition on it which contains your router's serial number, MAC address, and board code. DD-WRT builds prior to 9856 would overwrite this section of NVRAM, if the user enabled JFFS. Builds 9856 and higher include support for turning JFFS on with this model router. In the event that you accidentally erase this part of the NVRAM, you can only recover your router by flashing it via JTAG.

This also implies that if you want to use the OpenVPN version, you'll want one with an openvpn_jffs_small suffix like THIS one (current as of 4 January 2009).

WNR834Bv2 JTAG Pinout:

J12 Pin 1 connected to JP1 pin 1 via 100 ohm resistor. 

J12 Pin 3 --100r--> TDI (Pin 2 of parallel port) 
J12 Pin 5 --100r--> to TD0 (Pin 13 of parallel port) 
J12 Pin 7 --100r--> to TMS (Pin 4 of parallel port) 
J12 Pin 9 --100r--> to TCK (Pin 3 of parallel port) 
J12 Pin 10 -------> to GND (Pin 20&25 of parallel port)  

  • Functional NVRAM backup is HERE.
  • Functional CFE backup is HERE.
  • Functional Custom backup is HERE. (REQUIRES MODIFICATION OF MAC ADDRESS)
  • Tornado's JTAG v2.1.4 is HERE.


The fastest way to recover a bricked WNR834Bv2 is to wipe the kernel portion of the flash, and reflash the custom section.

  • 1. Download one of the binpacks WNR834Bv2 North America. WNR834Bv2 World Wide, and the custom.bin
  • 2. JTAG the router
  • 3. Erase the kernel portion of the flash
  • 4. Reflash the 'custom' section of the flash (hex edit the custom.bin and put your own mac address in at offset 40~45!)
  • 4a. flash parameters: -flash:custom /window:1fc00000 /start:1ffe0000 /length:10000
  • 5. Power cycle the router and the router will respond with a constant ttl=100 ping response
  • 6. TFTP a dot CHK file appropriate to your router (NA or WW)
  • 6a. You will know that the transfer was completed and the flash process is working when router power light blinks amber on and off once per second. After a few minutes, the router will begin to respond with a ttl=64 ping and will be functional again.


Many of the factory refurb WNR834B v1 and v2 routers sold in 2008 through,,, and were shipped with a marginal or defective power supply manufactured by DVE. These units are smaller than traditional power supplies, and can be identified by the following information:

P/N: 332-10006-01

MODEL: DSA-12R-12 AUS 120120

The routers will operate perfectly with only 9VDC @ 800mA, but older-style surplus Netgear power supplies that output 12VDC @ 1A are available from as DCTX-1216

Linksys WAP54G

WARNING - DD-WRT was not originally intended to be loaded on a WAP unit. It was found that it will run but it is a tricky unit to load and have function correctly. Below are a compilation of methods/instructions to assist you with creating a DD-WRT loaded WAP unit.



If you really want your WAP to have the correct MAC address when it boots up there are 2 simple but not permanent, and one not so simple but permanent.

Method 1 -

For V1.x only On the Administration>>Commands tab enter

nvram set et1macaddr=<your MAC address minus 1 here> (due to the port swap) (i.e. 00:11:22:33:44:54)

nvram commit

Run then Save as reboot the unit for the new MAC to take effect.

For V2 units - this step is NOT necessary. This unit version has a unique motherboard flag and should be recognized as a WAP on the Status tab.

For V3.x - follow the same step above except substitute the et1macaddr with et0macaddr and don't use the minus 1, use your actual MAC address. (i.e. 00:11:22:33:44:55)

This will need to be re-entered if you do a hard reset (like when doing firmware upgrades).

Example of startup script for a V1:

nvram set et1macaddr=00:11:22:33:44:54

nvram set boardnum=2

nvram commit

Example of startup script for a V3.X:

nvram set et0macaddr=00:11:22:33:44:55

nvram set WAPver=3

nvram commit

Once the script is run and saved as a startup....power cycle the unit. It should then be recognized as a WAP unit on the status tab.

Method 2 - Works for all WAPs (For V2.X+ use actual MAC and MAC+1) Extract your CFE, edit in your MAC address, et0macaddr = MAC, and il0macaddr=MAC+1. (For V1.x... Use your MAC-1 for the lan_hwaddr and your MAC for the wan_hwaddr), then put the CFE back on using the HairyDairyMaid or TJTAG utility. This method is risky. You could potentially turn your router into a brick. Once this is reinstalled on the unit and the firmware has been loaded, your unit will have its own MAC addresses permanently embedded and will show every time you boot.

[note] - for the V1s, search for the embedded text string "hwaddr" using your hex editor. This will find the two MAC addresses that are embedded. Again due to the port swap the LAN MAC address needs to be entered as MAC-1 and wan_hwaddr needs to be entered as the MAC for the V1.X only

[note] - my WAP 1.0 required using tftp.exe for the firmware load the first time... my V3.1 required using tftp.exe for the firmware load the first time.

WARNING - Use only VINT-micro firmware builds on v1.x-v2.x WAP units. If you try to use the standard V24 you will brick the WAP unit.

For loading firmware on the WAP54G V1.X - Has fixed LED displays starting with V24 RC5. - redhawk

  • Connect PC to LAN port on WAP
  • Configure PC for STATIC IP as Mask, Gateway
  • Press and hold Reset Button on WAP unit for 30 seconds, unplug unit, Plug back in still holding reset button an additional 30 seconds.
  • Open Browser, URL =
  • Login as: Username/Password <blank>/admin
  • Navigate to Administration Tab. Change the DD-WRT xxx_generic.bin file to xxx_generic.trx
  • Upload the new xxx_generic.trx file to the router.
  • Wait 5 minutes after it says it completes successfully.
  • Unplug WAP unit, plug it back in.
  • Press and hold Reset Button on WAP unit for 30 seconds, unplug unit, Plug back in still holding reset button an additional 30 seconds.
  • Now use URL =
  • Go to the Administration>>Commands tab.
  • Enter the following

nvram show | grep boardnum (then click on "Run Commands")

If it returns blank then issue the following commands... if it returns a boardnum=2 then you won't have to.

nvram set boardnum=2

nvram commit

  • Click "Run" button and then: "Save Startup" button. - (only if you had to enter boardnum=2 manually)
  • Power cycle the WAP unit.
  • Check the Status page... it should now display the unit as a "Linksys WAP54G v1.x"
  • Configure as you would any other router.

Power = Power, Diag = Diag or Commit

WLAN - Link LED is now a Radio On/Off indicator, Act = Wireless Activity

LAN - Link = Link, Full/Col = Full, 100 = 100

Thanks goes to Eko for making this unit display correctly.

WARNING - Use only VINT-micro builds on the WAP v1.X-v2.X units.

For loading the firmware on the WAP v2.x - follow the steps for the WAP v3.x below... except don't include the nvram variable for WAPver=3. The v2 units have a unique board and should be already recognized by the RC5 and later firmware. Eko informed me that there are no special variables needed for the v2 units. [redhawk - 11/16/07]

If you receive a error message saying "Unable to downgrade firmware" go to, set pull-down menu "DownGrade Header :" to disable and click [apply]. If this setting executed successful you see a message "Your changes have been saved". [ddvelzen - 18/01/08]

WARNING - Use NEWD-Micro build on the WAP v3.X units.

For loading the firmware on the WAP54G v3.X Use V24-RC5 or later for Reset button function

  • Connect PC to LAN port on WAP
  • Configure PC ethernet port to IP:, SM:, GW:
  • Unplug power. Wait 15 seconds
  • Press and hold Reset Button on WAP unit for 30 seconds, unplug unit, Plug back in still holding reset button an additional 30 seconds.
  • Open your favorite browser (I used Firefox) and go to:
  • Login as:

User: <blank>

Password: admin

Hit the Administration tab, and upload the MICRO version of the firmware.

  • Wait 5 minutes after it says it completes successfully.
  • Press and hold Reset Button on WAP unit for 30 seconds, unplug unit, Plug back in still holding reset button an additional 30 seconds.
  • Go to: in your browser and login with the default un/pw for DD-WRT...

[Added by redhawk - 11/16/07]

  • Next go to the Administration>>Command tab
  • Type in: [note] - this is only needed for v3.x WAP units with V24-RC5 and later firmware.

nvram set WAPver=3

nvram commit

  • Click on the "RUN" button and then the "Save Startup" button... you want this to run each time it reboots.
  • Reboot the router again then configure.

[Added by lerley - 1/29/08]

I kept getting "upgrade failed" message when trying to update the micro firmware on my WAP54G v3.1 - I ended up doing the following to make it work:

  • Reset as above
  • Upload micro firmware through web interface and get failed message
  • Power cycle router
  • Tftp micro firmware to router (still at as per instructions in Recover from a Bad Flash#Recovering_with_TFTP
  • When router boots, go to and log in with DD-WRT defaults
  • Go to Administration - Upgrade Firmware and upload micro firmware again
  • Power cycle router

At this point it worked great and I could configure it. Probably still need the nvram stuff as above...

[Added by rfuhrman 19 April 2008]

WAP54v31 hardware, running Firefox on brand new WAP54v31, loading dd-wrt.v24_micro_generic.bin ....on upload completion received "upload failed" message ala 'lerley'. My WAP54 was unaffected, I was still in Admin page, so no need to panic.... Simply switched to IE and ran same exact commands at, perfect upload 1st try. Then I could later use Firefox for finishing the configuration.

So I assume do not use browser of choice, but rather use IE for 1st upload (this is same as suggested for WRT54GL install notes).

[Added by redhawk0 02 March 2009] If you are having trouble reconnecting to your WAP unit after firmware upgrade it could be due to the arp table holding the old MAC address for that unit. Try the trick listed here for tip goes to sprocket87...much thanx.

Linksys WRT54G or WRT54GL or WRT54GS or WRT54GGX

See Linksys WRT54G/GL/GS/GX page.

Linksys WRT54G2

See Linksys WRT54G2 page.

Linksys WRTSL54GS

See Linksys WRTSL54GS page.

Linksys WRT300N v1

See Linksys WRT300N v1 page.

Linksys WRT310 v1.0

The WRT310 accepts the mini and the standard versions, no other version appear to be supported on this device. Flashing is straightforward as documented above under point 2. This device runs hot; as in over 100deg F; set with the defaults. Linksys forums have several posts regarding this so it's not a dd-wrt issue. I set mine on top of a AC powered notebook fan and works fine. Ten days and counting. (edit 01/06/2009 - could you please clarify what you mean by under point 2? Do you mean scroll back to the top and click on the link for section 2.2? Please delete this blurb if you do clarify the meaning of 'point 2' - thanks! Oh - and isn't it WRT310N rather than WRT310? If they are different, just delete this whole edit and nevermind. :)

See for installation and downloads for the WRT310N. I just tried it on the 310N, Mini then STD. Working fine.

Linksys WRT600N v1 and 1.1

See Linksys WRT600N page.

Linksys WRT610N v1 WIP

See Linksys WRT610N page.

Allnet ALL0277

The Allnet ALL0277 (not DSL !!!) essentially is a relabeled Linksys WRT54G v1.0. It was even reported in the forum, that you can install the Linksys firmware on these devices.

First time install

With some minor exceptions, the procedure to install DD-WRT the first time is pretty much the same as for other WRT54G devices. For flashing this device the first time you need to change the first 4 bytes of the mini_wrt54g image to read W54A (usually this is W54G). You can use a hex editor like XVI32. After the patch, you can upload using the new firmware using the standard ALLNET web interface. If the ethernet interface does not work (it did not for me on v23SP2), try the wireless LAN interface to check whether the upgrade did succeed.

After the hard reset of the router, you should be able to proceed as described above.



NOTE: Use only v23 SP1 final or later with Buffalo devices. Older releases may cause trouble!

NOTE: For some models you can use the ddadder program

First Time Flashing from Stock Buffalo Firmware

Normally, most companies let you upload firmware directly from the user interface. Buffalo, unfortunately, encrypts their firmware, and their routers will accept only encrypted firmware in the web interface.

The first time you flash, the TFTP method can be used to bypass this 'encrypted' firmware requirement. Afterwards, the router firmware can be changed through the Web interface normally.

All the Broadcom routers normally enter a special mode in the first few seconds after power is applied that allows a TFTP transfer to directly program the flash ROM with new firmware. So what you need to do is get everything ready to go. 1. power up the router, and then 2. send the router the new firmware, quickly.

WHR-G125 Specifics

There is no decrypted firmware available for the WHR-G125 so after flashing dd-wrt there is no way to revert to the original Buffalo firmware.

Support for this model has now been integrated into the generic v24 builds. If you are flashing v24 Final you can ignore the following warnings.

NOTE: There is a separate RC5 firmware section for the WHR-G125. For available v24 RC5 downloads see here.

WARNING - You MUST use the special G125 build of v24 if you flash RC6 or earlier on the WHR-G125 router or you will brick it. If loading an Eko- RC5 or Eko-RC6 the file name must contain 535X. If it is a Pre-RC7 build...the Eko builds must contain NEWD in the filename....BrainSlayer RC7 builds can be used directly as special build designation with his Pre-RC7....Now that V24 Final is can load the std_generic.bin file from the Buffalo WHR-G125 directory. Do NOT use any VINT builds on the G125 unit.

WZR-RS-G54 Specifics

Substitute as the router IP, and as your computer IP in this guide.

TFTP Flashing Buffalo Routers under Windows

Vista Users: Go into Control Panel, Programs, turn Windows Features on of off, check "TFTP Client".

The computer you are using, and the router you are resetting, must be close to each other: so it is possible to have one hand on the enter key of the computer, and the other holding the power plug of the router, and able to put it in the wall or power outlet.

  1. It's good to now reset to factory defaults by holding the reset button while plugging in the router. Hold for at least 30 seconds. Unplug the router. This makes sure the router is in its 'factory fresh' state.
  2. Unplug the router. Usually, preparing by leaving the connection to the router, and unplugging the router from the wall or power strip, is the easiest way.
  3. A non-XPSP2, third-party firewall, may interfere with tftp's ability to talk to the router. It may be useful to disable any third-party firewalls now.
  4. Either:
    1. Your computer should be connected directly to one of the LAN ports on the router. (You can use a regular cable or crossover).
    2. Or if you have a larger network, the computer is connected to a switch, and then to the router LAN port. The router's power cord still needs to be within reach while you are at the computer.
      Reference Image
      Reference Image
  5. For Windows XP, the following reference image should help. After selecting "Internet Protocol (TCP/IP)," click on the Properties button to open the next screen. Enter the info as shown, an IP Address of, a subnet mask of, and click 'OK'. Leave Default Gateway blank.
  6. Make a copy of the firmware file, call it 'ddwrt.bin', and put it in your user folder. For instance, "C:\Documents and Settings\yourusername".
  7. Open a command window, by using Start->Run->"cmd". Enter 'ping -t -w 10'.
    1. The router is pinged continuously from the computer, letting you know when to send the firmware.
  8. Open up a second command window, and leave the first where you can see the ping results.
  9. Without pressing Enter, type tftp -i PUT ddwrt.bin Do not press enter yet. Keep this second command window in the foreground, so all you have to press is the Enter key to send the firmware.
  10. With the power cable to the router in one hand, and the other hand on the Enter key, plug the router in while watching the first command window. When ping replies from begin, press the Enter key.
    1. Some people have found that they have better luck if you plug in the power cable for the router first, then wait a few seconds until you see the red "DIAG" light come on the front of the router. As soon as you see that, you'll want to press Enter to immediately start the TFTP transfer.
  11. All port LEDs will illuminate.
  12. The LED on the LAN port will flash rapidly for about 6 seconds. The TFTP command will complete with a success printout, like Transfer successful: 3502080 bytes in 5 seconds, 700416 bytes/s. Leave the router ALONE at this point!
  13. The router will reboot and then boot DD-WRT.
  14. At this point, the router is ready to use. There is no need to reboot it (unplug/plug).
  15. You can reconfigure your network interface on your computer to use DHCP. The computer pulls an IP address and network information from the router. Access the router via
    1. (For the WB2-G54 and some WHR-G54S models, the router may still be accessible at
  16. The user name is 'root' and the password is 'admin'.

Unplugging router can cause media detect network cards to show no media, ie "Network cable disconnected." When you start the tftp and plug the router in, the NIC doesn't detect media until after the tftp flash window has passed, so 60 seconds later tftp times out and the router boots normally. If so, don't unplug the router. Get your tftp ready, hold down the Init (Reset) button on the router, with the Init held down and the Diag blinking, start tftp and immediately release the Init button. You'll never get the 'Cable Disconnected' errors, and it should flash right up.


***If you are still having trouble with timeouts, etc., you may want to try using the TFTP client from Linksys. Be sure to set it to retry at least three (3) times. Five (5) would be a safe number to start with. Connect power while holding the reset button till the red diag button begins to blink, release the reset button and hit the Upgrade button on the Linksys TFTP Utility. For WHR-HP-G54 I had to flash through a switch with Windows or suffer timeouts trying.***

I tried several time on Windows XP. The result is always a timeout. Disabling Media Sense feature of Windows XP, I finally succeeded. How to disable Media Sense feature of Windows.

On Windows Vista, I used the Linksys TFTP utility and had to upload the micro version first. The mega version would never complete in time. After successfully uploading micro, I was able to login to web-based admin and perform an upgrade to mega.

One other way to prevent a timeout is to first set the NIC to 10 Mbit half duplex.

Another way is to use a (script) cmd file under Windows

  1. Save the script below to a file named "install.cmd" (without quotes), and put the firmware file in the same folder.
  2. Run it.
  3. Follow the directions.

@echo off

echo ============================================================================
echo Type or paste the firmware filename below and then press Enter.
set /p dd-wrt_fn=Firmware Filename: 
if not exist %dd-wrt_fn% goto FNF_ERROR

echo ============================================================================

echo This batch file will upload %dd-wrt_fn% in the current
echo directory to during the router's bootup.
echo * Set your ethernet card's settings to:
echo      IP:
echo      Mask:
echo      Gateway:
echo * Unplug the router's power cable.

echo Press Ctrl+C to abort or any other key to continue . . .
pause > nul

echo * Re-plug the router's power cable.

echo ============================================================================

echo Waiting for the router; Press Ctrl+C to abort . . .

ping -n 1 -w 50 > nul
if errorlevel 1 goto PING

echo tftp -i put %dd-wrt_fn%
tftp -i put %dd-wrt_fn%
if errorlevel 1 goto PING


echo ============================================================================

echo * WAIT for about 2 minutes while the firmware is being flashed.
echo * Reset your ethernet card's settings back to DHCP.
echo * The default router address will be at

goto END

echo ============================================================================

echo ERROR: Make sure this batch file and the firmware are in the same directory!


TFTP Flashing Buffalo Routers under Linux, OS X, or other

  1. Obviously, be sure to observe the aforementioned procedures:
    • Disable your wireless adapter so that the tftp connection is not through a wireless connection.
    • Connect directly to the router using a wired connection (i.e. ethernet cable). Make sure you are connected to one of the four LAN ports and not the WAN port.
    • Download a copy of these instructions so that they are available to you during the procedure.
    • If working with the WZR-RS-G54 router, then be sure to replace all instances of with
    • Most importantly, review all of these procedures before attempting them.
  2. OS X specific instructions:
    • Open up system preferences and select the network preference pane
    • Under the TCP/IP tab select from the drop down menu next to Configure IPv4 manually
    • Type in for the IP address
    • Type in for the Subnet mask
    • Type in for the router
    • Click Apply Now
  3. Change to the directory that you downloaded the dd-wrt.v23_mini_generic.bin file into. At least in Mac OS X, tftp fails to resolve either absolute or relative paths. It is simply better to cd to the directory that contains the dd-wrt.v23_mini_generic.bin file before launching the tftp app so no path resolution has to happen.
  4. Execute the tftp command and change the mode to binary by typing binary and hitting return/enter.
  5. Execute the trace command so you get feedback.
  6. Execute the rexmt 1 command so tftp will retry to send the file if you don't get the timing perfect.
  7. type in the connect command but don't execute it yet.
  8. copy the following command (ctrl-c or cmd-c): put dd-wrt.v23_mini_generic.bin.. You don't want to hit return yet, because you're going to do this when the timing is right.
  9. Now that you are ready, here we go:
    1. Plug in the router
    2. When the router is plugged back into power, all of the LEDs on the ethernet ports will turn on.
    3. Once the LEDs turn off on all ports except the connected port, hit enter on the connect command, then immediatly paste (crtl+v or cmd-v) the PUT command into the terminal and hit enter.
    4. The terminal will return with the number of bytes sent and the time that the transfer took in seconds.

Here is a recap of all the commands:

$ cd /path/to/dd-wrt.v23_mini_generic.bin/directory
$ tftp
tftp> binary
tftp> trace
tftp> rexmt 1
tftp> connect
tftp> put dd-wrt.v23_mini_generic.bin

OS X timing tip: Open the network preference pane and select "Network Status" under the "show" pull-down menu. When the router is unplugged the dot next to "Built-in Ethernet" will be red. Now plug in the router and watch for the "Built-in Ethernet" dot to turn green. As soon as it does, execute the connect and put commands.

Alternatives and Troubleshooting under Linux

  • Within tftp, you may be able to execute multiple commands using the '&&' operator.
  • You may be able to use the following one line command:
tftp -m binary -c put dd-wrt.v23_generic.bin 
  • Be sure to remember to use for the WZR-RS-G54 router.
  • Make sure you are in the directory containing the DD-WRT binary before entering tftp.
  • If tftp fails, try atftp (available in portage for Gentoo and repositories for Debian, Ubuntu, and probably others.) With atftp, the "binary" and "rexmt 1" commands are unnecessary.
  • If the above does not work, try issuing the "put" command before powering the router. The command will retry and begin as soon as the connection is established. Finding the right timing is everything.
  • Try also holding the router's INIT button, starting the "put" command, then releasing the button.

Flashing WBR-G54 WLA-G54 WBR2-G54 WBR2-G54S

See Flash Your Buffalo WBR-G54, WLA-G54, ... also includes WBR2-G54, WBR2-G54S

Flashing WHR-HP-AG108

See WHR-HP-AG108


  • Once you flash to DD-WRT on the Buffalo WHR-G54S/WHR-HP-G54/WZR-RS-G54 and you, for whatever reason, want to flash back to the Buffalo firmware, look in the downloads section of in the "buffalo factory revert" folder for unencrypted firmware that will load from the DD-WRT gui. The WHR-HP-G54 image is the German version. Download the English version from Buffalo's site. Flash the German version and use that to flash the English version.
  • A hidden LED behind the front panel may blink on older models. It slightly lights up the bridge icon. This LED is not used in the Buffalo firmware, but in DD-WRT it will flash on for 2 seconds, then off for 2 seconds.
  • For any future upgrades/downgrades of normal unencrypted firmwares (DD-WRT, etc), use the web interface of the router. See Steps to Flash Through Web GUI.
  • WARNING: One person reports: I had problems using the mini version of DD-WRT v23SP2 on my WHR-G54S. When using the (standard, full) generic version, everything worked fine.

Additional WHR-HP-G54 information

See WHR-HP-G54


  • If you experience problems a switch between the Buffalo and your PC may help.
  • If you experience problems, you may need to erase NVRAM by starting a Telnet session and entering one (or both?) of the following Options:
  • Option 1 :
mtd erase nvram
cd /tmp
chmod a+x /tmp/
nvram commit
  • Search for posts in the forum containing "WHR-G54S" and the problem you are having.


  • Forums, search for "WHR-G54S bricked". There are enough debricking threads, you don't need to start your own.

Belkin F5D7230-4 v2xxx and Lower

As this Belkin router comes in several versions, this firmware build will only work for Belkin router models up to v2000. v2000 has a different switching chip than earlier versions though, so you may lose the functionality of the switch and may only be able to connect wirelessly after flashing a v2000 Belkin (see instructions below for adding limited wired capability). v3000 should work, but attempts to flash it have been unsuccessful with current versions of DD-WRT. Attempting to flash a v3000 could brick your router. (psuftbl has had success with v3000) Version 4000 and higher appear to be based on the TI chipset found in the Linksys WRT54GC. v1000, and v1111, have 4 MB flash ROMs while v1444 has only a 2 MB flash. You have to flash the router with the 2 MB micro firmware via TFTP. If you have a 4 MB model, you can reflash the router with the full version generic firmware from within the routers web interface once you've followed this procedure. Unless you need the extra features, it is best to stick with the micro firmware since it is known to work better with this router.

Flashing v1232a with the latest VINT (currently dd-wrt.v24-9517_VINT_micro.bin) worked. Flashing with the latest micro (dd-wrt.v24_micro_generic.bin) worked with the wired connection but the wireless did not seem to work (no SSID was broadcast).

Warning: These instructions will brick v1212 and v1213 Belkin F5D7231-4 routers, apparently without a hope of fixing them short of some rewiring. See the forum posts here[1] for possible help un-bricking one of these units.

  1. Download the latest micro firmware (dd-wrt.v24_micro_generic as of this writing)
  2. Reset router to factory defaults. Unplug the router.
  3. Connect your computer directly to one of the LAN ports on the router.
  4. The router starts up with IP address Set your computer's IP address manually to the following setting: IP Address:, Subnet Mask:, Default Gateway: leave blank. For more help with this step, study the instructions for the Buffalo router located above.
  5. Go to Start->Run->"cmd" and press Enter.
  6. Change your directory to the folder containing the firmware image. Ex. cd "C:\Documents and Settings\All Users\Desktop"
  7. Type tftp -i PUT (file name of firmware image) For example: tftp -i PUT dd-wrt.v24_micro_generic.bin. Do not press enter yet.
  8. Connect the power to the Belkin.
  9. All port LEDs will illuminate.
  10. After a few seconds, all LEDs except the one you are connected to will turn off. Wait exactly one second and hit enter to execute the command. If you get a timeout error just try again. (Also try running tftp right before powering up.) If you continue to have trouble with this step check out the alternative method below.
  11. The LED on the LAN port will flash rapidly for a while after which the power button will flash rapidly for a while. Be patient and wait for the power light to stop flashing. Wait a couple more seconds.
  12. Power cycle the router. (unplug the power, wait a few seconds, plug it back in).
  13. Set your IP address back to automatic (DHCP), or set it to something beginning with 192.168.1.
  14. The router is now accessible at
  15. The user name is 'root' and the password is 'admin'
  16. Enjoy your DD-WRT router

Alternative for Flashing F5D7230-4

If you don't enjoy spending hours, powering your Belkin router up and down. You can can try this procedure that worked for my v1444:

  1. Follow steps listed in the method above until you finish the part where you set your computer's IP address to
  2. Goto and goto their download page (You may want to do this first before you reset to the factory defaults in case resetting screws up your internet connection). If the site asks for your location, choose North America - USA.
  3. Download the firmware for BEFW11S4 - EtherFast Wireless AP + Cable/DSL Router w/4-Port Switch (Version 1.0).
  4. Extract the tftp.exe program from the zip file.
  5. Start tftp program and set server to: and for the file part, put the location of your "dd-wrt.v24_micro_generic.bin" file.
  6. Set retries to 20.
  7. Powerup router.
  8. Click upgrade and then hit the reset button on your router. If program doesn't catch the Belkin's TFTP window, just hit reset again. The tftp program will let you know when it is upgrading and succeeds.

This method caught the Belkin narrow tftp window on retry #11 vs. my 0 catches after 40 some tries using the power up and down method. Not sure if this will work on other version of the F5D7230-4. From what I have seen with my router, a successful installation will change the LEDs on the Belkin. WLAN LED does not work. Power LED will work and connected WAN LED will blink green. Good luck.

After more than 50 unsuccessful attempts to flash my v1444 router I finally flashed my router using the alternative method described above, but only after using a hub or switch to connect the computer and the Belkin unit. All of my attempts with a direct connection between the router and the computer resulted in a timeout, but by using a hub or switch I had success on the first try. When trying to flash with a direct connection from the computer to the Belkin, it will never work. The connection fails when the router is unpluged or reset. By the time the connection is re-established, the Belkin is too far along in the boot process to accept the upgrade. So if you are having difficulty, like I did for so long, try the above method with a hub or switch connecting one of the LAN ports of the router to the computer.

I want to confirm that using a switch as mentioned above worked for me at the first try with V1000 router while other methods failed after more than 30 tries.

Second Alternative for Flashing F5D7230-4

If you're having difficulty with either of the above methods (or just don't feel like going through all the hoops required) there is a much simpler method that may work.

  1. Reset the router to factory defaults.
  2. Set your computer's IP address to as described above.
  3. Plug your computer into the router and power the router on.
  4. In a command prompt (what you get by going to Run in the start menu) type out the tftp command line but do not hit enter yet.
  5. Press and release the reset button on the back of the router.
  6. Almost immediately hit enter in the command prompt to run the tftp command you typed out.
  7. If tftp tells you the file was sent successfully wait a few seconds, unplug the router, then plug it back in. If it says the connection timed out or the transfer failed, prepare the tftp command line again (hitting the up arrow key should do it) and repeat the previous two steps.
  8. Connect to to configure (and enjoy) your vastly improved router.

After trying the first two methods a few times (the first method several times in particular) I managed to get my v1444 flashed in one try (!) using this method. As such I am unsure of the exact delay between resetting the router and starting TFTP, but it was definitely less than a second. At the very least this method is much more enjoyable than unplugging and re-plugging your router over and over again.

Linux Instructions for Flashing F5D7230-4

  • Set the IP address of your ethernet interface to be, netmask of
sudo ifconfig eth0 inet netmask
  • Make sure you have "tftp" installed.
  • Start up tftp with the router switched off:
# tftp
tftp> verbose
Verbose mode on.
tftp> trace
Packet tracing on.
tftp> rexmt 1
tftp> binary
mode set to octet
tftp> status
Connected to
Mode: octet Verbose: on Tracing: on
Rexmt-interval: 1 seconds, Max-timeout: 25 seconds
tftp> timeout 60
  • Turn on the router after typing the following command:
tftp> put dd-wrt.v24_micro_generic.bin
putting dd-wrt.v24_micro_generic.bin to [octet]
Sent 1746029 bytes in 14.8 seconds [943799 bits/sec]
  • When the lights stop rapidly blinking, reset the router.

OSX Instructions for Flashing F5D7230-4

  • Make sure the router is on and plugged into your Mac's ethernet port
  • Goto System Preferences and click on the Network icon
  • In the selection box next to the word "Show:" select the Built-in Ethernet option
  • Change the IPv4 Configuration to manually and set the IP address to the subnet mask to and the router to
  • Click "Apply Now" and change the selection box next to "Show:" back to "Network Status"
  • Unplug the power from the router and watch the green dot next to "Built-in Ethernet" turn red
  • Open the Terminal application and type the following commands
tftp> connect
tftp> verbose
Verbose mode on.
tftp> ascii <- [Edit: I think this is a typo, should be "binary"!] 
mode set to octet
tftp> status
Connected to
Mode: octet Verbose: on Tracing: off
Rexmt-interval: 5 seconds, Max-timeout: 25 seconds
tftp> timeout 60
  • Type the following but don't hit enter yet. Make sure you can still see the System Preferences window
tftp> put dd-wrt.v24_micro_generic.bin
  • Now plug the router back in. As soon as you see the red dot next to "Built-in Ethernet" turn green, hit enter and the firmware should be flashed once the lights on the router stop blinking.
  • In order to connect to the router you must first go back to the Network Preferences and change the IPv4 configuration back to DHCP and click "Renew DHCP Lease"

Using v2000 Or FD57231-4 As A Wireless Client Or Access Point With DD-WRT
(borrowed from

The Belkin F5D7230-4 v2000/FD57231-4 (with screws not under label) are still not completely functional with DD-WRT, but it can be used as either a wireless access-point or a wireless client. The reason for this limitation is due to the fact that the current robo-switch is unable to properly configure the vlan with this router's implementation of the BCM5325EKQM switch chip. By bypassing the vlan stuff we can get limited functionality from this router. In order to load DD-WRT micro you must tftp it on to the router. These instructions are for the v24 build of DD-WRT micro not the multi-language version which seems to have stripped out the reboot, ls and other shell commands.

A) Belkin F5D7230-4 v2000 as a wireless client.
1) Connect to the router wirelessly
2) Telnet to the router and sign in or use a serial console cable
3) Enter the commands below:
nvram set lan_ifnames="eth0 vlan0"
nvram set port0vlans=0
nvram set lan_ifname=eth0
nvram set wan_ifname=vlan1
nvram set wan_ifnames=vlan1
nvram commit
4) After the reboot, unplug the router and plug it back in. When it starts back up your LAN ports should be active. The router's default IP address is Just use the web interface via the LAN port to configure the router as a wireless client.

B) Belkin F5D7230-4 v2000 as a wireless access point
1) Connect to the router wirelessly
2) Telnet to the router and sign in or use a serial console cable
3) Enter the commands below:
nvram set lan_ifnames="vlan0 eth1"
nvram set port0vlans=1
nvram set remote_management=1
nvram set lan_ifname="br0"
nvram set wan_ifname=eth0
nvram set wan_ifnames=eth0
nvram commit
4) After the reboot, unplug the router and plug it back in. When it starts back up your wan port should be active. The router's default IP address is Just use the web interface via the WLAN port to configure the router as an access-point.

If you enter in the wrong setting or can not access your router you can always hold down the reset button to restore it to the factory defaults. Remember that we are bypassing all the vlan stuff so some of the web configurations will not work.

Belkin F5D7230-4 v2000 and v2000de

This version has a different flash chip than the other versions, and it will enter a reboot loop if a special SF build is not used. If you have already flashed the device and it is in a reboot loop, you can still flash the correct build using tftp.

This version also has a different switch chip so only wireless will work after flashing. Wired can be enabled, but the ports can only be set to either WAN or LAN. If you only have wireless clients or want to use it as an AP or Client Bridge; this is not a problem. However, you are not able to use this device as a wired router with wired clients.

Flashing Instructions

Eko has made three new builds for this router. Build 11028 The file names are dd-wrt.v24-11028_Bv2000_NEWD_micro.bin, dd-wrt.v24-11028_Bv2000_NEWD_micro-plus.bin, and dd-wrt.v24-11028_Bv2000_NEWD_micro-plus_ssh.bin If you don't know what micro-plus is you should read this: Micro-plus

A v24 final SF build for this device is currently available here. The file name is dd-wrt.v24-9517_NEWD_SF_micro.bin

Flashing method is the same as other Belkin versions.

Enabling Wired Ports

After flashing, the router will only be accessible through wireless.

  1. Connect to the router over wireless. The default SSID is dd-wrt. You will be able to access the GUI at
  2. Telnet to In Windows type telnet in command prompt. The default username is root and password is admin
  3. Type the following commands:
nvram set Belkin_ver=2000
nvram commit

The default setting is for all the ports to act as LAN ports.

Setting Wired Ports to WAN

It is not possible to set only the WAN port to WAN due to the switch chip in this version. You may set all the ports to WAN after following the above instructions for enabling wired ports. In this mode, you cannot connect any other wired devices other than WAN. If you are going to use the device as an AP or Client Bridge, this step is not needed.

Connect to the router using wired or wireless and telnet to as explained above.

To use all ethernet ports as WAN, set

nvram set wan_to_lan=yes
nvram commit

To restore setting to LAN (default)

nvram unset wan_to_lan
nvram commit

Belkin F5D7230-4 v3000

This version needs to be flashed using build 10068 or later (micro version only). The flashing method is the same as other Belkin routers.

There have been reported problems about this router dropping the connection in Client Mode.

Mitsubishi R100 Gateway

The Mitsubishi R100 is a relabeled Asus WL500G that is only available in Australia. As such, you can use the Asus tools on the Mitsubishi product. The R100s are usually found at lower prices compared to the Asus product. They also come with a three year warranty. Obviously, flashing with a third-party firmware voids this warranty.

Asus WL500G (Original)

You will need:

  • A PC directly connect to one of the LAN ports of the router, via ethernet cable. (Unfortunately, it has to be a Windows based PC. I was unable to upload the firmware via tftp command. Maybe you'll have better luck with Linux). Note: Manually disable all installed NICs except the one you will use to connect to the router.
  • These two files: wl500g-clear-nvram.trx (filesize: 1,585,152 bytes) and wl500g-recover.trx (filesize: 3,690,496 bytes)
  • Asus Firmware Restoration Tool. This is found on the CD that comes with the router OR Asus Support website here. Its hidden in Utilities section and named Asus WL-500b/g wireless router utility program in English. Version (for the English version). The file is called (Use unzip app to decompress).
  • The file dd-wrt.v24_mini_asus.trx and later if you want dd-wrt.v24-9517_VINT_std.bin

This procedure was developed using the Mitsubishi R100 router with the standard variant of DD-WRT. It should be identical with the Asus WL500G (Original)

This process requires a bit of patience and persistance. The WL500G and the relabeled R100 are stubborn routers that need a bit of encouragement. Eventually, you will be successful with installing DD-WRT onto them.

  1. Set the PC to have a static IP address of, subnet: gateway: primary dns: Turn off your firewall.
  2. Before you plug the power connector in, press and hold the Restore or Reset button on the back.
  3. While holding the reset button, plug the power connector in.
  4. This causes it to go into Restore mode. This is indicated by the PWR LED flashing at regular intervals.
  5. Now use the Asus Firmware Restoration Tool and upload wl500g-clear-nvram.trx. Wait until upload is complete and it reboots. This is usually takes about 2 to 3 minutes.
  6. Once done, unplug the power connector. Wait for 30 seconds or so.
  7. Repeat steps 2 to 6, but upload wl500g-recover.trx instead.
  8. Now plug the power connector back into the router.
    • Try to ping the router from your PC. Open the DOS box (Goto Start -> run) add to command promt C:\.........> ping
    • If it responds, then you are ready to upload DD-WRT firmware. Proceed to step 9.
    • If not, then repeat steps 2 to 7 until it does.
    • If that fails, set the router in Restore mode (as mentioned in step 2 to 4), but install DD-WRT firmware. Then wipe it off by repeating steps 2 to 8. You must have it such that the router MUST respond to ping in Restore mode!
  9. Install dd-wrt.v24_mini Asus firmware using the Asus Firmware Restoration Tool. (The firmware file is called dd-wrt.v24_mini_asus.trx).
  10. Once done, wait for a few minutes until it reboots. This can be seen by the AIR LED flashing at regular periods.
  11. Now try pinging the router with DD-WRT firmware installed.
    • If it responds, continue to step 12.
    • If it does NOT respond to pings, repeat steps 2 to 11. Repeat until it responds with DD-WRT installed.
  12. Login in via web browser by entering and the default login is root, with the password admin
  13. Enjoy your R100 or WL500G with DD-WRT v24 mini! :D
  14. If you like you can flash the DD-WRT v24 vint over WebIF

Asus WL500G Deluxe

First, you need a firmware file. If you're not sure, use the dd-wrt.v23_asus.trx from [2].

There are three ways to upload DD-WRT on WL500G Deluxe:

  1. Web interface (easiest, use this if unsure)
  2. Asus recovery utility (Windows only)
  3. TFTP

Web interface

The easiest way. If you can connect to the router and administer it via its web interface, skip to point 5:

  1. Power up the router
  2. Connect via ethernet to one of the four LAN ports, or (untested) connect via wifi
  3. Obtain network settings via DHCP
  4. Point your browser of choice to (use the IP address of the gateway, obtained in the previous point)
  5. Go to System Setup > Firmware Upgrade
  6. Upload the firmware file using the form provided.
  7. Wait until the page reloads, now with the DD-WRT interface. (This might fail as the IP address/URL will be different - in that case wait 3-5 minutes, or until the router has rebooted).
  8. Congragulations, the DD-WRT install has been completed.

Asus recovery utility

You can get the utilities here, or you can browse the Asus site to download the latest version. Asus only seem to provide these for Windows.

In case you have multiple network interfaces and are unable to find you router, disable all but the one that is connected to your router.

  1. Remove the power connector of the WL500G.
  2. While holding the reset button, plug the power connector back in. (WL500gP - button labeled "restore")
  3. When the power LED flashes, release the reset button. The router now is in recovery mode.
  4. Wait for your PC to get an IP address (if dhcp is configured)
  5. Use the Asus recovery utility to upload the DD-WRT trx file.
  6. After the upgrade the router reboots and you should be able to access the web interface


SSD: For my new WL-500g Deluxe, the recovery utility would appear to successfully upload the firmware (v23), but then I could not get it to boot... even after waiting several minutes and power cycling. The unit would also be unresponsive to ping requests. I could always successfully reload the original Asus firmware. TFTP methods were unsuccessful altogether, as tftp never seemed to establish contact with the router. Finally, I was able to boot DD-WRT by first flashing with OpenWRT (White Russian rc4), then using OpenWRT's firmware upload page to flash with DD-WRT.

MopIC: I had very similar problem like SSD. Unfortunately, flashing in OpenWRT RC4 or any other software through Asus Restoration tool didn't help at all.
My router is Asus WL-500G PCB R2.40.
It acted as if it was constantly rebooting.
The solution came from website.

I had to do the following:
1. Set my IP address on PC's interface to (DHCP on Asus didn't work)
2. Unplug power cord from wl-500g.
3. Press and hold restore button and then insert power cord back into router.
3a. When the PWR light starts flashing, release Restore button.
3b. Now your wl-500g is in restore mode.
4. Run Asus Firmware Restoration (can be found on asus website or included CD)
5. Choose the wl500g-clear-nvram.trx file and upload it to the router. Wait 2-3 minutes after.
6. Unplug power and again enter restore mode (steps 2 and 3)
7. Choose the wl500g-recover.trx file and also upload it to your router. Wait 2-3 minutes
8. Unplug power and again enter Restore mode (steps 2 and 3)
9. Choose the firmware you wish to flash and upload. Wait 2-3 minutes. Reboot. I used DD-WRT v23 SP2 2006-1307 for Asus
10. Now it should be ok - enter and check if it is ok :-)
Hope it helps... for me it was couple hours to fix it...

LFR: Upgrade was done out of the box with .trx file & worked straight, no need for recovery mode
MrO: Does this also work on the WL-500g Premium? TTSherpa: Yes it does. No problen going back an forth the original FW & DD-WRT
DJ: While upgrading from SP1 to SP2, web GUI didn't work with .trx file. Renaming it to .bin worked. QBA: WL-500g premium - used the asus recovery tool (from to upload v23-sp2 (dd-wrt.v23_vpn_asus.trx) in recovery mode on original asus out of the box firmware - works like a charm :-)


The utility mentioned below might be the OpenWRT Flash utility, although the syntax is different.

posted by Evan Carrol sept 28, done with with WL-500gP:

I just wanted to drop in my advice, I did this whole thing without the Asus proprietary utils. I used Linux tftp. I had to use the aformentioned utils at, the only different thing I did was use TFTP. I went in the same order as the above but only gave my router 10 seconds between reboots: 1) flash - tftp wl500g-clear-nvram.trx
2) 10 seconds unplug,
3) flash - tftp wl500g-recover.trx
4) 10 seconds unplug,
5) flash - tftp dd-wrt.v23_asus.trx
6) 10 seconds unplug

Asus WL500G Premium

  • Same as Deluxe.
  • Recover from bad flash via Asus Firmware Restoration.
    • Brick recovery can involve shorting pins. Easy enough if one's hands don't shake, but you void the warranty.

DD-WRTv23 SP2 ok so far ...

Chickenboy: For brick recovery, you need to ground Pin 9 shown in this picture ... Warning *You'll void your warranty & if you don't know what you're doing, you can permanently kill your router. DO AT YOUR OWN RISK!

So far, I've uploaded faulty firmware 5 times and this technique has saved my router from being a paperweight.

Birdy: For a thorough explanation on how to recover your bricked Asus WL500g Premium or WL500g Deluxe, browse to:

    • Posted by Atreus on 12-24-07 on WL-500G Premium and DD-WRT v23 sp2 **

This router is VERY easy to flash, especially from a Linux box. Most of the information on this guide is aimed at Windows users, but these steps are specifically aimed at Linux users, providing an easy way to flash the router without the proprietary Asus flashing tool.

Note: This advice is assuming you are flashing the router from a Linux computer. Only flash on a wired connection.

cn0rris: Notes about installation on Mac OS X: These steps should work fine on any computer with a tftp client, and Mac OS X specifically. I just followed them on my Mac OS X computer, and they worked just fine.

cn0rris: Another Mac note: I don't know if this is particular to the WL-500G Premium, or the specific version of the software I am using (DD-WRT v24 RC6.2), but I found that I had to use FireFox rather than Safari. It would load the main page correctly, but as soon as I clicked on the Administration tab, it would fail. I presume there is a problem with HTTP Auth handling somewhere, that FireFox seems to handle correctly.

andrey: Thirs Mac note. Leopard (10.5 here).

  • Tftp-ed clear-nvram in 4s, like explained a bit later, waited 2min, switched off, 20s wait, switched on with restore button pressed.
  • The same procedure with the restore.trx (took 7-8s to upload)
  • The same procedure with :

[3] About 7s to upload.

  • After installing the mini_asus.trx, there is DD-WRT on the router. I decided to put the MEGA distribution (, as the device has a lot of memory and CPU, compared to my Linksys 54GL v1.1, which can't do Mega. ATTENTION: It took more than 6 Minutes to upload the Mega package. As usual dd-wrt's web interface counts down from 300 to 0. With my Linksys it takes about 60-70s to upload a vpn/voip/std package and then the router reboots. Such a package is about 3.6MB. The Mega package is 5.6MB large and I expected about twice the time, with no luck. I was a bit worried when DD-WRT counted to zero and then stopped counting, just the animations continued working. Tried to ssh with no success, the web server was working a bit - able to connect with telnet on Port 80, but after writing GET /^n^n, there was no output. Tried telnet-ting, and it WORKED. Did a top and it did show me that 99% CPU time is spent on writing an uploaded file to /tmp . So, I was a bit relieved. Soon the telnet connection went broke and the web interface changed to the page informing that the router is restarting. Restarted and booted in about 30s.


  • TFTP If you are on a Debian box, simply typing apt-get install tftp will do the trick.
  • wl500g-clear-nvram.trx
  • wl500g-recover.trx
  • The most recent stable release of DD-WRT from the downloads page. Make sure you use the firmware specifically compiled for the Asus router. Check the readme included with the files, but it should be called something like dd-wrt.v**_asus.trx

  • Step 1: Connect your computer via Ethernet cable to a LAN port on the router (I used LAN port 1)
  • Step 2: Unplug the power cord from the router
  • Step 3: Wait 20 seconds
  • Step 4: Press and hold the reset button on the back of the router. Note that the reset button is recessed and you need a pen or paper clip to press it in. The button protruding from the back is the EZ Setup, which is not what you want to press.
  • Step 5: While holding the reset button, plug the power cord into the router. Continue to hold the reset button until the power light starts flashing. Let go of the reset button
  • Step 6: Use tftp to transfer wl500g-clear-nvram.trx to the router. The commands are as follows:

user@box:$ tftp

> mode binary

> put wl500g-clear-nvram.trx

  • Step 7: Tftp should report a successful file transfer in 7-15 seconds. Wait 2-3 minutes after that before unplugging the router
  • Step 8: Unplug the router, wait 20 seconds. Hold the reset button and plug the power cord into the router, continuing to hold the reset button until the power light flashes. Release the reset button.
  • Step 9: Use tftp to transfer wl500g-recover.trx to the router. Same method as above, just change the file name. Wait 2-3 minutes after tftp reports a successful file transfer before unplugging the router.
  • Step 10: Unplug the router, wait 20 seconds. Hold the reset button and plug the power cord into the router, continuing to hold the reset button until the power light flashes. Release the reset button.
  • Step 11: Use tftp to transfer the DD-WRT firmware to the router. MAKE SURE YOU USE THE CORRECT FILE. It should be be called something like dd-wrt.v**_asus.trx Do not upload a .bin file.
  • Step 12: Wait 2-3 minutes after tftp reports a successful file transfer before unplugging the router. Unplug the power cord from the router, wait 20 seconds, and plug the power cord back into the router.

The router should now boot to DD-WRT firmware. Go to to confirm. You may need to power cycle your cable modem (if applicable) to get an internet connection.

Notes: You may need to manually specify your computers IP address (in order to use tftp to upload the files) if for some reason DHCP is not working. I did not need to do this, but if you cannot establish a connection to the router try the following settings:





tigerbinz: I tried all the ways for Asus WL500G Deluxe, web interface and Asus recovery utility can not work for me, my router is Asus WL500Gp v1(FCC ID: MSQWL500GP), then I tried tftp with windows xp. The above comments are very useful. I set as my PC's IP address, in windows XP, just use tftp like this:

Asus WL500G Premium V2

deptrai notes:
  1. The factory firmware's web-interface has a "Firmware Upgrade" option, but it will only accept Asus firmware images (mine came with and I tried upgrading it to, but neither would flash the dd-wrt image).
  2. Flashing is very easy using TFTP:
    1. Power the router on and then off
    2. While holding the black restore button depressed, power the router up (then release the button after the power LED flashes).
    3. Attach your computer's NIC to one of the LAN ports, and config the computer's interface to any IP address on (other than
    4. TFTP the dd-wrt image to
    5. Wait a short time...
    6. Power-cycle it and it should boot up into dd-wrt (mine did anyhow)

Deptrai 17:42, 9 October 2008 (CEST)


Steps I did under Win XP:

1. Connect to router through UTP cable (LAN Connection) and disable all other network connection except this one 2. Set manual ip on LAN and disable windows firewall:

ip: subnet: gateway: primary dns:

3. Remove power cord from router

4. While keeping pressed the "restore" button, put power cord in

5. Wait for power led to start flashing

6. Stop pressing restore button

7. Open Asus Firmware Restoration

8. Load up dd-wrt v24 standard latest firmware for wl500g premium

9. Press Upload

10. Wait for process to complete, router to boot, and to work

11. Power off and then back on router

Worked perfectly.


2008-08-15 "illuminant"

Setting up the Asus WL-500G Premium V2 with Windows Vista

   DD-WRT reports:
   Asus WL-500G Premium V2
   CPU Model: Broadcom BCM5354 chip rev 2 
   CPU Clock: 240 MHz
   Total Available    89%    29288 kB / 32768 kB 
   Free    52%    15164 kB / 29288 kB 
   Used    48%    14124 kB / 29288 kB 

1. Connect the router to the PC with a normal ethernet cable (used LAN-1 ethernet port on the router)

2. Disable all network interfaces except for the ethernet.

3. On the PC, the ethernet network settings (TCP/IP v4) were:

   IP address:
   Subnet mask:
   Default gateway:

4. Disable Windows Firewall

5. Starte the router with the restore button depressed. After several seconds the router started to flash the power LED once per second, indicating readiness. Take finger off the button.

6. Starte Asus Firmware Recovery as Adminstrator; confirmed Administrator privileges.

7. In Firmware Recovery app, navigated to DD-WRT v24-SP1 generic-mega (filename dd-wrt.v24_mega_generic.bin) and hit Upload

8. For me, Firmware app found the router in approx 3 seconds, uploaded in approx 30 seconds, reconfigured itself in approx 30 seconds, then advised to wait for reboot. Firmware app remained with "wait for reboot" indefinitely, even after router had fully rebooted.

9. Quit the Firmware app.

10. Open IE and navigate to DD-WRT answers immediately.

11. Configure DD-WRT according to your network needs.

   (i) Initial attempts at running the Firmware Recovery app failed until after I had disabled Windows Firewall and then ran the app as Administrator.
   (ii) Firefox 3.0.1 did not allow *any* settings to be saved, hence the attempt with IE, which worked perfectly.
   (iii) On setup of the router, a very long password looked like it wasn't being entered into the fields (bullets were not visibly advancing beyond the extents of the fields) but the very long password worked fine.


Asus WL500W


Windows instructions

  • Same basic procedure as Deluxe (Asus WL500G Deluxe).
  • Requires v24 RC3 or later


  • laptop
  • RJ45 cable in box
  • Downloaded all the images and instructions (tested images are listed):
    *  wl500g-clear-nvram.trx
    *  wl500g-recover.trx
    *  Mini-Asus.trx dd-wrt.v24-11296_NEWD_mini_asus.trx
    *  A copy of  dd-wrt.v24-11296_NEWD_mega.bin 
    * tftp client (e.g.  tftpd32 Tfpd32-3.28-setup.exe)


1. Install the tftp server on laptop Asus WL-500W
2. Connect laptop to LAN port 1 with RJ45 cable
3. Boot the router.
4. Verify that DHCP works:

1. Change wired NIC to manual TCP/IP setting on the laptop: and for a mask (DHCP address may be lost after a reset of the routers in recovery mode).
2. Make sure you can connect or see the router

3. (30/30/30) -Press Restore button hold for 30 seconds, unplug router still holding Restore button for 30 seconds, plug router back in still holding Restore button a final 30 seconds...continue to next step
4. Unplug power cord from the router
Press and hold restore button (not the setup button) and then insert power cord back into router.

    When the PWR light starts flashing, release Restore button.
    Now, the router is in restore mode.

5. Now clear the nvram of the router by tftping the clear-nvram.trx file
6. Wait 2-3 minutes afterwards before rebooting.
7. Perform 30/30/30 again (step 3)
8. Unplug power and again enter Restore mode (step 4 go to next step)
9. Select the reconfiguration firmware for the router (link wl500g-recover.trx ) from tftp and perform a put Image:wl500_tftp.png

Yes, use the wl500g images or trx files for this.

10. Wait 2-3 minutes afterwards before rebooting.
11. Perform 30/30/30 again (step 3)
12. Unplug power and again enter Restore mode (step 4), this time tftp your mini_asus.trx image .
13. Perform 30/30/30 again (step 3)
14. Power cycle router again then access router at and use the web gui to update, this time load your mega.bin image...wait 2-3 minutes for it to reboot.
15. Perform a final 30/30/30, then power cycle the router after the last 30 seconds.
16. See if you are you able to connect to the router Logon to DD-WRT web interface with root/admin.
17. Voilà! Done. Reset your laptop's ethernet NIC to DHCP or automatically detect IP addres.

Changes by --Jbriner 07:07, 25 September 2008 (CEST)
Additonal changes Redhawk0 05 March 2009


Recover from bad flash via Asus Firmware Restoration.

Why would I use this router? I found Linksys 54GS/L were much easier to use and install. Cannot uprgrade the antennas without destroying the case.

- But the WL500W is still relatively cheap (under US$100 - Apr08, $79 - Sep08), with 8M flash so you have a 4M jffs partition.
- To use the USB storage, after mounting jffs/cleanfs, follow instruction USB_storage. I got my 4G usb-key to work easily

How to Install DD-WRT onto an Asus WL-500W using Ubuntu Linux

This was tested using Ubuntu 8.04 (Hardy Heron) and DD-WRT v24sp1, and a brand new, off-the-shelf Asus WL-500W. You can do the same thing from other linuxes, adopting as appropriate. You can presumably also do this from windows, using tftp (not tested).

This is essentially the same as the linux instructions under Asus WL-500G Deluxe.

Note: Even if you have windows or some other operating system installed, you can still use these instructions. Create an Ubuntu live-cd, boot up into the live-cd (which will make no permanent changes to your computer), and use these instructions.

Download files and software

First, install tftp:

sudo apt-get install tftp

Now, download each file you'll need:

  • wl500g-clear-nvram.trx
  • wl500g-recover.trx
  • temporary asus DD-WRT firmware, which must have asus.trx in the file name. For example, I used dd-wrt.v24_mini_asus.trx. Use the most recent version.
  • final firmware image. For example, I used dd-wrt.v24_std_generic.bin. Use the most recent version.

Also, print out a copy of these instructions, because you won't have access to the internet from here on out.

Set up networking

Regardless of which os you use, or the method you use to set the ip address, these are the settings you need:

  • set the (Static) IP address to
  • set Subnet mask to
  • set Gateway address to

Use one of the following methods ("A" or "B"), depending on whether you are using Ubuntu 8.04 (Hardy) or a later version (Intrepid or Jaunty).

A (For Ubuntu 8.04 Hardy): Turn off wireless networking. On Ubuntu, right-click on the networking icon in the upper right of the screen and uncheck "Enable Wireless."

Set wired networking to a static address of On Ubuntu, left-click on the networking icon in the upper right of the screen and choose "Manual Configuration." Click "Unlock" and enter your password. Click on "Wired Connection," then "Properties." Uncheck the "Enable roaming mode" box. Under "Configuration," choose "Static IP address." Set "IP address" to Set "Subnet mask" to Set "Gateway address" to

Connect an ethernet cable between the WL-500W and your computer.

B (for Ubuntu 8.10 Intrepid or 9.04 Jaunty): Disable Networking in the GUI. On Ubuntu, right-click on the networking icon in the upper right of the screen and uncheck "Enable Networking."

Set your wired networking to static address with the following command, ensuring 'ethx' is replaced with the interface name of your wired network interface.

sudo ifconfig ethx netmask up

Connect an ethernet cable between the WL-500W and your computer.

Hard Reset

Do a Hard Reset as follows:

  • Unplug the router's power cord.
  • Wait 20 seconds.
  • Using a paperclip or similar object, press and hold the "RESTORE" button on the back of the router
  • While continuing to press the RESTORE button, plug the router back in.
  • Wait until the power light on the front of the router starts flashing, then release the RESTORE button.

Wait about 30 seconds, then confirm that you are now connected to the router:


You should see a series of lines something like this (the numbers will be different, of course):

64 bytes from icmp_seq=1 ttl=64 time=0.752 ms

Exit from ping by hitting <ctrl>c.

Clear nvram

Open a terminal window and cd to the directory where you downloaded the files. For example, if you saved to the Desktop:

cd Desktop

Now use tftp to transfer wl500g-clear-nvram.trx to the router:

tftp> mode binary
tftp> put wl500g-clear-nvram.trx

tftp should report a successful transfer in 10 seconds or so.

Wait 2-3 minutes.

Transfer wl500g-recover.trx

Do a Hard Reset as described above, then confirm you are connected to the router using ping as described above.

Now use tftp to transfer wl500g-recover.trx to the router:

tftp> mode binary
tftp> put wl500g-recover.trx

Again, tftp should report a successful transfer in 10 seconds or so.

Wait 2-3 minutes.

Transfer the temporary Asus dd-wrt firmware

Do a Hard Reset as described above, then confirm you are connected to the router using ping as described above.

Now use tftp to transfer the temporary asus dd-wrt firmware to the router:

tftp> mode binary
tftp> put dd-wrt.v24_mini_asus.trx

Make sure you use the asus.trx file here, and not the bin file.

Once again, tftp should report a successful transfer.

Wait 2-3 minutes.

Use the temporary Asus dd-wrt firmware to upload the final version of the firmware

Reboot the router by unplugging, waiting 20-30 seconds, then plugging back in.

Wait until router responds to ping as described above.

Confirm that dd-wrt is loaded by opening a browser and going to

Now, you can upload the final version of dd-wrt by going to the Administration Tab and the Firmware Upload Subtab. Note that it will take a long time - 5 minutes or so - to upload the final version.

Final steps

After you have successfully uploaded the final version of dd-wrt and rebooted, do one final power cycle and you should be good to go. You may need to power-cycle your cable or dsl modem to obtain an internet connection.

Finally, reset your computer to automatically detect the IP address. On Ubuntu, left-click on the networking icon in the upper right of the screen and choose "Manual Configuration." Click "Unlock" and enter your password. Click on "Wired Connection," then "Properties." Check the "Enable roaming mode" box.

Asus WL550gE

  • Same as Deluxe.
  • Recover from bad flash via Asus Firmware Restoration.
    • Brick recovery can involve shorting pins. Easy enough if one's hands don't shake, but you void the warranty.

DD-WRTv23 SP2 ok so far ... Does USB ports still working after instalation?

Asus WL520G

  • Simply upload dd-wrt.v24_micro_generic.bin through the web interface of the original Asus firmware.

Asus WL520GC

  • Same as Deluxe, but DO NOT flash the clear_nvram or recover files - it will brick your router. Only flash the firmware file itself and then do a reset to factory settings via web gui.
  • I used a static IP address on my PC because DHCP seemed to slow down the router.
  • dd-wrt.v24_micro_generic works just fine.
  • No problems so far using it as a client bridge (Xbox), router is nothing special, but it is possibly the cheapest wireless device around here, so makes for a good budget wireless device once flashed.
  • Using web-based firmware update (rename .bin to .trx)
  • Web interface from ASUS Firmware and newer doesn't allow to upload DD-WRT firmware, it reports corrupted file. You have to downgrade to ASUS firmware in order to flash DD-WRT firmware.
  • There also could be unable to downgrade to ASUS firmware from newer version through web interface, easily soulution could be rename in order to flash DD-WRT firmware. Easy solution could be to rename a old firmware file (up to for example to "newer" WL520gc_2.0.1.2_EN.trx
  • Uploading via TFTP sometimes does not reset the router. Wait for 10-15 minutes and then power it down and up manually.

[Added by zorruno 11 Sep 2008]

  • confirmed with new WL-520GC out of box, using web interface only
  • needed first to downgrade ASUS firmware to (here) using the method above by renaming it to WL520gc_2.0.1.1_EN.trx (version was in the router originally)
  • don't worry about looking for a .trx file for the next step, dd-wrt.v24_micro_generic.bin is fine (here). Did not need to rename this file as .trx, it uploaded fine with the .bin suffix.

[artemv, 16 Nov 2008]

  • needed to hard-reset the router after downgrading to (from to be able to load dd-wrt.v24_micro_generic

[kyxap, 11 Feb 2008]

  • With last stable dd-wrt firmware (v24SP1 build 1020) dhcp doesn't work with my WL520GC. This one is extended version of dd-wrt with SSH-support (unofficial build, but works perfect for me).

Asus WL520GU


Wiki hardware page and guide: WL-520GU

  • Same as Deluxe.

- Tools: ASUS utility version (Run as Administrator in Vista)
- Firmware that I use: DD-WRT v24 RC6.2 (dd-wrt.v24_std_generic.bin)
download from candidates/DD-WRT v24 RC6.2/Broadcom/Asus/WL520GU

 1. Power off the WL520GU.
 2. Press & hold the reset button, then power on. (make sure your Ethernet is plugged into lan1 slot on router)
 3. When the power LED flashes, release the reset button. The router now is in recovery mode.
 4. Wait for your PC to get an IP address (if dhcp is configured).
 5. Use the Asus utility (Firmware Restoration) to upload the DD-WRT file (dd-wrt.v24_std_generic.bin) & wait.
 6. After the upgrade the router reboots and the LED lights become normal.
 7. Done!

Router Default IP:
name: root
pass: admin


The above did not work for me as the Firmware Restoration utility could not connect to the router no matter what I tried. When in the recovery mode the router was accessible (pingable) for only the first few seconds and than it would just time out. The Firmware Restoration utility simply would not see the router even after many attempts to get it to connect to the router during those first few seconds. Finally, I gave up on the utility and was able to upload the firmware at the first attempt by using TFTP from my (Windows) laptop instead:

 1. Download firmware (I used dd-wrt.v24_std_generic.bin)
 2. Set the IP on your computer to (gateway is
 3. Open command prompt and type:
        tftp -i put "<path to your firmware file>" 
     but do not hit Enter yet
 4. Power off the WL520GU
 5. Press & hold the restore button, then power on
 6. When the power LED flashes, release the reset button
 7. Hit Enter in your command prompt window (step 3) within a few seconds of releasing the restore button
 8. The transfer takes only a few seconds but give the router a minute or so to reboot (just to be sure)
 9. Unplug the router, wait at least 10-15 seconds, then plug it back in

Use the login credentials listed above

redhawk: (10/31/08)

I also could not get the firmware (.trx file) to flash using the Asus Restoration tool. I used the tftp.exe utility to flash the unit.

 1. Download firmware 
 2. Set the IP on your computer to and for a mask. (no GW needed)
 3. Open tftp and configure with for an IP, leave password blank, select the asus.trx build of    
 4. Power off the WL520GU
 5. Press & hold the restore button, then power on
 6. When the power LED flashes, release the reset button
 7. Hit Update in the tftp tool.
 8. The transfer takes only a few seconds but give the router another 2 minutes.  Mine did not reboot.
 9. Unplug the router, wait at least 10-15 seconds, then plug it back in


If you are using Microsoft Vista with the ASUS Firmware Restoration Utility, then this utility must be run with Administrator privileges (right click and chose Run as Administrator). Failure to do so will result in the Utility not being able to find the ASUS router.

Kentlaw: (11/30/08)

- Tools: ASUS WL-520gU wireless router utility program. Version - Firmware that I use: dd-wrt.v24_vpn_generic.bin
download from

 1. Power off the WL520GU.
 2. Press & hold the reset button, then power on.
 3. When the power LED flashes, release the reset button. The router now is in recovery mode.
 4. Set the IP on your computer to and for a mask. (no GW needed)
 5. Use the ASUS WL-520gU wireless router utility program. Version (Firmware Restoration) to upload the DD-WRT file (dd-wrt.v24_vpn_generic.bin) & wait.
 6. After the upgrade the router reboots and the LED lights become normal.
 7. Done!

Router Default IP:
name: root
pass: admin

________________________ Conspiritech: None of these worked for me. What I finally wound up doing was holding the reset button through the entire upload/flash process. I have had good luck on both these and linksys wrt54GS/GL with this tool: >router tools> use "firmware upgrade utility" [this is graphical and pretty self explanatory]

i tried tftp, fail, web interface, even though i wasnt supposed to, fail (transient brick) and the asus tool and this tool, with the recovery mode/ release button on powerup method.

so specifically here we go: file used: dd-wrt.v24_std_generic.bin (.bin not showing up in windows... i think i did put it in at the utility set up screen, though)

1. unplug router, plug in ethernet, hold reset button 2. plug in router, continue holding button 3. send file with the tools mentioned 4. file transfer is 1 second, and then the utility says it is checking router activity for like five minutes... keep holding the button... it then says it failed to find router activity 5. release button, allow router to settle, unplug, wait a bit, plug in 6. the web gui is accessible 7. reset to factory defaults with web gui, linksys wrt54gs/gl and netgear wgr614l.v8 ( both crash or get weird, in the web gui if you do not reset after flashing. this is recoverable with more defaulting, resetting, and rebooting though. this one probably will do that too 8. ready

use "recovering from a bad flash" (procedure 1) to reset defaults i think. cant quite remember if i did this, or if the process is compatible, but try it. but it recovers 90% of linksys "bricks" and 1 netgear device

router: (uname: admin password: admin) PC: (ip 192.168.1.x subnet mask

Conspiritech update, second device, different, but works.

On second device (first one is fully functioning with much better coverage than prior type) a different process worked. I tried doing the same thing, but the firmware upgrade utility window dissapeared when I clicked send as it often has in attempts to reanimate other models. (BEFORE SENDING)I pressed the reset button, plugged the power in, and clicked send. When the window dissapeared, I released the butto after a moment of indecision. The router was left with the LAN1 light on and the power light blinking regularly and slowly. I left it like this and reopened the firmware upgrade utility, filled it out and hit send again (never pushed the reset button back in). This time the power light went off and the LAN1 light rapidly flashed and the file transferred, but took 10-20 seconds. The LAN1 light went more steady and the "searching for router activity window" came up, for 5 or more minutes, and the bar went all the way across. "Waiting for router response timeout" message appeared again. Waited. Unplugged. Plugged in. Lights returned to normal. Web GUI is accessible. Had to restart Internet Explorer and have no other tabs open to reset factory defaults (required to stabilize dd-wrt after flash BEFORE ANY OTHER SETTINGS (don't know why)) and reboot from GUI (also recommended for stability). Unplug router, wait, plug back in, reload web page (also recommended for stability). Now you may make whatever changes you want. You are ready to go.

On click download and follow dd-wrt.v24/Broadcom/Asus/WL520GU then get dd-wrt.v24_std_generic.bin for the upload, but I think this is the same as the other files of that name and not device specific.

Perhaps this is the same process that others have written about, but it didn't work for me that way the first time. Perhaps this more detailed account will be helpful to those who are less experienced.

Microsoft MN700

  • See MN-700 Page - summary of steps include:
    • Similar to Asus Deluxe.
    • First perform MN-700 hack to enable Linux based firmware to be installed.
    • Install DD-WRT firmware using Asus Recovery Utility in recovery mode
    • Clear filter_services variables if necessary (SP2 and earlier)

v23 SP2 and earlier work but require filter_service nvram variables to be cleared and reset button does not work.
Full support in SVN 3949+ (you can get SVN 3953 here)

Siemens SE505

DD-WRT v23 (starting from 27/10/05 version) does now officially support the Siemens Gigaset SE505 router. That means you can use the very latest features like WPA2 on this unit too. Due the limited RAM of this unit, you cannot use all features at the same time, but from the base it is much better than the original firmware for this router.

Flash Your Siemens SE505

Related Links

Motorola WR850G

See Flash Your Motorola WR850G

Mikrotik Routerboard RB/532

Mikrotik Routerboard RB/532 is supported starting with DD-WRT v23 SP1. See Mikrotik Routerboard RB/532.


See LaFonera_Software_Flashing Page.

Ubiquiti Litestation 2 (LS2/LS5/PS2/PS5/NS2/NS5/LSX)

Upgrading Ubiquiti LS2 to DD-WRT v24 (the same procedure works for other Ubiquiti products as well, just the files and filenames are different)


   * Direct ethernet cable connection between PC and LiteStation
   * Network settings of PC:
   * TFTP client on PC
   * LiteStation firmware file (e.g. LS2.dd-wrt.bin for LiteStation2)

Flashing procedure:

   1. Please ensure that the latest firmware revision of Ubiquiti is already installed using the web upgrade utility (e.g.V 2.1.9)
      If not, please reflash it using the Ubiquiti LS2 Web interface. This is important to ensure that the latest RedBoot Bootloader
      is installed.
   2. power off the device and power it on again while holding the reset button for about ~10 seconds
   3. flash LS2.dd-wrt.bin using tftp to in binary mode

windows  : tftp -i put LS2.dd-wrt.bin linux/unix/macosx: tftp

                          tftp> bin
                          tftp> put LS5.dd-wrt.bin
                          tftp> exit
   4. after successfully flashing the unit will be accessible with web on

Accton MR3202A

See LaFonera_Software_Flashing Page. (use only the MR3202A binaries provided, instead of the Fonera ones)

Accton MR3201A

See Accton_Software_Flashing Page. (use Fonera binaries)

Gateworks Avila Network Processor GW2348

Please note: The details in these instructions apply specifically to the GW2348-4 board.

If you are using a GW2348-2 or GW2347 there are subtle but important differences in the flashing commands you must use. See the

file FLASHING.TXT for details.

The Gateworks GW234x series Network Processor boards provide an excellent platform for building high performance wireless networks using DD-WRT firmware. They are well built, flexible, and relatively much lower in cost than most commercial alternatives.

For more information see: Avila Gateworks GW234x

Installing DD-WRT on the GW2348 board is relatively simple. To install the firmware you will need the following tools:

  • Computer (I use a laptop with wireless internet connectivity as well as an ethernet port)
  • DC power supply (12 to 24 V, 1 A)
  • Coaxial power plug (2.5 mm x 5.5 mm available from Radio Shack)
  • 9 pin serial cable
  • Ethernet cable

Before you begin you will need to download and install some tools unless you already have them. If you don't already have one, download a TFTP server for your computer. I use TFTPD32 which is free and works quite well. You will also need a terminal program to communicate with the GW2348 over its serial port. I use Hyperterminal which comes with Windows XP but you can use another if you wish. What is important is that you configure it with the following settings:

  • Speed: 115200 Baud
  • Parity: None
  • Data Bits: 8
  • Stop Bits: 1
  • Flow Control: None


You will also need to download a copy of the firmware from the DD-WRT Downloads section of the website. The firmware is (as of this writing) located under the beta subsection in a directory called AVILA GATEWORKS. The first file you should get is flashing.txt which describes, albeit in very abbreviated terms, the essential information required to complete the process of flashing DD-WRT firmware onto the GW2348 board. Next, choose the build that you are comfortable with (generally the most recent) and download root.fs and zimage. These two files should be saved in the TFTP Root directory you created when you installed TFTPD32. For the purposes of these instructions you will not need to download the file gateworx-firmware-squashfs.bin as we won't be using it. While you are on the DD-WRT website, visit the online store and purchase an activation key for the GATEWORKS firmware.

When all the files have been downloaded and installed as needed in the computer it is time to set up the computer to connect to the GW2348 board. Plug the serial cable between the serial port on the computer and the serial port on the GW2348. Connect the ethernet cable between the ethernet port on the computer and the eth0 port on the GW2348. The eth0 port is the one closest to the power connector on the GW2348. Next, open the Windows control panel and go into the network connections page. Select the local area connection item that corresponds to the ethernet adapter you connected to the GW2348. Manually configure the TCP/IP settings of this ethernet adapter as follows:

  • Manually Specified Address (no DHCP)

Remove any reference to a GATEWAY address as well as references to DNS servers on this adapter's configuration.

You are now ready to power up the GW2348 for the first time. To do this you will need to connect your 24 volt DC power supply to the coaxial power connector so that the negative (-) terminal of the supply is connected to the outer sleeve of the connector and the Positive (+) terminal is connected to the center conductor. Remember to start up Hyperterminal (or your terminal package of choice) with the settings shown in the image above. Plug in the power to the GW2348 and turn on the power supply. If no smoke comes from the board the ethernet port lights should flicker and then come on. At about the same time Windows should report that the Ethernet port is connected at 100 Mb/s and text should start to appear on the Hyperterminal screen looking something like this:

+No devices on IDE controller 0

Trying NPE-B...success. Using NPE-B with PHY 0.
Ethernet eth0: MAC address 00:d0:12:xx:xx:xx
IP:, Gateway:
Default server:

RedBoot(tm) bootstrap and debug environment [ROM]
Gateworks certified release, version 2.02 - built 05:22:19, Mar  3 2006

Platform: Gateworks Avila GW234X (IXP42X 533MHz) BE
Copyright (C) 2000, 2001, 2002, 2003, 2004 Red Hat, Inc.
Copyright (C) 2004, 2005 Gateworks Corporation

RAM: 0x00000000-0x04000000, [0x000298b0-0x03fc1000] available
FLASH: 0x50000000 - 0x51000000, 128 blocks of 0x00020000 bytes each.
== Executing boot script in 2.500 seconds - enter ^C to abort

After a couple of seconds (2 and 1/2 to be exact) the text will continue scrolling by. When it is finished open a web browser and type in the URL This should give you a basic web page from the embedded copy of Linux that is running on the GW2348. If you have gotten this far you have a working GW2348 and are ready to flash in a copy of DD-WRT. be sure to start up the TFTPd32 program with both the root.fs and zimage files in the tftpd root directory. Remember to set the TFTP server address to This is easiest to do while the GW2348 is still turned on and the ethernet port is active. Image:Gw2348-4 firstboot tools3.png Unplug the power (or switch off the supply) to the GW2348 and then make sure that the Hyperterminal program is running. Also bring up a text editor such as "Notepad" and open the flashing.txt file you downloaded from the DD-WRT website when you were downloading the DD-WRT image files. You will be referring to this file during the next phase of the process and will probably be copying and pasting lines from it into the Hyperterminal window since this will save a lot of tedious typing and will likely reduce thechances of making an unfortunate error.

It's time to begin the flashing process in earnest now. Here goes nothing... Plug in the GW2348 power supply while watching the Hyperterminal Window. When you see the line:

== Executing boot script in 2.500 seconds - enter ^C to abort

you have 2 and one half seconds to hit CTRL-C. When you do you should see a prompt that looks like this:


At this prompt enter the line:

fis init -f

The GW2348 will respond with:

About to initialize [format] FLASH image system - continue (y/n)?

As long as you are ready to continue enter a Y to get the following response:

*** Initialize FLASH Image System
... Erase from 0x50080000-0x50fe0000: ...............................
... Unlock from 0x50fe0000-0x51000000: .
... Erase from 0x50fe0000-0x51000000: .
... Program from 0x03fe0000-0x04000000 at 0x50fe0000: .
... Lock from 0x50fe0000-0x51000000: .

Enter the following line: (you may want to refer to the flashing.txt file for this and subsequent lines to enter since they could change in future builds)

load -r -v -b 0x00800000 zImage

At this point you will find out for sure if your TFTP server is working correctly. If it isn't you will get something like this:

Using default protocol (TFTP)
__udp_sendto: Can't find address of server
Can't load 'zImage': some sort of network error

When I got this message it was because I had forgotten to set my TFTP server to use as its address so it was not seeing the TFTP request coming from the GW2348. I changed the setting and then the reply coming from the GW2348 looked like this:

Using default protocol (TFTP)
Raw file loaded 0x00800000-0x00967c93, assumed entry at 0x00800000

This took several seconds as the zimage file was downloaded to the Gateworks board from my computer. After this completes execute the following command:

fis create -b 0x00800000 -f 0x050080000 -l 0x00200000 -r 0x00800000 linux

The response should look like this:

... Erase from 0x50080000-0x50280000: ................
... Program from 0x00800000-0x00a00000 at 0x50080000: ................
... Unlock from 0x50fe0000-0x51000000: .
... Erase from 0x50fe0000-0x51000000: .
... Program from 0x03fe0000-0x04000000 at 0x50fe0000: .
... Lock from 0x50fe0000-0x51000000: .

Then enter this command:

fis create -n linux

You will get a caution message:

An image named 'linux' exists - continue (y/n)? y
* CAUTION * about to program 'linux'
at 0x50080000..0x501e7c93 from 0x00800000 - continue (y/n)? y

The message repeats twice since this is when you are actually overwriting the original version of Linux installed on the board. They really want you to be sure and it is wise to reread your command line to be sure that you aren't doing something stupid... but forge ahead... The GW2348 will respond:

... Unlock from 0x50fe0000-0x51000000: .
... Erase from 0x50fe0000-0x51000000: .
... Program from 0x03fe0000-0x04000000 at 0x50fe0000: .
... Lock from 0x50fe0000-0x51000000: .

Now it is time to TFTP in the second file (root.fs):

load -r -v -b 0x00800000 root.fs

If all is working well the response should look something like this:

Using default protocol (TFTP)
Raw file loaded 0x00800000-0x00d13fff, assumed entry at 0x00800000

When the loading of the root filesystem is complete (it will take a few seconds because it is a large file) you will create several files The first looks like this:

fis create -b 0x00800000 -f 0x050280000 -l 0x00D20000 ramdisk

The response from the GW2348 will look like:

... Erase from 0x50280000-0x50fa0000: ...............................
... Program from 0x00800000-0x01520000 at 0x50280000: ...............
... Unlock from 0x50fe0000-0x51000000: .
... Erase from 0x50fe0000-0x51000000: .
... Program from 0x03fe0000-0x04000000 at 0x50fe0000: .
... Lock from 0x50fe0000-0x51000000: .

Programming this block of the flash memory takes quite a while because it is a very large file. You will now do two more similar commands that will execute in exactly the same way but will finish much faster. They are:

 fis create -b 0x00800000 -f 0x050FA0000 -l 0x00020000 mampf


fis create -b 0x00800000 -f 0x050FC0000 -l 0x00020000 nvram

When these are done we will run the fconfig utility at the RedBoot> prompt. The GW2348's output is shown in regular type. Your entries are shown in italic:

RedBoot> fconfig
Run script at boot: true
Boot script: 
.. fis load ramdisk
.. fis load zimage
.. exec
Enter script, terminate with empty line
>> fis load linux
>> exec
Boot script timeout (100ms resolution): 25
Use BOOTP for network configuration: false
Gateway IP address: 
Local IP address:
Local IP address mask:
Default server IP address:
Console baud rate: 115200
GDB connection port: 9000
Force console for special debug messages: false
Network debug at boot time: false
Default network device: npe_eth0
Update RedBoot non-volatile configuration - continue (y/n)? y
... Unlock from 0x50fe0000-0x51000000: .
... Erase from 0x50fe0000-0x51000000: .
... Program from 0x03fe0000-0x04000000 at 0x50fe0000: .
... Lock from 0x50fe0000-0x51000000: .

Many of these values will be automatically filled in. You only need to backspace and edit to change them. Otherwise you can simply hit enter for the next line. when the computer pauses on a blank line that needs to remain blank such as the gateway address just hit enter to proceed to the next line. When you have finished and are at the RedBoot> prompt you are ready to reboot the GW2348. Before you do this you will need to make a few changes in your computer configuration. First, shut down the TFTP server. You won't be needing it. Then open the control panel and go back to the network connections page and change your IP address on the ethernet adapter from to Now, start up a web browser and type in the URL but don't hit enter just yet... Unplug the power to the GW2348 and repower it. Wait about 30-45 seconds then hit enter on the web browser. You should get a page that looks a lot like the one shown below:

Image:Gw2348-4 firstboot registration 1.png

If you have gotten this far successfully you have done the hard part. All that remains is to register the board using the web based registration server at DD-WRT. It might be a good time now to copy that big system key that is on the web page to the clipboard. After doing that, start up a second browser (here is where having that wireless internet connectivity comes in handy) and browse back to the DD-WRT website and go to the DD-WRT shop where you will need to log in with the email address and password you used when you bought your activation key. When you go to My Account you will see a link to the Activation Center at the bottom of the page. click on it and you will be taken to a page where you can paste in that hairy long system key from the clipboard and generate an activation key that you can take back to the first browser and paste into the available space as shown below:

Image:Gw2348-4 firstboot registration 3.png

When you press the activate button the board will reboot and you may have to restart your browser to get it to display properly but you should get the familiar DD-WRT main screen. The username and password are "root" and "admin" just like other DD-WRT versions. You can now power down the board and install up to four mini-PCI radio cards and start to have fun. Remember though that if you are using high power cards you will need a power supply with adequate voltage and current.

D-Link DIR-400

In order to flash your router you need to do the following steps:

  • Download TFTPserver it can be downloaded from here
  • Download firmware it can be downloaded 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 and subnet mask to
  • Connect an ethernet cable between your computer and DIR-400’s WAN port
  • Prepare Putty telnet session -- port 9000
  • Start pinging your router throught a command line. Type ping -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

Type ip_address -l -h and press Enter

You should see the following:

RedBoot> ip_address -l -h
IP:, Gateway:
Default server:

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: ........................................................
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: 

press Enter

Local IP address mask:

press Enter

Default server IP address: 

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 and subnet mask to

Your router will be accessible at