Ports and Interfaces > USB

International keyboard scan codes not being recognized

(1/3) > >>

Edio:
I Have a brazilian (ABNT2) HID keyboard implementation, everything works fine but two scan codes are completely ignored.
The ignored scan codes are 0x85 and 0x87. which are not standart for US keyboard.
In my HID descriptor, bCountryCode is 0x00, I do not Know what more I can do.
The interesting part is that I have a brazilian Dell keyboard connected to the same computer sending exact the same report and the scan codes 0x85 and 0x87 are interpreted with no problem.
Someone could give me a light on the subject, please?

Jan Axelson:
The fact that you have a working keyboard points to the device as the problem.

A protocol analyzer would show what is happening when you press those keys on both keyboards and could offer a clue.

http://janaxelson.com/development_tools.htm#analyzers

Edio:
   As a matter of fact I have a Total Phase Beagle hardware analyser and the SouceUSB software.
  Both keyboards send me the same report, for example: 00 00 85 00 00 00 00 00, but one keyboard generates a key press the other do not.
  More interesting, I can built a report like this 00 00 04 85 00 00 00 00 in my keyboard project and there is only a keystroke 'A'.
  For information 0x85 is a dot in the Keypad and 0x87 is a  /? in an diferente position.

Jan Axelson:
Check Windows Device Manager to find out if both keyboards have the same assigned drivers.

Edio:
  I am using Win7 for testing, but the behavior is the same in the Win XP.
  I just test in Linux and had the same result. All keys and LEDs work but these two keys.
  The driver are the same for both keyboards (kbdclass.sys and kbdhid.sys) version 6.1.7601.17514.
  The only diference is that my keyboard lacks power management (remote wakeup).
  I guess I need to mention that the HID keyboard is part of a composite device with a CDC VCP, wich is working normaly.

Navigation

[0] Message Index

[#] Next page

Go to full version