Several of the embedded talks at FOSDEM 2022 mention the Eclipse Oniro Project. I had never heard about that project from the Eclipse Foundation, so lets see how they describe it:
Oniro is an Eclipse Foundation project focused on the development of a distributed open source operating system for consumer devices, regardless of the brand, model, make.
Oniro is a compatible implementation for the global market of OpenHarmony, an open source operating system specified and hosted by the OpenAtom Foundation.
Designed with modularity in mind, Oniro offers greater levels of flexibility and application portability across the broad spectrum of consumer and IoT devices from tiny embedded sensors and actuators, to feature rich smart appliances and mobile companions.
As a distributed and reusable collection of open source building blocks, Oniro enables compatibility with other open source technologies and ecosystems. Through close collaboration with projects and foundations such as OpenHarmony from the OpenAtom Foundation, Yocto project and OpenChain from the Linux Foundation, Oniro helps build bridges rather than creating a digital divide.
If OpenHarmony rings a bell its because its the open-source version of Huaweis HarmonyOS operating system, and is now managed by the OpenAtom Foundation. The description confuses me even more, and Im still not sure what it is for, but member companies and organizations include Linaro, SECO embedded systems company, as well as lesser-known companies like Synesthesia, and of course Huawei. So lets check the projects resources if we can find more details.
First, its fairly new as the working group was only established on October 26th, 2021 after a year of work from members. Weve got more clarity with regards to the goals as well:
The mission of the Eclipse Oniro Top-Level Project is the design, development, production and maintenance of an open source software platform, having an operating system, an ADK/SDK, standard APIs and basic applications, like UI, as core elements, targeting different industries thanks to a next generation multi-kernel architecture, that simplifies the existing landscape of complex systems, and its deployment across a wide range of devices.
So basically I understand Oniro aims to provide a vendor-agnostic platform to develop software that runs on various operating systems and hardware in order to reduce fragmentation in the consumer and IoT device industry. I will not insert an xkcd meme here, but you know what I mean. Right now, Oniro relies on the Poky/Yocto Project build system and supports three operating systems with Linux, ZephyrOS, and FreeRTOS allowing it to be used in application processors and microcontrollers.
The documentation lists seven hardware platforms supported by Oniro projects:
The Eclipse Oniro Project also integrates its various components into a representative use-case called a Blueprint, and at the time of writing there are five Blueprints:
The FOSDEM 2022 talk GPIO across Linux and Zephyr kernels by Bernhard Rosenkrnzer will showcase the Door Lock Blueprint and show how its possible to share code between a system using Zephyr with a Cortex-M, and another Linux on a Cortex-A. This code reuse should be beneficial since a simple piece of code can be fully tested and work for multiple platforms / operating systems, instead of having two separate trees where, for instance, one bug may be fixed in a tree, but not in the other tree.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.