-
Notifications
You must be signed in to change notification settings - Fork 107
GSoC_2025
Dora is an datflow based low-latency middleware for building robot applcation. It supports multiple programming languages such as Python, Rust, C, and C++. It provides nodes and operators that developers can directly use in the YAML data flow. This reduces the writing of repetitive boilerplate code, facilitating the rapid prototyping of robots.
This is a list of projects of suggested for GSoC 2025.
Description The primary objective of this project is to create an end to end tutorials with affordable robot kit, specifically designed around the Dora platform, and utilize it to establish a comprehensive robot dataset collection system. This system aims to gather robot data related to the robot's operation, which can be used for various applications such as robotics research, algorithm development, and machine - learning model training.
Expected Outcomes
-
The robot will be constructed using 3D - printed components made from low - cost materials. This approach not only reduces the overall cost of the robot but also allows for easy customization and modification. The use of 3D printing enables the creation of complex geometries tailored to the specific requirements of the data collection tasks. This can be done with help from other open source projects such as Koch robot arms.
-
A Mojoco robot model will be created based on the robot arm. Mojoco is a high - performance physics simulation engine that provides accurate and efficient simulations. By creating a Mojoco model of the robot, we can collect data from the simulated model. This simulated data can serve as a baseline or supplement to the data collected from the real robot, and can also be used for preliminary testing and algorithm development in a controlled virtual environment.
-
The system will be programmed to collect a variety of data from the real robot, including the robot's joint angles, rotational speeds, and pose information. The data format will follow the ARIO unified data format.
-
Additionally, the code will be integrated with the Mojoco simulation environment to ensure seamless data collection from simulated robots.
-
Create Dora nodes with python to collect the data including the real robot and the Mojoco simulation, and the data storage and analysis modules. It will also enable real - time monitoring and control of the data collection process.
Resources.
https://imaei.github.io/project_pages/ario/
Skills required/preferred. Python, CAD, DORA
Difficulty rating. medium
Expected size: 350h
Mentors: [email protected], [email protected]
Description The Dora-LeRobot project is a fully integrated Dora pipeline designed for manipulating robots, cameras, and all hardware compatible with LeRobot. Its primary goal is to lower the barrier to entry in robotics, enabling everyone to contribute and benefit from shared datasets and pretrained models.
Recently, support for the SO-ARM100, a low-cost robotic arm, was added to Dora through its driver. However, there is currently no end-to-end tutorial available for using this arm. Tutorials and documentation are critical for making the project more accessible to new users.
The goal of this project is to improve the Python-based tutorial for using the SO-ARM100 robotic arm with Dora-LeRobot, enabling users to easily get started and contribute to the ecosystem.
Expected Outcomes
- Fix issues and add missing code so that Dora-LeRobot can be run with SO-ARM100 successfully.
- Write tutorials with documentation how to setup SO-ARM100 arm, use remote control to collect data, train policy and run inference.
- Implement code from basic(calibration, control arm) to advanced (training and inference) topics.
- Create video recording of the tutorials.
- The Dora framework will be used to manage the data flow between different components of the system
Resources.
https://github.com/dora-rs/dora-lerobot/tree/main
https://github.com/huggingface/lerobot
Skills required/preferred. Python, Rust, DORA
Difficulty rating. medium
Expected size: 350h
Mentors: [email protected], [email protected]
Description Dora is an open source project for building robot applcation. t supports multiple programming languages such as Python, Rust, C, and C++. It provides ready - made nodes and operators that developers can directly use in the YAML data flow. Current debug messages can be opened from logs files. However it will be very helpful to use real time debug message. Rerun can be used as a debugging tool for dora-rs nodes, and it is possible to display debug messages in the Rerun window in real time, similar to how ROS debug messages are printed in the console. Rerun is designed for visualizing data streams, including logs, and it can be configured to display textual debug messages alongside other visualizations.
Expected Outcomes
- Improve dora-rerun node to allow rerun viewer to collect each node real time debug message with python or rust.
- Display sensor data processing(e.g., LiDAR, camera feeds) python or Rust example code and documentation to show how to use debug messages.
- Visualize robot trajectories, arm poses, or other relevant data in the same rerun window and how to setup with detailed tutorials.
- The Dora framework will be used to manage the data flow between different components of the system
Resources.
https://github.com/dora-rs/dora/tree/main/node-hub/dora-rerun
Skills required/preferred. Rust, DORA
Difficulty rating. medium
Expected size: 175h
Mentors: [email protected], [email protected]
Description This project aims to extend Dora’s capabilities by adding robust support for Universal Robots’ UR5 collaborative robots. The focus is on building a Rust Dora library that provides efficient, reliable control over UR5 cobots, facilitating seamless integration with real-time systems and virtual simulation environments.
Expected Outcomes
- Rust Library for UR5 Control: A well-documented, efficient, and effective Rust library that interfaces with UR5 cobots through Dora.
- URSim Integration: The project will include an implementation that demonstrates control of the UR5 robot model and its gripper within the URSim virtual machine environment.
- Example Porting: A Rust version of the test_move example (originally in Python) will be developed, providing a concrete demonstration of how to use the library with Dora.
- Documentation & Tutorials: Comprehensive documentation and usage tutorials that guide developers on UR5 support within their robotics projects using Dora.
Resources.
(https://github.com/UniversalRobots/Universal_Robots_ROS_Driver/blob/master/ur_robot_driver/scripts/test_move)
https://github.com/dora-rs/libfranka-rs. for reference on interfacing with robotics hardware using Rust
Skills required/preferred. Rust,C++, Python, DORA
Difficulty rating. hard
Expected size: 350h
Mentors: [email protected], [email protected]