Extracts the Firmware ID (FWID) from either the new firmware package filename or the provided Hardware Description.
The optional Integro Variant is used if the Firmware ID includes the Fieldbus Protocol.
Note: If additional options from the Integro Variant are incorporated into the FWID in the future, this code will need to be updated accordingly.
Note: When a Hardware Description (HD) is provided, the FWID is assembled as follows:
If no assembly is present in the HD, the ID, version, and key ID are taken from the device.
If an assembly is present, the ID and version are taken from the assembly, while the key ID is still taken from the device.
In all cases, the key ID is sourced from the device.
Throws
If the provided filename does not match the expected pattern.
Extracts the Firmware ID (FWID) from either the new firmware package filename or the provided Hardware Description. The optional Integro Variant is used if the Firmware ID includes the Fieldbus Protocol.
Note: If additional options from the Integro Variant are incorporated into the FWID in the future, this code will need to be updated accordingly.
Note: When a Hardware Description (HD) is provided, the FWID is assembled as follows:
Throws
If the provided filename does not match the expected pattern.
Returns
The Firmware ID (FWID), e.g., "9501-01-4622-1".