6 minute read

This year, GNSS-SDR is applying again as a mentor organization for Google Summer of Code (also known as GSoC), a global program that offers contributors stipends to write code for open source projects. You must be at least 18 years old and must be eligible to work in your country of residence during duration of the program to be eligible to participate in Google Summer of Code in 2024.

If you are an eligible and interested contributor, read through the list and note the projects you are interested in. You, as the contributor programmer, then submit a proposal to Google, using the GSoC 2025 website. The application form for contributors will be open from March 24, 18:00 UTC, until April 8 at 18:00 UTC. We recommend you to submit your application early. By doing so, it will be given a greater share of attention than is possible for applications submitted at the last minute.

You might submit a proposal following the guidelines below, or you might want to adapt them to your needs. Changes to the proposal could include:

  • You think the project as suggested is too large and you can only feasibly complete part of it; if so, make sure your proposal covers a reasonable subset of the functionality (that is, something which is useful without the rest of the project being implemented).

  • You think the project as suggested is too small; in this case, you might want to extend the idea, combine projects, etc.

  • You like the basic idea of the project but it is not such a good fit for the skills that you have; in this case please feel free to suggest an alternative, but try to remember that the idea is for the software to be useful for its existing and potential users.

Your proposal should include the following: your project proposal, why you would like to execute on this particular project, and the reason you are the best individual to do so. Your proposal should also include details of your academic, industry, and/or open-source development experience, and other details as you see fit. An explanation of your development methodology and schedule is a good idea, as well. It is always helpful to include your contact information, as it will not be automatically shared with your would-be mentors as part of the proposal process.

Hereafter we list, in no particular order, some proposals for projects to be carried out by the contributors participating in GSoC 2025. This is by no means a closed list, so the contributors can feel free to propose alternative activities related to GNSS-SDR. Original topics for proposals are especially welcome and use to be highly ranked.


 

 

Project Title: WAAS

Description:

Large-sized project (350 h)

This Google Summer of Code (GSoC) project focuses on advancing the functionalities of GNSS-SDR receivers related to WAAS.

The primary goal for the summer is to provide a working implementation of a GNSS-SDR receiver working with WAAS signals: Signal acquisition and tracking algorithms for their specific signals. The outcome should be a robust GNSS receiver capable of delivering RINEX-B files and real-time navigation solutions including SBAS information.

Implement acquisition and tracking algorithms for WAAS signals, following the examples already implemented for other GNSS signals. This would facilitate research on precise positioning, safety positioning and drone-related activities working with real signals. Demodulation of the navigation message, opening the door to open innovation in multi-constellation receivers.

Required skills:

Basic knowledge of digital signal processing and proficiency in C++ programming are essential. Familiarity with the GNU Radio framework or GNSS-SDR is considered a valuable plus.

Potential mentor(s):

Miguel Ángel Gómez, Luis Esteve, Javier Arribas.


 

 

Project Title: Sensor Fusion

Description:

Large-sized project (350 h)

This Google Summer of Code initiative aims to enhance sensor fusion capabilities between GNSS (Global Navigation Satellite System) and other sensors. The goal is to develop a functional GNSS receiver capable of integrating additional sensor data into its architecture, generating RINEX files, and enabling real-time navigation solutions—providing on-the-fly computation of position, velocity, and time. The fusion of GNSS signals with data from new sensors will leverage state-of-the-art AI techniques, such as Bayesian filters (e.g., Kalman filters and particle filters), graph neural networks (GNNs), and transformers for spatiotemporal data modeling. These methods will enhance research on sensor fusion, precise positioning, and urban canyon navigation using real-world signals.

Integrating additional sensors into GNSS receivers is a key step in advancing next-generation multi-constellation systems. This innovation fosters open research and development while addressing critical challenges such as integrity, reliability, robustness, extended coverage, and high-accuracy positioning.

Required skills:

Applicants should possess a fundamental understanding of digital signal processing and demonstrate proficiency in C++ programming. Knowledge of GNSS principles and prior experience with sensor fusion, particularly between GNSS and INS, will be advantageous.

Potential mentor(s):

Miguel Ángel Gómez.


 

 

Project Title: Vector Tracking

Description:

Large-sized project (350 h)

This Google Summer of Code initiative aims to enhance vector tracking capabilities between GNSS (Global Navigation Satellite System). The goal is to develop a functional GNSS-SDR receiver capable of performing Vector Tracking. It is well-known that the use of Vector Tracking Loops (VTL) in GNSS receivers can result in improved tracking performance and sensitivity, faster acquisition, and improved interference robustness. This project leads to a real-time SDR GNSS VTL receiver capable of working with different COTS front-ends. These methods will enhance research on sensor fusion, precise positioning, and urban canyon navigation using real-world signals.

Required skills:

Applicants should possess a fundamental understanding of digital signal processing and demonstrate proficiency in C++ programming. Knowledge of GNSS principles and prior experience with sensor fusion, particularly between GNSS and INS, will be advantageous.

Potential mentor(s):

Miguel Ángel Gómez.


 

 

Project Title: Improving the volk-gnsssdr library

Description:

Medium project (175 h)

This project aims to improve volk-gnsssdr, the Vector-Optimized Library of Kernels for GNSS-SDR. This library provides SIMD-optimized implementations of essential signal processing functions (named kernels in this context) for efficient execution on modern processors.

  • Objectives: During the summer, the focus will be on:

    • Identifying performance-critical kernels that significantly impact GNSS-SDR execution speed.
    • Implementing missing SIMD optimizations by adding NEON (for ARM architectures) and RISC-V vector extensions to existing kernels.
    • Benchmarking and validating improvements to ensure enhanced performance and correctness across different hardware platforms. No physical access to those hardware platforms is required.
  • Expected outcomes: By the end of the project, volk-gnsssdr will have broader SIMD coverage, improving the efficiency of GNSS-SDR on ARM and RISC-V architectures, making it more portable and performant for diverse GNSS applications.

Required skills:

Applicants should have a solid understanding of numerical computations and be proficient in C programming.

Potential mentor(s):

Carles Fernández-Prades.


 

 

Proposal submission

Please provide in your proposal the information listed down below. Text formatting is up to you, but be sure to include those sections. Other additions are welcome if relevant.

Proposal template:

  1. Student’s Name
  2. Email Address
  3. Name of the Project
  4. Summary: Short statement about your intents (100 words approx.).
  5. Benefits: What are the benefits of your proposal?
  6. Plan: Describe your work plan in detail (tasks and schedule). Would there be blackout days (vacations, short jobs, etc.)?
  7. Deliverables: What are you going to deliver and when?
  8. Communication: How will you communicate with your mentor and the developers community?
  9. Qualification: Why you are the best candidate for this project?

Tags:

Updated:

Leave a comment