GPS Datalogger with Display

Hi, all --

I'm pretty new here and pretty new to Arduino. I am trying to build a GPS datalogger that displays a piece of data on a multi-digit 7-segment LED display. The idea is to use it for sailing, locked up in a clear waterproof box. Having the GPS datalog will help us analyze performance off the water and having a display (probably of current speed) will help us see how we're doing in real time.

I'm essentially trying to emulate this product: , though I will not be able to do the wind graph and the GPS module recommended in the lady ada kit has slightly lower specs (notably the amount of data per second). But still, it will be about half the price, with most of the functionality!

So, to that end, I built the LadyAda GPS datalogging shield, which is working well. It's been a lot of fun to learn about NMEA and everything.

Now the hard part: hooking up a big 7-segment LED display. I bought an alarm clock for $15 and opened it up, but now I'm at a bit of a loss. The display is a solid 1.85" (has to be big to be seen on the water...) and runs off an LM8650 clock chip, datasheets for which are available online, but I'm at a bit of a roadblock and would love some help in how to proceed. As a side note it's kind of fun to trace where these components come from...I managed to find the PCB factory in China that made the board through Google Translate....

I think probably the next step is to buy a multimeter (i know, i know) and poke at some pins and see what lights up. That would be satisfying, but I'm still missing the link between functioning display and arduino, much less functioning display and my current velocity data.

I also obtained a free sample (!) of a raw 7-segment LCD display, but got scared off by the AC requirements, lack of an IC driver, etc.

Any guidance would be much appreciated.

If you are lucky the 7-segment display has one wire per digit and one wire per segment. I got a display like that from an old microwave oven. If that is the case I have some code that might help. You can drive the display directly with about 11 pins or add a shift register for the columns and get it down to about 7.

If you are UN-lucky your display acts like each of the segments is part of one big grid matrix. I got one like that from a cheap alarm clock from the thrift store. the matrix has two rows and about 15 columns. Fifteen plus two is a lot of pins to drive. One would probably want to use a 16-bit shift register for the columns to get the pin count down to something reasonable (four?).

Sounds like a fun project and I'd be happy to help.

Thanks for the offer of help!

I’ve attached a few photos: of the GPS shield (currently plugged into the arduino; the wires are going into the digital pins 0-3), of the display, and of both sides of the clock PCB.

Here’s an image of the LM8560 Datasheet:

I count 22 pins coming off the display and ribboned into the PCB. With 4 digits, a colon, four extra LED points (AM, PM, etc), and then the common cathode, that starts to add up. I only need 3 of the digits, as we’ll only need velocity to a tenth of a knot or a 3-digit compass heading.

I guess I don’t even know where to begin – if you say this display is too strange (and it might be, what with the hours and minutes distinctions…) then I’ll have to start again!

Thanks again,





Nice. Just FYI, I have an interactive GPS project here with the same GPS module:

The character LCD that I used is much easier to interact and displays more info, with back light so you can read at night.

That looks like the same display as on the cheap thrift-store clock. It uses only 16 of the 22 wires. Since you only need three digits you probably only need 13 pins.

If you use it for a three-digit display you will end up with speed of 10.0 looking like "1 00" or "1:00". If you turn it upside-down and knock out one of the dots of the colon you will get something like 10.0 but then your heading of 127° will look like "12 7".

You might want to invest in some 7-segment display units. This company has 2.3" digits for $2: and 4" digits for $3:

Each digit has a right-hand decimal point so you can show speed from 0.00 to 999. and maybe display heading a 1.2.7. to distinguish it from 1.27 or 12.7 knots.