At 2012-11-15 15:13:48,"Tomas Bodzar" <tomas.bod...@gmail.com> wrote: > >Maybe this can be problem http://deskthority.net/wiki/Noppoo_Choc_Mini >here? Specifically http://deskthority.net/wiki/NKRO-over-USB_issues >
If it is the problem as these web pages describe, does it mean there is no easy way to correct the behaviour of the Noppoo keyboard on OpenBSD, no matter 5.2 or current? >On Wed, Nov 14, 2012 at 9:37 PM, Stuart Henderson <s...@spacehopper.org> wrote: >> >> This gives more information which might be useful, >> >> pkg_add usbutils >> lsusb -d 1006: -v >> >> (-d 1006: restricts to devices matching the vendor ID of this keyboard). Here is the lsusb -d 106: -v output: Bus 003 Device 002: ID 1006:0022 iRiver, Ltd. Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 8 idVendor 0x1006 iRiver, Ltd. idProduct 0x0022 bcdDevice 1.40 iManufacturer 0 iProduct 2 USB Keyboard iSerial 0 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 59 bNumInterfaces 2 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xa0 (Bus Powered) Remote Wakeup MaxPower 100mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 3 Human Interface Device bInterfaceSubClass 1 Boot Interface Subclass bInterfaceProtocol 1 Keyboard iInterface 0 HID Device Descriptor: bLength 9 bDescriptorType 33 bcdHID 1.11 bCountryCode 0 Not supported bNumDescriptors 1 bDescriptorType 34 Report wDescriptorLength 71 Report Descriptor: (length is 71) Item(Global): Usage Page, data= [ 0x01 ] 1 Generic Desktop Controls Item(Local ): Usage, data= [ 0x06 ] 6 Keyboard Item(Main ): Collection, data= [ 0x01 ] 1 Application Item(Global): Usage Page, data= [ 0x08 ] 8 LEDs Item(Local ): Usage Minimum, data= [ 0x01 ] 1 NumLock Item(Local ): Usage Maximum, data= [ 0x03 ] 3 Scroll Lock Item(Global): Logical Minimum, data= [ 0x00 ] 0 Item(Global): Logical Maximum, data= [ 0x01 ] 1 Item(Global): Report Size, data= [ 0x01 ] 1 Item(Global): Report Count, data= [ 0x03 ] 3 Item(Main ): Output, data= [ 0x02 ] 2 Data Variable Absolute No_Wrap Linear Preferred_State No_Null_Position Non_Volatile Bitfield Item(Global): Report Count, data= [ 0x05 ] 5 Item(Main ): Output, data= [ 0x01 ] 1 Constant Array Absolute No_Wrap Linear Preferred_State No_Null_Position Non_Volatile Bitfield Item(Global): Usage Page, data= [ 0x07 ] 7 Keyboard Item(Local ): Usage Minimum, data= [ 0xe0 ] 224 Control Left Item(Local ): Usage Maximum, data= [ 0xe7 ] 231 GUI Right Item(Global): Report Count, data= [ 0x08 ] 8 Item(Main ): Input, data= [ 0x02 ] 2 Data Variable Absolute No_Wrap Linear Preferred_State No_Null_Position Non_Volatile Bitfield Item(Local ): Usage Minimum, data= [ 0x04 ] 4 A Item(Local ): Usage Maximum, data= [ 0x28 ] 40 Return (Enter) Item(Local ): Usage, data= [ 0x4f ] 79 Right Arrow Item(Local ): Usage, data= [ 0x50 ] 80 Left Arrow Item(Local ): Usage, data= [ 0x2b ] 43 Tab Item(Local ): Usage, data= [ 0x2c ] 44 Space Bar Item(Local ): Usage, data= [ 0x51 ] 81 Down Arrow Item(Local ): Usage, data= [ 0x52 ] 82 Up Arrow Item(Global): Report Count, data= [ 0x2b ] 43 Item(Main ): Input, data= [ 0x02 ] 2 Data Variable Absolute No_Wrap Linear Preferred_State No_Null_Position Non_Volatile Bitfield Item(Local ): Usage, data= [ 0x53 ] 83 Num Lock and Clear Item(Global): Report Count, data= [ 0x01 ] 1 Item(Main ): Input, data= [ 0x02 ] 2 Data Variable Absolute No_Wrap Linear Preferred_State No_Null_Position Non_Volatile Bitfield Item(Local ): Usage Minimum, data= [ 0x59 ] 89 Keypad 1 and END Item(Local ): Usage Maximum, data= [ 0x64 ] 100 \ and | (Backslash and Bar, UK and Non-US Keyboard near left shift) Item(Global): Report Count, data= [ 0x0c ] 12 Item(Main ): Input, data= [ 0x02 ] 2 Data Variable Absolute No_Wrap Linear Preferred_State No_Null_Position Non_Volatile Bitfield Item(Main ): End Collection, data=none Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0008 1x 8 bytes bInterval 10 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 3 Human Interface Device bInterfaceSubClass 0 No Subclass bInterfaceProtocol 0 None iInterface 0 HID Device Descriptor: bLength 9 bDescriptorType 33 bcdHID 1.11 bCountryCode 0 Not supported bNumDescriptors 1 bDescriptorType 34 Report wDescriptorLength 123 Report Descriptor: (length is 123) Item(Global): Usage Page, data= [ 0x0c ] 12 Consumer Item(Local ): Usage, data= [ 0x01 ] 1 Consumer Control Item(Main ): Collection, data= [ 0x01 ] 1 Application Item(Global): Report ID, data= [ 0x01 ] 1 Item(Local ): Usage Minimum, data= [ 0x00 ] 0 Unassigned Item(Local ): Usage Maximum, data= [ 0x3c 0x02 ] 572 AC Format Item(Global): Logical Minimum, data= [ 0x00 ] 0 Item(Global): Logical Maximum, data= [ 0x3c 0x02 ] 572 Item(Global): Report Count, data= [ 0x01 ] 1 Item(Global): Report Size, data= [ 0x10 ] 16 Item(Main ): Input, data= [ 0x00 ] 0 Data Array Absolute No_Wrap Linear Preferred_State No_Null_Position Non_Volatile Bitfield Item(Main ): End Collection, data=none Item(Global): Usage Page, data= [ 0x01 ] 1 Generic Desktop Controls Item(Local ): Usage, data= [ 0x80 ] 128 System Control Item(Main ): Collection, data= [ 0x01 ] 1 Application Item(Global): Report ID, data= [ 0x02 ] 2 Item(Local ): Usage Minimum, data= [ 0x81 ] 129 System Power Down Item(Local ): Usage Maximum, data= [ 0x83 ] 131 System Wake Up Item(Global): Logical Minimum, data= [ 0x00 ] 0 Item(Global): Logical Maximum, data= [ 0x01 ] 1 Item(Global): Report Size, data= [ 0x01 ] 1 Item(Global): Report Count, data= [ 0x03 ] 3 Item(Main ): Input, data= [ 0x02 ] 2 Data Variable Absolute No_Wrap Linear Preferred_State No_Null_Position Non_Volatile Bitfield Item(Global): Report Count, data= [ 0x05 ] 5 Item(Main ): Input, data= [ 0x01 ] 1 Constant Array Absolute No_Wrap Linear Preferred_State No_Null_Position Non_Volatile Bitfield Item(Main ): End Collection, data=none Item(Global): Usage Page, data= [ 0x01 ] 1 Generic Desktop Controls Item(Local ): Usage, data= [ 0x06 ] 6 Keyboard Item(Main ): Collection, data= [ 0x01 ] 1 Application Item(Global): Report ID, data= [ 0x03 ] 3 Item(Global): Usage Page, data= [ 0x07 ] 7 Keyboard Item(Local ): Usage Minimum, data= [ 0x3c ] 60 F3 Item(Local ): Usage Maximum, data= [ 0x4e ] 78 Page Down Item(Local ): Usage, data= [ 0x29 ] 41 Escape Item(Local ): Usage, data= [ 0x2a ] 42 Delete (Backspace) Item(Local ): Usage, data= [ 0x2d ] 45 - and _ (Minus and underscore) Item(Local ): Usage, data= [ 0x2e ] 46 = and + (Equal and Plus) Item(Global): Logical Minimum, data= [ 0x00 ] 0 Item(Global): Logical Maximum, data= [ 0x01 ] 1 Item(Global): Report Count, data= [ 0x17 ] 23 Item(Main ): Input, data= [ 0x02 ] 2 Data Variable Absolute No_Wrap Linear Preferred_State No_Null_Position Non_Volatile Bitfield Item(Local ): Usage Minimum, data= [ 0x53 ] 83 Num Lock and Clear Item(Local ): Usage Maximum, data= [ 0x58 ] 88 Keypad Enter Item(Global): Report Count, data= [ 0x06 ] 6 Item(Main ): Input, data= [ 0x02 ] 2 Data Variable Absolute No_Wrap Linear Preferred_State No_Null_Position Non_Volatile Bitfield Item(Local ): Usage Minimum, data= [ 0x30 ] 48 ] and } (Bracket and Braces Right) Item(Local ): Usage Maximum, data= [ 0x3b ] 59 F2 Item(Global): Report Count, data= [ 0x0c ] 12 Item(Main ): Input, data= [ 0x02 ] 2 Data Variable Absolute No_Wrap Linear Preferred_State No_Null_Position Non_Volatile Bitfield Item(Local ): Usage Minimum, data= [ 0x85 ] 133 Keypad Comma Item(Local ): Usage Maximum, data= [ 0x8b ] 139 International 5 (PC98) Item(Global): Report Count, data= [ 0x07 ] 7 Item(Main ): Input, data= [ 0x02 ] 2 Data Variable Absolute No_Wrap Linear Preferred_State No_Null_Position Non_Volatile Bitfield Item(Local ): Usage Minimum, data= [ 0x90 ] 144 LANG 1 (Hangul/English Toggle, Korea) Item(Local ): Usage Maximum, data= [ 0x96 ] 150 LANG 7 Item(Global): Report Count, data= [ 0x06 ] 6 Item(Main ): Input, data= [ 0x02 ] 2 Data Variable Absolute No_Wrap Linear Preferred_State No_Null_Position Non_Volatile Bitfield Item(Local ): Usage, data= [ 0x65 ] 101 Keyboard Application (Windows Key for Win95 or Compose) Item(Local ): Usage, data= [ 0x2f ] 47 [ and { (Bracket and Braces Left) Item(Global): Report Count, data= [ 0x02 ] 2 Item(Main ): Input, data= [ 0x02 ] 2 Data Variable Absolute No_Wrap Linear Preferred_State No_Null_Position Non_Volatile Bitfield Item(Main ): End Collection, data=none Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x82 EP 2 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0008 1x 8 bytes bInterval 10 Device Status: 0x0000 (Bus Powered)