0

Google Open Accessories で遊んでいます。
Arduino Mega ADK での簡単な実装と
.NET MF チップ (c#) での実装をテストしました。

いずれかのデバイスを ONDA V712
( http://www.onda-sale.com/onda-v712-dual-core-7-inch-16gb.html )などの安価なタブレットに接続すると
、タブレットはアクセサリを検出します必要な APK をインストールするように求められます。
ただし、いずれかのデバイスを Samsung Galaxy S3、Note II、または Note 8 に接続すると、機能しません。
Galaxy は単に「USB メディア デバイスとして接続されています」と言っています。


Galaxy の範囲のデバイスが #android オープン アクセサリと互換性がないとは信じがたいので、おそらくそれらのデバイスには何らかの設定の微調整が必​​要ですか? 参考までに、Arduino Mega ADK のコードは WROX のサンプルから引用しています。

#include <AndroidAccessory.h>
#include <ch9.h>
#include <Max3421e.h>
#include <Max3421e_constants.h>
#include <UsbHost.h>

char application [] = "wrox_temperature_sensor";
char accessory [] = "wrox_temperature_sensor";
char company [] = "Wiley";
char versionNbr[] = "1.0";
char serialNbr[] = "1";
char url[] = "http://media.wiley.com/product_ancillary/66/11184547/DOWNLOAD/t.apk";
int sensorPin = 0;
long timer = millis();
AndroidAccessory usb(company, application, accessory, versionNbr, url,serialNbr);


void setup() 
{
    usb.begin();

}

void loop() 
{
  if (usb.isConnected()) 
  {
    if( millis() - timer > 10 ) 
    {
      int val = analogRead( sensorPin );
      float voltage = (val * 5.0) / 1024.0;
      float tempCelcius = voltage * 100;
      float tempKelvin = tempCelcius + 273.15;
      byte * b = (byte *) &tempKelvin;
      usb.write(b, 4);
      timer = millis();
    }
  }
}

しかし、Arduino/NetMF デバイスは問題ではないと思います。


また、Galaxy デバイスに電力を供給/充電するのに十分な電力が得られるように、12v アダプターで Arduino に電力を供給しました 。

Galaxy デバイスに接続したときの Arduino 出力:

デバイスのアドレス指定... デバイス記述子を要求しています。可能性のある
デバイスが見つかりました。
シリアル モードへの切り替えで、デバイスのプロトコルバージョンを読み取れませんでした

Onda デバイスに接続したときの Arduino 出力:

デバイスのアドレス指定...
デバイス記述子を要求しています。android
acessory device
config desc interface desc
1
2が見つかりました

また、各 Galaxy デバイスに AOA サポートを示すファイルがあるかどうかも確認しました。「/etc/permissions/android.hardware.usb.accessory.xml

<permissions>
    <feature name="android.hardware.usb.accessory" />
    <library name="com.android.future.usb.accessory"
           file="/system/framework/com.android.future.usb.accessory.jar" />
</permissions>

ノート:

Arduino 側では 、ADK サイトからダウンロードしたUsbHostライブラリを使用しています。ArduinoADK-beta-001.zip
このアーカイブには、バージョン 1 とバージョン 2 の 2 つのバージョンが含まれていますが、バージョン 2 を使用すると、コードとサンプルはコンパイルされません。

各 Galaxy デバイスは Android 4.1.1 以降を使用しています。

4

0 に答える 0