Zephyr backend modules#

Pigweed provides native Zephyr backends for several of its core OS abstraction layers.

OS backend modules#

API group

Backend module

Description

Time

pw_chrono_zephyr

Non-overflowing 64-bit clock support and delayable-work timers.

Interrupts

pw_interrupt_zephyr

Interrupt-context detection utilities.

Memory Allocation

pw_allocator_zephyr

Interface wrappers mapping allocation to Zephyr kernel heaps.

Synchronization

pw_sync_zephyr

Type-safe Mutex, TimedMutex, Semaphores, and ThreadNotification.

Threading

pw_thread_zephyr

Thread creation, sleep, yield, and iteration utilities.

Asserts

pw_assert_zephyr

Routing and optional tokenization of assertions.

Logging

pw_log_zephyr

Plain and tokenized logging backend support.

Serial I/O

pw_sys_io_zephyr

Standard I/O operations routed to the console or USB subsystem.

SPI

pw_spi_zephyr

Native implementation of SPI interfaces.

Environment Setup

pw_env_setup_zephyr

CLI tools like pw west to integrate the development environment.

Note

The version of Zephyr bundled with pw package install zephyr is being migrated to v3.6 as we near the latest release.