How to Flash the WRT54GL with DD-WRT Firmware

**DISCLAIMER** The following instructions are provided without warranty of any kind. Flashing firmware does not come without risk. I will not be held responsible for any resulting equipment failure or otherwise undesirable results. Proceed at your own risk.

This tutorial explains how I successfully flashed my Linksys WRT54GL version 1.1 with the open source dd-wrt version 23 SP2 VPN firmware (generic). If you happen to have Linksys WRT54GL version 1 rather than 1.1 (you can tell by the serial number prefix of CL7A for version 1.0 and CL7B for version 1.1 per the Wikipedia entry and dd-wrt Wiki), you may have to follow slightly different instructions. The main difference is that you will need to flash to a smaller version of the dd-wrt firmware (the mini version) first due to a flash file size limit on the version 1.0 WRT54GL firmware before flashing to the standard, VOIP, or VPN versions.

As a bit of background information, I’m used a fully patched (as of April 6, 2007) Windows XP Pro with Service Pack 2 (SP2) and Internet Explorer 6 during the firmware upgrade process. The OS and web browser shouldn’t matter that much, but I have heard reports of Firefox causing some problems with the Flash for some people in the past though others have claimed to use Firefox without any problems–just a word of caution.

Before you begin, download the package and version of the dd-wrt firmware best suited to your needs though this tutorial walks through flashing to the open source dd-wrt version 23 SP2 VPN firmware. Once you’ve downloaded the file, go ahead an unzip the files. The zip package contains several files, you will only need the “dd-wrt.v23_vpn_generic” file. We’re going to be using the generic file rather than the wrt54g file because we’re going to be using the web GUI to upload the file.

I recommend verifying the MD5SUM hash of the “dd-wrt.v23_vpn_generic” file to ensure the download wasn’t corrupt or hasn’t been comprised. If you don’t already have a tool to calculate MD5SUMs, I recommend using HashCalc although you must manually compare the sums with this tool unlike another tool I can’t seem to think of right now. The signature of the file should be baf91850d3204fd64b120467425b4a11. If you plan on flashing a different version, you can find of list of signatures on the dd-wrt hashes page.

While your at the dd-wrt website, I recommend printing (or at least saving, not bookmarking, to your hard drive) the following pages for reference since you will not have Internet access during this process:

It is best to turn off your firewall and anti-virus during this process to ensure that nothing interrupts the firmware flash. An interruption could cause the flash to fail and brick your router. If something does go wrong you may be able to recover from a bad flash.

Almost forgot to mention, you should ONLY perform the flash through an Ethernet cable using standard http (not https). Do not do this wirelessly (its best to temporarily disable the wireless adapter on your computer). Plug the blue Ethernet (Cat5/RJ45) cable that came with your router into the Network Interface Card (NIC) on the back of your computer and into one of the ports labeled 1, 2, 3, or 4. The “Internet” port on your router should be connected to your broadband source (e.g., cable or DSL modem). Please ignore the extra cable in the picture. It is not needed for the flash to work.

Cables

The last item that needs to be completed before uploading the new firmware is to reset your Linksys router to the factory defaults. A few ways to do this exist. I chose to use the standard web interface, but the pressing and holding the reset button on the back of your router for 30 seconds should work just as well (assuming you’re using the factory Linksys firmware, if not be careful). To reset the router to firmware defaults, go to the internal IP address of your router (most likely 192.168.1.1) and login with the user name and password you setup when you first installed the router (if you don’t know those use the reset button method). Once logged in, go to “Administration” tab and the “Factory Defaults” sub-tab. Select the “Yes” radio button next to “Restore Factory Defaults” then select “Save Settings”.

Linksys Restore

If the reset was successful, you will say a page that says “Settings are successful. You will be returned to the previous page after several seconds.”

Linksys Reset Confirmation

Now that everything is setup we can begin the process of actually performing the flash. To upload the firmware, navigate to the “Firmware Upgrade” sub-tab under the “Administration” tab. On this page, select “Browse” to go to the place where you saved the “dd-wrt.v23_vpn_generic” file. Once located, hit open (no brainer). Then hit the “Upgrade” button. Please wait patiently for the upload to complete. Whatever you do, don’t interrupt it. If you’re going to be tempted walk away for a few minutes and come back.

If all goes well, you will great a screen that says “Upgrade is successful”. On that screen hit the “continue” button to, you guessed it, continue. If not successful, simply re-try the same steps or research the dd-wrt wiki for more info.

Firmware Upload

The next thing you should see is a prompt to login to the new dd-wrt interface. The default user name is “root” and the default password is “admin”. Be warned, I wasn’t able to log-in initially even though I got this prompt.

dd-wrt log-in

To confirm that your router is working you should ping it. To ping your router, go to “Start > Run” in windows. Then type in “cmd” and hit “ok”. At the command prompt type in “ping 192.168.1.1″. If the router is online, you will get a ping response that says Packets Sent = 4, Received = 4, Lost = 0 (0% lost).”

Ping

Since the dd-wrt web interface didn’t come up right after the flash, I rebooted my computer (the common solution to lots of Windows problems). That didn’t work even though rebooting probably isn’t a terrible idea. What did work was resetting the new dd-wrt firmware back to firmware defaults. To do this you need to hold the reset button on the back of the router while unplugging the router. Continue to hold the reset button as you re-plug in the router. Once the router is plugged in you should continue holding the reset button for 30 seconds to complete the hard reset. I had to do this a couple of times because I didn’t reset it correctly on the first try.

Once reset, go back to Internet Explorer and navigate to 192.168.1.1. At the prompt enter in “root” for the user name and “admin” as the password. Mysteriously, the dd-wrt web interface should come up.

dd-wrt Interface

Congratulations, you’ve successfully flashed your router! Since you’ve successfully flashed your WRT54G, you should checkout the Linksys WRT54G Ultimate Hacking guide to make the most out of your new found knowledge of router firmware.

Now that your running DD-WRT firmware, make sure to make use of all the available security features. See my post on Securing Your Wireless Connection and other post in the dd-wrt category.

If you liked this post, consider subscribing to my feed and/or sending me something from my wish list. One other option is to send me a Linksys WRT54GL so I can do some more experiments and write more tutorials. Thanks in advance for your support of this guide & site!!!

199 Responses to “How to Flash the WRT54GL with DD-WRT Firmware”

  1. G.Tas says:

    Matt thanks will check the forums soon as i can…anyway another company hooked me up after 10 months lol with 24mbit ADSL2+ Line so now i just wasted 70euros into a useless router for me :P now is that DD-WRT supports any ADSL2+ router? Not mentioning anywhere on the site about the Linksys WAG54GS for example ,anyone can help for a router work with an ADSL2+ router?

    Happy new year…thanx :)

  2. Samir says:

    Thank you for the elaborate instructions. Would this custom firmware upgrade only work on the WRT54GL or will it also work on WRT54G?

  3. dragon` says:

    Thx a lot, nice work!

  4. [...] devices, and don’t have $500 laying around. I guess my rockin’ Linksys WRT54GL with custom firmware and USB 2.0 external Seagate drive will have to do for [...]

  5. Mouncif says:

    Thanks man,

    It totally worked for me.

  6. Matt says:

    @Pink: I’m sure you got QOS figured out without any trouble. Hope you enjoy.

    @G.Tas: Sorry you wasted 70 euros. I really don’t know about finding a ADSL2+ router or if DD-WRT supports any of them. I sort of doubt but check their list of supported routers to be sure if you find a ADSL2+ router you like.

    @ Samir, dragon, Mouncif: Thanks! I’m glad my post could be of assistance.

  7. [...] List so you can send it to me easily. Also, don’t forget to check out my ever-popular “How to Flash the WRT54GL with DD-WRT Firmware” tutorial. Author: Matt   |   Filed under: DD-WRT [...]

  8. [...] fix this vulnerability and gain additional features by upgrading to an open source firmware such as DD-WRT or Tomato. I happen to own a Linksys WRT54GL version 1.1 and have flashed it with the DD-WRT [...]

  9. Jouni says:

    Nice and simple tutorial. After reading the “official” installation instructions, I wasn’t sure whether or not to even try. But your instructions were much more encouraging, and the whole thing was over in a flash. Thanks.

  10. Irvin says:

    Thanks Matt! I read over your well-wrttien guide and then flashed it successfully. The only difficult thing for me was after the flash, when I tried to log in again as root/admin…until a few minutes later when I thought about your instructions again to reset after and now I have dd-wrt on my router. Thanks a bunch!

  11. Doren says:

    My modem now only works through my router! If I disconnect my router my modem does not put out any ethernet signal for my computer to recognize. Any one have this problem?

  12. Jusitn says:

    Very good walk through, I followed your instructions and the firmware install went smoothly.

    Thanks

  13. Juergen says:

    Thank you very much for that great guide.

  14. Valerie says:

    Hello,

    I followed all your instructions and the upgrade was successful. The last step was to go to the command prompt and ping 192.168.1.1 and I got a reply. Now, I can’t connect to the internet connection. What can be the problem?

  15. Flash says:

    Hey, thanks a lot for the guide. I used yours and all the other pages from Wiki to make myself a very clear picture, plus I got helped from a friend as well :)

    Basicaly after firmware update I got the succesfull message and pressed continue and page was blank. Then I reset my computer and at the same time, I pushed the reset button for 30 seconds.

    Once the computer restarted I got the page.

    Only 1 problem tho. Before this firmware upgrade I had my internal IP to xx.xx.xx.100, and my second computer has xx.xx.xx.101. But after this DHCP assigned me the total random xx.xx.xx.116.
    Any way I can get back my xx.xx.xx.100? On the firmware page it is set that the IP range will start from xx.xx.xx.100 so I don’t really understand why it dosen’t want to take back the 100 since it’s free now. I tried ipconfig /release and /renew. I tried to make the DHCP to keep the lease for 1 minute and I reduced the string to only 1 so the range is xx.xx.xx.100 and xx.xx.xx.100. Well this made it to not be able to get any IP automaticaly.

    Any hints what I have to do?
    Thanks

  16. zazz says:

    hello. a BIG thank you! i had a WRT54G v2.0 for 5 years and was on 24/7 withe no problems until the wireless board died. bought a new WRT54v.8.00 G, but returned it after a week of trying to get my wireless network connection for sharing files up (couldn’t get it working) …so bought a WRT54GL after reading forum posts and reviews about how it was the same as the old 54G v4.0 and how it could be flashed with dd-wrt, tomato, etc.
    i stumbled onto this site and this is the best how to flash dd-wrt guide on the internet by far. i read the “official” instuctions on Wiki, other sites, etc. and was afraid to brick my new 54GL ‘cuz i paid double for it. (the 54GL is pretty scarce where I live)

    following your instructions, it literally took me 15 minutes (i timed it). the reset instructions works like a charm. the only hiccup was when the Internet Explorer said the dd-wrt web pag had expire and wouldn’t load. thought i was screwed, but after hitting the back button, it loaded just fine. took me 45 minutes to reconfigure my desktop and wireless laptop and after about and hour, my shared drives were working again.

    now i just need to tweak dd-wrt a little.

    what i used:
    Desktop: Windows XP Pro SP2
    Laptop: Windows XP Home SP2
    Internet Explorer v6.0

    thanks Matt :) for this very simple guide

    aside: the new WRT54G is just a piece of garbage

    the best part is my wireless sh

  17. zazz says:

    edit:

    the best part is my wireless network shared folders are working fine

    other info:

    WRT54GL V 1.1 (skipped the mini flash step. flashed with standard/generic)
    serial: CL7C….

  18. Matt says:

    @zazz: thanks for sharing your experience. Glad the guide helped!!!!

    @Flash: You should check into Static DHCP. It allows you to specify an IP address for any machine while still letting other machines obtain an IP address automatically. The one catch is the static IP must be outside of the dynamic IP address range. So I suggest you change the dynamic range to something that doesn’t include the xx.xx.xx.100 you want to assign statically.

    You can change the dynmaic range on the setup > basic setup page (sounds like you’ve already did this to force the IP to xx.xx.xx.100). Go to administration > services to set up your static leases. You should be set then.

    @Valerie: Not sure what the problem would be. Make sure you configured the “Internet Connection Type” and “Optional Settings (required by some ISPs)” correctly on the Setup > Basic Setup page.

    @Doren: First time I’ve heard of that problem. Just to make sure I’m understanding you correctly, your modem doesn’t work at all even when you plug the Ethernet cable into your computer and bypass the router?

  19. Joshua Lenmarc says:

    Thanks! Great guide, it works!

  20. Matt T says:

    Heya;

    umm im kinda scared to do this. This will be my first attempt to putting the firmware on any router. Just wanted to let you know. I guess im lookin for some moral support. I just hope that the version i buy from newegg is the right version, if not, RMA time

  21. neil c says:

    just wanted to add my name to the thank you list.

    the guide worked a charm

    as for compatibility…
    i used firefox/linux on an asus eee

    no problems.

    -nc

  22. I just wanted to thank you. Because of your explanation of the wireless router I was able to set edit the password, because I had forgotten the password and I needed to add other connections to my wireless connection.

  23. Martin says:

    Just thank you for your tutorial, i´ve updated my WRT54GL V1.1 CL7C with the ddwrt Standard and it works great !!!

    Queria agradecerte por el tutorial, acabo de actualizar mi WRT54GL V1.1 CL7C con la version Standard de DDWRT y funciona de maravilla !!!

  24. David says:

    Thanks for your how-to, got my new Linksys working in no time :)
    Best
    -David

  25. David says:

    I just got a new Linksys WRT54GL router with default firmware and for some reasons, it keeps disconnecting me from the internet whenever i access the router wirelessly. Anyone experienced the same issue? If so would the firmware flash fix this issue?

    Thanks,
    -D

  26. Sarfraz says:

    Hi Matt,

    Yesterday, I picked up my new LinkSys WRT54GL ver 1.1 (Serial: CL7B). After following your guide, in just 10 minutes I was able to run WRT54GL under DD-WRT v23 SP2 (VPN version). I had to do a hard reset though.

    Fantastic guide and good on you.

    Before, I switched to (WRT54GL / DD-WRT) I was using “monowall” on a Celeron 500MHz PC. The main reason to use “monowall” was to use PPTP. My brother who lives overseas was getting a great speed over the VPN (PPTP) connection. However, he reported this morning that my new VPN (PPTP running on (WRT54GL / DD-WRT) is much slower. Does anyone has experience in this area?

    Regards,

    Sarfraz

  27. Thanks a lot mate! I was totally puzzled about the dd-wrt upgrade process. dd-wrt wiki did provide enough information regarding the same. However, it is quite scattered and doesn’t give enough confidence to actually go ahead and play with the router. Your guide is the most comprehensive guide I found on the Internet.

    It took less than 15 minutes to get dd-wrt running. I used the standard image instead of the VPN image mentioned in your article with no change in the procedure. Although I was little panicked when I could not get to the admin page even after hard resetting the router. The problem was that the Windows Vista had, for some reason (actually it’s the normal behavior), cached the ARP entry for the IP address of my router. Removing that entry got me to the dd-wrt admin console.

    Cheers,
    Nikhil

  28. Kruno says:

    Great tutorial, thanks for the help! :)

  29. Jim says:

    Thanks Matt,
    Very useful. I bought a WRT54GL specifically to upgrade to DD-WRT. What I found is that on the DD-WRT website, they contradict themselves regarding flashing procedure. On the list of supported hardware, they say you must initially flash the micro version first. On the installation page they reference the micro as being needed only for 2m machines, then reference the mini version as necessary for initial flashing over original Linksys firmware. Yet another place (I cannot locate it at the moment), they reference the macro version. One would think it was merely a brain fart, but were they referring to mini or micro? This gave me some headache. I finally decided to initially flash with the mini because your post as well as a few others, including one youtube demo, consistently referred to the mini for initial flash.

    Everything worked perfectly and I’m now up and running wii and laptop. Today’s project is security features to which I have bookmarked your detailed entry on that subject.

    Thanks again,
    Jim

  30. Matt says:

    Thanks Jim! Do you happen to still have a link to the YouTube video of the flashing? Sounds like that might be something worth linking to on my blog. Have fun setting the security features later. It really gives you a chance to interact with the new firmware.

  31. krzyskup says:

    I’ve just flashed my wrt54gl v1.1 using this tutorial. it works after first reboot :) thanks!

  32. Matt says:

    Thanks krzyskup.

    Also everyone, just so you guys know the final release of dd-wrt version 24 recently occurred. You can read more about it on my blog.

  33. [...] DD-WRT on my WRT54GL for well over a year not and even documented detailed firmware flashing instructions. However, I’ve been debating on switching to the Tomato firmware for close to year [...]

  34. [...] to install the update or to even research all of the new features but based on the popularity of my How to Flash the WRT54GL with DD-WRT Firmware post I felt obligate to write a quick post informing everyone of this new update. You can read more [...]

  35. Matt says:

    To anyone who is interested, I recently published a tutorial that switch from using the DD-WRT firmware to Tomato firmware. Check it out at http://www.mandladventures.com/2008/12/03/how-to-change-your-wrt54gl-firmware-from-dd-wrt-to-tomato/.

  36. john says:

    I didnt notice you say to flash with mini first then generic or whatever anyway ive heard if you flash with generic first it will brick your router or its a higher chance of this happening

  37. Matt says:

    You’re correct John. With a Linksys WRT54GL version 1, rather than 1.1, you will need to flash to a smaller version of the dd-wrt firmware (the mini version) first due to a flash file size limit on the version 1.0 WRT54GL firmware before flashing to the standard, VOIP, or VPN versions. I believe this info is in the first paragraph of my article but thanks for reminding everyone to be careful.

  38. Alex says:

    Router: Linksys WRT54GL v1.1

    I am doing everything as instructed, including 30/30/30 resets, but no matter which version I try, micro or mini, v24 SP1 or v24 SP2 beta or v23 SP2, I always get “Upgrade are failed” message. Each time I was able to successfully flash back to Linksys firmware via TFTP. Besides web interface, I also tried upgrading via Linksys TFTP utility, but it was never able to get the connection, no matter how hard I tried to adjust timing between the router launch and starting of TFTP.

    Any advice would be greatly appreciated. I hope I will not have to stay with the Linksys firmware.

    Thanks,
    Alex

  39. Matt says:

    Alex,

    That stinks. I haven’t heard of anyone else having that problem so I don’t know a solution. You might try flashing to the Tomato firmware and then switch from Tomato to DD-WRT (assuming you don’t like Tomato). Either way, it’s got to be better than the Linksys firmware. Give that a try and let me know if it works. I’ve got a few posts about the Tomato Firmware on my site if you’d like to read more about it.

  40. Janez says:

    Alex,

    The same happened with my WRT54GL v1.1. Yes and I was able to successfully flash back to original Linksys firmware. But after that I’m not able to upgrade via web interface neither with tftp.

  41. Chris says:

    hey dudes,

    I flashed my WRT54GL v1.1 with the WRT54G_v4.21.1_fw file and I did the hard reset and everything but I can’t get the GUi of the router, I can log in with the username root and everything but I can ‘t see nothing in the GUI of the router , what should I do and how?

    Thanks,

    Chris

  42. Matt says:

    Janez and Alex, I’m sorry that I don’t have an answer for either of you. I’m a bit surprised that TFTP doesn’t even work.

    Chris, try holding the reset button on the back of the router while unplugging the router. Continue to hold the reset button as you re-plug in the router. Once the router is plugged in you should continue holding the reset button for 30 seconds to complete the hard reset. I had to do this because the web interface didn’t come up for me after the flash but it worked after resetting the firmware to defaults.

  43. Chris says:

    OKies, thanks meng will try it again.

  44. dd-wrt newbie says:

    Hi Matt,

    I have flashed Linksys WRT54GL successfully to mini generic first and then to Standard. My question is: Can I upgrade to VPN version since I have already installed standard? I would really appreciate all the help I can.

    I have the following currently in my router:

    DD-WRT v23 SP2 (09/15/06) std – build 3932

    Please advise.

    Thanks.

    Regards,
    VJ

  45. Matt says:

    I do believe you can upgrade to the VPN version now that you have the mini generic in place.

  46. dd-wrt newbie says:

    Hi Matt,

    I was able to upgrade to VPN version.
    Now my firmware is:
    Firmware: DD-WRT v23 SP2 (09/15/06) vpn.

    Thanks for the quick response. Btw, Thanks for the excellent tutorial.

    Thanks.
    VJ

  47. Matt says:

    I’m glad it worked for you VJ. It’s sad to say but I’m normally slower at responding. You just caught me at the right time with the right question ;)

    Enjoy the new, more powerful firmware.

  48. [...] I have several posts related to the Linksys WRT54GL (e.g., Tomato, DD-WRT, etc.), I thought I’d let my readers know that Newegg has the WRT54GL on sale for $47.69. I [...]

Leave a Reply

  • All About Me

    I'm a recent college graduate with a degree in information systems and work as an IS Internal Auditor. I enjoy creating websites and learning about new technology. The best way to get me away from the PC is a good camping trip or mountain bike ride. Want to learn more?