openvela is an operating system specifically crafted for the AIoT industry, with a focus on being lightweight, standards-compliant, secure, and highly scalable. It has become the technology of choice for millions of IoT devices and AI gadgets, including smart watches, fitness bands, smart speakers, earbuds, smart appliances, and robotics.
The name “Vela” is originated from the Latin term for “sail,” which is also the name of the constellation resembling a sail in the southern sky. We aspire to partner with developers and set sail on a voyage through the AIoT landscape.
Technical Architecture
Kernel Layer
The kernel layer provides fundamental operating system functions, including task scheduling, inter-process communication (IPC), and file system management. It also supplies compact, efficient components such as device drivers, a lightweight TCP/IP protocol stack, and power management modules. This layer supports both homogeneous and heterogeneous multi-core architectures, enhancing performance support across diverse hardware platforms.
Service Framework Layer
The service framework layer is a general-purpose framework designed to extend system services. It includes connectivity subsystem, graphics subsystem, multimedia subsystem, security subsystem, and XPC cross-core communication capabilities. This layer provides flexible support for service expansion, serving as the essential foundation for system functional expansion.
Maintenance and Testing Tools
Maintenance and testing tools include common utilities and diagnostic frameworks. In addition to standard tools like Logger and Debugger, they feature the Emulator — a high-fidelity device simulator that supports full functional emulation, including CPU instruction-set simulation. The Emulator currently supports multiple product form factors, including smart panels, smartwatches, smart bands, and smart screen speakers. By leveraging the Emulator’s PC-based debugging tools, developers can perform application development and testing without physical devices, significantly reducing both development and debugging efforts.
Technical Advantages
Highly Scalable
openvela has been designed to be modular and scalable, allowing it to easily adapt to a wide range of IoT applications. It can fit in a small BLE module with 32KB RAM, and scale up to a powerful smart display device with 512MB RAM, highly scalable!
One-Stop Solution
Over the years, openvela has evolved into a powerful platform with comprehensive feature sets, making it a one-stop solution for various IoT applications. We consistently incorporate new functionalities to meet emerging needs. By leveraging openvela, manufacturers can significantly reduce their R&D costs and accelerate their product development cycles.
Mature Heterogeneous Computing Support
openvela offers top-of-the-line support for heterogeneous multi-core systems, featuring a seamless IPC mechanism between various processing units such as MCU, MPU, DSP, GPU, and NPU. Additionally, openvela provides an advanced RPC framework between openvela, Linux, and Android systems to enable hybrid OS leveraging strength from three systems.
Standard Compliant and High Portability
openvela Kernel is built upon Apache NuttX, which is often referred to as “tiny Linux”. With this foundation, openvela achieves a high degree of conformity with the POSIX standard. Our team has been continually enhancing its POSIX compatibility, which has now reached an impressive 89%. Because of this standards conformance, software developed under other standard OSs (such as Linux) can be easily ported to openvela with minimum effort.
Comprehensive Connectivity Suite
openvela offers broad protocol support, including Bluetooth BR/EDR/LE, LE Mesh, WiFi, Matter, IEEE802.15.4, and LTE Cat1, Ethernet, CAN/LIN, etc. Additionally, it seamlessly integrates with Xiaomi HyperConnect protocols.
Rich Developer Tools
openvela offers a comprehensive suite of developer tools, including system monitoring, performance analysis, debugger, trace, crash dump, and log analysis tools.
Hardware Support
openvela supports a variety of architectures (ARM32, ARM64, RISC-V, Xtensa, MIPS, CEVA, etc.) and platforms.
For adaptation cases regarding development boards, please refer to the Case Documentation.
What’s New
openvela Official Website Launched: openvela now has its own official website, providing developers with a more convenient channel for accessing project information, documentation, community updates, and more. Visit the openvela Official Website.
First openvela Officially Certified Development Board: The Gemini-S1 development board, independently developed by Runxinwei Intelligent Technology Co., Ltd., has become the first development board to pass the openvela official compatibility certification, marking a significant milestone in the openvela ecosystem.
Significant Hardware Ecosystem Expansion: Added support for Infineon AURIX™ TC4, Flagchip MCU, and the QEMU-R52 SIL platform. (View TC4 Guide / Flagchip Guide)
Enhanced Ubuntu Development Experience: The OpenVela VS Code plugin now fully supports the Ubuntu environment. Linux developers can enjoy a seamless, end-to-end workflow—from project creation and build to system debugging—significantly boosting development efficiency. Get started: VS Code Plugin Guide.
Version Strategy
We manage releases based on the trunk branch, using Tags to track release history. This ensures traceability and stability for production environments.
Release Tags
Release tags are immutable markers created on the trunk branch. Each tag represents an officially released version of openvela.
Production Environment Recommendation: To ensure maximum system stability and security, we strongly recommend using the latest release tags in production environments (Production Environment), rather than using branch code directly.
Released Versions
Below are the currently released stable versions and their change logs:
To maximize efficiency and ensure code stability, we offer the following recommendations for developers performing hardware porting:
Recommended Baseline: We strongly recommend basing your development on the latest openvela release version (i.e., Release Tags on the trunk branch).
Risk Warning: The current dev branch is undergoing rapid iteration with frequent code updates. It may be subject to underlying interface changes or temporary instability. Therefore, it is NOT recommended as a baseline for hardware adaptation.
Get Support: If you have adaptation requirements or encounter technical difficulties, please feel free to submit an Issue or contact us via the WeChat Community. The openvela team is ready to provide the necessary development support.
Version Maintenance Strategy
openvela follows a strict version maintenance lifecycle:
Patch Updates: For critical bugs or security vulnerabilities discovered in released versions, the team issues new patch release tags (Patch Release) to provide fixes.
Naming Convention: Patch versions increment based on the original version number, such as trunk-5.2.1.
Branch Strategy
openvela adopts a dual-branch model to balance system innovation and stability. Please select the appropriate branch according to your development needs.
dev (Development Branch)
Definition: This is the cutting-edge development branch of openvela, aggregating the latest features and bug fixes.
Status: The code updates frequently and remains in a state of continuous integration and rapid iteration. It may contain features not yet fully verified, so potential instability exists.
Target Audience:
Developers who wish to experience new features early.
Contributors planning to submit code or participate in core function development.
trunk (Stable Trunk Branch)
Definition: This is the fully tested main branch, representing the current stable state of the system.
Status: Features from the dev branch are merged here only after they pass rigorous testing and verification.
Target Audience: Most users who require high system stability, and engineers developing standard applications.
Quick start
Device Development
If you want to experience openvela, we provide a fully functional emulator that can be used without a hardware platform. For more information, refer to the following guide.
AI-Assisted Setup: If you use an AI coding assistant, simply run git clone https://github.com/open-vela/.claude.git .claude, then tell the AI “Help me set up the openvela development environment” to automate the entire setup process. See openvela AI Skills for details.
openvela service framework: primarily includes Bluetooth, telephony, graphics, multimedia, application frameworks, security, and system service frameworks (KVDB, OTA, healthd, binder, charger, etc.).
A kernel built on the open-source real-time operating system NuttX, providing essential kernel functions, including task scheduling, inter-process communication, file systems, TCP/IP stack, device drivers, and power management, while offering a standard POSIX interface. For more information about the NuttX operating system, you can visit the Apache NuttX official website.
apps is the application library for the open-source real-time operating system (NuttX), containing a series of applications and utilities designed for NuttX RTOS. These applications and tools include shell command-line tools, file system tools, network tools, etc., which can help developers develop and debug embedded systems based on NuttX RTOS more conveniently.
This repository contains interface tests, specifically including core API tests for multimedia, file systems, memory management, and socket communication.
The openvela project consists of multiple independent repositories. Its licensing policy is as follows:
Basic Principles
The openvela project generally adopts the Apache 2.0 license. However, the specific license for each code repository is determined by the LICENSE file located in its respective root directory.
Vendor Repositories
Repositories under the vendor directory are provided by third parties (such as chip manufacturers). These repositories follow their own independent licenses (e.g., MIT, BSD, etc.) and are not governed by the openvela project’s Apache 2.0 license. Please ensure you review and comply with their respective terms before use.
Third-Party Dependencies
For information regarding third-party open source components referenced in the project code and their licenses, please refer to the Third-Party Open Source Software Notice file.
Community and Support
We welcome you to interact with and contribute to the openvela community through our various channels.
Technical Discussions and Contributions
Issues: If you have any questions, suggestions, or find any bugs, submit a new issue on the Issues page. Try to provide detailed information, so that we can understand and solve the problem faster.
Pull Requests: If you find an issue and have fixed it, you are welcome to submit a Pull Request. Please make sure to follow our Contribution Guide.
Discussions: If you have a broader topic or discussion, you can start a new discussion on the Discussions page.
WeChat Community
Welcome to the OpenVela community! Scan the QR codes below to follow our Official Account or add our assistant to join the group chat.
Official Account
Developer Group
Follow Us Get the latest updates and technical articles
openvela
openvela Open Source Project
[ English | 简体中文 ]
About openvela
openvela is an operating system specifically crafted for the AIoT industry, with a focus on being lightweight, standards-compliant, secure, and highly scalable. It has become the technology of choice for millions of IoT devices and AI gadgets, including smart watches, fitness bands, smart speakers, earbuds, smart appliances, and robotics.
The name “Vela” is originated from the Latin term for “sail,” which is also the name of the constellation resembling a sail in the southern sky. We aspire to partner with developers and set sail on a voyage through the AIoT landscape.
Technical Architecture
Kernel Layer
The kernel layer provides fundamental operating system functions, including task scheduling, inter-process communication (IPC), and file system management. It also supplies compact, efficient components such as device drivers, a lightweight TCP/IP protocol stack, and power management modules. This layer supports both homogeneous and heterogeneous multi-core architectures, enhancing performance support across diverse hardware platforms.
Service Framework Layer
The service framework layer is a general-purpose framework designed to extend system services. It includes connectivity subsystem, graphics subsystem, multimedia subsystem, security subsystem, and XPC cross-core communication capabilities. This layer provides flexible support for service expansion, serving as the essential foundation for system functional expansion.
Maintenance and Testing Tools
Maintenance and testing tools include common utilities and diagnostic frameworks. In addition to standard tools like Logger and Debugger, they feature the Emulator — a high-fidelity device simulator that supports full functional emulation, including CPU instruction-set simulation. The Emulator currently supports multiple product form factors, including smart panels, smartwatches, smart bands, and smart screen speakers. By leveraging the Emulator’s PC-based debugging tools, developers can perform application development and testing without physical devices, significantly reducing both development and debugging efforts.
Technical Advantages
Highly Scalable
openvela has been designed to be modular and scalable, allowing it to easily adapt to a wide range of IoT applications. It can fit in a small BLE module with 32KB RAM, and scale up to a powerful smart display device with 512MB RAM, highly scalable!
One-Stop Solution
Over the years, openvela has evolved into a powerful platform with comprehensive feature sets, making it a one-stop solution for various IoT applications. We consistently incorporate new functionalities to meet emerging needs. By leveraging openvela, manufacturers can significantly reduce their R&D costs and accelerate their product development cycles.
Mature Heterogeneous Computing Support
openvela offers top-of-the-line support for heterogeneous multi-core systems, featuring a seamless IPC mechanism between various processing units such as MCU, MPU, DSP, GPU, and NPU. Additionally, openvela provides an advanced RPC framework between openvela, Linux, and Android systems to enable hybrid OS leveraging strength from three systems.
Standard Compliant and High Portability
openvela Kernel is built upon Apache NuttX, which is often referred to as “tiny Linux”. With this foundation, openvela achieves a high degree of conformity with the POSIX standard. Our team has been continually enhancing its POSIX compatibility, which has now reached an impressive 89%. Because of this standards conformance, software developed under other standard OSs (such as Linux) can be easily ported to openvela with minimum effort.
Comprehensive Connectivity Suite
openvela offers broad protocol support, including Bluetooth BR/EDR/LE, LE Mesh, WiFi, Matter, IEEE802.15.4, and LTE Cat1, Ethernet, CAN/LIN, etc. Additionally, it seamlessly integrates with Xiaomi HyperConnect protocols.
Rich Developer Tools
openvela offers a comprehensive suite of developer tools, including system monitoring, performance analysis, debugger, trace, crash dump, and log analysis tools.
Hardware Support
What’s New
openvela Official Website Launched: openvela now has its own official website, providing developers with a more convenient channel for accessing project information, documentation, community updates, and more. Visit the openvela Official Website.
First openvela Officially Certified Development Board: The Gemini-S1 development board, independently developed by Runxinwei Intelligent Technology Co., Ltd., has become the first development board to pass the openvela official compatibility certification, marking a significant milestone in the openvela ecosystem.
Significant Hardware Ecosystem Expansion: Added support for Infineon AURIX™ TC4, Flagchip MCU, and the QEMU-R52 SIL platform. (View TC4 Guide / Flagchip Guide)
Enhanced Ubuntu Development Experience: The OpenVela VS Code plugin now fully supports the Ubuntu environment. Linux developers can enjoy a seamless, end-to-end workflow—from project creation and build to system debugging—significantly boosting development efficiency. Get started: VS Code Plugin Guide.
Version Strategy
We manage releases based on the
trunkbranch, using Tags to track release history. This ensures traceability and stability for production environments.Release Tags
Release tags are immutable markers created on the
trunkbranch. Each tag represents an officially released version of openvela.Released Versions
Below are the currently released stable versions and their change logs:
trunk-5.5: Please refer to the v5.5 Release Notes for detailed changes.
trunk-5.4: Please refer to the v5.4 Release Notes for detailed changes.
trunk-5.2: Please refer to the v5.2 Release Notes for detailed changes.
Hardware Adaptation Guide
To maximize efficiency and ensure code stability, we offer the following recommendations for developers performing hardware porting:
trunkbranch).devbranch is undergoing rapid iteration with frequent code updates. It may be subject to underlying interface changes or temporary instability. Therefore, it is NOT recommended as a baseline for hardware adaptation.Version Maintenance Strategy
openvela follows a strict version maintenance lifecycle:
trunk-5.2.1.Branch Strategy
openvela adopts a dual-branch model to balance system innovation and stability. Please select the appropriate branch according to your development needs.
dev (Development Branch)
Definition: This is the cutting-edge development branch of openvela, aggregating the latest features and bug fixes.
Status: The code updates frequently and remains in a state of continuous integration and rapid iteration. It may contain features not yet fully verified, so potential instability exists.
Target Audience:
trunk (Stable Trunk Branch)
devbranch are merged here only after they pass rigorous testing and verification.Quick start
Device Development
If you want to experience openvela, we provide a fully functional emulator that can be used without a hardware platform. For more information, refer to the following guide.
Quick Start (Ubuntu)
Quick App Development
Quick App Quick Start
List of Sub-repositories
appsis the application library for the open-source real-time operating system (NuttX), containing a series of applications and utilities designed for NuttX RTOS. These applications and tools include shell command-line tools, file system tools, network tools, etc., which can help developers develop and debug embedded systems based on NuttX RTOS more conveniently.Developer Documentation
Application Example Center
A collection of native and Quick App examples for developers to learn from.
Native Apps
Here are some typical native application examples demonstrating the usage of different modules and features.
To see the full list of native apps, please visit the Native App Examples Repository.
Quick Apps
More Quick App examples are continuously being added. To see all examples, please visit the Quick App Examples Repository.
Code contribution
Licensing
The openvela project consists of multiple independent repositories. Its licensing policy is as follows:
Basic Principles
The openvela project generally adopts the Apache 2.0 license. However, the specific license for each code repository is determined by the
LICENSEfile located in its respective root directory.Vendor Repositories
Repositories under the
vendordirectory are provided by third parties (such as chip manufacturers). These repositories follow their own independent licenses (e.g., MIT, BSD, etc.) and are not governed by the openvela project’s Apache 2.0 license. Please ensure you review and comply with their respective terms before use.Third-Party Dependencies
For information regarding third-party open source components referenced in the project code and their licenses, please refer to the Third-Party Open Source Software Notice file.
Community and Support
We welcome you to interact with and contribute to the openvela community through our various channels.
Technical Discussions and Contributions
WeChat Community
Welcome to the OpenVela community! Scan the QR codes below to follow our Official Account or add our assistant to join the group chat.
Get the latest updates and technical articles
Scan to add assistant