Zephyr 4.3.0
我们很高兴地宣布 Zephyr 4.3.0 版本正式发布。
本次发布的主要增强包括:
- USB 设备 “Next” 栈现在是默认选项
新的 USB 设备栈 基于现代的 UDC(USB Device Controller)API 构建,取代了旧版协议栈,支持多个控制器同时工作、运行时配置,并具有整体更好的架构。旧版协议栈现已弃用,并将在 Zephyr 4.5 中移除。
- CPU 负载与动态频率调节子系统
新的实验性 CPU 频率 调节子系统支持由策略驱动的动态时钟调整,以平衡功耗与性能。与之配套的新 CPU 负载 子系统允许用户基于调度器统计信息获取 CPU 使用率指标,可用于驱动频率调节策略。
- 插桩子系统
新的 插桩子系统 利用编译器管理的函数插桩,简化了 Zephyr 应用的跟踪与性能分析,可在运行时记录调用图跟踪和统计性能剖析数据。
- OCPP 1.6 库
新的 OCPP(Open Charge Point Protocol) 库支持使用 Zephyr 开发电动汽车充电桩。该库通过 WebSocket 实现 OCPP 1.6 Charge Point 功能,支持核心配置文件操作,包括授权、事务管理以及与 Central System 服务器通信的电表值上报。
- Twister 显示测试装置
Twister 现在可以 验证目标板上的显示输出,方法是采集 USB 摄像头的帧,并与预先录制的视觉“指纹”进行匹配。
- 开发者体验改进
本次发布引入了多个新工具,帮助完成常见的开发与故障排查任务:
设备树诊断(dtdoctor),用于帮助诊断设备树构建错误。
traceconfig 构建目标,用于帮助了解 Kconfig 符号的来源及其最终取值。
交互式占用图表,用于可视化应用的 RAM/ROM 使用情况。
- 开发板支持扩展
将应用从 Zephyr v4.2.0 迁移到 Zephyr v4.3.0 时需要或建议采取的变更概览,见单独的 迁移指南。
以下小节按组件详细列出各项变更。
安全漏洞相关
本版本修复了以下 CVE:
CVE 2025-9557:在 2025-11-24 之前处于禁运期
CVE 2025-9558:在 2025-11-24 之前处于禁运期
CVE 2025-12035:在 2025-12-13 之前处于禁运期
CVE 2025-12899:在 2026-01-28 之前处于禁运期
更多详细信息请参阅:https://docs.zephyrproject.org/latest/security/vulnerabilities.html
API 变更
加密
hash_pkt中的输入缓冲区现在为常量
移除的 API 和选项
TinyCrypt 库已被移除,因为上游版本不再维护。现在推荐使用 PSA Crypto API 作为 Zephyr 的加密库。
旧版管道对象 API 已移除。请改用新的管道 API。
bt_le_set_auto_connCONFIG_BT_BUF_ACL_RX_COUNTok枚举值现已从设备树中base.yaml绑定的status属性中完全移除。通过 Kconfig 选择 STM32 LPTIM 时钟源的方式已被移除。现在必须改用设备树。受影响的 Kconfig 符号:
CONFIG_STM32_LPTIM_CLOCK_LSI/CONFIG_STM32_LPTIM_CLOCK_LSE
已弃用的 API 和选项
maxim,ds3231已弃用,请改用maxim,ds3231-rtc。为
SPI_CONFIG_DT、SPI_CONFIG_DT_INST、SPI_DT_SPEC_GET、SPI_DT_SPEC_INST_GET提供第三个参数的做法已弃用。为SPI_CS_CONTROL_INIT提供第二个参数的做法已弃用。请改用新的设备树属性spi-cs-setup-delay-ns和spi-cs-hold-delay-ns来指定延迟。bt_hci_bus已弃用,因为未使用。应改用BT_DT_HCI_BUS_GET。CONFIG_BT_AUTO_PHY_UPDATE已弃用,已被替换为按角色区分的选项(中心设备与外围设备),这些选项允许明确指定自动更新时首选哪个 PHY。CONFIG_POSIX_READER_WRITER_LOCKS已弃用。请改用CONFIG_POSIX_RW_LOCKS。CONFIG_JWT_SIGN_RSA_LEGACY已弃用。请改用基于 PSA Crypto API 的替代方案(即CONFIG_JWT_SIGN_RSA_PSA)。RISC-V 的
CONFIG_EXTRA_EXCEPTION_INFO已弃用。请改用CONFIG_EXCEPTION_DEBUG。
新增 API 和选项
CPU 频率调节
引入了实验性的动态 CPU 频率调节子系统
LVGL(Light and Versatile Graphics Library)
NVMEM
Newlib
Settings
CONFIG_SETTINGS_TFM_ITS
Shell
Sys
USB
视频
uvc_add_format()
以太网
大多数以太网 PHY 新增了设备树属性
default-speeds,用于在驱动初始化期间配置自动协商所通告的速度。
任务看门狗
内核
K_THREAD_HW_SHADOW_STACK_SIZEK_THREAD_HW_SHADOW_STACK_ATTACHk_thread_hw_shadow_stack_attach
加密
存储
工具链
__deprecated_version
插桩子系统
引入了插桩子系统
CONFIG_INSTRUMENTATION_MODE_CALLGRAPH_BUFFER_SIZE
日志:
新增了用于在日志后端中跳过时间戳和级别的选项。
新增了限速日志宏,以防止消息频繁生成时日志泛滥。
LOG_ERR_RATELIMIT- 限速错误日志宏(便捷版)LOG_WRN_RATELIMIT- 限速警告日志宏(便捷版)LOG_INF_RATELIMIT- 限速信息日志宏(便捷版)LOG_DBG_RATELIMIT- 限速调试日志宏(便捷版)LOG_HEXDUMP_ERR_RATELIMIT- 限速错误十六进制转储宏(便捷版)LOG_HEXDUMP_WRN_RATELIMIT- 限速警告十六进制转储宏(便捷版)LOG_HEXDUMP_INF_RATELIMIT- 限速信息十六进制转储宏(便捷版)LOG_HEXDUMP_DBG_RATELIMIT- 限速调试十六进制转储宏(便捷版)LOG_ERR_RATELIMIT_RATE- 限速错误日志宏(显式速率)LOG_WRN_RATELIMIT_RATE- 限速警告日志宏(显式速率)LOG_INF_RATELIMIT_RATE- 限速信息日志宏(显式速率)LOG_DBG_RATELIMIT_RATE- 限速调试日志宏(显式速率)LOG_HEXDUMP_ERR_RATELIMIT_RATE- 限速错误十六进制转储宏(显式速率)LOG_HEXDUMP_WRN_RATELIMIT_RATE- 限速警告十六进制转储宏(显式速率)LOG_HEXDUMP_INF_RATELIMIT_RATE- 限速信息十六进制转储宏(显式速率)LOG_HEXDUMP_DBG_RATELIMIT_RATE- 限速调试十六进制转储宏(显式速率)
显示
SDL
CONFIG_SDL_DISPLAY_DEFAULT_PIXEL_FORMAT_AL_88
架构
CONFIG_ARCH_HAS_HW_SHADOW_STACKx86 Intel CET 支持
ARM(Cortex-M)系统状态保存/恢复原语
z_arm_save_scb_context()/z_arm_restore_scb_context()z_arm_save_mpu_context()/z_arm_restore_mpu_context()现有的
z_arm_save_fp_context()和z_arm_save_fp_context()也已更新
Xtensa
状态机框架
电源管理
CONFIG_PM_S2RAM已重构为无提示选项。应用现在只需在设备树中启用任意“挂起到 RAM”电源状态即可。PM_S2RAM_CUSTOM_MARKING已重命名为HAS_PM_S2RAM_CUSTOM_MARKING,并重构为无提示选项。如果 SoC 的“挂起到 RAM”实现需要该选项,现在会由 SoC 选择它。
管理
网络
CoAP
连接管理器
DNS
HTTP
IPv6
LwM2M
MQTT-SN
杂项
OpenThread
Socket
zsock_listen()现在支持backlog参数,TCP 服务器套接字会将待处理的传入连接数限制为该值。IP_RECVTTLIPV6_PKTINFOIPV6_RECVHOPLIMITIPV6_HOPLIMIT
Wi-Fi
由于证书验证已禁用,将企业加密设置为不安全。
如果使用模式选项启用了 AP,则自动启用 AP 模式。
在 wpa_supplicant 中新增用于后台扫描(bgscan)的配置选项。
新增对多个虚拟接口(VIF)的支持。
蓝牙
音频
bt_audio_codec_cfg现在包含 target_latency 选项和 target_phy 选项bt_bap_stream现在包含一个iso字段,作为对 ISO 通道的引用
主机
bt_iso_unicast_info现在包含cig_id和cis_id字段bt_iso_broadcaster_info现在包含big_handle和bis_number字段bt_iso_sync_receiver_info现在包含big_handle和bis_number字段bt_le_ext_adv_info现在包含sid字段,表示 Advertising Set ID。
蜂窝网络
视频
触觉反馈
调制解调器
运算放大器
新增了通过
CONFIG_OPAMP选择的运算放大器设备驱动 API。它支持通过设备树进行初始配置,并通过厂商特定的 API 进行运行时配置。新增对 NXP OPAMP
nxp,opamp的支持。新增对 NXP OPAMP_FAST
nxp,opamp_fast的支持。
新增开发板
Adafruit Industries, LLC
Feather RP2040 Adalogger (
adafruit_feather_adalogger_rp2040)Feather RP2040 CAN bus (
adafruit_feather_canbus_rp2040)Adafruit Feather ESP32 (
adafruit_feather_esp32)Feather RP2040 RFM95 Lora (
adafruit_feather_rfm95_rp2040)Feather RP2040 (
adafruit_feather_rp2040)Itsybitsy RP2040 (
adafruit_itsybitsy_rp2040)Metro RP2040 (
adafruit_metro_rp2040)Adafruit Metro RP2350 (
adafruit_metro_rp2350)Trinkey QT2040 (
adafruit_trinkey_qt2040)
Advanced Micro Devices (AMD), Inc.
Versal Net APU Development Board (
versalnet_apu)
Ai-Thinker Co., Ltd.
Ai-Thinker M62-12F development board (
ai_m62_12f_kit)Ai-Thinker ESP32-CAM (
esp32_cam)
Ambiq Micro, Inc.
Apollo2 EVB (
apollo2_evb)
Analog Devices, Inc.
MAX32658EVKIT (
max32658evkit)
Arduino
Arduino UNO Q (
arduino_uno_q)
Core Devices LLC
Pebble 2 Duo (
p2d)Pebble Time 2 (
pt2)
DFRobot
DFRobot Beetle RP2040 (
beetle_rp2040)
Doctors of Intelligence & Technology
XT-ZB1 Zigbee 3.0 and BLE 5.0 Coexistence Module Development Kit (
dt_xt_zb1_devkit)
Egis Technology Inc
ET171 Development Board (
egis_et171)
Espressif Systems
ESP32-H2-DevKitM (
esp32h2_devkitm)
FANKE Technology Co., Ltd.
FK723M1-ZGT6 (
fk723m1_zgt6)
Firefly
ROC-RK3588-PC (Quad-core Cortex-A55) (
roc_rk3588_pc)
FoBE Studio
Quill nRF52840 Mesh (
quill_nrf52840_mesh)
Guangdong Embedsky Technology Co., Ltd.
TQ H503A (
tq_h503a)
Infineon Technologies
PSOC™ Control C3M5 Evaluation Kit (
kit_psc3m5_evk)PSOC™ Edge E84 AI Evaluation Kit (
kit_pse84_ai)PSOC™ Edge E84 Evaluation Kit (
kit_pse84_eval)
Intel Corporation
Panther Lake H CRB (
intel_ptl_h_crb)
Microchip Technology Inc.
PIC32CM JH01 Curiosity Nano+ Touch Evaluation Kit (
pic32cm_jh01_cnano)PIC32CM JH01 Curiosity Pro (
pic32cm_jh01_cpro)PIC32CX SG61 Curiosity Ultra (
pic32cx_sg61_cult)PIC32CZ CA80 Curiosity Ultra (
pic32cz_ca80_cult)SAM E54 Xplained Pro (
sam_e54_xpro)SAMA7D65 Curiosity Kit (
sama7d65_curiosity)
Nuvoton Technology Corporation
NUMAKER M3334KI (
numaker_m3334ki)NUMAKER M5531 (
numaker_m5531)
NXP Semiconductors
FRDM-IMX91 (
frdm_imx91)FRDM-IMX93 (
frdm_imx93)FRDM-K32L2B3 (
frdm_k32l2b3)FRDM-MCXA344 (
frdm_mcxa344)FRDM-MCXA266 (
frdm_mcxa266)FRDM-MCXA346 (
frdm_mcxa346)FRDM-MCXA366 (
frdm_mcxa366)FRDM-MCXE247 (
frdm_mcxe247)FRDM-MCXE31B (
frdm_mcxe31b)FRDM-MCXW23 (
frdm_mcxw23)i.MX91 QSB (
imx91_qsb)i.MX95 15x15 EVK (
imx95_evk_15x15)MCX-N9XX-EVK (
mcx_n9xx_evk)MCX-N5XX-EVK (
mcx_n5xx_evk)MCXW23-EVK (
mcxw23_evk)
Panasonic Corporation
PAN B611 Evaluation Board (
panb611evb)
PCB Cupid
Glyph-C6 (
glyph_c6)
RAKwireless Technology Limited
RAK3112 (
rak3112)
Raspberry Pi Foundation
Raspberry Pi Debug Probe (
rpi_debug_probe)
Renesas Electronics Corporation
RA4C1 Evaluation Kit (
ek_ra4c1)RA8D2 Evaluation Kit (
ek_ra8d2)RA8M2 Evaluation Kit (
ek_ra8m2)RX261 Evaluation Kit (
ek_rx261)RX261 Fast Prototyping Board (
fpb_rx261)RX26T Motor Control Board (
mcb_rx26t)RA8T2 Motor Control Kit (
mck_ra8t2)Capacitive Touch Evaluation System for RA2L1 (
rssk_ra2l1)
Seeed Technology Co., Ltd
Wio-WM1110 Dev Kit (
wio_wm1110_dev_kit)XIAO NRF54L15 (
xiao_nrf54l15)
Shanghai Ruiside Electronic Technology Co., Ltd.
ART-Pi (
art_pi)
Shenzhen Holyiot Technology Co., Ltd.
YJ-17095 (
holyiot_yj17095)
SiFli Technologies(Nanjing) Co., Ltd
SF32LB52-DevKit-LCD (
sf32lb52_devkit_lcd)
Silicon Laboratories
BGM220 Explorer Kit (BGM220-EK4314A) (
bgm220_ek4314a)EFM32PG23 Pro Kit (PG23-PK2504A) (
pg23_pk2504a)EFM32PG28 Pro Kit (PG28-PK2506A) (
pg28_pk2506a)SiWx917 Wi-Fi 6 and Bluetooth LE SoC Dev Kit (BRD2605A) (
siwx917_dk2605a)EFR32BG22 Explorer Kit (BG22-EK4108A) (
bg22_ek4108a)EFR32xG22E Explorer Kit (xG22-EK2710A) (
xg22_ek2710a)xGM260P Explorer Kit (MGM260P-EK2713A) (
mgm260p_ek2713a)EFM32PG26 Explorer Kit (PG26-EK2711A) (
pg26_ek2711a)EFR32xG26 Explorer Kit (xG26-EK2709A) (
xg26_ek2709a)EFR32BG29 Bluetooth LE 4 dBm DCDC Boost WLCSP (BG29-RB4420A) (
bg29_rb4420a)EFR32xG22 2.4 GHz +6 dBm Radio Board (
slwrb4182a)BGM220P Bluetooth Module 2.4 GHz +8 dBm Radio Board (
slwrb4311a)EFR32xG24 2.4 GHz 10 dBm (xG24-RB4186C) (
xg24_rb4186c)EFR32xG24 2.4 GHz 20 dBm (xG24-RB4187C) (
xg24_rb4187c)xGM240P 10 dBm Module Radio Board (xGM240-RB4316A) (
xgm240_rb4316a)xGM240P 20 dBm Module Radio Board (xGM240-RB4317A) (
xgm240_rb4317a)MGM260P 2.4 GHz +10 dBm Radio Board (
mgm260p_rb4350a)EFR32xG26 2.4 GHz +10 dBm BGA136 Radio Board (
xg26_rb4118a)EFR32xG26 2.4 GHz +10 dBm Radio Board (
xg26_rb4120a)EFR32BG27 2.4 GHz 4 dBm DCDC Buck CSP (BG27-RB4110B) (
bg27_rb4110b)EFR32BG27 2.4 GHz 4 dBm DCDC Boost CSP (BG27-RB4111B) (
bg27_rb4111b)EFR32xG27 2.4 GHz 8 dBm (xG27-RB4194A) (
xg27_rb4194a)EFR32xG28 868-915 MHz 20 dBm (xG28-RB4401C) (
xg28_rb4401c)
SparkFun Electronics
Sparkfun SAMD21 Dev Breakout (
sparkfun_samd21_breakout)
SteelSeries
Apex Pro Mini (
apex_pro_mini)
STMicroelectronics
Nucleo C092RC (
nucleo_c092rc)STM32MP257F-DK Discovery Kit (
stm32mp257f_dk)STM32WBA65I Discovery kit (
stm32wba65i_dk1)
Texas Instruments
MSPM0G3519 Launchpad (
lp_mspm0g3519)MSPM0L2228 Launchpad (
lp_mspm0l2228)
Toradex AG
Verdin AM62 (
verdin_am62)
Waveshare Electronics
RP2040-GEEK (
rp2040_geek)RP2040-Keyboard-3 (
rp2040_keyboard_3)RP2040-Matrix (
rp2040_matrix)
WeAct Studio
Black Pill STM32H523 (
blackpill_h523ce)Black Pill STM32U585 (
blackpill_u585ci)ESP32-C3-Mini (
weact_esp32c3_mini)ESP32-C6-Mini (
weact_esp32c6_mini)ESP32-S3-Mini (
weact_esp32s3_mini)STM32G030 Core Board 1.0 (
weact_stm32g030_core)STM32WB55 Core Board V1.0 (
weact_stm32wb55_core)ESP32-S3-B (
weact_esp32s3_b)
新增扩展板
新增驱动
ADC(模数转换器)
ARM 架构
音频
辅助显示
缓存
充电器
时钟控制
st,stm32fx-pllsai-clockst,stm32l4-pllsai-clock
比较器
计数器
CPU
CRC
加密加速器
DAC(数模转换器)
调试
显示
DMA(直接内存访问)
以太网
Flash 控制器
文件系统
电量计
GPIO(通用输入/输出)
bflb,bl61x-gpio
硬件信息
nxp,cmc-reset-cause
I2C(集成电路间总线)
infineon,cat1-i2c-pdl
I3C(改进型集成电路间总线)
IEEE 802.15.4
输入
中断控制器
LED(发光二极管)
LED(发光二极管) 灯带
邮箱
MDIO(管理数据输入/输出)
内存控制器
MFD(多功能设备)
MIPI DSI(移动产业处理器接口显示串行接口)
其他
调制解调器
多比特 SPI
nordic,nrf-qspi-v2
MTD(存储器技术设备)
andestech,qspi-nor-xip
OPAMP(运算放大器)
引脚控制
电源管理
电源域
PWM(脉宽调制)
四线 SPI
稳压器
保留内存
复位控制器
保留内存
RNG(随机数发生器)
RTC(实时时钟)
Renesas RX
SDHC(安全数字主机控制器)
st,stm32-sdio
传感器
串行控制器
infineon,cat1-uart-pdl
SPI(串行外设接口)
infineon,cat1-spi-pdl
系统控制器
转速计
定时器
USB
espressif,esp32-usb-otg
视频
看门狗
Wi-Fi
XSPI(扩展串行外设接口)
新增示例
基于 I2C+GPIO 的 PMCI MCTP(
mctp_i2c_bus_owner)
库与子系统
固件
SCMI
新增了
ARM_SCMI_CHAN_SEM_TIMEOUT_USEC,以便配置通道信号量超时。直接使用
scmi_status_to_errno()检查返回的命令状态码。为
scmi_send_message()新增了一个参数,允许用户指定是否使用轮询。[NXP] 与 NXP 专用 CPU 协议相关的多项新增。
日志:
新增了混合限流日志宏,可在消息频繁生成时防止日志泛滥。系统既提供便捷宏(使用来自
CONFIG_LOG_RATELIMIT_INTERVAL_MS的默认速率),也提供显式速率宏(带自定义速率参数)。这遵循了 Linux 的printk_ratelimited模式,同时提供了更大的灵活性。限流是按宏调用点进行的,这意味着对限流宏的每次不同调用都有各自独立的速率限制。通过CONFIG_LOG_RATELIMIT可全局启用/禁用限流日志。禁用限流时,可以通过CONFIG_LOG_RATELIMIT_FALLBACK控制行为,以记录所有消息或将其完全丢弃。有关更多详细信息,请参见 速率限制日志记录。
Mbed TLS
新增了 Kconfig 选项
CONFIG_PSA_CRYPTO,以简化 PSA Crypto API 提供程序的启用。如果启用了CONFIG_BUILD_WITH_TFM,则为 TF-M;否则为 Mbed TLS。前者会设置CONFIG_PSA_CRYPTO_PROVIDER_TFM,后者则设置CONFIG_PSA_CRYPTO_PROVIDER_MBEDTLS。还新增了CONFIG_PSA_CRYPTO_PROVIDER_CUSTOM,以允许最终用户提供自定义解决方案。已从 3.6.4 版本更新到 3.6.5 版本。本次发布的版本说明见以下链接:
安全存储
实验性状态已被移除(GitHub #96483)。
其他值得注意的变更
Nordic Semiconductor nRF54L09 PDK(
nrf54l09pdk)仅面向仿真器,现已从代码树中移除。一旦有正式的开发板定义可用,它将被替换。移除了对 Nordic Semiconductor nRF54L20 PDK(
nrf54l20pdk)的支持,因为它已被 nRF54LM20 DK 取代(nrf54lm20dk)。