Cordio Stack and Cordio Profiles  r2p3-02rel0
Human Interface Device Service

Macros

#define HID_SVC_UUID   ATT_UUID_HID_SERVICE
 HID Service.
 
#define HID_MAX_REPORT_MAP_LEN   512
 Max length of the report map value.
 
#define HID_MAX_REPORT_LEN   32
 Max length of an output report value.
 
#define HID_INIT_REPORT_MAP_LEN   1
 Initial length of the report map value.
 

Functions

void SvcHidAddGroup (void)
 Add the services to the attribute server. More...
 
void SvcHidRemoveGroup (void)
 Remove the services from the attribute server. More...
 
void SvcHidRegister (attsWriteCback_t writeCb, attsReadCback_t readCb)
 Register a read and write callback functions for the ATT Group. More...
 
void * SvcHidAddGroupDyn (void)
 Add the Hid Service using the dynamic attribute subsystem. More...
 

HID Spec Version

#define HID_VERSION   0x0111
 HID Spec Version: 1.11.
 

HID Report Types

#define HID_REPORT_TYPE_INPUT   0x01
 Input type.
 
#define HID_REPORT_TYPE_OUTPUT   0x02
 Output type.
 
#define HID_REPORT_TYPE_FEATURE   0x03
 Feature type.
 

HID Protocol Mode Types

#define HID_PROTOCOL_MODE_BOOT   0x00
 Boot mode.
 
#define HID_PROTOCOL_MODE_REPORT   0x01
 Report mode.
 

HID Control Point Values

#define HID_CONTROL_POINT_SUSPEND   0x00
 Suspend.
 
#define HID_CONTROL_POINT_RESUME   0x01
 Resume.
 

HID Service Handles

enum  {
  HID_SVC_HDL = HID_START_HDL,
  HID_INFO_CH_HDL,
  HID_INFO_HDL,
  HID_REPORT_MAP_CH_HDL,
  HID_REPORT_MAP_HDL,
  HID_EXTERNAL_REPORT_HDL,
  HID_CONTROL_POINT_CH_HDL,
  HID_CONTROL_POINT_HDL,
  HID_KEYBOARD_BOOT_IN_CH_HDL,
  HID_KEYBOARD_BOOT_IN_HDL,
  HID_KEYBOARD_BOOT_IN_CH_CCC_HDL,
  HID_KEYBOARD_BOOT_OUT_CH_HDL,
  HID_KEYBOARD_BOOT_OUT_HDL,
  HID_MOUSE_BOOT_IN_CH_HDL,
  HID_MOUSE_BOOT_IN_HDL,
  HID_MOUSE_BOOT_IN_CH_CCC_HDL,
  HID_INPUT_REPORT_1_CH_HDL,
  HID_INPUT_REPORT_1_HDL,
  HID_INPUT_REPORT_1_CH_CCC_HDL,
  HID_INPUT_REPORT_1_REFERENCE_HDL,
  HID_INPUT_REPORT_2_CH_HDL,
  HID_INPUT_REPORT_2_HDL,
  HID_INPUT_REPORT_2_CH_CCC_HDL,
  HID_INPUT_REPORT_2_REFERENCE_HDL,
  HID_INPUT_REPORT_3_CH_HDL,
  HID_INPUT_REPORT_3_HDL,
  HID_INPUT_REPORT_3_CH_CCC_HDL,
  HID_INPUT_REPORT_3_REFERENCE_HDL,
  HID_OUTPUT_REPORT_CH_HDL,
  HID_OUTPUT_REPORT_HDL,
  HID_OUTPUT_REPORT_REFERENCE_HDL,
  HID_FEATURE_REPORT_CH_HDL,
  HID_FEATURE_REPORT_HDL,
  HID_FEATURE_REPORT_REFERENCE_HDL,
  HID_PROTOCOL_MODE_CH_HDL,
  HID_PROTOCOL_MODE_HDL,
  HID_MAX_HDL
}
 Proprietary Service Handles Common to HID Devices. More...
 
#define HID_START_HDL   0x100
 Start handle.
 
#define HID_END_HDL   (HID_MAX_HDL - 1)
 End handle.
 

Description

Enumeration Type Documentation

anonymous enum

Proprietary Service Handles Common to HID Devices.

Enumerator
HID_SVC_HDL 

Proprietary Service Declaration.

HID_INFO_CH_HDL 

HID Information Characteristic Declaration.

HID_INFO_HDL 

HID Information Value.

HID_REPORT_MAP_CH_HDL 

HID Report Map Characteristic Declaration.

HID_REPORT_MAP_HDL 

HID Report Map Value.

HID_EXTERNAL_REPORT_HDL 

HID External Report Descriptor.

HID_CONTROL_POINT_CH_HDL 

HID Control Point Characteristic Declaration.

HID_CONTROL_POINT_HDL 

HID Control Point Value.

HID_KEYBOARD_BOOT_IN_CH_HDL 

HID Keyboard Boot Input Characteristic Declaration.

HID_KEYBOARD_BOOT_IN_HDL 

HID Keyboard Boot Input Value.

HID_KEYBOARD_BOOT_IN_CH_CCC_HDL 

HID Keyboard Boot Input CCC Descriptor.

HID_KEYBOARD_BOOT_OUT_CH_HDL 

HID Keyboard Boot Output Characteristic Declaration.

HID_KEYBOARD_BOOT_OUT_HDL 

HID Keyboard Boot Output Value.

HID_MOUSE_BOOT_IN_CH_HDL 

HID Mouse Boot Input Characteristic Declaration.

HID_MOUSE_BOOT_IN_HDL 

HID Mouse Boot Input Value.

HID_MOUSE_BOOT_IN_CH_CCC_HDL 

HID Mouse Boot Input CCC Descriptor.

HID_INPUT_REPORT_1_CH_HDL 

HID Input Report Characteristic Declaration.

HID_INPUT_REPORT_1_HDL 

HID Input Report Value.

HID_INPUT_REPORT_1_CH_CCC_HDL 

HID Input Report CCC Descriptor.

HID_INPUT_REPORT_1_REFERENCE_HDL 

HID Input Report Reference Descriptor.

HID_INPUT_REPORT_2_CH_HDL 

HID Input Report Characteristic Declaration.

HID_INPUT_REPORT_2_HDL 

HID Input Report Value.

HID_INPUT_REPORT_2_CH_CCC_HDL 

HID Input Report CCC Descriptor.

HID_INPUT_REPORT_2_REFERENCE_HDL 

HID Input Report Reference Descriptor.

HID_INPUT_REPORT_3_CH_HDL 

HID Input Report Characteristic Declaration.

HID_INPUT_REPORT_3_HDL 

HID Input Report Value.

HID_INPUT_REPORT_3_CH_CCC_HDL 

HID Input Report CCC Descriptor.

HID_INPUT_REPORT_3_REFERENCE_HDL 

HID Input Report Reference Descriptor.

HID_OUTPUT_REPORT_CH_HDL 

HID Output Report Characteristic Declaration.

HID_OUTPUT_REPORT_HDL 

HID Output Report Value.

HID_OUTPUT_REPORT_REFERENCE_HDL 

HID Output Report Reference Descriptor.

HID_FEATURE_REPORT_CH_HDL 

HID Feature Report Characteristic Declaration.

HID_FEATURE_REPORT_HDL 

HID Feature Report Value.

HID_FEATURE_REPORT_REFERENCE_HDL 

HID Feature Report Reference Descriptor.

HID_PROTOCOL_MODE_CH_HDL 

HID Protocol Mode Characteristic Declaration.

HID_PROTOCOL_MODE_HDL 

HID Protocol Mode Value.

HID_MAX_HDL 

Maximum handle.

Definition at line 94 of file svc_hid.h.

95 {
96  HID_SVC_HDL = HID_START_HDL, /*!< \brief Proprietary Service Declaration */
97  HID_INFO_CH_HDL, /*!< \brief HID Information Characteristic Declaration */
98  HID_INFO_HDL, /*!< \brief HID Information Value */
99  HID_REPORT_MAP_CH_HDL, /*!< \brief HID Report Map Characteristic Declaration */
100  HID_REPORT_MAP_HDL, /*!< \brief HID Report Map Value */
101  HID_EXTERNAL_REPORT_HDL, /*!< \brief HID External Report Descriptor */
102  HID_CONTROL_POINT_CH_HDL, /*!< \brief HID Control Point Characteristic Declaration */
103  HID_CONTROL_POINT_HDL, /*!< \brief HID Control Point Value */
104  HID_KEYBOARD_BOOT_IN_CH_HDL, /*!< \brief HID Keyboard Boot Input Characteristic Declaration */
105  HID_KEYBOARD_BOOT_IN_HDL, /*!< \brief HID Keyboard Boot Input Value */
106  HID_KEYBOARD_BOOT_IN_CH_CCC_HDL, /*!< \brief HID Keyboard Boot Input CCC Descriptor */
107  HID_KEYBOARD_BOOT_OUT_CH_HDL, /*!< \brief HID Keyboard Boot Output Characteristic Declaration */
108  HID_KEYBOARD_BOOT_OUT_HDL, /*!< \brief HID Keyboard Boot Output Value */
109  HID_MOUSE_BOOT_IN_CH_HDL, /*!< \brief HID Mouse Boot Input Characteristic Declaration */
110  HID_MOUSE_BOOT_IN_HDL, /*!< \brief HID Mouse Boot Input Value */
111  HID_MOUSE_BOOT_IN_CH_CCC_HDL, /*!< \brief HID Mouse Boot Input CCC Descriptor */
112  HID_INPUT_REPORT_1_CH_HDL, /*!< \brief HID Input Report Characteristic Declaration */
113  HID_INPUT_REPORT_1_HDL, /*!< \brief HID Input Report Value */
114  HID_INPUT_REPORT_1_CH_CCC_HDL, /*!< \brief HID Input Report CCC Descriptor */
115  HID_INPUT_REPORT_1_REFERENCE_HDL, /*!< \brief HID Input Report Reference Descriptor */
116  HID_INPUT_REPORT_2_CH_HDL, /*!< \brief HID Input Report Characteristic Declaration */
117  HID_INPUT_REPORT_2_HDL, /*!< \brief HID Input Report Value */
118  HID_INPUT_REPORT_2_CH_CCC_HDL, /*!< \brief HID Input Report CCC Descriptor */
119  HID_INPUT_REPORT_2_REFERENCE_HDL, /*!< \brief HID Input Report Reference Descriptor */
120  HID_INPUT_REPORT_3_CH_HDL, /*!< \brief HID Input Report Characteristic Declaration */
121  HID_INPUT_REPORT_3_HDL, /*!< \brief HID Input Report Value */
122  HID_INPUT_REPORT_3_CH_CCC_HDL, /*!< \brief HID Input Report CCC Descriptor */
123  HID_INPUT_REPORT_3_REFERENCE_HDL, /*!< \brief HID Input Report Reference Descriptor */
124  HID_OUTPUT_REPORT_CH_HDL, /*!< \brief HID Output Report Characteristic Declaration */
125  HID_OUTPUT_REPORT_HDL, /*!< \brief HID Output Report Value */
126  HID_OUTPUT_REPORT_REFERENCE_HDL, /*!< \brief HID Output Report Reference Descriptor */
127  HID_FEATURE_REPORT_CH_HDL, /*!< \brief HID Feature Report Characteristic Declaration */
128  HID_FEATURE_REPORT_HDL, /*!< \brief HID Feature Report Value */
129  HID_FEATURE_REPORT_REFERENCE_HDL, /*!< \brief HID Feature Report Reference Descriptor */
130  HID_PROTOCOL_MODE_CH_HDL, /*!< \brief HID Protocol Mode Characteristic Declaration */
131  HID_PROTOCOL_MODE_HDL, /*!< \brief HID Protocol Mode Value */
132  HID_MAX_HDL /*!< \brief Maximum handle. */
133 };
HID Mouse Boot Input Characteristic Declaration.
Definition: svc_hid.h:109
HID Feature Report Characteristic Declaration.
Definition: svc_hid.h:127
HID Output Report Value.
Definition: svc_hid.h:125
HID Mouse Boot Input Value.
Definition: svc_hid.h:110
Proprietary Service Declaration.
Definition: svc_hid.h:96
HID Input Report Value.
Definition: svc_hid.h:121
HID Output Report Characteristic Declaration.
Definition: svc_hid.h:124
HID Protocol Mode Value.
Definition: svc_hid.h:131
HID Report Map Value.
Definition: svc_hid.h:100
HID Report Map Characteristic Declaration.
Definition: svc_hid.h:99
HID Input Report Characteristic Declaration.
Definition: svc_hid.h:120
HID Output Report Reference Descriptor.
Definition: svc_hid.h:126
HID Keyboard Boot Output Value.
Definition: svc_hid.h:108
HID Control Point Value.
Definition: svc_hid.h:103
HID Mouse Boot Input CCC Descriptor.
Definition: svc_hid.h:111
HID Information Characteristic Declaration.
Definition: svc_hid.h:97
HID External Report Descriptor.
Definition: svc_hid.h:101
HID Input Report CCC Descriptor.
Definition: svc_hid.h:122
HID Keyboard Boot Input CCC Descriptor.
Definition: svc_hid.h:106
HID Feature Report Value.
Definition: svc_hid.h:128
HID Input Report Reference Descriptor.
Definition: svc_hid.h:119
HID Input Report Characteristic Declaration.
Definition: svc_hid.h:112
HID Feature Report Reference Descriptor.
Definition: svc_hid.h:129
Maximum handle.
Definition: svc_hid.h:132
HID Input Report CCC Descriptor.
Definition: svc_hid.h:118
HID Input Report Reference Descriptor.
Definition: svc_hid.h:115
HID Input Report Reference Descriptor.
Definition: svc_hid.h:123
HID Input Report Value.
Definition: svc_hid.h:117
HID Keyboard Boot Input Value.
Definition: svc_hid.h:105
HID Control Point Characteristic Declaration.
Definition: svc_hid.h:102
HID Protocol Mode Characteristic Declaration.
Definition: svc_hid.h:130
HID Information Value.
Definition: svc_hid.h:98
HID Keyboard Boot Input Characteristic Declaration.
Definition: svc_hid.h:104
HID Input Report Characteristic Declaration.
Definition: svc_hid.h:116
#define HID_START_HDL
Start handle.
Definition: svc_hid.h:87
HID Input Report CCC Descriptor.
Definition: svc_hid.h:114
HID Keyboard Boot Output Characteristic Declaration.
Definition: svc_hid.h:107
HID Input Report Value.
Definition: svc_hid.h:113

Function Documentation

void SvcHidAddGroup ( void  )

Add the services to the attribute server.

Returns
None.
void SvcHidRemoveGroup ( void  )

Remove the services from the attribute server.

Returns
None.
void SvcHidRegister ( attsWriteCback_t  writeCb,
attsReadCback_t  readCb 
)

Register a read and write callback functions for the ATT Group.

Parameters
writeCbWrite callback function
readCbRead callback function
Returns
None.
void* SvcHidAddGroupDyn ( void  )

Add the Hid Service using the dynamic attribute subsystem.

Returns
None.