Zephyr is an open-source, scalable, real-time operating system (RTOS) designed for embedded systems and IoT devices. Developed as a project under the Linux Foundation, Zephyr offers a modular and lightweight architecture that supports a wide range of hardware platforms. With its small footprint, security features, and extensive ecosystem, Zephyr is an ideal choice for applications requiring real-time performance, connectivity, and reliability.
How can Bootlin help you with Zephyr?
Bootlin provides expert engineering services to help customers integrate, customize, and optimize Zephyr-based solutions. Our services include:
- Board Bring-up & BSP Development: Porting Zephyr to new hardware platforms and developing Board Support Packages (BSPs). This includes configuring the boot process, initializing peripherals, integrating device trees, and ensuring proper hardware abstraction layer (HAL) support for seamless operation.
- Driver Development: Implementing and optimizing device drivers for peripherals and custom hardware components. Our team ensures efficient communication between hardware and the Zephyr kernel, optimizing performance, reducing power consumption, and adhering to Zephyr’s driver model and API standards.
- Upstreaming: Integrating support for your hardware into the official Zephyr project, ensuring high-quality, well-maintained, and readily available support for all Zephyr users. This approach benefits both hardware manufacturers and the broader Zephyr ecosystem by fostering long-term maintainability and community adoption.
Bootlin’s expertise with Zephyr
Bootlin’s engineers have extensive experience working with embedded Linux and real-time operating systems, including Zephyr. We have extensive experience in developing low-level software for embedded devices, as well as in getting such code integrated in upstream open-source projects.
Bootlin engineers already made several significant contributions to the official Zephyr project:
- Addition of the support for the WCH CH32V303 micro-controller and its evaluation board.
- Development of a sensor driver for the STMicroelectronics LSM9DS1 sensor over I2C, including support for this sensor on the Arduino Nano 33 BLE platform.
- Implementation of a MIPI DBI driver for the STM32 FMC parallel interface, enabling display panel interfacing through the STM32 FMC interface. This work led to the addition of ST7789V display panel support for the STM32L562E Discovery Kit.
- Creation of an input driver for the Nintendo Nunchuk, which connects over I2C.
- Implementation of improvements and fixes to Zephyr 802.15.4 network stack.
See also our series of blog posts on Zephyr: