EOS is an embodied intelligence operating system release based on the dual-kernel real-time kernel RROS. It aims to build an easy-to-use platform to collect all the software needed to create an intelligent robot application. Specifically, there are three important steps:
- Build a robot package manager to collect related libraries/framworks/algorithms
- Improve the RROS ability in the robot development
- Optimize the package performance in the package platform
[Instructions on how to use the system go here.]
The EOS user software repository is currently built using the Copr project. If you are already familiar with using Copr, feel free to skip this section and start using the EOS user repository directly.
The EOS user repository is built on the Fedora Copr project. You can refer to the official Copr documentation for more detailed guidance on using Copr. First, register for a Fedora account via Fedora Accounts (fedoraproject.org). Then, visit the user repository homepage and log in using your Fedora ID.
After successfully logging in, go to your personal dashboard:
Click the New Project
button to create a new project. Enter the project name, select the desired build environment (Chroots) for the package, and configure other optional settings as needed.
After completing the configuration, click Create
to create the project.
On the project homepage, select Builds
and click New Build
.
Here, we will build the package by directly uploading the srpm
file. Under the Upload
section, click the Browse
button to upload your local srpm
file. If you're unfamiliar with how to build an srpm
package, you can refer to this guide for more details.
Select the local srpm
file and click Open
to upload.
Finally, click Build
to start building the package.
Build successful.
Click on the corresponding Build ID
to view the build results.
Copr also supports various other methods to build your package. For more details, please refer to the official documentation.
First, return to the project homepage and obtain the repository configuration file for the corresponding version. Click on the version number.
Copy the link.
Navigate to the /etc/yum/repos.d/
directory and download the corresponding configuration.
You can then download the package.
Currently, we offer a COPR platform for building RPM packages. Support for Deb and other package formats will be added in the future. To install RPM packages, you need to add the EOS repository to your system. Here's an example for Fedora:
sudo wget -O /etc/yum.repos.d/stevenfreeto-hello-eos-fedora-39.repo http://eos.eaishow.com:9250/coprs/stevenfreeto/hello-eos/repo/fedora-39/stevenfreeto-hello-eos-fedora-39.repo
sudo dnf makecache
# sudo yum makecache # or if you use yum
Additionally, you need to add the EOS rosdep to your ROS environment. Edit the rosdep configuration file at /etc/ros/rosdep/sources.list.d/20-default.list
and append the following line:
yaml https://raw.githubusercontent.com/EOS-OS/EOS/main/package-manager/rosdep/base.yaml
After these steps, you can use ROS packages that depend on EOS community packages.
At the EOS Zulip or email eosrros AT gmail.com
.
We are a group of robotic developers from research institutes, schools, and robotics enterprises.
We hope EOS
can unite the strengths of different aspects to accelerate robot development and shorten the communication path between developers and end users.
- Estabiliing a package manager tool for the robot development
- A package image source
- A client for package management
- Kernel Layer: Integrate core system libraries to ensure system stability and compatibility.
- A platform based on the
Copr
to collect packages
- A platform based on the
- EI Translator (Embodied Intelligence Translator): Convert kernel-layer libraries into internal libraries for the middleware layer, facilitating seamless integration across multiple system layers, including ROS/Dart.
- Middleware Layer:
- ROS: Provide middleware support for the Robot Operating System, enhancing automation and robotics development capabilities.
- Dora: Offer advanced middleware support for distributed systems, increasing system scalability and flexibility.
- Kernel Layer: Integrate core system libraries to ensure system stability and compatibility.
- Use RROS kernel to enhance the realtime ability of robot development
- Realtime ability
- Adapt ROS
- Adapt Dora
- Adapt EtherCAT protocol
- Adaptation and optimization for domestic Chips
- x86 Series
- ARM Series
- LoongArch (Works on the single CPU core)
- RISC-V
- Realtime ability
- Development of upper-layer applications based on the RROS kernel
- Provide a rich API to support application developers in fully leveraging the powerful features of the RROS kernel, accelerating application development and deployment.
- Accelerate the applications with the RROS APIs.