Scrutiny Firmware Description (SFD)#
A Scrutiny Firmware Description (SFD) is a file that’s generated during the firmware’s build phase for embedded systems. This file includes:
The device’s static and global variables, which are identified from the debug symbols (including address, size, type, endianness)
firmware ID, which is used to match the SFD with the corresponding firmware
Metadata about the firmware, such as its name, project version, author, build date, etc.
Alias definitions
The SFD must be installed on the server using the install-sfd
command with the CLI.
When a device connects, the server will automatically load the appropriate SFD based on the firmware ID that the device broadcasts.
- ScrutinyClient.get_installed_sfds()[source]#
Gets the list of Scrutiny Firmware Description file installed on the server
- Raises:
OperationFailure – Failed to get the SFD list
- Returns:
A dictionary mapping firmware IDS (hash) to a
SFDInfo
structure- Return type:
Dict[str, SFDInfo]
- class scrutiny.sdk.SFDInfo[source]#
(Immutable struct) Represent a Scrutiny Firmware Description
- firmware_id: str#
Unique firmware hash
- metadata: SFDMetadata | None#
The firmware metadata embedded in the Scrutiny Firmware Description file if available.
None
if no metadata has been added to the SFD
- class scrutiny.sdk.SFDMetadata[source]#
(Immutable struct) All the metadata associated with a Scrutiny Firmware Description
- project_name: str | None#
Name of the project.
None
if not available
- author: str | None#
The author of this firmware.
None
if not available
- version: str | None#
The version string of this firmware.
None
if not available
- generation_info: SFDGenerationInfo | None#
Metadata regarding the creation environment of the SFD file.
None
if not available
- class scrutiny.sdk.SFDGenerationInfo[source]#
(Immutable struct) Metadata relative to the generation of the SFD
- timestamp: datetime | None#
Date/time at which the SFD has been created
None
if not available
- python_version: str | None#
Python version with which the SFD has been created
None
if not available
- scrutiny_version: str | None#
Scrutiny version with which the SFD has been created
None
if not available
- system_type: str | None#
Type of system on which the SFD has been created. Value given by Python platform.system().
None
if not available