Asus WL500g deluxe

The device is fully supported by FreeWRT. You can install the FreeWRT firmware via the update function of the vendor web administration. The vendor use NVRAM to store information about the configuration of the device. FreeWRT ignores these settings.

Architecture: MIPS
Vendor: Broadcom
Bootloader: CFE 
System-On-Chip:  Broadcom 5365
CPU Speed: 200 Mhz
Flash size: 4 MB
RAM: 32 MB (some older units have only 16 MB enabled)
Wireless: integrated Broadcom BCM4306 802.11b/g Wireless LAN Controller
Ethernet: Robo switch BCM5325e
USB: 2x USB 2.0   
Serial: yes
JTAG: no
NVRAM: yes

The router is sometimes called Asus WL-500GX or Asus WL-500g Deluxe V.

Network configuration

The default network configuration is:

interface namedescriptiondefault ip configuration
eth0.0LAN Ports192.168.1.1/24
eth0.1WAN Portdhcp
eth2Wifidisabled for security reasons

TFTP Installation notes

Pull the plug, press and hold the reset button, plug the device and wait until the PWR LED starts flashing slowly (almost immediately). Now release the reset button and upload the firmware by TFTP using the flash script (preferred) or the following commands:

TFTP commands:

tftp 192.168.1.1
tftp> rexmt 1
tftp> binary
tftp> trace
tftp> put freewrt-asus-wl500g-deluxe-brcm-2.4-jffs2.bin
tftp> quit

After this wait 3-5 minutes, depending on the size of the firmware image. After that you need to manually reset the router.

As an alternative (or if this installation routine doesn't do the trick for you) you can always use the ASUS Recovery tool from your utilities CD to upload your firmware.

Serial console

You do not need to solder anything on this device. If you open the device, you will see the PIN for accessing the serial device near the LEDs. They are documented on the board. The simplest way is to use a RS232 or USB phone cable and connect RX, TX and ground.

Bootloader commands

Use ctrl-c to get into the bootloader prompt. Use "help" to get all available commands.

If you want to reset nvram variables use:

CFE>nvram erase
CFE>reboot

dmesg

CPU revision is: 00029007
Primary instruction cache 8kB, physically tagged, 2-way, linesize 16 bytes.
Primary data cache 4kB, 2-way, linesize 16 bytes.
Linux version 2.4.34 (spaetzle@iwan) (gcc version 3.4.4 (FreeWRT rev. 3580)) #2 Wed Sep 26 20:25:17 CEST 2007
Determined physical RAM map:
 memory: 02000000 @ 00000000 (usable)
On node 0 totalpages: 8192
zone(0): 8192 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line: init=/etc/preinit noinitrd console=ttyS0,115200 rootfstype=squashfs root=/dev/mtdblock2
CPU: BCM5365 rev 1 at 200 MHz
Using 100.000 MHz high precision timer.
Calibrating delay loop... 199.47 BogoMIPS
Memory: 30548k/32768k available (1416k kernel code, 2220k reserved, 100k data, 88k init, 0k highmem)
Dentry cache hash table entries: 4096 (order: 3, 32768 bytes)
Inode cache hash table entries: 2048 (order: 2, 16384 bytes)
Mount cache hash table entries: 512 (order: 0, 4096 bytes)
Buffer cache hash table entries: 1024 (order: 0, 4096 bytes)
Page-cache hash table entries: 8192 (order: 3, 32768 bytes)
Checking for 'wait' instruction...  unavailable.
POSIX conformance testing by UNIFIX
PCI: Initializing host
PCI: Fixing up bus 0
PCI: Fixing up bridge
PCI: Setting latency timer of device 01:00.0 to 64
PCI: Fixing up bus 1
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
Starting kswapd
Registering mini_fo
devfs: v1.12c (20020818) Richard Gooch (rgooch@atnf.csiro.au)
devfs: boot_options: 0x1
JFFS2 version 2.1. (C) 2001 Red Hat, Inc., designed by Axis Communications AB.
squashfs: version 3.0 (2006/03/15) Phillip Lougher
pty: 256 Unix98 ptys configured
Serial driver version 5.05c (2001-07-08) with MANY_PORTS SHARE_IRQ SERIAL_PCI enabled
ttyS00 at 0xb8000300 (irq = 3) is a 16550A
ttyS01 at 0xb8000400 (irq = 3) is a 16550A
b44.c:v0.93 (Mar, 2004)
PCI: Setting latency timer of device 00:01.0 to 64
kmod: trying to execute user mode helper '/sbin/hotplug' with args 0='/sbin/hotplug' 1='net' and env 'HOME=/' 'PATH=/sbin:/bin:/usr/sbin:/usr/bin' 'INTERFACE=eth0' 'ACTION=register'
eth0: Broadcom 47xx 10/100BaseT Ethernet 00:15:f2:6a:e7:dc
Physically mapped flash: Found an alias at 0x400000 for the chip at 0x0
Physically mapped flash: Found an alias at 0x800000 for the chip at 0x0
Physically mapped flash: Found an alias at 0xc00000 for the chip at 0x0
Physically mapped flash: Found an alias at 0x1000000 for the chip at 0x0
Physically mapped flash: Found an alias at 0x1400000 for the chip at 0x0
Physically mapped flash: Found an alias at 0x1800000 for the chip at 0x0
Physically mapped flash: Found an alias at 0x1c00000 for the chip at 0x0
 Amd/Fujitsu Extended Query Table v1.1 at 0x0040
number of CFI chips: 1
cfi_cmdset_0002: Disabling fast programming due to code brokenness.
Flash device: 0x400000 at 0x1c000000
bootloader size: 262144
Physically mapped flash: Filesystem type: squashfs, size=0x194409
Creating 7 MTD partitions on "Physically mapped flash":
0x00000000-0x00040000 : "cfe"
0x00040000-0x003d0000 : "linux"
0x000b3800-0x00250000 : "rootfs"
mtd: partition "rootfs" doesn't start on an erase block boundary -- force read-only
0x003f0000-0x00400000 : "nvram"
0x003d0000-0x003f0000 : "fwcf"
0x00040000-0x003f0000 : "fwrt_all"
0x00250000-0x003d0000 : "rootfs_data"
IEEE 802.2 LLC for Linux 2.1 (c) 1996 Tim Alpaerts
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP, IGMP
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 2048 bind 4096)
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com>
All bugs added by David S. Miller <davem@redhat.com>
VFS: Mounted root (squashfs filesystem) readonly.
Mounted devfs on /dev
Freeing unused kernel memory: 88k freed
Algorithmics/MIPS FPU Emulator v1.5
diag: Detected 'ASUS WL-500g Deluxe'
Probing device eth0: found!
b44: eth0: Link is up at 100 Mbps, full duplex.
b44: eth0: Flow control is off for TX and off for RX.
mini_fo: using base directory: /
mini_fo: using storage directory: /jffs
jffs2.bbc: SIZE compression mode activated.
NET4: Ethernet Bridge 008 for NET4.0
PCI: Setting latency timer of device 01:03.0 to 64
PCI: Enabling device 01:03.0 (0004 -> 0006)
kmod: trying to execute user mode helper '/sbin/hotplug' with args 0='/sbin/hotplug' 1='net' and env 'HOME=/' 'PATH=/sbin:/bin:/usr/sbin:/usr/bin' 'INTERFACE=wl0' 'ACTION=register'
wl0: Broadcom BCM4320 802.11 Wireless Controller 4.80.53.0
Universal TUN/TAP device driver 1.5 (C)1999-2002 Maxim Krasnyansky
usb.c: registered new driver usbdevfs
usb.c: registered new driver hub
PCI: Enabling device 01:02.2 (0000 -> 0002)
ehci_hcd 01:02.2: PCI device 1106:3104
ehci_hcd 01:02.2: irq 2, pci mem c016c000
usb.c: new USB bus registered, assigned bus number 1
EHCI: Enabling VIA 6212 workarounds
ehci_hcd 01:02.2: USB 2.0 enabled, EHCI 1.00, driver 2003-Dec-29/2.4
hub.c: USB hub found
hub.c: 4 ports detected
kmod: trying to execute user mode helper '/sbin/hotplug' with args 0='/sbin/hotplug' 1='usb' and env 'HOME=/' 'PATH=/sbin:/bin:/usr/sbin:/usr/bin' 'ACTION=add' 'DEVFS=/proc/bus/usb' 'DEVICE=/proc/bus/usb/001/001' 'PRODUCT=0/0/204' 'TYPE=9/0/1'
PCI: Setting latency timer of device 00:03.0 to 64
usb-ohci.c: USB OHCI at membase 0xb8003000, IRQ 6
usb-ohci.c: usb-00:03.0, PCI device 14e4:4715
usb.c: new USB bus registered, assigned bus number 2
hub.c: USB hub found
hub.c: 2 ports detectedkmod: trying to execute user mode helper '/sbin/hotplug' with args 0='/sbin/hotplug' 1='usb' and env 'HOME=/' 'PATH=/sbin:/bin:/usr/sbin:/usr/bin' 'ACTION=add' 'DEVFS=/proc/bus/usb' 'DEVICE=/proc/bus/usb/002/001' 'PRODUCT=0/0/0' 'TYPE=9/0/0'