Raspberry PiをUSB周辺機器として使用できますか?


44

Raspberry Piには、電源用のマイクロUSBポートがあります。私の質問は、このポートが電力専用であるか、データにも使用できるかどうかです。Raspberry PiをUSB周辺機器として別のコンピューターに接続できるようにしたいと思います。これは電源ポートで可能ですか?そうでない場合、これは別の方法で行うことができますか?


私はこの質問が長い間閉じられていることを知っていますが、本当にやりたい場合にできることの1つは、2つのシリアルポートを備えたArduinoをプログラムして単純にメッセージを渡すことです。少しハックしますが、そのように動作する何かを取得できるはずです。
ライアンケネディ

Compute Module Development Kitに同梱されている新しいIOボードには、USBスレーブコネクタが搭載されているようです...どうすれば動作させることができますか?
コズチ14年

Piのポートは電源のみを目的としていますが、アダプターを介してシリアル接続を介してPiに接続し、Piへの基本的なアクセスを可能にすることができます
Wilf

回答:


29

回路図を見てきました。マイクロUSB接続のデータピンは何にも接続されていません。したがって、RPiを外部デバイスとしてマウントする方法はありません。

SSHを使用して、RPiのハードドライブをマウントするか、ネットワーク経由でログインすることができます。

GPIOピンにはUARTデータラインのセットが含まれており、PCからRPiへのシリアル接続を形成するために使用できます。

ビットバンギングUSB

ビットバンギングUSBは行われました(AVR V-USB)が、別のUSBポートを追加した独自の拡張ボードを設計する必要があります。このポートがRPiに電力を供給できると考えられます。これを行ったら、何らかのドライバーを作成する必要があります。幸運を。

このすべての問題に取り組む準備ができている場合は、代わりにFTDIチップを検討する価値があります。これをRPiのUARTピンに接続します。ソフトウェアの観点からは、シリアルデバイスであるかのようにコンピューターと通信します。


多分GPIOでUSBを再実装することを除いて?

2
希望はありません。USBをビットバンすることはできません。
アレックスチェンバレン

その図は私が探していたものでした。素敵な答え。
Jivings

1
@アレックス、ビットバンギングUSBが行われました。40MHz PICは低速USBを実行できます。たぶん、700MHz ARMは通常の速度を実現できますか?
finnw

3
dicks.home.xs4all.nl/avr/usbtiny-12Mhz AVR用のもう1つのUSB マイクロコントローラでは、クロックと割り込みを完全に制御できるため、それが可能であることに注意してください。この種の制御を行うには、少なくともRTLinuxを実行する必要があります。また、これを行うにはGPIOではなくSPIを使用する必要があります。
アリステアバクストン

8

マイクロUSBポートのデータピンはSoCのUSB PHYに接続されていないため、このポートをデータ用に使用することはできません(ホストモードまたはスレーブモード)。

ただし、スレーブモードでモデルAのUSBタイプAポートを使用することは可能です。

いくつかの詳細。

モデルBは、SMSC LAN9512 USB 2.0ハブと10/100イーサネットコントローラーICを使用して、Broadcom SoCで使用可能な単一のUSB OTGポートから複数の物理USBホストポートを提供します。(概略図はこちら:http : //www.raspberrypi.org/wp-content/uploads/2012/04/Raspberry-Pi-Schematics-R1.0.pdf

このハブICの存在により、USBポートがスレーブモードで使用されるのを防ぎます。ただし、モデルAにはこのICがなく、代わりにSoCのOTGポートに直接接続された単一のUSBポートがあるため、ソフトウェアを介してスレーブモードで動作するように構成できるはずです。

モデルAにはメスのホストUSBポートがあるため、ホストからホストへの変換ケーブルが必要になります。

詳細については、Raspberry Piフォーラムのスレッドをご覧ください:http : //www.raspberrypi.org/phpBB3/viewtopic.php? f=63&t =15696


5

PIのUSBはOTGであるため、モデルAは標準のガジェットインターフェイスを使用できます。デバイスモードに強制することができます。

しかし、これはあなたがイーサネットと他のUSBを失うことを意味します


5

Rasberry PI A / A + / B / B +モデルでは、さまざまな理由でOTGモードが無効になっています。

  • USBポートがUSBハブ(イーサネット)で占有されている、
  • OTG 5番目のピンが欠落している(接地されている)、または
  • データピンは接続されていません(電源ポート)。

OTGまたはいわゆるガジェットモードにはRaspberry PI Zeroが必要です。データUSBポートはOTGおよび「電源」に使用できます。この記事の執筆時点では、シリアルとイーサネットがテストされていますが、他のものは適切な量の作業(キーボード、ディスク、カメラなど)で動作するはずです。複合デバイスも動作するはずです。で詳細を見る

この作業は、OTG機能がより簡単なハッキングのためにOOTBで使用できるように、カーネルのrpy-4.4バージョンにマージされる予定です。

重量挙げの大半は、Github raspberrypi / linux Issue#1212で実施されました。


こんにちは、ようこそ。ご意見ありがとうございます。あなたもここに貢献することをお勧めします:raspberrypi.stackexchange.com/questions/38576/...
Ghanima


電源ポートをクライアントデバイスとして使用し、他のポートをホストポートとして使用できますか?usbデバイスをpiに接続するためにpcと他のポートに接続するための仮想イーサネットとして電源ポートを使用するのはクールでしょう。
-allo

特に、電源ジャックをデータに使用できるという主張を裏付ける証拠がリンクから提供されないため、この答えは混乱しています。それらのほとんどは、カーネルにOTGガジェットモードを実装することに関するものです。これは現在標準であり、電源ジャック経由では実行できません。電源とデータの両方に使用できるジャックは1つだけで、2つはありません。
goldilocks

答えを修正しました。実際には、そのデータポートは電源ラズベリーPIゼロにし、OTGポートとして使用することができている
myroslav

4

残念ながら、電源ポートは通常この方法では機能しないため、電源以外の目的でマイクロUSBポートを使用することはできません。

現在、Piを周辺機器として使用する方法を考えることはできませんが、SSH、FTP、またはSamba共有など、Piにアクセスできる他の方法がいくつかあります。

あなたが達成しようとしていることについて詳しく説明している場合は、最善の方法をアドバイスすることができます。


単なる架空の例ですが、Raspberry Piをサウンドカードとして使用したいと思います。もちろん両端のドライバーを作成しますが、どういうわけかそれをPCに接続する必要があります。

1
そのためのエレガントなソリューションは、SSHを介して音声をパイプすることです。もちろん、GPIOを使用してみることもできます!
Jivings


1

はい、MAX3420EのようなSPIインターフェースを備えたUSBペリフェラルコントローラーを使用し、Linuxでまだサポートされておらず、実装する特定のUSBクラスを処理する場合はドライバーを作成することができます。



0

PiはUSB経由でHIDデバイスをエミュレートできますか?

これは、あらゆる種類のPiで実行できます。

最も安価なソリューションは、Pi Zeroを使用することです。

このリンクのテキストは長すぎてここに投稿できませんが、Zeroはどのような種類のHIDでもかまいません。キーボード、マウス、フラッシュドライブ、カメラなど、思いつくものなら何でも。

Raspberry PI ZeroをUSBガジェットに変える

ここに画像の説明を入力してください

キーボードまたはマウスにするのは簡単です。


-2

PCからRaspberry Piへの簡単なネットワーク接続を行い、Pulse Audioを使用してネットワーク経由でサウンドを転送できます。Pulse Audioは、ネットワークの透過性を提供するSound Serverです。したがって、PCでサウンドファイルを再生し、Raspberry Piに接続されたスピーカーで聞くことができます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.