DEV Community

RoboCoach
RoboCoach

Posted on • Updated on

ROScribe

Create ROS packages using LLMs

Learning ROS (Robot Operating System) may prove to be challenging for robotic enthusiasts, college students, or professional engineers who are using it for the first time. Sometimes this skill barrier forces them to give up on ROS altogether and opt out for non-standard options. ROScribe eliminates the skill barrier for beginners, and saves time and hassle for skilled engineers.

ROScribe combines the power and flexibility of large language models (LLMs) with prompt tuning techniques to capture the details of your robotic design and to automatically create an entire ROS package for your project.

Inspired by GPT Synthesizer, ROScribe builds an entire ROS package through a series of specification steps that identify the package elements in a top-down approach. In particular, ROScribe helps you with the following steps:

  1. Creating a list of ROS nodes and topics, based on your application and deployment (e.g. simulation vs. real-world)
  2. Visualizing your project in an RQT-style graph
  3. Generating code for each ROS node
  4. Writing launch file and installation scripts

If you are new to ROS, ROScribe will be your robot(ics) mentor 🤖️

If you are a seasoned ROS user, ROScribe can help with creating a blueprint for your ROS package 📦️

For further detail of how to install and use ROScribe, please refer to our Github and watch our demo:

ROScribe open source repository
TurtleSim demo

Roadmap

ROScribe v0.0.2 only supports ROS1 with Python code generation. We plan to add the following features in the upcoming releases:

  1. ROS2 & ROS-Industrial support
  2. C++ code generation
  3. ROS1 to ROS2 automated codebase migration
  4. Verification of an already existing codebase
  5. Graphic User Interface
  6. Enabling and integrating other robotic tools

Call for contributor

ROScribe is a free and open source software. We encourage all of you to try it out and let us know what you think. We have a lot of plans for this project and we intend to support and maintain it regularly. we welcome all robotics enthusiasts to contribute to ROScribe. During each release, we will announce the list of new contributors.

Top comments (2)

Collapse
 
brabiei21 profile image
Behrad Rabiei

This project is amazing. I found it very difficult to get started with ROS with I first started robotics and having this tool would have been so helpful!

Collapse
 
robocoach profile image
RoboCoach

Thank you. Hopefully this tool will help many more students and engineers.