Show HN: I wrote a small lib to turn a USB gamepad into a Bluetooth one
2 months ago
- #USB-HID
- #BLE-Gamepad
- #ESP32-S3
- ESP32-S3固件将USB HID游戏手柄转换为BLE游戏手柄
- 支持Seeed Studio XIAO ESP32S3作为目标设备
- 部分控制器需使用USB-C OTG转接头或供电集线器
- 调试日志可选UART适配器(接GPIO12/GPIO13)
- 供电注意:部分控制器可能需要外接供电集线器
- 通过USB-C接口进行固件烧录和开发
- 运行时需通过OTG转接头连接控制器
- 像普通蓝牙控制器一样配对BLE设备
- PlatformIO项目已启用USB Host和调试UART功能
- 提供PlatformIO的编译和烧录命令
- 开发环境支持快速烧录/监控
- 使用自定义分区表(partitions_4MB.csv)
- 通过GamepadState实现USB与BLE解耦
- 将HID报告规范化为标准按键布局
- 如需调整HID→标准映射可修改hid_parser.cpp
- 调试日志可帮助识别按键触发状态
- 核心文件:usb_host, hid_parser, gamepad_state, ble_gamepad, main.cpp