From: Winston on
On 7/24/2010 1:45 PM, Jamie wrote:

(...)

> $PSRFxxx,x,x,x,x*xx<cr><lf>
>
> Is that what you're referring too?

I wasn't but I have an open mind. :)

I understood this to be a valid test string as well:
$GPWPL,4807.038,N,01131.000,E,WPTNME*5C

I didn't know about the <cr> and <lf> but that sounds very plausible.


> P.S.
> Make sure you send the CR and LF at the end..
> and of course, calculate the CRC, and there are
> no spaces.
>
> I know the Doc's say Xor with characters between the $ and * how ever,
> they don't really give you an example. I can only assume they are Xoring
> each char maybe with FF and then summing..
>
> Who knows.

Not me! I was just practicing a little Google-fu.

--Winston


From: Rich Webb on
On Sat, 24 Jul 2010 14:55:32 -0700, Winston <Winston(a)bigbrother.net>
wrote:

>On 7/24/2010 1:45 PM, Jamie wrote:
>
>(...)
>
>> $PSRFxxx,x,x,x,x*xx<cr><lf>
>>
>> Is that what you're referring too?
>
>I wasn't but I have an open mind. :)
>
>I understood this to be a valid test string as well:
>$GPWPL,4807.038,N,01131.000,E,WPTNME*5C
>
>I didn't know about the <cr> and <lf> but that sounds very plausible.
>
>
>> P.S.
>> Make sure you send the CR and LF at the end..
>> and of course, calculate the CRC, and there are
>> no spaces.
>>
>> I know the Doc's say Xor with characters between the $ and * how ever,
>> they don't really give you an example. I can only assume they are Xoring
>> each char maybe with FF and then summing..
>>
>> Who knows.
>
>Not me! I was just practicing a little Google-fu.

From the standard: "The checksum is the 8-bit exclusive OR (no start or
stop bits) of all characters in the sentence, including "," and "^"
delimiters, between but not including the "$" or "!" and the "*"
delimiters." The GPWPL sentence example above has a correct checksum.

The OP's question may be answered by the "SSFXXXX series GPS module NMEA
protocol reference manual." But the home site for those modules doesn't
seem to have such a beast. http://www.modulestek.com/service.php

There is, however, a standard query sentence format that may be
supported by the module. The format is:

$AABBQ,CCC*XX<cr><lf>

AA is the talker identifier of the requesting system (the OP's
identifier). We don't know if the module in question wants a particular
identifier here but a logical one to use would be "II" (integrated
instrumentation).

BB is the talker identifier of the device from which data is requested.
In this case, "GP".

Q indicates a query sentence.

CCC is the sentence formatter for the requested sentence: ZDA.

and then the end-of-sentence stuff.

So, try sending "$IIGPQ,ZDA*35" (with the expected carriage return /
line feed following) at the device's baud rate and see what happens.

--
Rich Webb Norfolk, VA
From: Grant on
On Sat, 24 Jul 2010 16:45:22 -0400, Jamie <jamie_ka1lpa_not_valid_after_ka1lpa_(a)charter.net> wrote:

>Winston wrote:
>
>> On 7/24/2010 9:18 AM, Jamie wrote:
>>
>>> Piglit wrote:
>>>
>>>> I have a SSF2929P gps module which I wish to enable the ZDA string.
>>>> If I apply power to the module it happily spits out data, finds
>>>> sattelites etc
>>>> and displays results on my terminal, but nothing I send to the module
>>>> will stop the flow of data and put it into a mode to accept the
>>>> commands.
>>>> I'm beginning to think comms with this thing is half duplex, not full
>>>> duplex.
>>>> If this is the case, how do I reverse the flow and make it listen ?
>>>> (Yes I do have Rx and Tx connected)
>>>> Cheers
>>>> M
>>>
>>> most devices have a protocol you need to follow....
>>
>>
>> Yup.
>>
>> http://www.gpsinformation.org/dale/nmea.htm
>>
>>> most have a CRC system to deduce error, and also, some have a way
>>> to get out/in data mode like in the olds of external modems...
>>> etc...
>>>
>>> YOu need to read the data sheet on it..
>>
>>
>> This one?
>> http://www.element-14.com/community/servlet/JiveServlet/downloadBody/13410-102-1-42402/40.Sirf%20nmea%20ref%20manual.pdf
>>
>>
>> :)
>>
>> --Winston
>$PSRFxxx,x,x,x,x*xx<cr><lf>
>
> Is that what you're referring too?
>
> P.S.
> Make sure you send the CR and LF at the end..
>and of course, calculate the CRC, and there are
>no spaces.
>
> I know the Doc's say Xor with characters between the $ and * how ever,
>they don't really give you an example. I can only assume they are Xoring
>each char maybe with FF and then summing..

Start with zero in a checksum variable, XOR each char with that
variable and store result to the variable, convert checksum to
a pair of hex digits (since it may contain non-printable or
control characters).

Grant.
From: Jamie on
Grant wrote:
> On Sat, 24 Jul 2010 16:45:22 -0400, Jamie <jamie_ka1lpa_not_valid_after_ka1lpa_(a)charter.net> wrote:
>
>
>>Winston wrote:
>>
>>
>>>On 7/24/2010 9:18 AM, Jamie wrote:
>>>
>>>
>>>>Piglit wrote:
>>>>
>>>>
>>>>>I have a SSF2929P gps module which I wish to enable the ZDA string.
>>>>>If I apply power to the module it happily spits out data, finds
>>>>>sattelites etc
>>>>>and displays results on my terminal, but nothing I send to the module
>>>>>will stop the flow of data and put it into a mode to accept the
>>>>>commands.
>>>>>I'm beginning to think comms with this thing is half duplex, not full
>>>>>duplex.
>>>>>If this is the case, how do I reverse the flow and make it listen ?
>>>>>(Yes I do have Rx and Tx connected)
>>>>>Cheers
>>>>>M
>>>>
>>>>most devices have a protocol you need to follow....
>>>
>>>
>>>Yup.
>>>
>>>http://www.gpsinformation.org/dale/nmea.htm
>>>
>>>
>>>>most have a CRC system to deduce error, and also, some have a way
>>>>to get out/in data mode like in the olds of external modems...
>>>>etc...
>>>>
>>>>YOu need to read the data sheet on it..
>>>
>>>
>>>This one?
>>>http://www.element-14.com/community/servlet/JiveServlet/downloadBody/13410-102-1-42402/40.Sirf%20nmea%20ref%20manual.pdf
>>>
>>>
>>>:)
>>>
>>>--Winston
>>
>>$PSRFxxx,x,x,x,x*xx<cr><lf>
>>
>> Is that what you're referring too?
>>
>> P.S.
>> Make sure you send the CR and LF at the end..
>>and of course, calculate the CRC, and there are
>>no spaces.
>>
>> I know the Doc's say Xor with characters between the $ and * how ever,
>>they don't really give you an example. I can only assume they are Xoring
>>each char maybe with FF and then summing..
>
>
> Start with zero in a checksum variable, XOR each char with that
> variable and store result to the variable, convert checksum to
> a pair of hex digits (since it may contain non-printable or
> control characters).
>
> Grant.
Well, that makes it easy. I've seen a variety of CRC's done ..

One I did recently involved adding a 1 to the results to reverse it.

oh well.


From: Winston on
On 7/24/2010 3:54 PM, Rich Webb wrote:
> On Sat, 24 Jul 2010 14:55:32 -0700, Winston<Winston(a)bigbrother.net>
> wrote:
>
>> On 7/24/2010 1:45 PM, Jamie wrote:
>>
>> (...)
>>
>>> $PSRFxxx,x,x,x,x*xx<cr><lf>
>>>
>>> Is that what you're referring too?
>>
>> I wasn't but I have an open mind. :)
>>
>> I understood this to be a valid test string as well:
>> $GPWPL,4807.038,N,01131.000,E,WPTNME*5C
>>
>> I didn't know about the<cr> and<lf> but that sounds very plausible.
>>
>>
>>> P.S.
>>> Make sure you send the CR and LF at the end..
>>> and of course, calculate the CRC, and there are
>>> no spaces.
>>>
>>> I know the Doc's say Xor with characters between the $ and * how ever,
>>> they don't really give you an example. I can only assume they are Xoring
>>> each char maybe with FF and then summing..
>>>
>>> Who knows.
>>
>> Not me! I was just practicing a little Google-fu.
>
> From the standard: "The checksum is the 8-bit exclusive OR (no start or
> stop bits) of all characters in the sentence, including "," and "^"
> delimiters, between but not including the "$" or "!" and the "*"
> delimiters." The GPWPL sentence example above has a correct checksum.
>
> The OP's question may be answered by the "SSFXXXX series GPS module NMEA
> protocol reference manual." But the home site for those modules doesn't
> seem to have such a beast. http://www.modulestek.com/service.php
>
> There is, however, a standard query sentence format that may be
> supported by the module. The format is:
>
> $AABBQ,CCC*XX<cr><lf>
>
> AA is the talker identifier of the requesting system (the OP's
> identifier). We don't know if the module in question wants a particular
> identifier here but a logical one to use would be "II" (integrated
> instrumentation).
>
> BB is the talker identifier of the device from which data is requested.
> In this case, "GP".
>
> Q indicates a query sentence.
>
> CCC is the sentence formatter for the requested sentence: ZDA.
>
> and then the end-of-sentence stuff.
>
> So, try sending "$IIGPQ,ZDA*35" (with the expected carriage return /
> line feed following) at the device's baud rate and see what happens.

It is so much easier after the info is translated into English.

Thanks!

--Winston
First  |  Prev  |  Next  |  Last
Pages: 1 2 3
Prev: Charge Conservation: It's Ready
Next: bluffing fools