Bluetooth LE Mouse library for the ESP32 (Arduino IDE compatible)
ESP32-BLE-Mouse
ESP32
⭐☆☆☆☆ (1/5)
已发布
项目简介
ESP32蓝牙低功耗鼠标库(兼容Arduino IDE)
ESP32-BLE-Mouse 是一个专为 ESP32 微控制器设计的开源库,它能够让 ESP32 模拟成一只蓝牙鼠标,并通过编程精确控制鼠标的各种操作。该项目解决了在没有传统物理鼠标或触摸板的情况下,如何利用低成本的 ESP32 芯片实现无线人机交互的问题。其核心功能覆盖了鼠标的所有基本操作,包括左键、右键、中键点击,以及前后导航键;同时支持鼠标指针的上下左右移动、垂直和水平滚动。此外,它还允许用户自定义蓝牙设备名称和制造商信息,并可选地向主机报告电池电量,增强了设备的实用性和个性化。
标签
项目特点
支持标准鼠标动作:左键、右键、中键点击,以及移动和滚轮操作
兼容Arduino IDE,安装后即可像调用普通库一样使用
基于BLE协议,无需配对即可连接(部分系统支持快速连接)
可自定义设备名称和制造商信息,方便识别
轻量级实现,对ESP32资源占用低,适合电池供电项目
开源社区活跃,示例代码丰富,上手门槛低
技术规格
| 支持芯片 | |
|---|---|
| 开发环境 | |
| 蓝牙协议 | |
| 鼠标按键 | |
| 移动精度 | |
| 滚轮支持 | |
| 最大连接数 | |
| 功耗 | |
| 库文件大小 | |
| 依赖库 |
项目资源
物料清单 (BOM)
| 物料名称 | 数量 | 参考价格 | 备注 |
|---|---|---|---|
| ESP32开发板(如NodeMCU-32S) | 1 | — | 必须,任何ESP32均可 |
| 按键(微动开关) | 3+ | — | 左键、右键、中键,可选 |
| 滚轮编码器 | 1 | — | 可选,用于滚轮功能 |
| 摇杆或触摸板 | 1 | — | 可选,用于鼠标移动 |
| 锂电池(3.7V) | 1 | — | 可选,用于无线供电 |
| 稳压模块(如AMS1117-3.3) | 1 | — | 可选,电池供电时使用 |
| 杜邦线/面包板 | 若干 | — | 原型验证用 |
| USB数据线(Micro USB/Type-C) | 1 | — | 烧录程序用 |
所需工具
| 工具 | 用途 | 是否必需 |
|---|---|---|
| Arduino IDE | 编写、编译、上传代码 | ✅ 是 |
| ESP32板支持包 | 在Arduino IDE中添加ESP32支持 | ✅ 是 |
| USB转串口驱动 | 连接ESP32与电脑 | ▢ 推荐 |
| 逻辑分析仪 | 调试蓝牙信号与按键时序 | ▢ 推荐 |
| 万用表 | 检测电路连接与电压 | ▢ 推荐 |
| 3D打印机 | 制作外壳或支架 | ▢ 推荐 |
能力画像
**记忆与知识检索**:2/5 — 项目本身不涉及复杂知识库,但需要查阅BLE HID协议和ESP32文档。
**动手与操作**:3/5 — 需要焊接按键、连接电路,但整体硬件简单,适合新手。
**编程与算法**:3/5 — 主要调用库函数,无需复杂算法,但需理解Arduino编程基础。
**设计与建模**:2/5 — 如需外壳或机械结构,需要简单3D建模能力,非必须。
**实验与调试**:4/5 — 蓝牙连接不稳定时需反复调试,建议使用串口输出日志。
**协作与分享**:3/5 — 可通过GitHub提交Issue或PR,社区活跃度中等。
**学习与研究**:4/5 — 适合学习BLE HID协议、ESP32低功耗开发,有较多扩展空间。
**系统集成**:3/5 — 可与其他传感器(如陀螺仪)集成,实现体感鼠标等高级功能。
所需技能
Arduino IDE基本使用(安装库、编译、上传)
C/C++基础语法(变量、函数、循环)
电路连接基础(面包板、杜邦线、按键接线)
蓝牙协议基本概念(可选,有助于调试)
串口调试(输出日志排查问题)
适用场景
制作无线演示翻页器或遥控鼠标
构建体感鼠标(配合MPU6050等陀螺仪传感器)
智能家居控制面板(通过鼠标点击触发场景)
辅助输入设备(为特殊人群定制简易鼠标)
教育演示:学习BLE HID协议与嵌入式开发
原型验证:快速测试蓝牙鼠标交互逻辑