Selectra E Host Protocol
v1.1
Selectra E Host Protocol
Introduction
This document describes the interface, the data format and transmission instructions of the
Selectra E host protocol and is applicable for the following instruments:
- Selectra/Flexor E software v3.0.4 and higher
RS-232 Description
The line signal definition is shown in the following table:
DB-25 Signal Name Direction Remarks
Pin #
7 SG Signal Ground
2 TX Transmit data output data from analyzer-PC to host
3 RX Receive data input data from host to analyzer-PC
4 RTS Request To Send output *
5 CTS Clear To Send input *
20 DTR Data Terminal output *
Ready
6 DSR Data Set Ready input *
8 CD Carrier Detect input not used
22 RI Ring Indicator input not used
* function depending on the COM-port settings
Format of commands from host to analyzer-PC
The format of commands from host to analyser-PC is:
STX { command } ETX
Format of (spontaneous) responses from analyzer-PC to host
The format of (spontaneous) responses from analyzer-PC to host is:
STX { (spontaneous) response } ETX CR LF
1
Selectra E Host Protocol
General remarks
The analyzer-PC uses a proprietary communication protocol to connect to a host computer.
This is a RS232 serial interface protocol, and the main properties are given here.
─ The analyzer-PC uses handshaking according to the settings of the COM-port used for
the communication with the host.
─ For v1.x software, configuration of COM-port settings can only be done in the shell or the
Analyzer Host Communication Program. V2.x software allows configuration of COM-port
settings from within the Analyzer Main Program.
─ As start and stop indicators of requests and responses respectively STX and ETX are
used.
─ No use is made of a checksum.
─ There is no initialization of a complete communication protocol as such. The host can
simply send requests for reagent positions, tests, software versions etc. The analyzer-PC
will respond with the corresponding answer. In order to check the communication the
Echo request function can be used.
─ This protocol supports only works in the so-called upload mode. This means that the host
sends for each individual sample a Request Sample to the analyzer-PC, which directly
responds with a Request sample indication and after finishing the request with a Result.
─ In case the analyzer works with more than one reagent rotor the host must send only test
requests for the tests actually installed on the reagent rotor. The other tests for this
sample can then be requested later.
─ When the operator changes the reagent rotor of the analyzer, a new Reagent Installation
is sent to the host automatically, so the host knows which tests can be requested.
─ The hereafter mentioned [Physician_name], [limit_flags], [reagent batch number], [reagent
expiry date], [measurement date] and [measurement time] are only used when the
corresponding settings in the Installation – Communication – Host Communication menu
of the analyzer program are “on”.
Note that when switched “off”, the field seperator (semicolon ;) is also not transmitted,
thus changing the field count.
2
Selectra E Host Protocol
Message Result
Direction analyzer → host
Format STX {
R;
device_id(6);
type(1);
Sample_id(12);
Sample_name(20);
date_of_birth(11);
sex(1);
[Physician_name(20);]
[Measurement date(11);]
[Measurement time(5);]
nr_of_tests(2);
The next lines are repeated <nr of tests> times:
test_name(4);
[reagent batch number(10);]
[reagent expiry date(11);]
result(7);
flags(22);
[limit_flags(3);]
units(6);
} ETX CR LF
Explanation
This message is sent automatically by the analyzer, if the tests of a sample are completed or
if the operator presses Ctrl-F1 in the Evaluate Samples menu, in which case a result
message is sent for the sample currently displayed on screen.
If in the Communications menu "Extended result:" is set to "yes", the extended result
message is sent instead of the result message.
type(1) N: Normal
E: Stat
P: Pediatric
C: Control
S: Calibrator
B: Blank
sex(1) M:Male
F:Female
P:Pediatric
FOR CONTROL:
Sample_nr(12);Sample_name(20);date_of_birth(11);sex(1);[Physician_na
me(20);][Measurement date(11);][Measurement time(5);]
IS REPLACED BY:
Contr_name(15);Batch_nr(10);;;[;][;][;]
FOR CALIBRATOR:
Sample_nr(12);Sample_name(20);date_of_birth(11);sex(1);[Physician_na
me(20);][Measurement date(11);][Measurement time(5);]
IS REPLACED BY:
Calib_name(15);;;;[;][;][;]
3
Selectra E Host Protocol
FOR BLANK:
Sample_nr(12);Sample_name(20);date_of_birth(11);sex(1);[Physician_na
me(20);][Measurement date(11);][Measurement time(5);]
IS REPLACED BY:
Blank(5);;;;[;][;][;]
THE LINE
test_name(4);[reagent batch number(10);][reagent expiry
date(11);]result(7);flags(22);[limit_flags(3);]units(6);
IS REPEATED FOR EACH TEST.
flags(22): see Extended result (page 5)
limit_flags(3): see Extended result
Example:
S
analyzer → host : TX{R;Device;N;1415 ;
Jane Dobson ; ;F;
; 1;
CREA;-120 ; D N X ; L ;
umol/l;}ETX CR LF
4
Selectra E Host Protocol
Message Extended Result
Direction analyzer → host
Format STX {
X;
device_id(6);
type(1);
Sample_id(12);
Sample_name(20);
date_of_birth(11);
sex(1);
[Physician_name(20);]
[Measurement date(11);]
[Measurement time(5);]
nr_of_tests(2);
The next lines are repeated <nr of tests> times:
test_name(4);
[reagent batch number(10);]
[reagent expiry date(11);]
result(7);
flags(22);
[limit_flags(3);]
units(6);
reagent absorbance(7);
raw result(7);
raw units(6);
<detailed info>
} ETX CR LF
The analyzer will transmit ‘extended results’ if the ‘Extended format’ is switched on in the
host communication settings. The extended result has a different ID (X) as the normal result
appends raw measurement information to the result.
Explanation
(See also Result)
FOR ISE TESTS:
reag_abs(7);
IS REPLACED BY:
;
THE LINE
test_name(4);[reagent batch number(10);][reagent expiry
date(11);]result(7);flags(22);[limit_flags(3);]units(6);reagent
absorbance(7);raw result(7);raw units(6);<detailed info>
IS REPEATED FOR EACH TEST.
For sample blank tests, the test_name(4) is upper/lowercase toggled
flags(22) see below
limit_flags(3) see below
5
Selectra E Host Protocol
<detailed info> is replaced by
MONO MODE:
for kinetic:
K; 22 times: used_i(1); point_i(6);
for twopoint:
T; 22 times: used_i(1); point_i(6);
for endpoint monochromatic:
M; endpoint_1(6); endpoint_2(6); 42 times: ‘;’
for endpoint bichromatic:
B; endpoint_1(6); endpoint_2(6); 42 times: ‘;’
for ISE:
I; 44 times: ‘;’
DUAL MODE:
for kinetic:
k; 21 times: used_i(1); point_i(6); 2 times: ‘;’
for twopoint:
t; 21 times: used_i(1); point_i(6); 2 times: ‘;’
for endpoint monochromatic:
m;
used_r_abs_1a(1);endpoint_abs_1a(6);
used_r_abs_1b(1);endpoint_abs_1b(6);
used_ep_1a(1);endpoint_1a(6);
used_ep_1b(1);endpoint_1b(6);
used_ep_2a(1);endpoint_2a(6);
used_ep_2b(1);endpoint_2b(6);
32 times: ';'
for endpoint bichromatic:
b;
used_r_abs_1a(1);endpoint_abs_1a(6);
used_r_abs_1b(1);endpoint_abs_1b(6);
used_ep_1a(1);endpoint_1a(6);
used_ep_1b(1);endpoint_1b(6);
used_ep_2a(1);endpoint_2a(6);
used_ep_2b(1);endpoint_2b(6);
32 times: ‘;’
for ISE:
I; 44 times: ‘;’
used_i(1) 0: point_i not used
1: point_i used for computation
Example:
S
analyzer → host : TX{X;Device;N;19283 ;
John Doe ;19-MAY-1972;M;
Dr. Johnson ; 1;CREA;-121 ;
D N X ; L ;umol/l;
0.3283 ;0.0000 ;dAbs/m ;
k;1;0.0111;1;0.0111;1;0.0111;1;0.0111;0;NAN
;0;NAN ;0;NAN ;0;NAN ;0;NAN ;0;NAN
;0;NAN ;0;NAN ;0;NAN ;0;NAN ;0;NAN
;0;NAN ;0;NAN ;0;NAN ;0;NAN ;0;NAN
;0;NAN ;;;GLUC;-0.008 ;
; ;dAbs/m ;2.1977 ;-0.0079;dAbs/m }ETX CR LF
*) The term NAN stands for ‘not-a-number’ indicating that no raw result measurments exist for these
measurement points, these points are not used for calculation of the result.
6
Selectra E Host Protocol
Flags
These flags appear in a fixed order in a string. For every flag either a space is written or the
respective flag. If none of the flags is true a string is sent with 22 spaces.
pos. flag error
1 G general hardware error
2 R insufficient reagent
3 # insufficient sample
4 L lamp error/ISE electrode not calibrated
5 U underrange/underrange ISE electrode
6 O overrange/overrange ISE electrode
7 u underrange reference counter/underrange reference ISE electrode
8 o overrange reference counter/overrange reference ISE electrode
9 T cuvette temperature error/ISE temperature error
10 r rerun
11 * non linearity error
12 M absorbance limit violation
13 D reagent absorbance deviation error
14 W westgard violation
15 A calibrator limit violation
16 C control limit violation
17 N reference limit violation
18 a reagent absorbance limit violation
19 I general ISE unit error
20 X concentration limit error
21 P prozone error
22 E result near cut-off
Limit flags
These flags appear in a fixed order in a string. For every flag either a space is written or the
respective flag. If none of the flags is true a string is sent with 3 spaces.
pos. flag error
1 H high limit
2 L low limit
3 P panic
7
Selectra E Host Protocol
Message Reagent installation
Direction analyzer → host
Format STX {
I;
device_id(6);
The next lines are repeated 32 times:
test_name(4);
[reagent batch number(10);]
[reagent expiry date(11);]
} ETX CR LF
Explanation
This message is sent (automatically) by the analyzer-PC, when the operator has changed
the reagent installation, the run mode or the reagent disk (menu).
For sample blank tests, the test_name(4) is left blank.
Example:
S
analyzer → host : TX{I;Device;CREA;CHOL;GLUC;GGT ;UREA; ;
; ; ; ; ; ; ; ; ; ;
; ; ; ; ; ; ; ; ; ;
; ; ; ; ; ;}ETX CR LF
8
Selectra E Host Protocol
Message Blank result
Direction analyzer → host
Format STX {
B;
device_id(6);
wavelength(3);
cuvet_blank_val(6); (repeated 48 times)
cuvet_av(6); cuvet_sd(6);
lamp_av(6); lamp_sd(6);
} EXT CR LF
Explanation
This message is sent by the analyzer when the operator presses Ctrl-F1 in the
Rotor/System/ISE - Blank Rotor menu.
Example:
S
analyzer → host TX{B;Device;340;1.2025;1.2040;1.1967;1.2079;
1.1983;1.1956;1.2078;1.2048;1.2016;1.2001;1.2025;
1.2029;1.2004;1.2015;1.2022;1.2010;1.2013;1.2035;
1.1982;1.1981;1.2105;1.2104;1.2023;1.2032;1.2046;
1.2059;1.1957;1.2051;1.2001;1.2040;1.1998;1.2029;
1.2033;1.2087;1.2062;1.2054;1.2107;1.2039;1.2062;
1.2018;1.1988;1.2035;1.2014;1.2007;1.2040;1.2016;
1.2032;1.2013;1.2028;0.0036;-0.905;0.0028;}ETX CR LF
9
Selectra E Host Protocol
Command Echo request
Direction host → analyzer
Format STX {
E;
} ETX
Response STX {
e;
device_id(6);
status(1);
} ETX CR LF
Explanation:
status(1) 0: success
7: failed: message length error
8: failed: overrun error
9: failed: parity, framing or break error
This message can be used as a test feature.
Example:
S E
host → analyzer : TX{E;} TX
S E C L
analyzer → host : TX{e;Device;0;} TX R F
10
Selectra E Host Protocol
Command Get software version
Direction host → analyzer
Format STX {
V;
} ETX
Response STX {
v;
device_id(6);
status(1);
software_version(6..18);
} ETX CR LF
Explanation:
status(1) 0: success
7: failed: message length error
8: failed: overrun error
9: failed: parity, framing or break error
Example:
S E
host → analyzer : TX{V;} TX
S E C L
analyzer → host : TX{v;Device;0;[Link];} TX R F
11
Selectra E Host Protocol
Command Get reagent installation
Direction host → analyzer
Format STX {
I;
} ETX
Response STX {
i;
device_id(6);
status(1);
The next lines are repeated 32 times:
test_name(4);
[reagent batch number(10);]
[reagent expiry date(11);]
} ETX CR LF
Explanation:
status(1) 0: success
7: failed: message length error
8: failed: overrun error
9: failed: parity, framing or break error
For sample blank tests or uninstalled tests, the test_name(4) is left blank (4 spaces).
Example:
S E
host → analyzer : TX{I;} TX
S
analyzer → host : TX{i;Device;0;CREA;CHOL;GLUC;GGT ;UREA; ;
; ; ; ; ; ; ; ; ; ;
; ; ; ; ; ; ; ; ; ;
E C L
; ; ; ; ; ;} TX R F
12
Selectra E Host Protocol
Command Get reagent test counters
Direction host → analyzer
Format STX {
N;
} ETX
Response STX {
n;device_id(4);
status(1);
reagent_test_count(5); (32 times)
} ETX CR LF
Explanation:
status(1) 0: success
7: failed: message length error
8: failed: overrun error
9: failed: parity, framing or break error
For sample blank tests or uninstalled tests, the reagent_test_count(5) is set to -1.
S E
host → analyzer : TX{N;} TX
S
analyzer → host : TX{ n;Device;0; 2; 0; 1; 0; 1;
-1; -1; -1; -1; -1; -1; -1; -1;
-1; -1; -1; -1; -1; -1; -1; -1;
-1; -1; -1; -1; -1; -1; -1; -1;
-1; -1; -1;}ETX CR LF
13
Selectra E Host Protocol
Command Request sample
Direction Host → analyzer
Format STX {
Q;
Sample_nr(1..12);
[type(1)]; (Default: N)
[Sample_name(0..20)]; (Default: empty)
[date_of_birth(0..11)]; (Default: empty)
[sex(1)]; (Default: M)
[[Physician_name(0..20)];] (Default: empty)
request_tests(1..32);
} ETX
Response STX {
q;
device_id(6);
status(1);
Sample_nr(12);
type(1);
Sample_name(20);
date_of_birth(11);
sex(1);
[Physician_name(20);]
request_tests(32);
} ETX CR LF
Explanation
Sample_nr(1..12) May contain the characters 20H..7eH except 3bH (;), but may not
start with 20H (space)
type(1) N: Normal
E: Stat
P: Pediatric
Sample_name(0..20) May contain the characters 20H..7eH but may not start with 20H
(space)
date_of_birth(0..11) Must have the same format (European or American) as programmed
in the system parameters. As separators might be used:
20H..2fH, 3aH, 3cH..40H, 5bH..60H, 7bH..7eH
Valid European Values are:
1.3.92, 01/03/1992, [Link], 1|Mar|1992
Valid America values are:
3.1.92, 03/01/1992, MAR 1 92, [Link], Mar|1|1992
sex(1) M: Male
F: Female
P: Pediatric
request_test(1 .. 32) a row of at most 32 ‘0’ or ‘1’,
0: don't request the test
1: request the test
(Sample blank tests are internally in the analyzer (but not in the
indication) automatically set to 1 if appropriate).
If one or more ISE tests (Na, K or Cl) for a sample are requested, the
analyzer will measure all three (Na, K and Cl) for each requested
sample and will send all three results.
14
Selectra E Host Protocol
The order of the ‘0’s and ‘1’s reflects the same order as the tests in
the reagent installation indication. ‘1’ means the test at the position is
selected, ‘0’ means it is not.
status(1)
0: success: request created or tests added to existing request with the same
sample number etc.
1: failed: sample number already exists, but demographic information doesn't
match, or request in use by the operator
2: failed: no space for request
3: failed: one or more tests requested, which have not been installed
6 failed: syntax error in type, date or sex
7: failed: message length error
8: failed: overrun error
9: failed: parity, framing or break error
Example:
S
host → analyzer : TX{Q;19283;N;John Doe;19/05/1972;M;
Dr. Johnson;
10101000000000000000000000000000;}ETX
S
analyzer → host : TX{q;Device;0;19283 ;N;
John Doe ;19-MAY-1972;M;
Dr. Johnson ;
10101000000000000000000000000000;}ETX CR LF
15
Selectra E Host Protocol
Command Delete request sample
Direction host → analyzer
Format STX {
D;
Sample_nr(1..12);
} ETX
Response STX {
d;device_id(4);
status(1);
Sample_nr(12);
sample_info
} ETX CR LF
Explanation:
status(1) 0: success
1: failed: sample number not found, already loaded or in use by the operator
7: failed: message length error
8: failed: overrun error
9: failed: parity, framing or break error
sample info (only present if status is 0):
type(1);
Sample_name(20);date_of_birth(11);sex(1);
[Physician_name(20)];
Example:
S E
host → analyzer : TX{D;19283;} TX
S
analyzer → host : TX{d;Device;0;19283 ;N;
John Doe ;19-MAY-1972;M;
Dr. Johnson ;}ETX CR LF
16
Selectra E Host Protocol
Command Ask sample result
Direction host → analyzer
Format STX {
R;
Sample_nr(1..12);
} ETX
Response STX {
r;device_id(4);
status(1);
Sample_nr(12);
The next part is only available when status is 0 or 1
type(1);
Sample_name(20);
date_of_birth(11);
sex(1);
[Physician_name(20);]
[Measurement_date(11);]
[measurement time(5);]
nr_of_tests(2);
The next lines are repeated <nr of tests> times:
test_name(4);
[Reagent batch number;]
[Reagent expiry date;]
result(7);
flags(22);
[limit_flags(3);]
units(6);
} ETX CR LF
Explanation
status(1)
0: success: (sample ready or unloaded)
1: success: (sample loaded or still in process)
2: failed: sample number still in request buffer (not yet loaded)
3: failed: sample number not found
7: failed: message length error
8: failed: overrun error
9: failed: parity, framing or break error
type(1) N: Normal
E: Stat
P: Pediatric
If the result is not yet ready it is ‘BUSY’.
flags(22): see Extended result (Page 5)
limit_flags(3): see Extended result
17
Selectra E Host Protocol
Example:
S E
host → analyzer : TX{R;19283;} TX
S
analyzer → host : TX{ r;Device;0;19283 ;N;
John Doe ;19-MAY-1972;M;
Dr. Johnson ; 2;
CREA;41 ; D N X ; L ;
umol/l;
GLUC;4.7 ; ; ;
E C L
mmol/l;} TX R F
List of commands
Host Analyzer Analyzer Host Message Page
- X Extended Result 5
- R Result 3
- B Blank result 9
- I Reagent installation 8
D d Delete request sample 17
E e Echo request 10
I i Get reagent installation 12
N n Get reagent test counters 13
Q q Request sample 14
R r Ask sample result 17
V v Get software version 11
- not available
Disclaimer: this Vital Note has been completed with the greatest possible care. However we cannot accept any claim or
liability based on the information in this Vital Note or information we refer to
18