I recently bought an Asus WL-500g Premium wireless lan router. I already have a Dlink DI-624+ AP at home which I don’t really need – but I bought the Asus just to play around with 😉
After plugging it in and checking out the webinterface it has been shipped with I immediately changed firmware and flashed OpenWRT WhiteRussian RC6 on the device via diag mode and tftp as described here.
Everything went smooth and after rebooting the device I was able to ssh to the router for the first time.
The first thing I did was enabling the full 32MB of RAM with the following nvram settings – take care to use these only on WL-500g Premium routers! At the same time some networking quirks should be fixed:
nvram set sdram_init=0x0009
nvram set sdram_ncdl=0
nvram set vlan1ports=”0 5*”
nvram set wan_ifname=vlan1
nvram set lan_ifnames=”vlan0 eth2″
nvram set lan_ifname=br0
nvram commit
reboot
After rebooting I had 32MB of RAM and about 6MB of flash available. Using ipkg I installed some packages such as ntpclient (synchronizes the routers clock), strace, tcpdump and wl. Useful ipkg commands:
ipkg update
ipkg list | less
Mounting an USB stick was easy, following this document I installed the following modules via ipkg: kmod-usb2, kmod-usb-storage, kmod-vfat. Afterwards I loaded the newly installed modules with insmod – or just reboot the device. The USB stick ended up mounted as /mnt/disc0_1.
Related links:
Asus WL500g forum
WRT Wiki
hardware-hacking.com (Pictures)
Serial console without opening the cover 🙂
WL500g custom firmware
Running Debian on Asus WL500g
X-bit labs router review (with some technical details)
DebianWRT