Advolex - Kein schöner Leben

Ein privates Blog, völlig ohne Allgemeininteresse.

Name: Advolex
Location: Lidingö, Sweden

Wednesday, March 4, 2009

Custom firmware w. Asus WL-500W

Mobile WLAN and UMTS Router

I bought the router Asus WL-500W in order to have it run OpenWRT Kamikaze 7.09 as a replacement for my previous Linksys WRT54G3G, which is still used in another location. The WRT54G3G has no USB ports but a CardBus slot, which contains a Huawei E600 UMTS (no HSDPA) adapter. The E600 serves the WAN port of the WRT54G3G running the Kamikaze 7.09 brcm-2.4 port since I was unable to get the WRT54G3G WLAN to work with the 2.6 kernel (brcm47xx port). This is a wellknown problem which is due to the chipset manufacturer Broadcom not releasing the source code for their proprietary WLAN driver for the Linux 2.6 kernel. (Actually, I believe it's the driver's Hardware Abstraction Layer - HAL- which is needed. Work is currently in progress in the open source community on alternative drivers, i.e. b43. The alternative drivers as of today, March 2009, are reported to work with some brcm chipsets, but according to my findings they do not yet work satisfactorily with the Broadcom WLAN chipsets in WRT54G3G (BCM4712 - 802.11g) and WL500W (BCM4321 - 802.11N-draft).

So, the new WL500W, which has two USB ports, is supposed to make use of a Huawei E220 UMTS (HSDPA) Modem, a dongle for WAN. This may not be altogether unproblematic, since the Linux 2.4 kernel has no built in support for USB modems. This was introduced in the 2.6 kernel with version 2.6.19 I believe. (http://wiki.debian.org/Huawei/E220: "E220 is supported natively in Linux kernels 2.6.20 and later, using the usbserial.ko (usbserial-generic interface) module. - Also usb_storage.ko is aware of HUAWEI E220 modem and no further action needs to be taken.")

I have experimented with a few of the open source firmwares for the WL-500W, but all seem to have their own shortcomings:

1. Koppel: www.koppel.cz/cdmawifi, versions 1.69 and 1,71. Based on the wellrespected Oleg firmwares (latest stable subversion "10") for the Asus WL-500 series of routers, which are based on stock Asus firmware and extensively modified with bugfixes. The Koppel modifications are done to get the WAN port use UMTS adapters and are developed by a czech gentleman by the name of Jiri Engelthaler. Based on the 2.4 kernel.

Koppel works very well on the WL-500W, both WAN (UMTS) and WLAN (brcm). The only caveat I have found are firewall issues, which remain from the Oleg firmware. It seems that the "A" directive in iptables is not working. I am unaware of any firewall rules with port-forwarding of SIP ports, which my setup requires, based on other than the "A" directive so the firewall doesn't work for med. The firewall is iptables with a web interface aswell as a post-firewall script. I was unable to configure the router for good and efficient use including asterisk (SIP) behind the NAT firewall.

2. Alpha versions of the Oleg firmwares can be found on Google Gode. It seems that someone has continued the development of Oleg's firmware, which has not progressed for more than a year. It runs fine, at least the subversion "d" I tried, but I could not get WAN to work with E220. No reference to the firewall issue in the list of changes.

3. Asus has brought out a new firmware for the WL-500W, version 2.0.0.6. I heard that the issues of the previous versions, corrected by Oleg, remain, so I did not work very long to check whether the E220 could be made to work. Certainly, it does not work out of the box.

4. X-WRT is a version of OpenWRT which is not a fork. It adds an improved webif configuration interface. This web interface uses some Flash memory, which is particularly limited in the WRT54G3G, only 4MB. So, only the WL-500W benefits from X-WRT if you need to install additional drivers to get E600 UMTS adapter to work. The Kamikaze 8.09 has recently been relesed, also by X-WRT, and looked fine in the brcm47xx port I tried. But i could not get the b43 driver which was installed automatically to control WLAN of the WL-500W. The mini-PCI card was not recognised.

5. DD-WRT is currently under heavy development. It looks very promising, so I installed the latest V.24 pre-SP2 mega build. It seems the WL-500W can handle it with its 8MB flash, but JFFS has only 320 kb available after enableing it. So, USB storage is required. Unfortunately I could not get E220 to work and it seems difficult to get IPKG packages to work without a functional WAN port for Internet access. It's kernel 2.4.37, so USB modems need special attention.

I'm currently investigating the possiblity to install Debian on the WL-500W. This can be done, according to http://wpkg.org/Running_Debian_on_ASUS_WL-500W, but I doubt that it will be beneficial to a router. It works very well on a NSLU2 running asterisk however. If m0n0wall is lightweight enough, I guess that could be possible. But with only 32MB of RAM available, the same with NSLU2 by the way, you must be very selective with what to install. I do need iptables, vlan, dnsmasq and a sip proxy such as milkfish, which is included in DD-WRT mega and voip builds.

Labels: , , , , ,

0 Comments:

Post a Comment

Links to this post:

<< Home