2017-08-06 4 views
0

私は2つのアンドロイド携帯電話をOTGケーブルで接続しています。明らかに、ケーブルがホストモ​​ードに入ったら、もう一方は周辺機器になります。私は、ケーブルを切らずにデバイスのホスト/ペリフェラルの状態を動的に交互に切り替えることができるようにしたいと考えています。また、OTG HNP仕様が可能であると思われます。私はここにそれに関するいくつかの情報を見つけましたが、どこに行くのかわかりません - https://android.googlesource.com/kernel/msm/+/android-msm-bullhead-3.10-marshmallow-dr/Documentation/usb/msm_otg.txt2つのデバイスを接続しているときにOTG Host Negotiation Protocolを使用してモードを変更できますか?

答えて

0

はい、可能です。非常に技術的なドキュメントにあります。ただし、Developer.android.comサイトとUSB.orgには実装に関する詳細情報があります。

USBアクセサリモードとホストモードは、Android 3.1(APIレベル12)以降のプラットフォームで直接サポートされています。 USBアクセサリモードは、Android 2.3.4(APIレベル10)にバックアップされ、より広範なデバイスをサポートするアドオンライブラリとしても使用できます。デバイスメーカーは、アドオンライブラリをデバイスのシステムイメージに含めるかどうかを選択できます。 Link

ホストネゴシエーションでは、コンピュータのような伝統的なホストコントローラが常に好むと言えます。 Androidデバイスは、従来、USBアクセサリでした。しかし、ホスト(PCのような)と別のアクセサリを差し込んだハブを持っていると、どのデバイスがホストであるべきかについての論争を解決する方法がないように思える非常に複雑な状況が発生します。たとえば、HUBが接続され、ギガビットのイーサネットドングルが装備されたAndroidデバイスにホストPCを接続しました。私はドングルとの接続を確立することはできませんでした。実際、HNPは決して起こったようではありませんでした。

最後に、ドキュメントは、ホストがUSBストリームの操作を担当しているようです。最も有望なのは、USBEndpointの方向を確立する文書Hereです。

関連する問題