2011-01-01 6 views
2

Android Froyo 2.2を実行しているArchos a28インターネットタブレットがあります。私はAndroid上で動作させたいHID Inputクラスデバイスを持っています。タブレット自体は、すでにマウスとUSBフラッシュドライブを箱から出して処理することができます。ArchosのUSB入力デバイスa28:デバイスに直接読み書きする

私はa28で私のUSBデバイスを使いたいです。これはカスタム設計のデバイスです。私は生のUSB入出力レポートをデバイスとの間で読み書きできるようにする必要があります。

どうすればこの問題を解決できますか?私はこれを行うモジュールを作ることが可能かもしれないと聞いています。あなたは、Linuxでの作業カスタムUSBデバイスを取得する必要があり、

まず:

+0

接続するデバイスに関するより具体的な情報を提供できますか?一部のデバイスには、FTDI USBインターフェイスなどの独自のドライバがあり、低レベルのUSBを一から行うよりも使いやすいものがあります。 –

+0

FTDI USBはUart over USBであり、真のUSBではありません。 VCOMドライバを使用する必要があります。これは簡単だと私は同意しますが、すでにHID準拠のデバイスを開発する手間がかかっているため、VCOMはこの時点ではオプションではありません。 Android上でデバイスを稼動させるだけで済みます。これは、既存のLinux HIDドライバを使用することを意味します。 – Brian

+0

freenodeの#android-devからのコメントです:あなたが必要とするのは、サービスを書き、何らかの形でそれをudevにフックすることです(おそらくスーパーユーザ権限が必要かもしれません)。そして、デバイスを含む/ dev/input/HIDドライバから。 – Brian

答えて

1

は、基本的に次の2つのことを行う必要があります。最終的に、タブレット上のアンドロイドスタックの根底にあるLinux。しかし、まず、対話的に実験するのが簡単なデスクトップのLinuxで作業したいと思うかもしれません。おそらく、カーネルドライバのロードや修正、場合によっては自動的にロードするためのルールの設定が必要になるでしょう。一度それがあれば、あなたがやったことを文書化して、アンドロイドタブレットのLinux用に相当することをしてください。これにはほぼ確実に根が必要です。アンドロイドのコンテキストでは、接続時にドライバを自動ロードする方法は異なる場合がありますが、ドライバ自体は本質的に同じで、適切なカーネルに対してのみコンパイルされます。

第2に、デバイスをアプリケーションプログラムで使用できるようにする必要があります。カスタムプログラムでのみ利用できるようにしたい場合は、デバイスファイルと直接対話するか、/ procまたは/ sysに何かを作成することでこれを行うことができます。これらのファイルは、世界的にアクセス可能でなければならないか、別の特別なグループID /アンドロイドパーミッションペアをスタックに追加して、そのアンドロイドパーミッションを持つアプリケーションで利用できるようにする必要があります。より洗練されたアプローチは、デバイスを管理する低レベルのサービスを作成し、それを通常のバインダーベースのアンドロイドサービス通信メカニズムを介してアンドロイドアプリケーションに公開することです。

関連する問題