【发布时间】:2011-09-21 11:11:58
【问题描述】:
我们正在开展一个项目,其中我们有一个连接到 Wiimote 并从中读取数据的程序。它可以工作,但是我们想改进连接过程。在成功建立与 Wiimote 的蓝牙连接之前,我们经常需要进行多次连接尝试。这一切都在 Windows 7 32 位上。
对于每次连接尝试,我们都会执行以下操作:
- 打开 Wiimote 电源
- 在 Windows 中将其作为 HID 设备启用
- 测试连接。
- 如果连接良好,我们就完成了。否则,Wiimote 将关闭电源并进行新的尝试。
每次打开 Wiimote 电源时,Windows 都会尝试安装通用 HID 驱动程序。当连接不好时,驱动程序安装失败,我们必须重新开始。每次尝试都安装此通用驱动程序似乎效率低下。
我们有几个问题希望您能帮助我们并为我们指明正确的方向:
- Windows 真的有必要为每次连接尝试安装驱动程序吗?例如,为什么 Windows 不能像普通 USB 鼠标一样识别/记住设备。
- 为 Wiimote 编写我们自己的通用 HID 驱动程序是否会使安装更加可靠并帮助 Windows 识别设备?
- 是否可以禁用或隐藏 Windows 尝试安装通用 HID 驱动程序时显示的弹出消息?我们不想删除所有设备安装消息,只删除与我们的 Wiimote 相关的消息。
关于 Wiimote 电源的注意事项:我们使用稍微硬件改装的 Wiimote,它不使用电池,而是通过连接到计算机的 USB 电缆获取电源。到目前为止,我们发现每次连接尝试之间都必须打开和关闭电源,否则设备驱动程序安装通常会失败。
【问题讨论】:
-
Daniel,怎么跑题了,你能详细说明一下吗?
-
这不是我自己完全理解的东西......无论如何。您使用的是 MSFT 蓝牙堆栈(或 Widcomm 或 BlueSoleil)吗?您是否使用 BluetoothSetServiceState 来启用/禁用?或者是其他东西?还可以阅读 BTH HID 规范和启用信息,包括“虚拟有线”和连接(双向)。可能会解释你所看到的......或者不是...... :-,) [bluetooth.org/Technical/Specifications/adopted.htm]
-
我们使用 32feet.net 来处理蓝牙,它同时支持 Microsoft 和 Widcomm 堆栈。我们确实使用 BluetoothSetServiceState 连接到 Wiimote。感谢您的链接,我们将查看规范。
标签: windows-7 bluetooth driver hid wiimote