Picture of $8 GPS Receiver Hack!

GPS receivers are expensive! This neat and relatively easy hack will turn a high-quality (and cheap) GPS card into one that is usable via serial port. Then you just plug it into an Arduino or any compatible microprocessor and you are good to go!

Check out Andrzej of EmerytHacks who discovered this hack!

Remove these adsRemove these ads by Signing Up

Step 1: Watch my video!

My video will overview the process of hacking this chip. More details and images will be provided next.

You can also check out my blog @ denialmedia.ca for more information and updates.

Step 2: Materials

Picture of Materials
2-600x6002 - Copy.jpg

You will need to head out and buy the U-blox PCI-5S chip online. Do not choose a price any higher than $8 because that is what these chips are sold for usually. Here is an eBay link to get you started:


You will also need a:

  • Arduino
  • Wires
  • Male header pins (or a paperclip)
  • Solder
  • Soldering Iron

An antenna is needed as well. It must have a UFL connector and be an ACTIVE antenna. Here is a search query:


Step 3: Soldering and Connecting

Picture of Soldering and Connecting

You will need to solder some wire to the connections on the back of the card. As you can see in the first image, 4 wires are needed, all of which will go to the Arduino. I recommend connecting male header pins or a paperclip so that the wire can stay in the port. If you have solid core wire this may be unnecessary.

The TX will go to pin 2, the RX to pin 3, the VCC to 3.3v, and GND to GND.

I've also built a "case" for the Arduino and GPS as part of a larger project, the Arduino autopilot. The things holding the GPS card are simply dowels that are screwed in from the bottom. They both have flat notches that I cut out using a saw.

Step 4: Installing the TinyGPS++ library

Head on over to Mikal Hart's website and download the latest version of TinyGPS++. Extract the folder using WinRAR or a similar program and drag it to your Arduino libraries' folder. By default it is (C:\Users\%User%\Documents\Arduino\libraries). Be sure to rename the folder to something without a dash.

antisubae5 months ago

It's rare for me to assemble an Arduino project and have it work on the first try - seems like there's always *something* LOL - but this went off without a hitch for me. I was able to salvage the antenna out of a non-working Magellan car GPSunit, so I saved a few extra bucks via recycling as well. Thanks for the awesome Instructable! :-)

comsa42 (author)  antisubae5 months ago

Glad to help :)

helberkennou6 months ago

Hi , thanks for this awesome project !

I have one question , can i, instead of using it with the computer make it autonomous , what can you suggest ?

i want to embed it on a car.

comsa42 (author)  helberkennou6 months ago

I'm making an autonomous boat, so I have some experience with that. Check out my blog for more: http://denialmedia.ca/?cat=57

Hopefully not a real car, right?

Can I use it to make ballistic rockets?

comsa42 (author)  gvalentinavičius1 year ago

Just like any GPS, this card has limits as to how fast and how high it can go. If you were to build a rocket using this GPS as a control, the rocket would need to maintain a speed of less than 500m/s (1800km/h) and maintain an altitude of less than 50km.

For comparison with rockets, the German V2 travels at about 800m/s at impact; which is one of the slowest points of flight for a rocket. The V2 also traveled at an altitude of 88km while the GPS rocket would barely break the statopause.

You are much better off building an autopiloted airship which can drop more than one payload.

Have fun! :)

holidayv1 year ago
Perhaps I was a bit too vague. I have several Laptop Wi-Fi modules and it would be nice to hack them to use them with an Arduino,similar to what you have done with this laptop GPS card, rather than having to buy an expensive Wi-Fi shield. Not to use them for location services, but to use them for Wi-Fi.
comsa42 (author)  holidayv1 year ago

Ah, I got it. I'm not sure that this is possible. This card seems to have a USB interface through it's PCI port. The GPS card that I hacked also has the same USB connection through it's PCI port. The question is, how would you interface with it? The WIFI shield does have a pin for something called "SS" but I'm not sure that is is for software serial. Even if it was, the WIFI shield processes the data before it does to the Arduino, I doubt the ability of a computer card to do the same.

holidayv1 year ago

I wonder if this could also be done with a laptop wifi card???

comsa42 (author)  holidayv1 year ago

This card (U-blox PCI-5S) is a laptop card, it is not a WIFI card though. Some WWAN Laptop cards suppport triangulation through mobile networks, but that's all I know.