Skip to main content

🛠️ Contributing to LIMO Cobot

We welcome contributions from developers, researchers, and robotics enthusiasts who want to improve the LIMO Pro + MyCobot + YOLO system.
This section explains how to add new features, submit code, and collaborate effectively.


🚀 How to Contribute New Features​

  1. Fork the Repository
    Click Fork on GitHub to create your copy.

  2. Clone Your Fork

    git clone https://github.com/krish-rRay23/LIMO_COBOT_PROJECT
    cd LIMO_COBOT_PROJECT
  3. Create a Feature Branch

    git checkout -b feature/my-new-feature
  4. Develop in an External Workspace
    Never modify the robot's source workspace directly — always use an external colcon workspace.

  5. Follow Project Structure

    • Nodes in dedicated packages (object_detector, nav_handler, mycobot_arm, etc.)
    • Launch files in launch/ with proper TimerAction sequencing.
    • Configs in config/ (maps, nav2_params.yaml, YOLO settings).
    • Avoid hardcoded paths — use ROS2 parameters instead.

📤 Code Submission Process​

  1. Push your feature branch:

    git push origin feature/my-new-feature
  2. Open a Pull Request (PR) on GitHub:

    • Describe what you changed and why.
    • Reference any related issues.
    • Include test logs or screenshots.

🔍 Review Procedures​

All contributions are reviewed for:

  • Code Quality: Follows PEP8 for Python, uses meaningful variable names.
  • Safety: No unsafe robot motions, respects e-stop behavior.
  • Modularity: No "god nodes" — separate logic into focused packages.
  • Logging & Feedback: Use self.get_logger() for debug info, and say() for user feedback where relevant.
  • Performance: No unnecessary CPU/GPU load (e.g., avoid overly high YOLO input resolution).

📜 Community Guidelines​

We value:
  • Clean, well-documented code.
  • Respect for other contributors' time.
  • Testing before submission.
  • Clear commit messages (feat: add drop node sequence improvements).
  • Avoiding direct commits to main branch.

💬 Need Help While Contributing?​

📖 Read Next: Code Style Guidelines


Next: Code Style Guidelines