Ubuntu – Laptop keyboard not working, how to enable wifi using usb keyboard (or remap the laptops FN key to a key on the usb keyboard)


I've been around the block with this several times and nothing seems to hardware unblock the WiFi on this laptop.

I am running Ubuntu 10.04 LTS. Laptop is a Medion MD96350. Its built in keyboard is defective so I have to use a USB keyboard.

The WiFi worked fine until today, I returned home to find that my kids have been on the laptop and somehow disabled/hardware blocked the WiFi. And I cannot re-enable it.

On the original built in keyboard, the switch is a key combo press (FN+ an F key I can't remember – the keyboard has since been removed).

There is a strip across the top of the base showing disc access status, battery indicator etc, power switch, then the WiFi indicator and some media indicators which are also keys (play, pause, prev. next.) which all light up blue, and get 'bluer' once 'pressed' (no physical button). The WiFi indicator no longer lights up. I'm unsure whether this is also a 'key', but nothing happens if it is 'pressed'.

WiFi card info from sudo lspci -v

0a:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG [Golan] Network Connection (rev 02)
        Subsystem: Intel Corporation Device 1001
        Flags: bus master, fast devsel, latency 0, IRQ 32
        Memory at fa000000 (32-bit, non-prefetchable) [size=4K]
        Capabilities: [c8] Power Management version 2
        Capabilities: [d0] Message Signalled Interrupts: Mask- 64bit+ Queue=0/0 Enable+
        Capabilities: [e0] Express Legacy Endpoint, MSI 00
        Capabilities: [100] Advanced Error Reporting <?>
        Capabilities: [140] Device Serial Number 85-83-c7-ff-ff-77-1b-00
        Kernel driver in use: iwl3945
        Kernel modules: iwl3945

sudo rfkill list

3: phy2: Wireless LAN
        Soft blocked: no
        Hard blocked: yes

sudo ifconfig wlan4 up

SIOCSIFFLAGS: Unknown error 132

The driver is iwl3945, which is associated. I have tried removing it and reinstating it to no effect. I have tried various other things to no effect.

When I had windows installed, I could raise and switch off the card via windows with no problems.
I have since removed windows, and do not wish to reinstall it just to raise the WiFi card every time it is switched off in Ubuntu.

BIOS has the options to have the hardware switched off on boot, or in the state it was during the last shutdown. There is no option to have it switched on at boot.

So, my question is, since there appears to be no resolution for this directly, as in having Ubuntu being able to hardware unblock it, is there a way to map the FN key the laptops' built in keyboard had, to my USB keyboard, and how. Or is there a way to access the built in media "buttons" (the strip across the top of the laptop) to be able to have Ubuntu recognise the WiFi "button" (if it is indeed a "button")?


Best Answer

So, maybe I'll get to delete my answer in deference to someone more knowledgeable, but my understanding...

You can't remap the fn key

  1. open a terminal and run xev
  2. mash on your fn key

My understanding is that fn's signal is never sent to the os. Rather, it modifies the signals that other keys send. I'm wrong if xev shows anything in response to your mashing.

With this premise, I'll guess that fn+wifi sends a signal directly to your hardware to toggle your wifi card off and on. Running windows or linux or whatever isn't ever going to affect this cause and effect relationship.

However, you may be able to remap an fn combo like fn+wifi.

Enable disabled hardware from the OS layer

I don't have a clue on this part of your question. If you could do it windows (mind, without using the keyboard..), then theoretically it's possible in linux. You just need to hope the kernel module supporting your wifi card supports this, and then that someone has written ui software to take advantage of the feature.

If this is the core of your question, then it might be a duplicate of this one: Unblocking hardware switch Wifi

Related Question