ESP32 implementation for HID over GATT Keyboard and Mouse (Bluetooth Low Energy). Including serial API for external modu esp32_mouse_keyboard

ESP32 2/5 已发布
asterics 887 Stars GPL-3.0 BOM 完整度: 0/5 教程完整度: 0/5
ESP32 implementation for HID over GATT Keyboard and Mouse (Bluetooth Low Energy). Including serial API for external modu

项目简介

ESP32 implementation for HID over GATT Keyboard and Mouse (Bluetooth Low Energy). Including serial API for external modu


这是一个基于ESP32芯片的开源项目,实现了蓝牙低功耗(BLE)HID协议,让ESP32能够模拟成无线鼠标和键盘。项目核心价值在于为辅助技术设备提供标准化的蓝牙输入方案,特别适合为残障人士设计的自适应输入设备。

标签

项目特点

支持蓝牙低功耗(BLE)HID协议,可同时模拟键盘和鼠标
提供串口API接口,方便与外部模块(如传感器、开关)集成
兼容Adafruit EZKey HID的通信协议,可复用现有代码
基于ESP32平台,开发成本低,社区资源丰富
支持自定义按键映射和宏命令
开源硬件设计,提供完整的原理图和PCB文件

技术规格

主控芯片 ESP32(双核Xtensa LX6)
蓝牙版本 蓝牙4.2 / BLE
蓝牙协议 HID over GATT(键盘+鼠标)
串口速率 115200 bps(默认)
供电电压 3.3V(通过USB或外部电源)
工作电流 约80mA(典型)
支持按键数 最多6键同时按下(键盘)
鼠标支持 移动、左键、右键、滚轮
固件更新 支持OTA无线更新
板载LED 1个状态指示灯

项目资源

物料清单 (BOM)

物料名称 数量 参考价格 备注
ESP32开发板(如ESP32-DevKitC) 1 推荐使用带USB-UART的型号
Micro USB线缆 1 供电和编程
杜邦线(母对母) 若干 连接外部模块
按键开关 按需 用于键盘按键输入
电位器或编码器 按需 用于鼠标模拟输入
LED(3mm) 1 状态指示(可选)
220Ω电阻 1 LED限流(可选)

3D 模型

模型名称文件名文件
KiCAD-ESP-WROOM-32 KiCAD-ESP-WROOM-32.step
CUI_DEVICES_CMM-4030D-261-I2S-TR CUI_DEVICES_CMM-4030D-261-I2S-TR.step
programmer_board programmer_board.stl

能力画像

**记忆与知识检索**:3/5 — 需要查阅ESP32 BLE和HID协议文档,但核心代码已封装好
**动手与操作**:4/5 — 需要焊接和连接外部传感器/开关,适合动手爱好者
**编程与算法**:3/5 — 主要使用Arduino IDE编写简单逻辑,无需复杂算法
**设计与建模**:2/5 — 硬件设计已提供原理图和PCB文件,无需自行设计
**实验与调试**:4/5 — 需要通过串口调试API通信,测试按键和鼠标响应
**协作与分享**:3/5 — 开源项目,可提交Issue和PR,但社区规模中等
**学习与研究**:4/5 — 适合学习BLE HID协议、ESP32开发和人机交互设计
**系统集成**:4/5 — 可轻松集成传感器、开关等外部模块,扩展性强

所需技能

基础电子知识(电路连接、焊接) Arduino IDE使用经验 ESP32开发板的基本操作 串口通信调试能力 对蓝牙HID协议有基本了解(可选但推荐)

适用场景

为残障人士制作辅助输入设备(如眼控、头控鼠标)
制作自定义游戏手柄或宏键盘
将老旧设备(如轨迹球、摇杆)改造成蓝牙输入设备
教育演示:学习BLE HID协议和嵌入式开发
自动化测试:用ESP32模拟键盘鼠标操作进行软件测试
智能家居控制:通过物理按键触发电脑操作