...
Byte | Field Name | Description |
---|---|---|
0 | Start of Frame | Fixed value of 0xF1; will be referred to as START_OF_FRAME throughout this document. |
1 | Primary Header | Defines the primary frame type. These are listed in /wiki/spaces/SPRHA17SPRC2/pages/37093546110562985. |
2 | Secondary Header | Identifies the command subset of the given primary frame type. These are listed in /wiki/spaces/SPRHA17SPRC2/pages/37093546110562985. |
3 | Frame Sequence Number | 0 – 127: Host initiated transactions 128 – 255: Module initiated transactions The Frame Sequence Number enumerates a serial message exchanged between the Host and the Module, and vice versa. Use of a Frame Sequence Number for each such message is recommended. For best practice, we also recommend the Frame Sequence Number be incremented by 1 for each newly initiated message. The response to a message must use the same Frame Sequence Number as the message that is being responded to. Any transaction, whether initiated by the Host or the Module, may be acknowledged (i.e., ACK'ed) by the recipient with a response using the same Frame Sequence Number. The Frame Sequence Number is used for tracking purposes but is not a mandatory feature. If its use is not desired, it should be assigned a value of 0x00. |
4 | Payload Length | Defines the length of the payload of a received or transmitted frame as 0-n bytes; at the time of this writing, the maximum acceptable values for n are:
Received by Module – 0x7A or 122 bytes |
...
The payload contains the command’s parameters. Command parameters are detailed in Frame Payload Definitions.
Checksum
The Checksum is a fixed two bytes in length, with the MSB indicating the End of Frame (EOF). It is calculated by summing the values of byes starting from the Primary Header to the end of the Payload. Any overflow above two bytes is discarded.
...