Zephyr 4.2.0 (Working Draft)
We are pleased to announce the release of Zephyr version 4.2.0.
Major enhancements with this release include:
An overview of the changes required or recommended when migrating your application from Zephyr v4.1.0 to Zephyr v4.2.0 can be found in the separate migration guide.
The following sections provide detailed lists of changes by component.
API Changes
Removed APIs and options
Removed the deprecated the
net_buf_put()
andnet_buf_get()
API functions.Removed the deprecated
include/zephyr/net/buf.h
header file.Removed the
--disable-unrecognized-section-test
Twister option. Test has been removed and the option became the default behavior.Removed the deprecated
kscan
subsystem.
Deprecated APIs and options
The scheduler Kconfig options CONFIG_SCHED_DUMB and CONFIG_WAITQ_DUMB were renamed and deprecated. Use
CONFIG_SCHED_SIMPLE
andCONFIG_WAITQ_SIMPLE
instead.The
CONFIG_LWM2M_ENGINE_MESSAGE_HEADER_SIZE
Kconfig option has been removed. The required header size should be included in the message size, configured usingCONFIG_LWM2M_COAP_MAX_MSG_SIZE
. Special care should be taken to ensure that used CoAP block sizeCONFIG_LWM2M_COAP_BLOCK_SIZE
can fit given message size with headers. Previous headroom was 48 bytes.TLS credential type
TLS_CREDENTIAL_SERVER_CERTIFICATE
was renamed and deprecated, useTLS_CREDENTIAL_PUBLIC_CERTIFICATE
instead.arduino_uno_r4_minima
andarduino_uno_r4_wifi
board targets have been deprecated in favor of a newarduino_uno_r4
board with revisions (arduino_uno_r4@minima
andarduino_uno_r4@wifi
).esp32c6_devkitc
board target has been deprecated and renamed toesp32c6_devkitc/esp32c6/hpcore
.xiao_esp32c6
board target has been deprecated and renamed toxiao_esp32c6/esp32c6/hpcore
.
New APIs and options
Kernel
K_TIMEOUT_ABS_SEC
I2C
Bluetooth
Audio
Host
LE Connection Subrating is no longer experimental.
Remove deletion of the classic bonding information from
bt_unpair()
, and addbt_br_unpair()
.Remove query of the classic bonding information from
bt_foreach_bond()
, and addbt_br_foreach_bond()
.
Display
Networking:
IPv4
MQTT
Sockets
Stepper
Counter
New Boards
Adafruit Industries, LLC
Adafruit Feather ESP32S3 TFT (
adafruit_feather_esp32s3_tft
)Adafruit Feather ESP32S3 (
adafruit_feather_esp32s3
)
FANKE Technology Co., Ltd.
FK743M5-XIH6 (
fk743m5_xih6
)
Nuvoton Technology Corporation
NUMAKER M55M1 (
numaker_m55m1
)
Octavo Systems LLC
OSD32MP1-BRK (
osd32mp1_brk
)
Pimoroni Ltd.
Pimoroni Pico Plus2 (
pico_plus2
)
Renesas Electronics Corporation
RZ/A3UL SMARC Evaluation Board Kit (
rza3ul_smarc
)Renesas Starter Kit+ for RZ/N2L (
rzn2l_rsk
)Renesas Starter Kit+ for RZ/T2L (
rzt2l_rsk
)
STMicroelectronics
STM32H757I Eval (
stm32h757i_eval
)
Silicon Laboratories
EFR32xG21 2.4 GHz 20 dBm (SLWRB4180B) (
slwrb4180b
)
Texas Instruments
SK-AM64 (
sk_am64
)
WIZnet Co., Ltd.
W5500-EVB-Pico2 (
w5500_evb_pico2
)
WinChipHead
WCH CH32V003F4P6 Development Board (
ch32v003f4p6_dev_board
)WCH LinkW (
linkw
)
New Drivers
ADC
Clock control
Comparator
Counter
CPU
Cryptographic accelerator
Display
DMA
Ethernet
Flash controller
File system
GPIO and Headers
I2C
Input
Mailbox
MDIO
Memory controller
MFD
Miscellaneous
Multi-bit SPI
MTD
Networking
Pin control
PWM
Regulator
RNG
RTC
Sensors
Serial controller
Watchdog
New Samples
Other notable changes
Added support for Armv8.1-M MPU’s PXN (Privileged Execute Never) attribute. With this, the MPU attributes for
__ramfunc
and__ram_text_reloc
were modified such that, PXN attribute is set for these regions if compiled withCONFIG_ARM_MPU_PXN
andCONFIG_USERSPACE
. This results in a change in behaviour for code being executed from these regions because, if these regions have pxn attribute set in them, they cannot be executed in privileged mode.Removed support for Nucleo WBA52CG board (
nucleo_wba52cg
) since it is NRND (Not Recommended for New Design) and it is not supported anymore in the STM32CubeWBA from version 1.1.0 (July 2023). The migration to Nucleo WBA55CG (nucleo_wba55cg
) is recommended instead.Updated Mbed TLS to version 3.6.3 (from 3.6.2). The release notes can be found at: https://github.com/Mbed-TLS/mbedtls/releases/tag/mbedtls-3.6.3