Condividi tramite


Strumento autonomo CFU (Component Firmware Update)

Lo strumento autonomo CFU invia i file di aggiornamento delle immagini del firmware a un dispositivo. Può essere usato per testare l'aggiornamento del firmware nel dispositivo durante lo sviluppo e prima di caricarlo in Windows Update.

Annotazioni

CFU è disponibile in Windows 10 versione 2004 (Windows 10 maggio 2020 Update) e versioni successive.

Prima di inviare l'immagine del firmware, lo strumento invia diversi comandi al dispositivo con offerte firmware. Solo se il dispositivo accetta, lo strumento invia il payload del firmware. La comunicazione tra lo strumento e il dispositivo è conforme al protocollo CFU, una specifica open source (inclusa con CFU) basata sul protocollo HID.

Questo strumento legge un file di offerta e passa un file di immagine di aggiornamento del firmware a un dispositivo. È anche in grado di cercare il dispositivo in base alle impostazioni del protocollo e richiedere/stampare le informazioni sulla versione del firmware.

Richiede che un file di testo delle impostazioni del protocollo .csv venga passato come argomento.

Esempi di formato dei comandi di utilizzo degli strumenti

FwUpdateCfu.exe version \<protocolSettingsPath\> (to retrieve version of device)
FwUpdateCfu.exe update \<protocolSettingsPath\> \<offerfile\> \<binfile\> [forceIgnoreVersion] [forceReset]

Impostazioni del protocollo di esempio (nel file .csv)

#instructions:
#Fill in csv tag and the value in hex for each item
#order not important
#only the first 2 fields will be looked at so values after that are considered comments
VID,0x045e,#mandatory (each vendor must maintain their own Vendor defined Utility Page collections)
PID,0x07cd,#optional
USAGEPAGE,0xFF07,#mandatory (each vendor must maintain their own Vendor defined Utility Page collections)
USAGECOLLECTION,0x31,#optional (if you don't specify, the tool will attempt to talk to all devices with matching UsagePage/Vid/Pid on the usages specified below)
VERSION_FEATURE_USAGE,0x62,#mandatory for all procedures
CONTENT_OUTPUT_USAGE,0x61,#mandatory for fwUpdate procedure
CONTENT_RESPONSE_INPUT_USAGE,0x66,#mandatory for fwUpdate procedure
OFFER_OUTPUT_USAGE,0x8e,#mandatory for fwUpdate procedure
OFFER_RESPONSE_INPUT_USAGE,0x8a,#mandatory for fwUpdate procedure