Arduino GPS Clock usign arduino

I had a Holux M-1000B Bluetooth GPS module that was just gathering dust in my room. I had bought it from DealExtreme back in the days when I had GPS-less (but external GPS capable) Nokia E51. Upgrading to a Nokia E52 has since made this receiver redundant. However, since getting an Arduino, and being put off by the price of GPS shields for them, I decided to use the GPS receiver I already have.

Arduino GPS ClockOnce the receiver is connected to satellites, the device just spews GPS NMEA V3.01 data at you via Bluetooth SPP or a virtual USB COM port on the PC. Building Arduino projects are a bit like playing with Lego as a child – You spend hours rooting through the big box for one part (only in the case of Arduinos, it’s the delivery of parts from electronics suppliers) and when you get it, you can finally finish it. The project sits on your desk for about 1 day to be admired, and then it gets dissembled, never to be rebuild (well, unless it’s really good).

Despite opening the board up and finding the appropriate points to probe it was easier just to leave the GPS on the window ledge, and connect it to the PC via bluetooth. I could then pipe the output from the GPS serial port to the Arduino serial port. The settings for the GPS COM port are 38400 baud 8,N,1 if you want to look at what the device is sending out. Because NMEA is an ASCII based protocol, parsing programs are trivial to write. Below is a sample Linux command and some sample NMEA output sentences:

Arduino GPS Clockuser@host:~$ cat /dev/rfcomm1 $GPRMC,152926,V,6027.8259,N,02225.6713,E,10.8,0.0,190803,5.9,E,S*22 $GPRMB,V,,,,,,,,,,,,A,S*0E $GPGGA,152926,6027.8259,N,02225.6713,E,8,09,2.0,44.7,M,20.6,M,,*79 $GPGSA,A,3,07,08,09,11,18,23,26,28,29,,,,6.6,2.0,3.0*38 $GPGSV,3,1,09,07,29,138,44,08,22,099,42,09,30,273,44,11,07,057,35*75 $GPGSV,3,2,09,18,28,305,43,23,14,340,39,26,64,222,49,28,60,084,49*7E $GPGSV,3,3,09,29,52,187,48*4E $GPGLL,6027.8259,N,02225.6713,E,152926,V,S*48 $GPBOD,,T,,M,,*47 $PGRME,15.0,M,22.5,M,15.0,M*1B $PGRMZ,147,f,3*19 $GPRTE,1,1,c,*37 $GPRMC,152928,V,6027.8319,N,02225.6713,E,10.8,0.0,190803,5.9,E,S*29

For more detail: Arduino GPS Clock

About The Author

Ibrar Ayyub

I am an experienced technical writer with a Master's degree in computer science from BZU Multan University. I have written for various industries, mainly home automation, and engineering. I have a clear and simple writing style and am skilled in using infographics and diagrams. I am a great researcher and is able to present information in a well-organized and logical manner.

Scroll to Top