Azure Sphere 中的新增功能

Azure Sphere 会持续更新。 功能版本 支持新功能,可能包括对 Azure Sphere OS、SDK 和/或服务的更新。 质量版本 仅包括 bug 修复和安全更新,通常仅包括 Azure Sphere OS。 版本号通常采用 year.month 格式,因此 22.04 标识 2022 年 4 月的版本。

收到更新通知

新版本发生时,我们会在 Azure 更新IoT 技术社区博客上发布通知。 建议 订阅 Azure 更新 RSS 源 ,以便及时收到有关 Azure Sphere 的基本信息。

接收更新

更新 OS 后,它会自动从云下载到连接到 InternetAzure Sphere 设备。

要在附加设备上验证安装的 OS 版本,请使用以下命令:

azsphere device show-os-version

需要手动安装 SDK 更新和 Visual Studio/Visual Studio Code 扩展 - 请参阅有关 WindowsLinux 的这些说明。 若要检查计算机上安装的 SDK 版本,请使用以下命令:

azsphere show-version

零售评估版 OS 版本

零售评估计划为所有设备更新 OS 前两周的应用程序启用向后兼容性测试。 强烈建议所有生产用户使用此测试设施。 请参阅 设置设备进行 OS 评估 ,了解如何参与。

报告漏洞

Azure Sphere 鼓励安全研究人员搜索任何漏洞,并根据 MSRC 门户Microsoft协调 漏洞披露 原则 报告这些漏洞。 漏洞报告可能包括通过 Microsoft Azure 赏金计划获得奖励。 有关 Azure Sphere CVE 的一般信息,请参阅 Azure Sphere CVE。 可以在 MSRC 安全更新指南本文中特定于版本的详细信息中找到有关已发布的 CVE 的信息。

2024 年 7 月

2024 年 7 月 10 日

此版本包括对 Azure Sphere 设备的受信任密钥存储的更新,这将导致所有设备(无论它们是在零售版还是零售版 Eval 源上)安装此更新并重新启动。 有关详细信息,请参阅博客文章 Azure Sphere – 映像签名证书更新

24.06 版本中的新增功能

2024 年 6 月 25 日

Azure Sphere 24.06 版本仅包括 Azure Sphere OS 中的 bug 修复;它不包括更新的 SDK。 如果你的设备已连接到 Internet,则它们将从云接收更新后的操作系统。

修复了 24.06 版本中的 bug 和常见漏洞

24.06 版本包括用于缓解常见漏洞和暴露的更新(CVE):

  • CVE-2023-52160

24.03 版本中的新增功能

2024 年 3 月 26 日

Azure Sphere 24.03 版本现已推出,包含以下组件:

  • Azure Sphere(集成)正式发布
  • 已更新的 Azure Sphere OS
  • 已更新的适用于 Windows 和 Linux 的 Azure Sphere SDK
  • 已更新的适用于 Visual Studio Code 的 Azure Sphere 扩展
  • 更新的示例

此版本中的亮点包括 Azure Sphere(集成)的正式发布、用于连接到 Azure IoT 的自定义证书支持、Azure Sphere OS 的更新版本的 cURL、安全修补程序、Ubuntu 24.04 预发行的 SDK 支持,以及 CMake 工具链的简化。

Azure Sphere(集成)正式发布

我们很高兴地宣布,Azure Sphere(集成)是 Azure Sphere 设备的新管理界面,从今天开始正式发布供生产使用。 Azure Sphere(集成)现在是 Azure Sphere 服务的建议接口,并且不再在 Azure 门户 中标记为预览版。

使用 Azure Sphere(集成),可以直接在适用于 Azure CLI 的 Azure 门户 和 Azure Sphere 扩展中管理 Azure Sphere 设备。 Azure Sphere(集成)基于基于 Azure 资源管理器 平台构建的新 Azure Sphere(集成)REST API,它包括对其他功能强大的 Azure 服务(包括 Azure RBAC 和 Azure Monitor)的内置支持。

自公共预览版以来对 Azure Sphere(集成)的更新:

  • 新的 Azure RBAC 预生成角色可用:Azure Sphere 所有者。 Azure Sphere 所有者角色为 Azure Sphere 资源提供完全特权,但与提供完全特权的 Azure Sphere 参与者角色不同,Azure Sphere 所有者角色还包括为 Azure Sphere 资源配置 Azure RBAC 访问的功能。

  • 为了便于在查看单个产品、设备组或设备时导航,现在可在更新的左侧菜单中访问特定于资源的概述信息、访问控制、任务和属性设置。

  • 当需要执行操作时,可以使用 Azure Monitor 收到警报,因为目录 CA 证书的两年证书滚动更新。 有关详细信息,请参阅监视 Azure Sphere 机群和设备运行状况。

如果尚未开始使用 Azure Sphere(集成),建议立即执行此操作。

使用一次性集成步骤可以管理 Azure Sphere(旧版)租户(集成)。 集成租户后,可以使用 Azure Sphere(集成)或 Azure Sphere(旧版)执行管理任务。 可以暂存 Azure Sphere(集成)的采用,方法是从 Azure Sphere(集成)中的测试和开发活动开始,同时继续使用 Azure Sphere(旧版)进行生产管理工作流,直到准备好完全迁移。 尽管 Azure Sphere(旧版)接口继续得到完全支持,但我们建议迁移以充分利用 Azure Sphere(集成)功能和将来的增强功能。

有关详细信息,请参阅 Azure Sphere(集成)博客文章 正式发布

24.03 OS 中的新增功能和更改功能

Azure Sphere OS 的 24.03 版本包含以下更改:

修复了 24.03 OS 版本中的 bug 和常见漏洞

Azure Sphere OS 中包含的 cURL 版本已从版本 7.69.1 更新为 7.87.0。 24.03 OS 版本包括用于缓解这些常见漏洞和暴露的更新(CVE):

- CVE-2022-27774 - CVE-2022-27776
- CVE-2022-32205 - CVE-2022-32207
- CVE-2022-32208 - CVE-2022-32221
- CVE-2022-35252 - CVE-2022-35260
- CVE-2022-43551 - CVE-2022-43552
- CVE-2023-23914 - CVE-2023-23916
- CVE-2023-27533 - CVE-2023-27534
- CVE-2023-27535 - CVE-2023-27536
- CVE-2023-27538 - CVE-2023-27538
- CVE-2023-28319 - CVE-2023-28320
- CVE-2023-28321 - CVE-2023-28322

支持使用自定义证书连接到 Azure IoT 服务

Azure Sphere 设备现在可以利用自定义证书链连接到 Azure IoT 服务。 利用非 Azure Sphere 证书链有助于应用程序对证书使用情况有其他组织要求。 有关使用 Azure IoT 进行连接的指导已更新,以进一步描述此用例。 使用随 23.05 OS 发布的此功能 Beta API 版本的任何客户都应通过下载最新的 SDK 并重新编译其应用程序迁移到新 API,指出功能签名已更改,以提升此功能的生产应用程序。

24.03 SDK 和 Visual Studio/Visual Studio Code 扩展中的新增功能和更改功能

Azure Sphere SDK 和 Visual Studio/Visual Studio Code 扩展的 24.03 版本包含以下更改:

对 Ubuntu 18.04 LTS 的支持结束

Ubuntu 18.04 现在不在 Canonical 的长期标准支持安排之外。 因此,23.05 SDK 是支持此 OS 版本的最后一个 Azure Sphere SDK。 24.03 和未来的 SDK 将不支持 Ubuntu 18.04。

添加了对 Ubuntu 24.04 预发行版的 SDK 支持

24.03 SDK 添加了对 Ubuntu 24.04 预发行版本的支持,并增加了现有 Ubuntu 20.04 和 22.04 支持。 这是针对 Ubuntu 24.04 的开发和测试目的,然后再将其发布到公众。

CMake 工具链更改

在 SDK 版本 23.05 及更早版本中,Azure Sphere 应用程序使用的目标 API 集(sysroot)必须在CMakePresets.json和CMakeLists.txt文件中指定,这些文件是重复的,有时需要在每次 SDK 发布后进行手动更新。

为了简化此过程和简化将来的更新,azsphere_configure_toolsazsphere_configure_api已不必要的和已弃用CMakeLists.txt条目。 生成过程现在仅使用 CMakePresets.json中的AZURE_SPHERE_TARGET_API_SET 值作为目标 API 版本的真相来源。

默认情况下,参数的值 AZURE_SPHERE_TARGET_API_SET 设置为CMakePresets.json中的“latest-lts”,这意味着当 SDK 更新时,项目会自动面向最新的 API 版本。 如果要将 API 版本固定到特定版本(例如,使用特定 OS 版本生成生产产品的应用时),应将 AZURE_SPHERE_TARGET_API_SET 参数设置为该版本。

现有项目将继续使用新 SDK 进行编译,但警告消息将通知用户,他们可以删除已弃用的CMakeLists.json条目。 基于 GitHub 示例创建的新项目需要 24.03 或更高版本的 SDK 和 VS/VS Code 扩展。

更新了 24.03 的示例

24.03 版本包括对示例的以下更改:

Azure Sphere HTTPS cURL 多示例更新

上一个 Azure Sphere HTTPS cURL 多示例不再遵循当前建议的 cURL 最佳做法,可在此处更详细地查看。 虽然我们保留了与旧方法的兼容性,但我们更新了示例,并建议 将最新方法 合并到可能要执行的任何软件更新或新开发工作中。

更新示例以使用 Azure CLI 的 azure-sphere 扩展

建议使用现已正式版的 Azure Sphere(集成)接口进行将来的开发工作。 示例自述文件中的说明已更新为使用 Azure CLI 的 azure-sphere 扩展中的命令。

Azure Sphere(集成)公共预览版

2023 年 8 月 8 日

我们很高兴地宣布 Azure Sphere 公共预览版(集成),这是 Azure Sphere 服务的新管理界面,通过 Azure 资源管理器与 Azure 本机集成。

此 Azure Sphere(集成)公共预览版包括:

  • Azure Sphere 安全服务的新 REST API,与 Azure 资源管理器集成
  • Azure 门户和 Azure CLI 集成
  • Azure Monitor 集成
  • Azure RBAC 集成

阅读 本文 ,详细了解安全性、可观测性、可用性、简化的支持访问以及这些集成的其他优势。

在公共预览版期间,建议使用 Azure Sphere(集成)进行开发和测试。 最佳做法是,生产用例(例如在制造或运营工作流期间)不应使用预览版产品。 因此,对于生产用例,我们建议继续使用现有的 Azure Sphere 安全服务接口(现在称为 Azure Sphere(旧版),该接口将继续得到完全支持并正式发布。

若要详细了解 Azure Sphere(集成)和 Azure Sphere(旧版),包括入门方法,请参阅 本文档

在此版本中,没有 OS 或 SDK 更新。 Azure Sphere(集成)命令行工具由新的 Azure CLI 扩展提供,该扩展要求在使用与已连接设备交互的命令时安装 23.05 Azure Sphere SDK。

23.05 版本中的新增功能

2023 年 10 月 26 日

Azure Sphere 23.05 Update 1 版本包括针对 Visual Studio 和 Visual Studio Code 的 Azure Sphere 扩展的以下更新:

  • Azure Sphere(集成)目录管理的新快捷方式
  • 缺陷修复

它不包括更新的 OS 或 SDK。

2023 年 6 月 20 日

Azure Sphere 23.05 功能版本包含以下组件:

  • 已更新的 Azure Sphere OS
  • 已更新的适用于 Windows 和 Linux 的 Azure Sphere SDK
  • 针对 Visual Studio 和 Visual Studio Code 的 Azure Sphere 扩展的更新

如果你的设备已连接到 Internet,则它们将从云接收更新后的操作系统。 系统将提示你下次使用时安装更新的 SDK,也可以立即安装它。 若要安装最新的 SDK,请参阅适用于 WindowsLinux 的安装快速入门。

此版本中的亮点包括新的加密库、默认 NTP 回退、使用自己的证书在 Windows 上用于 Azure IoT 连接的新 beta API、更快的和增强的工厂测试、Linux 的多设备支持、新的工具存储库以及分析设备日志自助库项目的毕业,以完全支持状态。

23.05 OS 中的新增功能和已更改功能

Azure Sphere OS 的 23.05 版本包含以下更改:

Microsoft托管的载入加密库

作为 23.05 版的一部分,Azure Sphere 内置了 OS 的加密库。 通过与 wolfSSL 的合作关系,现在可以在应用程序中调用 select wolfCrypt API,以便执行 ECC 或 xChaCha 加密和解密、证书生成和管理,等等,而不会对将这些 API 生成到应用程序中产生 RAM 或闪存影响。 而是由 Azure Sphere OS 的内置库提供服务,这些库可以通过Microsoft进行修补并保持最新。 此新功能是我们产品生命周期的 ABI 兼容性承诺的一部分,你可以在其网站上查看 wolfSSL 的长期 ABI 承诺,其中还提供了有关如何使用这些 wolfCrypt API(如 ECC)的示例。

扩展 NTP 可靠性

如果Microsoft NTP 时间服务器遇到服务中断,Azure Sphere 设备现在将在尝试多个区域Microsoft终结点后尝试回退到 NIST NTP 服务器,除非自定义 NTP 与自定义回退配置一起使用。 这扩展了 Azure Sphere 设备的连接可靠性,为他们提供更多用于同步到云和其他服务器的通信的选项。 防火墙后面的 Azure Sphere 设备的管理员可在此处参考更新的终结点详细信息。

Windows 上 Azure IoT 的第三方证书支持(Beta 版)

Azure Sphere 的 OS 包括 Azure IoT C SDK。 对于此 OS,在 Windows 上,我们将预览 API 作为 Beta 计划的一部分,以利用应用程序提供的证书连接到 Azure IoT,这些证书无需在 Azure Sphere 设备中根。 这允许使用根到现有系统的证书轻松连接到 Azure IoT 资源。 这些 Beta API 目前已针对测试进行了优化,但会进行更新以支持大规模生产操作。 如果对这些 API(包括生产环境要求)有反馈,请与我们联系 AZSPPGSUP@microsoft.com。 新的 API 是AzureIoT_OverrideAzureSphereAuthCert和AzureIoT_OverrideAzureSphereAuthPrivateKey。

更新 RF 工具 OS 支持并提高工具性能

RF 工具已更新,包括:

  • 支持 Windows 和 Linux x86 平台,包括多设备。
  • 通过新的批处理 OS 调用读取和写入 bufferbin 和 eFuse 数据的性能改进。
  • Python 库,帮助 Python 用户开发自己的脚本和应用程序。

23.05 SDK 中的新增功能和更改功能

Azure Sphere SDK 的 23.05 版本包含以下更改:

Linux 多设备支持

23.05 SDK 增加了对 Linux 中多个并发连接的 Azure Sphere 设备的支持,使此功能符合 Windows 上的现有支持。 这与基于 Linux 的制造方案特别相关。

此外,连接新设备时不再需要调用 azsphere_connect.sh 脚本 - 现在会自动进行连接与现有 Windows 支持相等。 请参阅有关 Linux SDK 安装的更新文档

添加对 Ubuntu 22.04 LTS 的 SDK 支持

23.05 SDK 添加了对 Ubuntu 22.04 的支持,并增加了现有 Ubuntu 18.04 和 20.04 支持。 Linux SDK 安装程序可以确定运行的 Ubuntu LTS 版本,并下载或安装相应的 SDK。

Ubuntu 18.04 LTS 的支持结束通知

Ubuntu 18.04 现在不在 Canonical 的长期标准支持安排之外。 因此,23.05 SDK 将是支持此 OS 版本的最后一个 Azure Sphere SDK。 将来的 SDK 将不支持 Ubuntu 18.04。

适用于 Visual Studio 的 23.05 中的新增功能和已更改功能,或适用于 Azure Sphere 的 Visual Studio Code 扩展

Azure Sphere Visual Studio 和 Visual Studio Code 扩展的 23.05 版本包含以下更改:

  • 改进了调试实时应用程序和调试多个应用程序时的调试体验。
  • 更新了“新建项目”模板。

新建工具 GitHub 存储库

引入了新的 GitHub 存储库 Azure Sphere 工具。 此存储库将包含与制造、支持和诊断相关的其他官方支持工具。 生产文件夹已从 Samples 存储库重新定位,将制造工具放置在一个易于查找的位置,同时减少了示例存储库的占用空间。

Azure Sphere 示例、代码片段和库项目的 23.05 版本包含以下更改:

Azure Sphere 的 23.05 版本包括已从库中毕业的分析设备日志项目,现在是位于新 Azure Sphere 工具 存储库中的正式支持项目。

23.02 版本中的新增功能

2023 年 2 月 21 日

Azure Sphere 23.02 版本仅包括 Azure Sphere OS 中的 bug 修复;它不包括更新的 SDK。 如果你的设备已连接到 Internet,则它们将从云接收更新后的操作系统。

修复了 23.02 版本中的 bug 和常见漏洞

23.02 版本包括用于缓解以下常见漏洞和暴露的更新(CVE):

  • CVE-2022-37434 zlib
  • CVE-2018-25032 zlib

Azure Sphere 示例、代码片段和库项目的 23.02 版本包含以下更改:

单播 DNS 服务发现 库项目 演示如何通过向配置的 DNS 服务器发送 DNS-SD 查询来执行 DNS 服务发现。 与多播服务发现不同,此机制可用于在运行时动态打开对设备防火墙中的本地终结点和远程终结点的访问。

22.11 版本中的新增功能

2022 年 12 月 1 日

Azure Sphere 22.11 功能版本包含以下组件:

如果你的设备已连接到 Internet,则它们将从云接收更新后的操作系统。 系统将提示你下次使用时安装更新的 SDK,也可以立即安装它。 若要安装最新的 SDK,请参阅适用于 Windows 或 Linux 的安装快速入门:

此版本中的亮点包括新的 Malloc 版本、升级的 Azure IoT C SDK、DHCP 超时减少以及 Azure Sphere 对欧洲数据边界的公共预览版支持。

Azure Sphere 安全服务正在使用的新映像签名密钥

Azure Sphere 安全服务现在使用新的映像签名密钥。 我们的服务使用这些密钥对任何新上传的应用程序映像和新功能文件进行签名(例如,在设备上启用开发模式时)。 22.11 OS 使用旧密钥签名,但将来的 OS 将使用新密钥进行签名。 Azure Sphere 设备继续信任所有现有密钥。

对于使用新密钥接受签名的 Azure Sphere 设备,2022 年 11 月 14 日推出受信任的密钥存储(TKS)更新。 生产设备无需用户操作。 对于 Azure Sphere OS 不是最新的某些制造、开发或现场服务方案,可能需要采取额外的步骤来确保设备信任新签名的映像 - 请参阅此 博客文章 了解完整详细信息。

22.11 OS 中的新增功能和已更改功能

Azure Sphere OS 的 22.11 版本包含以下更改:

新的 Malloc 版本

Azure Sphere OS 继续支持现有的 malloc 模型,无需对应用程序进行任何更改,并且与以前生成的所有应用程序都向后兼容。 但是,新的应用程序清单选项允许开发人员选择加入 MallocVersion=2,这将引入 MUSL v1.2.1+ malloc 模型 mallocng。 此 malloc 版本更高效、更安全,可显著提高内存释放。 示例和教程已更新为默认使用此版本,建议将其添加到开发的任何新应用程序。 对于某些应用程序方案,使用此新的 malloc 版本时,预计峰值内存使用率会降低。

升级后的 Azure IoT C SDK

我们已将 Azure IoT C SDK 更新为最新版本。 此 SDK 包括 bug 修复和稳定性增强功能,并且与以前的版本兼容二进制。 所有现有应用都将受益于 Azure Sphere OS 管理的幕后改进。

DHCP 超时减少

DHCP 重试超时已从 10 秒减少到 1 秒。 当设备等待 DHCP 租约时,这种减少可提高电池消耗量,这预期会出现一些网络配置和流量方案。

22.11 SDK 中的新增功能和更改功能

Azure Sphere SDK 的 22.11 版本包含以下更改:

支持其他 CLI 命令输出格式

在不断努力向 CLI 命令引入 JSON 输出时,可以更轻松地编写脚本并自动执行操作, azsphere image addazsphere device show-os-version 已更新以支持 JSON 输出。 有关当前支持多个输出格式的命令列表,请参阅 支持的命令

Azure Sphere 示例、代码片段和库项目的 22.11 版本包含以下更改:

记录到 Azure 示例项目

“日志记录到 Azure 示例”项目演示了如何将IoT 中心与 Azure 数据资源管理器结合使用,以可缩放和可查询的方式捕获应用程序级日志。

PWM 音频库项目演示如何使用 MT3620 的硬件 PWM 外围设备生成用于蜂鸣器或其他音频生成设备的音调声音,这是一种常见的产品用例。

公共预览版:对欧洲数据边界的 Azure Sphere 支持

为了遵守Microsoft在欧盟中专门处理和存储欧盟数据的任务(请参阅 Microsoft云的欧盟数据边界),Azure Sphere 安全服务现在使欧盟客户能够根据需要在欧盟内处理和存储图像文件和设备故障转储文件。 新的 区域数据边界设置 是一个可选参数,可用于 azsphere imageazsphere device-group 命令。

有关详细信息,请参阅:

我们邀请基于欧盟的客户试用这项新功能,并通过电子邮件 AZSPPGSUP@microsoft.com提供任何反馈。

22.11 版本中的新增和修订的文档

文章 更改
Azure Sphere CLI 支持的输出格式 更新了支持多种输出格式的命令列表。

关于 22.10 质量版本

2022 年 10 月 25 日

22.10 版本仅包括 Azure Sphere OS 中的 bug 修复;它不包括更新的 SDK。 如果你的设备已连接到 Internet,则它们将从云接收更新后的操作系统。

修复了 22.10 版本中的 bug 和常见漏洞

此版本包括一般改进,可能会导致某些设备预期重启。

22.10 版本不包括用于缓解任何常见漏洞和暴露(CVE)的更新。

22.09 版本中的新增功能

2022 年 9 月 26 日

Azure Sphere 22.09 功能版本包含以下组件:

如果你的设备已连接到 Internet,则它们将从云接收更新后的操作系统。 系统将提示你下次使用时安装更新的 SDK,也可以立即安装它。 若要安装最新的 SDK,请参阅适用于 Windows 或 Linux 的安装快速入门:

此版本中的亮点包括减少冷启动时间以连接到 OS 的云,从而降低能耗;远程故障排除和优化的制造脚本的最佳做法指南。

22.09 OS 中的新增功能和更改功能

Azure Sphere OS 的 22.09 版本包含以下更改:

扩展的以太网 NIC 支持

Azure Sphere 现在支持 面向 Internet 的连接的 WIZnet W5500 10/100 以太网网络接口适配器 。 此硬件部件可以提高有线以太网应用程序的性能和市场可用性。

回滚攻击的安全保护

作为针对回滚攻击的深层防御的一部分,在 22.07 之前的早期版本的 Azure Sphere OS 恢复和回滚在已更新到 22.09 版本的设备上不可用。

设备更新到 22.09 版本后,它将无法再运行早于 22.07 的 Azure Sphere OS 版本。 这意味着在收到 22.09 更新后,无法将设备恢复到早期版本。 22.07 版本将成为可在设备上安装的最早版本。

22.09 SDK 中的新增功能和已更改功能

Azure Sphere SDK 的 22.09 版本包含以下更改:

支持其他 CLI 命令输出格式

其他 CLI 命令现在支持 JSON 输出。 通过此输出格式,可以更轻松地编写脚本并自动执行 CLI 输出。 有关当前支持多个输出格式的命令列表,请参阅 支持的命令

适用于 Visual Studio 的 22.09 中的新增功能和已更改功能,或适用于 Azure Sphere 的 Visual Studio Code 扩展

Azure Sphere Visual Studio 和 Visual Studio Code 扩展的 22.09 版本包含以下更改:

为支持实时的应用程序简化设置

22.09 Azure Sphere 版本提供了一个更简单的设置过程,它使用 vcpkg 项目启动开发环境来生成支持实时的应用程序。 有关详细信息,请参阅 教程:生成支持实时的应用程序

Azure Sphere 的 22.09 版本包括对示例、代码片段和库项目的以下更改:

在应用开发期间进行自助故障排除

get-support-data 日志分析 可在应用开发期间进行自助故障排除。 在本地连接到设备时,请使用 azsphere get-support-data 从 Azure Sphere 设备下载日志、错误和状态包。 使用日志分析库项目将二进制日志数据转换为人工可读格式,以查看 Azure Sphere OS 中的系统记录事件。

制造工具 v1.0.0 版本

我们发布了 更新的制造工具。 这些工具使客户能够以 Python PyPy 和 C# NuGet 包的形式将通常通过 CLI 访问的设备 REST API 命令集成到其制造应用程序中。 还提供了 YAML OpenAPI 定义,使客户能够通过 AutoRest 等工具以自己选择的语言生成自己的客户端库。

由于这些工具直接与附加 Azure Sphere 设备的 REST API 通信,因此与针对 azsphere CLI 的脚本相比,许多命令的加速速度高达 5 倍。

Azure Sphere Squirrel 库项目演示如何在 MT3620 芯片上运行更高级别的脚本语言。

22.09 版本中的新增和修订的文档

文章 更改
支持的以太网适配器和开发板 主题已更新为文档支持基于 WIZnet W5500 的以太网控制器。
教程:生成支持实时的应用程序 更新为记录 vcpkg 项目的选项,以便自动安装和配置 GNU Arm Embedded 工具链。
远程故障排除的最佳做法 包含问题列表和流程图的新主题,可帮助你对设备问题进行会审。
Azure Sphere CLI 支持的输出格式 更新了支持多种输出格式的命令列表。

22.09 版本中的已知问题

使用 W5500 连接到有线网络时,如果拔下网络电缆,接口仍可能被 CLI 和内部 API 报告为“启动”。 在将来的 OS 版本中会修复此问题。

修复了 22.09 版本中的 bug 和常见漏洞

22.09 版本包括以下更新,以缓解以下常见漏洞和暴露(CVE):

  • wolfSSL CVE-2022-34293

22.07 版本中的新增功能

2022 年 7 月 26 日

Azure Sphere 22.07 版本包含以下组件:

如果你的设备已连接到 Internet,则它们将从云接收更新后的操作系统。 若要安装最新的 SDK,请参阅适用于 Windows 或 Linux 的安装快速入门:

此版本中的亮点包括 OS 连接到云的时间减少,从而降低能耗、发布适用于生产就绪应用程序的最佳做法指南,以及发布优化的制造脚本。

22.07 OS 中的新增功能和已更改功能

Azure Sphere OS 的 22.07 版本包括:

  • OS 现在支持在持久性存储中缓存 DAA(客户)证书。 这会导致冷启动时的能耗降低,在冷启动或关闭电源后连接到云的时间减少。
  • 在 Applibs applications.hApplications_GetOSVersion()OS 具有新的 API 函数,该函数返回包含当前 OS 版本的可打印字符串。

22.07 SDK 中的新增功能和更改功能

Azure Sphere SDK 的 22.07 版本包括以下更改。

支持单色 CLI 输出

出于辅助功能原因,Azure Sphere CLI 现在支持 单色输出 。 使用此命令,可以在 Azure Sphere CLI 中管理消息的颜色设置。 如果启用no-color参数,则会删除彩色消息,并且原始颜色的消息带有DEBUG前缀、INFOWARNINGERROR

从 ADAL 迁移到 MSAL 的 Azure Sphere 经典 CLI 身份验证

Azure Sphere 经典 CLI 现在使用Microsoft身份验证库(MSAL),而不是即将停用的 Active Directory 身份验证库(ADAL)。 由于迁移到 MSAL,Azure Sphere 经典 CLI 的使用没有变化,不需要客户操作。

支持其他输出格式

以下 Azure Sphere CLI 命令现在支持 --output-o 参数来指定 CLI 输出的格式。 有关当前支持多个输出格式的命令列表,请参阅 支持的命令

22.07 Visual Studio 和 Visual Studio Code 扩展中的新增功能和更改的功能

Visual Studio 和 Visual Studio Code 现在都支持 CMakePresets 。 CMakePresets.json文件允许你指定常见的配置、生成和测试选项,然后使用其他开发环境与开发人员共享它们。

22.07 版本包括对示例、代码片段和库项的以下更改。

更新示例以使用 Azure IoT 的非阻止 API

Azure IoTExternalMcuLowPower 示例已更新,以避免使用 Azure IoT 的阻止 API,而是使用非阻止 API。 如果应用程序代码使用 IoTHubDeviceClient_LL_CreateWithAzureSphereDeviceAuthProvisioning 我们建议查看更新的示例,并考虑非阻止 API 模式是否会更好地满足需求。

制造示例

我们发布了更新 的制造示例。 以前,生产示例是私下分发的,但从此版本开始,示例将保留在 GitHub 上。 为此,我们发布了设备 REST API(使绕过 CLI 直接与设备的 REST API 通信),同时支持 C# 和 Python 支持、示例应用程序和测试。 将制造脚本移植到使用这些 REST API。 这种直接使用设备 REST API 可以提高制造速度。 有关详细信息,请参阅 连接的设备的制造指南。

FTDI 接口指南和硬件设计的更新

我们对 MT3620 硬件指南进行了一些细微的更改,这些指南与 FTDI 编程和调试接口如何处理低功率模式下的唤醒有关。 这提高了与 Avnet MT3620 V2 模块的兼容性。 MT3620 编程和调试接口中更新了一些非线性值。 低功率 MCU 到云示例已更新,以反映本指南,我们发布了适用于低功率 MCU 到云硬件 v2.0FTDI 接口板 v2.0 的新硬件示例,这些示例反映了此更新的指导。 FTDI 接口板 v2.0 更新还增加了服务/调试、恢复和 SWD 连接器的双重占用空间。

Applications_GetOSVersion API 的新代码片段

新的 “获取 Azure Sphere 设备 OS 版本 ”演示如何在高级应用程序中获取 Azure Sphere 设备 OS 版本。

22.07 版本中的新增和修订的文档

文章 更改
使用 CMake 配置生成 更新的主题包括有关使用 Visual Studio 和 Visual Studio Code 配置CMakePresets.json的信息。
生成支持实时的应用程序 更新的主题介绍了新的 CMake 配置和生成命令。
开发生产就绪应用程序的建议 提供最佳做法的新主题,用于验证高级或实时 Azure Sphere 应用程序是否已准备好进行试点或生产部署。
azsphere setting 提供有关命令的详细信息 azure setting 的新主题。
Azure Sphere CLI 支持的输出格式 更新了支持多种输出格式的命令列表。
Applications_GetOsVersion 函数 添加了新 API 函数的主题。
制造指南 已更新以反映 GitHub 上发布的新制造示例。

22.07 版本中的已知问题

如果禁用 Wi-Fi 网络接口,然后重新启动设备,则在运行 azsphere device network list-interfaces CLI 命令或使用 API 时 Networking_GetHardwareAddress ,会显示接口硬件地址(MAC 地址)的任意值。 若要解决此问题,请重新启用 Wi-Fi 接口并重新运行 CLI 命令或 API,以便接收正确的硬件地址。

修复了 22.07 版本中的 bug 和常见漏洞

  • 当本地附加的 Azure Sphere 设备可用时,该 azsphere tenant create 命令现在有效。 在 21.10 及更高版本中, 即使设备已连接,也会报告错误。 修复程序现在会在创建租户时自动标识附加设备。

  • 22.07 版本包括以下更新,以缓解以下常见漏洞和暴露(CVE):

    • cURL CVE-2022-22576
    • cURL CVE-2022-27775
    • cURL CVE-2022-27778
    • cURL CVE-2022-27779
    • cURL CVE-2022-27780
    • cURL CVE-2022-27782
    • cURL CVE-2022-30115
    • CVE-2022-35821

关于 22.04 质量版本

2022 年 4 月 11 日

22.04 版本包括升级到 Linux 内核(5.10.103)和 Azure Sphere OS 中的 bug 修复;它不包括更新的 SDK。 如果你的设备已连接到 Internet,则它们将从云接收更新后的操作系统。

修复了 22.04 版本中的 bug 和常见漏洞

22.04 版本包括用于缓解以下常见漏洞和暴露的更新(CVE):

  • wolfSSL CVE-2022-25638
  • wolfSSL CVE-2022-25640
  • C-Ares CVE-2021-3672
  • Linux CVE-2022-0847 (“脏管道”)

新的库项目 AzureFunctionApp_AzureSpherePublicAPI 演示如何在 Python Azure 函数应用中使用 Azure Sphere 公共 API。

22.04 版本中的新增和修订的文档

文章 更改
停止 Azure Sphere 设备通信服务 添加了与安装过程中挂起的安装程序相关的故障排除部分。
通过代理服务器连接 Azure Sphere 添加了有关使用 MQTT 连接到Azure IoT 中心的应用程序清单要求和信息。
为 Azure Sphere 设置Azure IoT 中心 已更新,使用户体验清晰正确。
使用设备预配服务为 Azure Sphere 设置Azure IoT 中心 已更新,使用户体验清晰正确。
为 Azure Sphere 设置 Azure IoT Edge 已更新以阐明文本并匹配 Azure UI。
将 Azure IoT Central 设置为与 Azure Sphere 配合使用 已更新,使用户体验清晰正确。
Azure Sphere OS 源
- 设置用于 OS 评估的设备
更新以阐明如何在零售评估源中部署 Azure Sphere OS。
制造指南 已更新,以阐明设备制造过程中涉及的内容。
制造过程准备 新主题提供有关在执行工厂车间任务和云配置任务之前应完成的任务的详细信息。
工厂车间任务 更新为清楚起见。 将准备任务移动到新的 制造准备 主题。
云配置任务 更新为清楚起见。 将准备任务移动到新的 制造准备 主题。
RF 工具 添加了一个新部分, 在 RF 工具用法完成后,描述使用 RF 工具完成后要完成的任务。

关于 22.02 Update 1 版本

2022 年 3 月 17 日

Azure Sphere 22.02 Update 1 版本包含以下组件:

  • 已更新的适用于 Windows 和 Linux 的 Azure Sphere SDK
  • 更新了适用于 Visual Studio Code 的 Azure Sphere 扩展

它不包括更新的 OS 或更新的 Visual Studio 扩展。

22.02 Update 1 SDK 中的更新

更新的 SDK 解决了与影响 API 集 12 的 sys/socket.h 标头 musl 64 位时间支持相关的技术社区 IoT 博客宣布的问题。 如果安装了 SDK 的原始 22.02 版本,请安装更新的版本。

提示

可以使用 Azure Sphere CLI 命令 azsphere show-version 来确定你拥有的 SDK 版本。 原始 22.02 SDK 具有完整版本号 22.02.3.34006;22.02 Update 1 SDK 具有完整版本号 22.02.3.41775。 请注意,Azure Sphere 经典 CLI 仅显示格式 为 22.02 的版本。

若要安装最新的 SDK,请参阅适用于 Windows 或 Linux 的安装快速入门:

22.02 Update 1 Visual Studio Code 扩展中的更新

在 Linux 上,Azure Sphere 的 Visual Studio Code 扩展中的租户资源管理器以前显示错误。 更新后的扩展正确显示结果。

22.02 Update 1 生成环境容器中的更新

Azure Sphere 生成环境容器已更新到 22.02 Update 1 SDK。

22.02 功能版本中的新增功能

Azure Sphere 22.02 功能版本包含以下组件:

  • 已更新的 Azure Sphere OS
  • 已更新的适用于 Windows 和 Linux 的 Azure Sphere SDK
  • 已更新的适用于 Visual Studio Code 的 Azure Sphere 扩展

如果你的设备已连接到 Internet,则它们将从云接收更新后的操作系统。 若要安装最新的 SDK,请参阅适用于 Windows 或 Linux 的安装快速入门:

还有更新 的示例、代码片段、库项目文档更新

重要

2022 年 3 月 8 日

22.02 SDK 存在与 API 集 12 中包含的 sys/socket.h 标头和 musl 64 位时间支持 相关的问题。 此问题将在即将更新的 SDK 中解决。 无需进行 OS 更改即可解决此问题。 但是,目前,如果使用在 sys/socket.h 中定义的 setsockopt() 函数,则不应使用 API 集 12 生成生产应用程序。 建议在 22.02 版本中使用 API 集 11。

这仅影响使用 22.02 版本生成的新编译的应用程序。 它 不会影响

  • 现有的已编译二进制文件或已部署的应用程序。
  • 使用最新 22.02 版以外的 SDK 构建的应用程序。
  • 使用 22.02 SDK 生成的应用程序,但 使用版本 12 以外的 API 集。

22.02 OS 中的新增功能和已更改功能

Azure Sphere OS 的 22.02 版本包括升级到 Linux 内核(5.10.70),并支持 DHCP 发布和续订。

DHCP 版本和续订

Azure Sphere OS 现在支持通过新的 API 发布续订 DHCP,以便高级应用可以控制其设备 IP 租约。

新的 DHCP 示例 演示如何使用这些新 API。

22.02 SDK 中的新增功能和更改功能

Azure Sphere SDK 的 22.02 版本包括对 Windows 11 的支持、对 64 位时间支持的更新、对 CLI 的默认日志记录行为的更改,以及对 CLI 的身份验证库更新。

支持 Windows 11

Azure Sphere 开发现在支持 Windows 11。 如果使用 Windows 11, 请安装 22.02(或更高版本)SDK

64 位时间支持

22.02 SDK 版本更新对高级应用的 64 位时间的支持。 这修复了在 20.10 版本中支持 64 位时间时引入的意外行为。

不对值大小 time_t 做出任何假设的应用程序代码不受影响。 但是,显式或隐式预期 time_t 为 32 位的应用程序代码需要重写才能改 time32_t 用。

提示

为了确保应用程序在重新生成后继续按预期工作,请检查应用程序中的堆栈和堆使用情况以及二进制大小。 它们可能会增长,就像现在的 8 个字节而不是 4 个字节一样 time_t

有关更多详细信息,请参阅基本 API 主题的 C 类型time_t部分。

配置 Azure Sphere CLI 日志记录

默认情况下,Azure Sphere CLI 不再将日志文件写入本地磁盘。 有关如何启用和配置日志记录的详细信息,请参阅 “管理日志文件 ”。

从 ADAL 迁移到 MSAL 的 Azure Sphere CLI 身份验证

Azure Sphere CLI 现在使用Microsoft身份验证库(MSAL),而不是即将停用的 Active Directory 身份验证库(ADAL)。 由于迁移到 MSAL,Azure Sphere CLI 的使用没有变化,不需要客户操作。

Azure Sphere 经典 CLI 仍使用 ADAL,但在 2022 年 6 月 30 日 ADAL 停用日期之前更新。 我们继续建议 迁移到新的 Azure Sphere CLI

适用于 Visual Studio 的 22.02 中的新增功能和已更改的功能,或适用于 Azure Sphere 的 Visual Studio Code 扩展

除了 Visual Studio 2019 的现有扩展外,现在还提供适用于 Visual Studio 2022 的 Azure Sphere 扩展。 Visual Studio 2019 的最低支持版本现在是 16.11。

适用于 Azure Sphere 的 Visual Studio 和 Visual Studio Code 扩展现在提供这些功能:

  • 在 Azure Sphere 资源管理器中配置 Wi-Fi。
  • 在 Azure Sphere 资源管理器中查看部署历史记录。
  • 调试时在 Visual Studio Code 中打开反汇编视图。

在 Azure Sphere 资源管理器中配置 Wi-Fi

现在可以 添加 Wi-Fi 网络、连接到它们、启用或禁用它们,并从 Azure Sphere 资源管理器的图形界面中忘记它们。

查看部署历史记录

现在 可以使用 Azure Sphere Explorer 查看给定设备组的所有部署 ,包括每个部署的日期和组件 ID。

调试时打开反汇编视图

反汇编视图提供本机代码的低级别视图,并增强通常的分步调试器。 Visual Studio Code 扩展中的此更改现在提供与 Visual Studio 中相同的反汇编体验。

22.02 版本中的新增和修订的文档

文章 更改
快速入门:配置网络并更新设备 OS 包括有关使用 Azure Sphere 资源管理器配置 Wi-Fi 的说明。
在 Azure Sphere 资源管理器中查看设备和租户信息 已更新以包括新功能。
使用 GitHub Codespaces 生成和调试 有关使用 Visual Studio Code 通过 GitHub Codespaces 开发应用程序的新主题。
高级应用程序中的内存使用 更新为包含有关在命令提示符下创建和运行用于内存监视的批处理脚本的说明。
调试高级应用程序 更新为包含打开反汇编视图的说明。
调试支持实时的应用程序 更新为包含打开反汇编视图的说明。
调试合作伙伴应用程序 更新为包含打开反汇编视图的说明。
使用 CMake 配置生成 更新为描述具有多个根的项目所需的新CMakeWorkspaceSettings.json文件。
设备标识和安全性 有关使用设备 ID 的安全注意事项和建议的最佳做法的新主题。
查看部署历史记录 已更新,包括有关在 Azure Sphere 资源管理器中查看部署历史记录的说明。
管理日志文件 有关使用 CLI 配置日志记录的新主题。

修复了 22.02 版本中的 bug

22.02 版本包含以下 bug 修复:

  • WifiConfig_GetNetworkDiagnostics尝试使用无效凭据的 WiFi 连接后返回了意外值。 修复程序返回正确的错误消息。
  • 如果指定了自定义 NTP 服务器,NTP 时间同步可能会很慢且不稳定。 此修补程序规范化自定义服务器的时间同步过程。
  • 发生驱动程序错误时,使用以太网的设备偶尔无法重新建立网络连接。 修复了以太网网络接口驱动程序在这些情况下更一致地重新建立网络连接。

22.02 版本中的已知问题

如果用户未进行身份验证,则会在 Azure Sphere CLI 中显示一条错误消息 No section: 'sphere' 。 若要解决此问题,请使用azsphere login命令向 Azure Sphere CLI 进行身份验证

关于 22.01 质量版本

Azure Sphere 未针对 22.01 发布更新的 OS 或 SDK。 有关 22.01 版本取消的详细信息,请参阅博客文章

22.01 的更新包括库中的两个新项目和文档更新。

注意

在以前的版本中,我们通知你,从 2022 年 4 月开始,将从 SDK 中删除 Azure Sphere 经典 CLI。 其退休时间线已经延长。 我们打算在将来的日期停用经典 CLI,尽管不在 2022 年底之前。 我们继续建议将 进程和脚本 迁移到 CLIv2。

OpenSourceProjectsSupportingExternalPeripherals 是一系列开源项目,这些项目将外部硬件与 Azure Sphere 和 MT3620 芯片配合使用。

ToggleClassicCLI 提供适用于 Windows 和 Linux 的脚本,可用于测试删除 Azure Sphere 经典 CLI(然后还原)。 Azure Sphere 经典 CLI 已被 CLIv2 取代,将来将从 Azure Sphere SDK 中删除。 这些脚本将帮助识别在经典 CLI 上可能具有的依赖项。

22.01 版本中的新增和修订的文档

文章 更改
排查 Azure Sphere 问题 添加了错误消息“无法停止 Azure Sphere 设备通信服务”的故障排除步骤。
使用服务标记限制对 Azure Sphere 安全服务的访问 有关如何使用 AzureSphere 服务标记允许或拒绝发到 Azure Sphere 安全服务流量的新主题。
设备功能和服务会话 添加了有关设备如何获取功能以及可以使用 fieldServicing 功能执行的操作的说明。
Azure Sphere CVE 添加了有关参与 CVE 计划和 Azure Sphere CVE 的客户影响的说明。
Guardian 模块 更新了链接,阐明了整个主题的信息,并重新组织了各节。

关于 21.11 质量版本

Azure Sphere 未针对 21.11 发布更新的 OS 或 SDK。

21.11 的更新包括以下文档更改和其他次要编辑:

文章 更改
设备功能和服务会话 说明和更正何时需要功能以及它们允许的操作。
为 Azure Sphere 设置 Azure IoT Edge 已更新为包含有关使用 IoT Edge 1.2 和 IoT Edge 1.1 的说明。
Azure Sphere CVE 添加了有关已发布的 Azure Sphere 常见漏洞和暴露的内容和计时的信息(CVE)。
工厂车间任务 添加了有关制造状态和设备功能的信息。
device 有关设备功能的澄清和更正。
Azure Sphere CLI 概述 有关设备功能的澄清和更正。

21.10 功能版本中的新增功能

Azure Sphere 21.10 功能版本包含以下组件:

  • 已更新的 Azure Sphere OS
  • 已更新的适用于 Windows 和 Linux 的 Azure Sphere SDK
  • 已更新的适用于 Visual Studio Code 的 Azure Sphere 扩展

如果你的设备已连接到 Internet,则它们将从云接收更新后的操作系统。 若要安装 Visual Studio 和 Visual Studio Code 的最新 SDK 和扩展,请参阅适用于 Windows 或 Linux 的安装快速入门:

重要

从 2022 年 4 月开始,SDK 版本中不会包含 Azure Sphere 经典 CLI。 经典 CLI 在 2021 年 2 月被标记为已停用。 如果仍依赖于经典 CLI,则必须 在 2022 年 4 月之前迁移进程和脚本 以避免中断。

21.10 版本中新增和更改的功能

21.10 版本包括:

Web 代理支持

Azure Sphere 设备现在可以通过代理服务器连接到网络。 可以使用 applibs 命令或 CLI 配置代理。 有关详细信息,请参阅 通过代理服务器连接 Azure Sphere。

有关可用 CLI 命令的详细信息,请参阅 网络代理

wolfSSL 已更新到版本 4.8.1

Azure Sphere OS 现在包括 wolfSSL 4.8.1。 此更新提供 wolfSSL 的最新安全修补程序和性能增强功能。 此外,通过 OS 公开新的 ABI,以防止某些 TLS 配置中的中间人攻击。 在应用程序中使用 wolfSSL 时(如 wolfSSL 示例所示),建议在适用时使用wolfSSL_CTX_set_verify来验证主机。

请参阅有关在 wolfSSL 网站上使用 wolfSSL_CTX_set_verify 的详细信息。

在Azure IoT 中心上自动验证租户 CA 证书

我们更新了有关如何使用 Azure Sphere 租户证书配置Azure IoT 中心和 DPS 的指导,以包含不需要所有权证明验证步骤的简化过程。 有关详细信息,请参阅为 Azure Sphere 设置Azure IoT 中心,并使用设备预配服务为 Azure Sphere 设置Azure IoT 中心。

支持租户重命名

使用 azsphere tenant update Azure Sphere CLI 命令可以重命名现有租户。 有关详细信息,请参阅 租户命令 参考主题。

指定 Wi-Fi 命令的输出格式

这些 azsphere device wifi 命令现在支持 --output-o 参数来指定 CLI 输出的格式。 有关详细信息,请参阅 支持的输出格式

在不需要 Wi-Fi 的情况下使用 MT3620

我们已为 Wi-Fi 暂时或永久不需要的方案提供了更新的软件和硬件指南,展示了如何在此类方案中降低能耗并简化硬件设计。 有关详细信息,请参阅 Wi-Fi 连接MT3620 硬件说明

以下 Azure Sphere 示例已针对 21.10 进行了更新:

  • AzureIoT 示例添加了一个附加自述文件,演示如何添加 Web 代理支持。
  • HTTPS/cURL 示例已更新,演示如何添加代理支持。

Azure Sphere 库中以下项目已针对 21.10 添加或更新:

  • Azure IoT 存储和转发 演示如何将遥测存储和转发功能添加到 AzureIoT 示例。
  • CO2_MonitorHealthySpaces 演示如何将 CO2 监视器与 IoT Central 集成。
  • EAP-TLS_Solution 演示如何将 Azure Sphere 设备连接到 EAP-TLS 网络。
  • SimpleFileSystem_RemoteDisk演示如何向 Azure Sphere 项目添加文件系统支持。

21.10 版本中的新增和修订的文档

文章 更改
通过代理服务器连接 Azure Sphere 介绍如何配置 Azure Sphere 设备以通过代理服务器连接到 Internet 的新主题。
为 Azure Sphere 设置Azure IoT 中心 更新的主题包括有关Azure IoT 中心租户 CA 证书的自动和手动验证的信息。
使用设备预配服务为 Azure Sphere 设置Azure IoT 中心 更新的主题包括有关设备预配服务中租户 CA 证书的自动和手动验证的信息。
更新现有租户 添加了有关重命名现有租户的信息。
MT3620 硬件说明 已更新为在特定方案中包括有关禁用 Wi-Fi 的信息。
device - 添加了命令信息 azsphere device network proxy
- 更新了 azsphere device wifi 命令的示例。
租户更新 添加了命令的信息 azure sphere tenant update
Applibs 网络参考 添加了代理客户端支持 API。

21.10 版本中的已知问题

使用 堆内存分配跟踪 的 21.10 SDK 生成的任何应用程序都将无法生成,并出现以下错误:

azsphere_target_add_image_package收到一个意外的请求来设置DEBUG_LIB:在所选的目标 API 集中不可用的 libmalloc。 请在CMakeLists.txt中选择版本 10 或更高版本。

若要修复此错误,需要对其中一个 SDK CMake 文件进行少量更改。 你需要是管理员才能更改此文件。

  • 在 Windows 上:C:\Program Files (x86)\Microsoft Azure Sphere SDK\CMakeFiles\AzureSphereToolchainBase.cmake
  • 在 Linux 上:/opt/azurespheresdk/CMakeFiles/AzureSphereToolchainBase.cmake

将 AzureSphereToolchainBase.cmake 的第 13 行修改为以下内容:

set(libmalloc_10_or_later "10" "11" )

下一版本的 Azure Sphere SDK 中将修复此问题。

  • 使用 azsphere tenant create 命令创建租户时,将报告错误。 这是因为未自动识别附加的 Azure Sphere 设备。 若要解决此问题,可以在运行命令时提供设备。 例如 azsphere tenant create --device <device-ID> --name <tenant-name>。 修补程序将在将来的版本中提供。

修复了 21.10 版本中的 bug 和常见漏洞

21.10 版本包括针对以下 CVE 进行缓解的更新:

  • cURL CVE-2021-22922
  • cURL CVE-2021-22923
  • cURL CVE-2021-22925
  • cURL CVE-2021-22926
  • cURL CVE-2021-22946
  • cURL CVE-2021-22947
  • CVE-2021-41374
  • CVE-2021-41375
  • CVE-2021-42300
  • CVE-2021-41376

关于 21.09 质量版本

21.09 版本包括对 Azure Sphere OS 的更新;它不包括更新的 SDK。 如果你的设备已连接到 Internet,则它们将从云接收更新后的操作系统。

Azure Sphere OS 的更新包括:

  • 已将 Linux 内核升级到 5.10.60。
  • 改进了崩溃处理以防止挂起。
  • RS-485 实时驱动程序 演示如何在 MT3620 上使用 M4F 核心实现可靠的 RS-485 通信,并与 A7 核心上的高级应用进行核心间通信。

21.09 版本中的新增和修订的文档

文章 更改
排查云和部署问题 添加了与声明设备相关的故障排除信息。

关于 21.08 质量版本

21.08 版本在 Azure Sphere OS 中包括以下增强功能和 bug 修复;它不包括更新的 SDK。

  • 安全更新
  • 改进了以太网支持的稳定性
  • 改进了 I2C 设备的稳定性

如果你的设备已连接到 Internet,则它们将从云接收更新后的操作系统。

还有 新的 Azure Sphere 库示例文档更新

修复了 21.08 版本中的 bug 和常见漏洞

21.08 版本包括用于缓解以下常见漏洞和暴露的更新(CVE):

  • CVE-2021-22924
  • CVE-2021-36956

以下新示例或更新的示例已添加到 Azure Sphere 库,这是未映射的脚本、实用工具和函数的集合:

21.08 版本中的新增和修订的文档

文章 更改
azsphere device 更新了停用和--interface-name停用的--cert-id参考主题。
Azure Sphere CLI 中的重要更改(停用功能) 介绍已停用或将从 Azure Sphere CLI 中删除的功能、命令或参数的新主题。

21.07 功能版本中的新增功能

Azure Sphere 21.07 功能版本包含以下组件:

  • 已更新的 Azure Sphere OS

  • 已更新的适用于 Windows 和 Linux 的 Azure Sphere SDK

  • 已更新的适用于 Visual Studio Code 的 Azure Sphere 扩展

还有更新 的示例、教程、库项文档更新

如果你的设备已连接到 Internet,则它们将从云接收更新后的操作系统。 系统将提示你下次使用时安装更新的 SDK,也可以立即安装它。 若要安装最新的 SDK,请参阅适用于 Windows 或 Linux 的安装快速入门:

重要

2021 年 9 月 30 日

21.07 SDK for Windows 的 Update 2 现已推出。 此更新修复了一个安装程序 bug,该 bug 可防止在升级到 Windows 11 后卸载 Azure Sphere SDK。

2021 年 7 月 28 日

21.07 SDK 的 Update 1 现已推出。 如果已安装 21.07 SDK 的以前版本,可以重新安装以获取更新的版本。 21.07 SDK 版本错误地从 Azure Sphere CLI 中删除了一些已停用的参数。 为了向后兼容,21.07 Update 1 SDK 会将这些已停用的参数恢复到 CLI。 有关详细信息,请参阅 Azure Sphere CLI 中的重要更改(停用功能)。

21.07 版本中新增和更改的功能

21.07 版本包括对处理时间同步的方式、在开发过程中跟踪共享库堆内存使用情况的能力以及使用 Azure Active Directory 进行身份验证的新方法进行了改进。 此版本还包括 Visual Studio 和 Visual Studio Code 扩展中的一些调试改进对 CLI 中参数--output扩展支持,以及从 CLI 和公共 API(PAPI)中的某些命令获取其他设备信息的功能

时间同步更改

21.07 版本中的时间同步过程已更改,以在主时间服务器发生故障或无法访问时提供更可靠的进程。 以前,如果时间同步重试阻止时间同步完成,则依赖于时间同步完成的服务可能无法启动。 此更改增加了一种回退机制,用于获取准确的时间,以便时间同步重试不会无限期地继续。

堆内存分配跟踪

堆内存分配跟踪功能为开发人员提供了一种方便的方法,用于在开发应用程序期间查看 Azure Sphere SDK 随附的库中的内存分配。 此功能添加了新的应用程序功能、HeapMemStats 和新的 Azure Sphere SDK 库 libmalloc。 此功能还包括对 Azure Sphere CLI 命令 azsphere device app show-memory-stats 和 Visual Studio 扩展的输出所做的更改。 通过这些更改,开发人员可以将 HeapMemStats 功能添加到其高级应用程序,将应用部署到启用开发的设备,并使用 Visual Studio 的性能探查器查看其应用调用的 SDK 库使用的内存。

使用 Azure Active Directory 的身份验证方法

Azure Sphere 公共 API(PAPI)支持 Azure Active Directory(AAD)中的多种用户身份验证和授权方法。

使用 Azure Active Directory,可以使用应用程序令牌通过服务主体或托管标识方法对用户应用、服务或自动化工具中的特定 Azure 资源进行身份验证和授予访问权限。

现在,Azure Active Directory 支持以下身份验证方法:

CLI 和 PAPI 命令中的其他更新状态详细信息

Azure Sphere 公共 API 已扩展,包括有关操作系统和更新状态的其他设备详细信息。 现在可以查看设备上安装的系统 OS 版本、最新的可用 OS 版本、上次更新设备的时间以及上次检查更新的设备的时间。 其他信息有助于管理设备的更新。

以下 Azure Sphere API 参考页更详细地介绍了 API 响应更改:

命令 说明
设备 - 获取 获取设备的详细信息。
设备 - 列表 获取声明给指定租户的所有设备。
设备 - 组内列表 获取分配给指定设备组的所有设备。
设备 - 产品中的列表 获取属于指定产品的所有设备。

此外,Azure Sphere CLI 已更新为在参数或支持的输出格式中包含这些附加设备详细信息azsphere device showazsphere device list以及azsphere device update命令--query 例如 azsphere device show --output json

适用于 Azure Sphere 的 Visual Studio 或 Visual Studio Code 扩展中的新增和更改功能

Visual Studio 和 Visual Studio Code 扩展包括调试目标的描述性名称。 Visual Studio 扩展还包括对 堆内存分配跟踪的支持。

调试目标的描述性名称

Visual Studio 扩展现在使用调试目标名称的项目名称。 Visual Studio Code 扩展显示项目名称,但简化了描述性文本。

支持其他输出格式

其他 Azure Sphere CLI 命令现在支持 --output-o 参数来指定 CLI 输出的格式。 有关详细信息,请参阅 支持的命令

新的和更新的命令和参数

对命令的更新:

命令 说明
azsphere device network enable 在附加设备上启用网络接口。
azsphere device network disable 禁用附加设备上的网络接口。

参数更新:

参数 说明
azsphere device network show-diagnostics 参数 --id 更改为 --network.
azsphere device network update-interface 参数 --interface-name 更改为 --interface.
azsphere device certificate delete 参数 --cert-id 更改为 --certificate.
azsphere device certificate show 参数 --cert-id 更改为 --certificate.
azsphere tenant create 参数 --force 更改为 --force-additional.
azsphere tenant create 参数 --disable-confirm-prompt 是新的;它禁用用户确认提示。

注意

21.07 SDK 版本错误地从 Azure Sphere CLI 中删除了此处提到的已停用参数。 为了向后兼容,21.07 Update 1 SDK 会将这些已停用的参数恢复到 CLI。 有关详细信息,请参阅 Azure Sphere CLI 中的重要更改(停用功能)。

21.07 版本中的新增和修订的文档

文章 更改
高级应用程序中的内存使用 更新的主题包括堆内存分配跟踪的讨论
在远程主机上将 Visual Studio Code 与安全外壳(SSH)配合使用 介绍如何通过安全外壳在远程主机上生成和调试 Azure Sphere 应用程序的新主题。
使用 Azure Active Directory 的身份验证方法 提供支持的身份验证方法概述的新主题。
使用 AAD 托管标识访问 Azure Sphere 公共 API 提供使用 AAD 托管标识访问 Azure Sphere 公共 API 的概述和步骤的新主题。
使用 AAD 应用程序服务主体访问 Azure Sphere 公共 API 提供使用 AAD 服务主体访问 Azure Sphere 公共 API 的概述和步骤的新主题。
使用 AAD 用户标识访问 Azure Sphere 公共 API 提供使用 AAD 用户标识访问 Azure Sphere 公共 API 的概述和步骤的新主题。
支持的命令 更新了支持输出格式的命令列表。
device 对命令和参数说明和示例的更新。
tenant 对参数说明和示例的更新。
role 更新主题,因为参数的值 --role 不区分大小写。

21.07 版本包括更新的内存使用情况教程、对 Azure IoT 示例的更新,以及 Azure Sphere 库中的三个新项目或更新的项目。

更新了内存使用情况教程

MemoryUsage 教程 已更新,演示 堆内存分配跟踪

更新了 Azure IoT 示例

我们对 Azure IoT 示例进行了一些细微的优化,包括按照此IoT 中心客户端最佳做法将轮询率IoTHubDeviceClient_LL_DoWork更改为每 100 毫秒而不是每 1 个。 建议在现有应用中采用此更改。

以下新示例或更新的示例已添加到 Azure Sphere 库,这是未映射的脚本、实用工具和函数的集合:

21.07 版本中的已知问题

新的更新状态字段不以默认 CLI 输出格式显示

azsphere device listazsphere device show仅当使用 JSON 或其他受支持的输出格式时,azsphere device updateCLI 命令才会公开四个新的更新相关字段;使用默认表格式时不会显示新字段。 可以使用 --query 该参数 指定用于输出到表的其他字段,但如果表过宽,设备 ID 可能会截断。 建议减少表中的列数,以便设备 ID 不会被截断。 例如 azsphere device show --query '{DeviceId:deviceId, LastAvailableOSVersion:lastAvailableOSVersion, LastInstalledOSVersion:lastInstalledOSVersion, LastOSUpdateUTC:lastOSUpdateUTC, LastUpdateRequestUTC:lastUpdateRequestUTC}'

修复了 21.07 版本中的 bug 和常见漏洞

21.07 版本包括针对以下常见漏洞和暴露(CVE)缓解的更新:

  • CVE-2021-26428

  • CVE-2021-26429

  • CVE-2021-26430

关于 21.06 质量版本

21.06 版本包括 Azure Sphere OS 中的 bug 修复;它不包括更新的 SDK。 如果你的设备已连接到 Internet,则它们将从云接收更新后的操作系统。

21.06 版本中的新增和修订的文档

文章 更改
管理租户 有关创建、管理或查找 Azure Sphere 租户的简化内容
排查云和部署问题 “OS 更新疑难解答”部分和“排查部署更新问题”部分中的新说明
使用 Azure Sphere CLI 登录 介绍使用 CLI 的默认登录名以及如何使用浏览器登录的新主题。

已将三个新示例添加到 Azure Sphere 库,这是未映射的脚本、实用工具和函数的集合: