Hi there,
I want to share what I needed to do to get WIFI working on WL500 GP V1 with a recent checkout of kamikaze:
(in my case r18759 - which is Kernel 2.6.30-10)
I have built my kamikaze image without a wifi driver, because I want to be more flexible.
-> However I only use the kernel-modules which get compiled with the firmware. - No kernel modules from a repository.
--
Broadcom (B43) -> Broadcom Chipsets
As mentioned on the WL500 GP V1 hardware page - The origial "ASUS WL-120G Wifi" which has a Broadcom chipset does not work with Kernel 2.6. Wrong! It works in the meantime. The hardware wiki page just hasn't been updated.
You need the following kernel modules:
* wireless-tools
* kmod-b43
* kmod-b43legacy
(And a few dependencies - opkg will tell you which ones)
now read on at the "COMMON" section below
--
Madwifi -> Atheros chipsets
If your have already installed a Wifi Card with an atheros chipset and successfully use MADWIFI ("kmod-madwifi") with the current kamikaze trunk, you are a lucky person, because on some wifi setups, the infamous "stuck beacon" problem has returned.
How the problem shows? Simple: Your WIFI connection is stable, however when you use a channel with many disturbances and push a lot of data through your wifi-connection, after a few seconds your data-rate suddenly drops and sometimes completely stalls. And it never recovers to normal until you reboot or restart wifi.
When you do "dmesg" on your router, you will find many "stuck beacon" messages. Believe me, using options in /etc/config/wireless help a little bit, but do not eliminate the problem. And you will only sleep well if those messages don't appear anymore.
The problem is known for years and has never been fully sorted out. Since madwifi contains proprietary closed code, and the new open source drivers ATH5K / ATH9K are getting stable, it is likely that this problem will never be sorted out.
Some say that reverting to an old version of madwifi helps, but I cannot confirm this.
The main problem with reverting to an older madwifi version is that it needs to be patched to compile with a new kernel.
To sum up: If you encounter the "stuck beacon" problem, you should consider turning your back on madwifi, (And try using ATH5K / ATK9K instead) or switch back to the original broadcom card, or use white russian or kernel 2.4.
If you want to try nevertheless, install the module
* kmod-madwifi
now read on at the "COMMON" section below
---
ATH5K -> Atheros chipsets
You need the following kernel modules
* kmod-ath
* kmod-ath5k
(And a few dependencies - opkg will tell you which ones)
now read on at the "COMMON" section below
(Does not work with my TP-Link TL-WN861N)
---
ATH9K -> Atheros chipsets
You need the following kernel modules
* kmod-ath
* kmod-ath9k
(And a few dependencies - opkg will tell you which ones)
now read on at the "COMMON" section below
(Works with my TP-Link TL-WN861N)
---
COMMON
You also need the following to have WPA-encryption:
* wpa-supplicant
* hostapd-mini
Copy the modules from your kamikaze/bin/brcm47xx/packages directory to your box with "scp" and install them using "opkg install foo.ipkg"
Remove the "other" wifi kernel modules which you don't need with "opkg remove foo"
now reboot your box.
Most likely openwrt will have automatically updated your /etc/config/wireless file. However sometimes this doesn't work. So you might want to do the following:
wifi down
rm /etc/config/wireless
wifi detect
You will see the default-configuration which most likely works with your driver. Should look somehow like this:
config wifi-device radio0
option type mac80211
option channel 5
option macaddr 00:1b:fc:91:8f:eb
option hwmode 11g
# REMOVE THIS LINE TO ENABLE WIFI:
option disabled 1
config wifi-iface
option device radio0
option network lan
option mode ap
option ssid red
option encryption none
If nothing is displayed, the driver probably does not support the card. -> try a diffent driver or card.
Oterwise do
wifi detect > /etc/config/wireless
and edit the file with "vi".
1) Delete the "option disabled 1" line
2) Set "option ssid" to your wlan name.
3) If you have installed wpa-supplicant, you can change "option encryption none" to "option encryption psk" or "option encryption psk2" for WPA or WPA2 and add an additional line: "option key mysecretkey"
4) Important Note: When using ATH9K, the script will suggest "option hwmode 11ng". That didn't work with my "TP-Link TL-WN861N" card. I had to change it to "option hwmode 11g".
Now do:
wifi up
and wifi should be working. Then you can start fiddling with the other options in there and do "wifi up" to reinitialize wifi.
If if does not work, you might want to do "dmesg" to view the most recent kernel messages.
---
Oh, another thing: Your clients will not always get their IP addresses via dhcp from your router. DHCP only works on your wifi interface, if wifi was brought up on boot. So reboot instead of doing "wifi up" after fiddling with your config or assign an IP address manually on your wifi clients (for testing).
---
I currently use the "old" broadcom "ASUS WL-120G" wifi card, because transfers are faster when using ssh. Maybe the b43 does encryption in hardware while the ath9k does not? Maybe, don't know. Might be a different problem...
lg, Mr.M