SirF protocol

Hi, I am waiting for the new Arduino Board and am trying to read up on everything. I've looked at the code some and trying to understand what I can. I have a EM401, not the 406. The 401 speaks Sirf, but I know there could be a difference with the 406. What I've been looking at is the parts of the ardupilot code that pertain to SirF, like this:void configure_gps(void){const byte gps_header[]={0xA0,0xA2,0x00,0x08,0xA6,0x00 };//Used to configure Sirf GPSconst byte gps_payload[]={0x02,0x04,0x07,0x09,0x1B };//Used to configure Sirf GPSconst byte gps_checksum[]={0xA8,0xAA,0xAD,0xAF,0xC1 };//Used to configure Sirf GPSconst byte cero=0x00;//Used to configure Sirf GPSI know these are HEX, but I dont really understand it. I know the SirF manual should explain, but I'm not a programmer(yet:). So, first question is about the format of HEX. They all start with 0x and then a letter or number, but the SirF manual doesnt show same format. It's very confusing to me. So, next question is about the ardupilot code example above. You have 3 const bytes and then the HEX numbers. Are these 3 const the layers of the SirF Protocol? Are the HEX numbers message ID's?Thanks for any explanations.Harry

You need to be a member of diydrones to add comments!

Join diydrones

Email me when people reply –

Replies

  • Here is a snippet of some output from the SirF Demo:

    GeoNav PC Time=1239765913.090
    41,0,516,1527,271531868,2009,4,15,3,25,16868,4456612,392970517,-773026245,10844,14183,21,6,10328,0,5,0,317,481,0,0,2147483647,0,1878731,0,0,0,0,5,11
    4,503,27153186,12,13,234,50,0,0,0,0,0,0,0,0,0,0,0,8,309,15,191,37,37,37,37,37,37,37,37,37,37,11,175,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,61,62,191,34,34,34,35,34,34,35,35,34,34,6,54,47,191,31,32,32,31,31,31,31,31,31,31,25,321,77,0,0,0,0,0,0,0,0,0,0,0,23,196,30,191,34,35,35,34,34,34,35,34,36,34,19,151,71,191,38,37,37,37,37,38,37,38,37,37,16,66,22,0,0,0,0,0,0,0,0,0,0,0,125,0,0,0,0,0,0,0,0,0,0,0,0,0
    2,1086389,-4821718,4017961,0.000,-0.125,0.000,4,2.2,2,503,27153186,5,8,3,6,23,19,0,0,0,0,0,0,0
    ThrPut(186=1ms): Latency:000 SegStatMax:000 AveTrkTime:186 Nav Complete:0080 ms
    27,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
    52,3,25,17,15,4,2009,14,999999996,7
    GeoNav PC Time=1239765914.091
    41,0,516,1527,271532868,2009,4,15,3,25,17868,4456612,392970442,-773026389,10959,14297,21,5,10328,0,10,0,318,481,0,0,2147483647,0,1878750,0,0,0,0,5,11
    4,503,27153286,12,13,234,50,0,0,0,0,0,0,0,0,0,0,0,8,309,15,191,37,36,37,38,37,37,37,37,37,37,11,175,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,61,62,191,33,34,34,35,34,34,34,35,34,35,6,54,47,191,32,31,32,32,30,31,31,31,30,31,25,321,77,0,0,0,0,0,0,0,0,0,0,0,23,196,30,191,34,33,34,34,34,34,34,35,34,34,19,151,71,191,37,38,37,38,38,38,38,38,38,38,16,66,22,0,0,0,0,0,0,0,0,0,0,0,125,0,0,0,0,0,0,0,0,0,0,0,0,0
    2,1086388,-4821720,4017961,0.000,-0.125,0.000,4,2.2,2,503,27153286,5,8,3,6,23,19,0,0,0,0,0,0,0
    ThrPut(186=1ms): Latency:000 SegStatMax:000 AveTrkTime:186 Nav Complete:0067 ms
    27,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
    52,3,25,18,15,4,2009,14,999999996,7
    GeoNav PC Time=1239765915.093
    41,0,516,1527,271533868,2009,4,15,3,25,18868,4456612,392970375,-773026531,11070,14409,21,5,10328,0,13,0,318,481,0,0,2147483647,0,1878750,0,0,0,0,5,11
    4,503,27153386,12,13,234,50,0,0,0,0,0,0,0,0,0,0,0,8,309,15,191,37,37,37,37,37,37,37,37,37,37,11,175,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,61,62,191,34,35,35,34,34,34,33,33,33,34,6,54,47,191,30,30,30,31,31,32,30,31,31,30,25,321,77,0,0,0,0,0,0,0,0,0,0,0,23,196,30,191,34,34,34,35,35,35,34,34,34,34,19,151,71,191,37,37,38,38,37,37,37,37,37,38,16,66,22,0,0,0,0,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,0,0,0,0,0,0
    2,1086387,-4821721,4017961,0.000,-0.125,0.000,4,2.2,2,503,27153386,5,8,3,6,23,19,0,0,0,0,0,0,0
    ThrPut(186=1ms): Latency:000 SegStatMax:000 AveTrkTime:186 Nav Complete:0071 ms
    27,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
    52,3,25,19,15,4,2009,14,999999996,7

    How does this compare to the output from a 406? How does it relate to the code used in ardupilot 2.0.1? So many questions. Can anyone point out what is in this output?

    Thanks,
    Harry
This reply was deleted.

Activity

Neville Rodrigues liked Neville Rodrigues's profile
Jun 30
Santiago Perez liked Santiago Perez's profile
Jun 21
More…