18

Hi I have a problem with my new USB Lenovo keyboard, I can't (don't know how) switch Fn keys in Linux, on windows it was very easy.

But I don't know what I can do on Linux to switch Fn keys (or disable), do you know any solution? I need standard functions of F1 through F12...

10
  • 6
    Try pressing fn + Esc. Apr 18, 2015 at 8:13
  • Do you mean the key with the label Fn, or the 12 keys with 12 different labels Fn with n being one of 1 to 12? What exactly do you want the keys to do? Apr 18, 2015 at 13:05
  • @Zacharee1 I tried, it doesnt work Apr 18, 2015 at 15:36
  • @Volker Siegel I mean 12 keys (additional functionality of F1-11), now when I press F1 then i mute sound, i have to press Fn key and F1... I want to primary function of F1 was F1 not mute, F2 not volume down, etc... And the question is how to switch that functionality (as an example i gave you link with solution for windows) or disable all Fn functions (mute, volume down, volume up...) Apr 18, 2015 at 15:36
  • So you want to have to press fn before you press F1-12 for it to function as a shortcut key? Apr 18, 2015 at 15:51

2 Answers 2

39

enter image description here

this is the best solution what i found ;-)

6
  • You will be happy to know that there is someone else with the exact same solution out there :D Thanks for the pic, I was starting to think of which small heavy object I could use to keep this key pressed. All that for a keyboard of very average quality...
    – Adversus
    Sep 30, 2015 at 12:11
  • 9
    Did you do the FN+ESC trick?
    – Natim
    Dec 21, 2015 at 21:13
  • 2
    FN+ESC will only work directly on the laptop not this keyboard, the keyboard miss also on/off switch I think the developer of this keyboard was fool. Jan 8, 2016 at 20:14
  • 2
    "Smart" engineers from lenovo broke that solution. Now the Fn key is between control and windows keys on the left of space bar. A paper blocker or heavy object are definitely a no go at that place. Actually putting the Fn key there is really awkward because it's very easy to mistake it with Windows key. I'm considering buying another (non lenovo) keyboard :-(
    – kriss
    Aug 17, 2017 at 13:51
  • solaar installed via pip worked for me with the "K400 Plus" model. example: solaar config 1 fn-swap off
    – erjoalgo
    Jul 7, 2020 at 8:28
6

I found a software solution.

clone the following program from github:

git clone https://github.com/lentinj/tp-compact-keyboard.git

compile to following program:

cd tp-compact-keyboard/tp-compact-usb-keyboard
make
sudo ./tp-compact-usb-keyboard /dev/hidraw1

Maybe some errors are shown when you execute the program.

This program sent 2 keystrokes to the keyboard (0x05 and 0x01).

i think, you can't press them physically:

http://www.kbdedit.com/manual/low_level_vk_list.html

They are mapped to special keys.

this is only a temporary solution - after a reboot this settings are gone.

maybe you create a cronjob to fix it permanently:

http://www.cyberciti.biz/faq/linux-execute-cron-job-after-system-reboot/

3
  • PS: Model-No: SK-8821 Bus 002 Device 002: ID 17ef:6018 Lenovo
    – MaCXyLo
    May 6, 2016 at 17:02
  • same keyboard, also works for me! +1 :)
    – supervacuo
    May 19, 2016 at 9:09
  • Worked for Lenovo SK-8821 in Xubuntu 16.04
    – fikipollo
    Aug 21, 2020 at 8:38

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .