Highlights in this release include a decrease in the cold boot time to connect-to-cloud for the OS resulting in lower energy use, publication of best practices guidance for production-ready applications, and publication of optimized manufacturing scripts.
New and changed features in the 22.07 OS
The 22.07 release of the Azure Sphere OS includes:
The OS now supports caching of the DAA (customer) certificate in persistent storage. This results in decreased energy consumption at cold boot and decreased time to connect to the cloud after cold boot or power down as long as the certificate has not expired.
The OS has a new API function, Applications_GetOSVersion(), in Applibs applications.h that returns a printable string containing the current OS version.
New and changed features in the 22.07 SDK
The 22.07 release of the Azure Sphere SDK includes the following changes.
Support for monochrome CLI output
Azure Sphere CLI now supports monochrome output for accessibility reasons. Using this command you can manage color setting for messages in Azure Sphere CLI. If you enable the no-color parameter, colored messages are removed and the originally colored messages are prefixed with DEBUG, INFO, WARNING, or ERROR.
Azure Sphere classic CLI authentication migrated from ADAL to MSAL
The Azure Sphere classic CLI now uses the Microsoft Authentication Library (MSAL) rather than the Active Directory Authentication Library (ADAL), which is being retired. There is no change in the usage of the Azure Sphere classic CLI as a result of the migration to MSAL, and no customer action is required.
Support for other output formats
The following Azure Sphere CLI commands now support the --output or -o parameter to specify the format of the CLI output. See Supported Commands for the list of commands that currently support multiple output formats.
New and changed features in the 22.07 Visual Studio and Visual Studio Code extensions
CMakePresets are now supported by both Visual Studio and Visual Studio Code. The CMakePresets.json file allows you to specify common configure, build, and test options, then share them with developers using other development environments.
New and updated samples, code snippets, and Gallery projects
The 22.07 release includes the following changes to the samples, code snippets, and Gallery projects.
Updates to samples to use non-blocking APIs for Azure IoT
We have published updated manufacturing samples. Previously, manufacturing samples were distributed privately, but as of this release the samples will be maintained on GitHub. As part of this, we have published the Device REST APIs (enabling bypassing the CLI to communicate directly with the device's REST API) with both C# and Python support, example applications, and tests. The manufacturing scripts are ported to using these REST APIs. This direct use of device REST APIs enables increased manufacturing speed. For more information, see Manufacturing guide for connected devices.
Updates to FTDI interface guidance and hardware designs
We have made some minor changes to our MT3620 hardware guidance related to how the FTDI programming and debugging interface handles wakeup from low-power modes. This improves compatibility with the Avnet MT3620 V2 module. Some resistor values have been updated in the MT3620 programming and debugging interface. The low-power MCU to cloud sample has been updated to reflect this guidance, and we have issued new hardware samples for low-power MCU to cloud hardware v2.0 and FTDI interface board v2.0 that reflect this updated guidance. The FTDI interface board v2.0 updates also adds dual footprints for Service/Debug, Recovery and SWD connectors.
The azsphere tenant create command now works when a locally attached Azure Sphere device is available. In the 21.10 and later releases an error was reported even if the device is connected. The fix now automatically identifies the attached device when creating a tenant.
Fixed bugs and common vulnerabilities in the 22.07 release
The 22.07 release includes the following updates to mitigate against the following Common Vulnerabilities and Exposures (CVEs):