The Duinopeak GPS Logger Shield equips your Arduino with access to a GPS module, µSD memory card socket, and all of the other peripherals you’ll need to turn your Arduino into a position-tracking, speed-monitoring, altitude-observing wonder logger.
The shield is based around a uBlox NEO-6M/M8N GPS Module – a 66-channel GPS receiver and an up to 10Hz update rate. The GPS module will stream constant position updates over a simple serial UART, which you can then log to a µSD card and/or use for other position or time-tracking purposes.
Everything on the shield is highly configurable: A switch allows you to select the GPS module’s UART interface between either hardware or software ports, the µSD card operates over a hardware SPI port, which should be compatible with most Arduino layouts, and extra prototyping space should allow you to add those last, few components you need to complete your project.
The GPS module communicates via a simple, UART (serial) interface. The UART-select switch allows you to switch that interface between either the Arduino’s hardware UART – on pins D0 and D1 – or a SoftwareSerial port on pins D2 to D7.
If you’re using an Arduino Uno or any development board with one, pre-occupied hardware UART, you may be forced to use the software serial port. Fortunately, the GPS module’s baud rate defaults to a slow, steady 9600 bps, which SoftwareSerial shouldn’t have a problem handling.
If you need to change the software serial port pins, they can be custom-set to any other pin by setting the jumpers between pinsD2 to D7.
This pair of LEDs on the corner of the shield are a handy tool for initial troubleshooting. The green PWR LED is attached to the output of the shield’s on-board 3.3V regulator. If the shield is getting power, this LED should be on.
The red GPS FIX LED is connected the GPS module’s “FIX” pin. It can be used to identify whether the GPS module has a proper fix or not. When you initially power the shield up, the LED should blink – indicating it’s trying to find a fix and you can rest assured that your GPS module has a good fix on your location.
Just stack the GPS Logger Shield on the Peakduino/Arduino UNO, plug the external active GPS antenna, and plug the USB cable to power up the board. Then check the green power LED is light on, then everythis is OK.
Note: Make sure your external antenna has a good sight to receive the GPS signal, it is recommend to put the antenna outside the window of your room. NEO-6M is need for this step, NEO-M8N is able to position in the room in the most of the time.
Now that your hardware is all set up, we have three pieces of example code to give you a taste of the GPS Logger Shield’s functionality. This first example isn’t all that useful, but it will, at least, make sure everything’s working. Plus it’ll show you the raw ugliness of NMEA GPS strings and make you appreciate great libraries like TinyGPS even more.
This example doesn’t require any additional libraries. Simply plug the shield into your Arduino and upload the example code. We’ve got a couple examples, depending on which Arduino and/or serial port you’re using.
out the latitude and longitude.
// We’ll also define a more descriptive moniker for the Serial Monitor port.
// This is the hardware serial port on pins 0/1.
This example uses the SoftwareSerial library to communicate with the GPS module, and leaves the hardware serial port for debugging with the serial monitor.
Open up your serial monitor and set the baud rate to 9600. You should immediately begin to see GPS NMEA data begin to flow by at a rate of 1Hz.
Now we could use uBlox’s GUI tool to view the GPS stream data visually.
Dowload the GUI tool from uBlox’s website and install it.
Choose your COM port of your Arduino board and click the magic wand for autobauding.
Now, wait a second for the GPS to fix, the TP LED should blink. The blow visual data is indoor positioning(NEO-M8N only, NEO-6M must position outdoor), outdoor will be more fast and effective.
If you use Peaduino UNO Geek Edition, just very simple, set the UART-select jumpers in the HardwareSerial position(TX-D0 and RX-D1) then slide the FTDI switch to “MCU OFF”, open the Serial monitor you will get the GPS stream.
Once you’ve uploaded the sketch, open up your serial monitor and set the baud rate to 9600. You should immediately begin to see GPS NMEA data begin to flow by at a rate of 1Hz.
communicate with the GPS module.
// you should use in the defines above.
You may have to alter either or both of the serial port #defines at the top of the code. Refer to your development board’s datasheet or product info page for more information on which serial port is which.
If you don’t see anything in the serial monitor, make sure the UART-select jumper is in the correct position. Also double check that the green “power” LED is at least light up. If it’s not, the module may not be receiving power. Don’t forget place the external antenna outside the window of your room!
NMEA strings are the standard message format produced by almost all GPS receivers. They can relay all sorts of information including the time, latitude, longitude, altitude, and number of satellites visible, but unless you’re an incredibly fast parser, these sentences will mostly mean nothing. Fortunately, the Arduino can read those strings, parse them for you, and give you more human-readable pieces of data.
The Duinopeak GPS Logger Shield equips your Arduino with access to a GPS module, µSD memory card socket, and all of the other peripherals you’ll need to turn your Arduino into a position-tracking, speed-monitoring, altitude-observing wonder logger. The shield is based around a uBlox’s NEO-6M/M8N GPS Module – a 66-channel GPS receiver featuring a MediaTek MT3339 architecture and up to a 10Hz update rate. The GPS module will stream constant position updates over a simple TTL-level serial port, which you can then log to a µSD card and/or use for other purposes.
Everything on the shield is highly configurable: A switch allows you to select the GPS module’s UART interface between either hardware or software ports,The regular GPS pins(RX,TX) can be connected to D0-D7 of Arduino. The µSD card operates over a hardware SPI port, which should be compatible with most Arduino layouts. The GPS Logger Shield’s main voltage supply is taken from the Arduino 5V header pin. This voltage is regulated down to 3.3V, which is supplied to both the GPS module and the µSD card. These two components should consume, about 30mA on average, but they may very occasionally spike to around 100mA.