Professional Documents
Culture Documents
1 - 3 - HCTS - LIS - Protocoldescription - V2.6 - EN
1 - 3 - HCTS - LIS - Protocoldescription - V2.6 - EN
HCTS2000
High Speed Closed Tube Sorter
1 OVERVIEW......................................................................................................................................1
1.1 OPERATIONAL BASICS ..................................................................................................................1
1.2 PHYSICAL CONNECTION ................................................................................................................2
1.3 LOGICAL CONNECTION ..................................................................................................................2
HCTS_LIS_Protokollbeschreibung_V2.6_EN.doc I
1 Overview
HCTS_LIS_Protokollbeschreibung_V2.6_EN.doc Seite 1
1.2 Physical connection
Data transfer between the HCTS and the LIS takes place over a serial RS232 connection.
The connector at the HCTS is a female 25-pin D-Sub with screw lock.
Only 4 pins are used:
HCTS_LIS_Protokollbeschreibung_V2.6_EN.doc Seite 2
2 Low-Level Communication Protocol
2.1 Framing
Each data transfer takes place within a frame. Each data packet has the following structure:
HCTS_LIS_Protokollbeschreibung_V2.6_EN.doc Seite 3
communication error after 8 frame retransmissons (taking place if the acknowledge timeout
of about 0.8 sec has expired).
No means for delaying the transmission on a character by character basis are implemented.
HCTS_LIS_Protokollbeschreibung_V2.6_EN.doc Seite 4
3 High-Level Communication Protocol version 1
For information on differences of version 1 and 2 please refer to 1.3 Logical connection.
HCTS_LIS_Protokollbeschreibung_V2.6_EN.doc Seite 5
3.3 Tube information frame structure for protocol version 1
Data Tube Sorting Cap Extension Occurrences Target
type barcode rule color channel
The sorting rule, cap color and target channel fields are available in HCTS firmware versions
2.5.008 and later. In earlier versions these fields are filled with ‘0’s (30hex). The occurrences
field is only used in communication between the “m-u-t Link” software and LIS. Without it,
the occurrences field is filled with ‘0’s (30hex).
Examples for data field content (Barcode ‘XY12345678’, sorting rule 2 selected, cap color
code 14, target bin C)
Protocol version 1 tube information query frame:
BI00XY1234567811400000
Protocol version 1 tube information announcement frame:
BI00XY12345678B140000C
HCTS_LIS_Protokollbeschreibung_V2.6_EN.doc Seite 6
3.4 Test requirements data frames
Test requirements data frames are sent from LIS to HCTS and contain a list of test codes
the HCTS uses to determine the target bin (or rack). Each test code is limited to 8
characters, the list may hold up to 25 test codes. It is also possible to determine the target at
the LIS side and send a frame with only one test code that actually is a target identifier.
The test requirements data frames also hold the tube barcode to enable the correct
allocation of the requirements list even if the LIS reponds to the HCTS queries in permuted
order.
Test codes may contain digits (‘0’ to ‘9’), all upper- and lowercase characters (‘A’ to ‘Z’ and
‘a’ to ‘z’) and the special characters '+', '-', '_', '=', '?' and '@'.
Example for data field content (Barcode ‘XY12345678’, test codes “HBA1C”, “COTININE”
and “TSH”), the dot symbol ‘·’ denotes a blank (20hex)
Protocol version 1 test requirements frame:
DW00XY123456780000000000000000000000000000HBA1C···COTININETSH·····
HCTS_LIS_Protokollbeschreibung_V2.6_EN.doc Seite 7
4 High-Level Communication Protocol version 2
The high level protocol version 2 is available in HCTS firmware verions 2.3.061 and later.
For more information on differences of version 1 and 2 please refer to 1.3 Logical
connection.
HCTS_LIS_Protokollbeschreibung_V2.6_EN.doc Seite 8
4.3 Tube information frame structure for protocol version 2
Data Tube Sorting Cap Device
Delim. Delim. Extension Occurrences Target Delim.
type barcode rule color id
As with protocol version 1, the sorting rule, cap color and target channel fields are available
in HCTS firmware versions 2.5.008 and later. In earlier versions these fields and the
extension, occurrences and device id fields are omitted. The occurrences and device id
fields are only used in communication between the “m-u-t Link” software and LIS. Without it,
the occurrences field is filled with ‘0’ (30hex), and the device id field is omitted.
Examples for data field content (Barcode ‘XY12345678’, sorting rule 2 selected, cap color
code 14, target bin C)
Protocol version 2 tube information query frame:
BI|XY12345678|11400000|
Protocol version 2 tube information announcement frame:
BI|XY12345678|B140000C|
HCTS_LIS_Protokollbeschreibung_V2.6_EN.doc Seite 9
4.4 Test requirements data frames
Test requirements data frames are sent from LIS to HCTS and contain a list of test codes
the HCTS uses to determine the target bin (or rack). Each test code is limited to 8
characters, the list may hold up to 25 test codes. It is also possible to determine the target at
the LIS side and send a frame with only one test code that actually is a target identifier.
The test requirements data frames also hold the tube barcode to enable the correct
allocation of the requirements list even if the LIS responds to the HCTS queries in permuted
order.
Test codes may contain digits (‘0’ to ‘9’), all upper- and lowercase characters (‘A’ to ‘Z’ and
‘a’ to ‘z’) and the special characters '+', '-', '_', '=', '?' and '@'.
Example for data field content (Barcode ‘XY12345678’, test codes “HBA1C”, “COTININE”
and “TSH”), the dot symbol ‘·’ denotes a blank (20hex)
Protocol version 2 test requirements frame:
DW|XY12345678|||HBA1C···COTININETSH·····|
HCTS_LIS_Protokollbeschreibung_V2.6_EN.doc Seite 10
5 Dataflow examples for Protocol version 1
HCTS_LIS_Protokollbeschreibung_V2.6_EN.doc Seite 11
5.4 Information transfer for each tube
Barcode ‘1234ABC5678’, sorting rule 4 selected, cap color code 5, target bin F, test codes
“CHOL”, “ T2” and “BILI_TOT”
For regular operation, the frame order can differ from that shown in the examples, as the
HCTS may send a query before the LIS has responded to the previous one. Tube
announcements are sent several seconds after receiving their order list due to the time
needed for tube transportation, so the order list and the announcement frames for a certain
tube are usually interleaved by numerous frames belonging to succeeding tubes.
It can not be ensured that the ACK (or NAK) is the first data transmitted by the HCTS after a
frame from the LIS has been received. If the HCTS has started sending a frame while
another frame comes in from the LIS, the transmit frame is sent entirely before the frame
received from the LIS is acknoledged (also see section 2.2).
HCTS_LIS_Protokollbeschreibung_V2.6_EN.doc Seite 12
6 Dataflow examples for Protocol version 2
HCTS_LIS_Protokollbeschreibung_V2.6_EN.doc Seite 13
6.4 Information transfer for each tube
Barcode ‘1234ABC5678’, sorting rule 4 selected, cap color code 5, target bin F, test codes
“CHOL”, “ T2” and “BILI_TOT”
For regular operation, the frame order can differ from that shown in the examples, as the
HCTS may send a query before the LIS has responded to the previous one. Tube
announcements are sent several seconds after receiving their order list due to the time
needed for tube transportation, so the order list and the announcement frames for a certain
tube are usually interleaved by numerous frames belonging to succeeding tubes.
It can not be ensured that the ACK (or NAK) is the first data transmitted by the HCTS after a
frame from the LIS has been received. If the HCTS has started sending a frame while
another frame comes in from the LIS, the transmit frame is sent entirely before the frame
received from the LIS is acknowledged (also see section 2.2).
HCTS_LIS_Protokollbeschreibung_V2.6_EN.doc Seite 14
HCTS -> LIS <STX>·····D·BI|1234ABC5679|30500000|??<ETX>
LIS -> HCTS <ACK>
LIS -> HCTS <STX>·····D·DW|1234ABC5678|||CHOL····BILI_TOT|??<ETX>
Comment: LIS answers with test requirements in different order than it received the barcode
information
HCTS -> LIS: <ACK>
LIS -> HCTS <STX>·····D·DW|1234ABC5677|||CHOL····BILI_TOT|??<ETX>
HCTS -> LIS <STX>·····D·BI|1234ABC5678|D050000F|??<ETX>
Comment: Rather than ACKing the last test requirement record the HCTS sends an
announcement record since the flipping of the tube into the target occurs
asynchronously to the rest of the data flow
HCTS -> LIS: <ACK>
Comment: This is the Ack for DW record for barcode 1234ABC5677
LIS -> HCTS <ACK>
Comment: This is Ack for the Announcement record 1234ABC5678 from the HCTS
HCTS -> LIS <STX>·····D·BI|1234ABC5677|D050000F|??<ETX>
LIS -> HCTS <STX>·····D·DW|123<ACK>4ABC5679|||CHOL··
··T2······BILI_TOT|??<ETX>
Comment: LIS started to assemble the dw record for 1234ABC5679 when it received the
Announcement record for 1234ABC5677. It may embed the Ack into a
normal record (whereas the ACK is not included in the checksum
calculation).
HCTS -> LIS: <ACK>
HCTS_LIS_Protokollbeschreibung_V2.6_EN.doc Seite 15
7 Simple communication Example for LIS processing of HCTS messages
This code example demonstrates a simple approach to program the logic for the LIS data
handling of HCTS messages. It is valid for both protocol versions 1 and 2.
BEGIN
CONST DATA_FRAME = 1;
void lis_hcts_communication()
{
TYPE FRAME_T = {String, time};
FRAME_T SEND_FRAME = {"", 0};
const TIMEOUT = 1 s;
int r;
string Frame, buffer;
int wait_for_Ack = false;
HCTS_LIS_Protokollbeschreibung_V2.6_EN.doc Seite 16
int frame_received = false;
if (r == DATA_FRAME)
then
{
copy(Frame, buffer);
frame_received = true;
}
if (r == 'ACK')
then wait_for_Ack = FALSE;
// check for timeout while waiting for Ack for last frame sent
if (wait_for_Ack == TRUE AND SEND_FRAME.time + TIMEOUT < current time)
HCTS_LIS_Protokollbeschreibung_V2.6_EN.doc Seite 17
then{
Send SEND_FRAME.string on RS232;
SEND_FRAME.time = current time;
}
} // while
}//lis_hcts_communication
END
HCTS_LIS_Protokollbeschreibung_V2.6_EN.doc Seite 18