Software Communication 3-6
Scenario 2.
1 The computer sends a command block stamped with sequence #1 to the pump.
2 The pump never receives the command due to a communication error and thus does
not send an acknowledgement to the PC.
3 The PC waits 100 ms for the acknowledgement, then retransmits the command block
with the sequence number left at 1 and the repeat bit set to indicate a retransmission.
4 The pump receives the retransmission, identified as such by the repeat bit.
5 The pump checks the sequence number against that of the previously received
command block. Noting a mismatch, the pump recognizes this as a new command
block and sends an acknowledgement to the PC. It then executes the command.
6 The PC receives the acknowledgement and continues with normal communications.
7 The next command block is stamped with sequence #2 to indicate a new command.
The sequence number/repeat byte is constructed as follows:
Bit #
76543210
Value
0011REPSQ2SQ1SQ0
REP: 0 for non-repeated / 1 for repeated
SQ0 – SQ2: sequence value, as follows:
Sequence
Value
SQ2 SQ1 SQ0
1001
2010
3011
4100
5101
6110
7111
NOTE Bits 4 through 7 are always fixed to the values shown.
Data Block (length n)
The data block consists of the data or commands sent to the pump or host (this is
an ASCII string). When the pump is responding to a move or [Q] command, the
data block length is 0 (i.e., no data string exists).
ETX
The ETX character indicates the end of a command string.