Blog
OpenAGPS Project Updates
Free Assisted GPS
Navigation is a common task for many devices. It is mostly backed by satellites sending their positioning information to earth. The devices then can use that information to calculate their own position relative to the satellites in range.
However, initial communication with satellites is slow, to improve performance of devices to get their position faster, the AGPS standard has been applied. But AGPS means devices leak position information to the AGPS service. To avoid this leaking, you can switch from propietary/commercial AGPS providers to OpenAGPS.
OpenAGPS is a project aiming to create an open-source assisted-GNSS system, compatible with existing devices using SUPL. It aims to offer an alternative to the most commonly used SUPL services (namely supl.google.com), which are all closed-source, and run by large corporations. It aims to use crowd-sourced GNSS information, and to be as private as possible.
We are still very early in development, however we aim to post as regularly as possible here regarding updates to the project, so stay tuned! You can find our source code on Gitlab, in the openagps organisation, with our project planboard and the documentation here.
The OpenAGPS project is a relatively new project that has been bootstrapped from scratch starting in Q4/2024. The project development paused for a while through 2025/26, but has really received some momentum since summer 2026.
Note: The current project status is very close to being an MVP solution. The missing link for the plugging-together of the OpenAGPS components has been described as follows by one of our core developers:
,,Porygon collects the message frames received from the satellites. It does have a decoding for these messages and the decoded values would mostly fit into the requirements for the data that has to be send out as an LPPMessage. But I did not find a suitable decoding implementation. I did find gnss-protos (Rust crate) but its results did not match the decoding results from Porygon, and there was no easy way to verify if one of the implementations is actually correct.
So this will remain a challenge and it is reasonable to have only one location where decoding should happen. That means either in Porygon, or in SUPL.
In the end, we decided to continue with the implementation already available in Porygon and provide it as a service for SUPL to consume. But there was no more time left [within the NLnet funding phase, ending in 11/2026] to continue with this plan.
One way to verify the decoded results is to cross-check if the results match with the data received through Google's supl-client, although there might be differences depending on age and data quality of the received frames.''
Between 2024-2026, this project has been funded through NGI Mobifree Fund, a fund established by NLnet with financial support from the European Commission's Next Generation Internet program. Learn more at the NLnet project page. Many thanks go to the very nice peeps over there! Hosting for this project is generously sponsored by Leaf Cloud.
For the next development tasks at hand, we have sent a follow-up funding application to NLnet's Restack funding round (submitted 3rd Nov 2026).
If you are interested in (additionally) funding this project, please get in touch with Raoul Kramer at BetaBreak.
OpenAGPS Project Updates
Help to free global positioning from Big Tech.