这是一个万能控制器!
也是
蓝牙手柄
键盘
鼠标
……
我的期望是!
让它“啥都能控”!
为啥自己做这个控制器?
事情是这样的。
我在平时做机器人或嵌入式开发的时候,尝尝需要专注于控制部分。
在上电运行测试、调试时,我常常是直接使用板载开关手动操作or借助无线串口模块用键盘操作,实在不够优雅。
为了解决“不够优雅”的痛点,更是本着,都开始造轮子了,就要造够大够实用的这种态度。
这一版的万能控制器,诞生了……
-
如上文所述,它是集成蓝牙手柄/键盘/鼠标/多媒体控制、ESP-NOW下位机控制、ROS2机器人控制与网页校准调参于一体的万能控制器,能玩游戏,能控制PPT,更能控制飞控和小车……
-
支持通过磁吸方式烧录调试
-
支持拓展各种外设配件,可以轻松的通过磁吸接口连接充电底座/握把/方向盘,拥有丰富的DIY空间
-
仓库添加了配备磁铁安装孔位的底板, 使磁吸角度不仅限于控制器顶部
-
感知与交互: 内部配置了六轴运动姿态传感器, 配备高精度滤波算法, 可以实现多样的交互方式, 还有震动马达加持提供不错的触觉反馈。
项目一共涉及到3块PCB的制作。
-
其中副板和底板负责用于拓展接口
-
主板是双面四层设计,负责给整个系统供电,并运行所有软件功能,比如处理蓝牙通信、按键输入、传感器数据等
底板原理图
底板PCB图
副板原理图
副板PCB图
主板原理图_核心
主板原理图_外设1
主板原理图_外设2
主板PCB图
-
锂电池:400mAh
-
摇杆模块:Joy-Con同款
-
主控:ESP32S3N8R8
-
串口转USB:CH343P
-
电池充电保护:SGM4056
-
配备长按开关机电路
-
双电源切换电路:可自由切换主机、电池供电

目前开发的核心身份有三个,分别是——HID设备、ESP-NOW主机、micro-ROS节点。
所有功能都由它们拓展开来:
-
HID设备可以配置为游戏手柄,键盘,鼠标,多媒体设备; 其中键盘和多媒体设备的按键宏和各种模式都可以通过 Web 网页在线配置;
-
ESP-NOW能以点对点or广播的方式,和烧录了固件的接收机的ESP32通讯。接收机能将接收到的数据转换成不同协议格式给主设备(主控板/飞控);
-
micro-ROS 中将手柄作为Node接入运行Agent的主机, 通过Topic发送控制器摇杆/陀螺仪/按键的数据。
-
由于使用 vant作为 UI 框架, 使其在移动端和电脑端都有不错的兼容性。
软件上,没有ESP-IDF开发环境咋办?
可以使用乐鑫官方的烧录工具。
Firmware中提供了编译好的二进制固件, 烧录时要全程按住中间的功能键。
小tips:由于固件较大,烧录时间较长,可以直接拿个小夹子夹住按键进行烧录。
烧录注意事项
使用 Flash Download Tool 时注意, 固件的地址栏要填写0x0, 其他保持默认即可。

总体复刻难度中等,材料成本90RMB左右。

目前,项目已全开源!
——想复刻?想给作者点赞?下面会附上开源网址↓,欢迎大家在遵循作者开源协议的情况下,友好复刻学习~~