Skip to content

Update LeRobot submodule and add web UI for data collection #9

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 52 commits into from
May 27, 2025

Conversation

Woojin-Crive
Copy link
Member

@Woojin-Crive Woojin-Crive commented May 16, 2025

Description

Remove data_collector and policy_to_trajectory packages as their functionalities are now integrated into the updated LeRobot submodule. Additionally, add a web UI for visualizing image data.

…eir associated files and configurations. Update LeRobot submodule to the latest version.
@Copilot Copilot AI review requested due to automatic review settings May 16, 2025 01:42
Copy link

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This pull request updates the LeRobot submodule by removing the now-unused policy_to_trajectory and data_collector packages along with their associated configurations, launch files, and documentation. Key changes include the removal of all policy_to_trajectory files, the removal of all data_collector files, and an update to the lerobot submodule commit.

Reviewed Changes

Copilot reviewed 29 out of 29 changed files in this pull request and generated no comments.

Show a summary per file
File Description
policy_to_trajectory/launch/policy_to_trajectory.launch.py Removed launch configuration for policy_to_trajectory
policy_to_trajectory/config/joint_order_omx.yaml Removed configuration file for policy_to_trajectory
policy_to_trajectory/config/joint_order.yaml Removed configuration file for policy_to_trajectory
policy_to_trajectory/CHANGELOG.rst Removed changelog for policy_to_trajectory
lerobot Updated subproject commit for LeRobot submodule
data_collector/setup.py Removed setup script for data_collector package
data_collector/setup.cfg Removed configuration for data_collector package
data_collector/package.xml Removed package definition for data_collector
data_collector/launch/data_collector.launch.py Removed launch configuration for data_collector
data_collector/data_collector/trajectory_stamper_inspire.py Removed script for trajectory stamper inspire in data_collector
data_collector/data_collector/trajectory_stamper.py Removed trajectory stamper script for data_collector
data_collector/data_collector/topic_to_data_omx.py Removed data collection script for OMX mode
data_collector/data_collector/topic_to_data_inspire.py Removed data collection script for INSPIRE mode
data_collector/data_collector/topic_to_data.py Removed primary data collection script for data_collector
data_collector/config/joint_order_omx.yaml Removed configuration file for data_collector's OMX mode
data_collector/config/joint_order_inspire.yaml Removed configuration file for data_collector's INSPIRE mode
data_collector/config/joint_order.yaml Removed general configuration file for data_collector
data_collector/CHANGELOG.rst Removed changelog for data_collector

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hello @Woojin-Crive, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

Summary of Changes

Hello team, gemini-code-assist here to provide a summary of this pull request. The primary goal of this PR, as indicated by the title and description, is to update the LeRobot submodule to its latest version. Concurrently, it removes the data_collector and policy_to_trajectory ROS 2 packages, suggesting that their functionality might now be handled or superseded by the updated LeRobot submodule itself.

Highlights

  • LeRobot Submodule Update: The LeRobot Git submodule has been updated to the latest commit (55807df61a368de7b525bb8017c37ad0a47cef0d). This brings in the newest features and changes from the LeRobot repository.
  • Removal of data_collector Package: The entire data_collector ROS 2 package has been removed. This includes its source files, configuration files (joint_order*.yaml), launch file, package manifest (package.xml), resource file, and setup script. This package was previously responsible for collecting and synchronizing joint state and trajectory data.
  • Removal of policy_to_trajectory Package: The entire policy_to_trajectory ROS 2 package has also been removed. This includes its source files, configuration files (joint_order*.yaml), launch file, package manifest (package.xml), resource file, and setup script. This package was previously used to convert predicted policy actions into joint trajectory commands.

Changelog

Click here to see the changelog
  • data_collector (Removed Package)
    • Removed CHANGELOG.rst
    • Removed config/joint_order_inspire.yaml
    • Removed config/joint_order.yaml
    • Removed config/joint_order_omx.yaml
    • Removed data_collector/topic_to_data_inspire.py
    • Removed data_collector/topic_to_data.py
    • Removed data_collector/topic_to_data_omx.py
    • Removed data_collector/trajectory_stamper.py
    • Removed data_collector/trajectory_stamper_inspire.py
    • Removed launch/data_collector.launch.py
    • Removed package.xml
    • Removed resource/data_collector
    • Removed setup.py
  • lerobot
    • Updated submodule from commit aa9f452ab65c546b1edd217545f74516cd4d95fe to 55807df61a368de7b525bb8017c37ad0a47cef0d.
  • policy_to_trajectory (Removed Package)
    • Removed CHANGELOG.rst
    • Removed config/joint_order_inspire.yaml
    • Removed config/joint_order.yaml
    • Removed config/joint_order_omx.yaml
    • Removed launch/policy_to_trajectory.launch.py
    • Removed package.xml
    • Removed resource/policy_to_trajectory
    • Removed policy_to_trajectory/action_to_trajectory.py
    • Removed policy_to_trajectory/action_to_trajectory_omx.py
    • Removed policy_to_trajectory/topic_to_observation.py
    • Removed policy_to_trajectory/topic_to_observation_omx.py
    • Removed setup.py
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in issue comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist is currently in preview and may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments to provide feedback.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.


Submodule updated,
Old packages now are gone,
New code takes its place.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the lerobot submodule to a new version and removes the data_collector and policy_to_trajectory ROS packages. The removal of these packages is extensive, involving all their constituent files (Python scripts, launch files, configuration files, package manifests, etc.).

The primary concern with this PR is ensuring that the functionalities provided by the removed packages are now adequately covered, presumably by the updated lerobot submodule, to prevent breaking existing components like physical_ai_manager. Specifically, the generation of timestamped topics, which physical_ai_manager subscribes to, needs to be verified.

Summary of Findings

  • Potential Broken Dependencies due to Package Removal: The data_collector package, which included trajectory_stamper.py, was responsible for generating timestamped topics (e.g., /leader/left_arm_with_timestamp, /leader/right_arm_with_timestamp). The physical_ai_manager node subscribes to these topics. With the removal of data_collector, it's critical to verify how these topics are now provided to avoid breaking physical_ai_manager. It's presumed the updated lerobot submodule handles this, but confirmation is essential.
  • Verification of Functionality Migration to LeRobot: The data_collector and policy_to_trajectory packages contained various nodes for data handling, synchronization, and action conversion. It's important to confirm that all necessary functionalities from these removed packages have been successfully migrated to the updated lerobot submodule or are otherwise accounted for.
  • Completeness of Removals: The PR successfully removes numerous files associated with the data_collector and policy_to_trajectory packages. This is a good step if these packages are indeed superseded. The main concern remains the functional replacement by the lerobot submodule.

Merge Readiness

This pull request involves significant changes by removing two packages and updating a core submodule. Due to the critical nature of potential broken dependencies, particularly the provision of essential topics for physical_ai_manager, I recommend that changes be made to address these concerns. Specifically, clarification and confirmation are needed regarding how the updated lerobot submodule handles the functionalities of the removed packages.

Therefore, I advise against merging this PR until the critical questions raised in the review comment are fully addressed and it's confirmed that all system integrations remain functional. As a reviewer, I am not authorized to approve pull requests; please ensure further review and approval from authorized maintainers after addressing the feedback.

Seongoo and others added 2 commits May 19, 2025 14:11
Signed-off-by: Seongwoo Kim <kimsw@robotis.com>
@Woojin-Crive Woojin-Crive requested a review from Seongoo May 19, 2025 11:40
Copy link
Member

@DongyunRobotis DongyunRobotis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The version information needs to be updated for the entire package. However, the version information in physical_ai_manager has not been updated. Please check.

@robotpilot robotpilot added the enhancement New feature or request label May 22, 2025
@github-project-automation github-project-automation bot moved this to 🌱 Todo in Platform May 22, 2025
@robotpilot robotpilot moved this from 🌱 Todo to 📝 Pull Request in Platform May 22, 2025
Seongoo and others added 13 commits May 22, 2025 18:11
Signed-off-by: Seongwoo Kim <kimsw@robotis.com>
Signed-off-by: Seongwoo Kim <kimsw@robotis.com>
Signed-off-by: Dongyun Kim <kdy@robotis.com>
Signed-off-by: Dongyun Kim <kdy@robotis.com>
Signed-off-by: ola31 <abrahamola80@gmail.com>
Signed-off-by: ola31 <abrahamola80@gmail.com>
Signed-off-by: ola31 <abrahamola80@gmail.com>
Signed-off-by: ola31 <abrahamola80@gmail.com>
Signed-off-by: ola31 <abrahamola80@gmail.com>
Signed-off-by: ola31 <abrahamola80@gmail.com>
Signed-off-by: Seongwoo Kim <kimsw@robotis.com>
Signed-off-by: Seongwoo Kim <kimsw@robotis.com>
Signed-off-by: Seongwoo Kim <kimsw@robotis.com>
Seongoo added 9 commits May 27, 2025 08:24
Signed-off-by: Seongwoo Kim <kimsw@robotis.com>
Signed-off-by: Seongwoo Kim <kimsw@robotis.com>
Signed-off-by: Seongwoo Kim <kimsw@robotis.com>
Signed-off-by: Seongwoo Kim <kimsw@robotis.com>
Signed-off-by: Seongwoo Kim <kimsw@robotis.com>
Signed-off-by: Seongwoo Kim <kimsw@robotis.com>
Signed-off-by: Seongwoo Kim <kimsw@robotis.com>
Signed-off-by: Seongwoo Kim <kimsw@robotis.com>
Signed-off-by: Seongwoo Kim <kimsw@robotis.com>
@Seongoo Seongoo requested a review from robotpilot May 27, 2025 00:20
Signed-off-by: ola31 <abrahamola80@gmail.com>
Seongoo and others added 7 commits May 27, 2025 10:51
Signed-off-by: Seongwoo Kim <kimsw@robotis.com>
Signed-off-by: ola31 <abrahamola80@gmail.com>
Signed-off-by: ola31 <abrahamola80@gmail.com>
Signed-off-by: ola31 <abrahamola80@gmail.com>
Signed-off-by: ola31 <abrahamola80@gmail.com>
Signed-off-by: ola31 <abrahamola80@gmail.com>
Copy link
Member

@robotpilot robotpilot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, please rewrite the description tag.

ola31 added 2 commits May 27, 2025 13:29
Signed-off-by: ola31 <abrahamola80@gmail.com>
Signed-off-by: ola31 <abrahamola80@gmail.com>
Copy link
Member

@robotpilot robotpilot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@ola31 ola31 self-requested a review May 27, 2025 04:53
Copy link
Member

@ola31 ola31 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@Seongoo Seongoo assigned Seongoo and unassigned Woojin-Crive May 27, 2025
@Seongoo Seongoo merged commit 811a58c into main May 27, 2025
6 checks passed
@Seongoo Seongoo deleted the feature-rivision-2 branch May 27, 2025 04:55
@github-project-automation github-project-automation bot moved this from 📝 Pull Request to 🚩Done in Platform May 27, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

5 participants