The ASUS WL-500gP was a top of the line Linux based router. It featured plenty of RAM and Flash, USB 2.0 ports, and a fast CPU. It also featured a miniPCI slot that allowed to change the wireless card.
Later it got updated by using a newer SoC which integrates most components, but retained most features of the first version except the replacable wireless, which also got integrated into the SoC.
|Version/Model||S/N||OpenWrt Version Supported||Model Specific Notes|
|v1||-||Backfire 10.03||wireless in miniPCI slot, replacable;
antenna on the left (from the front view)
|v2||-||Backfire 10.03||most features integrated in SoC;
antenna on the right (from the front view)
Note: The wireless in the v2 is a low power wireless PHY, which currently isn't really supported by b43, therefore 2.4 is still recommended for the v2.
Note: As of r18801 in the 8.09 (kamikaze) branch, the wireless in v2 works fine even with the 2.6 kernel at least in the client mode - so if you do not need AP mode and need 2.6 kernel, v2 should be usable now. Other wireless modes were not tested.
Note: As of Backfire 10.03.1-rc4, the wireless in v2 somehow works with the 2.6 kernel in AP mode. WPA2-PSK and No Encryption modes were tested. However, the recommendation to avoid 2.6 kernels still applies: wireless stops working now and then, needing b43/b43legacy module(s) reload to recover.
Note: As of Attitude Adjustment 12.09-beta2 the v2 seems to work well, including the wireless.
Note: with the default factory firmware, it is possible to know what version you have by
- going to http://192.168.1.1/Main_AdmStatus_Content.asp (Firmware upgrade needed if page is empty)
- typing "cat /proc/cpuinfo" in the "System Command:" text box
- checking your "system type"
- BCM4704/BCM4780 means V1
- BCM5354 means V2
|v1||Broadcom BCM4704@264Mhz||32MiB||8MiB||4 x 1||2x 2.0||Yes||No|
|v2||Broadcom BCM5354@240Mhz||32MiB||8MiB||4 x 1||2x 2.0||Yes||No|
This section details what is required to install and upgrade OpenWrt. First we link to software that you should download before you start reading the instructions on how to install.
The WL-500gP is supported by two targets:
- Uses an older 2.4 kernel
- Uses the binary only broadcom driver, which supports the wireless in the v2.
- Recommended for v2
- Uses a current 2.6 kernel, it is faster and has more features
- Uses the open source b43 wireless driver, which currently does not work with the wireless in the v2
- Recommended for v1
- Upgrade with brcm47xx Backfire 10.03.1 works seamlessy on V.1, with restored config from 10.03
For 12.09 / "Attitude adjustment" you have to use BCM947xx/953xx target.
Does not work yet. The TRX utility needs a rewrite (Sep. 1st 2007, confirmed by nbd on IRC).
does this still apply? — KanjiMonster 2010/04/11 13:13
TEST STILL FAILS on ASUS WL-500g Premium V2 with newest ASUS Firmware version 126.96.36.199 — porter 2011/04/28 00:18
TEST STILL FAILS on ASUS WL-500g Premium V1 with ASUS Firmware (not sure about the version) — sup 2012/05/05 20:22
To install OpenWrt using TFTP or the ASUS firmware restoration tool you have to put the router in diag mode.
Note: In diag mode, the router takes the address stored in nvram, usually 192.168.1.1, but if you changed the router's IP address in its original firmware or in the previously installed OpenWrt, it will use that. Once the installation is complete, the router's IP address will always be 192.168.1.1. In the further sections 192.168.1.1 is assumed.
To put the router in the diag mode, do this:
- Unplug the router's power cord.
- Confirm your PC is configured to use a fixed IP in the 192.168.1.0/24 range (do not use .1).
- Connect the router's LAN1 port directly to your PC.
- Push the black RESTORE button using a pen or such, and keep the button pushed down.
- Plug the power on while keeping the RESTORE button pushed for few seconds.
- When you see a slowly blinking power light, you are in diag mode.
- Now the router should accept an image via TFTP or via the ASUS firmware restoration tool.
It responds to ping, so you can confirm that it is in diag mode and ready for the tftp by using "ping 192.168.1.1".
It is possible to install OpenWrt using a TFTP client when the router is in diag mode.
- Execute the TFTP commands below:
- Linux (or Mac OS X)
tftp 192.168.1.1 (replace it with its real ip address) tftp> binary tftp> trace tftp> put openwrt-brcm-2.4-squashfs.trx
tftp -i 192.168.1.1 PUT openwrt-brcm-2.4-squashfs.trx
- After the TFTP upload is complete, wait at least six minutes. The firmware is first loaded into the RAM, and then flashed. This process takes a little time, and to ensure that the router is not bricked you should wait six minutes.
- The router will reboot itself automatically after the upgrade is complete. Rebooting may take a while. It might be the case that the router does not reboot by itself; if this happens it should be safe to wait for the period mentioned and then to do a manual reboot (pull the power-cord).
- You are done! You should be able to telnet to your router (IP address: 192.168.1.1 - even if you were using another one previously) and start configuring.
- Windows 7 does not install its tftp client as default, you have to manually add it. Earlier version do include it in their default installations.
- Netkit's tftp doesn't work quite often; use atftp.
- After TFTP upload is complete, DON'T reboot (replug) too early! It might brick your router.
- Requires atftp
./ping_atftp 192.168.1.1 openwrt-brcm-2.4-squashfs.trx
If you are on Windows it is recommended to use the ASUS firmware restoration tool to install OpenWrt. The ASUS firmware restoration tool can be found on the CD. Make sure the router is in diag mode.
- Browse the .trx file (openwrt-brcm-2.4-squashfs.trx).
- Press Upload. The router will reboot itself automatically after the upgrade is complete. Rebooting may take a while.
- You are done! You should be able to telnet to your router (IP address: 192.168.1.1) and start configuring.
If the firmware restoration tool can't seem find your router even though you are certain that it is in diag mode, it may be because the restoration tool is not very smart about which network interface to use. Disable all network interfaces except for the correct (LAN) network interface and try again.
If you have already installed OpenWrt and like to reflash for e.g. upgrading to a new OpenWrt version you can upgrade using the mtd command line tool. It is important that you put the firmware image into the ramdisk (/tmp) before you start flashing.
use correct URL
- Browse to http://192.168.1.1/cgi-bin/luci/mini/system/upgrade/ LuCI Upgrade URL
- Upload TRX file to LuCI
- Wait for reboot
- Login as root via SSH on 192.168.1.1
- Use the following commands to upgrade.
cd /tmp/ wget http://downloads.openwrt.org/latest/brcm-2.4/openwrt-brcm-2.4-squashfs.trx sysupgrade /tmp/openwrt-brcm-2.4-squashfs.trx
If this does not work (reboot without change) try using mdt. Make sure "linux" is the correct mtd target! (cat /proc/mtd). Tested with v1 models.
cd /tmp/ wget [link to image] mtd -r write /tmp/[image].trx linux
|System-On-Chip:||Broadcom BCM4704||Broadcom BCM5354|
|CPU Speed:||264 Mhz||240 Mhz|
|Flash-Chip:||EON EN29LV302B-70TCP||Macronix 29LV640DB|
|Flash size:||8 MiB||8 MiB|
|RAM:||32* MiB||32 MiB|
|Wireless:||Broadcom BCM4318 802.11b/g (miniPCI)||Broadcom BCM43xx 802.11b/g (integrated)|
|Ethernet:||Robo switch BCM5325||Switch in CPU|
|USB:||2x 2.0||2x 2.0|
|JTAG:||No||Yes (pinout same as wrt54G)|
* some older models have only 16 MiB enabled.
With a Atheros Wistron CM9
MiniPCI WiFi card
With a Gigabyte GN-WIAG02 (168c:0013)
802.11abg MiniPCI WiFi card (Atheros AR5212) and 2nd antenna
Note: This will void your warranty!
Remove the 4 nubs under the case, now you can see some screws. Unscrew them. You're done. When you're finished you can put the rubbers back into the gadgets. They'll stick alone.
Serial is located on pin soldering points (ready for soldering of 8-pin connector for use with detachable cable) on the centre of the right upper side (viewing from front panel) under ventilation holes. At right from these points, you can see printed pin descriptions (V1):
Pin 1 (with the square solder pad) is RX0.
For (V2) tts/0 is on the J4 connector:
3.3V_OUT is next to the label J4 for the connector which is the closest pin to the word ASUS printed on the board. Transmit (UART_TX0) was confirmed with an oscilloscope. Transmit was also connected to Receive (UART_RX0) and data was read back to ensure it was actual the receive pin. Data can be written to tts/1, but the pins have not been identified.
These serial ports use CMOS levels. You need an additional voltage converter to get a standard serial port. The parameters are 115200 baud and 8-n-1.
While connect serial to V2, the VCC pin is not needed. TX from serial converter to the UART_RX0 pin, RX from serial converter to the UART_TX0 pin. Here's the boot log while running /backfire/10.03.1/brcm47xx/openwrt-brcm47xx-squashfs.trx
Note: This applies to v1 models only!
The standard wireless LAN controller is the BCM4318 on a MiniPCI card. Some people have replaced this with an Atheros MiniPCI card. The advantage is that the Atheros card has an open source driver and is supported by the 2.6 kernel version of OpenWrt. Atheros-based wireless cards that have been known to work include the Wistron CM9 (though some people say that signal quality is poor), and various Tp-Link cards such as the TL-WN560G (signal quality reported to be the same as with the original Broadcom controller).
In order to replace the Broadcom controller with an Atheros one, open the case (instructions above), carefully disconnect the antenna cable from the card, press out the two latches on the sides, and pull the card out of the socket. In some cases the card is glued to a supporting sponge on the main board, so you might have to apply a certain measure of force to get it out. Re-assemble the case, and install packages kmod-madwifi and hostapd-mini to get the new wireless controller to work. Change your /etc/config/wireless to include the following:
Go here for more info and an example configuration.
After installation of kmod-madwifi package you can automatically generate a standard /etc/config/wireless file for Atheros:
opkg update opkg install kmod-madwifi wpad-mini rm -f /etc/config/wireless wifi detect > /etc/config/wireless
The default network configuration is:
|Interface Name||Description||Default configuration|
|br-lan||LAN & WiFi||192.168.1.1/24|
|vlan0||LAN ports (1 to 4)|
|wl0/ath0||WiFi||Disabled by default|
LAN and WiFi is bridged to br-lan. WiFi is disabled by default for security reasons (to prevent an open access point).
Please note that the link between the physical ports and switch ports is different for v1 and v2 routers (see table below).
|Port||Switch port (v1)||Switch port (v2)|
5 is the internal connection to the router itself. Don't be fooled: Port 1 on the v2 unit is number 3 when configuring VLANs. vlan0 = eth0.0, vlan1 = eth0.1 and so on. For v1 unit, WAN is switch port 0. LAN ports are switch ports 1,2,3,4. And LAN ports map exactly to switch ports.
If you forgot your password, broken one of the startup scripts, firewalled yourself or corrupted the JFFS2 partition, you can get back in by using OpenWrt's failsafe mode.
- Unplug the router's power cord.
- Connect the router's LAN1 port directly to your PC.
- Configure your PC with a static IP address between 192.168.1.2 and 192.168.1.254. E. g. 192.168.1.2 (gateway and DNS is not required).
- Plug the power on and wait for the power LED to switch off
- While the power LED is off press any button (RESTORE and EZSETUP will work) a few times
- Power LED goes fast-blinking (about 1 time per second)
- You should be able to telnet to the router at 192.168.1.1 now (no username and password)
The ASUS WL-500g Premium has two buttons. They are RESTORE and EZSETUP. The buttons can be used with hotplug events. E. g. [#wifitoggle WiFi toggle].
ACTION: released or pressed
*Note:* This applies only to earlier WL-500gP v1 models.
On newer ASUS WL-500g Premium router's all RAM is enabled by default. If you look at "dmesg | grep Memory" command's output, you will probably see that there's only 16MiB of RAM. Specs says there should be 32MiB. To enable 32MiB change the sdram_init and sdram_ncdl NVRAM variables as showed:
nvram set sdram_init=0x0009 nvram set sdram_ncdl=0x10308 nvram commit rebootNote:
- this is not needed in 10.03.1 with V1 (BCM4704) - maybe it is needed only for BCM4780? — sup 2012/05/05 21:02
- using a "attitude_adjustment" (beta or trunk) brcm47xx image it looks required. Otherwise you may get a memory dump while executing opkg install … (just a "Killed"). –
Since this part is identical for all devices, see Basic configuration.
To connect stuff to the USB port, please see Connect stuff to the USB port, the package kmod-usb2 is needed. For some devices the package kmod-usb-uhci-iv might also be needed.
- FCC ID: MSQWL500GP FCC pictures
toh/asus/wl500gp.txt · Last modified: 2013/11/23 14:56 by marwe