Experimenting with utilizing assisted GNSS techniques on #Librem5. Cold fix takes about 3 minutes in perfect conditions, but can easily take *much* longer otherwise - that's how GPS works. However, by downloading satellite data from the Internet instead of the sky it can go down to under a minute; sometimes even just a few seconds. Still a proof-of-concept at this point, but can already tell that catching a fix gets significantly easier this way:) #mobile #gnu #linux #gnss #gps #galileo #glonass
@jc Depends, I've tested it in various conditions over last weeks. The module handles SBAS and can report its sats in GSV sentence - it works, although it takes it a while to decode its data. It's multi-constellation, so you get GLONASS (or BeiDou), QZSS and Galileo as well. So far I've managed to successfully inject GPS almanac & ephemerides and also Galileo ephemerides, so it's usually tracking 6-18 sats depending on conditions. It's poorly documented so it's not exactly straightforward :)
@dos I thought cell phones already did this. If there's an internet connection the software pulls in GPS satellite information. At least, when I tried using GPS on my old iPhone it complained that it needed a cell connection to work properly.
@tudza Yes, but guess what - someone had to implement it first!
This matches my experience too. When I injected the A-GPS data, I got a fix inside 3 minutes even when I got on a plane.
I used to be worried about taking my L5 to a new location where I needed car navigation, but I am very confident that it will work well when I need it now.
@dos I'm curious how many GPS satellites were within line-of-sight of your phone when you were testing this. I haven't worked with GNSS in a while, so I can't recall how WAAS stations are accounted for within GPS sensor data in Linux. I ought to reach out to some old colleagues for a refresher on how we handled it in our applications.
Also, FWIW: As a user, it would be beneficial to select between local/online/fallback GNSS data modes.