Bluetooth LE Gamepad library for the ESP32
ESP32-BLE-Gamepad
⭐⭐☆☆☆ (2/5)
已发布
项目简介
ESP32的蓝牙LE游戏手柄库。
ESP32-BLE-Gamepad 是一个专为 ESP32 微控制器设计的蓝牙低功耗(BLE)游戏手柄库。它解决了传统有线或专用无线手柄在嵌入式项目和物联网场景中难以集成的问题,让开发者能够轻松地将 ESP32 变身为一个功能完整的无线游戏控制器。
标签
项目特点
支持蓝牙低功耗(BLE)协议,省电且连接稳定
可自定义按键数量、摇杆轴数和方向键
兼容主流操作系统和游戏主机(Windows、Android、Switch等)
基于Arduino框架,代码简单易上手
支持同时发送多个按键和摇杆状态
开源免费,社区活跃,有大量示例和教程
技术规格
| 主控芯片 | |
|---|---|
| 通信协议 | |
| 支持平台 | |
| 最大按键数 | |
| 摇杆轴数 | |
| 方向键 | |
| 报告速率 | |
| 供电电压 | |
| 工作电流 | |
| 开发环境 |
项目资源
搜索资源
物料清单 (BOM)
| 物料名称 | 数量 | 参考价格 | 备注 |
|---|---|---|---|
| ESP32开发板(如NodeMCU-32S) | 1 | — | 核心控制单元 |
| 轻触按键(6x6x5mm) | 4-16 | — | 根据需求增减 |
| 模拟摇杆模块(PS2手柄摇杆) | 2 | — | 提供X/Y轴输入 |
| 10kΩ电阻 | 若干 | — | 按键上拉(ESP32内部可启用) |
| 3.7V锂电池(如18650) | 1 | — | 可选,用于无线供电 |
| TP4056充电模块 | 1 | — | 可选,配合锂电池使用 |
| 杜邦线/排线 | 若干 | — | 连接各模块 |
| 3D打印外壳或成品手柄壳 | 1 | — | 可选,用于封装 |
所需工具
| 工具 | 用途 | 是否必需 |
|---|---|---|
| Arduino IDE | 编写和上传代码 | ✅ 是 |
| USB数据线(Micro USB/Type-C) | 连接ESP32到电脑 | ✅ 是 |
| 烙铁及焊锡 | 焊接按键和摇杆 | ▢ 推荐 |
| 面包板及跳线 | 原型搭建和测试 | ▢ 推荐 |
| 3D打印机 | 制作外壳 | ▢ 推荐 |
| 万用表 | 检测电路连接 | ▢ 推荐 |
能力画像
**记忆与知识检索**:3/5 — 需要查阅BLE协议和ESP32引脚定义,但库封装了大部分细节
**动手与操作**:4/5 — 需要焊接按键和摇杆,制作外壳需要一定手工能力
**编程与算法**:3/5 — 基于Arduino库,只需调用简单API,无需复杂算法
**设计与建模**:2/5 — 外壳设计可选,非必需;电路连接简单
**实验与调试**:4/5 — 需要调试蓝牙配对、按键映射和延迟问题
**协作与分享**:3/5 — 可分享自己的手柄配置和外壳设计,但项目本身单人可完成
**学习与研究**:4/5 — 能学到BLE通信、HID协议和嵌入式开发基础
**系统集成**:3/5 — 可集成到机器人遥控、智能家居等系统中
所需技能
基础电子知识(电路连接、焊接)
Arduino编程基础(变量、函数、库调用)
蓝牙协议基本概念(配对、服务、特征值)
使用搜索引擎查找引脚图和示例代码
可选:3D建模(用于设计外壳)
适用场景
自制无线游戏手柄(PC、手机、Switch)
机器人或遥控车的无线遥控器
智能家居控制面板(通过手柄控制灯光、窗帘)
教育演示:学习BLE通信和HID设备原理
辅助输入设备:为残障人士定制特殊控制器
创客比赛:制作交互式游戏或互动装置