次の方法で共有


CFU 仮想 HID デバイスのファームウェア更新シミュレーション

このトピックでは、仮想 HID デバイス上でシミュレートされたファームウェア更新のチュートリアルを提供します。

Note

CFU は、Windows 10 バージョン 2004 (Windows 10 May 2020 Update) 以降で使用できます。

CFU 仮想 HID デバイス サンプルをビルドしてインストールする

  1. Windows ドライバー キット (WDK) のダウンロードに関するページで説明されているように 、Visual Studio 2019 と Windows ドライバー キット (WDK) をインストールします。

  2. Microsoft CFU リポジトリをローカル リポジトリ ディレクトリに複製する

    git clone https://github.com/microsoft/CFU.git

  3. ローカルの CFU リポジトリ ディレクトリで、コマンド プロンプトで次の git コマンドを実行して、サンプルのビルドに必要な Driver Module Framework (DMF) サブモジュールを取得します。

    git submodule init

    git submodule update

  4. Visual Studio で CfuVirtualHid デバイス ソリューションをビルドする

    1. 開発システム上のCfuVirtualHid.sln ファイルの場所に移動します。 次に例を示します。

      C:\<your_repo_folder>\CFU\Host\CFUFirmwareSimulation\CfuVirtualHid.sln

    2. Visual Studio で CfuVirtualHid.sln ファイルを開きます。

    3. [ビルド] メニューの [ソリューションのビルド] を選択します。 ソリューションが正常に構築されたことを示す出力テキストが表示されるはずです。

      CfuVirtualHid ビルドの成功。

  5. CfuVirtualHid デバイスとドライバーをインストールする

    1. 開発システム上の cfuvirtualhid.inf ファイルの場所に移動します。 次に例を示します。

      C:\<your_repo_folder>\CFU\Host\CFUFirmwareSimulation\x64\Debug\CfuVirtualHid

    2. 管理コマンド プロンプトで、次のコマンドを実行します。

      devcon.exe install cfuvirtualhid.inf HID\CFU_VIRTUAL_DEVICE
      

      仮想デバイスが正常にインストールされたことを示す出力テキストが表示されます。

      CfuVirtualHid デバイスのインストールが成功しました。

  6. コントロールパネルから、デバイスマネージャを開き、ビューメニューを選択し、タイプ別のデバイスメニューアイテムを選択してください。

  7. デバイスの一覧でファームウェアノードを展開し、次に示すように CfuVirtualHid デバイスを選択します。

    CfuVirtualHid デバイスが選択されています。

  8. CfuVirtualHid デバイス を右クリックしてコンテキスト メニューを開き、プロパティ メニュー項目をクリックして CfuVirtualHid デバイスのプロパティ ダイアログ ウィンドウを開きます。

  9. CfuVirtualHid デバイス プロパティ ダイアログ ウィンドウで 詳細 タブを選択し、 プロパティ ドロップダウン リストで ハードウェア ID を選択します。

    次に示すように、 リスト ボックスに HID\CFU_VIRTUAL_DEVICE が表示されます。

    値リスト ボックスの HID\CFU_VIRTUAL_DEVICE。

  10. デバイス マネージャーメニューで、表示 メニューを選択し、接続別のデバイス メニュー項目を選択します。

    CfuVirtualHid 接続によってデバイスを表示します。

  11. 次に示すように、CfuVirtualHid デバイスに移動し、CfuVirtualHid デバイス ノードを展開し、Virtual HID Framework (VHF) HID デバイス ノードを展開し、HID 準拠デバイスの一覧項目を選択します。

    HID 準拠デバイスリスト項目。

  12. HID 準拠デバイス を右クリックしてコンテキスト メニューを開き、プロパティ メニュー項目をクリックして HID 準拠デバイスのプロパティ ダイアログ ウィンドウを開きます。

  13. HID 準拠デバイスのプロパティ ダイアログ ウィンドウで 詳細 タブを選択し、 プロパティ ドロップダウン リストで ハードウェア ID を選択します。

    次に示すように、Value リスト ボックスに HID\VID_045E&UP:FA00_U:00F5 が表示されるはずです。

    値リストの HID VID デバイス。

CFU 仮想 HID デバイスのファームウェア更新プログラムをインストールする

このセクションでは、Visual Studio 2019で作成され、CfuVirtualHidデバイスとしてサンプルデバイスがインストールされ、上記のセクションで説明されているようにdevcon.exeコマンドラインツールを使用してファームウェアの更新をインストールする例を提供します。

  1. ターゲット デバイスの .inf ファイルとファームウェア オファーとペイロード .bin ファイルの場所に移動します。 次に例を示します。

    手順 1.

  2. テキスト エディターで、ファームウェアの更新プログラム INF ファイルを開きます。 この例では、CFU INF 構成で説明されている CfuVirtualHidDeviceFwUpdate.inf ファイルを使用します。

  3. ファームウェア更新プログラムの INF ファイルで、[Standard.NTamd64]セクションに移動し、HID\VID_045E&UP:FA00_U:00F5 デバイスの次の情報が存在することを確認します。

    [Standard.NTamd64]
    %CfuVirtualHidDeviceFwUpdate.DeviceDesc%=CfuVirtualHidDeviceFwUpdate, HID\VID_045E&UP:FA00_U:00F5 ; HardwareID for VirtualHidDevice MCU
    
    [CfuVirtualHidDeviceFwUpdate.NT]
    Include            = HidCfu.inf
    Needs              = HidCfu.NT
    CopyFiles          = CfuVirtualHidDeviceFwUpdate.CopyFiles
    
    [CfuVirtualHidDeviceFwUpdate.NT.Wdf]
    Include            = HidCfu.inf
    Needs              = HidCfu.NT.Wdf
    
  4. 管理コマンド プロンプトで、次のコマンドを実行します。

    pnputil /add-driver CfuVirtualHidDeviceFwUpdate.inf /install

    このコマンドは PnP Utility出力を返します。 次に例を示します。

    pnp ユーティリティの出力。

  5. デバイス マネージャーで、CfuVirtualHid デバイス ノードに移動し、次に示すように、ノードを展開して CfuVirtualHidDevice ファームウェア更新プログラムがインストールされていることを確認します。

    cfu 仮想 hid デバイスファームウェアの更新プログラムがインストールされています。

  6. CfuVirtualHidDevice Firmware Update ノードを選択し、次に示すように CfuVirtualHidDevice Firmware Update Properties ウィンドウを開きます。

    cfu 仮想 HID デバイスファームウェアの更新プロパティ ウィンドウ。

  7. CfuVirtualHidDevice ファームウェアの更新のプロパティ ウィンドウで、Details タブを選択し、次に示すように、Property ドロップダウン リストで Hardware Ids を選択します。

    プロパティ ドロップダウン リストのハードウェア ID。

  8. HID\VID_045E&FA00_U:00F5 デバイスが CfuVirtualHidDevice Firmware UpdateHardware Ids Value に表示されることを確認します。

    値リストのハードウェア ID。

  9. TraceView アプリケーションを使用して、CFU 仮想 HID デバイスのインストールに関するログ メッセージ情報を表示します。 次に例を示します。

    traceview ログ メッセージ情報。