
- Three picks from the ZDS schedule: USB Development and Testing on Native Simulator, Network Subsystem Status and Overview and From Zero Hardware To Production: High-Performance Sensors With Zephyr
- TI and Infineon upgrade to Platinum membership
- Git 2.56 adds git history drop
- CMSIS-Zephyr, examples for the Arm CMSIS Debugger and Keil Studio with Zephyr
- Price increases for the 2GB Raspberry Pi 4 and Raspberry Pi 5
- Zephyr’s hardening tool gains in modularity and provides clearer recommendations
- ns_to_cyc_at_hz(), compile-time nanoseconds to cycles at a given frequency
- Generic reference-counted objects
- A Coccinelle script for migrating to ZASSERT
- The MediaTek Genio 700 and Genio 510 EVKs, with Zephyr on a Cortex-A55
- WisBlock platform support
- The Pebble Round 2, a SiFli SF32LB52 smartwatch with a round display
- The M5Stack StackChan, an ESP32-S3 desktop robot
- The network conformance suites now run nightly
- iperf3 support in zperf
- fota_http, firmware updates over HTTP(S) into MCUboot
- USB host hub class support
- An MCX backend for the SWD bit-bang driver
- The native_sim video source is merged
- A driver for the TSM12 capacitive touch sensor
- The TI TPS62873, a stackable 15 A buck converter
- The ST VL53L5CX multizone time-of-flight sensor
- GFSK modulation for LoRa transceivers
Join Discord // #podcast at https://chat.zephyrproject.org!
Subscribe to the podcast on your favorite platform:
The summary below was automatically generated using the assistance of AI tools.
Episode Summary
- Zephyr 4.5 RC1: The first release candidate is tagged and the feature freeze is in effect, after close to a thousand commits in the last week alone. Exceptions can still be requested for anything that should have made it but slipped through a glitch in the process. Release notes and migration guide entries live in per-release files, so a pull request that misses the cut has to move its entry and rebase; a scheme that doesn’t tie entries to a release is being looked at. Benjamin is compiling the 4.5 highlights in a pull request, aiming for about a dozen items, possibly including cross-cutting performance work in networking and the kernel, so chime in if something is missing.
- Off to Prague: The Zephyr Developer Summit is next week, so say hello if you see us. Three talks on the hosts’ list: USB Development and Testing on Native Simulator by Johann Fischer, which covers exporting native_sim USB applications to the host over USB/IP; Network Subsystem Status and Overview by Jukka Rissanen; and From Zero Hardware To Production by Jan Germer, on how Fluke built sensor firmware with DMA-driven ADC pipelines and zero-CPU data acquisition. Wednesday has a single track, Thursday and Friday have two, and the sessions are expected to be recorded.
- Platinum Members: Texas Instruments and Infineon, both existing members, upgraded to Platinum membership in the Zephyr Project, and TI is expanding Zephyr support across its embedded portfolio. Both will be well represented at ZDS, a good opportunity to ask them what’s planned.
- Git 2.56: Git 2.56 adds git history drop, which removes a commit and replays its descendants onto its parent. One command instead of an interactive rebase.
- CMSIS-Zephyr: Arm’s examples organization published CMSIS-Zephyr. CMSIS here is less about the APIs and more about tooling: it shows how to use Keil Studio for VS Code and the Arm CMSIS Debugger with Zephyr, with sources organized in the project view, generated files kept apart, and kernel-aware debug views. Polished, well documented, and nice to see more first-party Zephyr support in tools.
- Raspberry Pi Prices: Raspberry Pi raised the price of the 2GB Raspberry Pi 4 and Raspberry Pi 5 by $12.50, to $67.50 and $77.50, citing memory costs.
- Hardening Your Configuration: Zephyr’s hardening tool checks a build’s configuration for options that make a product more vulnerable than it should be, such as the boot banner that advertises the Zephyr version and makes it easy to know which vulnerabilities a device ships with. Just before the freeze, the single hardened.csv was replaced with YAML fragments that each subsystem maintains next to its Kconfig, with a rationale for every rule, and west build -t hardenconfig now prints a detailed report explaining why each option should change. The hope is that subsystem maintainers document recommended production settings, and that the report eventually shows up in the HTML dashboard and in the SBOM.
- Nanoseconds to Cycles: ns_to_cyc_at_hz() converts a duration to cycles at compile time for an explicit frequency, which is what you need when bit-banging a protocol. It was split out of the fast GPIO API proposal so it could make the release. The frequency is an argument, so you pass the clock you are actually running at.
- Reference Counting: Generic reference-counted objects from USB maintainer Johann Fischer, modeled after Linux’s kref. Built on atomics, they make sure an object is released exactly once, without the race conditions and double releases that hand-rolled atomic counting invites.
- Migrating to ZASSERT: Following last week’s per-module assertions, Måns Ansgariusson added a Coccinelle script that rewrites __ASSERT() calls to ZASSERT(), in the tree or in your own application, so you don’t have to do it by hand. Coccinelle does semantic patching, and other scripts already live in the tree: some are wired into CI for compliance checks, others are meant to be run locally.
- MediaTek Genio: The Genio 700 and Genio 510 EVKs, directly from MediaTek. Their SoCs pair Cortex-A78 cores running Linux with Cortex-A55 cores, and Zephyr runs on one of the A55s alongside Linux. One more high-end platform running Zephyr.
- WisBlock: Directly from RAKwireless, support for WisBlock, an ecosystem of small modules geared towards wireless use cases such as LoRa, with compact board-to-board connectors for sensors. Think of it as a more capable Arduino pinout: a carrier board where the core module plugs in, designed to go into products rather than just prototypes. The connector slots are described in devicetree, the RAK4631 becomes a core module and the RAK19007 base board is a shield.
- Pebble Round 2: The Pebble Round 2 from Core Devices, a Pebble with a round screen built on the SiFli SF32LB52, with a Nordic nPM1300 for power management, a PMIC usually seen next to a Nordic SoC.
- StackChan: The M5Stack StackChan, an ESP32-S3 based, open hardware desktop robot with servos, a camera and a touch-sensitive head. The servos and the camera don’t have drivers yet, so expect more. Benjamin is bringing his to ZDS, running a YOLO vision model that recognizes the Zephyr logo.
- Networking: The TTCN-3 conformance suites covered last week now run nightly in CI, which should catch regressions as more protocols are added. They test conformance, not performance. For performance, zperf gains iperf3 support.
- Firmware Over HTTP: fota_http, from Sylvio Alves at Espressif, is a library that downloads a signed MCUboot image from an HTTP or HTTPS server into the secondary slot, ready to test and reboot into. TLS with peer verification is on by default, redirects are followed and downloads can resume. You do need the flash for two image slots, which is rarely a problem on Espressif parts with external flash.
- USB Hubs: USB host hub class support: devices connected to a Zephyr USB host through a hub now work. A hub isn’t transparent and needs proper support in the stack. A fuller USB recap will come with the 4.5 release blog post.
- Faster SWD on MCX: The SWD bit-bang driver behind the CMSIS-DAP debug probe firmware gets a fast-pin backend for NXP MCX, after nRF and STM32. Handy if you want an on-board debugger on your board.
- Video in native_sim: Covered last week and now merged for 4.5, a native_sim video source that streams raw frames from the host into your application, which makes testing multimedia pipelines with mpipe much easier. native_sim also gained many more emulated devices this cycle.
- Capacitive Touch: A driver for the TSM12 capacitive touch controller, which came with the StackChan work: the robot’s head has three touch zones behind a compatible chip, and the sensitivity can be finely calibrated.
- A Stackable Buck Converter: A regulator driver for TI’s TPS62873, a 2.7 to 6 V input, 15 A buck converter that is stackable: put several in parallel for more current, and control them, including the output voltage, from Zephyr. In theory, a million of them and an STM32C0 make a 15-million-amp supply.
- Time of Flight: A driver for ST’s VL53L5CX, a multizone time-of-flight sensor with up to 8×8 zones, basically a tiny camera that sees depth, popular in robotics. It is one of the few sensors in the tree that needs a binary blob. Around 20 euros.
- GFSK for LoRa: Semtech’s LoRa transceivers support other modulations too, and the LoRa API can now use GFSK on SX126x parts, for example for the 50 kbps FSK data rate in EU868.
- Next Week, Prague: The next episode covers ZDS for those who can’t make it, possibly recorded live from the Zephyr table with community interviews. If you are there, say hi and share your ideas for making the podcast better.