OK, I have a very strange problem which recently started on my laptop (running Arch Linux) and it's got me really stumped!

Basically my battery ran out whilst I was away from my laptop and it shut down... Which shouldn't really be a problem. But when I plugged my laptop in and restarted it a little later on, I could no longer connect wirelessly to my home network or see any other nearby wifi networks. It used to auto-connect to my home network using wicd. And up until this problem started, tools like wifi-menu, wicd-curses and wicd-gtk would show all of my neighbours wifi networks alongside my own too. But nowadays it sees nothing! :(

After trying to connect to my home wifi network manually using wpa_supplicant I kept getting errors like:
Could not set interface wlan0 flags: Operation not possible due to RF-kill
As far as I understand it, rfkill monitors the state of any hardware / software switches that control the wireless card. For some reason it sees the hard switch as always off (hard blocked:yes), regardless of whether it is in the on or off position. So for some reason, something thinks that the actual 'hard' switch, the physical switch for the wifi card on the front of my laptop is off, and never registers that it has been turned on. Consequently the wireless card is never getting powered up....Very odd!

Running the command rfkill list all yields the following output regardless of whether the wifi switch is on or off:

0: phy0: Wireless LAN
    Soft blocked: no
    Hard blocked: yes

And using rfkill unblock all or rfkill unblock phy0 does not affect the Hard block, it would only reset the soft block. Which isn't the problem, because the soft block flag is never set!

So I'm completely stuck! I've tried unloading my wireless cards kernel driver module and using rfkill unblock all before reloading the driver with modprobe (which I've seen mentioned in several places). I've tried removing /dev/rfkill, which has been recommended in several online articles I've seen too. But no matter what I do the wireless card is always disabled.

I've tried booting into some other distros (Crunchbang, Ubuntu, Fedora) and I have absolutely no problems connecting to my network via wifi. The switch for the wireless card works ok under the other distros too. Which leads me to believe that there is nothing wrong with my laptop or the wifi switch. So there must be a data file or configuration setting somewhere in my Arch install which either got corrupted, went out of sync, or had a dodgy value written to it when the battery ran out the other day. Whatever it is, it's causing the system to think that the wireless card is turned off.

I'm considering just cutting my losses and reinstalling Arch (which will probably solve the problem), but any suggestions anybody has would be most welcome because I would like to understand what has caused this issue!

Anyway, thanks in advance.

Recommended Answers

All 5 Replies

Have you done a complete shutdown and then recharged the battery before you tried to boot it up?

That was the first thing I did when I realised the battery had ran out. I plugged the charger into it, restarted the laptop, then shut it down fully and left it to charge. Once it was fully charged, I started it back up and logged in and that was when it failed to connect to my wireless network.

As mentioned previously, I don't think it's a problem with the wifi card as wifi works on all of the other distro's I've ran on it. Incidentally, it's not dual/multi boot or anything. My laptop has no HD and the DVD drive is broken, so I run various distros on several USB drives (with persistent storage). Evidently something is borked big time on the Arch install! XD
I still suspect some dodgy/corrupt data or config settings either in the kernel or in some other hardware or network service that runs on startup.... The trouble is I'm having trouble finding where it has gone wrong. :s

You should just turn off and on again wifi card by hardware button on laptop.
In my case(Fujitsu Lifebook AH530)pushing Fn+F5 twice helped.
Some people also write that removing battery for a while helps in that situation(in case your laptop doesn't have any hardware switch).

That doesn't work for me. As already explained, there is a hardware switch on my laptop to enable/disable the wireless card. I've tried other distro's and the hard switch and the wireless card works properly with no problem.

On the Arch drive, I think the problem is ACPI related or something. For some reason the state of the wireless switch is either not being monitored, or something is reporting the state of the switch incorrectly. I've tried everything I could think of and everything I found on the internet about these kinds of problems. Even wiping the Arch drive and re-installing Arch from scratch didn't solve the problem. The result was the same. On Arch there is suddenly no way to enable my wireless card. The card is recognised, but is never enabled because Arch thinks that the hard switch is always off (even when it is blatantly on!)

In the end I went back to Crunchbang with DWM and Openbox as my WMs of choice. Being Debian based, Crunchbang uses slightly older packages, but I can live with that for now.
I'll probably try Arch again in a few months to see if the problem has been fixed. Maybe it was something I'd picked up in a recent update to the system or something. Or perhaps some kind of config setting that I'd missed. Either way Arch is the problem because the wireless problem was only occurring under Arch!

Very odd!

I am using a laptop with a broken battery. It has to be plugged in to work. This thread seems to suggest that my wifi won't work with a dead battery. It worked with the installation disk, but not without it. The passphrase and PSK are accepted and my wifi works, but in soft, not hard. I mean it doesn't work even though the operating system is connected to it on startup.

'rfkill list' exposes the problem, but is there a work around? Can I get the wifi to work in arch even with a dead battery?

commented: At 9 years later, while I have ideas it would be difficult to cover this here. Time for a new discussion. -4
Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.