Zephyr 4.4.0 (Working Draft)
We are pleased to announce the release of Zephyr version 4.4.0.
Major enhancements with this release include:
An overview of the changes required or recommended when migrating your application from Zephyr v4.3.0 to Zephyr v4.4.0 can be found in the separate migration guide.
The following sections provide detailed lists of changes by component.
API Changes
Architectures
Xtensa
Removed as these are architectural features:
CONFIG_XTENSA_MMU_DOUBLE_MAPCONFIG_XTENSA_RPO_CACHECONFIG_XTENSA_CACHED_REGIONCONFIG_XTENSA_UNCACHED_REGION
Bluetooth
Controller
Removed APIs and options
Bluetooth
CONFIG_BT_TBS_SUPPORTED_FEATURESThe deprecated
bt_hci_cmd_create()functon was removed. It has been replaced bybt_hci_cmd_alloc().
Deprecated APIs and options
Bluetooth
Mesh
The function
bt_mesh_input_number()was deprecated. Applications should usebt_mesh_input_numeric()instead.The callback
output_numberinbt_mesh_provstructure was deprecated. Applications should useoutput_numericcallback instead.The
CONFIG_BT_MESH_MODEL_VND_MSG_CID_FORCEoption has been deprecated.
Host
bt_conn_le_info.intervalhas been deprecated. Usebt_conn_le_info.interval_usinstead. Note that the units have changed:intervalwas in units of 1.25 milliseconds, whileinterval_usis in microseconds.The
CONFIG_DEVICE_NAME_GATT_WRITABLE_NONEoption has been deprecated. Applications should useCONFIG_BT_DEVICE_NAME_GATT_WRITABLE_NONEoption instead.The
CONFIG_DEVICE_NAME_GATT_WRITABLE_ENCRYPToption has been deprecated. Applications should useCONFIG_BT_DEVICE_NAME_GATT_WRITABLE_ENCRYPToption instead.The
CONFIG_DEVICE_NAME_GATT_WRITABLE_AUTHENoption has been deprecated. Applications should useCONFIG_BT_DEVICE_NAME_GATT_WRITABLE_AUTHENoption instead.The
CONFIG_DEVICE_APPEARANCE_GATT_WRITABLE_AUTHENoption has been deprecated. Applications should useCONFIG_BT_DEVICE_APPEARANCE_GATT_WRITABLE_AUTHENoption instead.
HCI
BT_HCI_LE_SUPERVISON_TIMEOUT_MINandBT_HCI_LE_SUPERVISON_TIMEOUT_MAXhave been deprecated. UseBT_HCI_LE_SUPERVISION_TIMEOUT_MINandBT_HCI_LE_SUPERVISION_TIMEOUT_MAXinstead.
Entropy
CONFIG_ENTROPY_PSA_CRYPTO_RNGhas been deprecated.
I2S
The following macros have been deprecated and are replaced with equivalent macros whose names are aligned with the latest revision of the I2S specification.
POSIX
CONFIG_XOPEN_STREAMSwas deprecated. Instead, useCONFIG_XSI_STREAMS
Random
CONFIG_CTR_DRBG_CSPRNG_GENERATORhas been deprecrated. Instead, useCONFIG_PSA_CSPRNG_GENERATOR.
Sensors
NXP
Deprecated the
mcux_lpcmpdriver (drivers/sensor/nxp/mcux_lpcmp/mcux_lpcmp.c). It is currently scheduled to be removed in Zephyr 4.6, along with themcux_lpcmpsample. (GitHub #100998).Added new temperature sensor driver (
nxp,tempsense) (GitHub #101525).
Timer
The legacy Cortex-M SysTick low-power companion compatibility macros
z_cms_lptim_hook_on_lpm_entryandz_cms_lptim_hook_on_lpm_exit, along with the compatibility header drivers/timer/cortex_m_systick.h, have been deprecated. Out-of-tree SoC/platform code should migrate toz_sys_clock_lpm_enter(),z_sys_clock_lpm_exit(), and include/zephyr/drivers/timer/system_timer_lpm.h. The legacy Kconfig options:CONFIG_CORTEX_M_SYSTICK_LPM_TIMER_NONE,CONFIG_CORTEX_M_SYSTICK_LPM_TIMER_COUNTER,CONFIG_CORTEX_M_SYSTICK_LPM_TIMER_HOOKS, andCONFIG_CORTEX_M_SYSTICK_RESET_BY_LPMare deprecated in favor ofCONFIG_SYSTEM_TIMER_LPM_COMPANION_NONE,CONFIG_SYSTEM_TIMER_LPM_COMPANION_COUNTER,CONFIG_SYSTEM_TIMER_LPM_COMPANION_HOOKS, andCONFIG_SYSTEM_TIMER_RESET_BY_LPM. The chosen property/chosen/zephyr,cortex-m-idle-timeris deprecated in favor of/chosen/zephyr,system-timer-companion. The compatibility shim is currently scheduled to be removed in Zephyr 4.6.0.
New APIs and options
ADC
Architectures
Audio
Bluetooth
Audio
Host
bt_gatt_cb_unregister()Added an API to unregister GATT callback handlers.
ISO
bt_iso_chan_ops.disconnectedwill now always be called beforebt_conn_cb.disconnectedfor unicast (CIS) channels, to provide a more deterministic order of callback events. (GitHub #104695).
Mesh
bt_mesh_input_numeric()to provide provisioning numeric input OOB value.output_numericcallback inbt_mesh_provstructure to output numeric values during provisioning.CONFIG_BT_MESH_CDB_KEY_SYNCto enable key synchronization between the Configuration Database (CDB) and the local Subnet and AppKey storages when keys are added, deleted, or updated during key refresh procedure. The option is enabled by default.
Services
Introduced Alert Notification Service (ANS)
CONFIG_BT_ANS
Build system
Added slot1-partition snippet.
Sysbuild
Added
SB_CONFIG_MERGED_HEX_FILESwhich allows generating merged hex files.Added experimental
ExternalZephyrVariantProject_Add()sysbuild CMake function which allows for adding variant images to projects which are based on existing images in a build.Added
SB_CONFIG_MCUBOOT_DIRECT_XIP_GENERATE_VARIANTwhich allows for generating slot 1 images automatically in sysbuild projects when using MCUboot in direct-xip mode.
CPUFreq
DAC
Added new DAC driver (
nxp,hpdac) (GitHub #104642).Added new DAC driver APIs (GitHub #104630)
DMA
Added new DMA driver (
nxp,4ch-dma) (GitHub #97841).
Display
SSD1325_DEFAULT_CONTRASTSSD1325_CONV_BUFFER_LINES
Ethernet
Driver MAC address configuration with support for NVMEM cell.
Added
ethernet_stats_typeand optionalget_stats_typecallback inethernet_apito allow filtering of ethernet statistics by type (common, vendor, or all). Drivers that support vendor-specific statistics can implementget_stats_typeto skip expensive FW queries when only common stats are requested. The existingget_statsAPI remains unchanged for backward compatibility.
Flash
jedec,mspi-nornow allows MSPI configuration of read, write and control commands separately via devicetree.
Haptics
Added error callback to API
haptics_error_typeto enumerate common fault conditions in haptics devices.haptics_error_callback_tto provide function prototype for error callbacks.haptics_register_error_callback()to register an error callback with a driver.
Hwspinlock
Added new hwspinlock driver (
nxp,sema42) (GitHub #101499).
IPM
IPM callbacks for the mailbox backend now correctly handle signal-only mailbox mailbox usage. Applications should be prepared to receive a NULL payload pointer in IPM callbacks when no data buffer is provided by the mailbox.
Management
Modem
NVMEM
Flash device support
Networking
Wi-Fi
Add support for Wi-Fi Direct (P2P) mode.
OTP
New OTP driver API providing means to provision (
otp_program()) and read (otp_read()) OTP memory devices (GitHub #101292). OTP devices can also be accessed through the Non-Volatile Memory (NVMEM) subsystem. Available options are:
PWM
Extended API with PWM events
pwm_event_callbackto hold a pwm event callbackpwm_init_event_callback()to help initialize apwm_event_callbackobjectpwm_add_event_callback()to add a callbackpwm_remove_event_callback()to remove a callbackmanage_event_callbackinpwm_driver_apito manage pwm events
Power
The new
voltage-scaleproperty ofst,stm32u5-pwrcan be used to select the voltage scale manually on STM32U5 series via Devicetree. This notably enables usage of the USB controller at lower system clock frequencies.
Random
Settings
Shell
Stepper
Sys
Timeutil
Utilities
COBS streaming support
Disjoint-set support *
sys_set_node*sys_set_makeset()*sys_set_find()*sys_set_union()
Video
VIDEO_FMT_IS_PLANAR
New Boards
Adafruit Industries, LLC
RP2040 Prop-Maker Feather (
adafruit_feather_propmaker_rp2040)RP2040 Scorpio Feather (
adafruit_feather_scorpio_rp2040)
Advanced Micro Devices (AMD), Inc.
AMD Versal Gen 2 APU Development Board (
versal2_apu)AMD Versal APU Development Board (
versal_apu)
Ai-Thinker Co., Ltd.
Ai-Thinker M61-32S development board (
ai_m61_32s_kit)
Alientek
DNESP32S3B (
dnesp32s3b)
Alif Semiconductor
Alif Ensemble E1C Development Kit (
ensemble_e1c_dk)Alif Ensemble E8 Development Kit (
ensemble_e8_dk)
Analog Devices, Inc.
EVAL-ADIN2111D1Z (
adi_eval_adin2111d1z)
BlackBerry Limited
QNX Hypervisor Virtual Machine (
qnxhv_vm)
Chengdu Heltec Automation Technology Co., Ltd.
WiFi LoRa 32 (V3) (
heltec_wifi_lora32_v3)Wireless Tracker (V1.1) (
heltec_wireless_tracker)
Cirrus Logic, Inc.
CRD40L50-POC-Q (
crd40l50)
Cytron Technologies
Cytron Maker Nano RP2040 (
maker_nano_rp2040)Cytron Maker Pi RP2040 (
maker_pi_rp2040)Cytron Maker Uno RP2040 (
maker_uno_rp2040)Motion 2350 Pro (
motion_2350_pro)
DFRobot
DFRobot Beetle ESP32-C3 (
beetle_esp32c3)Beetle RP2350 (
beetle_rp2350)
Elan Microelectronic Corp.
ELAN EM32F967 (
32f967_dv)
Ezurio
Lyra 24 P10 DVK (
lyra_24_dvk_p10)Lyra 24 P20 DVK (
lyra_24_dvk_p20)Lyra 24 P20RF DVK (
lyra_24_dvk_p20rf)Lyra 24 S10 DVK (
lyra_24_dvk_s10)Lyra P DVK (
lyra_dvk_p)Lyra S DVK (
lyra_dvk_s)RM1261 DVK (
rm126x_dvk_rm1261)RM1262 DVK (
rm126x_dvk_rm1262)
FocalTech Systems Co.,Ltd
FocalTech FT9001 Evaluation Board (
ft9001_eval)
Framework Computer, Inc.
Framework LED Matrix (
framework_ledmatrix)Framework Laptop 16 Keyboard (
framework_laptop16_keyboard)
Infineon Technologies
PSOC™ 4100S Max pioneer kit (
cy8ckit_041s_max)CY8CPROTO-041TP (
cy8cproto_041tp)T2G Body High Evaluation Kit (
kit_t2g_b_h_evk)T2G Body High Lite Evaluation Kit (
kit_t2g_b_h_lite)
Intel Corporation
Wildcat Lake CRB (
intel_wcl_crb)
Longan Labs (Shenzhen Longan Technology Co., Ltd.)
CANBed RP2040 (
canbed_rp2040)
M5Stack
NanoC6 (
m5stack_nanoc6)
MediaTek Inc.
MT8365 ADSP (
mt8365)
Microchip Technology Inc.
PIC32CM PL10 Curiosity Nano (
pic32cm_pl10_cnano)PIC32CX SG41 Curiosity Ultra (
pic32cx_sg41_cult)pic64gx_curiosity_kit (
pic64gx_curiosity_kit)SAM E54 Curiosity Ultra (
sam_e54_cult)
Nordic Semiconductor
nRF54L15 TAG (
nrf54l15tag)nRF7120 DK (
nrf7120dk)
Nuvoton Technology Corporation
NUMAKER NUGESTUREAI M55M1 (
numaker_gai_m55m1)
NXP Semiconductors
FRDM-iMXRT1186 (
frdm_imxrt1186)FRDM-KE16Z (
frdm_ke16z)FRDM-MCXA577 (
frdm_mcxa577)FRDM-MCXW70 (
frdm_mcxw70)S32K5XXCVB (
s32k5xxcvb)
Others
DOIT ESP32-DevKit-V1 (
doit_esp32_devkit_v1)ESP32-C3 Development Board (LCKFB) (
esp32c3_lckfb)
PCB Cupid
Glyph-H2 (
glyph_h2)
PHYTEC
phyBOARD-Atlas i.MX RT1170 (
phyboard_atlas)
Pimoroni Ltd.
Pimoroni Tiny 2040 (
tiny2040)
Qualcomm Technologies, Inc
QCC744M Evaluation Kit (
qcc744m_evk)
RAKwireless Technology Limited
RAK11160 (
rak11160)
Realtek Semiconductor Corp.
RTL8721F Evaluation Board (
rtl8721f_evb)RTL872xD Evaluation Board (
rtl872xd_evb)RTL8721Dx Evaluation Board (
rtl872xda_evb)RTL8752H Evaluation Board (
rtl8752h_evb)RTL87x2G Model A Evaluation Board (
rtl87x2g_evb_a)RTS5817 MAA Evaluation Board (
rts5817_maa_evb)
Renesas Electronics Corporation
RA8D1 AI Kit Development Platform (
aik_ra8d1)CPKCOR RA8D1B board (
cpkcor_ra8d1b)RA0E1 Fast Prototype Board (
fpb_ra0e1)Fast Prototyping Board for RA8E1 MCU Group (
fpb_ra8e1)Fast Prototyping Board for RX140 (
fpb_rx140)RA4T1 Motor Control Kit (
mck_ra4t1)Renesas Starter Kit for RX140 (
rsk_rx140)RZ/G3E Evaluation Board Kit (
rzg3e_smarc)RZ/N2H Evaluation Board Kit (
rzn2h_evb)RZ/T2H Evaluation Board Kit (
rzt2h_evb)
Retronix Technology Inc.
Sparrow Hawk R-Car V4H SBC (
sparrowhawk_rcar_v4h)
Seeed Technology Co., Ltd
XIAO RP2350 (
xiao_rp2350)
Shenzhen Holyiot Technology Co., Ltd.
21014 Module (
holyiot_21014)HOLYIOT 25008 (
holyiot_25008)
Shenzhen Sipeed Technology Co., Ltd.
Sipeed M0S Dock (
maix_m0s_dock)
Shenzhen Xunlong Software CO.,Limited
Orange Pi Zero (
opi_zero)
Silicon Laboratories
EFM32 Tiny Gecko (EFM32TG-STK3300) (
efm32tg_stk3300)
Soldered Electronics
Inkplate 6Color (
inkplate_6color)
Space Cubics Inc.
SC-OBC Module V1 (
scobc_v1)
SparkFun Electronics
Sparkfun RP2040 mikroBUS Development Board (
sparkfun_rp2040_mikrobus)
STMicroelectronics
STM32MP215F-DK Evaluation Board (
stm32mp215f_dk)
Texas Instruments
AM62L TMDS62LEVM evaluation module (EVM) (
am62l_evm)
u-blox
EVK-NINA-B5-MCXW716C (
ubx_evkninab5)
Vicharak
Shrike-lite (
shrike_lite)
VIEWE Display Co., Ltd.
VIEWE UEDX24320028E-WB-A (
uedx24320028e_wb_a)
Waveshare Electronics
ESP32-S3-RLCD-4.2 (
esp32s3_rlcd_4_2)RP2350-Zero (
rp2350_zero)
WeAct Studio
CAN485 DevBoard V1 (
can485dbv1)WeAct RP2350B Core (
rp2350b_core)STM32G0B1 Core Board (
weact_stm32g0b1_core)
WEMOS Electronics
Wemos Lolin32 Lite (
lolin32_lite)
WinChipHead
WCH CH32V307V-EVT-R1 (
ch32v307v_evt_r1)
New Shields
New Drivers
ADC
ARM architecture
Audio
Biometrics
Bluetooth
Charger
Clock control
Comparator
Counter
CPU
CRC
Cryptographic accelerator
DAC
Display
DMA
EDAC
Ethernet
xlnx,xps-ethernetlite-1.00.a(GitHub #95073)xlnx,xps-ethernetlite-1.00.a-mac(GitHub #95073)xlnx,xps-ethernetlite-1.00.a-mdio(GitHub #103944)xlnx,xps-ethernetlite-3.00.a(GitHub #95073)xlnx,xps-ethernetlite-3.00.a-mac(GitHub #95073)xlnx,xps-ethernetlite-3.00.a-mdio(GitHub #103944)
Firmware
Flash controller
Fuel gauge
GNSS
GPIO
Haptics
Hardware information
Hardware spinlock
I2C
I2S
Input
Interrupt controller
LED
LoRa
Mailbox
MCTP
MFD
MIPI DBI
Miscellaneous
Modem
Multi-bit SPI
MTD
OPAMP
OTP Memory
P-state
Pin control
Power management CPU operations
Power management
Power domain
PS/2
PWM
Regulator
Reset controller
RNG
RTC
SDHC
Sensors
Serial controller
SPI
Stepper
System controller
Timer
UAOL
USB
Video
Wakeup Controller
Watchdog
Wi-Fi
XSPI
Partitions
Added new
zephyr,mapped-partitioncompatible for memory-mapped partitions (GitHub #104398).
New Samples
6dof device FIFO streaming (renamed from
stream_fifo)Generic 3-Axis accelerometer streaming (renamed from
accel_polling)
DeviceTree
Migration guide: Devicetree
Bindings are no longer allowed to specify any default values for the
status,#address-cellsand#size-cellsproperties.
Kconfig
Added new preprocessor function
dt_highest_controller_irq_number(GitHub #104819)
Kernel
Dropped CONFIG_SCHED_DUMB and CONFIG_WAITQ_DUMB options which were deprecated in Zephyr 4.2.0
Libraries / Subsystems
LoRa/LoRaWAN
Added Channel Activity Detection (CAD) support to the LoRa API:
lora_cad(),lora_cad_async(). CAD parameters and LBT mode are configured vialora_modem_config.Added
lora_recv_duty_cycle()for hardware-driven wake-on-radio (RX duty cycling).
Mbed TLS
Added
CONFIG_MBEDTLS_VERSION_Cto simplify the export of version information from Mbed TLS. If enabled, thembedtls_version_get_number()function will be available.
Other notable changes
TF-M was updated to version 2.2.2 (from 2.2.0). The release notes can be found at:
NXP SoC DTSI files have been reorganized by moving them into family-specific subdirectories under
dts/arm/nxp.