beautypg.com

Xmodem upload protocol, R xmodem upload protocol e – Matrix Orbital GLK24064-16-1U User Manual

Page 37

background image

32


XModem Upload Protocol

In addition to its original simple upload format, Matrix Orbital has added an XModem based protocol.
This facilitates much faster download speeds by increasing the packet size from 1 byte to 128 bytes
greatly increasing throughput. Though a protocol similar to the original upload scheme is used, a two
byte CRC check is preformed at the end of each packet in place of the byte echo system. To begin the
upload, a series of command bytes are sent, much however, no distinction is made between bitmap and
font as the XModem protocol is used to upload bin or ebin files that contain all the bitmaps and fonts
required for the unit. Once the command bytes are sent, the size of the file is sent in two bytes, least
significant byte first. Then two additional bytes are sent of the value zero. At this point the display will
respond with an ACK if the file fits or a NAK otherwise. Please note that these values are different than
those of the original protocol as seen in the table below. If a NAK is seen at any point by the host, the
upload is to be aborted in the same fashion as the regular protocol. If the file will fit, the start of header
byte will be sent by the host, followed by a block count, in regular and inverted format, representing the
number of 128 byte blocks remaining to. The display will then check to make sure the block count value
matches its own before ACKing. The host can then send a 128 byte block of data followed by that blocks
high and low CRC16 bytes. The display then performs a CRC check on the data receive and ACKs if it
matches that which was sent. Transfer continues with a block count and continues in this way until the
end of file is reached. Once the end of the upload file is reached, the host should transmit a single end
of transmission byte. If the end of file is expected, the display will ACK one last time. This EOT byte
along with the other special characters mentioned above is listed in the table below.

Table 32: XModem Upload Protocol:

Host

Display

Comments

254

Command Prefix

219

XModem Upload Command

133

Command Byte One

6

Command Byte Two

48

Command Byte Three

0

Size LSB

64

Size MSB

0

Zero

0

Zero

6

ACK (NAK if file is too big)

1

Start of Header

128

Block Count

127

Inverted Block Count (255-Count)

6

ACK (NAK if counts don’t match)

<128 B>

128 Byte Data Block

30

CRC MSB

71

CRC LSB

6

ACK (NAK if CRCs don’t match)

4

End of Transmission

6

ACK (NAK if EOT is not expected)

Table 33: XModem Protocol Message Bytes

Value

Action

Description

6

Acknowledged

Transfer

successful, upload

continues

33

Not

Acknowledged

Transfer failed,
upload aborted

1

Start of Header

Begin upload

transfer

4

End of

Transmission

End completed

upload transfer