I had a similar issue where my laptop keys stopped working one by one after re-installing windows 7 with SP1 on my Toshiba laptop
. This included all the Fn key functions. The keyboard had worked fine for a day after the reinstall. The issue started all of a sudden while working on the laptop.
Checked typing in different programs, safe mode, using Ubuntu as Operating system. Tried all the software and driver update that everyone suggested on forums. Even thought of replacing keyboard as thought it's life is over. Spent a day trying different options. Even removed keys from laptop and cleaned underneath. But to no avail.
However, the most unlikely solution
I came across was someone mentioning damaged ribbon cable that connects laptop keyboard to motherboard. I unscrewed the keyboard with cable still attached to motherboard. The cable was folded like a V from the keyboard to the motherboard, which I straighten when I pulled the keyboard towards the touchpad. All the keys that didn't work now started working including the Fn keys.
So for me the problem was the folded ribbon cable.
I guess because of years of being bent (like paper) the wires inside the ribbon are giving up. (and also I have removed the keyboard countless time over the years while dismantling the laptop thus straining the cable while putting it back to the motherboard). I guess the bending of cable was causing issues with matrix of the ribbon cable. Sometimes when I pressed a key, three characters use to appear. Pressing O showed French characters. It looks like it was a coincidence that the keys stopped working just around the time of reinstalling Windows 7.
SOLUTION I folded the ribbon cable other way round without flattening the cable like paper so that the original bend straightens.
I missed the basics of troubleshooting - to look at the cable connections before looking for other solutions. Looking at the 'Fn only
' issue people are having, it seems like a driver/software issue. However, for issue with some keys, it looks like it's a ribbon issue. It has fixed my issue at least for now. I am typing with the same keyboard :)