NerdyHearn
Home
Blog

Contact
Mailing List

Software

Active Directory Products
Object Compare
Permission Compare

IPhone Products
Calls To Calendar
SMS To CSV
SMS To Gmail
Voicemail To Gmail

Sites
DocuTerminal
How Long For Me
My Music To Me
SaveMySerials
TypeCount

Blog
Twitter

NerdyHearn - Blog


<< Back To All Blogs

Using GPS the dorky way

Wednesday, May 24th, 2006

So recently I've been plugging around in Microsoft MapPoint 2006. While playing with the SDK and the program itself I started to notice the available features that hook in with GPS devices. So I purchased a USB GPS receiver with the SiRF Star 3 chipset (from what I read one of the best buys for GPS enthusiasts). It reads 12 satellites simultaneously, giving a pretty accurate read on your location, and only set me back about $60. Now enter the dorky world of myself:

The MapPoint SDK does not have an interface to read GPS itself, that has to be done manually. So for the past 2 days I have been working on that. .NET 2.0 has an interface to COM ports built in natively, using the System.IO.Ports namespace, which is a lifesaver. COM ports work as a continous stream of data in .NET, so you can call ReadLine methods and the like on the com component once it is set. So so far I have this: detect the device, initialize it, and parse the strings so you have manageable data to work with in the program. This is done somewhat easily (after doing my research on COM interfacing with the device and the actual data in GPS, which isn't exactly reader-friendly).

For an example GPS String:
$GPGGA,024338.000,4244.2860,N,08427.6760,W,1,06,1.9,262.9,M,-34.2,M,,0000*6D

Explode the lines by all the commas and you get this with indices:
1: Sentence ID (in this case always the same, which is the data type of fixed data sentence, which is a location at a point in time)
2: UTC Time
3: Latitude
4: N/S Indicator
5: Longitude
6: Position Fix
7: Number of satellites used (0 - 12)
9: Altitude
10: Altitude units (generally M for meters)

The rest of the information in the data structure is fairly useless for my needs.

What I plan to do is hook this into the MapPoint SDK, be able to track where I am, map my progress, average times, speeds, distances, points in time, etc.

Very dorky, I know, but nonetheless I love it.

More to come soon... maybe some code to come along with it.

Stay dorky dorks, I'm out.

Comments

Currently no comments.

Add A Comment

Name:


URL:


Email Address: (not public, used to send notifications on further comments)


Comments:



Enter the text above, except for the 1st and last character:


NerdyHearn - Latest tech news relating to C#, ASP.NET, SharePoint, PHP, general development, and more. DocuTerminal - Online Filing Cabinet solution. Scan, search and archive your paper documents. SaveMySerials - Protect yourself from theft, fire, natural disasters and more by recording your serial numbers My Music To Me - Stream your subsonic music collection to your Sonos wireless system TypeCount - Count how often you type across different computers! ServrTrackr - Monitor your SSL certificates, website uptime, and DNS configurations