Baumer Electric OIS-W-WR300303 RF-Identification System User Manual Interface

Baumer Electric AG RF-Identification System Interface

Contents

Interface

Download: Baumer Electric OIS-W-WR300303 RF-Identification System User Manual Interface
Mirror Download [FCC.gov]Baumer Electric OIS-W-WR300303 RF-Identification System User Manual Interface
Document ID141771
Application IDTrxLJ3PZn2nUeZ0KUTC6Lg==
Document DescriptionInterface
Short Term ConfidentialNo
Permanent ConfidentialNo
SupercedeNo
Document TypeUser Manual
Display FormatAdobe Acrobat PDF - pdf
Filesize9.01kB (112626 bits)
Date Submitted2001-03-27 00:00:00
Date Available2001-04-23 00:00:00
Creation Date1910-10-22 01:34:12
Producing SoftwareAcrobat Distiller 3.0 f r Windows
Document Lastmod0000-00-00 00:00:00
Document TitleInterface

Application Note
OIS-W Interface Specification
OIS-W Reader Communication Interface
PROJECT
PROJECT:
AUTHOR:
ATTN:
CC:
COMMUNICATION INTERFACE
W. STEHLING
SYSTEM INTEGRATORS
 2000 Baumer Ident AG Switzerland
DOCUMENT
CREATED:
LAST CHANGE:
VERSION:
FILE:
08. DECEMBER 1999
27. SEPTEMBER 2000
VERSION 1.1
SPWR-2101-0001.DOC
OIS-W Interface Specification
Baumer Ident AG
Content
History
Related documents
About the document
Disclaimer
Introduction
Hardware requirements
Reader operating modes
3.1
3.2
3.3
Automatic Data Transmission
Communication upon request
Code lookup table
rotocol overview
4.1
4.2
General message structure
Data coding and byte order
Communication messages
10
5.1
Automatically transmitted messages
10
5.1.1 TAG_ID_IND: Send code information
5.1.2 PARAM_DATA_REP: Send extended code information
5.1.3 RESET_IND: Reset indication of reader
10
11
12
5.2
5.3
5.4
Request Information from reader
12
5.2.1 VERSION_REQ: Get software version information from reader
12
Information transmitted to the reader
13
5.3.1 DOWNLOAD_REQ: Download lookup table to reader
13
Auxiliary Port Information and Settings
15
Appendix A:
CRC calculation
16
Appendix B:
OIS-W messages
17
Automatically transmitted messages ......................................................................................17
Request information from the reader ......................................................................................17
Information transmitted to the reader......................................................................................19
Appendix C:
date:
author:
C/C++ header definitions
20
Global Definitions ....................................................................................................................20
Size definition of variables.......................................................................................................21
Structure definitions ................................................................................................................21
Definition of message numbers ..............................................................................................23
Error numbers .........................................................................................................................24
20.02.2001
wst
file: Interface.doc
version 1.0
page: 2 / 2
OIS-W Interface Specification
Baumer Ident AG
History
9HUVLRQ
'DWH
&KDQJH
$XWKRU
1.0
99/12/08
first draft
wst
1.1
00/09/27
modification on AUX_REP message and auxiliary
heg
Related documents
[1]:
Kühn, I., STAR2 SW Interface Specification, V 1.05 (1999/11/03), Elektrobit AG
[2]:
Zehnder, C., OIS-W User's Manual, V 3.0E (1999/09/28), Baumer Ident AG, MSGY-2001-305
About the document
This application note describes the communication protocol of the OIS-W reader unit. It is intended for
system integrators who need to set up the host's part of the communication. The protocol used with the
serial interfaces will be explained in detail.
Disclaimer
The information contained in this document is believed to be accurate and reliable. It is based on the protocol stack version 2.28. However, no responsibility is assumed by Baumer Ident for its use, nor for any
infringements of patents or other rights of third parties which may result from its use. No license is
granted by implication or otherwise under any patent or patent rights of Baumer Ident.
© Baumer Ident AG, 2000
date:
author:
20.02.2001
wst
file: Interface.doc
version 1.0
page: 3 / 3
OIS-W Interface Specification
Baumer Ident AG
1 Introduction
The OIS-W reader is fully programmable, i.e. there are no switches or jumpers to set, everything can be
configured by software. Configuration parameters as well as the operating system itself may be
downloaded in the field. A host computer may be connected to each of the two serial interfaces of the basic reader unit.
The main application of the serial interfaces is to transmit status information to a host computer. If the
reader detects a valid code ID the information may be sent automatically or on request. The reader can be
configured to run continuously or to start a measurement triggered by a switch or by computer.
The protocol used to communicate with the reader is similar to the popular Siemens 3964R protocol. It
will be described in subsequent chapters.
2 Hardware requirements
The two serial interfaces of the reader are functional identical. Each may be used to connect to a host.
They differ in the physical signal levels only: the upper one corresponds electrically to RS 232, the lower
one to RS 422 levels (Table 2-1 and Table 2-2, respectively).
Signal Level
Baud rates
default
optional
Parameter
Connector
Pin Assignment
RS232
9600 baud
115'200 baud
8 bit, 1stop bit, no parity
9-Pin D-Sub, male (DTE)
DSR
RTS
CTS
RI
Signal level:
Baud rates:
default
optional
Parameter
Plug
Pin assignment
DCD
RxD
TxD
DTR
GND
Only RxD and TxD are currently supported.
Internally connected to GND via 195 Ω.
date:
author:
20.02.2001
wst
9600 baud
115'200 baud
8 bit, 1stop bit, no parity
9-Pin D-Sub, female (DTE)
RxDRxD+
TxD+
TxD-
Table 2-1: RS 232 serial interface of the basic OIS-W reader unit1
RS422
GND2
GND2
Table 2-2: RS 422 serial interface of the basic OIS-W reader unit
file: Interface.doc
version 1.0
page: 4 / 4
OIS-W Interface Specification
Baumer Ident AG
3 Reader operating modes
Basically, the reader may operate in one of two main modes: triggered or free running. In triggered mode
a new measurement starts as soon as an external signal is supplied or a trigger message from the host is
received. In free running mode the reader is looking continuously for a valid identification.
An identification message (or an appropriate error message in triggered mode) can be sent to a host in
two ways: automatically or on request by the host. Usually, the automatic ID data message is sufficient in
most applications.
The functionality of the reader is controlled by a configuration file that allows setting of all parameters.
Figure 3-1 shows the part of the configuration file dealing with the communication. The other parts of the
file are not subject of this documentation. For further details see [2].
//
//
//
//
BAUMER IDENT SAW tag reader STAR2
configuration data
date: 09.06.1999
time: 10:03:45
// settings serial interface
Bdrate RS422
1152
Baud rate RS422 IF [ 12.. 1152]
Bdrate RS232
1152
Baud rate RS232 IF [ 12.. 1152]
Msg Type ID
11
select type of notification after successful reading [ 0..
19]
TidF
2 s time const ID filter (res:.5s) [0.5..32767]
ID Msg Retry
max. number transmissions of ID Msg(0=no maximum) [ 0.. 255]
ID Msg Timeout
2 s time until ID msg is retransmitted (res:0.5s, 0=no limit) [ 0..127.5]
// settings auxiliary ports
Aux over RS 422
choose RS422 interface for Aux
[ 0..
1]
Aux over RS 232
choose RS232 interface for Aux
[ 0..
1]
Aux IN 1 Rep
Aux State Indication mask (0 =
Aux IN 2 Rep
Aux State Indication mask (0 =
Aux OUT 1 Rep
Aux State Indication mask (0 =
Aux OUT 2 Rep
Aux State Indication mask (0 =
State Indication message (0 = OFF; 1 = ON)
State Indication message (0 = OFF; 1 = ON)
OFF;
OFF;
OFF;
OFF;
ON)
ON)
ON)
ON)
0..
0..
0..
0..
1]
1]
1]
1]
Figure 3-1: The section of the reader configuration file dealing with communication
3.1 Automatic Data Transmission
Several parameters of the configuration file describe the automatic messaging (Figure 3-1):
• The MsgTypeID entry of the configuration file defines the way how and where an automatic ID
message will be sent. The first digit designates the interface (0: RS 422, 1: RS 232), the second digit
indicates the message type (0: no message, 1: TAG_ID_IND, 2: PARAM_DATA). The message details
will be explained below.
• TidF is a filter time constant. The same message is sent again after this time has elapsed, if the same
ID code is detected repeatedly.
• IDMsgRetry gives the number of repetitions the message will be transmitted, if the host does not
acknowledge the telegram. The parameter is set to 0, if an acknowledge is mandatory; it is set to 1, if
an acknowledge might be missing.
• IDMsgTimeout is the time to wait for acknowledge between the repetitions.
date:
author:
20.02.2001
wst
file: Interface.doc
version 1.0
page: 5 / 5
OIS-W Interface Specification
Baumer Ident AG
Note: The host can define the readout rate by delaying the acknowledge of the previous
message appropriately.
• Aux over RS 422 if the value is set to ”1” the reader sends its AUX_REP message to the RS 422
interface
• Aux over RS 232 if the value is set to ”1” the reader sends its AUX_REP message to the RS 232
interface
• Aux IN 1 Rep represents the digital input from antenna 1. If the value is set to ”1” the reader
sends its AUX_REP message if a change of state on this pin is detected, the flag for this pin is set if
any change since the former message is detected
• Aux IN 2 Rep represents the digital input from antenna 2. If the value is set to ”1” the reader
sends its AUX_REP message if a change of state on this pin is detected, the flag for this pin is set if
any change since the former message is detected
• Aux OUT 1 Rep represents the digital output from antenna 1. If the value is set to ”1” the reader
sends its AUX_REP message if a change of state on this pin is detected, the flag for this pin is set if
any change since the former message is detected
• Aux OUT 2 Rep represents the digital output from antenna 2. If the value is set to ”1” the reader
sends its AUX_REP message if a change of state on this pin is detected, the flag for this pin is set if
any change since the former message is detected
Note: If no interface is set, no AUX_REP message is sent, until the host sends an AUX_REQ
message. The further parameters have no effect in case of inactive serial interfaces.
For further information see table 5-12.
There are four messages that can be transmitted automatically by the reader. The first one is the reset indicator (RESET_IND), which is sent through both interfaces simultaneously. The host's software must be
aware that a reset message may arrive any time to indicate that the reader has been initialized.
The next two messages are TAG_ID_IND and PARAM_DATA_REP. One of them (not both) may be sent
to any serial interface (not both) as described by MsgTypeID (see above). While TAG_ID_IND sends
the ID code information only, PARAM_DATA_REP gives additional information about the measurement.
Both messages may also be requested by the host (TAG_ID_REQ and DATA_REQ respectively).
The last message to be transmitted automatically, is the AUX_REP. Conditions for sending the information without request by the host, are as follows.
The parameters Aux over RS422 and / or Aux over RS232 are set. Further, minimum one of the
Aux…Rep must be set. Now a message will be sent by the reader, if one of the desired auxiliary ports
changes. In case of setting both interfaces, the message is send on each simultaneously. If no desired Aux
State is set (all port parameters to zero and any interface set to “1”) a message won’t be sent in no case. If
AUX_REP is sent, you get information of all actual auxiliary port states. You get also information about
which state did change since the last message was sent.
3.2 Communication upon request
All other messages are generally initiated by the host. They can be grouped into request messages (for instance status of the reader) or commands to the reader (for instance download of configuration data). Depending on the application a host's application software may not be concerned with these messages at all.
Usually they are used at installation time to configure a reader properly.
date:
author:
20.02.2001
wst
file: Interface.doc
version 1.0
page: 6 / 6
OIS-W Interface Specification
Baumer Ident AG
3.3 Code lookup table
Basically, each tag returns a decimal number between 0 and 10x-1 with "x" defined by the tag specification Dx. Tags of the D4 range, for instance, allow for 10'000 individual codes. The reader unit can transfer an identified number in two ways:
• unchanged and exactly as read from the tag
• converted by using a code lookup table to give more freedom in adapting an application
All readers will be delivered with lookup table enabled, even if it holds a one to one code translation
only. Figure 3-2 shows an example of a code lookup table. Simple text files of this kind are, for instance,
used by Baumer Idents basic service software.
table type
output coding
output length
input length
154
157
111000
987654
Figure 3-2: Example of a code lookup table
Only table type 0 is currently supported. It means that only one to one entries will be accepted.
Only output coding 0 is currently supported. It means that each output character will be coded internally
in packed binary format (4 bit) and only the hex values 0x0 … 0xf are allowed.
The output length may be selected between 1 and 255. The basic service software currently supports output lengths up to 16 characters.
The input length must correspond to the range of the tags in use. If D3 tags are installed, input length
must be set to 3, otherwise no valid reading can take place.
The remainder of the file holds lookup entries line by line. The output code is separated from the input
code by white space characters. While the input codes must be unique the same output code may be assigned to various input codes.
If the reader identifies an input code not contained in the lookup table, the readers output depends on its
main operating mode. In free running mode no message will be sent3. In triggered mode the reserved output code NO_READ will be transmitted. NO_READ is coded as 0xffffff (number of characters = output
length).
This is true for the TAG_ID_IND message. The PARAM_DATA_REP message will transmit the input code instead.
date:
author:
20.02.2001
wst
file: Interface.doc
version 1.0
page: 7 / 7
OIS-W Interface Specification
Baumer Ident AG
4 rotocol overview
The communication protocol is similar to the Siemens 3964R protocol.
4.1 General message structure
The general structure of a message is shown in Table 4-1. Following the START byte the MSG_NR indicates unambiguously the message. The next two bytes hold the length of an optional data array (high and
low byte of a 16-bit number respectively). The message ends with a checksum byte and an END of message indicator. The checksum is calculated over all bytes except START, CRC and END. The calculation
of the cyclic redundancy check is detailed in appendix 0. The data fields are optional and may be omitted.
byte offset
message bytes
comment
START = 0x02
start of message indicator
MSG_NR
message number
HI MSG_LEN
high byte message length
Cyclic
LO MSG_LEN
low byte message length
Redundancy
[DATA (0)]
first data byte [optional]
check
3 + MSG_LEN
[DATA (MSG_LEN-1)]
last data byte [optional]
CRC
4 + MSG_LEN
~CRC
logically inverted CRC checksum
5 + MSG_LEN
END = 0x03
end of message indicator
Table 4-1: General structure of a message
Usually, a message sent by the reader or by the host must be acknowledged by the other one. The reader
may be configured to repeat an automatic message a number of times, if the acknowledge is missing (see
chapter 3.1). Two forms of acknowledge messages are possible depending on the type of the primary
message:
• Often a general acknowledge message type as shown in Table 4-2 will be used. The host replies in
this way to automatically transmitted messages. The same type of acknowledge is sent in most cases
by the reader as reply to commands from the host.
• On requests of the host the reader answers with an explicit reply message. An additional acknowledge
will not be sent, neither by the host nor by the reader.
date:
author:
20.02.2001
wst
file: Interface.doc
version 1.0
page: 8 / 8
OIS-W Interface Specification
Baumer Ident AG
byte offset
message bytes
example
comment
START
0x02
start of message indicator
MSG_ACK
0x11
message acknowledge number
Cyclic
HI MSG_LEN
0x00
high byte message length
Redundancy
LO MSG_LEN
0x01
low byte message length
check
MSG_NR
0x22
number of primary message
CRC
~CRC
0x68
logically inverted CRC checksum
END
0x03
end of message indicator
Table 4-2: General message acknowledge
The general acknowledge message as shown in Table 4-2 replies the message number of the primary
message in the data field. In the example the reader has acknowledged a «set mode request» message
(SET_MODE_REQ = 0x22) of the host.
In many messages an ANTENNA parameter is transmitted. It distinguishes between antenna 1 and antenna
2 of a dual channel OIS-W reader model.
4.2 Data coding and byte order
Unfortunately, the coding of data, especially of numbers, is not consistent. For instance, each message
header holds the message length that should be interpreted as a 16-bit binary number (cf. bytes #2 and #3
in Table 4-2). This number is transmitted by sending the most significant byte (MSB) first followed by
the least significant byte (LSB).
On the other hand, the TAG_ID_IND message uses a different coding of the tag code. As an example the
decimal ID number 157 is transmitted as 0x07 0x05 0x01, that is a binary code with one byte per
digit and the least significant digit (LSD) going first.
Appendix B lists all defined messages and their parameters. The corresponding C/C++ type definitions
are given in Appendix C3. To avoid any confusion due to data coding and byte order all examples will be
broken down to byte level.
date:
author:
20.02.2001
wst
file: Interface.doc
version 1.0
page: 9 / 9
OIS-W Interface Specification
Baumer Ident AG
5 Communication messages
This chapter gives typical examples of the most important messages in full detail. A complete list
of all messages is given in appendix Appendix B: .
Table 5-1 shows the definitions used to describe the basic data type sizes (cf. Appendix C2).
type
description
size
range
type
description
size
range
UINT8
unsigned byte
1 byte
0 … 255
INT8
signed byte
1 byte
-128 … 127
UINT16
unsigned word
2 byte
0 … 65'535
INT16
signed word
2 byte
-32'768 … 32'767
UINT32
unsigned long
4 byte
0 … 4'294'967'295
INT32
signed long
4 byte
-2'147'483'648 …
2'147'483'647
Table 5-1: Data size definitions
5.1 Automatically transmitted messages
5.1.1 TAG_ID_IND: Send code information
This message is a short version of PARAM_DATA_REP.
byte
variable
START
MSG_NR
HI_MSG_LEN
LO_MSG_LEN
ANTENNA
LO_ID
…
HI_ID
~CRC
END
basic type
UINT8
UINT8
UINT16
UINT8
UINT8 [length-1]
UINT8
UINT8
example
0x02
0x50
0x00
0x04
0x01
0x07
0x05
0x01
0x42
0x03
comment
start of message indicator
TAG_ID_IND message
length of data field
4 bytes to transmit
channel number (ANT_1 = 1, ANT_2 = 2)
least significant digit of ID code
(example code = 157)
logically inverted CRC
end of message indicator
Table 5-2: Automatically transmitted tag ID message from the reader
Note: This message is of variable length. The ID may have up to 16 digits. Therefore the
message length is limited to 2 ≤ length ≤ 17.
byte
variable
START
MSG_NR
HI_MSG_LEN
LO_MSG_LEN
MSG_NR
~CRC
END
basic type
UINT8
UINT8
UINT16
example
0x02
0x11
0x00
0x01
0x50
0x5c
0x03
UINT8
UINT8
UINT8
comment
start of message indicator
MSG_ACK message
length of data field
1 byte to transmit
message to acknowledge: TAG_ID_IND
logically inverted CRC
end of message indicator
Table 5-3: Acknowledge of TAG_ID_IND message from the host
date:
author:
20.02.2001
wst
file: Interface.doc
version 1.0
page: 10 / 10
OIS-W Interface Specification
Baumer Ident AG
5.1.2 PARAM_DATA_REP: Send extended code information
byte
…
20
21
22
23
24
25
26
27
28
…
44
45
46
47
48
…
60
61
62
variable
START
MSG_NR
HI_MSG_LEN
LO_MSG_LEN
INVALID
LO_ID
…
…
…
…
HI_ID
AF_AGC
NOISE_LEVEL
CAL_MAGNITUDE
CAL_SHIFT
FIRST_TAP_POS
DELTA_LAST_TAP_POS
ANTENNA
BLOC
…
…
BLOC_MAGNITUDE
…
…
…
…
…
~CRC
END
basic type
UINT8
UINT8
UINT16
UINT8
UINT8 [CODE_MAX_LEN]
UINT8
UINT8
UINT8
INT8
UINT8
UINT8
UINT8
UINT8 [CODE_MAX_LEN+1]
…
…
UINT8 [CODE_MAX_LEN]
UINT8
UINT8
example
0x02
0x45
0x00
0x39
0x01
0x07
0x05
0x01
0xff
…
0xff
0x00
0x20
0x48
0x01
0x3d
0x36
0x01
0x00
…
0x00
0x46
0x46
0x48
0x00
…
0x00
0xda
0x03
comment
start of message indicator
PARAM_DATA_REP message
length of data field
57 bytes to transmit
set to 1 if data are invalid
least significant digit of ID code
(example code = 157)
unused bytes are filled with 0xff
automatic gain control
maximum noise level in spectrum
signal strength of calibrator (in 0.5 dBr)
description of tag properties
channel number (ANT_1 = 1, ANT_2 = 2)
description of tag properties
signal strength of code blocs (in 0.5 dBr)
i.e. 0x46 hex → 70 decimal → 35 dBr
ignore unused blocs (set to 0)
logically inverted CRC
end of message indicator
Table 5-4: Parameter data reply message
The interesting data fields are CAL_MAGNITUDE and BLOC_MAGNITUDE that give an idea of the received signal strengths.
Note: This message uses fixed length records. Unused bytes are filled appropriately.
byte
variable
START
MSG_NR
HI_MSG_LEN
LO_MSG_LEN
MSG_NR
~CRC
END
basic type
UINT8
UINT8
UINT16
example
0x02
0x11
0x00
0x01
0x45
0xff
0x03
UINT8
UINT8
UINT8
comment
start of message indicator
MSG_ACK message
length of data field
1 byte to transmit
message to acknowledge: PARAM_DATA_REP
logically inverted CRC
end of message indicator
Table 5-5: Acknowledge of PARAM_DATA_REP message from the host
date:
author:
20.02.2001
wst
file: Interface.doc
version 1.0
page: 11 / 11
OIS-W Interface Specification
Baumer Ident AG
5.1.3 RESET_IND: Reset indication of reader
byte
variable
START
MSG_NR
HI_MSG_LEN
LO_MSG_LEN
RESET_NR
~CRC
END
basic type
UINT8
UINT8
UINT16
example
0x02
0x51
0x00
0x01
0x00
0xd2
0x03
UINT8
UINT8
UINT8
comment
start of message indicator
RESET_IND message
length of data field
1 byte to transmit
eventually holds initialization error number
logically inverted CRC
end of message indicator
Table 5-6: Reset indication from reader
The RESET_NR is 0 if the reader was reset successfully. Possible error numbers are 0xf1 and 0xf2 (see
appendix C5).
Note: This message is sent to both interfaces simultaneously and must not be acknowledged.
5.2 Request Information from reader
5.2.1 VERSION_REQ: Get software version information from reader
byte
variable
START
MSG_NR
HI_MSG_LEN
LO_MSG_LEN
~CRC
END
basic type
UINT8
UINT8
UINT16
UINT8
UINT8
example
0x02
0x3a
0x00
0x00
0xd5
0x03
comment
start of message indicator
VERSION_REQ message
length of data field
(no data field)
logically inverted CRC
end of message indicator
Table 5-7: Host asks for reader software version
Note: This message has no data field. The request is acknowledged by sending the version
information.
byte
10
variable
START
MSG_NR.
HI_MSG_LEN
LO_MSG_LEN
V_DAY
V_MONTH
V_YEAR
VERSION
REVISION
~CRC
END
basic type
UINT8
UINT8
UINT16
UINT8
UINT8
UINT8
UINT8
UINT8
UINT8
UINT8
example
0x02
0x4a
0x00
0x05
0x19
0x0a
0x63
0x02
0x1c
0x65
0x03
comment
start of message indicator
VERSION_REP message
length of data field
5 byte to transmit
day of release (19)
month of release (10)
year of release (99)
version (2)
revision (28)
logically inverted CRC
end of message indicator
Table 5-8: Version reply from reader
Only the lower 7 bits of REVISION are used to express the revision number. The MSB indicates
whether this message contains version information of the OIS-W boot loader (bit 7 = 1) or of the DSP
date:
author:
20.02.2001
wst
file: Interface.doc
version 1.0
page: 12 / 12
OIS-W Interface Specification
Baumer Ident AG
operating system (bit 7 = 0). The boot loader does only respond if the DSP cannot find a valid program to
execute following reset or power up.
5.3 Information transmitted to the reader
5.3.1 DOWNLOAD_REQ: Download lookup table to reader
The download request is a fixed length message that is used to transmit DSP software (type = 0), ramp
controller software (type = 1), or a lookup table (type = 2). The data array is broken into blocks of size
DOWNLOAD_MSG_SIZE byte each (currently set to 32). Unused bytes are filled appropriately.
byte
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
…
40
41
42
variable
START
MSG_NR
HI_MSG_LEN
LO_MSG_LEN
TYPE
LO_BLOCKS
HI_BLOCKS
LO_BLOCK_NR.
HI_BLOCK_NR.
MAGIC_WORD
basic type
UINT8
UINT8
UINT16
TABLE_TYPE
OUTPUT_CODING
OUTPUT_LENGTH
INPUT_LENGTH
LO_NUM_OF_ENTRIES
HI_NUM_OF_ENTRIES
UINT8
UINT8
UINT8
UINT8
UINT32
~CRC
END
UINT8
UINT16
UINT16
UINT8[16]
UINT8
UINT8
example
0x02
0x10
0x00
0x25
0x02
0x02
0x00
0x01
0x00
0x63
0x6f
0x64
0x65
0x20
0x74
0x61
0x62
0x6c
0x65
0x20
0x70
0x63
0x20
0x20
0x20
0x00
0x00
0x06
0x03
0x02
0x00
0x00
0x00
0x00
…
0x00
0x1c
0x03
comment
start of message indicator
DOWNLOAD_REQ message
length of data field
fixed length: 37 byte to transmit
download lookup table (type = 2)
total number of blocks to transmit
number of blocks that will follow this message
space
space
space
space
space
number of entries in table
fill bytes set to 0
logically inverted CRC
end of message indicator
Table 5-9: Download lookup table to reader. The first block describes the table parameters.
The first block transmitted contains the table parameters as described in chapter 3.3. The example corresponds to Figure 3-2.
Note: UINT16 and UINT32 values in the data field use a different byte order than the message length field.
date:
author:
20.02.2001
wst
file: Interface.doc
version 1.0
page: 13 / 13
OIS-W Interface Specification
Baumer Ident AG
The reader responds with a download reply message that echoes the TYPE field:
byte
variable
START
MSG_NR
HI_MSG_LEN
LO_MSG_LEN
TYPE
~CRC
END
basic type
UINT8
UINT8
UINT16
example
0x02
0x15
0x00
0x01
0x02
0x09
0x03
UINT8
UINT8
UINT8
comment
start of message indicator
DOWNLOAD_REP message
length of data field
1 byte to transmit
reply to lookup table download (type = 2)
logically inverted CRC
end of message indicator
Table 5-10: Download reply message from reader.
The next block(s) transmit the actual lookup table entries:
byte
10
11
12
13
14
15
16
17
18
…
40
41
42
variable
START
MSG_NR
HI_MSG_LEN
LO_MSG_LEN
TYPE
LO_BLOCKS
HI_BLOCKS
LO_BLOCK_NR.
HI_BLOCK_NR
PACKED_DATA
~CRC
END
basic type
UINT8
UINT8
UINT16
UINT8
UINT16
UINT16
UINT8
[DOWNLOAD_MSG_SIZE]
UINT8
UINT8
example
0x02
0x10
0x00
0x25
0x02
0x02
0x00
0x00
0x00
0x45
0x10
0x00
0x11
0x17
0x51
0x45
0x67
0x89
0x00
…
0x00
0x97
0x03
comment
start of message indicator
DOWNLOAD_REQ message
length of data field
fixed length: 37 byte to transmit
download lookup table (type = 2)
total number of blocks to transmit
number of blocks that will follow this message
packed binary (4 bit per digit), least significant
nibble goes first:
451 000111 751 456789
should be interpreted as:
154 111000
157 987654
unused nibbles set to 0
logically inverted CRC
end of message indicator
Table 5-11: Download lookup table to reader. The remaining blocks transmit the table entries in packed form.
The reader acknowledges using again the message shown in Table 5-10.
date:
author:
20.02.2001
wst
file: Interface.doc
version 1.0
page: 14 / 14
OIS-W Interface Specification
Baumer Ident AG
5.4 Auxiliary Port Information and Settings
The required coding for sending correct messages to the reader and getting the desired information correctly are described in the table below.
Name of variable
Description
Range
Def
auxchind_cfg.aux_chinden
Enable/disable
indication
about
change of state at AUX ports on
RS422 or RS232 serial interface.
(Set corresponding bit to enable AUX
state change indication on an interface)
0..3
bit 0: RS422
(=LSB)
bit 1: RS232
Remarks
auxchind_cfg.aux_ chindmsk
AUX state change indication mask
(Set bit to enable indication of state
change of corresponding input or
output. Has no effect if AuxChIndEn
is 0)
0..31
bit 0:
bit 1:
bit 2:
bit 3:
bit 4:
AUX 1_IN (=LSB)
AUX 2_IN
AUX 1_OUT
AUX 2_OUT
SYNC_IN (not used)
Table 5-12: Description of aux port scan encoding
Note: For software structures the paramter SYNC_IN exists, but it’s not used at the moment.
date:
author:
20.02.2001
wst
file: Interface.doc
version 1.0
page: 15 / 15
OIS-W Interface Specification
Baumer Ident AG
Appendix A: CRC calculation
The CRC polynomial is x + x + 1. CRC is calculated over the MSG_NR, MSG_LEN and DATA fields,
"~CRC" means that the calculated CRC byte is transmitted as the ones-complement (bit wise negated).
The DATA field is optional as some messages do not contain data. The message length is equal to the
number of bytes in the data field. Figure A-1 shows a subroutine to calculate CRC using a lookup table.
This is a fast method for speed critical applications. Figure A-2 shows a subroutine to calculate CRC in
the classical way. Figure A-3 shows an example how to calculate CRC of a message.
void Msg_CRC(UINT8 in, INT16* state)
/*--------------------------------------------------------------------------+
| Description:
Does 8-bit cyclic redundancy check on one data byte
CRC polynomial is x^7 + x^3 + 1
Returns the current state
+--------------------------------------------------------------------------*/
static const crc_tab[16] = {
0, 18, 36, 54, 72, 90, 108, 126, 144, 130, 180, 166, 216, 202, 252, 238};
*state = crc_tab[(*state ^ in) & 0xF] ^ (*state >> 4);
in >>= 4;
*state = crc_tab[(*state ^ in) & 0xF] ^ (*state >> 4);
Figure A-1: CRC calculation using a lookup table
void Msg_CRC(unsigned char in, int* state)
/*--------------------------------------------------------------------------+
| Description:
Does 8-bit cyclic redundancy check on one data byte
CRC polynomial is x^7 + x^3 + 1
Returns the current state
+--------------------------------------------------------------------------*/
#define CRC_POLYN
0x120
//Note that MSB is state input (0x90 << 1)
INT16 j;
for (j = 0; j < 8; j++) {
if ((*state ^ in) & 1)
*state ^= CRC_POLYN;
in >>= 1;
*state >>= 1;
Figure A-2: CRC calculation using algorithm
void Calc_CRC()
INT16 crc=0;
Msg_CRC(MSG_NR,&crc);
Msg_CRC(HI_MSG_LEN,&crc);
Msg_CRC(LO_MSG_LEN,&crc);
Msg_CRC(DATA_BYTE[0],&crc);
// ...
Msg_CRC(DATA_BYTE[N-1],&crc);
crc = ~crc;
// state register of CRC
// CRC checksum is now contained in crc
// logically invert
Figure A-3: Application example for CRC calculation
date:
author:
20.02.2001
wst
file: Interface.doc
version 1.0
page: 16 / 16
OIS-W Interface Specification
Baumer Ident AG
Appendix B: OIS-W messages
In the following descriptions only the message number MSG_NR and the data field(s) are listed. Start
byte, length, CRC and end byte must be added to get the full message (see Table 4-1 for complete message structure). The initiator message is listed on the first lines followed by the response.
The identifiers are defined in appendix Appendix C: .
1 Automatically transmitted messages
from host
from reader
TAG_ID_IND
UINT8 antenna
UINT8 id[tlen]
MSG_ACK
UINT8 msg_nr
PARAM_DATA_REP
struct TINFO tag_info
MSG_ACK
UINT8 msg_nr
AUX_REP
struct AUX
aux_status
MSG_ACK
UINT8 msg_nr✠
RESET_IND
UINT8 reset_nr
comment
tag identification number and the antenna where it is received
tlen = length of Tag or length of output code in code table
general message acknowledge on message msg_nr
(msg_nr = TAG_ID_IND)
tag identification number, antenna and further information about the tag
general message acknowledge on message msg_nr
(msg_nr = TAG_ID_IND)
contains present aux port settings
general message acknowledge on message msg_nr
(msg_nr = AUX_REP)
contains number for possible error during initialization, zero on success
Note that the RESET_IND is sent to both interfaces at the same time!
Table B-12: Automatically transmitted messages by the reader
The reader can be configured to send either a TAG_ID_IND message or a PARAM_DATA_REP message
automatically. The RESET_IND message is always sent by the reader after a successful initialization.
Please note that no acknowledge for RESET_IND is expected.
2 Request information from the reader
A host can get information from the reader as described in Table B-13. Please note that the automatic
PARAM_DATA_REP (Table B-12) leads to the same message as the reply to a DATA_REQ with parameter PARAM_DATA_REP.
✠ MSG_ACK is optional, but flags for actual state change report will not be reset when an acknowledge on an AUX_REP message isn’t send
date:
author:
20.02.2001
wst
file: Interface.doc
version 1.0
page: 17 / 17
OIS-W Interface Specification
Baumer Ident AG
from host
VERSION_REQ
from reader
comment
Ask for SW Version
Reply SW version number and release date
VERSION_REP
UINT8 version [5]
CONFIG_REQ
get tag structure and reader configuration
contains requested configuration
CONFIG_REP
struct CONFIG act_conf
SER_CONFIG_REQ
SER_CONFIG_REP
struct SER_CONFIG act_conf
AUX_REQ
get present state of aux port
contains present aux port settings
AUX_REP
struct AUX aux_status
MODE_REQ
get present main mode and sub-modes
MODE_REP
UINT8 main
UINT8 tx_untriggered
UINT8 biased
UINT8 synch
UINT8 random
UINT8 Tm
UINT8 Nmess
UINT8 Tdmin[2]
UINT8 Tdlen[2]
UINT8 Tsleep[2]
UINT8[CODE_MAX_LEN]biased_id
UINT8[CODE_MAX_LEN]analyz_id
UINT8 CwChannel
UINT8 TxEnable
CODE_PP_REQ
CODE_PP_REP
PP_SETTINGS codes
AUX_CONFIG_REQ
AUX_CONFIG_REP
AUXALL_CONFIG[2] aux_config
TAG_ID_REQ
TAG_ID_IND
UINT8 code.antenna
UINT8code.num[CODE_MAX_LEN]
IF_ERROR_REQ
IF_ERROR_REP
UINT32 [if_error_array]
DATA_REQ
UINT8 data_msg
CODE_TABLE_REQ
UINT8 block_nr
get interface configuration
contains requested configuration
contains present mode,
sub modes,
biased id number, analyze id number, settings for Test mode
random = 0: random mode off, 1: random mode on
Tm: number of iterations in trigger loop
Nmess: number of measurements in Random triggered mode
Tdmin, Tdlen, Tsleep: initial delay, random time, sleep time in
random mode
CwChannel = 0: Test mode off, 2..81: valid continuous wave
channel
TxEnable = 0: transmitter in test off, 1: transmit antenna 1,
2: transmit antenna 2
request installation and family code
actual installation and family code
request output port configuration
actual output port configuration
get last valid ID
last valid tag id at antenna 1 or 2
In case there has never been received a valid tag id, the
reader responses with a data field containing NO_READ
request interface errors of both interfaces
Errors on both interfaces, cumulative counting
get data vector: time, frequency, save or/and parameter
contains data time vector, data save vector, data freq vector
or data param vector (1 up to 3 messages can be received
according to the data_msg value in DATA_REQ)
TIME_DATA_REP
INT8[SBUF_LEN]
or/and
SAVE_DATA_REP
INT16 SBUF_LEN
INT16[SBUF_LEN]
INT16 PARAM_LEN
INT16 AF_AGC
INT16 ANTENNA
or/and
FREQ_DATA_REP
UINT8[ABUF_LEN]
or/and
PARAM_DATA_REP
struct TINFO tag_info
CODE_TABLE_REP
UINT16 blocks
UINT16 block_nr
UINT8[DOWNLOAD_MSG_SIZE]
ANALYZ_RESULT_REQ
TINFO contains information on Valid/Invalid tag, Tag ID number, Tag Errors during detection, Antenna information, AF attenuation (AGC) values
Upload complete postprocessing code table
Blockwise request of code table addressed by block_nr
get analyze mode results
contains analyze mode results
ANALYZ_RESULT_REP
struct ANALYZ
ERROR_ARRAY_REQ
ERROR_ARRAY_REP
UINT8 error_array[ERR_MAX]
get error array
contains error array, every position of error_array despite position zero contains a counter that indicates how many times the
error has occurred since the last reset
Table B-13: Messages that request information from the reader
date:
author:
20.02.2001
wst
file: Interface.doc
version 1.0
page: 18 / 18
OIS-W Interface Specification
Baumer Ident AG
3 Information transmitted to the reader
from host
SET_CONFIG_REQ
struct CONFIG new_conf
SET_SER_CONFIG_REQ
struct SER_CONFIG new_conf
SET_AUX_REQ
UINT8 aux_out
SET_MODE_REQ
UINT8 main
UINT8 tx_untriggered
UINT8 biased
UINT8 sync
UINT8 random
UINT8 Tm
UINT8 Nmess
UINT8 Tdmin[2]
UINT8 Tdlen[2]
UINT8 Tsleep[2]
SET_BIASED_ID_REQ
UINT8[CODE_MAX_LEN] biased_id
from reader
meaning
set tag structure and reader configuration parameter(s)
general message acknowledge
msg_nr = SET_CONFIG_REQ
set interface configuration parameter(s)
general message acknowledge
msg_nr = SET_SER_CONFIG_REQ
set aux port
general message acknowledge
msg_nr = SET_AUX_REQ
set main mode and sub-modes
MSG_ACK
UINT8 msg_nr
MSG_ACK
UINT8 msg_nr
MSG_ACK
UINT8 msg_nr
MSG_ACK
UINT8 msg_nr
general message acknowledge
msg_nr = SET_MODE_REQ
set id for biased mode
general message acknowledge
msg_nr = SET_BIASED_ID_REQ
triggers reader (SW trigger)
antenna = 1, trigger antenna 1
antenna = 2, trigger antenna 2
antenna = 3, tirgger both antennas
general message acknowledge
msg_nr = SET_TRIGGER_REQ
set installation and family code
general message acknowledge
msg_nr = SET_CODE_PP_REQ
Host trigger output AOUT1 or AOUT2
general message acknowledge
msg_nr = SET_AUX_TRIG_REQ
set output port configuration for AOUT1 and AOUT2 as for the information about the complete auxiliary port ; resets aux flags
general message acknowledge
msg_nr = SET_AUX_CONFIG_REQ
set id for analyze mode and reset counter
general message acknowledge
msg_nr = SET_ANALYZ_ID_REQ
contains new downloadable file
DOWNLOAD_MSG_SIZE=32
possible types are DSP_SW=0, FPGA_SW=1, CODE_TABLE=2
after reception of the all blocks an automatic reset is issued for
DSP_SW and FPGA_SW, block_nr counts from blocks-1 down to
zero
MSG_ACK
UINT8 msg_nr
SET_TRIGGER_REQ
UINT8 antenna
MSG_ACK
UINT8 msg_nr
SET_CODE_PP_REQ
PP_SETTINGS codes
SET_AUX_TRIG_REQ
UINT8 aux_host_trigger
MSG_ACK
UINT8 msg_nr
MSG_ACK
UINT8 msg_nr
SET_AUX_CONFIG_REQ
AUXALL_CONFIG[2] aux_config
SET_ANALYZ_ID_REQ
UINT8[CODE_MAX_LEN]
MSG_ACK
UINT8 msg_nr
MSG_ACK
UINT8 msg_nr
DOWNLOAD_REQ
UINT8 type
UINT16 blocks
UINT16 block_nr
UINT8[DOWNLOAD_MSG_SIZE]
DOWNLOAD_REP
UINT8 type
SET_TEST_REQ
UINT8 cw_channel
UINT8 tx_enable
MSG_ACK
UINT8 msg_nr
SET_MONITOR_REQ
UINT8 antenna
UINT8 beeper
MSG_ACK
UINT8 msg_nr
RESET_REQ
RESET_IND
UINT8 reset_nr
acknowledge for each block
enters or leaves test mode
CwChannel = 0 leaves test mode; CwChannel = 2..81 enters test
mode, TxEnable = 0: TX off, 1: antenna 1 on, 2: antenna 2 on
general message acknowledge
msg_nr = SET_TEST_REQ
Sets Display filter in antenna alternating mode, sends only
DATA_REP messages from ANT_1 or ANT_2 or both antennas
(default). Beeper can be enabled =1, beeps on every valid tag ID.
This setting is volatile, after reset the default setting is assumed.
general message acknowledge
msg_nr = SET_DISPLAY_REQ
reset DSP SW
contains number for possible error during initialization,
zero on success
Table B-14: Messages that the host may send to the reader
date:
author:
20.02.2001
wst
file: Interface.doc
version 1.0
page: 19 / 19
OIS-W Interface Specification
Baumer Ident AG
Appendix C: C/C++ header definitions
1 Global Definitions
/*** general definitions sorted alphabetically ***/
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
date:
author:
ABUF_LEN
ABUF_NUM
ANT_1
ANT_2
ANT_ALTERNATING
AUX_DELAYED_IMPULSE
AUX_DELAYED_TURN_OFF
AUX_HOST_TRIG
AUX_ID_TRIG_FILT
AUX_ID_TRIG_TRANSP
AUX_TAG_ACK
BOTH_IF
CODE_MAX_LEN
CODE_MAX_LEN1
CORRECTION_ERROR
DATA_IF
DOWNLOAD
EMPTY_BUFFER
EVENT_DRIVEN_ID
FREQ_DATA
FULL_BUFFER
ID_FIFO_LEN
INVALID_ELSE
INVALID_INSTALLATION_C
INVALID_NOFM
MASTER
MULTIPLE_PEAKS
OFF
ON
PARAM_DATA
PEAK_BELOW_SNR
RMOD_EXPONENTIAL
RMOD_GAUSS
RMOD_UNIFORM
SAVE_DATA
SBUF_LEN
SBUF_NUM
SERVICE_IF
SLAVE
TAP_CORRECTED
TIME_DATA
TIME_OUT
TIME_OUT2
TOO_MANY_CORRECTIONS
TRIG1
TRIG2
TRIGB
TRIGGERED_ID
TYP_PARID_DA
TYP_PARID_SI
TYP_TAGID_DA
TYP_TAGID_SI
VALID_TAG
ZERO_IF
20.02.2001
wst
300
16
17
0x04
0xEE
0x2
0xFF
0x003
0x002
0x001
0x02
0x4
0x01
0x8
512
0x80
0x1
0xFD
0xFC
0x08
02
12
01
11
0x000
file: Interface.doc
version 1.0
page: 20 / 20
OIS-W Interface Specification
Baumer Ident AG
2 Size definition of variables
/*** Size Definition of Variables ***/
typedef
typedef
typedef
typedef
typedef
typedef
unsigned char
unsigned int
unsigned long
char
int
long
UINT8;
UINT16;
UINT32;
INT8;
INT16;
INT32;
3 Structure definitions
/*** structure definitions ***/
typedef struct { UINT8 *start;
INT16 len;
volatile in;
volatile out;
typedef enum
typedef enum
} BUFOBJ;
{ RAND_OFF,
RAND_TD_MIN,
RAND_GENERATE,
RAND_RUN,
RAND_SLEEP
} RANDOM_STATE;
{ TRIG_OFF,
TRIG_PREP,
TRIG_IND,
TRIG_IND1,
TRIG_RUN
} TRIG_STATE;
typedef struct { UINT8 flag;
float array[ABUF_LEN]; } ABUF;
typedef struct { UINT32 Total_ids;
UINT32 Invalid_ids;
UINT32 Wrong_but_valid_ids;} ANALYZ;
typedef struct { UINT8 aux_chinden;
UINT8 aux_chindmsk;
typedef struct { UINT8
UINT8
UINT8
UINT8
UINT8
UINT8
typedef struct { UINT8
UINT8
UINT8
UINT8
UINT8
UINT8
UINT8
UINT8
} AUXCHIND_CONFIG;
aux_mode;
aux_function;
aux_inv;
aux_tdon;
aux_tdoff;
aux_tauxf[2];
} AUX_CONFIG;
aux_in;
aux_out;
aux_sync_in;
aux_sync_out;
aux_flag;
aux_in_trig;
aux_sync_trig;
aux_random_trig; } AUX;
typedef struct { AUX_CONFIG port[2];
AUXCHIND_CONFIG auxchind_cfg;} AUXALL_CONFIG;
typedef struct { UINT8 antenna;
UINT8 num[CODE_MAX_LEN];} CODE;
date:
author:
20.02.2001
wst
file: Interface.doc
version 1.0
page: 21 / 21
OIS-W Interface Specification
Baumer Ident AG
typedef struct { UINT8 Tslot;
UINT8 Ncodebloc;
UINT8 Ncodeslot;
UINT8 Ncalrefl;
UINT8 Ncoderef;
UINT8 Ncheckrefl;
UINT8 Nextrefl;
UINT8 Nmesrefl;
UINT8 Tcode00[2];
INT8 Tcal;
UINT8 Nnoisebin;
UINT8 Tmes0[2];
UINT8 Puseguard;
UINT8 Channel;
UINT8 Ant;
UINT8 Navg[2];
UINT8 Na;
UINT8 Nequ;
UINT8 Pposinst;
UINT8 Ninst;
UINT8 Pposfam;
UINT8 Nfam;
UINT8 Pposuser;
UINT8 Nuser;
UINT8 Ntab;
UINT8 Afagc;
UINT8 SNR;
UINT8 DSNRCal;
UINT8 DMultiTag;
UINT8 InitDelay1;
UINT8 InitDelay2;
UINT8 DelayRange1;
UINT8 DelayRange2;
} CONFIG;
typedef struct { UINT8 message;
UINT8 data_msg;
UINT8 interface;
INT16 length;
BUFOBJ *buf;
} DS_MSG;
typedef struct { BUFOBJ
BUFOBJ
BUFOBJ
BUFOBJ
} DS_PTR;
si_rx;
si_tx;
da_rx;
da_tx;
typedef struct { UINT8
UINT8
UINT8
UINT8
UINT8
UINT8
UINT8
UINT8
UINT8
UINT8
UINT8
UINT8
UINT8
UINT8
main;
tx_untriggered;
biased;
sync;
random;
Tm;
Nmess;
Tdmin[2];
Tdlen[2];
Tsleep[2];
analyz_id[CODE_MAX_LEN];
biased_id[CODE_MAX_LEN];
CwChannel;
TxEnable;
} MODE;
typedef struct { UINT8
UINT8
UINT8
UINT8
UINT8
Instal_code_len;
Table_lookup_On;
Family_code_len;
Instal_code[CODE_MAX_LEN];
Family_code[CODE_MAX_LEN];} PP_SETTINGS;
typedef struct { UINT8
INT16
UINT8
UINT8
flag;
array[SBUF_LEN];
Afagc;
antenna;
} SBUF;
typedef struct { UINT8
UINT8
UINT8
UINT8
UINT8
UINT8
SerSpeedDA;
SerSpeedSI;
MsgTypeID;
TidF[2];
ID_Msg_Retry;
ID_Msg_Timeout;
date:
author:
20.02.2001
wst
} SER_CONFIG;
file: Interface.doc
version 1.0
page: 22 / 22
OIS-W Interface Specification
Baumer Ident AG
typedef struct { UINT8 Invalid;
UINT8 Num[CODE_MAX_LEN];
UINT8 AF_Agc;
UINT8 Noise_Level;
UINT8 Cal_Magnitude;
INT8 Cal_Shift;
UINT8 First_Tap_Pos;
UINT8 Delta_Last_Tap_Pos;
UINT8 Cur_Ant;
UINT8 Bloc[CODE_MAX_LEN1];
UINT8 Bloc_Magnitude[CODE_MAX_LEN];} TINFO;
typedef struct { TINFO tag[ID_FIFO_LEN];
CODE data[ID_FIFO_LEN];
INT16 in_idx;
INT16 out_idx;
} TJD_FIFO;
typedef struct { TRIG_STATE state;
INT16 count[2];
RANDOM_STATE rnd;
INT16 meas_count;
} TRIGGER;
4 Definition of message numbers
/*** definition of message numbers ***/
#define
#define
#define
#define
#define
#define
DOWNLOAD_REQ
MSG_ACK
RESET_REQ
TEST_SER_REQ
TEST_SER_REP
DOWNLOAD_REP
0x10
0x11
0x12
0x13
0x14
0x15
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
SET_CONFIG_REQ
SET_AUX_REQ
SET_MODE_REQ
SET_TRIGGER_REQ
SET_ANALYZ_ID_REQ
SET_BIASED_ID_REQ
SET_TEST_REQ
SET_CODEPP_REQ
SET_MONITOR_REQ
SET_AUX_CONFIG_REQ
SET_AUX_TRIG_REQ
SET_ADDR_REQ
SET_SER_CONFIG_REQ
0x20
0x21
0x22
0x23
0x25
0x26
0x27
0x28
0x29
0x2A
0x2B
0x2C
0x2D
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
CONFIG_REQ
AUX_REQ
MODE_REQ
DATA_REQ
TAG_ID_REQ
ANALYZ_RESULT_REQ
CODE_TABLE_REQ
ERROR_ARRAY_REQ
VERSION_REQ
CODEPP_REQ
IF_ERROR_REQ
AUX_CONFIG_REQ
SER_CONFIG_REQ
0x30
0x31
0x32
0x33
0x34
0x37
0x38
0x39
0x3A
0x3B
0x3C
0x3D
0x3E
date:
author:
20.02.2001
wst
// not handled by DSP SW
// response TAG_ID_IND
file: Interface.doc
version 1.0
page: 23 / 23
OIS-W Interface Specification
Baumer Ident AG
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
CONFIG_REP
AUX_REP
MODE_REP
TIME_DATA_REP
FREQ_DATA_REP
PARAM_DATA_REP
SAVE_DATA_REP
ANALYZ_RESULT_REP
CODE_TABLE_REP
ERROR_ARRAY_REP
VERSION_REP
CODEPP_REP
IF_ERROR_REP
AUX_CONFIG_REP
SER_CONFIG_REP
0x40
0x41
0x42
0x43
0x44
0x45
0x46
0x47
0x48
0x49
0x4A
0x4B
0x4C
0x4D
0x4E
#define TAG_ID_IND
#define RESET_IND
0x50
0x51
#define
#define
#define
#define
#define
#define
0x10
0x20
0x30
0x40
0x50
0xF0
SYS_MSG_MASK
SET_MSG_MASK
REQ_MSG_MASK
REP_MSG_MASK
IND_MSG_MASK
MSG_GROUP_MASK
#define FIRST_MSG
#define LAST_MSG
DOWNLOAD_REQ
RESET_IND
/*** download message definers ***/
#define DSP_SW
#define FPGA_SW
#define CODE_TABLE
5 Error numbers
/*** error array indices ***/
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
ERR_RESET_NR
ERR_SBUF
ERR_SI_RXFULL
ERR_SI_TXFULL
ERR_DA_RXFULL
ERR_DA_TXFULL
ERR_SI_NOT_RDY
ERR_DA_NOT_RDY
ERR_CLIPPING_ANT1
ERR_CLIPPING_ANT2
ERR_MSGD
ERR_FLASH_TMO
ERR_FLASH_DATA
ERR_MAX
10
11
12
13
/*** ERR_RESET_NR. ***/
#define XILINX_LOAD_ERROR
0xF1
#define XILINX_WRONG_CHANNEL 0xF2
date:
author:
20.02.2001
wst
file: Interface.doc
version 1.0
page: 24 / 24

Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.2
Linearized                      : No
Page Count                      : 24
Create Date                     : 1910:10:22 01:34:12
Producer                        : Acrobat Distiller 3.0 f r Windows
EXIF Metadata provided by EXIF.tools
FCC ID Filing: PGPOIS-W-WR300303

Navigation menu