Thursday, October 16, 2008

How to make BCM4318 (with Acer wireless button) works in Debian!

My laptop model is Acer 5021. I have a problem with the wireless , in particular the acer wireless button that's in front of the body can't lid up to enable the wireless just like in Windows. In the past I got it work by installing ndiswrapper and acerhk. But after the Edgy came out , it haven't worked anymore.

Now I switched from Ubuntu to Debian and found the same problem. But I see the suggestion message while it's booting. Something likes


[ 59.267579] b43-phy0 ERROR: Firmware file "b43/ucode5.fw" not found or load failed.
[ 59.267588] b43-phy0 ERROR: You must go to http://linuxwireless.org/en/users/Drivers/b43#devicefirmware and download the correct firmware (version 4).

So I went to the url in the message. It told me to do this

sudo apt-get install b43-fwcutter

Now I reboot and the error message disappeared. But I still can't use the wireless because of the Acer wireless button. I googling more , go to acerhk website. And found that acerhk is stopped and got into the main kernel development (names acer_acpi) that's the good news. and now acer_acpi is moved to acer_wmi.

if you have the kernel>= 2.6.25 , it might have the acer_wmi in the kernel already and be detected to load automatically. You can check this by

lsmod | grep acer

you would found acer_wmi.

so the rest is easy. Due to this useful (and hidden) document , you can


To read the status of the wireless radio (0=off, 1=on):cat /sys/devices/platform/acer-wmi/wirelessTo enable the wireless radio:echo 1 > /sys/devices/platform/acer-wmi/wirelessTo disable the wireless radio:echo 0 > /sys/devices/platform/acer-wmi/wirelessTo set the state of the wireless radio when loading acer-wmi, pass:wireless=X (where X is 0 or 1)


and It works!!!

I wonder this method also works with the other Acer models which have the problem with the wireless button in front of it.

good luck.