Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: BLE_API mbed nRF51822
HIDService.cpp
00001 #include "HIDService.h" 00002 00003 const uint8_t KeyboardReportMap[] = 00004 { 0x05, 0x01, // Usage Page (Generic Desktop) 00005 0x09, 0x06, // Usage (Keyboard) 00006 0xA1, 0x01, // Collection (Application) 00007 0x05, 0x07, // Usage Page (Key Codes) 00008 0x19, 0xe0, // Usage Minimum (224) 00009 0x29, 0xe7, // Usage Maximum (231) 00010 0x15, 0x00, // Logicagl Minimum (0) 00011 0x25, 0x01, // Logical Maximum (1) 00012 0x75, 0x01, // Report Size (1) 00013 0x95, 0x08, // Report Count (8) 00014 0x81, 0x02, // Input (Data, Variable, Absolute) 00015 00016 0x95, 0x01, // Report Count (1) 00017 0x75, 0x08, // Report Size (8) 00018 0x81, 0x01, // Input (Constant) reserved byte(1) 00019 00020 0x95, 0x05, // Report Count (5) 00021 0x75, 0x01, // Report Size (1) 00022 0x05, 0x08, // Usage Page (Page# for LEDs) 00023 0x19, 0x01, // Usage Minimum (1) 00024 0x29, 0x05, // Usage Maximum (5) 00025 0x91, 0x02, // Output (Data, Variable, Absolute), Led report 00026 0x95, 0x01, // Report Count (1) 00027 0x75, 0x03, // Report Size (3) 00028 0x91, 0x01, // Output (Data, Variable, Absolute), Led report padding 00029 00030 0x95, 0x06, // Report Count (6) 00031 0x75, 0x08, // Report Size (8) 00032 0x15, 0x00, // Logical Minimum (0) 00033 0x25, 0x65, // Logical Maximum (101) 00034 0x05, 0x07, // Usage Page (Key codes) 00035 0x19, 0x00, // Usage Minimum (0) 00036 // 0x29, 0x65, // Usage Maximum (101) 00037 0x29, 0xA4, // Usage Maximum (0xA4) 00038 0x81, 0x00, // Input (Data, Array) Key array(6 bytes) 00039 00040 0x09, 0x05, // Usage (Vendor Defined) 00041 0x15, 0x00, // Logical Minimum (0) 00042 0x26, 0xFF, 0x00, // Logical Maximum (255) 00043 0x75, 0x08, // Report Count (2) 00044 0x95, 0x02, // Report Size (8 bit) 00045 0xB1, 0x02, // Feature (Data, Variable, Absolute) 00046 0xC0 // End Collection (Application) 00047 }; 00048 00049 const uint8_t KeyboardReportMap2[] = 00050 { 00051 0x05, 0x01, // USAGE_PAGE (Generic Desktop) // 47 00052 0x09, 0x06, // USAGE (Keyboard) 00053 0xa1, 0x01, // COLLECTION (Application) 00054 0x85, 0x02, // REPORT_ID (2) 00055 0x05, 0x07, // USAGE_PAGE (Keyboard) 00056 00057 0x19, 0xe0, // USAGE_MINIMUM (Keyboard LeftControl) 00058 0x29, 0xe7, // USAGE_MAXIMUM (Keyboard Right GUI) 00059 0x15, 0x00, // LOGICAL_MINIMUM (0) 00060 0x25, 0x01, // LOGICAL_MAXIMUM (1) 00061 0x75, 0x01, // REPORT_SIZE (1) 00062 00063 0x95, 0x08, // REPORT_COUNT (8) 00064 0x81, 0x02, // INPUT (Data,Var,Abs) 00065 0x95, 0x01, // REPORT_COUNT (1) 00066 0x75, 0x08, // REPORT_SIZE (8) 00067 0x81, 0x03, // INPUT (Cnst,Var,Abs) 00068 00069 0x95, 0x06, // REPORT_COUNT (6) 00070 0x75, 0x08, // REPORT_SIZE (8) 00071 0x15, 0x00, // LOGICAL_MINIMUM (0) 00072 0x25, 0x65, // LOGICAL_MAXIMUM (101) 00073 0x05, 0x07, // USAGE_PAGE (Keyboard) 00074 00075 0x19, 0x00, // USAGE_MINIMUM (Reserved (no event indicated)) 00076 0x29, 0x65, // USAGE_MAXIMUM (Keyboard Application) 00077 0x81, 0x00, // INPUT (Data,Ary,Abs) 00078 0xc0, // END_COLLECTION 00079 };
Generated on Fri Jul 15 2022 01:56:10 by
1.7.2