Windows系统下LIBUSB_ERROR_ACCESS问题排查求助
Windows下BLE骑行数据模拟仓库LIBUSB_ERROR_ACCESS错误修复
问题
运行GitHub上的低功耗蓝牙(BLE)骑行数据模拟仓库时,Windows系统持续抛出LIBUSB_ERROR_ACCESS错误,错误堆栈如下:
Error: LIBUSB_ERROR_ACCESS at Interface.claim (C:\Users\simulator\zwack\node_modules\usb\usb.js:286:14) at BluetoothHciSocket.bindUser (C:\Users\simulator\zwack\node_modules\@abandonware\bluetooth-hci-socket\lib\usb.js:92:28) at BluetoothHciSocket.bindRaw (C:\Users\simulator\zwack\node_modules\@abandonware\bluetooth-hci-socket\lib\usb.js:48:8) at Hci.init (C:\Users\simulator\zwack\node_modules\bleno\lib\hci-socket\hci.js:110:35) at BlenoBindings.init (C:\Users\simulator\zwack\node_modules\bleno\lib\hci-socket\bindings.js:97:13) at Bleno.<anonymous> (C:\Users\simulator\zwack\node_modules\bleno\lib\bleno.js:49:22) at Bleno.emit (node:events:513:28) at _addListener (node:events:556:14) at Bleno.addListener (node:events:605:10) at new ZwackBLE (C:\Users\simulator\zwack\lib\zwack-ble-sensor.js:56:9) { errno: -3 }
已使用管理员权限运行cmd,问题未解决。
修复步骤
1. 替换蓝牙适配器驱动为libusb-win32
- 下载Zadig工具,打开后点击
Options->List All Devices - 在设备列表中找到你的蓝牙适配器(名称通常含“Bluetooth”或“HCI”)
- 将驱动切换为
libusb-win32,点击Replace Driver完成安装
2. 配置蓝牙适配器权限
- 打开设备管理器,找到蓝牙适配器右键选择「属性」
- 切换到「安全」标签页,确保当前用户拥有「完全控制」权限
- 权限不足时,点击「编辑」添加当前用户并赋予完全控制权限
3. 停止Windows蓝牙服务
- 按
Win + R输入services.msc打开服务管理器 - 找到「Bluetooth Support Service」,右键选择「停止」
- 右键选择「属性」,将启动类型改为「手动」,防止自动占用适配器
4. 重装项目依赖
- 删除项目根目录的
node_modules文件夹和package-lock.json文件 - 以管理员身份运行cmd,执行
npm install重新安装依赖
5. 确认适配器兼容性
- 检查蓝牙适配器是否支持BLE主机模式(部分旧适配器仅支持从机模式)
- 查看适配器官方文档或设备参数,确认是否支持HCI RAW模式
内容的提问来源于stack exchange,提问作者Afaq Khan
相关产品推荐
相关产品推荐

