ASUS WL-520gu

This device is NOT RECOMMENDED for future use with OpenWrt due to low flash/ram.
DO NOT BUY DEVICES WITH 4MB FLASH / 32MB RAM if you intend to flash an up-to-date and secure OpenWrt version onto it! See 4/32 warning for details.

1) This device does not have sufficient resources (flash and/or RAM) to provide secure and reliable operation.
This means that even setting a password or changing simple network settings might not be possible any more, rendering the device effectively useless. See OpenWrt on 4/32 devices what you can do now.

2) OpenWrt support for this device has ended in 2022.
19.07.10 was the last official build for 4/32 devices.

The hardware is similar to that of the WL500GPv2, and the information there is relevant to this unit too.

SoC Ram Flash Network USB Serial JTag
Broadcom BCM5354 / 240MHz 16MiB 4MiB 4×1 Yes Yes ?

The boot_wait nvram variable is set by default, but a special procedure is required for uploading a new flash via tftp at boot:

  1. Beginning with the router powered off, press and hold the reset button while powering the router on
  2. Release the reset button when the power led begins to slowly blink on and off.
  3. The router will now be in Firmware Restoration Mode, and it can be flashed with a new firmware via tftp at your leisure.
Architecture: MIPS
Vendor: Broadcom
bootloader: cfe
System-On-Chip: BCM5354KFBG
CPU/Speed: Broadcom BCM3302 / 240MHz
Flash-Chip: 4MB MX 29LV320CB
Flash size: 4 MiB
RAM: Samsung K4S281632I-UC60 / 166 MHz / 16 MiB
Wireless: Broadcom 5354 (core revision 13) 802.11b/g (integrated)
Ethernet: Switch in CPU
USB: Yes
Serial: Core supports 2 serial ports, only 1 is available on the PCB (no ready made port)

Note: Above info is mostly taken from the MightyOhm site, with some from dmesg.

Use the Asus Firmware Recovery Tool, Version, available here (select your operating system and “utilities”):

See MightyOhm's discussion.

Pinout: Pin 1 (white bar on silkscreen): 3.3V; Pin 2: RX; Pin 3: TX; Pin 4: GND.

If you're using GNU screen and a USB-serial adapter, the command will look something like this (OSX):

screen /dev/tty.SLAB_USBtoUART 115200,-parenb,-cstopb,cs8

On other OSes, you'll need to change the path to the USB-serial device.

See port.jtag for more JTAG details.

Warning! Kernel support for the radio is broken when using the 2.6 kernel (b43 driver) via the brcm47xx target in the original Backfire (10.03) release! OpenWrt doesn't enable the radio out of the box. If you enable it, processes get killed and the box becomes unusable. The issue is discussed here.

One option is to use the 2.4 kernel and the old proprietary broadcom driver (brcm-2.4 target). See the discussion in the WL500GP entry; note that the WL520GU is basically a WL500GP v2 with less RAM and FLASH.

Updated: As of r21470 (May 16, 2010) the stable b43 firmware is being used as the default in trunk builds and the box will work with wireless. It may not be completely stable yet but is somewhat usable. You will have to enable it in /etc/config/wireless.

Updated: In 10.03.1-rc1 (Backfire update RC1, August 2010), the b43 driver seems to work fine on the WL520GU. Hopefully this means 10.03.1 will have robust support for this router via the brcm47xx target.

Updated: as of 10.03.1-rc4 (February 2011) wifi works with brcm47xx

Updated: as of 10.03.1 (March 2012) With brcm47xx system hangs as soon as wifi enabled. Downgarded to the 2.4 kernel (still 10.03.1) using openwrt-brcm-2.4-squashfs.trx. More stable, but eventually hangs. I'm guessing that some process are dead/not responding, but I can still ping the box. Also tried a version built myself from the laest source. Same result. Much as I love openwrt (it runs well for me on 2 other boxes) I eventually gave up for this unit and switched to tomatousb (2.6), which works flawlessly for the wl-520gu.

USB requires the ohci driver. To use an external USB storage device, for example, enable the following configuration options:

  • Kernel Modules / USB Support / kmod-usb-core
    • Under kmod-usb-core: kmod-usb-ohci, kmod-usb2, kmod-usb-storage
  • Kernel Modules / Filesystems / kmod-fs-somefilesystem

See the USB storage page for more information.

As of r21428 (May 12, 2010) some broken ehci code in brcm47xx targets was fixed - essentially openwrt was brought back into sync with the linux 2.6.x mainline. USB devices can be recognized and ehci (available in the kmod-usb2 module) is not needed for USB 1.x devices. These are serviced by the ohci usb core

See MightyOhm's discussion of installing OpenWrt, but it's old, and probably obsolete.

The default network configuration is:

Interface Name Description Default configuration
br-lan LAN & WiFi
vlan0 (eth0.0) LAN ports (1 to 4) None
vlan1 (eth0.1) WAN port DHCP
wl0 WiFi Disabled

Numbers 0-3 are Ports 1-4 as labeled on the unit, number 4 is the Internet (WAN) on the unit, 5 is the internal connection to the router itself. Don't be fooled: Port 1 on the unit is number 3 when configuring VLANs. vlan0 = eth0.0, vlan1 = eth0.1 and so on.

Port Switch port
Internet (WAN) 4
LAN 1 3
LAN 2 2
LAN 3 1
LAN 4 0

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 and E. g. (gateway and DNS is not required).
  • Plug the power on and wait for the DMZ LED to light up.
  • While the DMZ LED is on immediately press any button (Reset and Secure Easy Setup will work) a few times .
  • If done right the DMZ LED will quickly flash 3 times every second.
  • You should be able to telnet to the router at now (no username and password)

NOTE: The root file system in failsafe mode is the SquashFS partition mounted in readonly mode. To switch to the normal writable root file system run mount_root and make any changes. Run mount_root now.

  1. Forgot/lost your password and you like to set a new one


  1. Forgot the routers IP address

uci get network.lan.ipaddr

  1. You accidentally run 'ipkg upgrade' or filled up the flash by installing to big packages (clean the JFFS2 partition and start over)

mtd -r erase rootfs_data If you are done with failsafe mode power cycle the router and boot in normal mode.

This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
  • Last modified: 2021/04/07 15:56
  • by tmomas