Skip to main content

Beta 1

Minor Versionm

by Matt P. Lamparter

  1. Find yourself a feather(using ESP32-S3 in this guide), a laptop with Mu editor, and the GPS chip. Remember to update the firmware of Feather to the newest version and download the "adafruit_gps" and "adafruit_bus_device" libraries, put them in the "lib" folder inside Feather. You also need a STEMMA QT connector, if you are using Feather without a STEMMA QT port, get some jumper wires instead. You also need a STEMMA QT connector, if you are using Feather without a STEMMA QT port, get some jumper wires instead.
    • Find yourself a feather(using ESP32-S3 in this guide), a laptop with Mu editor, and the GPS chip. Remember to update the firmware of Feather to the newest version and download the "adafruit_gps" and "adafruit_bus_device" libraries, put them in the "lib" folder inside Feather.

    • You also need a STEMMA QT connector, if you are using Feather without a STEMMA QT port, get some jumper wires instead.

  2. PA1010D GPS chip supports I2c communication, what we do is simply connect the SCL on feather to the SCL on GPS chip; and connect the SDA on feather to the SDA on GPS chip. You also need to connect the grounds and 3.3Vs between the two. Here, since ESP32-s3 has a STEMMA QT port, so we could simply connect the GPS chip and feather through the port. If you are using another Feather, like a M4, use jumper wires to connect the pins mentioned above instead.
    • PA1010D GPS chip supports I2c communication, what we do is simply connect the SCL on feather to the SCL on GPS chip; and connect the SDA on feather to the SDA on GPS chip. You also need to connect the grounds and 3.3Vs between the two.

    • Here, since ESP32-s3 has a STEMMA QT port, so we could simply connect the GPS chip and feather through the port. If you are using another Feather, like a M4, use jumper wires to connect the pins mentioned above instead.

  3. Connect your Feather to your laptop and open Mu editor. Go to this link:https://learn.adafruit.com/adafruit-mini...
    • Connect your Feather to your laptop and open Mu editor.

    • Go to this link:https://learn.adafruit.com/adafruit-mini...

    • Copy the code from "Example Parsing Code" session, and follow the comments to slightly modify the code.

    • We are using I2C protocol so you could delete or comment out any lines that mentions UART. In this case, we are using STEMMA QT port, so we keep "i2c = board.STEMMA_I2C()"; if you are using other Feathers that uses board SCL, SDA, keep"i2c = board.I2C()" instead.

    • After the the last if statement, add a "time.sleep(2)" so you could better look up the results. Be careful with the indents.

  4. After modifying the code, hit run. You will find that it is continuing printing "waiting for fix". That means the GPS chip is having trouble finding the GPS . Now what you do is simply put your chip by the window so it could see a clear sky. Wait for a few seconds to a minute, it would print out the position information it gets. Note latitude of 4095 degrees and longitude of -7688 means we are at 40.95 degree North and 76.88 West, which is the coordinate of Lewisburg. Note: The time it prints is in UTC timezone, not local time.
    • After modifying the code, hit run. You will find that it is continuing printing "waiting for fix". That means the GPS chip is having trouble finding the GPS . Now what you do is simply put your chip by the window so it could see a clear sky.

    • Wait for a few seconds to a minute, it would print out the position information it gets. Note latitude of 4095 degrees and longitude of -7688 means we are at 40.95 degree North and 76.88 West, which is the coordinate of Lewisburg.

    • Note: The time it prints is in UTC timezone, not local time.

    • Better keep your GPS chip facing the sky constantly, or the connection between your chip and the satellite may lost.

    • Originally, the information we gathered from the chip is in $GPRMC and $GPGGA sentences(they are called NMEA sentences), which are barely readable, the above-using code converts them to a more understandable format. If you want to read more about the original format, refer to the links below:

    • https://learn.adafruit.com/adafruit-mini...

    • http://aprs.gids.nl/nmea/

Finish Line

Yuhe Zhang

Member since: 03/22/2022

2 Guides authored

0 Comments

Add Comment

View Statistics:

Past 24 Hours: 0

Past 7 Days: 4

Past 30 Days: 11

All Time: 37