GSoC 2026

Robotics applications are typically distributed, made up of a collection of concurrent asynchronous components which communicate using some middleware (ROS messages, DDS…). Building robotics applications is a complex task. Integrating existing nodes or libraries that provide already solved functionality, and using several tools may increase the software robustness and shorten the development time. JdeRobot provides several tools, libraries and reusable nodes. They have been written in C++, Python or JavaScript. They are ROS-friendly and full compatible with ROS2-Humble (and Gazebo Harmonic).

Our community mainly works on three development areas:

  • Education in Robotics. RoboticsAcademy is our main project. It is a ROS-based framework to learn robotics and computer vision with drones, autonomous cars…. It is a collection of Python programmed exercises and challenges for engineering students.

  • Robot Programming Tools. For instance, BT-Studio, for robot programming with Behavior Trees; VisualCircuit for robot programming with connected blocks, as in electronic circuits, in a visual way.

  • Machine Learning in Robotics. For instance, the BehaviorMetrics tool for assessment of neural networks in end-to-end autonomous driving. Another example is PerceptionMetrics tool for unified evaluation of 2D and 3D perception models.

Ideas list

This open source organization welcomes contributors in these topics:

Project #1: PerceptionMetrics: GUI extension and support for standard datasets and models

Brief explanation: PerceptionMetrics is a toolkit for evaluating perception models across frameworks and datasets. Past GSoC projects (Vinay Sharma, 2017, Jeevan Kumar, 2019) contributed to its first stable release, published in Sensors (Paniego et al., 2022). Recently, the tool has been revamped to support LiDAR, image segmentation, and object detection (Sakhineti Praveena, 2025).

Moving beyond our current focus on off-road navigation, this project aims to scale PerceptionMetrics for industry-standard benchmarks. The main goals are:

  • Exploring core segmentation/detection datasets in the industry for image and LiDAR (e.g., SemanticKITTI, Cityscapes), prioritizing, and adding support for them.
  • Extending the GUI to support image and LiDAR segmentation visualization (currently limited to object detection).
  • Generating comprehensive tutorials and documentation for different use cases, models, and data formats.
  • Improving the robustness of the project through an improved test suite.
  • Skills required/preferred: Python, PyTorch, Deep Learning, Streamlit
  • Difficulty rating: Medium
  • Expected results: Support for new datasets, GUI extension for image and LiDAR segmentation, and comprehensive technical documentation.
  • Expected size: Long (~350h)
  • Mentors: David Pascual Hernández (d.pascualhe AT gmail.com), Sakhineti Praveena (sakhinetipraveena AT gmail.com)

Project #2: Robotics Academy: extend C++ support for more exercises

Brief explanation: Robotics-Academy is a framework for learning robotics and computer vision. It consists of a collection of robot programming exercises. The students have to code in Python the behavior of a given (either simulated or real) robot to fit some task related to robotics or computer vision. It uses standard middleware and libraries such as ROS 2 or OpenCV.

Nowadays, Robotics Academy offers the student up to 26 exercises. All of them come ready to use in the RoboticsAcademy docker image (RADI). The only requirement for the students its to download the docker image, all the dependencies are installed inside the RADI.

Currently, exercises can be solved using Python with our Hardware Abstraction Layer (HAL) or directly using ROS 2 interfaces (topics and services). Right now there are 2 exercises that also support C++: follow line and vacuum cleaner. The goal of this project would be to expand the selection of exercises that support the C++ language.

  • Skills required/preferred: Python, C++, ROS2
  • Difficulty rating: Medium
  • Expected results: Extend C++ support for more exercises providing a simplified API and direct ROS
  • Expected size: 90h
  • Mentors: Javier Izquierdo Hernández (javizqh AT pm.me), Nikhil Gupta

Project #3: Robotics Academy: New power tower inspection using deep learning

Brief explanation: The goal of this project is to develop a new deep learning based challenge in RoboticsAcademy for power tower inspection. In addition to the existing classical power inspection exercise, this project will introduce a new challenge where defect detection and classification are performed using a deep learning model trained and provided by the student, instead of relying on traditional image processing techniques. The expected work for this project includes:

  • Create new exercise, following the example of previous deep learning based exercises such as end-to-end visual control.
  • Extend or create simulated power tower environments and record and label datasets for students to train their models on.
  • Build comprehensive documentation, upload datasets to accessible repositories, and provide Jupyter Notebooks or similar materials to guide students.
  • Extend the Simple API used by deep learning exercises to define a structured way of setting results such as classification logits, bounding boxes for detection, and confidence scores.
  • Skills required/preferred: Python, PyTorch, Deep Learning, ROS2, Gazebo
  • Difficulty rating: Medium
  • Expected results: New deep learning based power tower inspection exercise with comprehensive docs and learning materials.
  • Expected size: Medium (~175h)
  • Mentors: David Pascual Hernández (d.pascualhe AT gmail.com), Md. Shariar Kabir (skabircp08 AT gmail.com), Luis Roberto Morales (lrmoralesiglesias AT gmail.com)

Project #4: RoboticsAcademy: drone-cat-mouse chase exercise, two controlled robots at the same time

Brief explanation: The goal of this project is to recover the drone-cat-mouse chase challenge in the new RoboticsAcademy architecture. This exercise requires the support for two robotics applications connected to the corresponding drones, one connected to the mouse-drone (which may fly autonomously following a 3D position pattern) and the second connected to the cat-drone. The RoboticsAcademy user has to program the cat-drone so it successfully chases the drone-mouse. This challenge should work in Gazebo Harmonic and use Aerostack2 middleware for drones, as all current available drone exercises at RoboticsAcademy. Additional exercises involving two concurrent agents in the same robotic world may also be designed using this plumbing.

  • Skills required/preferred: Python, Gazebo, Linux processes
  • Difficulty rating: Medium
  • Expected results: A new drone-cat-mouse chase exercise, new internal architecture supporting two simultanous agents in RoboticsAcademy challenges and comprehensive technical documentation.
  • Expected size: Long (~350h)
  • Mentors: José María Cañas (josemaria.plaza AT gmail.com) and Prajyot (prajyotj04 AT gmail.com)

Project #5: Robotics Academy: using the Open3DEngine as robotics simulator

Brief explanation: Open 3D Engine (O3DE) is an Apache 2.0-licensed multi-platform 3D engine that enables developers and content creators to build AAA games, cinema-quality 3D worlds, and high-fidelity simulations. It supports also simulation of most common robot sensors and actuators. The idea of this project is to integrate Open3DEngine into the RoboticsAcademy framework, with at least one exercise using it instead of Gazebo.

  • Skills required/preferred: C++ programming, ROS
  • Difficulty rating: Medium
  • Expected results: A new robotics exercise in RoboticsAcademy using the Open3DEngine
  • Expected size: 175h
  • Repository Link - Open 3D Engine, RoboticsAcademy, RoboticsInfrastructure
  • Mentors: José M. Cañas (josemaria.plaza AT gmail.com) and Pedro Arias (pedro.ariasp AT upm.es)

Project #6: VisualCircuit: Improving Functionality & Expanding the Block Library

Brief explanation: VisualCircuit allows users to program robotic intelligence using a visual language similar to electronic circuits, simplifying the creation of code for robotics applications such as Deep Learning, ROS, and more.

Over the past few years, we have focused on making VisualCircuit more robust by resolving Nested Blocks (multi-level blocks) with the Block Composition feature, developing a working prototype for dockerized execution of robotics applications directly from the browser, migrating the old POSIX IPC implementation to a cross-platform compatible Python Shared Memory implementation, and more.

Now, for GSoC 2025, the goal of the project is to further refine VisualCircuit by improving Shared Memory, Block Composition, and other features, developing more real-world robotics applications utilizing the latest functionalities of VC, expanding the block library to cater to a larger audience, and enhancing automated testing. Additionally, we aim to address other issues such as implementing Undo and Redo functionality, adding more keyboard shortcuts for faster circuit creation, and making various other improvements. You can read further about the tool on the website.

  • Skills required/preferred: ROS2, Gazebo, Python, TypeScript
  • Difficulty rating: Medium
  • Expected results: Expanding Block library for VisualCircuit, improving automated testing using GitHub Actions and creating real world robotics applications developed with latest functionalities of VC and resolving other major issues.
  • Expected size: 175h
  • Mentors: Toshan Luktuke (toshan1603 AT gmail.com) and Pankaj Borade (borade.pankaj825 AT gmail.com).

Project #7: Robotics Academy: Exploring optimization strategies for RoboticsBackend container

Brief explanation: Our Robotics Academy platform relies on a containerized environment that encapsulates robotics middleware, simulators, libraries, and the application management stack: the RoboticsBackend. This approach significantly lowers the technical entry barrier for students, allowing them to start learning robotics without dealing with complex environment setup. However, the large number of coexisting dependencies causes the container image to grow substantially in size, negatively affecting maintainability and increasing download times for first time users.

This project has a twofold objective. First, it aims to identify bottlenecks in the current container build and propose concrete strategies to reduce image size and build time. Potential approaches include layer optimization, dependency pruning, replacing heavy libraries such as OMPL when viable, and providing minimal installation variants for components like Aerostack2. Second, the project will explore alternative container technologies, such as Podman, as a replacement for Docker in the build pipeline. Podman offers a daemonless and rootless execution model while maintaining compatibility with existing container workflows, potentially improving security, portability, and maintainability.

  • Skills required/preferred: Docker, Linux fundamentals, familiarity with common robotic software stack
  • Difficulty rating: Medium
  • Expected results: An optimized RoboticsBackend and a feasibility study of migration to Podman
  • Expected size: 175h
  • Mentors: Nikhil Gupta and Miguel Fernández

Application instructions for GSoC-2026

Accepted mentoring organizations for GSoC 2026 have not been announced yet. In the meantime, we invite you to explore our list of tentative projects above and begin contributing to the organization. If you are interested in our flagship project, RoboticsAcademy, please visit this GitHub Discussion thread for guidance on how to get started.

Previous GSoC students

  • Ashish Ramesh (GSoC 2025) Robotics-Academy: support for solutions directly using ROS2 topics
  • Abdallah Ibrahim Ismail (GSoC 2025) Robotics-Academy: CI & Testing
  • Md. Shariar Kabir (GSoC 2025) Robotics-Academy: new exercise on End-to-End Visual Control of an Autonomous Vehicle using DeepLearning
  • Nikhil Gupta (GSoC 2025) Robotics Academy: improvement of Gazebo scenarios and robot models
  • Shu Xiao (GSoC 2025) Robotics Academy: improvement of industrial robotics exercises with MoveIt2 and ROS2
  • Javier Izquierdo (GSoC 2025) BT-Studio: a tool for programming robots with Behavior Trees
  • Sakhineti Praveena (GSoC 2025) Extend DetectionMetrics: GUI, CI Workflow, and Object Detection
  • Prajyot Jadhav (GSoC-2024) Robotics-Academy: migration to Gazebo Fortress
  • Mihir Gore (GSoC-2024) Robotics-Academy: improve Deep Learning based exercises
  • Pankaj Borade (GSoC-2024) VisualCircuit: block library
  • Óscar Martínez (GSoC-2024) BT-Studio: a tool for programming robots with Behavior Trees
  • Zebin Huang (GSoC-2024) End-to-end autonomous vehicle driving based on text-based instructions: research project regarding Autonomous Driving + LLMs
  • Pawan Wadhwani (GSoC-2023) Robotics Academy: migration to ROS2 Humble
  • Meiqi Zhao (GSoC 2023) Obstacle Avoidance for Autonomous Driving in CARLA Using Segmentation Deep Learning Models
  • Siddheshsingh Tanwar (GSoC 2023) Dockerization of Visual Circuit
  • Prakhar Bansal (GSoC 2023) RoboticsAcademy: Cross-Platform Desktop Application using ElectronJS
  • Apoorv Garg (GSoC-2022) Improvement of Web Templates of Robotics Academy exercises
  • Toshan Luktuke (GSoC-2022) Improvement of VisualCircuit web service
  • Nikhil Paliwal(GSoC-2022) Optimization of Deep Learning models for autonomous driving
  • Akshay Narisetti(GSoC-2022) Robotics Academy: improvement of autonomous driving exercises
  • Prakarsh Kaushik(GSoC-2022) Robotics Academy: consolidation of drone based exercises
  • Bhavesh Misra (GSoC-2022) Robotics Academy: improve Deep Learning based Human Detection exercise
  • Suhas Gopal (GSoC-2021) Shifting VisualCircuit to a web server
  • Utkarsh Mishra (GSoC-2021) Autonomous Driving drone with Gazebo using Deep Learning techniques
  • Siddharth Saha (GSoC-2021) Robotics Academy: multirobot version of the Amazon warehouse exercise in ROS2
  • Shashwat Dalakoti (GSoC-2021) Robotics-Academy: exercise using Deep Learning for Visual Detection
  • Arkajyoti Basak (GSoC-2021) Robotics Academy: new drone based exercises
  • Chandan Kumar (GSoC-2021) Robotics Academy: Migrating industrial robot manipulation exercises to web server
  • Muhammad Taha (GSoC-2020) VisualCircuit tool, digital electronics language for robot behaviors.
  • Sakshay Mahna (GSoC-2020) Robotics-Academy exercises on Evolutionary Robotics.
  • Shreyas Gokhale (GSoC-2020) Multi-Robot exercises for Robotics Academy In ROS2.
  • Yijia Wu (GSoC-2020) Vision-based Industrial Robot Manipulation with MoveIt.
  • Diego Charrez (GSoC-2020) Reinforcement Learning for Autonomous Driving with Gazebo and OpenAI gym.
  • Nikhil Khedekar (GSoC-2019) Migration to ROS of drones exercises on JdeRobot Academy
  • Shyngyskhan Abilkassov (GSoC-2019) Amazon warehouse exercise on JdeRobot Academy
  • Jeevan Kumar (GSoC-2019) Improving DetectionSuite DeepLearning tool
  • Baidyanath Kundu (GSoC-2019) A parameterized automata Library for VisualStates tool
  • Srinivasan Vijayraghavan (GSoC-2019) Running Python code on the web browser
  • Pankhuri Vanjani (GSoC-2019) Migration of JdeRobot tools to ROS 2
  • Pushkal Katara (GSoC-2018) VisualStates tool
  • Arsalan Akhter (GSoC-2018) Robotics-Academy
  • Hanqing Xie (GSoC-2018) Robotics-Academy
  • Sergio Paniego (GSoC-2018) PyOnArduino tool
  • Jianxiong Cai (GSoC-2018) Creating realistic 3D map from online SLAM result
  • Vinay Sharma (GSoC-2018) DeepLearning, DetectionSuite tool
  • Nigel Fernandez GSoC-2017
  • Okan Asik GSoC-2017, VisualStates tool
  • S.Mehdi Mohaimanian GSoC-2017
  • Raúl Pérula GSoC-2017, Scratch2JdeRobot tool
  • Lihang Li: GSoC-2015, Visual SLAM, RGBD, 3D Reconstruction
  • Andrei Militaru GSoC-2015, interoperation of ROS and JdeRobot
  • Satyaki Chakraborty GSoC-2015, Interconnection with Android Wear