Zephyr 4.5.0 (Working Draft)

We are pleased to announce the release of Zephyr version 4.5.0.

Major enhancements with this release include:

New driver classes

Zephyr 4.5 adds several new driver APIs, including:

New subsystems

Zephyr 4.5 adds several new subsystem APIs, including:

  • Video for controlling video drivers

An overview of the changes required or recommended when migrating your application from Zephyr v4.4.0 to Zephyr v4.5.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

  • Architectures

    • Xtensa

      • CONFIG_XTENSA_BACKTRACE_EXCEPTION_DUMP_HOOK

  • Counter

    • CONFIG_COUNTER_MAXIM_DS3231

  • Networking

    • CONFIG_NET_TC_SKIP_FOR_HIGH_PRIO

    • CONFIG_NET_SOCKETS_POLL_MAX

    • CONFIG_NET_GPTP_CLOCK_ACCURACY_*

    • net_ipv6_set_hop_limit()

    • net_if_ipv4_get_netmask()

    • net_if_ipv4_set_netmask()

    • net_if_ipv4_set_netmask_by_index()

    • openthread_state_changed_cb_register()

    • openthread_state_changed_cb_unregister()

    • openthread_start()

    • openthread_api_mutex_lock()

    • openthread_api_mutex_try_lock()

    • openthread_api_mutex_unlock()

    • struct openthread_state_changed_cb

    • TLS_CREDENTIAL_SERVER_CERTIFICATE

    • start_11r_roaming

  • Random

    • CONFIG_CTR_DRBG_CSPRNG_GENERATOR

    • CONFIG_CS_CTR_DRBG_PERSONALIZATION

  • West sign support for imgtool, which was deprecated in Zephyr 4.0, has been removed.

Deprecated APIs and options

New APIs and options

New Boards

New Shields

New Drivers

New Samples

Libraries / Subsystems

  • Crypto

    • Added AES CFB and OFB cipher mode support.

  • Mbed TLS

    • Mbed TLS was updated to version 4.1.1. Release notes can be found here.

    • TF-PSA-Crypto was updated to version 1.1.1. Release notes can be found here.

  • TF-M

    • TF-M was updated from version 2.2.2 to version 2.3.0. Release notes can be found here.

  • DFU

  • LoRa / LoRaWAN

  • Video

    • Introducing a video subsystem that inherits all the function names previously in video drivers.

  • Zbus

Devicetree

Other notable changes

  • Build system

    • The minimum required CMake version has been raised to 3.28.0, a version satisfied by the CMake package in the Ubuntu 24.04 LTS package repositories. See the migration guide for options if your distribution ships an older version.

  • Kernel

  • Wi-Fi

    • Removed the samples/net/wifi/test_certs/rsa2k enterprise test certificates (DES-encrypted private keys). Use rsa2k_no_des instead.

  • MCUboot

    • SB_CONFIG_BOOT_SIGNATURE_KEY_FILE now accepts a comma-separated list of key files, embedding the public half of each in the MCUboot bootloader. When more than one key is given, MCUboot accepts an image signed with any of them – the typical use is a development bootloader that boots both development- and production-signed images, while production bootloaders embed only the production key. The first entry is the key the application is signed with and the rest are verification-only public keys. See Signing Binaries.

  • Arm

    • The non-secure variant of

      Arm Musca-S1 (v2m_musca_s1/musca_s1/ns) has been removed due to TF-M removing platform support for this board.

    • As a consequence of the above, the secure variant of Arm Musca-S1 (v2m_musca_s1) has been deprecated. This is to avoid a confusing state of partial support.

Trusted Firmware-A

  • CONFIG_TFA_BUILD_FIP is introduced to configure FIP (Firmware Image Package) generation. FIP generation is by default disabled, but can be enabled by setting CONFIG_TFA_BUILD_FIP=y in prj.conf or for custom boards, in the board’s <board>_defconfig file.