Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Multiple layouts for keyboards not working through bluetooth
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Desktop Environments
View previous topic :: View next topic  
Author Message
madmin
n00b
n00b


Joined: 04 Nov 2018
Posts: 29

PostPosted: Sat Dec 14, 2024 11:05 am    Post subject: Multiple layouts for keyboards not working through bluetooth Reply with quote

Hi : )

I have two connected keyboards, each with its own layout and I want evdev to configure them with their own layout.
In other words (because I'm not sure my description was clear ; ) I want my azerty keyboard to be configured with FR layout while my qwerty keyboard is configured with US layout.

This was working pretty for years while I used two USB cabled keyboards but age came and I had to get new my keyboards.

Now I have one USB plugged US keyboard nicely configured with US layout but my French keyboard which is connected through bluetooth is also using US layout although according to Xorg.0.log it is configured as FR layout:

Quote:
[ 84582.997] (II) config/udev: Adding input device Keychron K1 Max Mouse (/dev/input/mouse3)
[ 84582.997] (**) Keychron K1 Max Mouse: Applying InputClass "mouse-all"
[ 84582.997] (**) Keychron K1 Max Mouse: Applying InputClass "mouse-all"
[ 84582.997] (II) Using input driver 'evdev' for 'Keychron K1 Max Mouse'
[ 84582.997] (**) Keychron K1 Max Mouse: always reports core events
[ 84582.997] (**) evdev: Keychron K1 Max Mouse: Device: "/dev/input/mouse3"
[ 84582.997] (EE) evdev: Keychron K1 Max Mouse: Unable to query fd: Inappropriate ioctl for device
[ 84583.022] (EE) PreInit returned 2 for "Keychron K1 Max Mouse"
[ 84583.022] (II) UnloadModule: "evdev"
[ 84583.024] (II) config/udev: Adding input device Keychron K1 Max Keyboard (/dev/input/event19)
[ 84583.024] (**) Keychron K1 Max Keyboard: Applying InputClass "evdev keyboard catchall"
[ 84583.024] (**) Keychron K1 Max Keyboard: Applying InputClass "Keychron Keychron K1 Max"
[ 84583.024] (II) Using input driver 'evdev' for 'Keychron K1 Max Keyboard'
[ 84583.024] (**) Keychron K1 Max Keyboard: always reports core events
[ 84583.024] (**) evdev: Keychron K1 Max Keyboard: Device: "/dev/input/event19"
[ 84583.024] (--) evdev: Keychron K1 Max Keyboard: Vendor 0x3434 Product 0xa11
[ 84583.024] (--) evdev: Keychron K1 Max Keyboard: Found 1 mouse buttons
[ 84583.024] (--) evdev: Keychron K1 Max Keyboard: Found scroll wheel(s)
[ 84583.024] (--) evdev: Keychron K1 Max Keyboard: Found relative axes
[ 84583.024] (II) evdev: Keychron K1 Max Keyboard: Forcing relative x/y axes to exist.
[ 84583.024] (--) evdev: Keychron K1 Max Keyboard: Found absolute axes
[ 84583.024] (II) evdev: Keychron K1 Max Keyboard: Forcing absolute x/y axes to exist.
[ 84583.024] (--) evdev: Keychron K1 Max Keyboard: Found keys
[ 84583.024] (II) evdev: Keychron K1 Max Keyboard: Configuring as mouse
[ 84583.024] (II) evdev: Keychron K1 Max Keyboard: Configuring as keyboard
[ 84583.024] (II) evdev: Keychron K1 Max Keyboard: Adding scrollwheel support
[ 84583.024] (**) evdev: Keychron K1 Max Keyboard: YAxisMapping: buttons 4 and 5
[ 84583.024] (**) evdev: Keychron K1 Max Keyboard: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200
[ 84583.024] (**) Option "config_info" "udev:/sys/devices/virtual/misc/uhid/0005:3434:0A11.0006/input/input20/event19"
[ 84583.024] (II) XINPUT: Adding extended input device "Keychron K1 Max Keyboard" (type: KEYBOARD, id 16)
[ 84583.024] (**) Option "xkb_rules" "evdev"
[ 84583.024] (**) Option "xkb_model" "pc105"
[ 84583.024] (**) Option "xkb_layout" "fr"
[ 84583.024] (**) Option "xkb_variant" "oss,nodeadkeys"
[ 84583.024] (**) Option "xkb_options" "terminate:ctrl_alt_bksp"
[ 84583.038] (II) evdev: Keychron K1 Max Keyboard: initialized for relative axes.
[ 84583.038] (WW) evdev: Keychron K1 Max Keyboard: ignoring absolute axes.
[ 84583.038] (**) Keychron K1 Max Keyboard: (accel) keeping acceleration scheme 1
[ 84583.038] (**) Keychron K1 Max Keyboard: (accel) acceleration profile 0
[ 84583.038] (**) Keychron K1 Max Keyboard: (accel) acceleration factor: 2.000
[ 84583.038] (**) Keychron K1 Max Keyboard: (accel) acceleration threshold: 4
[ 84583.039] (II) config/udev: Adding input device Keychron K1 Max (/dev/input/event21)
[ 84583.039] (II) No input driver specified, ignoring this device.
[ 84583.039] (II) This device may have been added with another device file.
[ 84583.040] (II) config/udev: Adding input device Keychron K1 Max Mouse (/dev/input/event20)
[ 84583.040] (**) Keychron K1 Max Mouse: Applying InputClass "evdev pointer catchall"
[ 84583.040] (**) Keychron K1 Max Mouse: Applying InputClass "mouse-all"
[ 84583.040] (**) Keychron K1 Max Mouse: Applying InputClass "mouse-all"
[ 84583.040] (II) Using input driver 'evdev' for 'Keychron K1 Max Mouse'
[ 84583.040] (**) Keychron K1 Max Mouse: always reports core events
[ 84583.040] (**) evdev: Keychron K1 Max Mouse: Device: "/dev/input/event20"
[ 84583.040] (--) evdev: Keychron K1 Max Mouse: Vendor 0x3434 Product 0xa11
[ 84583.040] (--) evdev: Keychron K1 Max Mouse: Found 3 mouse buttons
[ 84583.040] (--) evdev: Keychron K1 Max Mouse: Found scroll wheel(s)
[ 84583.040] (--) evdev: Keychron K1 Max Mouse: Found relative axes
[ 84583.040] (--) evdev: Keychron K1 Max Mouse: Found x and y relative axes
[ 84583.040] (II) evdev: Keychron K1 Max Mouse: Configuring as mouse
[ 84583.040] (II) evdev: Keychron K1 Max Mouse: Adding scrollwheel support
[ 84583.040] (**) evdev: Keychron K1 Max Mouse: YAxisMapping: buttons 4 and 5
[ 84583.040] (**) evdev: Keychron K1 Max Mouse: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200
[ 84583.040] (**) Option "config_info" "udev:/sys/devices/virtual/misc/uhid/0005:3434:0A11.0006/input/input21/event20"
[ 84583.040] (II) XINPUT: Adding extended input device "Keychron K1 Max Mouse" (type: MOUSE, id 17)
[ 84583.040] (II) evdev: Keychron K1 Max Mouse: initialized for relative axes.
[ 84583.041] (**) Keychron K1 Max Mouse: (accel) keeping acceleration scheme 1
[ 84583.041] (**) Keychron K1 Max Mouse: (accel) acceleration profile 0
[ 84583.041] (**) Keychron K1 Max Mouse: (accel) acceleration factor: 2.000
[ 84583.041] (**) Keychron K1 Max Mouse: (accel) acceleration threshold: 4


Here is my Xorg keyboards configuration:
Code:
Section "InputClass"
  Identifier "Keychron K5 - Apple, Inc. Aluminium Keyboard (ANSI)"
  MatchUSBID  "05ac:024f"
  Driver "evdev"
  Option "XkbLayout"  "us"
  Option "XkbOptions" "terminate:ctrl_alt_bksp"
  Option "XkbModel"     "pc105"
  MatchIsKeyboard "on"
EndSection

Section "InputClass"
  Identifier "Keychron Keychron K1 Max"
  MatchUSBID  "3434:0a11"
  Driver "evdev"
  Option "XkbLayout"  "fr"
  Option "XkbOptions" "terminate:ctrl_alt_bksp"
  Option "XkbModel"     "pc105"
  Option "XkbVariant"   "oss,nodeadkeys"
  Option "XkbVariant"   "alternative"
  MatchIsKeyboard "on"
EndSection


I don't understand what I'm missing, why if Xorg.0.log tells me that the keyboard is configured to use FR layout, the keyboard is still using US layout.

Anyone with an idea?

Cheers : )
Back to top
View user's profile Send private message
madmin
n00b
n00b


Joined: 04 Nov 2018
Posts: 29

PostPosted: Sat Dec 14, 2024 11:12 am    Post subject: Reply with quote

Perhaps it is because for "xinput" the bluetooth keyboard is not a keyboard:

Without bluetooth keyboard:
Code:

$ xinput list
⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Keychron Keychron K5                      id=8    [slave  pointer  (2)]
⎜   ↳ Logitech USB Receiver Mouse               id=10   [slave  pointer  (2)]
⎜   ↳ Logitech USB Receiver Consumer Control    id=11   [slave  pointer  (2)]
⎜   ↳ VirtualPS/2 VMware VMMouse                id=14   [slave  pointer  (2)]
⎜   ↳ VirtualPS/2 VMware VMMouse                id=15   [slave  pointer  (2)]
⎣ Virtual core keyboard                         id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Keychron Keychron K5                      id=7    [slave  keyboard (3)]
    ↳ Logitech USB Receiver                     id=9    [slave  keyboard (3)]
    ↳ Logitech USB Receiver System Control      id=12   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=13   [slave  keyboard (3)]


With bluetooth keyboard:
Code:

$ xinput list
⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Keychron Keychron K5                      id=8    [slave  pointer  (2)]
⎜   ↳ Logitech USB Receiver Mouse               id=10   [slave  pointer  (2)]
⎜   ↳ Logitech USB Receiver Consumer Control    id=11   [slave  pointer  (2)]
⎜   ↳ VirtualPS/2 VMware VMMouse                id=14   [slave  pointer  (2)]
⎜   ↳ VirtualPS/2 VMware VMMouse                id=15   [slave  pointer  (2)]
⎜   ↳ Keychron K1 Max Keyboard                  id=16   [slave  pointer  (2)]
⎜   ↳ Keychron K1 Max Mouse                     id=17   [slave  pointer  (2)]
⎣ Virtual core keyboard                         id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Keychron Keychron K5                      id=7    [slave  keyboard (3)]
    ↳ Logitech USB Receiver                     id=9    [slave  keyboard (3)]
    ↳ Logitech USB Receiver System Control      id=12   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=13   [slave  keyboard (3)]
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Desktop Environments All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum