Linksys WRT54G v2.2
Linksys WRT54G v2.2
Availability: common
Manuf (OEM/ODM): CyberTAN
FCC approval date: 17 September 2004
Country of manuf.: China
S/N prefix: CDF7
Series: WRT54G
Type: wireless router
FCC ID: Q87-WT54GV22
IC ID: 3839A-WT54GV22
Power: 12 VDC, 1 A
Connector type: barrel
CPU1: Broadcom BCM4712
FLA1: 4 MiB4,194,304 B <br />32,768 Kib <br />4,096 KiB <br />32 Mib <br />0.00391 GiB <br /> (Intel TE28F320C3BD70)
RAM1: 16 MiB16,777,216 B <br />131,072 Kib <br />16,384 KiB <br />128 Mib <br />0.0156 GiB <br /> (Hynix HY5DU281622ET-J × 2)
Expansion IFs: none specified
JTAG: yes, 12-pin header, unpopulated
Serial: yes, 10-pin header, unpopulated, (115200 8N1)
WI1 chip1: Broadcom BCM4712
WI1 chip2: Broadcom BCM2050
WI1 802dot11 protocols: bg
WI1 antenna connector: RP-TNC
ETH chip1: Broadcom BCM4712
Switch: Broadcom BCM5325E
LAN speed: 100M
LAN ports: 4
WAN speed: 100M
WAN ports: 1
bg
Stock bootloader: CFE
Stock FW OS: Linux
TPFirmware supported: DD-WRT • (List), OpenWrt • (List | Dev | DLs), Tomato • (List | DLs), TomatoUSB • (List | DLs)
Default SSID: linksys (50 addl. devices)
Default IP address: 192.168.1.1
the IP 192.168.1.1 is used by 1304 additional devices
of which 154 are Linksys devices
Default login user: blank
Default login password: admin
blank:admin credentials used by 300 additional devices
of which 143 are Linksys devices
802dot11 OUI: 00:12:17 (16 E, 32 W), 00:13:10 (16 E, 17 W)
Ethernet OUI: 00:12:17 (16 E, 32 W), 00:13:10 (16 E, 17 W)
FCC ID | |
---|---|
Linksys WRT54G v3.0 | Q87-WT54GV22 |
Linksys WRT54G v3.1 | Q87-WT54GV22 |
Linksys WRT54GS v1.1 | Q87-WT54GV22 |
Linksys WRT54GS v2.0 | Q87-WT54GV22 |
Linksys WRT54GS v2.1 | Q87-WT54GV22 |
CPU1 brand | WI1 chip1 brand | WI1 chip2 brand | |
---|---|---|---|
Linksys WRT54G v1.0 | Broadcom | Broadcom | Broadcom |
Linksys WRT54G v1.1 | Broadcom | Broadcom | Broadcom |
Linksys WRT54G v2.0 | Broadcom | Broadcom | Broadcom |
Linksys WRT54G v2.2 | Broadcom | Broadcom | Broadcom |
Linksys WRT54G v3.0 | Broadcom | Broadcom | Broadcom |
Linksys WRT54G v3.1 | Broadcom | Broadcom | Broadcom |
Linksys WRT54G v4.0 | Broadcom | Broadcom | Broadcom |
Linksys WRT54G v5.0 | Broadcom | Broadcom | Broadcom |
Linksys WRT54G v6.0 | Broadcom | Broadcom | Broadcom |
Linksys WRT54G v7.0 | Atheros | Atheros | |
Linksys WRT54G v7.2 | Broadcom | Broadcom | |
Linksys WRT54G v8.0 | Broadcom | Broadcom | |
Linksys WRT54G v8.1 | Broadcom | Broadcom | |
Linksys WRT54G v8.2 | Broadcom | Broadcom | |
Linksys WRT54GH | Ralink | Ralink |
For a list of all currently documented Broadcom chipsets with specifications, see Broadcom.
Wireless-G Broadband Router
- • Support page • Downloads (US)
- Additional FCC IDs
- Q87-HGA5T-1 (Linksys HGA5T, high gain antennas)
- Q87-HGA7T-6 (Linksys HGA7T, high gain antennas)
Wi-Fi Certified : W002882 (as of 10/01/2004)
- There is an additional certification of W002940 (10/29/2004)
- for this device which notes added WPA2 capability.
Links of Interest
- WRT54G series on Wikipedia
- Linksys WRT54Gxx page on the DD-WRT wiki
- WRT54G page on the OpenWrt wiki
- WikiDevi:DD-WRT/NEWD or VINT
- Datasheet.pdf
- Quick Install.pdf
- User Guide.pdf
Flashing
NOTE: During configuration or flashing a device, the only things that should be hooked to the device is the computer and power. |
Flashing DD-WRT
For DD-WRT, These units seems to run more stable on the VINT builds. |
WARNING: Requires K2.4 for DD-WRT, Do not flash anything else! |
- Linksys WRT54G v2.2 On the DD-WRT Wiki
- VINTage firmware. Details here.
- Read the peacock announcement found here: http://www.dd-wrt.com/phpBB2/viewtopic.php?t=51486
- Do a Hard reset or 30/30/30 on the router according to note 1 of the peacock announcement (30/30/30)
- Set a static IP on your computer to 192.168.1.7. Subnet mask should be 255.255.255.0.
- Connect the lan cable from your computer to a LAN port of your router. Make sure your router is plugged in. Nothing should be connected to your computer or the router except the lan cable between them. Turn your firewall and any wireless computer connections OFF.
- Power cycle the router (unplug the power from the router for 30 seconds and then plug it back in)
- Open your browser to 192.168.1.1 by putting that in the browser address window of your browser. You should open the linksys webgui and NOT a page that says Management Mode. If you see management mode, power cycle the router again.
- Leave the username blank and enter "admin" as the password
- Go to administration and firmware upgrade
- Navigate to the folder that you are using, and select dd-wrt.v24-15230_VINT_mini.bin
- Hit upgrade
- When you get a message that the upgrade is successful, wait FIVE FULL minutes before continuing.
- If you don't get success, repeat from steps 6 up to this one. If you still don't get success, clear your browser cache. Try using a different browser as well, to navigate to 192.168.1.1.
- When you can access the dd-wrt webgui using a browser at 192.168.1.1, power cycle the router.
- When you can again access the dd-wrt webgui using a browser at 192.168.1.1, do another Hard reset or 30/30/30 on the router.
- At this point you can choose to put a different build on, depending on what you needs are.
- Reset your computer ethernet connection to auto IP and auto DNS
- Check for recommended builds here.
Flashing OpenWrt
Linksys WRT54G On the OpenWrt Wiki
Using the Linksys web GUI
It is possible to install OpenWrt directly with the Linksys web GUI. If you are initially installing OpenWrt use the Linksys web GUI, this is the easiest way.
- Download the openwrt-wrt54g-squashfs.bin firmware image from the brcm-2.4 folder to your PC.
- You can find that image at: http://downloads.openwrt.org/backfire/10.03.1/brcm-2.4/
- Actually the safest version to use would be
8.09. Hmmm, it looks like 10.03.1 is safe but you must use the brcm-2.4 variant like in the link above. I am not risking bricking my router for the initial flash, so I am going with 8.09. - Open http://192.168.1.1/Upgrade.asp in your browser or manually go to http://192.168.1.1 → Administration → Firmware Upgrade
- Upload openwrt-wrt54g-squashfs.bin
- Wait 2 minutes. The router will reboot itself automatically after the upgrade is complete.
- Your router should now be telnettable at 192.168.1.1. The web interface luci is also available at http://192.168.1.1 . Telnet is disabled and ssh is enabled once a password has been set.
- Type these commands out in telnet/ssh. This is to ensure that tftp is available, in case your router gets bricked.
nvram set boot_wait=on nvram set boot_time=10 nvram set wait_time=10 #important for some models nvram commit && reboot
- You're done! At this point, you are free to continue using brcm-2.4. However, if you wish to use brcm47xx, proceed below.
- Download the image openwrt-brcm47xx-squashfs.trx here: http://downloads.openwrt.org/backfire/10.03.1/brcm47xx/
- Upload using luci at System > Flash Firmware
- OR, you can simply ssh into the router,
cd /tmp wget http://downloads.openwrt.org/backfire/10.03.1/brcm47xx/openwrt-brcm47xx-squashfs.trx sysupgrade /tmp/openwrt-brcm47xx-squashfs.trx
- Wait for the router to reboot and login! In case you somehow found out that you can't telnet, then ssh should be possible since your previous settings before flashing remained (unless you used sysupgrade -n)
Using the TFTP method
Right after flashing at your first login to OpenWrt set the following NVRAM parameters to enable tftpd at bootup:
nvram set boot_wait=on nvram set boot_time=10 nvram set wait_time=10 nvram commit && reboot
NOTE: Do not touch any other NVRAM parameters. NVRAM is only used as environment for the bootloader. OpenWrt ignores NVRAM parameters.
NOTE: On WRT54GL (at least), you should probably use 'wait_time' instead of 'boot_time'. bg300: Added.
NOTE: On WRT54GS v1.1 too you have to use 'wait_time' instead of 'boot_time', anyway if in doubt add both parameters.
Once you have set the NVRAM parameters above it is possible to use a TFTP client to flash OpenWrt. The TFTP method is also the recommended way to restore the original Linksys firmware or switch to other third-party firmwares.
First download a firmware image file ending in ".bin", e.g. openwrt-wrt54g-squashfs.bin.
Then follow the Generic TFTP flashing instructions.
Flashing Tomato
Flashing Gargoyle
Upgrading
Updating DD-WRT
If dd-wrt is already on the router follow these instructions. If stock firmware is on the router follow the flashing instructions.
- Check for recommended builds here first.
- Set your computer to a static IP of 192.168.1.7. (or to whatever subnet the router is on) Disable all firewalls and security. Disable wireless on your computer and only have the router connected to the flashing computer by the ethernet cable between the two.
- Hard reset or 30/30/30 (If the router supports it, if not, reset to defults in the GUI) prior to flashing. Wait. Check for password page on re-login and change password.
- Flash firmware. You can use the webgui except if you have a belkin router. (For belkin use tftp.exe to flash)
- Wait...at least three minutes. Lights should return to normal. See important2, below. Failing to wait is how most people brick their routers.
- Do a power cycle of the router. (Unplug the cord, count to 30 and plug it back in.)
- Wait for the lights to return to normal usually about 2 minutes.
- Hard reset or 30/30/30 again (If the router supports it, if not, reset to defults in the GUI). Wait. Check for the password page and re-login to change the password. Then you can reconfigure your settings manually.
- Once configured set your computer back to autoIP and autoDNS.
Important1: This Hard reset or 30/30/30 works fine for Asus router, but you do have to power cycle after the reset.
Important2: After you flash the firmware, and before you do the hard reset, the router will be building some nvram settings. YOU MUST WAIT FOR THIS TO FINISH PRIOR TO DOING ANYTHING WITH THE ROUTER INCLUDING A HARD RESET. Usually, you can tell when this process is completed by the WAN light coming on, but it does take several minutes. Go have a beer. There are starting to be more and more people who BRICK their routers by not waiting until the nvram is rebuilt, PRIOR to doing a hard reset. YOU NEED TO WAIT!
Upgrading OpenWrt
Using mtd OR sysupgrade
If you have already installed OpenWrt and like to reflash for e.g. upgrading to a new OpenWrt version. It is important that you put the firmware image into the ramdisk (/tmp) before you start flashing.
cd /tmp/ wget http://downloads.openwrt.org/backfire/10.03.1/brcm47xx/openwrt-brcm47xx-squashfs.trx # The file must be the trx file. mtd write /tmp/openwrt-brcm47xx-squashfs.trx linux && reboot
OR
cd /tmp/ wget http://downloads.openwrt.org/backfire/10.03.1/brcm47xx/openwrt-brcm47xx-squashfs.trx # The file must be the trx file. sysupgrade /tmp/openwrt-brcm47xx-squashfs.trx
Feel free to explore the rest of sysupgrade options by typing 'sysupgrade' in the terminal.
Using LuCI
- Select Administration in the top right corner
- Choose the System > Flash Firmware tab
- Click Browse and navigate to the firmware (it must be a .trx file) you wish to flash to
- Click 'Upload image'
- Follow the instructions
Upgrading from Tomato
The instructions from the Tomato upgrade instructions are confirmed to work with Backfire (10.03.1-rc4, r24045)
Reverting
Reverting to OEM Firmware from DD-WRT
- Read the peacock announcement found here: http://www.dd-wrt.com/phpBB2/viewtopic.php?t=51486
- Do a Hard reset or 30/30/30 on the router according to note 1 of the peacock announcement (30/30/30)
- Set a static IP on your computer to 192.168.1.7. Subnet mask should be 255.255.255.0.
- Connect the lan cable from your computer to a LAN port of your router. Make sure your router is plugged in. Nothing should be connected to your computer or the router except the lan cable between them. Turn your firewall and any wireless computer connections OFF.
- Power cycle the router (uplug the power from the router for 30 seconds and then plug it back in)
- Open your browser to 192.168.1.1 by putting that in the browser address window of your browser. You should open the linksys webgui and NOT a page that says Management Mode. If you see management mode, power cycle the router again.
- Enter your username and password
- Go to administration and firmware upgrade
- Navigate to the folder that you are using, and select WRT54G_v4.21.1_fw.bin once you've unzipped it.
- Hit upgrade
- When you get a success, wait FIVE FULL minutes.
- When you can again access the Linksys webgui using a browser at 192.168.1.1, do another Hard reset or 30/30/30 on the router.
- Reset your computer ethernet connection to auto IP and auto DNS
JTAG-Serial Info
JTAG
JTAG Pinouts
nTRST 1o o2 GND TDI 3o o4 GND TDO 5o o6 GND TMS 7o o8 GND TCK 9o o10 GND nSRST 11o o12 N/C
Using Universal JTAG Adapter
white 1o o2 black red 3o o4 GND blue 5o o6 GND green 7o o8 GND yelow 9o o10 GND orange 11o o12 N/C
DD-WRT JTAG Recovery
- /noemw switch required for backup & flash
- /noemw /nocwd switches required for erase
- Backup CFE x2 (Compare the files, they must match exactly or there is something wrong with your JTAG setup)
- Erase Wholeflash x2
- Flash CFE
- Unplug Power
- Unplug JTAG Cable
TFTP:
- Set Rig ip static 192.168.1.10
- Plug network cable from rig to port 1
- Get TFTP ready, server ip - 192.168.1.1, Password - blank, file - dd-wrt.v24_mini_generic.bin
- Plug in power
- As soon as windows says "connected" hit upgrade. May have to use a network hub to make sure windows is always connected.
- Hard Reset 30\30\30
Serial
Serial Pinouts
VCC 1 o o 2 VCC TX1 3 o o 4 TX0 RX1 5 o o 6 RX0 N/C 7 o o 8 N/C GND 9 o o 10 GND
Hyper terminal Setup in Windows XP
In Windows XP, Click Start Button - All Programs - Accessories - Communication - HyperTerminal Enter a name for the connection, Click ok Choose com port you adapter is plugged into, Click ok Set: Bits per second = 115200 Data Bits = 8 Parity = none Stop bits = 1 Flow control = none Click ok Click File - Save As, and select a place to save it to so you don't have to enter the settings again.
Putty Setup in Windows XP
After installing putty, run it Serial line = The COM port your using for serial (ie. COM3) Speed = 115200 Click on Serial under Connection Serial line to connect to = same as above (Serial line) Speed (baud) = 115200 Data bits = 8 Stop bits = 1 Parity = none Flow control = none Click Session Enter a name for your connection under saved sessions Click Save Click Open
DD-WRT Serial Recovery
Modified Redhawk0 instructions
- Connect Serial cable
- Start one of the programs from above
- Get TFTP ready with file selected
- Use dd-wrt.v24_mini_wrt54g.bin
- Connect power to the router
- start a rapid fire Cntl-C as you plug the router to power
- type "nvram erase" w/o quotes, hit enter
- type "flash -noheader : flash1.trx" w/o quotes, this starts the tftp daemon, hit enter
- but have tftp.exe ready
- Click go or start on TFTP
- give it 5 minutes after it finishes
- then power cycle....hard reset...then config
- when it stops spitting out txt in the serial consol....hit the enter key...you should get a login prompt...at that point, power cycle it, Hard reset or 30/30/30...then config
- you'll see it boot up
USB Info
No USB
vlan Info
DD-WRT vlan Info
Confirmed the WRT54G v2.2 supports port-based vlans via the GUI & nvram.
"/proc/switch/eth0" does exist
WRT54G v2.2's ports are mapped like this:
4 3 2 1 | case labels 3 2 1 0 | nvram port numbers
Defaults
root@DD-WRT:~# nvram show | grep vlan.ports vlan0ports=3 2 1 0 5* vlan1ports=4 5 size: 19306 bytes (13462 left) root@DD-WRT:~# nvram show | grep port.vlans port5vlans=0 1 16 port4vlans=0 port3vlans=0 port2vlans=0 port1vlans=0 port0vlans=1 size: 19306 bytes (13462 left) root@DD-WRT:~# nvram show | grep vlan.hwname vlan1hwname=et0 vlan0hwname=et0 size: 19306 bytes (13462 left)
GUI
Port 4 moved to WAN's vlan
root@DD-WRT:~# nvram show | grep vlan.ports vlan0ports=3 2 1 0 5* vlan1ports=4 5 size: 19478 bytes (13290 left) root@DD-WRT:~# nvram show | grep port.vlans port5vlans=0 1 16 port4vlans=1 18 19 port3vlans=0 18 19 port2vlans=0 18 19 port1vlans=0 18 19 port0vlans=1 18 19 size: 19478 bytes (13290 left) root@DD-WRT:~# nvram show | grep vlan.hwname vlan1hwname=et0 vlan0hwname=et0 size: 19478 bytes (13290 left) root@DD-WRT:~#
nvram
Port 4 moved to WAN's vlan
root@DD-WRT:~# nvram show | grep vlan.ports vlan0ports=2 1 0 5* vlan1ports=3 4 5 size: 19420 bytes (13348 left) root@DD-WRT:~# nvram show | grep port.vlans port5vlans=0 1 16 port4vlans=0 port3vlans=0 port2vlans=0 port1vlans=0 port0vlans=1 size: 19420 bytes (13348 left) root@DD-WRT:~# nvram show | grep vlan.hwname vlan1hwname=et0 vlan0hwname=et0 size: 19420 bytes (13348 left) root@DD-WRT:~# lsmod Module Size Used by ip_nat_pptp 2560 0 (unused) ip_conntrack_pptp 3036 1 ip_nat_proto_gre 1664 0 (unused) ip_conntrack_proto_gre 2584 0 [ip_nat_pptp ip_conntrack_pptp] etherip 5104 0 (unused) switch-robo 5356 0 (unused) switch-core 6352 0 [switch-robo] root@DD-WRT:~# ls /proc/switch eth0 root@DD-WRT:~# cat /proc/switch/eth0/vlan/0/ports 0 1 2 5t* root@DD-WRT:~# cat /proc/switch/eth0/vlan/1/ports 3 4 5t root@DD-WRT:~# cat /proc/switch/eth0/vlan/2/ports 3 root@DD-WRT:~# nvram show | grep vlan.ports vlan0ports=2 1 0 5* vlan1ports=3 4 5 size: 19560 bytes (13208 left) root@DD-WRT:~#
Pictures
Notes
DD-WRT Notes
Rare 32MB
anectine17 wrote: The v.2 and v.2.2, on occasion, came with a 32MB RAM chip with only 16MB enabled. The vast majority of these routers came with a basic 16MB RAM chip. To tell whether or not you have the "special" one with the 32MB chip, you have to open the router and read the number on the RAM chip itself. If you have chip #issi is42s16800a-7t, you can enter
nvram set sdram_init=0x008 nvram set sdram_ncdl=0x000 nvram commit reboot
and that will enable all 32MB. If you have any other chip, that hack will not work...in fact if you try it, you'll end up with a brick. Good luck.
The Hynix chip, HY5DU281622ET-J is the most common one in the v.2 and v.2.2. I've taken apart probably 50 v.2's and a dozen 2.2's and I've seen 2 of the 32MB chips in the v.2.2, and 4 in the v.2. They're out there, but getting harder and harder to come by. Most people hang on to them once they get them.