I bought a keyboard that is shown on lsusb
:
Bus 002 Device 009: ID 0c45:7603 Microdia
but the Ctrl, Windows/Super and Alt buttons are all mapped to Shift button. So I followed the hardware code and find this solution here, which works fine:
dkms status aziokbd
aziokbd, 1.0.0, 3.13.0-48-generic, x86_64: installed
However, after reboot, the keyboard goes back to original state( ctrl/alt/win mapped to shift) while dkms status
is same as above, so I have to sudo dkms uninstall -m aziokbd -v 1.0.0
and install again.
How could I "save" the installed state? thank you.
I've ubuntu 14.04. Output of uname -a
Linux PC 3.13.0-48-generic #80-Ubuntu SMP Thu Mar 12 11:16:15 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
debug info after installed, rebooted and not working:
##################### dkms status ############################### 8192cu, 1.9, 3.11.0-26-generic, x86_64: installed 8192cu, 1.9, 3.13.0-44-generic, x86_64: installed 8192cu, 1.9, 3.13.0-45-generic, x86_64: installed 8192cu, 1.9, 3.13.0-46-generic, x86_64: installed 8192cu, 1.9, 3.13.0-48-generic, x86_64: installed 8192cu, 1.9, 3.2.0-65-generic, x86_64: installed 8192cu, 1.9, 3.2.0-67-generic, x86_64: installed 8192cu, 1.9, 3.2.0-68-generic, x86_64: installed 8192cu, 1.9, 3.2.0-69-generic, x86_64: installed 8192cu, 1.9, 3.2.0-70-generic, x86_64: installed 8192cu, 1.9, 3.2.0-72-generic, x86_64: installed 8192cu, 1.9, 3.2.0-74-generic, x86_64: installed aziokbd, 1.0.0, 3.13.0-48-generic, x86_64: installed virtualbox, 4.3.10, 3.13.0-46-generic, x86_64: installed virtualbox, 4.3.10, 3.13.0-48-generic, x86_64: installed virtualbox-guest, 4.3.10, 3.13.0-46-generic, x86_64: installed virtualbox-guest, 4.3.10, 3.13.0-48-generic, x86_64: installed #########################################3 lsmod | grep -e usbhid -e aziokbd #######################################3 aziokbd 12900 0 usbhid 52659 0 hid 106148 2 hid_generic,usbhid ######################################## lsusb -t ##################################### /: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M |__ Port 1: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M |__ Port 1: Dev 3, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M |__ Port 2: Dev 4, If 0, Class=Human Interface Device, Driver=usbhid, 12M |__ Port 3: Dev 5, If 0, Class=Video, Driver=uvcvideo, 480M |__ Port 3: Dev 5, If 1, Class=Video, Driver=uvcvideo, 480M /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M |__ Port 2: Dev 3, If 0, Class=Vendor Specific Class, Driver=rtl8192cu, 480M
debug info after reinstalled and working:
########################### dkms status ########################### 8192cu, 1.9, 3.11.0-26-generic, x86_64: installed 8192cu, 1.9, 3.13.0-44-generic, x86_64: installed 8192cu, 1.9, 3.13.0-45-generic, x86_64: installed 8192cu, 1.9, 3.13.0-46-generic, x86_64: installed 8192cu, 1.9, 3.13.0-48-generic, x86_64: installed 8192cu, 1.9, 3.2.0-65-generic, x86_64: installed 8192cu, 1.9, 3.2.0-67-generic, x86_64: installed 8192cu, 1.9, 3.2.0-68-generic, x86_64: installed 8192cu, 1.9, 3.2.0-69-generic, x86_64: installed 8192cu, 1.9, 3.2.0-70-generic, x86_64: installed 8192cu, 1.9, 3.2.0-72-generic, x86_64: installed 8192cu, 1.9, 3.2.0-74-generic, x86_64: installed aziokbd, 1.0.0, 3.13.0-48-generic, x86_64: installed virtualbox, 4.3.10, 3.13.0-46-generic, x86_64: installed virtualbox, 4.3.10, 3.13.0-48-generic, x86_64: installed virtualbox-guest, 4.3.10, 3.13.0-46-generic, x86_64: installed virtualbox-guest, 4.3.10, 3.13.0-48-generic, x86_64: installed ###################### lsmod | grep -e usbhid -e aziokbd ######################### usbhid 52659 0 aziokbd 12900 0 hid 106148 2 hid_generic,usbhid ######################### lsusb -t ############################ /: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M |__ Port 1: Dev 7, If 0, Class=Human Interface Device, Driver=aziokbd, 1.5M |__ Port 1: Dev 7, If 1, Class=Human Interface Device, Driver=aziokbd, 1.5M |__ Port 2: Dev 4, If 0, Class=Human Interface Device, Driver=usbhid, 12M |__ Port 3: Dev 5, If 0, Class=Video, Driver=uvcvideo, 480M |__ Port 3: Dev 5, If 1, Class=Video, Driver=uvcvideo, 480M /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M |__ Port 2: Dev 3, If 0, Class=Vendor Specific Class, Driver=rtl8192cu, 480M
dkms status
,lsmod | grep -e usbhid -e aziokbd
andlsusb -t
and same after reboot when it's not working. Also you may try addusbhid.quirks=0x0c45:0x7603:0x4
toGRUB_CMDLINE_LINUX_DEFAULT
in/etc/default/grub
reference: https://unix.stackexchange.com/questions/55495/prevent-usbhid-from-claiming-usb-device . btw you need to runsudo update-grub
– user.dz Apr 07 '15 at 09:43