Interacting With a NEO 6M GPS Module Using Golang and a Raspberry Pi Zero W

About a week ago, I wrote a tutorial on my NEO 6M GPS module and the Go programming language. In this tutorial, I demonstrated how to use Golang to interact with the serial port on my computer, consume the GPS stream, parse the NMEA formatted sentences, and then exchange the latitude and longitude positions for actual addresses with the HERE Reverse Geocoding service.

I originally got the GPS module for my Arduino and figured: Why couldn’t I do something similar with my Raspberry Pi Zero W? A while back, I had done an experiment with a Raspberry Pi and WLAN AP positioning, where I could calculate an estimate of my position from nothing more than WiFi SSID and BSSID information. That experiment worked but only gave me estimates. Now that I have a GPS module, I can get my location down to just a few meters of accuracy.