touch-packages team mailing list archive
-
touch-packages team
-
Mailing list archive
-
Message #46462
[Bug 1361338] Re: [udev] changing hwdb requires calling udevadm control --reload
All of these steps are necessary:
- udevadm hwdb --update
- udevadm control --reload
- replug the keyboard or do a unbind-bind-cycle via sysfs
Not doing any one of them will not produce the intended effect.
--
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to systemd in Ubuntu.
https://bugs.launchpad.net/bugs/1361338
Title:
[udev] changing hwdb requires calling udevadm control --reload
Status in systemd package in Ubuntu:
New
Bug description:
I have a small gaming keyboard (Ideozon Fang) which has a terrible
default keymapping that I want to fix. To do that, I need to change
its default keymapping. But only for that keyboard and no other. My
system is Ubuntu 14.04 (amd64).
As an example, I will change the key '3' which is by default mapped to
'Numpad 3' to 'PgDn'.
The old way that used to work (and still does in Debian 7.6) was this:
<----- snip ----->
root@debian~# /lib/udev/keymap -i /dev/input/event7
Press ESC to finish, or Control-C if this device is not your primary keyboard
scan code: 0x7005B key code: kp3
root@debian~# cat /etc/udev/keymaps/ideazon-zboard
0x7005B pagedown
root@debian~# /lib/udev/keymap /dev/input/event7 /etc/udev/keymaps/ideazon-zboard
Remapped scancode 0x7005b to 0x6d (prior: 0x51)
root@debian~# evtest /dev/input/event7
Input driver version is 1.0.1
Input device ID: bus 0x3 vendor 0x1038 product 0x310 version 0x111
Input device name: "Ideazon Zboard USB Gaming Device"
[...]
Event: time 1408993871.777960, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7005b
Event: time 1408993871.777971, type 1 (EV_KEY), code 109 (KEY_PAGEDOWN), value 1
<----- snap ----->
However, this method does not work anymore in 14.04 (for instance,
there is no 'keymap' utility). Now, if I researched it correctly, we
are supposed to do this:
<----- snip ----->
root@ubuntu:~# lsusb | grep -i ideazon
Bus 003 Device 009: ID 1038:0310 Ideazon, Inc.
root@ubuntu:~# cat /etc/udev/hwdb.d/91-local-ideazon-zboard.hwdb
keyboard:usb:v1038p0310*
KEYBOARD_KEY_07005b=pagedown
root@ubuntu:~# udevadm hwdb --update
root@ubuntu:~# evtest /dev/input/event6
Input driver version is 1.0.1
Input device ID: bus 0x3 vendor 0x1038 product 0x310 version 0x111
Input device name: "Ideazon Zboard USB Gaming Device"
[...]
Event: time 1408993986.205654, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7005b
Event: time 1408993986.205654, type 1 (EV_KEY), code 81 (KEY_KP3), value 1
<----- snap ----->
But, as you can see, it does not work. 'evtest' still reports the key
as 'Numpad 3'. Even unplugging and re-plugging the keyboard has no
effect. 'udevadm' seems to compile my custom file alright (it
complains if I purposefully put a syntax error in it). But I still
cannot redefine my keymap.
I do not know if this is a problem of the newer udev itself. But even
if it is, Ubuntu should not use it until it actually works. Especially
not in a LTS version.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1361338/+subscriptions