Linksys WRT54G v5.0
Wireless-G Broadband Router
The stock firmware on these devices contains VxWorks, not Linux.
- See the flashing section for instructions on flashing the units with DD-WRT.
"3763-14140404R" is silkscreened on the board.
- OD/ID measurements may not be exact
Links of Interest
- WRT54G series on Wikipedia
- WRT54G page on the OpenWrt wiki
- Version 5 And 6 Router Information
- WRT54G V5 Flash Memory Upgrade Success!
- Quick Install.pdf
- User Guide.pdf
|NOTE: During configuration or flashing a device, the only things that should be hooked to the device is the computer and power.|
|WARNING: Requires Micro for DD-WRT, Do not flash anything else!|
|WARNING: Requires K2.4 for DD-WRT, Do not flash anything else!|
IN SPITE OF SOME OTHER INSTRUCTIONS ELSEWHERE, YOU REALLY NEED TO CREATE A CUSTOM VX Image for your router. If you don’t you will get a generic MAC address on your router and a generic MAC address will mean most ISP won’t let you connect to the Internet. Here is how to do it properly:
Download the zipped files in GV5Flash.zip
Or you can download the same file from me here: Gv5Flash.zip
- 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.
- Unzip the file you downloaded and place it in a location you can easily find on your computer.
- Unzip the VXImgToolGui.zip file to the same folder as where you placed the other files you downloaded.
- Start VXImgToolGui.exe.
- Make sure the top button is on the left for WRT54G, not the right for WRT54GS.
- Put the MAC address from the bottom of your router in the box that says "Desired MAC".
- Click on the three dots next to "output image" and save the file as My54gImage.bin in the same folder as everything else is located.
- 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.
- Enter "root" as the username and "admin" as the password.
- Go to Administration and Firmware Upgrade.
- Navigate to the folder that you are using, and select vxworks_prep_03.bin.
- Hit upgrade.
- Wait for FIVE FULL MINUTES. Go for a walk. Don't you TOUCH that router for FIVE MINUTES.
- When five full Earth minutes have passed, power cycle the router.
- Refresh your browser window. If you get a blank window, clear your browser cache. NOW you should be in the MANAGEMENT MODE window.
- Select the My54gImage.bin file that you created. Hit Apply.
- Wait for the "Upgrade Success" message, and then WAIT FIVE FULL MINUTES again. Don't TOUCH your router.
- Start tftp.exe.
- Enter 192.168.1.1 as the address in the top box of tftp.exe.
- Leave the password blank.
- Select the 12548 Newd_Micro.bin firmware.
- Set retries to 99.
- Power cycle the router.
- Count to 2.
- Hit upgrade.
- When you get a success, wait FIVE FULL minutes.
- If you don't get success, repeat from steps 19(4) 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.
- Reset your computer Ethernet connection to auto IP and auto DNS.
- Check for recommended builds here.
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!
Reverting to OEM Firmware from DD-WRT
To get back to VxWorks (default firmware) you need special instructions.
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 /nocwd switches required
- 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
- 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_micro_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
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_micro_generic.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
DD-WRT vlan Info
Confirmed the WRT54G v5.0 supports port-based vlans via the GUI.
Confirmed the WRT54G v5.0 supports port-based vlans via nvram with micro-plus-SSH.
WRT54G v5.0's ports are mapped like this:
1 2 3 4 | case labels 3 2 1 0 | nvram port numbers
root@DD-WRT:~# nvram show | grep vlan.ports vlan1ports=4 5 vlan0ports=3 2 1 0 5* size: 19130 bytes (13638 left) root@DD-WRT:~# nvram show | grep port.vlans port5vlans=0 1 16 port4vlans=0 port3vlans=0 port2vlans=0 port1vlans=0 port0vlans=1 size: 19130 bytes (13638 left) root@DD-WRT:~# nvram show | grep vlan.hwname vlan1hwname=et0 vlan0hwname=et0 size: 19130 bytes (13638 left) root@DD-WRT:~# lsmod Module Size Used by ip_nat_pptp 2192 0 (unused) ip_conntrack_pptp 2524 1 ip_nat_proto_gre 1552 0 (unused) ip_conntrack_proto_gre 2312 0 [ip_nat_pptp ip_conntrack_pptp] switch-robo 5036 0 (unused) switch-core 5984 0 [switch-robo] root@DD-WRT:~# ls /proc/switch eth0 root@DD-WRT:~# cat /proc/switch/eth0/vlan/0/ports 0 1 2 3 5t* root@DD-WRT:~# cat /proc/switch/eth0/vlan/1/ports 4 5t root@DD-WRT:~# cat /proc/switch/eth0/vlan/2/ports I root@DD-WRT:~#
root@DD-WRT:~# nvram set vlan1ports="3 4 5" root@DD-WRT:~# nvram set vlan0ports="2 1 0 5*" root@DD-WRT:~# nvram commit root@DD-WRT:~# reboot
root@DD-WRT:~# nvram show | grep vlan.ports vlan0ports=2 1 0 5* size: 19350 bytes (13418 left) vlan1ports=3 4 5 root@DD-WRT:~# nvram show | grep port.vlans port5vlans=0 1 16 port3vlans=0 port1vlans=0 size: 19350 bytes (13418 left) port4vlans=0 port2vlans=0 port0vlans=1 root@DD-WRT:~# nvram show | grep vlan.hwname vlan1hwname=et0 size: 19350 bytes (13418 left) vlan0hwname=et0 root@DD-WRT:~#
root@DD-WRT:~# nvram show | grep vlan.ports vlan1ports=4 5 vlan0ports=3 2 1 0 5* size: 17380 bytes (15388 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: 17380 bytes (15388 left) root@DD-WRT:~# nvram show | grep vlan.hwname vlan1hwname=et0 vlan0hwname=et0 size: 17380 bytes (15388 left) root@DD-WRT:~#
Also see this page: Version 5 And 6 Router Information
There is good information at the scorpiontek site: http://www.scorpiontek.org/portal/content/view/27/36
A CFE compressor is available for the Gv5.0,5.1, and 6.0. It enables micro_plus to be put on the router. Click here.