GPS Ultimate Breakout Board From Adafruit and LinkIt ONE Interfacing

Today, we'll be looking at how to use the LinkIt ONE development board to interface with some other modules. The module we'll be looking at in this tutorial is the Adafruit Ultimate GPS Breakout Board. ( )

These boards are very powerful, with on-board logging capabilities, and 66 channels. We'll be using some of the basic functions to determine your location by triangulating from 3 or more satellites.

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: Materials Needed

Here's what you'll need to complete this tutorial:

1. LinkIt ONE Board

2. Preinstalled LinkIt ONE SDK

3. Adafruit GPS Library ( )

4. Breadboard Wires

5. Adafruit Ultimate GPS Breakout Board ( )

Step 2: Wiring

The wiring required for this project is fairly simple:

1. Connect VIN on the GPS to 5V power.

2. Connect GND on the GPS to a ground pin on the LinkIt ONE.

3. Connect TX and RX (Transmitting and Receiving) to RX and TX. Pay close attention. A RX pin should lead to a TX pin, and a TX pin should lead to an RX pin. This is because a board must receive what the other transmits, and transmit into a receiving pin on the other board.

Step 3: Programming

After installing the Adafruit GPS library, open up an example called "parsing". Load this example onto the LinkIt ONE Board. After this, open up a serial monitor by clicking on the icon in the upper right-hand corner of the Arduino IDE.

In this pop-up window, you should be able to see a few lines of seemingly garbled text begin to appear. Don't worry! This is just the GPS board initializing. Following this, there should be some text denoting your position and the time at your position. This may not appear at first, as it takes some time for a satellite lock to be established.

It is highly recommended that you go outdoors when operating the GPS module, since a lock can't be obtained without a direct line of sight to the sky.

Step 4: Conclusion

There you have it! You have now successfully pinged off of three-plus satellites to get your position. The example program included in this tutorial parsed out all of the information for easy reading. Try experimenting around with the other examples, or try writing your own code! Be sure to share what you find, and don't hesitate to ask any questions!

Epilog Contest VII

Participated in the
Epilog Contest VII

Tech Contest

Participated in the
Tech Contest

Be the First to Share


    • Made with Math Contest

      Made with Math Contest
    • Multi-Discipline Contest

      Multi-Discipline Contest
    • Robotics Contest

      Robotics Contest

    5 Discussions

    No need to add a GPS (global posistioning system) breakout board to the
    LinkIt One. And no work arounds are needed. The GPS example sketch that
    is provided with the SDK plugin works perfectly. The needed library is
    also included. I connected to 8 satellites this evening from inside my
    house. .And here is an example of the logging from the serial monitor..
    UTC timer 6-26-19
    latitude = 3019.8384, longitude = 9741.5059
    satellites number = 5
    LGPS loop

    2 replies

    Nice going! I haven't been able to get my module working like that. Been trying to add an OLED screen onto the project to display the coordinates. Wanted everything to be modular as well, which is why I wanted to experiment with the breakout board. The final project will also use an Arduino Nano, so I wanted that capability.

    A display with the data would be nice. Good luck with the Nano GPS/OLED. Not all my experiments with the LinkIt One have worked so far but the built-in GPS worked well using LGPS.h

    Proto G

    3 years ago

    Why did you use the adafruit gps module? Can't you just use the GPS included with the Linkit ONE?

    1 reply
    Jonathan0903Proto G

    Reply 3 years ago

    The adafruit module provides 4kb of onboard logging, and does not require workarounds that the GPS module included with the LinkIt ONE need. It also has a nifty library already written for it, providing ease of use when programming.