BLE蓝牙hid键盘表
实测可用。
uint8_t RC_hids_map[] =
{
0x05, 0x01, // Usage Pg (Generic Desktop)
0x09, 0x06, // Usage (Keyboard)
0xA1, 0x01, // Collection: (Application)
0x85, 0x01, // Report Id (1)
//
0x05, 0x07, // Usage Pg (Key Codes)
0x19, 0xE0, // Usage Min (224)
0x29, 0xE7, // Usage Max (231)
0x15, 0x00, // Log Min (0)
0x25, 0x01, // Log Max (1)
//
// Modifier byte
0x75, 0x01, // Report Size (1)
0x95, 0x08, // Report Count (8)
0x81, 0x02, // Input: (Data, Variable, Absolute)
//
// Reserved byte
0x95, 0x01, // Report Count (1)
0x75, 0x08, // Report Size (8)
0x81, 0x01, // Input: (Constant)
//
// LED report
0x95, 0x05, // Report Count (5)
0x75, 0x01, // Report Size (1)
0x05, 0x08, // Usage Pg (LEDs)
0x19, 0x01, // Usage Min (1)
0x29, 0x05, // Usage Max (5)
0x91, 0x02, // Output: (Data, Variable, Absolute)
//
// LED report padding
0x95, 0x01, // Report Count (1)
0x75, 0x03, // Report Size (3)
0x91, 0x01, // Output: (Constant)
//
// Key arrays (6 bytes)
0x95, 0x06, // Report Count (6)
0x75, 0x08, // Report Size (8)
0x15, 0x00, // Log Min (0)
0x25, 0x65, // Log Max (101)
0x05, 0x07, // Usage Pg (Key Codes)
0x19, 0x00, // Usage Min (0)
0x29, 0x65, // Usage Max (101)
0x81, 0x00, // Input: (Data, Array)
//
0xC0, // End Collection
0x05, 0x01, /* USAGE_PAGE (Generic Desktop)*/
0x09, 0x02, /* USAGE (Mouse)*/
0xA1, 0x01, /* Collection (Application)*/
0x09, 0x01, /* Usage Pointer */
0xA1, 0x00, /* Collection (Physical)*/
0x85, 0x03, /* REPORT_ID (3) */
0x05, 0x01, /* USAGE_PAGE (Generic Desktop)*/
0x09, 0x30, /* Usage(X) */
0x09, 0x31, /* Usage(Y) */
0x15, 0x80, /* Logical Minimum(-128)*/
0x25, 0x7F, /* Logical Maximum( 127)*/
0x75, 0x08, /* REPORT_SIZE (8) */
0x95, 0x02, /* REPORT_COUNT (2) */
0x81, 0x06, /* INPUT (Data,Value,Relative,Bit Field) */
0x05, 0x09, /* USAGE_PAGE (Button) */
0x19, 0x01, /* USAGE Minimum */
0x29, 0x05, /* USAGE Maximum */
0x15, 0x00, /* Logical Minimum */
0x25, 0x01, /* Logical Maximum */
0x95, 0x05, /* Report Count */
0x75, 0x01, /* Report Size */
0x81, 0x02, /* Input Data*/
/* Padding bits */
0x95, 0x01, /* Report Count*/
0x75, 0x03, /* Report Size */
0x81, 0x03, /* Input Constant*/
0xC0, /* END_COLLECTION (Physical) */
0xC0, /* END_COLLECTION (Application) */
0x06, 0x01, 0xFF, // Usage Page (Vendor Defined 0xFF01)
0x09, 0x02, // Usage (tmp usage)
0xA1, 0x02, // Collection (Logical)
0x85, 0x02, // Report ID (2)
0x09, 0x14, // Usage (tmp usage)
0x75, 0x08, // Report Size (8)
0x95, 0x14, // Report Count (20)
0x15, 0x80, // Logical Minimum (128)
0x25, 0x7F, // Logical Maximum (127)
0x81, 0x22, // Input (Data,Var,Abs,No Wrap,Linear,No Preferred State,No Null Position)
0x85, 0x04, // Report ID (4)
0x09, 0x04, // Usage (tmp usage)
0x75, 0x08, // Report Size (8)
0x95, 0x01, // Report Count (1)
0x91, 0x02, // Output
0xC0, // End Collection
};
BLE蓝牙hid键盘表相关推荐
- BLE蓝牙HID设备开发(BL602)
总述 BLE蓝牙在物联网中使用很广泛,许多WiFi物联网芯片都带有BLE蓝牙,天猫精灵找队友也是有使用BLE蓝牙广播实现的.BLE蓝牙缺点是不适合大数据传输的场景. BLE蓝牙 BLE蓝牙主机开发基本 ...
- BT401蓝牙HID模块键盘鼠标支持BLE的补充说明
一.简介 BT401支持双模蓝牙,所以可以很轻松的支持蓝牙BLE .因为支持了BLE,所有就支持了BLE的HID. 也就是蓝牙的键盘.鼠标设备 注意,这里BLE的HID是可以回连手机的 2.1串口指令 ...
- 仅通过蓝牙HID将安卓手机模拟成鼠标和键盘
相关文章:<蓝牙HID TouchScreen协议让你的安卓手机变成触摸屏> 本文源码下载地址:<仅通过蓝牙HID将安卓手机模拟成鼠标和键盘>源码 多文源码打包下载: < ...
- 蓝牙HID驱动:某键盘,Fn组合键,小概率无响应,普通Keyboard功能正常。
蓝牙HID驱动:某键盘,Fn组合键,小概率无响应,普通Keyboard功能正常. 分析:同平台产品ABC,A搭配定制键盘,有该问题,B,C均无此问题. 初步判断为A搭配的键盘有问题.但看了HCI lo ...
- USB转蓝牙hid键鼠按键精灵控制手机虚拟键盘、虚拟触摸等功能
#USB转蓝牙hid键鼠按键精灵控制手机虚拟键盘.虚拟触摸等功能 提示:目的是为了实现通过电脑控制,达到手机虚拟触摸的功能 简单介绍 提示:开放协议,可再行开发,提供C# python c++ 等开发 ...
- 自己动手做个25键热插拔机械键盘 带幻彩ARGB!!!! stm32主控+蓝牙HID模块 typec接口
PCB平台:立创EDA 编译环境:keil5 主控芯片:stm32f103c8t6 / cbt6都行 描述: 1.stm32主控 + 蓝牙HID模块 2.type-c接口 可用锂电池 3.幻彩ARG ...
- 【低功耗蓝牙】⑤ 蓝牙HID协议
摘要 本文章主要介绍了蓝牙HID协议的实现方法,基于ESP32平台实现了蓝牙键盘,蓝牙鼠标,蓝牙自拍杆和蓝牙游戏手柄等设备,是初学者学习BLE HID协议很好的参考文章. HID设备 HID(Huma ...
- 蓝牙HID——将android设备变成蓝牙键盘(BluetoothHidDevice)
前言 前段时间发现自己的老笔记本键盘失灵了,又没有多的键盘,于是苦恼了好久.于是萌生了自己做一个键盘的想法.这段时间一直在研究蓝牙HID,通过蓝牙HID将android手机变成一个蓝牙键盘,这样就不用 ...
- Android BLE蓝牙开发知识总结
Android BLE蓝牙开发知识总结 1.蓝牙介绍 1.1什么是蓝牙? 蓝牙( Bluetooth® ):是一种无线技术标准,可实现固定设备.移动设备和楼宇个人域网之间的短距离数据交换(使用2 ...
最新文章
- 在asp.net(C#)中怎么获得一个目录的大小?
- Windows server2012虚拟机 密码重置
- 分布式RPC框架性能大比拼 dubbo、motan、rpcx、gRPC、thrift的性能比较
- 微信小程序wx.request内调用setData方法
- 创建支持依赖注入、Serilog 日志和 AppSettings 的 .NET 5 控制台应用
- 物联网串口服务器的功能和作用
- StringTokenizer(字符串分隔解析类型)
- python缩进说法_【多选题】关于Python程序中与“缩进”有关的说法中,以下选项中错误的是()。...
- (软件工程复习核心重点)第六章实现和测试-第一节:编码
- SAP License:SAP标准教材的编号原则
- KinectV2 qt opencv 实现平面测量
- 单细胞分析实录(10): 消除细胞周期的影响
- 并发编程 - lost wakeup
- InoReader—— 轻便快捷的在线 RSS 阅读器
- 2023年2022年Cfa一级考纲变化分析
- github可以刷星吗_GitHub 有偿刷星,上千 Star 数背后的猫腻
- mini6410 USB下载线驱动
- java installanywhere_InstallShield InstallAnywhere 培训要点记录(一)
- 【训练题】航线设计 | 使用最长上升子序列(LIS)长度的O(nlogn)算法优化
- 如何采集卫星电视信号并转成网络IP流 (TS over UDP)
热门文章
- Fabio技术手册(1):概述和快速上手
- [Python]网络爬虫(三):异常的处理和HTTP状态码的分类
- [RabbitMQ+Python入门经典] 兔子和兔子窝
- AutoBench的使用分析
- Android --- 修改百度地图的显示范围的大小
- poi excel 隐藏标识_纳尼?Excel竟然自带项目管理模板
- 计算机的磁盘地址格式,如何查看电脑硬盘是GPT分区还是MBR分区
- 律师如何加强自身的计算机文化教育网,提高_计算机文化基础_教学效果的几点心得.pdf...
- 叶明哲 | 数据中心空调文章集锦
- fibonacci数列前20项_面试题精选:神奇的斐波那契数列