Shop OBEX P1 Docs P2 Docs Learn Events
Parallax GPS Smart Mode — Parallax Forums

Parallax GPS Smart Mode

TJHJTJHJ Posts: 243
edited 2008-06-06 07:29 in Propeller 1
So I'm thinking that if this is smart then I am failing. [noparse]:([/noparse]

Ok so I am trying to get the "Smart mode" to work

So I am trying to get the Lat data from GPS unit.·It says its 5 bytes. Deg, Min, Sec(word), Direction

So the directions say send "!GPS" then the command you want.

Fd.start(16, 16, 0, 4800)
Repeat
    
  
  FD.Str(String("!GPS"))
  FD.tx($05)     
  Repeat i from 0 to 4
    OLED.FTEXT(0,0, 2, 255,255,255, string("Repeating"),0)
    LAt[noparse][[/noparse]i] := Fd.Rx
       
 Repeat i from 0 to 4
 OLED.FTEXT(0,i, 2, 255,255,255, Lat[noparse][[/noparse]i],0)
 Delay.Pausesec(1) 
    OLED.erase 

But I dont seem to be getting anything that makes sense.
I think that I am recieving the outbound as the inbound.

Any Ideas suggestions?
Thanks always
TJ

Comments

  • tigercaseytigercasey Posts: 1
    edited 2008-06-06 07:29
    Hello TJ,
    I had the same problem, and it wasn't until digging
    into the guts of the serial duplex object that I
    discovered the importance of ... mode bits!

    In your line of code

    Fd.start(16, 16, 0, 4800)

    try %1100 instead of 0.

    What's happening is you're not ignoring the Tx echo
    on the Rx line, and I believe the GPS line might be
    an open drain/source tx as well.

    Also, the third chunk of data (the word sized one)
    is not seconds, but fractional minutes. For example,
    you might get something like 1234 for this portion.
    If your minutes were something like 8, then your overall
    minute specification would be 8.1234. You can
    certainly convert this value to seconds, using the fact
    that 60 seconds = 1 minute.

    Hope this helps!
Sign In or Register to comment.