Hi Bob, thanks for your help on this. I will follow up on the tutorial and let you know how it goes. Cheers Keith --- In [EMAIL PROTECTED], "Bob Katayama" <[EMAIL PROTECTED]> wrote: > > Here is the link to the GPS tutorial I should have provided in the first > reply > > > > http://www.geoframeworks.com/Articles/WritingApps2_1.aspx > > > > Sorry for the multiple emails. > > Bob > > > > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On > Behalf Of Bob Katayama > Sent: Saturday, November 01, 2008 10:52 AM > To: [EMAIL PROTECTED] > Subject: RE: [nsbasic-ce] serial comms in NSBasic to capture GPS NMEA data > stream > > > > Sorry wrong link earlier. > > http://handheld.softpedia.com/get/GPS/GPS-Test-34335.shtml > > > > Bob > > > > From: Bob Katayama [mailto:[EMAIL PROTECTED] > Sent: Saturday, November 01, 2008 10:51 AM > To: '[EMAIL PROTECTED]' > Subject: RE: [nsbasic-ce] serial comms in NSBasic to capture GPS NMEA data > stream > > > > Hi Keith: > > > > After a close look at your code, I do not see anything that could be related > to the basic code you have. The problem could be more of an issue with the > built in GPS unit. GPS do require a minimum of 3 satellite connections to > establish a reading, Depending on the GPS hardware you can have even 12 > connections. If you are in a location where the connection to the same > satellites and the number of satellites are always changing this will affect > the data reception time. Here is a free program you can run to check signal > strengths if you do not have one already. > > > > http://www.webhostingpad.com/webdesign.html > > > > What I would also suggest is looking at this tutorial on writing car > navigation software using vb.net. It talks about accuracy and is in depth. > You might be able to extract a tidbit or two to improve the accuracy of the > data received by using the satellites built in atomic clock. > > > > Hope this helps a little. > > > > Bob > > > > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On > Behalf Of William Keith Saalfeld > Sent: Friday, October 31, 2008 12:01 AM > To: [EMAIL PROTECTED] > Subject: RE: [nsbasic-ce] serial comms in NSBasic to capture GPS NMEA data > stream > > > > Hi Bob, > > Thanks for your prompt response. > > The GPS unit in the PDA I am using uses 9600 baud. I have reasonable > communication between my program and the GPS device using following code to > turn on GPS Comm Port > > ' Turn on GPS input of Latitude and Longitude via NMEA0183 sentence > ' through Comm Port 1. > ' Set To True if using GPS or False to use PC internal clock to match > ' separate GPS log of survey. > ' If using PC internal clock, time and date must be set to UTC. > GPSOn = "True" > If GPSOn = "True" Then > AddObject "Comm","GPS",0,0,0,0 > ' Settings for Com port 1, open Com port 1 for input. > GPS.CommPort = 1 > GPS.Settings = "9600, N, 8, 1" > GPS.InputLen = 0 > GPS.PortOpen = 1 > End If > > and the following code to capture the GPS NMEA sentence that I am interested > in, the $GPGGA sentence > > ' Sub GPS - subroutine GPSpos to get latitude and longitude > ' from GPS. > Sub GPSpos > If GPSOn = "True" Then > NMEAheader = "" > NMEAstring = "" > While NMEAheader <> "$GPGGA" > NMEAheader = "" > NMEAstring = "" > NMEAstring = NMEAstring + GPS.Input > NMEAheader = Left(NMEAstring, 6) > If NMEAheader = "$GPGGA" Then > If Len(NMEAstring) < 44 Then > NMEAheader = "" > Else > If Mid(NMEAstring, 44, 1) <> "1" Then > NMEAheader = "" > End If > End If > End If > WEnd > GPSlat = CSng(Mid(NMEAstring, 19, 2)) + CSng(Mid(NMEAstring, 21, 7)) / 60 > GPSlong = CSng(Mid(NMEAstring, 31, 3)) + CSng(Mid(NMEAstring, 34, 7)) / 60 > HemNS = Mid(NMEAstring, 29, 1) > HemEW = Mid(NMEAstring, 42, 1) > If HemNS = "S" Then > GPSlat = GPSlat * -1 > End If > If HemEW = "W" Then > GPSlong = GPSlong * -1 > End If > ElseIf GPSOn = "False" Then > ' Set latitude and longitude of sighting to 0 when not using GPS. > GPSlat = 0 > GPSlong = 0 > End If > End Sub > > > > My main problem is that occasionally there can be a considerable delay (up > to 5 secs in worst case) between my initiating data entry and the capture of > the lat long. On the crocodile surveys this can take a sighting from one > side of the river to the other or in the case of aerial surveys which I also > have written data logging programs for up to 300 m from the actual position. > I have looked at a lot of GPS type comms code that is out there in the > freeware/GNU licence area and most seems similar to what I have written. I > just cannot help feeling that there has to be a tighter set of code to do > this job. At 9600 baud I should be getting up to 2 $GPGGA sentences per > second. > > > > I am keen to tighten this code up but need direction to some good serial > comms references that aren't to technical (written for graduate > programmers). > > > > Ta > > Keith > > > > W Keith Saalfeld > > WKS Wildlife Management Consulting > > > PO Box 8261 > > Alice Springs NT 08701 > Australia > > Mob: 0428 848 912 > Email1: [EMAIL PROTECTED] > > > > _____ > > To: [EMAIL PROTECTED] > From: [EMAIL PROTECTED] > Date: Thu, 30 Oct 2008 23:19:26 -0400 > Subject: RE: [nsbasic-ce] serial comms in NSBasic to capture GPS NMEA data > stream > > Hi: > > > > First, I would like to say I really admire you for developing a very > specialized application without being a career software developer. The > initial thought I have before even looking at your code is that different > GPS devices communicate at different baud rates depending on the age and > type of GPS that is actually utilized. Also the baud rate you use has to be > in the fixed supported rates. > > (1200, 2400, 4800, 9600, 19200, 28800, 38400, 57600, 76800 and 115200 etc.. > ) > > Does one of the rates above match the rate used in your program and also is > the rate you have coded for the maximum rate that is directly supported by > the gps in your pda? > > > > Example: > > COM Port: COM2 > > Baud Rate: 4800 > > Data Bits: 8 > > Parity: No Parity > > Stop Bits: 2 > > > > Bob > > > > From: [EMAIL PROTECTED] [EMAIL PROTECTED] On Behalf Of > wksaalfeld > > Sent: Thursday, October 30, 2008 10:17 PM > > To: [EMAIL PROTECTED] > > Subject: [nsbasic-ce] serial comms in NSBasic to capture GPS NMEA data > stream > > > > Hi All, > > > > I am a Wildlife Officer with the Parks and Wildlife Service NT > > Australia. I have a program that I have written for data logging > > sightings taken on our annual spotlight surveys of saltwater > > crocodile populations in the Northern Territory. > > > > NSBasic does an excellent job, particularly due to the speed at which > > sightings can be entered. The sightings are recorded with spatial > > information which I get from the PDA's inbuilt GPS via the GPS > > NMEA0183 data stream. > > > > I have a program that works in terms of reading the NMEA data stream > > but the code is not well written, at least it seems so to me, and it > > can often be 1 or 2 seconds before the program gets the lat/long > > position, rarely more. > > > > I would very much like to tighten up the subroutine in my program > > that gets the GPS data and if someone can supply me with a good > > reference, either web site or to a book, on serial comms that has > > been written for a non-programmer it would be appreciated. I have > > done a number of Google searches and looked at GPS code in the files > > link on this forum and the code I have written appears very similar. > > > > I have posted a copy of the program (it is very simple) in the files > > link (CrocSurv_05.nsb). One of the main requirements of the spotlight > > surveys is the capacity to enter sightings with as little as 2-3 > > seconds between records and with GPS position logged at commencement > > of data entry, not end. We do the surveys at night in small boats 4-5 > > m, moving at about 15-20 kph so there is not much time to identify > > and record each animal. For each animal we record species (there are > > only 2 and mostly it is Crocodyus porosus), position in river, and > > size. > > > > > > _____ >
--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "nsb-ce" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/nsb-ce?hl=en -~----------~----~----~----~------~----~------~--~---
