You are on page 1of 23

Appendix

B.3 Host Communication Handler configuration

The Host Communication Handler (AnalHost.exe) can be started manually from the Windows
analyzer menu in the Start, Programs menu.

The communication can be switched on and off in the Host Communication Handler. When
on, the port number can be selected. The factory settings are as follows:

Port OFF

Bits per second* 9600

Data bits* 8

Parity* None

Stop bits* 1

Flow control* None

* Can only be changed via the Host Communication Handler when a serial port is selected.

Port Here it is possible to select whether the analyzer/host commu-


nication is active and, if it is to be activated, through which port
number.

When a port is selected (1 to 8), the communication parameters


such as baud rate, parity etc., can be set.

A-12 VITAL SCIENTIFIC N.V.


Appendix

C. Backup Procedure
To prevent loss of essential data, and time consuming data re-entering after PC-crashes, it is
advised to make daily or weekly backups. For the Vitalab analyzer program, we recommend
you to make a backup of the following files:

Location File(s) name Contents

C:\Program Files\XL Analyzer\ *.dat system information

C:\Program Files\XL Analyzer\ *.txt patient results

C:\Program Files\XL Analyzer\Standard\ *.dat test parameters, QC, Blanks

These files can easily be backed up using the Windows 'drag-and-drop' feature or 'copy-paste'
operation to store the files on a floppy. Of course, the automatic backup functionality offered by
the various Windows operating systems can also be used.

If necessary, e.g., after a PC-crash the Windows and analyzer programs are re-installed, you
need only copy the backup data to its original location. These are respectively: C:\Program
Files\XL Analyzer\ and C:\Program Files\XL Analyzer\Standard\ folders.

VITAL SCIENTIFIC N.V. A-13


Appendix

D. Interface Description
D.1 Scope

This document describes the interface and protocol between a host (Laboratory Information
System) and the XL-PC.

D.2 Hardware Interface

The connection is done according to the RS232 standard.

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 Ready output *

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 of the PC

A-14 VITAL SCIENTIFIC N.V.


Appendix

D.3 General Remarks

The analyzer-PC uses a proprietary communication protocol to connect it to a host computer.


This is a normal 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.
─ The settings of the COM-port (baud rate, start, stop and parity bits) can only be programmed
in the Analyzer Host Communication 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 etcetera and the analyzer-PC
will respond with the corresponding answer. In order to check the communication the Echo
request function can be used.
─ The analyzer 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 set of two reagent rotors the host must send
only test requests for the tests actually installed on the actual set of reagent rotors. The other
tests for this sample can then be requested later.
─ When the operator changes the reagent rotor set of the analyzer, or when an analyzer part is
disabled or enabled, a new Reagent Installation is automatically sent to the host, so the
host knows which tests can be requested.

VITAL SCIENTIFIC N.V. A-15


Appendix

D.4 Transmission Format

General

In the format description in the next sections, the following assumptions have been made:

─ All communication is done through, and limited to the ASCII character set.
─ All boldface characters are sent as shown.
─ In the description the items are placed on multiple lines, this is only to clarify the format and
this is NOT the case in the actual messages. Here, all items follow each other directly.
─ All items are terminated with a semicolon.
─ Some parts have to be repeated a number of times. Those parts are preceded with italicized
text. This text is not a part of the format.
─ Items are described with their names and the length in between brackets, e.g. sam-
ple_ID(12).
─ Items can be optional. These items are placed between square brackets.

─ Items can have some comment. This comment is placed between square brackets.

Item format

In general, the items themselves – when sent to the analyzer – must not contain semicolons,
because they are used for terminating the item. The next table (alphabetically sorted) gives
more specific limitations.

Item Type Length Limitation


analyser_part text 1 only L (left) or R (right)
batch_no text 10
calibrator_name text 15
control_name text 15
cuvet_av, cuvet_sd floating point number 6
cuvet_blank_val special 6 floating point number, or
! LmpOvr (lamp over range error)
! LmpUnd (the lamp under range error)
! OverRn (the cuvette over range error)
! UndrRn (the cuvette under range error)
date_of_birth text 11 same format as in system parameters, sepa-
rators must be non-alphanumeric
detailed_info special see Detailed_info (mono mode)/Detailed info
(dual mode), page A-26 and A-27
device_ID text 6
endpoint_xx floating point number 6
expiry_date text 11 same format as in system parameters, sepa-
rators must be non-alphanumeric

A-16 VITAL SCIENTIFIC N.V.


Appendix

Item Type Length Limitation


flags text 23 see Normal flags, page A-18
lamp_av, lamp_sd floating point number 6
limit_flags text 3 see Limit flags, page A-19
measurement_date text 11 same format as in system parameters, sepa-
rators must be non-alphanumeric
measurement_time text 5 24-hour notation (hh:mm)
nr_of_tests whole number 2 number
physician_name text 20
point_i digit 1 only 0 (next point not used) or 1 (next point
used)
raw_result floating point number 7
raw_units text 6 see Raw units, page A-20
reag_abs floating point number 7
reagent_batch_no text 10
reagent_test_count whole number 5 0..99999, -1 for blank or uninstalled tests
reagent_test_name text 4 blank for sample blank or uninstalled tests
request_tests_x text 32 string of 0’s (test not requested) or 1’s (test
requested)
result floating point number 7
sample_ID text 12
sample_name text 20
sex text 1 only M (male), F (female) or P (pediatric)
software_version text 6..18
status digit 1 meaning depending on the command
test_name text 4
type text 1 only N (normal), E (stat) or P (pediatric)
units text 6 see Units, page A-19
used_xx digit 1 only 0 (next point not used) or 1 (next point
used)
wavelength number 3

VITAL SCIENTIFIC N.V. A-17


Appendix

Flags

Normal flags

These flags appear in a fixed order in a string. For every flag either a space is written or the re-
spective flag. If none of the flags is true a string is sent with 23 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 * alinear 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

23 F test not performed because of disabled analyzer part

A-18 VITAL SCIENTIFIC N.V.


Appendix

Limit flags

These flags appear in a fixed order in a string. For every flag either a space is written or the re-
spective 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

Units

The next table shows all the possible units.

Unit Unit Unit

(no unit) mg/l mIU/ml

kU/l µg/l µIU/ml

U/l ng/l %

U/ml g/dl %.

µU/ml mg/dl % norm

µkat/l µg/dl m/24hr

mol/l ng/dl g/24hr

mmol/l mg/ml mg/24h

µmol/l µg/ml µg/24h

nmol/l ng/ml sec

fmol/g IU/l units

mEq/l IU/ml Abs

g/l mIU/l ratio

VITAL SCIENTIFIC N.V. A-19


Appendix

Raw units

The next table shows all the possible raw units.

Raw unit

Abs
dAbs/m
dAbs

Message format

The format of

─ the messages from analyzer-PC to host


─ the response from analyzer-PC to host on commands from host to analyzer-PC
is:

STX { Message/Response } ETX CR LF

Command format

The format of commands from host to analyzer-PC is:

STX { Command } ETX

A-20 VITAL SCIENTIFIC N.V.


Appendix

D.5 Messages to Host

Result (R)

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 Installation - Communications menu "Extended result:" is set to "yes", the extended re-
sult message is sent instead of the result message.

Normal/stat/pediatric result

Direction analyzer # host


Message R;
device_id;
type;
sample_id;
sample_name;
date_of_birth;
sex;
physician_name;
measurement_date;
measurement_time;
nr_of_tests;

The next 7 lines are repeated <nr_of_tests> times:

analyser_part;
test_name;
reagent_batch_no;
result;
flags;
limit_flags;
units;

VITAL SCIENTIFIC N.V. A-21


Appendix

Control result

Direction analyzer # host


Message R;
device_id;
C;
control_name;
batch_no;
expiry_date;
;
;
measurement_date;
measurement_time;
nr_of_tests;

The next 7 lines are repeated <nr_of_tests> times:

analyser_part;
test_name;
reagent_batch_no;
result;
flags;
limit_flags;
units;

Calibrator result

Direction analyzer # host


Message R;
device_id;
S;
calibrator_name;
batch_no;
expiry_date;
;
;
measurement_date;
measurement_time;
nr_of_tests;

The next 7 lines are repeated <nr_of_tests> times:

analyser_part;
test_name;
reagent_batch_no;
result;
flags;
limit_flags;
units;

A-22 VITAL SCIENTIFIC N.V.


Appendix

Blank result

Direction analyzer # host


Message R;
device_id;
B;
Blank;
;
;
;
;
measurement_date;
measurement_time;
nr_of_tests;

The next 7 lines are repeated <nr_of_tests> times:

analyser_part;
test_name;
reagent_batch_no;
result;
flags;
limit_flags;
units;

Extended result (X)

Normal/stat/pediatric extended result

Direction analyzer # host


Message X;
device_id;
type;
sample_id;
sample_name;
date_of_birth;
sex;
physician_name;
measurement_date;
measurement_time;
nr_of_tests;

The next 11 lines are repeated <nr_of_tests> times:

analyser_part;
test_name;
reagent_batch_no;
result;
flags;
limit_flags;
units;
reag_abs;
raw_result;
raw_units;
detailed_info

VITAL SCIENTIFIC N.V. A-23


Appendix

Control extended result

Direction analyzer # host


Message X;
device_id;
C;
control_name;
batch_number;
expiry_date;
;
;
measurement_date;
measurement_time;
nr_of_tests;

The next 11 lines are repeated <nr_of_tests> times:

analyser_part;
test_name;
reagent_batch_no;
result;
flags;
limit_flags;
units;
reag_abs;
raw_result;
raw_units;
detailed_info

Calibrator extended result

Direction analyzer # host


Message X;
device_id;
S;
calibrator_name(15);
batch_no;
expiry_date;
;
;
measurement_date;
measurement_time;
nr_of_tests;

The next 11 lines are repeated <nr_of_tests> times:

analyser_part;
test_name;
reagent_batch_no;
result;
flags;
limit_flags;
units;
reag_abs;
raw_result;
raw_units;
detailed_info

A-24 VITAL SCIENTIFIC N.V.


Appendix

Blank extended result

Direction analyzer # host


Message X;
device_id;
B;
Blank;
;
;
;
;
measurement_date;
measurement_time;
nr_of_tests;

The next 11 lines are repeated <nr_of_tests> times:

analyser_part;
test_name;
reagent_batch_no;
result;
flags;
limit_flags;
units;
reag_abs;
raw_result;
raw_units;
detailed_info

VITAL SCIENTIFIC N.V. A-25


Appendix

Detailed_info (mono mode)

Kinetic test

Detailed info K;

The next 2 lines are repeated 22 times (all measurement points):

used_i; [point _i used for computation]


point_i;

Twopoint test

Detailed info T;

The next 2 lines are repeated 22 times (all measurement points):

used_i; [point _i used for computation]


point_i;

Monochromatic endpoint test

Detailed info M;
endpoint_1;
endpoint_2;
; [42 times]

Note: both endpoints are measured at the same wavelength.

Bichromatic endpoint test

Detailed info B;
endpoint_1;
endpoint_2;
; [42 times]

ISE test

Detailed info I;
; [44 times]

A-26 VITAL SCIENTIFIC N.V.


Appendix

Detailed info (dual mode)

Kinetic test

Detailed info k;

The next 2 lines are repeated 21 times (all measurement points):

used_i; [point _i used for computation]


point_i;

; [2 times]

Twopoint test

Detailed info t;

The next 2 lines are repeated 21 times (all measurement points):

used_i; [point_i used for computation]


point_i;

; [2 times]

Monochromatic endpoint

Detailed info m;
used_r_abs_1a; [endpoint_abs_1a used for computation]
endpoint_abs_1a;
used_r_abs_1b; [endpoint_abs_1b used for computation]
endpoint_abs_1b;
used_ep_1a; [endpoint_1a used for computation]
endpoint_1a;
used_ep_1b; [endpoint_1b used for computation]
endpoint_1b;
used_ep_2a; [endpoint_2a used for computation]
endpoint_2a;
used_ep_2b; [endpoint_2b used for computation]
endpoint_2b;
; [32 times]

Note: all point pairs (e.g. 1a/1b) are measured at the same wavelength.

VITAL SCIENTIFIC N.V. A-27


Appendix

Bichromatic endpoint

Detailed info b;
used_r_abs_1a; [endpoint_abs_1a used for computation]
endpoint_abs_1a;
used_r_abs_1b; [endpoint_abs_1b used for computation]
endpoint_abs_1b;
used_ep_1a; [endpoint_1a used for computation]
endpoint_1a;
used_ep_1b; [endpoint_1b used for computation]
endpoint_1b;
used_ep_2a; [endpoint_2a used for computation]
endpoint_2a;
used_ep_2b; [endpoint_2b used for computation]
endpoint_2b;
; [32 times]

ISE test

Detailed info I;
;

Reagent installation (I)

This message is sent (automatically) by the analyzer-PC, when the operator has changed the
reagent installation, one or more reagent batch numbers, the run mode, the reagent disk (menu)
or when an analyzer part is disabled or enabled.

With a disabled analyzer part, all 32 test_names for that part are empty.

Direction analyzer # host


Message I;
device_id;
L;

The next 2 lines are repeated 32 times (left instrument part):

reagent_test_name;
reagent_batch_no;

R;

The next 2 lines are repeated 32 times (right instrument part):

reagent_test_name;
reagent_batch_no;

A-28 VITAL SCIENTIFIC N.V.


Appendix

Blank result (B)

This message is sent by the analyzer when the operator press Ctrl-F1 in the Rotor/System/ISE -
Blank Rotor menu. The blank results of the selected filter and the selected analyzer half are
sent.

Direction analyzer # host


Format B;
device_id;
instrument_part;
wavelength;

The next line is repeated 48 times (all cuvettes):

cuvet_blank_val;

cuvet_av;
cuvet_sd;
lamp_av;
lamp_sd;

VITAL SCIENTIFIC N.V. A-29


Appendix

D.6 Commands to Analyzer

Echo request (E)

This message can be used as a test feature.

Command

Direction host # analyzer


Command E;

Response

Direction analyzer # host


Response e;
device_id;
status; [0 = success
7 = failed: message length error
8 = failed: overrun error
9 = failed: parity, framing or break error]

Get software version (V)

Command

Direction host # analyzer


Command V;

Response

Direction analyzer # host


Response v;
device_id;
status; [0 = success
7 = failed: message length error
8 = failed: overrun error
9 = failed: parity, framing or break error
software_version;

Get reagent installation (I)

Command

Direction host # analyzer


Command I;

A-30 VITAL SCIENTIFIC N.V.


Appendix

Response

Direction analyzer # host


Response i;
device_id;
status; [0 = success
7 = failed: message length error
8 = failed: overrun error
9 = failed: parity, framing or break error]
L;

The next 2 lines are repeated 32 times (for left instrument part):

test_name; [blank for sample blank or uninstalled tests]


reagent_batch_no; [blank for sample blank or uninstalled tests]

R;

The next 2 lines are repeated 32 times (for left instrument part):

test_name; [blank for sample blank or uninstalled tests]


reagent_batch_no; [blank for sample blank or uninstalled tests]

Get reagent test counters (N)

Command

Direction host # analyzer


Command N;

Response

Direction analyzer # host


Response n;
device_id;
status; [0 = success
7 = failed: message length error
8 = failed: overrun error
9 = failed: parity, framing or break error]
L;

The next line is repeated 32 times (for left instrument part):

reagent_test_count;

R;

The next line is repeated 32 times (for right instrument part):

reagent_test_count;

VITAL SCIENTIFIC N.V. A-31


Appendix

Request sample (Q)

Only Normal, Stat and Pediatric samples can be requested. Control, Calibrators and Blanks
sample requests are done manually.

Command

Direction host # analyzer


Command Q;
sample_id;
type;
sample_name;
date_of_birth;
sex;
physician_name;
request_tests_left;
request_tests_right; [sample blank tests are done automatically and cannot
be requested,
ISE tests are always done together, but do not need to
be requested together]

Response

Direction analyzer # host


Response q;
device_id;
status; [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]
sample_id;
type;
sample_name;
date_of_birth;
sex;
physician_name;
request_tests_left;
request_tests_right;

A-32 VITAL SCIENTIFIC N.V.


Appendix

Delete requested sample (D)

Command

Direction host # analyzer


Command D;
Sample_id;

Response

Direction analyzer # host


Response d;
device_id;
status; [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_id;

The next part only when status = 0

type;
sample_name;
date_of_birth;
sex;
physician_name;

Ask sample result (R)

Command

Direction host # analyzer


Command R;
sample_id;

VITAL SCIENTIFIC N.V. A-33


Appendix

Response

Direction analyzer # host


Response r;
device_id;
status; [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]
sample_id;

The next part only when status = 0 or 1

type;
sample_id;
date_of_birth;
sex;
physician_name;
measurement_date; [empty when the sample is not yet ready]
measurement_time; [empty when the sample is not yet ready]
nr_of_tests;

The next 7 lines are repeated <nr_of_tests> times:

analyser_part;
test_name;
reagent_batch_no;
result; [BUSY when result not yet ready]
flags;
limit_flags;
units;

A-34 VITAL SCIENTIFIC N.V.

You might also like