GPS Sailing Data

Having recently purchased a Hobie 14-ft catamaran, I have been having fun out on the water, but also wondering how fast I’ve been going. To give myself some idea, I decided to make my own instruments using an Arduino, LCD and GPS.

Sail Log

My first prototype is shown, displaying the speed in knots (0.0), the current compass heading (111°), the time, number of satellites (07), and the battery voltage (412mV). If you add on an OpenLog from Sparkfun, you can save all the GPS data to a flash card for viewing on a computer later. Best of all, it’s really quite easy to make!

The Parts:

Total = $98.80 [+ Shipping + OpenLog]

The wiring diagram looks like this:

Sail LogThe GPS Tx pin is wired to the Rx pin of the Arduino and OpenLog. First, the GPS should be configured for 9600 baud, 2 Hz update rate, and with the GSA and GSV sentences turned off. This can be done with a handy program called MiniGPS, just connect the GPS module to a USB serial adapter running at 3.3V.

The LCD is connected according to this very useful hookup guide. I bought my LCD from eBay, and it has a slightly different pin arrangement, but works exactly the same. Most pins used for the LCD can be changed in the code. I also added a status LED on pin A0, and a battery level monitor on pin A2.

Arduino Code

The Arduino sketch written for the Arduino Pro 328 can be found here. Please double check the pin assignments before you use the code.

GPS Data

If you have the OpenLog connected to the GPS Tx pin, it will record everything the GPS spits out. This data is not much use on its own, but there are many programs you can use to interpret it. The only one I’ve used so far is this NMEA to KML converter. You can upload the GPS log file and it will produce a KML file that you can open in Google Earth. You can then see your tacks, gybes and speed on the water!

GPS dataConsidering that similar devices are on the market for $400 and up, making it myself has saved me quite a bit, plus I can customise it so it works exactly how I want. If anyone reading this tries to make one, let me know how you go!

SailLog in case

About these ads
This entry was posted in Sailing and tagged , , , , , , . Bookmark the permalink.

7 Responses to GPS Sailing Data

  1. Hey I wanted to attempt an Arduino Pinball Conversion/Rebuild. I would like to build my own coil driver but I don’t know how, Could I have a Schematic for the coil board used to trigger the 50V coils such as the flippers, slingshots and pop-bumpers?

  2. will2107 says:

    Hey
    I love your blog we must share the same interests. Just wondering where you would get that waterproof case from? Looks sick.

    • Tom says:

      Hey, I found the case in a two dollar shop! Was just the right size to house the project so I was lucky,

      • will2107 says:

        I bought a super cheap GPS module with aspirations to do the same thing. HOWEVER, the speed is reporting up to 2kts when I am not even moving. What sort of accuracy do you get with your device? Do you think an accuracy of 0.2kts is asking too much?

      • Tom says:

        Some GPS modules are better than others, cheap ones will be less accurate. How many satellites can the module see when it shows 2 kts? Mine sometimes shows 0.2 knots when its not moving, but 2 seems like a lot.

  3. Richard says:

    Really awesome project! I was searching to find exactly something like this. I am just getting into sailing and the cost of instruments are ridiculous. I will be working building my own GPS logger and speed indicator soon. Thanks for posting your work. Cheers

  4. Berra says:

    Does the code even work on the Arduino Uno?

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s