B.Friendit keyboard problem with functions keys

It’s probably nothing to set, but I’m unable to use my USB keyboard B.FriendIt correctly. Here is the link of the product (really nice for those who have to work a lot on computer).

All is ok, but function’s keys are fixed on multimedia key function and pressing [Fn] doesn’t change anything. I’ve tested it with Windows 11 (dual boot) and it works perfectly, so the problem is near Linux and I want to troubleshoot more, to find a solution.
Here is the configuration (I’m on a laptop, so it has internal keyboard and at office, this keyboard)

localectl status                                                                                                  127 ✘ 
System Locale: LANG=fr_FR.UTF-8
    VC Keymap: fr
   X11 Layout: fr
    X11 Model: pc105
  X11 Variant: azerty
  X11 Options: terminate:ctrl_alt_bksp

My first test, was using sudo showkey, but it give me no information :thinking:

sudo showkey                                                                                                          ✔ 
le mode clavier était ?INCONNU?
[ si vous essayez cela sous X Window, cela peut ne pas fonctionner
étant donné que le serveur X utilise également /dev/console ]

Appuyez sur n'importe quelle touche (le programme terminera 10s après la dernière touche enfoncée)...
code clavier  28 relâché
code clavier 115 appuyé     // pressing [F12] key (alone)
code clavier 115 relâché
code clavier  42 appuyé
code clavier  42 appuyé
code clavier  42 appuyé
code clavier 115 appuyé     // pressing [Left Shift]+[F12] key
code clavier 115 relâché
code clavier  42 relâché
code clavier  29 appuyé
code clavier  29 appuyé
code clavier 115 appuyé     // pressing [Left Ctrl]+[F12] key
code clavier 115 relâché
code clavier  29 relâché
code clavier 115 appuyé     // pressing [Fn]+[F12] key
code clavier 115 relâché
code clavier  56 appuyé
code clavier 115 appuyé     // pressing [Alt]+[F12] key
code clavier 115 relâché
code clavier  56 relâché
code clavier 100 appuyé
code clavier 100 appuyé
code clavier 115 appuyé     // pressing [Alt gr]+[F12] key
code clavier 115 relâché
code clavier 100 relâché
code clavier  97 appuyé
code clavier 115 appuyé     // pressing [right Ctrl]+[F12] key
code clavier 115 relâché
code clavier  97 relâché
code clavier  54 appuyé
code clavier 115 appuyé     // pressing [right shift]+[F12] key
code clavier 115 relâché
code clavier  54 relâché

I’m searching for a workaround on F5 (refresh navigation browser), F11 (full screen) and F12 (debugger) because I use them frequently.

If someone has a suggestion to troubleshoot deeper (change keyboard layout ? The keyboard could switch to a Mac layout and in this case, I could see the Fn key code with showkey), I’ll graceful him.

Appuyez sur n'importe quelle touche (le programme terminera 10s après la dernière touche enfoncée)...
code clavier  28 relâché
code clavier 464 appuyé         // Fn key when in Mac layout on the keyboard
code clavier 464 relâché

code clavier 115 appuyé         // F12 key (in Mac layout on keyboard)
code clavier 115 relâché

code clavier 464 appuyé
code clavier 115 appuyé
code clavier   0 appuyé         // something strange when pressing Fn+F12
code clavier   3 relâché
code clavier  80 relâché
...
code clavier 115 relâché
...
code clavier 464 appuyé
code clavier   0 relâché
code clavier   3 relâché
code clavier  80 relâché

Speaking about internal laptop keyboard, I’ve tried showkey with it too…

sudo showkey                                                                                                  ✔  16s  
...
code clavier  28 relâché
^[[24~code clavier  88 appuyé       // [F12] key from internal keyboard
code clavier  88 relâché
^[[24~code clavier  88 appuyé       // [F12] key from internal keyboard
code clavier  88 relâché
code clavier 115 appuyé             // [F12] key from USB keyboard
code clavier 115 relâché

This time [Fn]+[F12] on internal keyboard seems to be intercepted elsewhere (not able to show it in showkey)

Does the keyboard come with a driver cd or a link to a software package?

If it does it may require a driver which is not readily available with Linux.

Absolutely nothing.
I’ve tried to change settings at BIOS (that change Fn default status on internal keyboard, but does nothing on “KB700 pro” keyboard).

I don’t understand why it works while connected with Win11, but not on Manjaro :thinking:

From B.FriendIt website:

【 PLUG AND PLAY COMPATIBILITY 】 B.FRIENDIT keyboard is ready-to-use right out of the box, so there is no need to download and install any software or drivers onto your device before using it. Compatible With Windows 2000 / XP / 7 / 8 / 10 / Vista , Mac OS.
【 ON THE FLY MULTIMEDIA KEYS 】 12 Hotkeys designed specifically for both Windows & MAC OS. Shortcuts let you do more with less effort in the office and home. Enjoy convenience at your fingertips. NOTICE: Press for 3 seconds and indicators flash 5 times, then it will switch to MAC/WIN mode. (MAC mode on:LED is active on scroll lock ; Windows mode: LED is off)

So these works with Windows and Mac - hoorah - specifically desgined for … that says it - right?

Obviously there is no predefined config for Linux.

I would set it to Mac and then select a MacOS layout in the keyboard setup and see how that work out.

I’ve done the same reasoning but there is no difference (manjaro still have multimedia actions : F11=lower sound volume, F12=upper sound volume)
The documentation said “12 Hotkeys designed specifically for both Windows & MAC OS” because it a switching between multimedia mode (F1=screen backlight low, etc.) and the possibility to have normal function key (F1 could be the help access in LibreOffice Writer).
The second case never happens with manjaro… that’s why I would to go deeper to troubleshoot.

By the way, I’ve installed 6.4.9-1 kernel and I’ll try it… (until now I use 6.1.44)

I have noted that keyboard manufacturers seems to think we are in more need of media keys than function keys.

Are you sure there is no hotkey for swapping the function row? The manul for keyboard?

I mean my macBook has this fancy touch bar and systemsettings → keyboard contains a setting to swap this to function keys instead …

I am not sure a kernel lwill do trick … but who know :slight_smile: right?

1 Like

After many tries, I’m not able to use correctly this keyboard. As I have the main keyboard integrated to my laptop, I could have a workaround, so I’ll stop searching. Thanks for your ideas and propositions.

If a keyboard has an Fn key then it changes what scancode is sent, ie it’s internal to the keyboard. Apparently Macs are different.


We can remap the keys, but you’ll lose the media key functions.

Are you using wayland or X11?

There are various remapping utilities, that work on wayland and X.

If you use X then you can also use xkbcomp or xmodmap the latter being easier but deprecated, less versatile and much slower to apply the config. Whilst xkbcomp is the most capable, most people seem to choose xmodmap, so here’s an example:

# dump config
xmodmap -pke > ~/.Xmodmap

# Edit like so
keycode 115 = F12 F12 F12 F12 F12 F12 XF86Switch_VT_12

# Use it
xmodmap ~/.Xmodmap

https://wiki.archlinux.org/title/Xorg/Keyboard_configuration#Switching_state_immediately_when_Caps_Lock_is_pressed
https://man.archlinux.org/man/xkbcomp.1

https://wiki.archlinux.org/title/Xmodmap

2 Likes

My partner has this keyboard and never uses the function/multimedia keys to notice any problem, but I noticed it when updating her system

The manual is more like a quick-start guide and not very accurate about the mac/win button functions
http://www.b-friendit.com/web/support/download_file.jsp?cp_no=CP1593768941237

I have found from some errors and trials:

  • Function keys only work when used with the Fn key

  • If the keyboard is in win mode (3rd LED off):
    Fn + F10-F12 work for muting and adjusting audio
    Fn + F5-F9 keys do not work

  • If the keyboard is in mac mode (3rd LED on):
    Fn + F1-F12 work as function keys

Reopening this topic because I’ve finally found a solution. I’m unable to explain why it works (my manjaro knowledge is really too low) but it permit me to use correctly and fully this nice keyboard.
https://www.reddit.com/r/ManjaroLinux/comments/m00tij/f_keys_not_working/

It seems the keyboard is in Mac mode:
echo 2 | sudo tee /sys/module/hid_apple/parameters/fnmode

Now, I’ve to change it definitively, as it’s explained in the topic:
echo "options hid_apple fnmode=2" | sudo tee /etc/modprobe.d/hid_apple.conf

I hope someone could give me an explanation (maybe chatgpt :slight_smile: ) and maybe see if it’s possible to add “B.Friendit” keyboard in the list of keyboard model (to save time for some users)

This topic was automatically closed 3 hours after the last reply. New replies are no longer allowed.