Intermec IP30 Basic Reader Interface Programmer's Reference Manual (BRI versio - Page 28

BRI Logical Interface, Using Message Checksums

Page 28 highlights

Chapter 3 - Understanding BRI Programming Elements BRI Logical Interface The BRI is an RFID reader interface that uses this command/response structure: 1 An external host sends the reader a command. 2 The reader executes the command. 3 The reader responds to the host. Both the commands and responses use ASCII characters followed by a terminator. The default terminator is a carriage return/line feed () character sequence and can be changed if required. For help, see "TTY" on page 97. There is no timing associated with sending a command to the BRI. The BRI waits indefinitely for the command terminator before executing the command. Using Message Checksums Beyond the command/response terminators, you can also use message checksums to enhance the communication resilience between the external host and reader. All data sent to and returned from the BRI is returned as printable ASCII characters. Except for the command and response delimiters, these are by default, the XON and XOFF start and stop characters, or other non-printable ASCII characters as defined by the user. Certain applications may require an additional level of data verification. In order to provide an increased level of data integrity, you can enable a BRI attribute that allows message checksums to be added to data sent to and from the BRI. The checksum value is sent or returned as two ASCII-readable characters and represents a modulo 256 summing of the command or response, up to but not including the response delimiter characters. The checksum shall be calculated and then returned as two ASCII characters representing the hex value of the modulo 256 sum. The field separator character is inserted just before the checksum and is included in the checksum calculation. READ TAGIDA5 0123456789ABCDEFh 0A In this example, the checksum value for the response is 0x40A. The response checksum is returned as the two least significant characters of the modulo 256 calculated checksum. In this case, the characters 0 and A are returned. You enable both command and response message checksums when you enable the attribute CHKSUM. If a checksum error is detected on an incoming message, the BRI returns an error message CKERR to the host. For commands, the checksum is done on all characters up to the actual checksum itself. If you decide to put an ASCII space character before the checksum value, you must include that space character in the checksum calculation. 16 Basic Reader Interface Programmer Reference Manual

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146

Chapter 3 — Understanding BRI Programming Elements
16
Basic Reader Interface Programmer Reference Manual
BRI Logical Interface
The BRI is an RFID reader interface that uses this command/response structure:
1
An external host sends the reader a command.
2
The reader executes the command.
3
The reader responds to the host.
Both the commands and responses use ASCII characters followed by a terminator.
The default terminator is a carriage return/line feed (<CRLF>) character sequence
and can be changed if required. For help, see
“TTY” on page 97
.
There is no timing associated with sending a command to the BRI. The BRI waits
indefinitely for the command terminator before executing the command.
Using Message Checksums
Beyond the command/response terminators, you can also use message checksums
to enhance the communication resilience between the external host and reader.
All data sent to and returned from the BRI is returned as printable ASCII characters.
Except for the command and response delimiters, these are <CRLF> by default, the
XON and XOFF start and stop characters, or other non-printable ASCII characters
as defined by the user.
Certain applications may require an additional level of data verification. In order to
provide an increased level of data integrity, you can enable a BRI attribute that
allows message checksums to be added to data sent to and from the BRI. The
checksum value is sent or returned as two ASCII-readable characters and represents
a modulo 256 summing of the command or response, up to but not including the
response delimiter characters. The checksum shall be calculated and then returned
as two ASCII characters representing the hex value of the modulo 256 sum. The field
separator character is inserted just before the checksum and is included in the
checksum calculation.
READ TAGIDA5<CRLF>
0123456789ABCDEFh 0A<CRLF>
In this example, the checksum value for the response is 0x40A. The response
checksum is returned as the two least significant characters of the modulo 256
calculated checksum. In this case, the characters 0 and A are returned.
You enable both command and response message checksums when you enable the
attribute CHKSUM. If a checksum error is detected on an incoming message, the
BRI returns an error message CKERR to the host. For commands, the checksum is
done on all characters up to the actual checksum itself. If you decide to put an ASCII
space character before the checksum value, you must include that space character in
the checksum calculation.