The data from the card is returned as shown in the following Baccus Naur Form:
Track data: <Track1><CR><Track2><CR><Track3><CR>
Track1:
[<Start Sentinel 1><Data1>{1,82}<End Sentinel>]|[<Error>]
Track2:
[<Start Sentinel 2><Data2>{1,40}<End Sentinel>]|[<Error>]
Track3:
[<Start Sentinel 3><Data2>{1,107}<End Sentinel>]|[<Error>]
CR:
0x0D or Carriage Return
Start Sentinel 1:
Start Sentinel 2:
Start Sentinel 3:
End Sentinel:
Error:
0x45
Data1:
0x21 to 0x5F
Data2:
0x31 to 0x3F
Data3:
0x31 to 0x3F
If a track is read incorrectly an ASCII 'E' is returned in place of the bad track. The following table shows the
format of the MSR configuration word:
Byte1
Configuration bits
Bit
Function
0
CR enabled
1
Raw data mode
2
track 1 disabled
3
track 2 disabled
4
track 3 disabled
5
Strip Sentinels
6
Use Custom Configuration
7
Hide Error tracks
Byte 2
SS1
Byte 3
SS2
Byte 4
SS3
Byte 5
ES
Byte 1, Bit 0: Carriage return Enabled
This bit enables the inclusion of Carriage returns between the tracks. This defaults to '0' or no Carriage
1
ASCII conversion of characters used in this document are: 0x25='%', 0x3B=';', 0x2B='+', 0x3F='?', 0x45='E'. For
more ASCII character conversions see ISO-646-US-ASCII.
SurePOS 500 Model XX3 Technical Reference, v 1.3
1
0x25
or value in configuration byte 2
0x3B or value in configuration byte 3
0x2B or value in configuration byte 4
0x3F or value in configuration byte 5
Factory
PS/2
1
0
0
0
0
0
0
0
0x25
0x3B
0x2B
0x3F
Default
RS-232
0
0
0
0
0
0
0
0
0x25
0x3B
0x2B
0x3F
81
Page 69 of