
I help you, the 66th value is 118 = 0x76. (Message id numbering starts with 0, so the 1st array element belongs to message #0, the 2nd element to message #1, and so on.) The message ID in our case is 0x41 = 65, so look up the 66th element in this array. Here is the C one: (look for the MAVLINK_MESSAGE_CRCS array) Pre-generated values can be looked up from arrays present in all kind of implementation available. The value is generated from the official message name by a specified algorhythm. The salt is an individual (not unique, but constant) value for all message types. Also, one extra byte salt appended at the end. ) )Ĭhecksum is a CRC-16/MCRF4XX value, always computed from all bytes except the frame start marker.

Since it is reported using 32 bits, one MUST have to restart its copter/plane autopilot after every 49 days of continuos operation or else it might failĮven during mid-flight! (Copyright by Matt Parker. Values correctly reported twice per second as requested and the timestamp value is in millisecs. Since the frequency requested was 0x0002 (Hz), this means that the Interesting addendum: the time diff between such two messages are exactly 0x1f4 (500). RS - RSSI (system dependent value) (255 - unknown)ĬSLH - Checksum (CRC, actually), low byte first TSLH - Timestamp (since bootup), low byte first LN - Payload length (bytes between message id and checksum)

(This is a 12ch radio, so the last 4 0x05ea are made up by the Ardupilot, I guess.)
