In this video, we are going to build a DIY Arduino GPS Altimeter using the UBLOX NEO-6M GPS module along with a color OLED display with the SSD1331 driver. It is a fun project, so let’s get started!

About a year ago, I built some GPS projects using this GPS shield. This shield is great but unfortunately, it is no longer available for sale. Also, its size is big so it is not ideal for smaller projects. So, while searching on Banggood.com I discovered this tiny GPS module. It costs around $16 and Banggood.com was kind enough to send me a sample unit in order to test it.

——————–
WHERE TO BUY
——————–

GPS Module: http://bit.ly/2bOY61c

Color OLED: http://bit.ly/ColorOLED

Arduino Uno: https://educ8s.tv/part/ArduinoUno

Small Breadboard: https://educ8s.tv/part/SmallBreadboard

Wires: https://educ8s.tv/part/Wires

Xiaomi Power Bank: https://educ8s.tv/part/Powerbank

Full disclosure: All of the links above are affiliate links. I get a small percentage of each sale they generate. Thank you for your support!

[adsense]

Building the Arduino GPS Altimeter

As you can see this GPS module is very small in size. It uses the ublox NEO 6M GPS receiver. The module has an embedded antenna at the back. You can also use you own external antenna if you wish using this connector. The datasheet of the GPS receiver claims that we can achieve a satellite fix in less than 27 seconds and that it can provide a position accuracy of 2 meters. Sounds great. The module also uses the Serial interface in order to communicate with a microcontroller. So it is extremely easy to connect it with Arduino.

Since GPS service provide altitude data as well, we can build a simple Arduino GPS Altimeter with this module. The accuracy is about 15m which is good enough for a simple project like this. As you can see, I have connected this color OLED display that we saw last week and in the display we can see the current altitude. The display updates each time we have a new altitude value reported from the GPS module. Of course we have to move outside in order to have a good signal reception. But since we achieve the initial position fix, we can use it indoors as well. Great isn’t it? Let’s now see how to build this project.

——————–
LIBRARIES
——————–

Arduino GPS Librey: http://arduiniana.org/libraries/tinygpsplus/

Arduino OLED SSD1331 Library https://github.com/adafruit/Adafruit-SSD1331-OLED-Driver-Library-for-Arduino

Let’s now go inside and see the software side of the project. In order to make our life easier we can use a GPS library for Arduino. I am using the TinyGPS ++ library. You can find a link for the library in the description of the video. The GPS module exports its data in NMEA format. The TinyGPS library parses all that data and we can access them easily and without any knowledge of the NMEA format. So, in order to get the altitude we only have to use one command. The code of the project is very simple. At first we display a splash screen for 3 seconds. Next we start a Software Serial connection with the GPS module. The baud rate is set to 9600, because that’s the baud rate of the module. If your GPS module is not working check its default baud rate and set it accordingly to the code. Next, in the loop function we read the serial data and when the altitude is updated we display it on the screen.

——————–

CODE OF THE PROJECT
——————–

 

 

 

SUBSCRIBE ON YOUTUBE

——————–

Never miss a video: Subscribe to educ8s.tv