CFU 가상 HID 디바이스 펌웨어 업데이트 시뮬레이션

이 항목에서는 가상 HID 디바이스에서 시뮬레이션된 펌웨어 업데이트의 연습을 제공합니다.

참고 항목

CFU는 Windows 10 버전 2004(Windows 10 2020년 5월 업데이트) 이상 버전에서 사용할 수 있습니다.

CFU 가상 HID 디바이스 샘플 빌드 및 설치

  1. WDK(Windows 드라이버 키트) 다운로드에 설명된 대로 Visual Studio 2019 및 WDK(Windows 드라이버 키트)를 설치합니다.

  2. 로컬 리포지토리 디렉터리에 Microsoft CFU 리포지토리 복제

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

  3. 로컬 CFU 리포지토리 디렉터리의 명령 프롬프트에서 다음 git 명령을 실행하여 샘플을 빌드하는 데 필요한 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 디바이스 노드를 확장하고, VHF(Virtual HID Framework) HID 디바이스 노드를 확장하고, 다음과 같이 HID 규격 디바이스 목록 항목을 선택합니다.

    HID 규격 디바이스 목록 항목입니다.

  12. HID 규격 디바이스를 마우스 오른쪽 단추로 클릭하여 상황에 맞는 메뉴를 연 다음 속성 메뉴 항목을 클릭하여 HID 규격 디바이스 속성 대화 상자를 엽니다.

  13. HID 규격 디바이스 속성 대화 상자 창에서 세부 정보 탭을 선택한 다음 속성 드롭다운 목록에서 하드웨어 ID 선택합니다.

    다음과 같이 값 목록 상자에 HID\VID_045E&UP:FA00_U:00F5가 표시됩니다.

    값 목록의 HID VID 디바이스입니다.

CFU 가상 HID 디바이스에 대한 펌웨어 업데이트 설치

이 섹션에서는 위의 섹션에 설명된 대로 Visual Studio 2019에서 빌드되고 devcon.exe 명령줄 도구를 사용하여 설치된 샘플 CfuVirtualHid 디바이스에 펌웨어 업데이트를 설치하는 예제를 제공합니다.

  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 유틸리티 출력을 반환합니다. 예시:

    pnp 유틸리티 출력입니다.

  5. 장치 관리자 CfuVirtualHid 디바이스 노드로 이동한 다음, 노드를 확장하여 다음과 같이 CfuVirtualHidDevice 펌웨어 업데이트가 설치되었는지 확인합니다.

    cfu virtual hid 디바이스 펌웨어 업데이트가 설치되었습니다.

  6. CfuVirtualHidDevice 펌웨어 업데이트 노드를 선택한 다음, 다음과 같이 CfuVirtualHidDevice 펌웨어 업데이트 속성 창을 엽니다.

    cfu 가상 hid 디바이스 펌웨어 업데이트 속성 창.

  7. CfuVirtualHidDevice 펌웨어 업데이트 속성 창에서 세부 정보 탭을 선택한 다음, 다음과 같이 속성 드롭다운 목록에서 하드웨어 ID 를 선택합니다.

    속성 드롭다운 목록의 하드웨어 ID입니다.

  8. HID\VID_045E&FA00_U:00F5 디바이스가 CfuVirtualHidDevice 펌웨어 업데이트하드웨어 ID 에 표시되는지 확인합니다.

    값 목록의 하드웨어 ID입니다.

  9. TraceView 애플리케이션을 사용하여 CFU 가상 HID 디바이스 설치에 대한 로그 메시지 정보를 볼 수 있습니다. 예시:

    traceview 로그 메시지 정보입니다.