12.1.5.2.1 Xmodem Protocol

The Send and Receive File commands use the Xmodem protocol to communicate. Any terminal using this protocol can be used to send the application file to the target. The size of the binary file to send depends on the SRAM size embedded in the product. In all cases, the size of the binary file must be lower than the SRAM size because the Xmodem protocol requires some SRAM memory in order to work.

The Xmodem protocol supported is the 128-byte length block. This protocol uses a two-character CRC16 to guarantee detection of maximum bit errors.

Xmodem protocol with CRC is supported by successful transmission reports provided both by a sender and by a receiver. Each transfer block is as follows:

<SOH><blk #><255-blk #><--128 data bytes--><checksum> in which:

  • <SOH> = 01 hex
  • <blk #> = binary number, starts at 01, increments by 1, and wraps 0FFH to 00H (not to 01)
  • <255-blk #> = 1’s complement of the blk#.
  • <checksum> = 2-byte CRC16

The following figure shows a transmission using this protocol.

Figure 12-10. Xmodem Transfer Example