Linksys WRT54GL

From DD-WRT Wiki

(Difference between revisions)
Jump to: navigation, search
Revision as of 21:28, 1 April 2012 (edit)
Slipperyp (Talk | contribs)
m (oops - fix FTP link)
← Previous diff
Revision as of 15:11, 15 April 2019 (edit) (undo)
Jeremywh7 (Talk | contribs)
(fix build size reference)
Next diff →
(6 intermediate revisions not shown.)
Line 1: Line 1:
{{languages|Linksys_WRT54GL}} {{languages|Linksys_WRT54GL}}
-==Device Photos==+<font color=red><b>To find other WRT54* model wiki pages see [[Linksys_WRT54G/GL/GS/GX|here]].</b></font><br>
[[Image:linksys_wrt54gl_front_mini.jpg]] [[Image:linksys_wrt54gl_front_mini.jpg]]
[[Image:linksys_wrt54gl_back_mini.jpg]] [[Image:linksys_wrt54gl_back_mini.jpg]]
-==Hardware==+=Hardware [https://wikidevi.com/wiki/Linksys_WRT54GL_v1.1 Specifications]=
*'''Platform''': Broadcom MIPS *'''Platform''': Broadcom MIPS
-*'''CPU''': Broadcom BCM5452 at 200 MHz (130nm construction) [http://www.broadcom.com/products/Wireless-LAN/802.11-Wireless-LAN-Solutions/BCM5352EL Broadcom Product Page]+*'''CPU''': Broadcom BCM5452 at 200 MHz (130nm process)
-**overclocking support in DD-WRT (verified in v24 SP1)+**overclocking is supported in DD-WRT
-** /proc/cpuinfo output+**Use `cat /proc/cpuinfo` to verify BogoMIPS. Default output:
<pre> <pre>
system type : Broadcom BCM947XX system type : Broadcom BCM947XX
Line 14: Line 14:
cpu model : BCM3302 V0.8 cpu model : BCM3302 V0.8
BogoMIPS : 199.47 BogoMIPS : 199.47
-wait instruction : no+[...]</pre>
-microsecond timers : yes+
-tlb_entries : 32+
-extra interrupt vector : no+
-hardware watchpoint : no+
-VCED exceptions : not available+
-VCEI exceptions : not available+
-unaligned_instructions : 1501948+
-dcache hits : 3604983805+
-dcache misses : 1069308396+
-icache hits : 1669945160+
-icache misses : 616661321+
-instructions : 0+
- +
-</pre>+
*'''Flash''': 4 MB NAND, single chip *'''Flash''': 4 MB NAND, single chip
*'''System Memory''': 16 MB 16-bit DDR SDRAM *'''System Memory''': 16 MB 16-bit DDR SDRAM
-*'''USB''': None 
*'''Wireless Radio''': Broadcom BCM43xx 802.11b/g *'''Wireless Radio''': Broadcom BCM43xx 802.11b/g
-*'''Antenna''': Dual folding, removable, rotating antennas (NOTE: it has been reported as of September 26, 2009, that for up to a year and a half ago until the present, the version of the WRT54GL you have acquired in that time period may have molded antennas which are NOT REMOVABLE)+*'''Antenna''': Dual folding, removable, rotating antennas
 +**NOTE: (26 Sep 2009) Non-removable molded antennas may have been used in the past a year or two
*'''Network Switch''': (4) 10/100 LAN + (1) 10/100 WAN, Auto MDX/MDI-X (Integrated in CPU) *'''Network Switch''': (4) 10/100 LAN + (1) 10/100 WAN, Auto MDX/MDI-X (Integrated in CPU)
-*'''Serial pinout''': Yes+*'''Serial''' / '''JTAG''' / '''USB''': Yes / Yes / No
-*'''JTAG pinout''': Yes+
-==Firmware== 
-'''Put the MICRO or MINI build on this router first if you're upgrading from the stock Linksys firmware''' -- the consequences of not following this advice can be '''VERY GRAVE'''! Then you can upgrade to a STANDARD, VOIP or VPN build, according to your needs. '''DO NOT try to load a MEGA build on this router. MEGA builds are too large for this router!'''+=Firmware=
 +'''See [[Firmware_FAQ#Where_do_I_download_firmware.3F|the DD-WRT FAQ]] for build info and download links.'''
-: ''Q: Why can't I directly upgrade from a stock Linksys firmware to DD-WRT versions other than MICRO or MINI?'' A: The stock firmware from Linksys on the WRT54GL v1 and 1.1 won't accept a firmware image over 3MB in size (you will get the error: "Upgrade are failed! [sic]" if you try). So you will need to flash the micro or mini versions of DD-WRT onto the router BEFORE flashing the standard, voip, and vpn versions. Be sure to hard reset your router to restore firmware defaults both BEFORE AND AFTER you upgrade even to the micro or mini DD-WRT.+'''NOTE: Check the [http://www.dd-wrt.com/phpBB2/viewtopic.php?t=51486 Peacock announcement] for recommended builds, and also research build threads.'''
-: ''Q: Why can't I load a MEGA build?'' A: The WRT54GL has only 4MB for flashing firmware, which is not enough space for a mega build. If you try to load a mega build onto this router anyway, you may turn your router into a brick! I don't know if you can recover your router using TFTP or other methods if you do this, because it's never happened to me.+: ''Q: Why can't I directly upgrade from a stock Linksys firmware to DD-WRT versions other than MICRO or MINI?''<br>
 +A: Stock Linksys firmware on the WRT54GLv1.x won't accept firmware over 3MB, or it will show the error: "Upgrade are failed!" [sic]. The micro or mini versions of DD-WRT must be flashed BEFORE flashing the standard, voip, or vpn versions. Hard reset the router to restore firmware defaults BEFORE AND AFTER upgrading, even to micro or mini DD-WRT builds.
-<font color=red>'''NOTE: Check the [http://www.dd-wrt.com/phpBB2/viewtopic.php?t=51486 Peacock thread] for recommended build numbers if unsure.'''</font>+: ''Q: Is there a limit to how many times routers can be flashed with firmware?''<br>
 +A: Flash memory does have a lifespan, like an SD card or USB flash drive, and depends upon NAND vs. NOR flash, but at least 100,000 write cycles is common. This is why limiting JFFS and script writes is recommended.
-'''Also check the [http://www.dd-wrt.com/phpBB2/viewtopic.php?t=52043 Firmware Recommendations].'''+===Build Size===
 +DD_WRT boot log MTD partition layout:
 + Creating 5 MTD partitions on "Physically mapped flash":
 + 0x00000000-0x00040000 : "cfe"
 + 0x00040000-0x003f0000 : "linux"
 + 0x00124c00-0x003d0000 : "rootfs"
 + mtd: partition "rootfs" doesn't start on an erase block boundary -- force read-only
 + 0x003f0000-0x00400000 : "nvram"
 + 0x003d0000-0x003f0000 : "ddwrt"
-===Installation process from a stock Linksys firmware===+<font color=red><b>Thus the ''linux'' partition size limit is 0x3F0000-0x40000 = 3866624 bytes = 3776 KB</b></font>
-Before starting, READ the peacock announcement linked above.+ 
-# Do a hard reset+===Installation from Linksys firmware===
-#* Full directions are in the peacock announcement - follow those instructions. Briefly, though: hold down the reset button for 30 seconds, continue holding the button and unplug the router and keep unplugged for 30 seconds, finally continue holding the button and plug the router in for another 30 seconds. You will have held the the reset button for 90 seconds without releasing when this is done. Now release the reset button and wait for the router to finish initializing.+Before starting, '''read the build info and Peacock announcement''' linked above.
-# Download the [ftp://ftp.dd-wrt.com/others/eko/V24_TNG/svn12548/dd-wrt.v24-12548_NEWD_mini.bin NEWD_MINI build generic 12548 Eko Build]+* Recommended: check the MD5 HASH of the firmware after downloading - a bad hash can mean a bad firmware download (and flashing a bad firmware can brick your device). See [[Hashes & Checksums]].
-#* You should check the MD5 HASH of the firmware after downloading - a bad hash can mean a bad firmware download (and flashing a bad firmware can brick your device). See [[Hashes & Checksums]]. +* '''DO NOT try to load a MEGA build on this router''', as they are ~8MB.
-# Turn off and disable any firewall or antivirus software and sign into your linksys router with your webbrowser. +# '''Use the MINI (or MICRO) generic build''' (''broadcom'' folder) for initial flash from the Linksys firmware
 +#*A trailed build (with ''wrt54g'' in the name) is NOT required except for TFTP upgrades (see below).
 +# Do a [[Hard_reset_or_30/30/30|hard reset]] then login to the Linksys GUI at http://192.168.1.1
# Use the firmware upgrade web interface to update your router with dd-wrt. '''DO NOT''' close your browser or interrupt the process until you are sure it has completed. # Use the firmware upgrade web interface to update your router with dd-wrt. '''DO NOT''' close your browser or interrupt the process until you are sure it has completed.
-# Eventually (~3 minutes later) the WLAN light will turn on - try to open the dd-wrt configuration in your browser at http://192.168.1.1. If it opens, the process is complete and you will be asked to reset the password.+# After ~3 minutes, the WLAN light will turn on. Access dd-wrt at http://192.168.1.1 and set a password.
-# Decide which router build version you want. Read about the different versions' features here: [[What is DD-WRT?#File Versions]]. If you won't be needing the features in the larger versions such as standard, you may be able to increase the responsiveness of your router by getting the smallest version that includes the features you need. Also, you can always update to a larger version later if down the line you need the extra features. + 
-#* '''MINI''' - you're done, congratulations!+===Upgrade from DD-WRT===
 +# Compare different build versions' features [[What is DD-WRT?#File Versions|here]]. If larger versions' features aren't needed, the available memory will be increased by using the smallest version with the needed features.
#* '''MEGA''' - As stated before on this page, the WRT54GL cannot support MEGA, so don't try. #* '''MEGA''' - As stated before on this page, the WRT54GL cannot support MEGA, so don't try.
-#* '''MICRO, STANDARD, VOIP, or VPN''' versions - continue with the following steps:+#* '''MICRO, MINI, STANDARD (e.g. VoIP or VPN)''' versions - continue with the following steps:
-#*# Power cycle the router+#*# Power cycle the router, then hard reset after boot
-#*# Do a hard reset+#*# Install the desired generic dd-wrt build, from the ''broadcom'' folder, via the GUI
-#*# Install the version of dd-wrt you want+#*# Wait again for the process to complete and the lights to return to normal (3-5 minutes)
-#*# Wait again for the process to complete and the lights to return to normal, and the webgui to be accessible at 192.168.1.1 showing the updated firmware. Give it at least 3 to five minutes.+#*# Power cycle again, then hard reset after boot
-#*# Power cycle the router.+#*# Set a password then configure dd-wrt
-#*# Do a hard reset+
-====Other install notes====+===TFTP Upgrade===
- +To upgrade via TFTP, a trailed build with ''wrt54g'' in the name is required, which has a header with hardware info.
-If you are upgrading from the web interface, you should use the GENERIC versions. For updating by webgui, EKO build 12548 Newd_Mini.bin is the recommended build for this router. It works well. You can also upgrade to 12548 Newd_Std.bin AFTER you have put on the mini version. Here is a link to the mini version download:+
-ftp://dd-wrt.com/others/eko/V24_TNG/svn12548/dd-wrt.v24-12548_NEWD_mini.bin.+
-If you are upgrading via TFTP, you need the versions that contain headers with hardware info in them, called a trailed version of the file. This means a file with wrt54g in the name. Here is a great version for this router. ftp://dd-wrt.com/others/eko/BrainSlayer-V24-preSP2/older/09-08-09-r12874/broadcom/dd-wrt.v24_mini_wrt54g.bin+===TFTP Recovery===
 +For a router that it stuck with a flashing power light with no GUI access, but responds to pings, TFTP of the '''Linksys''' firmware is required ('''NOT''' DD-WRT!) to rescue it. This occurs most commonly from NOT using a MICRO or MINI build for initial flash. Instructions on restoring with TFTP [[Recover from a Bad Flash|are here]].
-===Troubleshooting=== 
-If you make the mistake of not upgrading with the MICRO or MINI version first, you will end up with a router that has a flashing power light. You will be able to ping the router, but will not be able to access the web interface. You will then have to TFTP the '''LINKSYS''' firmware ('''NOT THE DD-WRT FIRMWARE''') back on to the router to rescue it. You can connect your modem directly to your computer, and download the Linksys firmware from their site. Once you have rescued your router by restoring the Linksys firmware, you can then try upgrading to DD-WRT again (if you're still up for it!). THIS TIME, use the micro or mini version first! 
- 
-Instructions on restoring your router are here: [[Recover from a Bad Flash]] 
- 
-A few quotes from the following link: 
-http://forums.whirlpool.net.au/forum-replies-archive.cfm/686075.html 
- 
-Q: ''I'm a bit worried about how many times routers can be re-flashed with firmware - is there a limit??'' 
-A: There really isn't a limit to number of times you can flash. (within reason) Flash memory does have a life. Like your usb stick, 100,000 times or 10,000 times, I don't remember but it is alot, otherwise they would be useless. 
- 
-Don't go and flash your router 10,000 times and test this person's assertion literally. But it appears that a few extra flashes here and there are not going to turn your router into a paperweight. So there's no need to worry about switching from micro to mini or mini to standard, or in reverse, as your needs change. 
- 
-==Running NEWD2 and/or K26 on the GL model== 
 +=Running NEWD2 and/or K26 on the GL model=
<div style='color:red; font-weight:bold'>WARNING</div><div style=color:red>This is ONLY for those that can recover using JTAG, '''and is an unnecessary hack for people who want to try the k26 driver. (God only knows why a person would on this router.)''' If this goes wrong...you MUST use JTAG to recover...you've been warned...you are altering the CFE of the router.</div> <div style='color:red; font-weight:bold'>WARNING</div><div style=color:red>This is ONLY for those that can recover using JTAG, '''and is an unnecessary hack for people who want to try the k26 driver. (God only knows why a person would on this router.)''' If this goes wrong...you MUST use JTAG to recover...you've been warned...you are altering the CFE of the router.</div>
Line 108: Line 91:
9- Using [http://winscp.net/eng/index.php WinSCP] upload the modified CFE (named K26-CFE.BIN) to the routers /tmp directory.<br> 9- Using [http://winscp.net/eng/index.php WinSCP] upload the modified CFE (named K26-CFE.BIN) to the routers /tmp directory.<br>
10- Log into your router and issue the following commands on the command line.<br> 10- Log into your router and issue the following commands on the command line.<br>
-<br>+ mtd unlock cfe
-mtd unlock cfe<br>+ mtd write K26-CFE.BIN cfe
-mtd write K26-CFE.BIN cfe<br>+When completed, it should reboot. If it doesn't, manually reboot it.<br>
-<br>+
-When it completes it should reboot itself. - there has been a report that it did not reboot itself...if it doesn't reboot by itself...manually reboot it. <br>+
<br> <br>
11- Verify you have the new cfe by [http://www.dd-wrt.com/wiki/index.php/CFE_backup backing] up the CFE again.<br> 11- Verify you have the new cfe by [http://www.dd-wrt.com/wiki/index.php/CFE_backup backing] up the CFE again.<br>
12- verify the original K26-CFE.BIN file and this new cfe.bin file are identical (you can use the "comp" command in windows to compare them)<br> 12- verify the original K26-CFE.BIN file and this new cfe.bin file are identical (you can use the "comp" command in windows to compare them)<br>
<br> <br>
-12- Once you have verified the new CFE.BIN file is on the unit, hard reset the unit again, let it boot up, then load up the a NEWD2_mini.bin build or K26_mini.bin build. (or any other "generic" NEWD2 or K26 build that is under 3.7M in size)<br>+12- Once the new CFE.BIN file is verified on the unit, hard reset again and let it boot, then load a ''NEWD2_mini.bin'' or ''K26_mini.bin'' build (or any other "generic" NEWD2 or K26 build under 3.7M).<br>
------------------------------------------------------------------------------------------------+[[Category:Linksys]]

Revision as of 15:11, 15 April 2019

To find other WRT54* model wiki pages see here.
Image:linksys_wrt54gl_front_mini.jpg Image:linksys_wrt54gl_back_mini.jpg

Contents

Hardware Specifications

  • Platform: Broadcom MIPS
  • CPU: Broadcom BCM5452 at 200 MHz (130nm process)
    • overclocking is supported in DD-WRT
    • Use `cat /proc/cpuinfo` to verify BogoMIPS. Default output:
system type             : Broadcom BCM947XX
processor               : 0
cpu model               : BCM3302 V0.8
BogoMIPS                : 199.47
[...]
  • Flash: 4 MB NAND, single chip
  • System Memory: 16 MB 16-bit DDR SDRAM
  • Wireless Radio: Broadcom BCM43xx 802.11b/g
  • Antenna: Dual folding, removable, rotating antennas
    • NOTE: (26 Sep 2009) Non-removable molded antennas may have been used in the past a year or two
  • Network Switch: (4) 10/100 LAN + (1) 10/100 WAN, Auto MDX/MDI-X (Integrated in CPU)
  • Serial / JTAG / USB: Yes / Yes / No


Firmware

See the DD-WRT FAQ for build info and download links.

NOTE: Check the Peacock announcement for recommended builds, and also research build threads.

Q: Why can't I directly upgrade from a stock Linksys firmware to DD-WRT versions other than MICRO or MINI?

A: Stock Linksys firmware on the WRT54GLv1.x won't accept firmware over 3MB, or it will show the error: "Upgrade are failed!" [sic]. The micro or mini versions of DD-WRT must be flashed BEFORE flashing the standard, voip, or vpn versions. Hard reset the router to restore firmware defaults BEFORE AND AFTER upgrading, even to micro or mini DD-WRT builds.

Q: Is there a limit to how many times routers can be flashed with firmware?

A: Flash memory does have a lifespan, like an SD card or USB flash drive, and depends upon NAND vs. NOR flash, but at least 100,000 write cycles is common. This is why limiting JFFS and script writes is recommended.

Build Size

DD_WRT boot log MTD partition layout:

Creating 5 MTD partitions on "Physically mapped flash":
0x00000000-0x00040000 : "cfe"
0x00040000-0x003f0000 : "linux"
0x00124c00-0x003d0000 : "rootfs"
mtd: partition "rootfs" doesn't start on an erase block boundary -- force read-only
0x003f0000-0x00400000 : "nvram"
0x003d0000-0x003f0000 : "ddwrt"

Thus the linux partition size limit is 0x3F0000-0x40000 = 3866624 bytes = 3776 KB

Installation from Linksys firmware

Before starting, read the build info and Peacock announcement linked above.

  • Recommended: check the MD5 HASH of the firmware after downloading - a bad hash can mean a bad firmware download (and flashing a bad firmware can brick your device). See Hashes & Checksums.
  • DO NOT try to load a MEGA build on this router, as they are ~8MB.
  1. Use the MINI (or MICRO) generic build (broadcom folder) for initial flash from the Linksys firmware
    • A trailed build (with wrt54g in the name) is NOT required except for TFTP upgrades (see below).
  2. Do a hard reset then login to the Linksys GUI at http://192.168.1.1
  3. Use the firmware upgrade web interface to update your router with dd-wrt. DO NOT close your browser or interrupt the process until you are sure it has completed.
  4. After ~3 minutes, the WLAN light will turn on. Access dd-wrt at http://192.168.1.1 and set a password.

Upgrade from DD-WRT

  1. Compare different build versions' features here. If larger versions' features aren't needed, the available memory will be increased by using the smallest version with the needed features.
    • MEGA - As stated before on this page, the WRT54GL cannot support MEGA, so don't try.
    • MICRO, MINI, STANDARD (e.g. VoIP or VPN) versions - continue with the following steps:
      1. Power cycle the router, then hard reset after boot
      2. Install the desired generic dd-wrt build, from the broadcom folder, via the GUI
      3. Wait again for the process to complete and the lights to return to normal (3-5 minutes)
      4. Power cycle again, then hard reset after boot
      5. Set a password then configure dd-wrt

TFTP Upgrade

To upgrade via TFTP, a trailed build with wrt54g in the name is required, which has a header with hardware info.

TFTP Recovery

For a router that it stuck with a flashing power light with no GUI access, but responds to pings, TFTP of the Linksys firmware is required (NOT DD-WRT!) to rescue it. This occurs most commonly from NOT using a MICRO or MINI build for initial flash. Instructions on restoring with TFTP are here.


Running NEWD2 and/or K26 on the GL model

WARNING
This is ONLY for those that can recover using JTAG, and is an unnecessary hack for people who want to try the k26 driver. (God only knows why a person would on this router.) If this goes wrong...you MUST use JTAG to recover...you've been warned...you are altering the CFE of the router.

The WRT54GL router must already have dd-wrt installed before you begin this process.

1 -First start by backing up your current CFE.BIN file and keep it in a safe place
2- Enable ssh services in the dd-wrt configuration at 192.168.1.1. This is REQUIRED for WinSCP to work (step9)

3- Next you will need to download the "new" CFE for the WRT54GL model located here. This is an altered CFE.BIN from a WRT54G-TM
4- Obtain a Hex Editor like xvi32
5- Edit your et0macaddr (located at 10CAh) to match your router's MAC address (exa. currently 00:14:BF:00:00:01)
6- Edit your new cfe il0macaddr (located at 1154h) to your router's MAC address plus one (exa. currently 00:14:BF:00:00:02)
7- Save your edited file and call it K26-CFE.BIN

8- Hard reset your GL router using the 30/30/30 method
9- Using WinSCP upload the modified CFE (named K26-CFE.BIN) to the routers /tmp directory.
10- Log into your router and issue the following commands on the command line.

mtd unlock cfe
mtd write K26-CFE.BIN cfe

When completed, it should reboot. If it doesn't, manually reboot it.

11- Verify you have the new cfe by backing up the CFE again.
12- verify the original K26-CFE.BIN file and this new cfe.bin file are identical (you can use the "comp" command in windows to compare them)

12- Once the new CFE.BIN file is verified on the unit, hard reset again and let it boot, then load a NEWD2_mini.bin or K26_mini.bin build (or any other "generic" NEWD2 or K26 build under 3.7M).