Industry Insights 20 min read

Zephyr RTOS 3.7.0 LTS Launch – New HW Models, Enhanced Networking, and Security Fixes

Zephyr RTOS 3.7.0 LTS was released on July 26, 2024, introducing over 650 contributors, new hardware models, expanded POSIX and Bluetooth support, numerous API changes, extensive driver updates, enhanced networking features, and a series of security patches covering multiple CVEs.

Linux Code Review Hub
Linux Code Review Hub
Linux Code Review Hub
Zephyr RTOS 3.7.0 LTS Launch – New HW Models, Enhanced Networking, and Security Fixes

Zephyr RTOS version 3.7.0 LTS was officially released on 2024‑07‑26, marking the third long‑term‑support (LTS) release of the project. This milestone includes contributions from more than 650 developers, with over 35% (230) being first‑time contributors, and more than 7,370 commits since version 3.6.

Major New Features

New hardware model Hwv2 and a new HTTP server library.

Extended POSIX support and expanded Bluetooth Host audio/video capabilities.

Sensor model updates to support additional sensor types and data streams.

Added EDK for LLEXT creation and native simulator support for host networking.

Integration of TF‑M 2.1.0 and Mbed TLS 3.6.0; PSA Crypto replaces TinyCrypt.

Support for PTP/IEEE 1588 and documentation for VSCode/CLion development.

Security Patches

Addressed multiple CVEs, including CVE‑2024‑3077, CVE‑2024‑3332, and a series of CVEs scheduled for disclosure between August and September 2024.

API Changes

Removed APIs: pcie_probe, pcie_bdf_lookup, CONFIG_EMUL_EEPROM_AT2X, pm_device_state_lock, pm_device_state_is_locked, pm_device_state_unlock, zephyr_smp_rx_req, zephyr_smp_alloc_rsp, zephyr_smp_free_buf. Deprecated numerous Bluetooth advertising options, CAN bitrate APIs, and several POSIX symbols (see migration guide).

Architecture Updates

Added ARC MWDT toolchain support and multi‑core memory‑barrier APIs.

Support for Cortex‑M85, ARM64 backtrace symbols, Cortex‑R82 tuning, RISC‑V fatal‑info and stack‑unwinding, and Xtensa MPU and interrupt‑vector generation.

Kernel Enhancements

New k_uptime_seconds (equivalent to k_uptime_get()/1000) and k_realloc.

Device‑tree metadata via CONFIG_DEVICE_DT_METADATA and deferred init support.

Static thread stack declaration with K_THREAD_STACK_LEN.

Fixed dead‑lock issues in k_thread_abort and k_thread_join under SMP ISR contention.

Resolved scheduling queue corruption when CONFIG_SCHED_SCALABLE and CONFIG_SCHED_DEADLINE are used together.

Bluetooth

Added support for Nordic UART Service (NUS) as a Zephyr console and a completely redesigned HCI driver interface.

Supported Boards and SoCs

Newly supported SoCs include Ambiq Apollo3 Blue/Plus, Synopsys ARC‑V RMX1xx, STM32H7R/S series, NXP mke15z7/mke17z7/mke17z9/MCXNx4x/RW61x, Analog Devices MAX32, Infineon AIROC™ CYW20829, MediaTek MT8195 audio DSP, Nuvoton Numaker M2L31X, Microchip PolarFire ICICLE SMP variants, and Renesas RA8 series. Numerous SoC‑specific enhancements are listed in the release notes.

Build System and Infrastructure

Black‑box CI testing enabled.

Introduced socs folder for Kconfig fragments and devicetree overrides.

Added board/SoC flash configuration settings and switched to CONFIG_STD_C for C‑standard selection.

Sysbuild root support, LTO for whole applications, and numerous CMake fixes.

Added CONFIG_SIZE_OPTIMIZATIONS_AGGRESSIVE and CONFIG_OUTPUT_DISASSEMBLY_WITH_SOURCE.

Twister now supports --flash-before to flash devices before opening a serial port.

Driver Updates

Extensive updates across ADC, DAC, battery, CAN, charger, clock control, entropy, EEPROM, Ethernet, flash, GNSS, GPIO, I2C, I2S, I3C, LED, LoRa, PWM, RTC, SDHC, sensors, SPI, USB, video, watchdog, Wi‑Fi, and many other drivers. Highlights include voltage‑bias support for ADC, DMA mode for ESP32S3/ESP32C3, new NUS‑based UART over Bluetooth LE, and removal of legacy Ethernet VLAN handling.

Networking Enhancements

Gratuitous ARP support and improved ARP debug logs.

CoAP retransmission limit, new client cancel API, and new net_mgmt events for IPv4/IPv6 tracking.

DHCPv4/6 improvements, including vendor‑specific options, NTP server integration, and RFC‑compliant renew/rebind logic.

Redesigned LLMNR/mDNS responders, added ANY query type, and runtime record provisioning.

IEEE 1588‑2019 PTP support and SO_TIMESTAMPING socket option.

HTTP/2 server library, HTTP client error reporting, and POLLOUT monitoring for responses.

IPv4 address conflict detection (RFC 5227) and private‑address helpers; IPv6 privacy extensions (RFC 8981) and reachability hints.

MQTT TLS backend with ALPN support and user‑data field in client context.

New POSIX network APIs: if_nameindex(), inet_ntoa(), inet_addr(); tracing socket API; improved DTLS socket sendmsg support.

Syslog network backend now supports structured logging and TCP.

TCP improvements: SHA‑256 ISN generation, refined ACK logic, and deprecated CONFIG_NET_TCP_ACK_TIMEOUT.

Websocket API additions and POLLOUT monitoring.

Wi‑Fi memory reductions, AP channel validation, BSSID configuration, WPA personal mode, and extensive statistics collection.

USB Stack

New USB device stack with HID support, configurable speeds meeting USB 2.0 specifications, and initial BOS and notification support.

Devicetree and Kconfig

Added macros for easier devicetree access and several new Kconfig preprocessing options.

Libraries and Subsystems

Enabled CONFIG_SYMTAB for symbol table generation.

Updated NRU eviction algorithm and added LRU eviction in the MMU demand‑paging subsystem.

Logging improvements: POSIX RTC timestamps, syslog (POSIX) support, LOG_WRN_ONCE, and log_thread_trigger().

Modem subsystem enhancements: new pipe link module, simplified synchronization, and modem_stats tracking.

Power management shell support, explicit power‑state declarations, and separation of device and system power management.

Crypto: PSA Crypto replaces TinyCrypt; Mbed TLS upgraded to 3.6.0.

CMSIS‑NN updated from v4.1.0 to v6.0.0.

FPGA driver improvements and support for Agilex series.

Storage subsystem now supports FATFS formatting, FS_O_TRUNC, flash area flattening, and CRC protection for NVS data.

POSIX compliance expanded to include most IEEE 1003‑2017 options.

LoRa/LoRaWAN: fragment transfer service and FUOTA example.

zbus: optimized VDED flow, reduced initialization time, and isolated channel‑subscriber pools.

HAL Updates

Nordic nrfx updated to 3.5.0 with new nRF service library.

STM32 series updated to newer Cube versions (see release notes).

Added hal_adi module for ADI devices and updated ESP‑A‑L to version v5.1.

MCUboot

Extensive issue fixes, image‑dependency refactoring, ESP32‑C6 support, boot banner option, protected‑region TLV queries, built‑in ECDSA key support for PSA Crypto, and imgtool enhancements.

MCUboot version upgraded to 2.1.0+0‑dev.

Other Subsystems

OSDP: fixed CP secure‑channel handshake issue.

Trusted Firmware‑M updated to 2.1.0 with additional MCUboot signature support.

LVGL upgraded to 8.4.0 with Zephyr integration adjustments.

Tests and Samples

Added code snippet to enable NUS console via -S nus-console during west build.

Replaced GSM_PPP driver with new MODEM_CELLULAR driver and removed related samples.

BT LE PHY encoding tested on nrf5x bsim target; external Ethernet disabled in net tests.

securityhardwareNetworkingembeddedRTOSLTSZephyr
Linux Code Review Hub
Written by

Linux Code Review Hub

A professional Linux technology community and learning platform covering the kernel, memory management, process management, file system and I/O, performance tuning, device drivers, virtualization, and cloud computing.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.