OpenAGPS - Update 3: The first major roadblocks
Hi everyone! Another update from us:
As you may know, the goal of this project is to implement a SUPL-compatiable AGPS assistance server. Now, there are some unexpected technical challenges here that I felt were enough to announce here given that they are basically blocking a lot of testing and development:
- SUPL uses ASN.1. This is okay, there are open-source ASN.1 toolchains, but the one we were using (python-asn1tools) seemingly does not properly decode some messages from modern devices. This is a problem, as any decoding errors are, from its perspective, fatal.
- Most other ASN.1 toolchains are not featured enough to get close to properly being able to compile the ASN.1 specification for SUPL. There is
asn1c
, but it is old, and seemingly has problems compiling for me (that or I just couldn’t get it to work properly myself), and I would also personally rather use a programming language like python for things like this. - I wasted a lot of time trying to get the python library to work (I am not super experienced with ASN.1, so I was mostly trying stuff, hoping that it would start working), and a lot more time to being demotivated from it
This means we are (temporarily!) going to try something else: making our own assistance protocol. We already had ideas of doing this - ASN.1 may be standardized, but if someone wants to implement something using it, it can be a huge pain, compared to something like protobuf, or even JSON-encapsulated messages. Hopefully, I can wire something simple up soon, but don’t expect anything too quickly, since any protocol I hammer together will likely be based around the best way to sideload AGPS data into the testing devices I have (basically, a Fairphone 4, and a Volla 22), and I’ll need to look into how to best do that (any help with that is welcome, as always!).
If you are interested in potentially hosting a GPS base station - or are in a position to otherwise contribute GPS frame data - feel free to contact me, my contact info is on my GitLab page..
As always, any updates to code will be posted onto the OpenAGPS gitlab page..