Zephyr

The Zephyr™ Project is a scalable, real-time operating system (RTOS) supporting multiple hardware architectures, optimized for resource constrained devices, and built with security in mind. This Linux Foundation hosted project embraces open source development values and governance on its mission to unite leaders from across the industry to produce a best-in-breed solution.

Features

  • Scalable from 8-bit to 64-bit microcontroller environments.
  • Built with safety and security in mind.
  • Supports a wide variety of development tools, including SDKs, debuggers, and more.
  • Provides a unified API across architectures.
  • Modular design that allows for configuring the OS for various use cases.
  • Extensive suite of kernel services including threads, multi-threading, and more.

Components:

  • Kernel: Core component providing essential services.
  • OS Services: Includes services like cryptography, debugging, device management, file systems, logging, power management, shell, storage, and more.
  • Connectivity: Provides support for various communication protocols.
  • Hardware Support: Extensive support for different boards and architectures.

Supported Platforms:

  • ARC Boards: DesignWare ARC series.
  • ARM Boards: 96Boards series, Adafruit series, NXP series, and more.
  • ARM64 Boards: Broadcom, ARM BASE, Intel Agilex, NXP i.MX series, and more.
  • MIPS Boards: MIPS Malta Emulation.
  • Nios II Boards: Altera MAX10, Altera Nios-II Emulation.
  • POSIX/Native Boards: POSIX architecture, Bsim boards, Native POSIX execution.
  • RISC-V Boards: Andes, ESP32-C3, GigaDevice, SiFive, and more.
  • SPARC Boards: Generic LEON3, GR716-MINI Development Board.
  • x86 Boards: Alder Lake N, Elkhart Lake CRB, Intel Integrated Sensor Hub, and more.
  • Xtensa Boards: ESP32 series, Intel ADSP series, and more.

Resources

  • awtk. AWTK = Toolkit AnyWhere(a cross-platform embedded GUI).
  • zmk. ZMK Firmware Repository.
  • ZSWatch. ZSWatch - the Open Source Zephyr™ based Smartwatch, including both HW and FW..
  • HeliOS. A community delivered, open source embedded operating system project..
  • zephyr-rtos-tutorial. Zephyr: Tutorial for beginners.
  • west. West, Zephyr’s meta-tool.
  • zephyr-doc. 《Zephyr OS 文档 - 中文版》.
  • zephyr-inside. 揭秘 Zephyr OS .
  • sdk-ng. Zephyr SDK (Toolchains, Development Tools).
  • iot_security. 《密码技术与物联网安全——mbedtls开发实战》示例代码.
  • zscilib. An open-source scientific computing library for embedded systems running Zephyr OS or standalone..
  • awesome-zephyr-rtos. 🪁 A curated list of awesome projects and resources for the Zephyr RTOS project..
  • control. Embedded Firmware Control Systems Toolbox (Pure C and GNU Octave).
  • pinetime-hypnos. Zephyr firmware for the nRF52832 PineTime smartwatch.
  • lava. Read only mirror https://git.lavasoftware.org/lava/lava.
  • monocart-reporter. A playwright test reporter (Node.js).
  • lispBM. An interpreter for a concurrent lisp-like language with message-passing and pattern-matching implemented in C..
  • golioth-zephyr-sdk. Golioth SDK For Zephyr.
  • mcumgr-android. A mobile management library for devices running Apache Mynewt and Zephyr (DFU, logs, stats, config, etc.).
  • fwrisc. Featherweight RISC-V implementation.
  • nrf-docker. Dockerfile that contains all dependencies needed to build nRF Connect SDK applications..
  • Dynamic_App_Loading. Dynamically load apps to zephyr RTOS.
  • zephyr-dwm1001. Open source DWM1001 + Zephyr example implementations.
  • mcumgr-ios. A mobile management library for devices running Apache Mynewt and Zephyr (DFU, logs, stats, config, etc.).
  • bms. Battery management system for 4-series li-ion packs.
  • zpp. Zephyr C++ Framework.
  • openhaystack-zephyr. Zephyr-based OpenHaystack firmware to track your personal Bluetooth devices via Apple’s Find My network.
  • micro_ros_zephyr_module. micro-ROS Zephyr module and sample code.
  • sdk. Embedded firmware development, simulation and verification SDK.
  • nrf52840-m2-devkit. An open-source developer kit based on a removable nRF52840 M.2 module, designed for IoT prototyping.
  • tcf. Documentation.
  • vscode-kconfig. Kconfig language support in vscode.
  • Anjay-zephyr-client. Anjay Zephyr LwM2M client..
  • NCS-MIDI. MIDI tools for nRF Connect SDK.
  • bluetooth-low-energy-applications. Code examples, errata and additional tips and references to interesting projects for the book “Develop your own Bluetooth Low Energy Applications for Raspberry Pi, ESP32 and nRF52 with Python, Arduino and Zephyr”.
  • zmk-docker. Lightweight Docker images for ZMK.
  • playwright-zephyr. Zephyr reporter for the Playwright.
  • workstation. Docker based development environment for coding, building and flashing embedded firmware..
  • zephyr-coaps-client. CoAP / DTLS 1.2 CID client for Zephyr - Reliable - Efficient - Encrypted.
  • herald-for-cpp. Herald for C++ - Reliable mobile Bluetooth communications - Native library & test apps.
  • awesome-zephyr-rtos. Zephyr RTOS for building modular firmware.
  • cozy. CBOR Object Signing and Encryption (COSE) for Zephyr RTOS.
  • pinetime. zephyr based PineTime smartwatch.
  • ruuvitag_fw_zephyr. Ruuvitag FW using Zephyr OS.
  • zephyr. A unified grading platform for student code.
  • zephyr. A Programming Language built for WebAssembly.
  • zephyr-stm32-webusb. Playing with Zephyr Web USB example on STM32 Bluepill.
  • send-my-sensor. Zephyr-based firmware to upload sensor data via Apple’s Find My network.
  • zephyr_cve-2021-3625. CVE-2021-3625 - Sample exploits for Zephyr.
  • platform-nxpimxrt. NXP i.MX RT: development platform for PlatformIO.
  • aW_1-keyboard. A split (semi-)wireless keyboard based on the NRF52832.
  • zephyrWithCucumber. This Framework will help you to update the Test Cycle Status and Steps of the Test Case which is executed in the Test Cycle with the help of cucumber json file.
  • teensy4_shell. Tutorial on how to use the shell of Zephyr with Teensy 4.0.
  • zephyr-docker. Develop with Zephyr locally using Docker containers.
  • zephyr-grbl. Started as a firmware for https://hackaday.io/project/177237-corexy-pen-plotter, possibly could be adapted to other CNCs as well..
  • Zephyr_WiFi. Example Zephyr WiFi code.
  • bridle. Bridle and kite line for embedded systems based on Zephyr..
  • ly10-zephyr-fw. Zephyr-based firmware for PLT Demo V2.
  • mcumgr-dart. Dart mcumgr client.
  • JiphyLib. making it easier to publish robotframework results to JIRA.
  • Zephyr_LoRaWAN. An example LoRaWAN Application on the Zephyr RTOS.
  • Anjay-zephyr. Anjay LwM2M library module for Zephyr..
  • Kconfig-Highlighter. Sublime Text 3 highlight script for the Kconfig language..
  • vscode-zephyr. This is an example vscode setting to provide supports for zephyr based projects build/debug..
  • zLorawan_Node. A Zephyr RTOS based Lorawan node..
  • mender-stm32l4a6-zephyr-example. Mender MCU example running on STM32L4 using Zephyr RTOS.
  • bazel2zephyr. Hands-on tutorial on building a static library (.a) with Bazel and linking it into a Zephyr based project..
  • twatch. Zephyr based firmware for ligo twatch.
  • stm32_blackpill_zephyr_ssd1306_demo. A demo for Zephyr RTOS to shows how to using a custom TTF Font with CFB sub-system to prints text on a small OLED screen..
  • patient_monitoring. Patient Monitoring System using 96Boards.
  • pyrinas-zephyr. Open companion cloud client to Pyrinas Server for the nRF9160 Feather and Zephyr.
  • Netflix-clone. This the clone of Netflix functionalities using YouTube Data API. Where you can watch videos, search videos (Not Channel). You can view the preview screen. Every Video has a recommended video list. Sign in with Google..
  • Bluetooth-Mesh-Sensor-Network. Bluetooth Mesh sensor network.
  • nrf_servo. Servo implementation that uses the NRFX PWM driver.
  • Lemon-IoT-Accessories. Support files for Lemon IoT Ecosystem Accessories.
  • Lemon-IoT-LTE-nRF9160. Support files for the Lemon IoT LTE nRF9160 Board.
  • zmk-config-split-template. A template used to generate user configuration repos for split (left + right) keyboards.
  • ZAPI. Test execution and result reporting on Jira + Zephyr setup.
  • MG100_firmware. MG100 Zephyr RTOS based firmware.
  • Pinnacle-100-Firmware-Manifest. Manifest repository for Pinnacle 100 and MG100 BLE Gateway Firmware demos: https://github.com/LairdCP/BLE_Gateway_Firmware.
  • hc-sr04. Zephyr RTOS driver for HC-SR04 Ultrasonic Ranging Module.
  • alturia-firmware. Firmware for the alturia flight computer.
  • zephyr-stm32-spi. Simple example of using SPI on the STM32 Nucleo-F411RE board.
  • kw1281-diag. Simple KW1281 diagnosis tool using Zephyr shell.
  • nrf-connect-sdk-build-docker. Build Environment for nRF Connect SDK.
  • zephyr-data-migrator. This is self-service utility to migrate zephyr for Jira data from one instance to another..
  • zephyr-usb-midi. A configurable USB MIDI 1.0 device class driver for the Zephyr RTOS..
  • AffectHub. A multimodal physiological and affective data hub affectivecomputing.
  • sdk-hsm-thingy53. Zephyr Samples for Nordic Thingy53 dev kit OpenThread mesh with json data, BME688 BSEC2 for Air Quality, Light color, RGB Les, Battery.
  • bpm. Firmware for the Heartfelt Cardiac Monitor. Consists of sensor (MAX86150) driver, WiFi and Bluetooth connectivity, and client authentication..
  • zephyr-demo-wifi. Zephyr Demo Wifi and TCP/UDP connection console using STM32L4+ B-L4S5I-IOT01A.
  • Pinnacle_100_OOB_Demo_Manifest. Manifest repo for the Pinnacle 100 Out of Box Demo.
  • hello-zephyr. playing around with zephyr .

Website: https://www.zephyrproject.org

Source code: https://github.com/zephyrproject-rtos/zephyr

License: Apache License


Zephyr Platforms

  • ARM
  • x86
  • MIPS
  • Xtensa
  • RISC-V
  • QEMU
  • SPARC V8

Zephyr Components

  • FileSystem
  • Network
  • HTTP
  • TLS/SSL
  • Shell
  • Logging
  • BLE
  • LoRaWAN
  • 6LoWPAN
  • USBHost
  • USBDevice
  • OTA
  • Modbus
  • CAN