我有两部连接OTG线的Android手机。显然,电缆强制一旦手机进入主机模式而另一个成为外围设备。我希望能够动态地交替设备的主机/外设状态,而无需切换电缆,OTG HNP规范似乎表明这是可能的。我在这里找到了一些有关它的更多信息,但我不知道该去哪里 - https://android.googlesource.com/kernel/msm/+/android-msm-bullhead-3.10-marshmallow-dr/Documentation/usb/msm_otg.txt
答案 0 :(得分:1)
是的,有可能。很好的找到技术文档。但是,Developer.android.com网站和USB.org提供了有关实施的更多信息:
Android 3.1(API级别12)或更高版本的平台直接支持USB附件和主机模式。 USB附件模式也作为附加库向后移植到Android 2.3.4(API级别10),以支持更广泛的设备。设备制造商可以选择是否在设备的系统映像上包含附加库。 Link
据我所知主机协商总是偏好传统的主机控制器,如计算机。 Android设备传统上是USB配件。然而,当你有一个带有主机(如PC)和插入的其他附件的集线器时,会出现一个非常复杂的情况。似乎没有办法解决有关哪个设备应该是Android或PC主机的争议。例如,我将主机PC连接到安装了HUB和千兆以太网加密狗的Android设备。我永远无法与加密狗建立连接。事实上,HNP似乎从未发生过。
最后,文档似乎表明主机负责操作USB Stream。最有希望的是文档Here,它建立了USBEndpoint的方向。