Howto

Armadillo-810を接続して使用するためのWindows環境設定

Armadillo-810(開発セット標準イメージ※1)をWindows※2 PCにUSBケーブル接続すると、Windowsからは複数のUSBデバイスとして認識されます。

これはArmadillo-810の「USBガジェット」機能によるものですが、実際に使用するにはWindows側のデバイスドライバー設定が必要ですので、その手順を紹介します。

※1 出荷状態搭載イメージ、及びダウンロードに置かれているイメージファイル(Linuxカーネルとユーザーランド)に相当。
※2 Microsoft Windows XP/7/8で、動作確認しています。

1. Windowsデバイスドライバーの準備

各USBデバイスに対応したWindowsデバイスドライバーの設定に必要な.infファイルを準備します。

Windowsに初期認識されるデバイス名 .infファイル .infファイル適用後のデバイス名
USB Composite Device 不要 USB Composite Device
RNDIS/Ethernet Gadget linux.inf Linux USB Ethernet/RNDIS Gadget
UVC Camera 不要 UVC Camera
CDC Serial linux-cdc-acm.inf Gadget Serial

リンクされている.infファイル※3を、Armadillo-810を接続するWindows PCでダウンロードしてください。

必ず拡張子「.inf」である必要があります。ブラウザの右クリックから「名前を付けてリンク先を保存」するなどして、正しいファイル名でダウンロードしてください。

※3 Linuxカーネルソースの Documentation/usb ディレクトリにも、同じ.infファイルが含まれています。

2. Armadillo-810の接続と起動

Armadillo-810をPCに接続します。下記は、カメラモデル開発キットで拡張ボード01(Aコネクタ用)を接続済みの場合の例です。

拡張ボード01を接続している場合、ジャンパは全てオープン(ジャンパソケットを接続していない状態)にします。 開発用USBシリアル変換アダプタのスライドスイッチは、次のように設定します。

Armadillo-810の接続手順や設定方法は、製品マニュアルに記載されています。マニュアル記載の注意事項には、必ず従ってください。

3. .infファイルの適用

Armadillo-810のLinuxを起動すると、Windowsにデバイスが自動認識され「デバイスドライバ―をインストールしています」と表示されます。しかし、初回接続の場合「RNDIS/Ethernet Gadget」と「CDC Serial」のデバイスドライバ―は見つかりません。ここで、先に用意した「.infファイル」を適用する必要があります。

デバイスマネージャーに表示された「!」マークがついた状態の各デバイスに、.infファイルを適用する手順は以下の通りです。

  1. 「RNDIS/Ethernet Gadget」または「CDC Serial」を右クリックし、「ドライバー ソフトウェアの更新」を選択
  2. 「コンピューターを参照してドライバー ソフトウェアを検索します」を選択
  3. 「参照」ボタンをクリックし、.infファイルのあるディレクトリを選択
  4. 「次へ」ボタンをクリック
  5. 「閉じる」ボタンをクリック

「Windowsセキュリティ」により署名のないドライバーと判定されると、「ドライバー ソフトウェアの発行元を検証できません」といったメッセージダイアログが表示されます。使用するためには、「このドライバー ソフトウェアをインストールします」を選択してください。

Windows 8では、署名のないドライバーのインストールができません。Windowsのスタートアップ設定 (Microsoft社サイトWindowsヘルプ)を参照して、「ドライバー署名の強制」を無効にしてから.infファイルの適用を行ってください。

これで、Windows上から各USBデバイスを使用することができます。

4. 動作確認

それぞれのデバイスの動作を確認します。

UVCガジェット (UVC Cameraデバイス)

PCにインストールされているカメラ表示(ビデオキャプチャ)アプリケーションで、Armadillo-810のカメラ画像を表示できます。

Windows XPでは、エクスプローラーの「マイ コンピュータ」にある「USBビデオ デバイス」からカメラ表示可能です。

Windows 7/8にも対応したフリーウェアとしては、YAWCAMなどがあります。

シリアルガジェット (Gadget Serial)

Gadget SerialのCOM番号を確認(デバイスマネージャーの「ポート(COMとLPT)」下にある名称で確認できます)し、このポートにシリアル接続ターミナル(Tera Termなど)から接続します。

Armadillo-810シリアルポートのコマンドプロンプトから、以下のように実行します。

[armadillo ~]# echo ::respawn:/sbin/getty -L 115200 ttyGS0 >> /etc/inittab
[armadillo ~]# kill -SIGHUP 1

すると、シリアルガジェット側のターミナルにログインプロンプトが表示されます。

atmark-dist v1.31.0 (AtmarkTechno/Armadillo-810)
Linux 3.4-at1 [armv7l arch]

armadillo810-0 login: 

新たなプロンプトからは、「guest」ユーザーでログインできます。

イーサネットガジェット (Linux USB Ethernet/RNDIS Gadget)

イーサネットガジェットにより追加されたネットワークポートは、Windowsの持つ「自動プライベートIPアドレス指定(APIPA)」機能により、自動的にIP設定されます。

[armadillo ~]# ping 169.254.185.149
PING 169.254.185.149 (169.254.185.149): 56 data bytes                           
64 bytes from 169.254.185.149: icmp_seq=0 ttl=128 time=2.0 ms                   

Windowsがpingに応答しない場合、ファイアーウォールの設定を確認してping応答を許可するように設定してください。

Windowsの持つ「インターネット接続の共有」により、ネットワークポートにDHCPサーバー機能を持たせることが可能ですが、Armadillo-810のユーザーランドイメージv1.02まででDHCPによるIP取得が失敗する問題がありました。v1.03(atmark-dist-20130704)以降でDHCPクライアントのタイムアウト時間設定が変更されており、問題は解消しています。