Zephyr Kernel 1.9.2
This is a maintenance release with fixes.
Kernel
Generic queue item acquisition fixed to always return a valid item when using K_FOREVER
Bluetooth
Multiple stability fixes for BLE Mesh
Multiple stability fixes for the BLE Controller
Zephyr Kernel 1.9.1
This is a maintenance release with fixes and a two new features in the BLE Controller.
Drivers and Sensors
mcux ethernet driver buffer overflow fixed
STM32 PWM prescaler issue fixed
Networking
Support for IPv6 in DNS fixed
Bluetooth
Multiple stability fixes for the BLE Controller
Support for PA/LNA amplifiers in the BLE Controller
Support for additional VS commands in the BLE Controller
Zephyr Kernel 1.9.0
We are pleased to announce the release of Zephyr kernel version 1.9.0
Major enhancements planned with this release include:
Bluetooth 5.0 Support (all features except Advertising Extensions)
Bluetooth Qualification-ready BLE Controller
BLE Mesh
Lightweight Machine to Machine (LwM2M) support
Pthreads compatible API
BSD Sockets compatible API
MMU/MPU (Cont.): Thread Isolation, Paging
Expand Device Tree support to more architectures
Revamp Testsuite, Increase Coverage
Stack Sentinel support (See details below)
The following sections provide detailed lists of changes by component.
Kernel
Added POSIX thread IPC support for Kernel
kernel: introduce opaque data type for stacks
Timeslicing and tickless kernel improvements
Architectures
arm: Added STM32F405, STM32F417, STM32F103x8 SoCs
arm: Added TI CC2650 SoC
arm: Removed TI CC3200 SoC
arm: Added MPU support to nRF52, STM32L4, and STM32F3
xtensa: Added ESP32 support
Stack sentinel: This places a sentinel value at the lowest 4 bytes of a stack memory region and checks it at various intervals, including when servicing interrupts or context switching.
x86: Enable MMU for application memory
ARC: Added initial MPU support, including stack sentinel checking for ARC configurations not featuring hardware stack bounds checking
ARC: Nested interrupt support for normal, non-FIRQ interrupts
Boards
Added device tree support for Intel Quark based microcontroller boards such as Arduino_101, tinytile, and Quark_d2000_crb.
arm: Added Atmel SAM4S Xplained board
arm: Added Olimex STM32-E407 and STM32-P405 boards
arm: Added STM32F412 Nucleo and STM32F429I-DISC1 boards
arm: Added TI SensorTag board
arm: Removed TI CC3200 LaunchXL board
arm: Added VBLUno51 and VBLUno52 boards
xtensa: Added ESP32 board support
ARC: Added support for EMSK EM7D v2.2 version (incl. MPU)
ARC: Board configuration restructuring, peripheral configs moved from soc to board level
Drivers and Sensors
KW40Z IEEE 802.15.4 radio driver support added
APDS9960 sensor driver added
Added TICKLESS KERNEL support for nrf RTC Timer
Added Kinetis adc and pwm drivers
Removed deprecated PWM driver APIs
Added ESP32 drivers for GPIO, pin mux, watchdog, random number generator, and UART
sensor: Add BMM150 Geomagnetic sensor driver
Networking
LWM2M support added
net-app API support added. This is higher level API that can be used by applications to create client/server applications with transparent TLS (for TCP) or DTLS (for UDP) support.
MQTT TLS support added
Add support to automatically setup IEEE 802.15.4 and Bluetooth IPSP networks
TCP receive window support added
Network sample application configuration file unification, where most of the similar configuration files were merged together
Added Bluetooth support to HTTP(S) server sample application
BSD Socket compatible API layer, allowing to write and/or port simple networking applications using a well-known, cross-platform API
Networking API documentation fixes
Network shell enhancements
Trickle algorithm fixes
Improvements to HTTP server and client libraries
CoAP API fixes
IPv6 fixes
RPL fixes
Bluetooth
Bluetooth Mesh support (all mandatory features and most optional ones)
GATT Service Changed Characteristic support
IPSP net-app support: a simplified networking API reducing duplication of common tasks an application writer has to go through to connect to the network.
BLE controller qualification-ready, with all required tests passing
Controller-based privacy (including all optional features)
Extended Scanner Filter Policies support in the controller
Controller roles (Advertiser, Scanner, Master and Slave) separation in source code, conditionally includable
Flash access cooperation with BLE radio activity
Bluetooth Kconfig options have been renamed have the same (consistent) prefix as the Bluetooth APIs, namely BT_* instead of BLUETOOTH_*. Controller Kconfig options have been shortened to use CTLR instead of CONTROLLER.
Removed deprecated NBLE support
Build and Infrastructure
change description
Libraries
mbedTLS updated to 2.6.0
TinyCrypt updated to 0.2.7
HALs
Added support for stm32f417 SOC
Added support for stm32f405 SOC
pinmux: stm32: 96b_carbon: Add support for SPI
Added rcc node on stm32 socs
Added pin config for USART1 on PB6/PB7 for stm32l4
Removed TI cc3200 SOC and LaunchXL board support
Documentation
CONTRIBUTING.rst and Contribution Guide material added
Configuration options doc reorganized for easier access
Navigation sidebar issues fixed for supported boards section
Fixed link targets hidden behind header
Completed migration of wiki.zephyrproject.org content into docs and GitHub wiki. All links to old wiki updated.
Broken link and spelling check scans through .rst, Kconfig (used for auto-generated configuration docs), and source code doxygen comments (used for API documentation).
API documentation added for new interfaces and improved for existing ones.
Documentation added for new boards supported with this release.
Python packages needed for document generation added to new python pip requirements.txt
Build System and Tools
Convert post-processing host tools to python, this includes the following tools: gen_offset_header.py gen_idt.py gen_gdt.py gen_mmu.py
Tests and Samples
Added test Case to stress test round robin scheduling in schedule_api test.
Added test case to stress test priority scheduling in scheduling_api_test.