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.

Parents
  • Hi Max,

    BLE is not supported natively on Windows7. I don't think you can use BLE HID devices on Windows 7 out of the box. It should works on a Windows 8 or 10 machine though.

  • 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
          };
    
Reply
  • 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
          };
    
Children
No Data
Related