Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 11 Aug 2012 11:25:25 +0200
From:      Kra OTN <kraotn@gmail.com>
To:        freebsd-usb@freebsd.org
Subject:   USB keyboard partially functioning
Message-ID:  <CANec788SGbmvqa5sXR=4a0MLZOj0aULneFsYrHN8r-o7XCoLdw@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Hi guys,

I'm currently facing a problem with my Corsair K60 USB keyboard on a system
that is running FreeBSD9 with a standard kernel (9.0-RELEASE FreeBSD
9.0-RELEASE #0: Tue Jan  3 07:46:30 UTC 2012
root@farrell.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  amd64)

The keyboard is detected with the following device nodes:

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
*syslog:*
Aug 11 11:05:47 desktop kernel: ugen0.3: <Corsair> at usbus0
Aug 11 11:05:47 desktop kernel: ukbd_probe:
Aug 11 11:05:47 desktop kernel: ukbd_probe:
Aug 11 11:05:47 desktop kernel: ukbd0: <Corsair Corsair Vengeance K60
Keyboard, class 0/0, rev 2.00/1.00, addr 3> on usbus0
Aug 11 11:05:47 desktop kernel: ukbd_attach: Parsing HID descriptor of 65
bytes
Aug 11 11:05:47 desktop kernel: ukbd_parse_hid: Found left control
Aug 11 11:05:47 desktop kernel: ukbd_parse_hid: Found right control
Aug 11 11:05:47 desktop kernel: ukbd_parse_hid: Found left shift
Aug 11 11:05:47 desktop kernel: ukbd_parse_hid: Found right shift
Aug 11 11:05:47 desktop kernel: ukbd_parse_hid: Found left alt
Aug 11 11:05:47 desktop kernel: ukbd_parse_hid: Found right alt
Aug 11 11:05:47 desktop kernel: ukbd_parse_hid: Found left GUI
Aug 11 11:05:47 desktop kernel: ukbd_parse_hid: Found right GUI
Aug 11 11:05:47 desktop kernel: ukbd_parse_hid: Found keyboard events
Aug 11 11:05:47 desktop kernel: ukbd_parse_hid: Found keyboard numlock
Aug 11 11:05:47 desktop kernel: ukbd_parse_hid: Found keyboard capslock
Aug 11 11:05:47 desktop kernel: ukbd_parse_hid: Found keyboard scrolllock
Aug 11 11:05:47 desktop kernel: ukbd_set_leds: leds=0x00
Aug 11 11:05:47 desktop kernel: ukbd_set_leds: leds=0x02
Aug 11 11:05:47 desktop kernel: kbd2 at ukbd0
Aug 11 11:05:47 desktop kernel: ukbd_probe:
Aug 11 11:05:47 desktop kernel: ukbd_set_leds_callback: len=1, id=0
Aug 11 11:05:47 desktop kernel: uhid0: <Corsair Corsair Vengeance K60
Keyboard, class 0/0, rev 2.00/1.00, addr 3> on usbus0
Aug 11 11:05:47 desktop kernel: ukbd_probe:
Aug 11 11:05:47 desktop kernel: ukbd_probe:
Aug 11 11:05:47 desktop kernel: ukbd1: <Corsair Corsair Vengeance K60
Keyboard, class 0/0, rev 2.00/1.00, addr 3> on usbus0
Aug 11 11:05:47 desktop kernel: ukbd_attach: Parsing HID descriptor of 37
bytes
Aug 11 11:05:47 desktop kernel: ukbd_parse_hid: Found left control
Aug 11 11:05:47 desktop kernel: ukbd_parse_hid: Found right control
Aug 11 11:05:47 desktop kernel: ukbd_parse_hid: Found left shift
Aug 11 11:05:47 desktop kernel: ukbd_parse_hid: Found right shift
Aug 11 11:05:47 desktop kernel: ukbd_parse_hid: Found left alt
Aug 11 11:05:47 desktop kernel: ukbd_parse_hid: Found right alt
Aug 11 11:05:47 desktop kernel: ukbd_parse_hid: Found left GUI
Aug 11 11:05:47 desktop kernel: ukbd_parse_hid: Found right GUI
Aug 11 11:05:47 desktop kernel: ukbd_parse_hid: Found keyboard events
Aug 11 11:05:47 desktop kernel: ukbd_set_leds: leds=0x00
Aug 11 11:05:47 desktop kernel: ukbd_set_leds: leds=0x02
Aug 11 11:05:47 desktop kernel: kbd3 at ukbd1
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
*usbconfig:*
ugen0.1: <EHCI root HUB Intel> at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps)
pwr=SAVE
ugen1.1: <XHCI root HUB 0x1b21> at usbus1, cfg=0 md=HOST spd=SUPER
(5.0Gbps) pwr=SAVE
ugen2.1: <XHCI root HUB 0x1b21> at usbus2, cfg=0 md=HOST spd=SUPER
(5.0Gbps) pwr=SAVE
ugen3.1: <EHCI root HUB Intel> at usbus3, cfg=0 md=HOST spd=HIGH (480Mbps)
pwr=SAVE
ugen0.2: <product 0x0024 vendor 0x8087> at usbus0, cfg=0 md=HOST spd=HIGH
(480Mbps) pwr=SAVE
ugen3.2: <product 0x0024 vendor 0x8087> at usbus3, cfg=0 md=HOST spd=HIGH
(480Mbps) pwr=SAVE
ugen3.3: <product 0x3000 vendor 0x0cf3> at usbus3, cfg=0 md=HOST spd=FULL
(12Mbps) pwr=ON
ugen0.3: <Corsair Vengeance K60 Keyboard Corsair> at usbus0, cfg=0 md=HOST
spd=FULL (12Mbps) pwr=ON
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

As the syslog suggests right/left shift, ctrl and alt keys are working
correctly. But those keys are the _only_ functioning keys. Debugging ukbd
(sysctl hw.usb.ukbd.debug=15) gives me the following output on a working
key:
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
ukbd_put_key: 0xe2 (226) pressed
ukbd_intr_callback: actlen=15 bytes
ukbd_intr_callback: modifiers = 0x0004
ukbd_put_key: 0x4e0 (1248) released
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

But when pressing a key that is not working, the "a" for example I get the
following output:
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Aug 11 11:12:45 desktop kernel: ukbd_intr_callback: actlen=15 bytes
Aug 11 11:12:45 desktop kernel: ukbd_intr_callback: modifiers = 0x0000
Aug 11 11:12:46 desktop kernel: ukbd_intr_callback: actlen=15 bytes
Aug 11 11:12:46 desktop kernel: ukbd_intr_callback: modifiers = 0x0000
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

I want to remind you that _all_ keys are not working except those parsed
by ukbd_parse_hid.

The USB keyboard is functioning correctly on a Linux machine, so it's not a
hardware defect. Can someone help me out troubleshooting this problem?


Regards,

M.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANec788SGbmvqa5sXR=4a0MLZOj0aULneFsYrHN8r-o7XCoLdw>