Linux WiFi: operation not possible due to RF-kill

Some people have been experiencing WiFi problems with Ubuntu 10.10 since an update that happend just before Christmas 2010. The problem seems to be a bug in a kernel module, which prevents the rfkill's soft and hard block from syncing correctly.

In practice that means you can press your laptop's WiFi button as often as you want, it doesn't change anything. Your wireless adapter will always appear as disabled. If you try to start the wireless interface manually you get the following error message:
sk@ubuntu:~# sudo ifconfig wlan0 up
SIOCSIFFLAGS: Operation not possible due to RF-kill
If you do a rfkill list all you should get an output similar to this:
sk@ubuntu:~$ sudo rfkill list all
0: hp-wifi: Wireless LAN
Soft blocked: yes
Hard blocked: no
1: phy0: Wireless LAN
Soft blocked: yes
Hard blocked: no
Depending on the state of your WiFi button the Hard blocked will either be yes or no. Press the WiFi button and run rfkill list all again to make sure the value for Hard blocked changes.

The actual problem is, that the Soft blocked value is always set to yes, because for some reason the syncing between the hardware block and the software block doesn't work as supposed. To override this behavior, you can just run rfkill unblock wifi and it should work again. Double check by entering rfkill list all again and make sure it looks like this, with all values set to no:
sk@ubuntu:~$ sudo rfkill list all
0: hp-wifi: Wireless LAN
Soft blocked: no
Hard blocked: no
1: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
If you then run ifconfig wlan0 up (or enable the wireless via your desktop's network manager) you should be able to connect to a wireless network again without any further issues.

The configuration, which I've been using:
  • Compaq Presario CQ60
  • Atheros AR5001 Wireless Network Adapter
  • Ubuntu 10.10
I also read, that some people could fix it, by turning off the WiFi button during the boot process and then switch it on again, once the system is up and running. It seems that the system expects the hard block to be set to off. This is still a bug, but it could explain why then the soft block didn't sync with the hard block any more.



I've just launched a new side project of mine:

Bugfender - A modern remote logger tailor-made for mobile development

It's currently free and you can sign up here: https://app.bugfender.com/signup

Any kind of feedback is more than appreciated :-)

24 comments:

  1. I have the problem where the soft block doesn't sync with the hard block. If the hard button is off, and I boot to the desktop, if I turn on the switch, the WiFi manager still won't start the wireless.

    It'd be nice if there was a script to bump the soft option on when the hard switch is detected to have been switched to on. Like through acpid events, or laptop-mode-tools.

    ReplyDelete
  2. Thanks. Thank you so much!!!!! Save my live.

    ReplyDelete
  3. Cannot change Hard blocked after 10.10 install

    Just installed 10.10 on Toshiba Satellite L305
    I have tried all of the above, and while I can turn soft blocked on and off with block and unblock commands, hard blocked is always YES

    Tried:
    rfkill unblock all
    rfkill unblock wifi
    rfkill unblock 1

    even tried all of the above after trying alt-F8
    and tried to set both to blocked (I can set soft blocked to yes or no)and then reboot with alt-F* pressed

    any help??

    ReplyDelete
  4. I have same problem, gentoo

    ReplyDelete
  5. This helped me for ubuntu 10.10 on an HP dv2202ca (dv2000). THANKS!

    ReplyDelete
  6. Fixed mine perfectly! Thank You! Kudos!

    ReplyDelete
  7. Thank you so much, i've been at it for 5 hours... and all of a sudden it was fixed

    ReplyDelete
  8. Hi man, you are the one!
    I'passed thought the web (I can't count the hours... or better days or months). I think that are many people stucked on this.
    Thank's a lot
    Bruce Magnani from Brazil

    ReplyDelete
  9. I had similar problems too! I've posted on [URL="http://ubuntuforums.org/showthread.php?p=10748476#post10748476"]11.04 "Natty wireless issue - Acer - Device not ready, rfkill soft auto blocked"[/URL], and eventually Chili555 found me solution. Very grateful :-)

    ReplyDelete
  10. Thanks a bunch. I started out with bug 732677 and rfkill lead me to the final (I hope :) ) solution.

    ReplyDelete
  11. Hey, I also have a CQ60 laptop and I've got the wireless working with the steps you outlined, but then when I reboot, it doesn't automatically work. When I do the same steps all over again, it sometimes works and sometimes it doesn't, switching between "yes" and "no" for the soft and hard blocks. Right now, it's been stuck on wifi as hard and soft blocked, but rfkill ublock wifi and rfkill unblock all doesn't change anything. Any idea what to do about this?

    ReplyDelete
  12. I had a worse problem. Whenever I did "rfkill unblock all", my wireless would go from
    Soft blocked: Yes
    Hard blocked: No

    to

    Soft blocked: No
    Hard blocked: Yes

    Tantalizing, isn't it? In the end, I created the following script as a (barely acceptable) solution:

    sudo rmmod -f ath5k
    sudo rfkill unblock all
    sudo odprobe ath5k

    I hope this script helps someone. In the time being, if anybody has any sort of solution, that will be much appreciated.

    I am using a Natty Narwhal, (Ubuntu 11.04) running on Fujitsu Siemens Amilo PA3515 with an Atheros AR5001 wireless module.

    Hope this helps,
    Shoka

    ReplyDelete
  13. This helped me out incredibly. I spent a good chunk of the last two days trying to resolve this!

    ReplyDelete
  14. Thank you very much!, I tried it in Natty 64bit and it worked like a charm.

    ReplyDelete
  15. thanks. this post is very helpful for me.

    ReplyDelete
  16. Parce que bien!!!
    Me salvaste de estallar mi PC contra la pared.
    Gracias

    ReplyDelete
  17. Shoka comment is the one that really helped. Just the command is modprobe not odprobe. It worked for my friends Compaq CQ60 with ubuntu 11.x. I ran the following commands in terminal:

    sudo rmmod -f ath5k
    sudo rfkill unblock all
    sudo modprobe ath5k

    ReplyDelete
  18. sudo rmmod -f ath5k
    sudo rfkill unblock all
    sudo modprobe ath5k
    this is realy the solution thx for it :)

    ReplyDelete
  19. I have an HP 630. I upgraded from 10.10 --> 11.04 --> 11.10 --> 12.04.
    My wireless was working well till the 11.10 upgrade.
    After I upgraded to 12.04, my wireless adapter could not be enabled. The system was not allowing me to enable the card using Fn+F10. Tried the rfkill stuff but that wud not help.

    As a last step, I set my BIOS to factory defaults and reconfigured it....and it started working well!

    ReplyDelete
  20. On my Toshiba satellite 670 the solution from Pawan Patki (resetting the bios) worked for me, too

    ReplyDelete
  21. NICE!!!

    same issue on Sony Vaio VPCEB190L running linux Mint 13, suddendly wifi got dead, now is back...

    ReplyDelete
  22. Thank you so much! You're a genius.

    ReplyDelete