Share via


近距離無線通信 (NFC) 用 Hardware Lab Kit (HLK)

NFC の HLK では、NFC ドライバーの実装が Microsoft の仕様を満たしていることを検証します。 テストは手動で実行できますが、HLK NFC テスト スイートの信頼性の高いテストを自動化し、より迅速に行うために、パートナーは NFC 相互運用性テスト ツール (NITT) を入手することをお勧めします。

NITT は、Type 1、2、3、4 の NFC フォーラム タグをシミュレートします。 NITT には、RF シールドを動かすロボット アームがあります。これは、ピア ツー ピアとカード エミュレーションのシナリオでタップとタップ解除の操作をシミュレートします。 次の図は、NITT のセットアップを示しています。

RF シールドを移動するロボット アームを備えた NITT の写真

NITT の電源は 7.5 V の外部電源を使用し、クライアント PC に接続されています。

NITT を入手するには、次の連絡先情報を使用します。

JJG Technologies LLC
1034 231st Pl NE
Sammamish, WA 98074 
Phone: (206) 304-1921 Fax: (208) 298-0623
inquiry@jjgtechnologies.com

HLK テスト フレームワークを設定したら、次のようにします。

ハードウェア要件

  • NFC ドライバー DDI を実装する NFC チップが搭載されていて、準拠テストの対象となっているデバイス (テスト対象のデバイス (DUT) と呼ばれます)
  • USB ポートを使用するデスクトップ PC (PC クライアント)
  • PC クライアントに接続されている NITT ボード (使用可能な場合)
  • 近距離近接通信の DDI (NFC クライアント) を実装する NFC チップを搭載したデバイス
  • PC クライアントに接続されているスマート カード リーダー (USB で、または PC クライアントに組み込まれている)

Note

PC クライアントには、ユニバーサル C ランタイムがインストールされている必要があります。 このパッケージは、Microsoft ダウンロード センターから直接入手できます。

テストの実行

テストを実行する前に

  • HLK クライアント が DUT にデプロイされていることを確認します。
  • NITT ボードの NFC アンテナの上に DUT を配置します。
  • 実行するテストに応じて、NFC アンテナと NITT の RF シールドの下に、NFC クライアントまたはスマート カード リーダーを配置します。
  • PC クライアントにユニバーサル C ランタイムがインストールされていることを確認します。
  • DUT、NFC クライアント、および PC クライアントにネットワーク接続があることを確認します。 DUT または NFC クライアントが電話である場合は、仮想イーサネット ツールが電話に接続できる必要があります。

HLK Studio/コントローラーは、DUT でテスト ケースをデプロイして実行しますが、テスト担当者が一部の介入する必要があります。 手動介入が必要なテスト ケースでは、ヘルパー バイナリを手動で起動する必要があります。 そのためには、NFC および PC クライアントに次の設定が必要です。

NFC クライアント

  • 作業フォルダーを作成し、クライアント アーキテクチャに対応する TAEF バイナリを HLK コントローラーから作業ディレクトリにコピーします。 一般的な HLK Studio のセットアップでは、TAEF バイナリは次のディレクトリに配置されます。

    C:\Program Files (x86)\Windows Kits\10\Testing\Runtimes\TAEF\<arch>\*\MinTE\*
    

    <arch> は、x86、x64、arm、arm64 のいずれかです。

  • 次の HLK Studio の場所から上で作成した作業ディレクトリに、NfcRemotePeerService.dll をコピーします。

    C:\Program Files (x86)\Windows Kits\10\Hardware Lab Kit\Tests\<arch>\NFC\NfcRemotePeerService.dll
    

    <arch> は、x86、amd64、arm、arm64 のいずれかです。

PC クライアント (* NITT を使用する場合のセットアップ)

  • 作業フォルダーを作成し、クライアント アーキテクチャに対応する TAEF バイナリを HLK コントローラーから作業ディレクトリにコピーします。 一般的な HLK Studio のセットアップでは、TAEF バイナリは次のディレクトリに配置されます。

    C:\Program Files (x86)\Windows Kits\10\Testing\Runtimes\TAEF\<arch>\*\MinTE\*
    

    <arch> は、x86、x64、arm、arm64 のいずれかです。

  • 次の HLK Studio の場所から上で作成した作業ディレクトリに、NfcNittController.exe をコピーします。

    C:\Program Files (x86)\Windows Kits\10\Hardware Lab Kit\Tests\<arch>\NFC\NfcNittController.exe
    

    <arch> は、x86、amd64、arm、arm64 のいずれかです。

  • 次の HLK Studio の場所から上で作成した作業ディレクトリに、MuttUtil.dll をコピーします。

    C:\Program Files (x86)\Windows Kits\10\Hardware Lab Kit\Tests\<arch>\usb\MuttTools\MuttUtil.dll
    

    <arch> は、x86、amd64、arm、arm64 のいずれかです。

PC クライアント (* NITT を使用しない場合のセットアップ)

  • 作業フォルダーを作成し、クライアント アーキテクチャに対応する TNfcManualHelper.exe を HLK コントローラーから作業ディレクトリにコピーします。 一般的な HLK Studio のセットアップでは、NfcManualHelper.exe は次のディレクトリに配置されます。

    C:\Program Files (x86)\Windows Kits\10\Hardware Lab Kit\Tests\<arch>\NFC\NfcManualHelper.exe
    

    <arch> は、x86、x64、arm、arm64 のいずれかです。

HLK を使用したテストの実行

HLK Studio

  • HLK Studio で、次の図に示すように、[テスト] タブからテストを選択します。

    [テスト] タブが選択された HLK Studio のスクリーン ショット。[テスト名] ボックスの一覧で選択された PublishAndSubscribeMany テスト。

  • [選択したテストの実行] をクリックします

  • (NITT を使用せずに) 手動でテストを実行する場合は、次の図に示すように、パラメーターの値を nitt から manual に変更します。

    Value パラメーターが

NFC クライアントを使用したテスト

  • コマンド プロンプトを開き、上で作成した作業フォルダーにアクセスします。

  • 次のコマンドを実行します。

    TE.exe NfcRemotePeerService.dll /p:server=<ip_of_dut>
    

    <ip_of_dut> は、DUT の IP アドレスです。

  • NfcRemotePeerService.dll では、DUT で実行されているテストに接続し、テストからコマンドを受信します。 これらのコマンドは、NFC クライアントで近距離近接通信のパブリケーションとサブスクリプションを作成するタイミングを NfcRemotePeerService.dll に指示します。 DUT と NFC クライアントが一緒にタップされると、パブリケーションとサブスクリプションが起動し、NFC のピア ツー ピア シナリオが実行されます。

PC クライアントでのテスト (* NITT を使用している場合のセットアップ)

  • コマンド プロンプトを開き、上で作成した作業フォルダーにアクセスします。

  • 次のコマンドを実行します。

    nfcnittcontroller.exe -server <ip_of_dut> -tagIndex <tag_index> -reader <reader_name>
    

    <ip_of_dut> は DUT の IP アドレス、<tag_index> は NITT ボード タグ インデックス、<reader_name> は PC クライアントに接続されているスマート カード リーダーの名前です。 <tag_index> の値は、それぞれ、NFC フォーラム準拠の T1T、T2T、T3T、T4T に対応する 1、2、3、4 です。 PC クライアントに接続されているスマート カード リーダーの名前を確認するには、NfcManualHelper.exe の -listReaders オプションを使用します (下記参照)。

  • NfcNittController.exe では、DUT で実行されているテストに接続し、テストからコマンドを受信します。 これらのコマンドは、NITT を使用してアクションを実行するタイミングを NfcNittController.exe に指示します。 これらのアクションは自動的に実行されるため、手動での操作は必要ありません。 アクションの例: RF シールドを開閉し、NITT 上のタグをオンまたはオフにします。

PC クライアント のテスト (* NITT を使用しない場合のセットアップ)

  • コマンド プロンプトを開き、上で作成した作業フォルダーにアクセスします。

  • 次のコマンドを実行します。

    nfcmanualhelper.exe -server <ip_of_dut> -reader <reader_name>
    

    <ip_of_dut> は DUT の IP アドレス、<reader_name> は PC クライアントに接続されているスマート カード リーダーの名前です。 PC クライアントに接続されているスマート カード リーダーの名前を確認するには、次のコマンドを実行します。

    nfcmanualhelper.exe -listReaders
    
  • NfcManualHelper.exe では、DUT で実行されているテストに接続し、テストの実行中の処理方法についての指示を出力します。 指示の例: DUT を NFC クライアントにタップします、DUT をスマート カード リーダーにタップします、DUT を近距離近接通信にタップします。