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

Multimedia Buttons example connection issue

Hello everybody,

I tested the example: https://github.com/Rallare/nrf51_ble_app_hids_kbd_consumercontrol/tree/SDK11 on my customer board (and on the DK52) with the NRF52832. After my board connects to my iphone (Firmware: 11.3.1) I can control the volume. But once decoupled, the device can no longer pair with my iphone. Android smartphones can not even recognize my board. Is there a problem with sdk11? I use the Softdevice from SDK11 132 2.0.0

Parents
  • static uint8_t report_map_data[] =
    {
    // Report ID 1
    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 (224)
    0x29, 0xe7, // Usage Maximum (231)
    0x15, 0x00, // Logical MinMinimumimum (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,


    // Report ID 2: Advanced buttons
    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)

    0x09, 0xB8, // B8=>eject
    0x81, 0x02, // Input (Data,Value,Relative,Bit Field)
    0x0A, 0xCC,//0x83, 0x01, // Usage (AL Consumer Control Configuration)
    0x81, 0x02, // Input (Data,Value,Relative,Bit Field)
    0x09, 0xB5, // Usage (Scan Next Track)
    0x81, 0x02, // Input (Data,Value,Relative,Bit Field)
    0x09, 0xB6, // Usage (Scan Previous Track)
    0x81, 0x02, // Input (Data,Value,Relative,Bit Field)

    //----------------- volume and Play/pause-----------------//

    0x09, 0xEA, // Usage (Volume Down)
    0x81, 0x02, // Input (Data,Value,Relative,Bit Field)
    0x09, 0xE9, // Usage (Volume Up)
    0x81, 0x02, // Input (Data,Value,Relative,Bit Field)
    0x09, 0xCD, // Usage (Play/pause)
    0x81, 0x02, // Input (Data,Value,Relative,Bit Field)

    //--------------------------------------------------------------------//
    0x0A, 0x24, 0x02, // Usage (AC Back)
    0x81, 0x02, // Input (Data,Value,Relative,Bit Field)


    0xC0 // End Collection (Application)*/
    };

Reply
  • static uint8_t report_map_data[] =
    {
    // Report ID 1
    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 (224)
    0x29, 0xe7, // Usage Maximum (231)
    0x15, 0x00, // Logical MinMinimumimum (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,


    // Report ID 2: Advanced buttons
    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)

    0x09, 0xB8, // B8=>eject
    0x81, 0x02, // Input (Data,Value,Relative,Bit Field)
    0x0A, 0xCC,//0x83, 0x01, // Usage (AL Consumer Control Configuration)
    0x81, 0x02, // Input (Data,Value,Relative,Bit Field)
    0x09, 0xB5, // Usage (Scan Next Track)
    0x81, 0x02, // Input (Data,Value,Relative,Bit Field)
    0x09, 0xB6, // Usage (Scan Previous Track)
    0x81, 0x02, // Input (Data,Value,Relative,Bit Field)

    //----------------- volume and Play/pause-----------------//

    0x09, 0xEA, // Usage (Volume Down)
    0x81, 0x02, // Input (Data,Value,Relative,Bit Field)
    0x09, 0xE9, // Usage (Volume Up)
    0x81, 0x02, // Input (Data,Value,Relative,Bit Field)
    0x09, 0xCD, // Usage (Play/pause)
    0x81, 0x02, // Input (Data,Value,Relative,Bit Field)

    //--------------------------------------------------------------------//
    0x0A, 0x24, 0x02, // Usage (AC Back)
    0x81, 0x02, // Input (Data,Value,Relative,Bit Field)


    0xC0 // End Collection (Application)*/
    };

Children
No Data
Related