Writing A GPS Receiver From Scratch

GPS is an incredible piece of modern technology. Not only does it allow for locating objects precisely anywhere on the planet, but it also enables the turn-by-turn directions we take for granted these days — all without needing anything more than a radio receiver and some software to decode the signals constantly being sent down from space. [Chris] took that last bit bit as somewhat of a challenge and set off to write a software-defined GPS receiver from the ground up.

As GPS started as a military technology, the level of precision needed for things like turn-by-turn navigation wasn’t always available to civilians. The “coarse” positioning is only capable of accuracy within a few hundred meters so this legacy capability is the first thing that [Chris] tackles here. It is pretty fast, though, with the system able to resolve a location in 24 seconds from cold start and then displaying its information in a browser window. Everything in this build is done in Python as well, meaning that it’s a great starting point for investigating how GPS works and for building other projects from there.

The other thing that makes this project accessible is that the only other hardware needed besides a computer that runs Python is an RTL-SDR dongle. These inexpensive TV dongles ushered in a software-defined radio revolution about a decade ago when it was found that they could receive a wide array of radio signals beyond just TV.

Interposer Helps GPS Receiver Overcome Its Age

We return to [Tom Verbeure] hacking on Symmetricom GPS receivers. This time, the problem’s more complicated, but the solution remains the same – hardware hacking. If you recall, the previous frontier was active antenna voltage compatibility – now, it’s rollover. See, the GPS receiver chip has its internal rollover date set to 18th of September 2022. We’ve passed this date a while back, but the receiver’s firmware isn’t new enough to know how to handle this. What to do? Build an interposer, of course.

You can bring the module up to date by sending some extra init commands to the GPS chipset during bootup, and, firmware hacking just wasn’t the route. An RP2040 board, a custom PCB, a few semi-bespoke connectors, and a few zero-ohm resistors was all it took to make this work. From there, a MITM firmware wakes up, sends the extra commands during power-on, and passes all the other traffic right through – the system suspects nothing.

Everything is open-source, as we could expect. The problem’s been solved, and, as a bonus, this implant gives a workaround path for any future bugs we might encounter as far as GPS chipset-to-receiver comms are concerned. Now, the revived S200 serves [Tom] in his hacking journeys, and we’re reminded that interposers remain a viable way to work around firmware bugs. Also, if the firmware (or the CPU) is way too old to work with, an interposer is a great first step to removing it out of the equation completely.

Antique-Style GPS Looks Like Steampunky Fun

These days, turn-by-turn GPS navigation isn’t considered special anymore. It’s in every smartphone and most cheap rental cars, and thus everybody expects you to figure out where you’re going. If you want a simpler and less robust navigation experience, you might like to try the rather fancy RadioScout.

The RadioScout is a build from [hardlyhumanfx]—a group of engineers and artists that collaborate on fun and whimsical projects. It looks like some kind of steampunk compass, and it kind of is—but at heart, it’s powered by GPS.

You program the RadioScout using the buttons on the front panel and a rotary phone dial to enter the latitude and longitude of your destination. It then uses an internal GPS receiver to compare that with your current location, and calculates a direct bearing to where you want to go. This bearing is displayed with a large compass-like needle run by a stepper motor, and you you can use it to guide yourself onwards.

It’s an attractive build that uses lots of neat parts. The team interfaced a microcontroller with a GPS receiver, a rotary dial, and 7-segment LEDs for the latitude and longitude display. The very real bell is neat, too. The whole thing is wrapped up in a brass and wooden case that would make you a star at just about any sci-fi convention. The build video is a little vague on the finer details, but experienced makers will be able to figure out how it all works.

You can actually buy a RadioScout if it’s something you must have, but one suspects the Hackaday set would probably prefer the homebrew route.

Continue reading “Antique-Style GPS Looks Like Steampunky Fun”

Historical map of The Netherlands overlayed with clouds

Hacking Global Positioning Systems Onto 16th-Century Maps

What if GPS had existed in 1565? No satellites or microelectronics, sure—but let’s play along. Imagine the bustling streets of Antwerp, where merchants navigated the sprawling city with woodcut maps. Or sailors plotting Atlantic crossings with accuracy unheard of for the time. This whimsical intersection of history and tech was recently featured in a blog post by [Jan Adriaenssens], and comes alive with Bert Spaan’s Allmaps Here: a delightful web app that overlays your GPS location onto georeferenced historical maps.

Take Antwerp’s 1565 city map by Virgilius Bononiensis, a massive 120×265 cm woodcut. With Allmaps Here, you’re a pink dot navigating this masterpiece. Plantin-Moretus Museum? Nailed it. Kasteelpleinstraat? A shadow of the old citadel it bordered. Let’s not forget how life might’ve been back then. A merchant could’ve avoided morning traffic and collapsing bridges en route to the market, while a farmer relocating his herd could’ve found fertile pastures minus the swamp detour.

Unlike today’s turn-by-turn navigation, a 16th-century GPS might have been all about survival: avoiding bandit-prone roads, timing tides for river crossings, or tracking stars as backup. Imagine explorers fine-tuning their Atlantic crossings with trade winds mapped to the mile. Georeferenced maps like these let us re-imagine the practical genius of our ancestors while enjoying a modern hack on a centuries-old problem.

Although sites like OldMapsOnline, Google Earth Timelapse (and for the Dutch: TopoTijdreis) have been around for a while, this new match of technology and historical detail is a true gem. Curious to map your own world on antique charts? Navigate to Allmaps and start georeferencing!

Enhiker Helps You Decide If Its A Good Day To Hike

Many of us check the weather before heading out for the day — we want to know if we’re dressed (or equipped) properly to handle what Mother Nature has planned for us. This is even more important if you’re going out hiking, because you’re going to be out in a more rugged environment. To aid in this regard, [Mukesh Sankhla] built a tool called Enhiker.

The concept is simple; it’s intended to tell you everything you need to know about current and pending conditions before heading out on a hike. It’s based around Unihiker, a single-board computer which also conveniently features a 2.8-inch touch screen. It’s a quad-core ARM device that runs Debian and has WiFi and Bluetooth built in, too. The device is able to query its GPS/GNSS receiver for location information, and then uses this to get accurate weather data online from OpenWeatherMap. It makes some basic analysis, too. For example, it can tell you if it’s a good time to go out, or if there’s a storm likely rolling in, or if the conditions are hot enough to make heat stroke a concern.

It’s a nifty little gadget, and it’s neat to have all the relevant information displayed on one compact device. We’d love to see it upgraded further with cellular connectivity in addition to WiFi; this would make it more capable when out and about.

We’ve seen some other neat hiking hacks before, too, like this antenna built with a hiking pole. Meanwhile, if you’ve got your own neat hacks for when you’re out on the trail, don’t hesitate to let us know!

Tiny LoRa GPS Node Relies On ESP32

Sometimes you need to create a satellite navigation tracking device that communicates via a low-power mesh network. [Powerfeatherdev] was in just that situation, and they whipped up a particularly compact solution to do the job.

As you might have guessed based on the name of its creator, this build is based around the ESP32-S3 PowerFeather board. The PowerFeather has the benefit of robust power management features, which makes it perfect for a power-sipping project that’s intended to run for a long time. It can even run on solar power and manage battery levels if so desired. The GPS and LoRa gear is all mounted on a secondary “wing” PCB that slots directly on to the PowerFeather like a Arduino shield or Raspberry Pi HAT. The whole assembly is barely larger than a AA battery.

It’s basically a super-small GPS tracker that transmits over LoRa, while being optimized for maximum run time on limited power from a small lithium-ion cell. If you’re needing to do some long-duration, low-power tracking task for a project, this might be right up your alley.

LoRa is a useful technology for radio communications, as we’ve been saying for some time. Meanwhile, if you’ve got your own nifty radio comms build, or anything in that general milleu, don’t hesitate to drop us a line!

GPS Tracking In The Trackless Land

Need a weekend project? [Cepa] wanted a GPS tracker that would send data out via LTE or the Iridium network. Ok, maybe that’s one for a very long weekend. However, the project was a success and saw service crossing the Barents Sea in the Arctic. Not bad.

Apparently, [Cepa] is very involved in sharing tracks to odd and remote places. While you may not have cell service in the middle of the Barents Sea, you can always see Iridium. The device does make some sacrifices to the expense of satellite communications. On LTE, the system pings your location every ten seconds. Without it, it dials up the sat connection once an hour. However, it does store data on a SD card, so — presumably — you get caught up when you have a connection.

Continue reading “GPS Tracking In The Trackless Land”