This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Windows and HID

Hi,

I use SDK 12 softdevice 130 2.0.1

The example project of HID is running on my nrf51822 board, it is pairs with iPhone but the windows 7 write that the HID driver is not install correctly.

Any idea?

image description

Thanks.

  • Yes,after adding this report just osx,android,ios working. Windows not.

  • static uint8_t report_map_data[] = { 0x05, 0x01, // Usage Page (Generic Desktop) 0x09, 0x06, // Usage (Keyboard) 0xA1, 0x01, // Collection (Application) 0x85, 0x01, // Report Id (1) 0x05, 0x07, // Usage Page (Key Codes) 0x19, 0xe0, // Usage Minimum (224) 0x29, 0xe7, // Usage Maximum (231) 0x15, 0x00, // Logical Minimum (0) 0x25, 0x01, // Logical Maximum (1) 0x75, 0x01, // Report Size (1) 0x95, 0x08, // Report Count (8) 0x81, 0x02, // Input (Data, Variable, Absolute)

            0x95, 0x01,                 //     Report Count (1)
            0x75, 0x08,                 //     Report Size (8)
            0x81, 0x01,                 //     Input (Constant) reserved byte(1)
            
            0x95, 0x05,                 //     Report Count (5)
            0x75, 0x01,                 //     Report Size (1)
            0x05, 0x08,                 //     Usage Page (Page# for LEDs)
            0x19, 0x01,                 //     Usage Minimum (1)
            0x29, 0x05,                 //     Usage Maximum (5)
            0x91, 0x02,                 //     Output (Data, Variable, Absolute), Led report
            0x95, 0x01,                 //     Report Count (1)
            0x75, 0x03,                 //     Report Size (3)
            0x91, 0x01,                 //     Output (Data, Variable, Absolute), Led report padding
            
            0x95, 0x06,                 //     Report Count (6)
            0x75, 0x08,                 //     Report Size (8)
            0x15, 0x00,                 //     Logical Minimum (0)
            0x25, 0x65,                 //     Logical Maximum (101)
            0x05, 0x07,                 //     Usage Page (Key codes)
            0x19, 0x00,                 //     Usage Minimum (0)
            0x29, 0x65,                 //     Usage Maximum (101)
            0x81, 0x00,                 //     Input (Data, Array) Key array(6 bytes)
            
            0x09, 0x05,                 //     Usage (Vendor Defined)
            0x15, 0x00,                 //     Logical Minimum (0)
            0x26, 0xFF, 0x00,           //     Logical Maximum (255)
            0x75, 0x08,                 //     Report Count (2)
            0x95, 0x02,                 //     Report Size (8 bit)
            0xB1, 0x02,                 //     Feature (Data, Variable, Absolute)
            
            0xC0,                        // End Collection (Application)
            
            0x05, 0x0C,        // Usage Page (Consumer)
            0x09, 0x01,        // Usage (Consumer Control)
            0xA1, 0x01,        // Collection (Application)
            0x85, 0x02,        //   Report ID (2)
            0x15, 0x00,        //   Logical Minimum (0)
            0x25, 0x01,        //   Logical Maximum (1)
            0x75, 0x01,        //   Report Size (1)
            0x95, 0x01,        //   Report Count (1)
            0x0A, 0xAE, 0x01,  //   Usage (AL Keyboard Layout)
            0x81, 0x06,        //   Input (Data,Var,Rel,No Wrap,Linear,Preferred State,No Null Position)
            0xC0,              // End Collection
          };
    
  • @max: Sorry for late response. I am not sure what could be the issue here. But above you mentioned that it worked on Windows with S130 v2.0.0 but not on S130 v2.0.1 ? Could you provide 2 sniffer traces, one capture your device with S130 v2.0.0 and one with S130 v2.0.1 ?

  • I'm having the same problems. Works fine on Mac OS/Android - but Driver Error on windows 10. Is there some kind of error log that I could track this down with to see what the error was?

  • Just to add - in the Windows System log it says it concluded the driver install process with error code 0 - which sounds good to me...

Related