PAL Robotics is planning to participate in the Google Summer of Code. Below is a tentative list of project ideas; the content and scope are still being discussed and updated.
More information about the PALs GSoC project application tips is at the bottom of this page.
Project Ideas
PAL Statistics 2.0
PAL Statistics was originally written and published for ROS 1 in 2018, and it has been actively maintained ever since. The system provides code instrumentation designed for real‑time, safe monitoring at high data rates using ROS topics. A ROS 2 version is already available and has been adopted by the ROS 2 Control framework. With PAL Statistics 2.0 we want to redesign the framework to support a modular and extensible architecture. The main change will be the introduction of a plug‑in system for different data backends, enabling statistics to be published through ROS topics, stored in rosbags ,or forwarded to external observability systems. Backends will be loadable, configurable, and replaceable at run-time. While the current implementation relies on external components for aggregation and sampling, PAL Statistics 2.0 will provide built-in aggregation functions and configurable sampling strategies, reducing external dependencies and simplifying integration into existing systems.
- Ensuring backward compatibility will be a challenge: existing interfaces should be preserved where possible, and new features should provide a clear migration path.
Expected Impact
PAL Statistics 2.0 will enable developers, users and manufacturers of robotics solutions to monitor their data in real time without compromising the timing of the control loops. Instead of just relying on ROS 2 the users will have a customisable monitoring solution that adapts easily to the maturity of the robotics product. Developers will be able to debug issues faster, while fleet operators will be able to monitor their deployments using the observability stack of their choice.
The extended monitoring capabilities will also facilitate new use cases such as reinforcement‑learning or predictive maintenance.
Mentors: Sai Kishor Kothakota,Jordan Palacios and Mathias Lüdtke
Project Size: 175 hours
Difficulty: Medium
Skills Required: Real-time safety, C++ and macro programming, Pluginlib and Grafana
Outcome:
- New release of PAL Statistics with plugin architecture
- Plugins for rosbags/mcap and InfluxDB
- Ability to define plugins at execution time
Tips for writing a successful Google Summer of Code application
-
- Follow GSoC’s Writing a proposal guidelines
- Include your GitHub profile
- Point us to your contributions to any open source projects
- Provide us with your contact information to reach out for any communication
- Specify your technical background and any courses that you have taken
- Describe your background and experience in robotics and ROS 2
- Specify the project that you are interested in and why you would like to work on it
- Tell us what you hope to get out of the Summer of Code experience.
- Feel free to reach out to the project mentors on GitHub to discuss your ideas
- For further questions, please contact Sai Kishor Kothakota
Application instructions for GSoC-2026
Students are encouraged to reach out to relevant mentors before submitting their application on the GSoC official website. All project proposals must be built from scratch, with mentors providing guidance throughout the project. Note that specific requirements are listed for each project and will be considered during the selection process. If in doubt, feel free to send an email to the mentors or at gsoc[AT]gmail.com
Join our Discord server : PAL Google Summer of Code, to discuss ideas and questions and also to connect with other peers.
Basic requirements for all the projects
- Git experience
- C++ or Python programming experience (depending on the project)
- ROS 2 Basics
- At least one contribution to the open-source projects in the last 6 months
Programming basic examples depending on the project:
PAL Statistics 2.0 (Subject to change)
- Create a C++ program and try to introspect the double castable variables
- Record a rosbag
- Visualize the data in Plotjuggler
- Record a video and share a youtube link
Information we’d like to know about you
After completing a basic programming example for one of the projects you’re interested in, please submit your work through a Google Form that will be shared later, including a link to the repository hosting your codebase along with other basic information about yourself. This may include your contact information and programming experience or more like the following:
Contact Details
- Full name
- Country
- Your Resume / CV
- Public Repository links
- Previous contributions links
- LinkedIn profile
Cover letter and Project ideas proposal
- Send us a cover letter explaining what you like about the project
- Explain your strategy or your ideas to solve the project
- Now, split your nice project idea into smaller milestones and show an estimated plan covering the GSoC period, and also include your other commitments such as exams, planned holidays, etc.
- Explain to us your serious commitment to this project and how this can contribute to your ongoing studies.
Technical and Programming background
- Experience with the tools required for the projects you’re interested in
- Technical background and current studies
- Other programming languages you’ve used and your skill level in each
- Operating systems you use regularly
GSoC Participation details
- Have you ever participated in a GSoC project?
- Have you applied to GSoC in the past but were not selected? If so, when and for what projects?
- Have you submitted proposals to other organizations for GSoC 2025?
To improve the likelihood of your selection:
- Demonstrate your skills:
A way to show us that you are the best candidate for the projects is by demonstrating that you’re familiar with the software and can at least do the basic demos requested by the respective project. Adding more features or functionality to the application gives some extra credits. You can also come up with some new ideas and demonstrate them along with your solutions. - Documentation:
Apart from writing a code that works, it is also important to see how well you document it to demonstrate to the mentor that, going through your repository, he/she should be able to reproduce it. Don’t forget to explain your approach to the solution. - Be proactive:
When you write your cover letter, describe your ideas or approach to the project and explain how you would divide the work into smaller milestones with time estimates. It’s also helpful to show what can be achieved and what future improvements or features could be added. This demonstrates to the mentor how you envision the project’s potential.