ArduinoのスケッチとAndroidアプリケーションを作成して、標準のUSBケーブルで相互に通信するにはどうすればよいですか?


回答:


6

通常、AndroidデバイスにはUSBホストがありません。コンピューターなどのよりスマートなデバイスに接続されることを期待しています。Arduinoも同様です。このため、ArduinoはMega ADK(つまり、アクセサリ開発キット)を作成しました。

Mega ADKとDueはUSBホストとして機能し、Androidフォンに直接接続できます。すでにボードをお持ちの場合、別のオプションは、USBホストシールドを入手してUSBホスト機能を追加することです。

スケッチは、それがどのようなアクセサリアプリケーションであるかを電話に伝え、電話はストアから適切なアプリケーションをダウンロードします。

ArduinoをAndroidに接続することについての本があります。


ミニUSBからUSB-Aホストへのコンバーターがあります。
apnorton 2014

@anortonはい:OTGケーブルです...私の投稿を参照してください。
匿名のペンギン

この回答の前提は、投稿される何年も前に古くなりました-ほとんどの現代的なAndroidデバイスはUSBホストをサポートすること目的としていましたが、設計の奇妙な点が壊れている場合があります。
Chris Stratton

3

タブレットモデルについて言及したことはありません...またはArduinoモデル

USBフラッシュドライブとプリンターで動作するように設計されたいくつかのタブレットがあります。これはOTGと呼ばれます。

必要なもの:

  • OTGをサポートするタブレット
  • タブレットのUSBスロットに適合し、互換性のあるOTGアダプター
  • Arduino Uno Communicatorアプリ
  • Arduino Uno(またはクローン)[注:USB-シリアルコンバーターとしてプログラムされたAtmega16U2またはAtmega8U2で動作するので、Unoよりも数枚のボードに対応していると思います。)

別の代替策は、Bluetoothを調べることです(注:ランダムなリンクを選択しただけですが、類似したBTアダプターが何百もあり)


標準のAndroid USBホストモード、オペレーティングシステムの機能を備えたフラッシュドライブをサポートしていないことに注意してください(一部のベンダービルドはサポートしています)。むしろ、かなり生のUSBホストAPIをアプリケーションコードに公開します。
Chris Stratton

2

USBプロトコルでは、一端を「ホスト」、もう一端を「ペリフェラル」にする必要があり、ケーブルの両端のデバイスが「ペリフェラル」である場合は機能しません。残念ながら、ほとんどのArduinoと多くの初期のAndroidデバイスは「周辺機器」であるため、そのようなデバイスを標準のUSBケーブルで接続することはできません。

一部の最新のAndroidデバイスは「OTG」をサポートしているため、理論的にはケーブルのAndroid側を「ホスト」にすることができます。誰かがこれを機能させましたか?

別のアプローチは、ケーブルのArduino側を「ホスト」にし、ケーブルのAndroid側を「周辺機器」にすることです。それが取られたアプローチです

(Amarino (a)とCellbots (a) (b)はさらに別の完全に異なるアプローチをとっています)。


1

処理は、デバイス間の通信を開始するのに最適な場所です。

インターフェースと言語はArduinoに非常によく似ており、あなたが始めるための多くの例があります。

http://playground.arduino.cc/Interfacing/Processing


2
Androidで動作しますか?
匿名のペンギン

@AnnonomusPersonはい、Androidの処理
Faux_Clef 14

@Faux_Clefうーん、それは知りませんでした。それがAndroidに最適かどうかはまだわかりません。投稿したリンクは非常に安定していないようです...処理はUSBでサポートされていることは知っていますが、Androidでそれを実行できるかどうかはわかりません...
匿名のペンギン

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