ASUS WL-520gu
The hardware is similar to that of the WL500GPv2, and the information there is relevant to this unit too.
Hardware Highlights
SoC | Ram | Flash | Network | USB | Serial | JTag |
---|---|---|---|---|---|---|
Broadcom BCM5354 / 240MHz | 16MiB | 4MiB | 4×1 | Yes | Yes | ? |
Installing OpenWrt
- follow → generic.flashing
- consider:
The boot_wait
nvram variable is set by default, but a special procedure is required for uploading a new flash via tftp at boot:
- Beginning with the router powered off, press and hold the reset button while powering the router on
- Release the reset button when the power led begins to slowly blink on and off.
- The router will now be in Firmware Restoration Mode, and it can be flashed with a new firmware via tftp at your leisure.
Hardware
Info
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) |
JTAG: | ? |
Note: Above info is mostly taken from the MightyOhm site, with some from dmesg
.
Flashing
Use the Asus Firmware Recovery Tool, Version 4.0.7.9, available here (select your operating system and “utilities”): http://support.asus.com/Download.aspx?SLanguage=en&m=WL-520GU&p=11&os=
Photos
Serial
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.
JTAG
See port.jtag for more JTAG details.
Radio
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
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
Specific Configuration
See MightyOhm's discussion of installing OpenWrt, but it's old, and probably obsolete.
Interfaces
The default network configuration is:
Interface Name | Description | Default configuration |
---|---|---|
br-lan | LAN & WiFi | 192.168.1.1/24 |
vlan0 (eth0.0) | LAN ports (1 to 4) | None |
vlan1 (eth0.1) | WAN port | DHCP |
wl0 | WiFi | Disabled |
Switch Ports (for VLANs)
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 |
Failsafe mode
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.
Boot into 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 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 192.168.1.1 now (no username and password)
What to do in failsafe mode?
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.
- Forgot/lost your password and you like to set a new one
passwd
- Forgot the routers IP address
uci get network.lan.ipaddr
- 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.