Wednesday, July 21, 2021

General Availability: Azure Sphere version 21.07 new and updated features

The Azure Sphere 21.07 feature release is now available and includes the following components:

  • Updated Azure Sphere OS
  • Updated Azure Sphere SDK for Windows and for Linux
  • Updated Azure Sphere extensions for Visual Studio and for Visual Studio Code
  • Updated samples, tutorials, gallery items, and documentation

If your devices are connected to the internet, they will receive the updated OS from the cloud. You'll be prompted to install the updated SDK on next use, or you can install it now. To install the latest SDK, see the installation Quickstart for Windows or Linux:

New and changed features in the 21.07 release

The 21.07 release includes an improvement to how time sync is handled, the ability to track shared library heap memory usage during development, and new ways to authenticate using Azure Active Directory. This release also includes some debugging improvements in the Visual Studio and Visual Studio Code extensions, expanded support of the --output parameter in the CLI, and the ability to get additional device information from some commands in the CLI and Public API (PAPI).

 

Time sync changes

The time sync process has changed in the 21.07 release to provide a more robust process when the primary time server fails or cannot be reached. Previously, services that depend on completion of time sync could fail to start if time-sync retries prevented time sync from completing. The change adds a fallback mechanism for obtaining accurate time so that time-sync retries do not continue indefinitely.

 

Heap memory allocation tracking

The heap memory allocation tracking feature provides developers with a convenient way to see memory allocations from libraries included with the Azure Sphere SDK during development of an application. The feature adds a new application capability, HeapMemStats, and a new Azure Sphere SDK library, libmalloc. The feature also includes changes to the output of the Azure Sphere CLI command azsphere device app show-memory-stats and the Visual Studio extension. With these changes, developers can add the HeapMemStats capability to their high-level application, deploy the app to a development-enabled device, and use Visual Studio's Performance Profiler to view the memory used by the SDK libraries called by their app.

 

Authentication methods using Azure Active Directory

The Azure Sphere Public API (PAPI) supports multiple methods of user authentication and authorization in Azure Active Directory (AAD).

With Azure Active Directory, an application token can be used to authenticate and grant access to specific Azure resources from a user app, service, or automation tool by using the service principal or managed identity method for authentication.

The following authentication methods are now supported using Azure Active Directory:

 

Additional update status details from CLI and PAPI commands

The Azure Sphere Public API has been extended to include additional device details about the operating system and update status. You can now see the version of the system OS installed on the device, the latest available OS version, when the device was last updated, and when the device last checked for updates. The additional information can be helpful to manage updates to your devices.

The following Azure Sphere API reference pages explain the API response changes in more detail:

Command

Description

Devices - Get

Gets details for a device.

Devices - List

Gets all devices that are claimed to the specified tenant.

Devices - List In Group

Gets all devices that are assigned to the specified device group.

Devices - List In Product

Gets all devices that belong to the specified product.

 

In addition, the Azure Sphere CLI has been updated to include these additional device details in the azsphere device list, azsphere device show, and azsphere device update commands using the --query parameter or the supported output formats. For example, azsphere device show --output json.

 

New and changed features in Visual Studio or Visual Studio Code extensions for Azure Sphere

The Visual Studio and Visual Studio Code extensions include more descriptive names for debug targets. The Visual Studio extension also includes support for heap memory allocation tracking.

 

More descriptive names for debug targets

The Visual Studio extension now uses the project name for the debug target name. The Visual Studio Code extension shows the project name as before but simplifies the descriptive text.

 

Support for other output formats

Additional Azure Sphere CLI commands now support the --output (--out or -o) parameter to specify the format of the CLI output. For more information see, Supported commands.

 

New and updated commands and parameters

For more information on updates to commands and parameters, see a list of updates in the customer documentation.

 

New and updated samples and Gallery items

The 21.07 release includes an updated memory usage tutorial, updates to the Azure IoT sample, and three new/updated projects in the Azure Sphere Gallery.

 

Updated memory usage tutorial

The MemoryUsage tutorial has been updated to demonstrate heap memory allocation tracking.

 

Updated Azure IoT sample

We made some minor refinements to the Azure IoT sample, including changing the polling rate of IoTHubDeviceClient_LL_DoWork to every 100ms rather than every 1s, following this IoT Hub client best practice. We recommend that you adopt this change in your existing apps.

 

New or updated Gallery samples

The following new sample was added to the Azure Sphere Gallery , a collection of unmaintained scripts, utilities, and functions:

 

For more information on Azure Sphere OS feeds and setting up an evaluation device group, see Azure Sphere OS feeds and Set up devices for OS evaluation.

 

For self-help technical inquiries, please visit Microsoft Q&A or Stack Overflow. If you require technical support and have a support plan, please submit a support ticket in Microsoft Azure Support or work with your Microsoft Technical Account Manager. If you would like to purchase a support plan, please explore the Azure support plans.

Posted at https://sl.advdat.com/3roI2cI