Cordio Stack and Cordio Profiles  r2p3-02rel0
svc_hid.h File Reference

Human Interface Device service implementation. More...

Go to the source code of this file.

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.
 
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.
 

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 Service Handles

#define HID_START_HDL   0x100
 Start handle.
 
#define HID_END_HDL   (HID_MAX_HDL - 1)
 End handle.
 
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...
 

Description

Human Interface Device service implementation.

Copyright (c) 2015-2018 Arm Ltd. All Rights Reserved. Arm Ltd. confidential and proprietary.

IMPORTANT. Your use of this file is governed by a Software License Agreement ("Agreement") that must be accepted in order to download or otherwise receive a copy of this file. You may not use or copy this file for any purpose other than as described in the Agreement. If you do not agree to all of the terms of the Agreement do not use this file and delete all copies in your possession or control; if you do not have a copy of the Agreement, you must contact Arm Ltd. prior to any use, copying or further distribution of this software.

Definition in file svc_hid.h.