Andrew Holme has created a totally made-from-scratch GPS receiver that can track up to eight satellites, all powered by FPGA. Andrew’s creation has been in the cooker since early 2011, and he has been refining it ever since.
Pictured above is the front-end, first mixer and IF amplifier of an experimental GPS receiver. The leftmost SMA is connected to a commercial antenna with integral LNA and SAW filter. A synthesized first local oscillator drives the bottom SMA. Pin headers to the right are power input and IF output. The latter is connected to a Xilinx FPGA which not only performs DSP, but also hosts a fractional-N synthesizer.
Originally designed to track four satellites (the minimum for calculating global position data), this GPS receiver has most recently been updated to track eight satellites. This upgrade not only increases the accuracy of the GPS to near-military spec, but at the same time manages to free up about 50% of the gates available on the Xilinx Spartan 3 chip he’s using by running an embedded CPU alongside it and serializing the processing.
Andrew’s GPS project goes into way more detail than we can suitably do it justice for on a blog post, so be sure to check out the project in it’s entirety, complete with all the requisite math, charts, graphs, etc. Sadly does not contain pie charts.
(via Andrew Holme’s website )
Papilio user Siou is hard at work on a killer project involving hardware and software image stabilization for a video camera “mounted to a flying machine.” The project is built around a Papilio 250K and uses a series of servo motors meant to correct the x, y, and z axes of rotation to stabilize the video image. The motors are guided with sensors, including a gyroscope, an accelerometer, a magnetometer and GPS.
The video camera is pointed at a fixed target on the ground, and between the motors, sensors, and custom software, the device operates completely autonomously to correct for all variables affecting the stability of the image. Siou is even using realtime data from NASA in his calculations!
For more details, flowcharts, images and even some video of the project in motion, please check out Siou’s project page. You might learn a thing or two! Thanks Siou, we love what you’re up to! Keep us posted on any further developments on your project.
Siou’s Project Page: Stabilizer IMU / GPS Tracker and Image
Comments section is open! Happy hacking.
After designing a 8 digit frequency counter using a Dx display and a Papilio One board hamster finally got a Digilent GPS PMOD and completed the project by making a GPS referenced 100MHz frequency counter and everything is working as expected 🙂
Here is a picture of the GPS referenced 100MHz frequency counter in action:
Dont forget to drop by the forum thread to read the whole thing and join the discussion!
Have you ever thought about designing a GPS Receiver? It seems very complicated but not with this design we found at holmea.demon.co.uk, the article clearly explains how to make a homemade GPS receiver and we thought you guys would find it very useful.
“…I was motivated to design this receiver after reading the work of Matjaž Vidmar, S53MV, who developed a GPS receiver from scratch, using mainly discrete components, over 20 years ago. His use of DSP following a hard-limiting IF and 1-bit ADC interested me. The receiver described here works on the same principle. Its 1-bit ADC is the 6-pin IC near the pin headers, an LVDS-output comparator. Hidden under noise but not obliterated in the bi-level quantised mush that emerges are signals from every satellite in view.”
The article is complete with source code, resources and more so that you can start making your own GPS Receiver!
Click here for the article, enjoy!
Feel free to discuss in the comments thread.
This is a fresh little project we found over at The Carrier Frequency, for using an FPGA board to parse data from a GPS module. Definitely worth a look, we figured our readers would dig it as much as we did – there’s a lot of potential here.
“This is a project that uses a Spartan-3E FPGA Board (Xylo-LM) to grab the serial stream transmitted by a Locosys LS20031 GPS Module and parse the messages for the latitude and longitude. The latitude and longitude values are then feed into a 16×2 Character LCD display on a push of a button.”
So, what do you guys think?
Original article can be found here. Take a look!