Series 50 Fetal Monitors
Series 50 A Antepartum Fetal Monitor (M1351A) Series 50 IP-2 Intrapartum Fetal Monitor (M1353A) Series 50 IX/XM/XMO Intrapartum Fetal/Maternal Monitor (M1350 A/B/C)
Digital Interface Protocol Specifications
Programmer’s Guide
Part Number M1350-9074S
Published in Germany March 2002
Notice
Philips makes no warranty of any kind with regard to this material, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. Philips shall not be liable for errors contained herein or for incidental or consequential damages in connection with the furnishing, performance or use of this material.
This document contains proprietary information that is protected by copyright. All rights are reserved. No part of this document may be photocopied, reproduced or translated to another language without prior written consent of Philips.
The information contained in this document is subject to change without notice.
Philips assumes no responsibility for the use or reliability of its software on equipment that is not furnished by Philips.
WARNING! Failure on the part of the responsible individual hospital or institution employing the use of this equipment to implement a satisfactory maintenance schedule may cause undue equipment failure and possible health hazards.
Contents
1. Hardware Configuration
About This Guide. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Hardware Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Interface Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
RS232 Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
RS422 Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Communication Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2. Fetal Monitor Connection
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
The Data Link Layer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Special Function Characters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
The Application Layer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3. Data Block Overview
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Data Block Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Data Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Request Data Block ‘?’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
CTG Data Block ‘C’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Protocol Revision Change Request ‘V’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Go In Auto Send Mode ‘G’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Halt Automatic CTG Transmission ‘H’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Event Message ‘MM’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Note ‘N’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Failures ‘F’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
ID-Code ‘I’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Maternal (NIBP) ‘P’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Maternal Temperature ‘T’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Maternal Oxygen Saturation ‘S’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Time Synchronization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4. The CRC Mechanism
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Using a checksum to detect errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5. Programming Example
Digital data exchange example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
A. Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Contents-i
Contents-ii
1 Hardware Configuration
This Programmer’s Guide describes data exchange between a Series 50 fetal monitor and an obstetrical information management system, such as OB TraceVue, or a PC. It is written “by a programmer for programmers” - in other words, in technical language.
The User’s Guide and the Installation and Service Guide for OB TraceVue and the fetal monitors provide general information on fetal monitoring. For a brief explanation of some of the medical terms used in this Guide, see the Glossary on page A - 1.
This chapter explains what hardware you need for digital information transmission between the fetal monitor and the host system.
Using the digital interface allows you to access the following digital information from the fetal monitor:
nFetal Heart Rate (FHR 1 and FHR 2 if monitoring twins)
nMaternal Heart Rate
nFetal Movement Profile
nFetal SpO2 using M1350C (or M1351A/53A and M1350A/B if a Nellcor OxiFirst Fetal Oxygen Saturation Monitor (N-400) is connected)
nToco/IUP Value
nNoninvasive Blood Pressure
nHeart Rate Modes
nToco/IUP Modes
nMaternal Blood Pressure
nMaternal SpO2
nMaternal Temperature
nEvent Marks
nNursing Notes from the Barcode Reader.
It also allows you to send nursing notes from the host system (for example OB TraceVue) to the fetal monitor.
Hardware Configuration |
1 |
Hardware Configuration
The hardware configuration you will need for data exchange between a Series 50 fetal monitor and a PC is shown in Table 1-1:
Table 1-1
Fetal Monitor Side |
Cable |
PC/System |
|
|
|
|
|
M1350A/B/C Fetal Monitor1 |
Use prefabricated cable |
Host System, for |
|
Optional System Interface Board |
M1380-61612 (RS232) |
example OB Trace- |
|
(Option #J10, #12) |
(or see wiring diagram |
Vue, with an RS232 |
|
|
in this document) |
or RS422 interface |
|
|
|
board (see the Instal- |
|
M1351A/M1353A Fetal Monitor2 |
Use prefabricated cable |
||
lation and Service |
|||
Optional System Interface Board |
M1380-61613 (RS232) |
||
Guide for the fetal |
|||
(Option #J10, #13, #14) |
(or see wiring diagram |
||
monitor for details on |
|||
|
in this document) |
||
|
the interface boards) |
||
|
|
||
|
|
|
1.M1350 A/B/C Fetal Monitor must have firmware M1350-6801G or upwards (e.g. M1350-6801H) for digital communication and Rev C or later to measure FSpO2.
2.All M1351A/M1353A Fetal Monitors have the necessary firmware for the digital communication built in.
2 Hardware Configuration
Interface Connections
You can connect a Series 50 fetal monitor to a PC or to an obstetrical information management system such as OB TraceVue directly using an RS232 cable. Older models may communicate indirectly via the RS422 interface on the fetal monitor. Both connections are described in the following.
M1351A/M1353A The M1351A and M1353A fetal monitors can be connected directly to the OB TraceVue or other host system or PC using an RS232 connector cable. The link requires a 24 pin to 9 pin adapter cable (you can use the preconfigured adapter cable, M1380-61613). This cable connects to the fetal monitor with a 24 pin connector (do not use the 9 pin connector!).
Figure 1-1 M1351A/M1353A showing connecting cable to OB TraceVue
The pin allocation for the RS232 connecting cable is shown below:
|
1 |
13 |
|
|
2 |
14 |
|
|
3 |
15 |
|
|
4 |
16 |
|
|
5 |
17 |
|
|
6 |
18 |
|
|
7 |
19 |
|
Pin 8 RXD Input |
8 |
20 |
|
Pin 9 TXD Output |
9 |
21 |
|
|
10 |
22 |
|
|
11 |
23 |
|
|
12 |
24 |
Pin 24 Signal Ground |
Figure 1-2 RS232 Cable Pin Allocation for the M1351A/M1353A to
Host System Connection
Hardware Configuration |
3 |
Interface Connections
M1350 A/B/C The RS232 link between the Series 50 A/B/C fetal/maternal monitors
(M1350 A/B/C) and the PC or host system, for example OB TraceVue, uses a 9 pin to 9 pin connection. There is a preconfigured cable available (M1380-61612). On the fetal monitor side it connects to the Tele/Sys IF port (see Figure 1-5). Figure 1-3 shows the pin allocation for the connection.
Figure 1-3 M1350 A/B/C RS232 System Connector Pin Allocation
4 Hardware Configuration
Interface Connections
M1351A/M1353A The Series 50 fetal monitors can be connected to a host system using the RS422 interface. If and M1350 A/B/C you are connecting the M1350A or M1351A/M1353A to a host system or PC you will need
option #J12.
Figure 1-4 shows the location of the RS422 connection on the M1350 A/B/C fetal monitor.
Figure 1-4 M1350 A/B/C Interface Connections
The pin allocation for the RS422 interface signals is shown in Figure 1-5.
Computer |
|
|
|
Fetal Monitor |
|||
|
|
|
|
|
|||
1 |
|
|
|
|
1 |
13 |
|
2 |
14 |
|
RS422 |
|
|||
|
|
2 |
14 |
||||
3 |
15 |
IN+ pin 18 |
|
|
|||
|
Pin 3 OUT+ |
3 |
15 |
||||
4 |
16 |
|
|||||
INpin 3 |
|
Pin 15 OUT- |
4 |
16 |
|||
|
|
||||||
5 |
17 |
|
|||||
|
|
|
|
5 |
17 |
||
|
18 |
|
|
|
|||
6 |
|
|
|
6 |
18 |
||
|
|
|
|
||||
|
19 |
OUT+ pin 10 |
|
|
|||
7 |
|
Pin17 IN+ |
|
19 |
|||
20 |
|
7 |
|||||
8 |
OUTpin 9 |
|
Pin 18 IN- |
8 |
20 |
||
21 |
|
||||||
9 |
|
|
|
|
|
||
22 |
Pin 7 |
NOT CONNECTED |
Pin 12 GND |
9 |
21 |
||
|
|||||||
10 |
10 |
22 |
|||||
|
23 |
|
|
Shield |
|||
11 |
|
|
11 |
23 |
|||
|
24 |
|
|
|
|||
12 |
25 |
|
|
|
12 |
24 |
|
|
|
|
|
||||
13 |
|
|
|
|
|
|
Figure 1-5 PC to M1350 A/B/C RS422 Cable Connection
Hardware Configuration |
5 |
Communication Summary
The following is a summary of the protocol settings and parameters:
nThe communication is based on a serial connection, for example RS232 or RS422, without handshake signals (uses only TxD/RxD).
nThe baudrate is 1200 Baud.
nData is sent using 1 start bit, 8 data bits, and 1 stop bit. No parity is used.
nData is sent within blocks. These blocks have a CRC-16 code appended to detect transmission errors.
nIf a data block cannot be received correctly (as detected by the CRC-16 code), it will not be retransmitted and must be ignored by the receiver.
nWhen a word value is transmitted, the most significant byte (MSB) is always sent first.
nUnknown data blocks are ignored, thus introducing new data blocks in the future does not disturb the receiver.
nThe maximum response time of the fetal monitor to a request depends on: n For ID-Code, CTG-Package:
Transfer time of request
+250 msec (max.)
+rest time of an already started block
+transfer time of the data-package
nFor other packages:
Transfer time of request
+500 msec (max.)
+rest time of an already started block
+transfer time of the data-package
Note Some functionality may not be implemented in a specific device (monitor or system). This is independent of the protocol revision.
6 Hardware Configuration
The Fetal Monitor connection is defined on three Data Protocol layers:
nThe Physical Layer.
nThe Data Link Layer.
nThe Application Layer.
This chapter describes the data link and application layers of the connection between the fetal monitor and the host system. The physical layer is described in Chapter 1.
The data link layer is responsible for the correct transmission of data blocks. It ensures the data that is accepted at the receiver is correct. However it does not tell the transmitter that the data is received correctly.
In order to achieve 8 bit data transparent transmission, it is necessary to define a data linkage escape character (DLE). This DLE character announces that the following byte is a special block control character. If <DLE> occurs in the data stream, it will be replaced by a <DLE><DLE> sequence to change the control character meaning to a normal character value. Nevertheless, avoid having the <DLE> character sequence as a typical value in frequently used data, because that increases the load on the connection.
A data block that is to be sent to the communication partner is surrounded by a block-start and a block-end. The start block is defined as <DLE><STX> and the end block is <DLE><ETX>. Following the block, a 2 byte CCITT CRC-16 code is sent to verify the total block. For a description of the CRC mechanism see Chapter 4.
It is explicitly allowed that data is sent after <DLE><ETX> and before <DLE><STX> and that data is discarded by the protocol.
The following rules apply to the data blocks:
nIf the CRC cannot be received correctly, the data block is discarded.
nIf a start of block is recognized before an end of block was received, the incomplete block is discarded and the new block accepted.
Fetal Monitor Connection 7
<DLE> |
<STX> |
... Block data ... |
<DLE> |
<ETX> |
<CRC> |
<CRC> |
|
|
|
|
|
|
|
Start of Block |
Data |
End of Block |
CCITT CRC |
|||
|
|
|
|
|
|
|
Table 2-1 Data Block Structure in the data link layer
The second item also means that the transmitter can stop the transmission of a block at anytime, and start a new block; for example, to send a very urgent failure message. Problems can occur if a transmitted message is interrupted directly after the <DLE><ETX> sequence, (that is, within the CRC bytes). These bytes are read without interpreting <DLE> codes. The sender should, therefore, send two arbitrary bytes that do not contain one of the special characters described in Table 2-2, for example, two zero-bytes. After these two bytes a new block can be started and will be safely recognized.
It is assumed that data transmission errors are very rare, therefore, blocks that are incorrectly received are not repeated.
The special function characters of the Series 50 Digital System Protocol are coded as listed in Table 2-2. You should avoid using these character sequences in other functions.
Table 2-2 Special Function Characters
Character |
Hex Code |
Description |
|
|
|
<DLE> |
10h |
Data linkage escape |
<STX> |
02h |
Start of text |
<ETX> |
03h |
End of text |
|
|
|
The Application Layer
The application layer describes the data formats as they should be interpreted by the applications that communicate with each other. The data is embedded in the structure described in The Data Link Layer on page 2-7. Generally, a data block has the structure shown in the following table:
Table 2-3 General Data Block Structure
Data Block Type |
...Data |
|
|
char |
0... 511 Byte |
|
|
8 Fetal Monitor Connection
This chapter provides an overview of the individual data blocks. It also gives you a detailed description of each block and tells you how to initiate transmission.
Table 3-1 indicates whether a data block can be transmitted from the host system to the fetal monitor or from the fetal monitor to the host system. (Note: in this table FM=fetal monitor.)
Table 3-1 Data Block Overview (alphabetically sorted)
|
|
Used in direction |
Available with |
Comments |
|||
Type |
Function |
revision |
|||||
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
FM->Host |
Host->FM |
A.01.01 |
A.02.00 |
|
|
|
|
|
|
|
|
|
|
C |
CTG Data Block |
* |
|
* |
* |
Be careful in auto |
|
|
|
|
|
|
|
mode! |
|
|
|
|
|
|
|
|
|
F |
Failures |
* |
|
* |
* |
|
|
|
|
|
|
|
|
|
|
G |
Go (enter auto) |
|
* |
* |
* |
Start auto-send CTG |
|
|
|
|
|
|
|
data |
|
|
|
|
|
|
|
|
|
H |
Halt |
|
* |
* |
* |
Stop auto-send mode |
|
|
|
|
|
|
|
|
|
I |
ID-code |
* |
|
* |
* |
Also sent by FM on |
|
|
|
|
|
|
|
power on |
|
|
|
|
|
|
|
|
|
M |
Message block |
* |
|
* |
* |
Event messages, eg. |
|
|
|
|
|
|
|
alarm ack. marker |
|
|
|
|
|
|
|
|
|
N |
Note |
* |
* |
* |
* |
Async., both |
|
|
|
|
|
|
|
directions |
|
|
|
|
|
|
|
|
|
P |
NIBP (Blood Pressure) |
* |
|
* |
* |
Maternal external BP |
|
|
|
|
|
|
|
|
|
S |
SpO2 (oxygen sat.) |
* |
|
* |
* |
Maternal oxygen |
|
|
|
|
|
|
|
saturation |
|
|
|
|
|
|
|
|
|
T |
Temperature |
* |
|
* |
* |
Maternal temperature |
|
|
|
|
|
|
|
|
|
V |
Change protocol version |
|
* |
|
* |
Async. request |
|
|
|
|
|
|
|
|
|
? |
Request data |
|
* |
* |
* |
Request any of the |
|
|
|
|
|
|
|
messages listed above |
|
|
|
|
|
|
|
|
Rev. A.02.00 is required for FSpO2 (M1350C only). See page 17 for more details.
Data Block Overview 9