BEETLE MSR Module

BEETLE MSR Module
programmable Magnetic Swipe Card Reader
for BA7x
User Guide
Edition March 2006
Linux™ is a registered trademark of Linus Torvalds
Pentium™ is a registered trademark of the Intel Corporation
MS-DOS™ and Windows XP™ are registered trademarks of the
Microsoft Corporation
BEETLE™ is a registered trademark of Wincor Nixdorf International GmbH
Copyright© Wincor Nixdorf International GmbH, 2006
The reproduction, transmission or use of this document or its contents is not
permitted without express authority.
Offenders will be liable for damages.
All rights, including rights created by patent grant or registration of a utility model or
design, are reserved.
Delivery subject to availability; technical modifications possible.
Contents
Manufacturer´s Certification...............................................1
FCC-Class A Declaration............................................................................1
Warranty .....................................................................................................2
Recycling the MSR Module.........................................................................2
Before Switching on the System .................................................................3
Unpacking and Checking the System....................................................3
Swipe Card Reader (MSR Module) .....................................4
General .......................................................................................................4
How to Operate .....................................................................................4
Cleaning Instructions.............................................................................4
Installation............................................................................5
Programming the MSR and Firmware Upgrade ................8
Flash Structure ...........................................................................................8
Commands for Programming ......................................................................9
Erase MSR Flash Pages .......................................................................9
Write MSR Controller Parameters .......................................................10
Read MSR Controller Parameters.......................................................10
Write Sequences .................................................................................11
Read Sequences.................................................................................11
Write MSR-Country Codes -> Codes ..................................................12
Write MSR-Country Codes -> Option Bytes ........................................12
Read MSR-Country Codes -> Codes ..................................................13
Read MSR-Country Codes -> Option Bytes ........................................13
Test of Flash Page ..............................................................................13
Write GAP Values for MSR Data Transmission Speed ......................14
Read GAP Values for MSR Data Transmission Speed .......................15
Loader Activation.................................................................................15
Read Module Info ................................................................................16
Send Data ...........................................................................................18
Meaning of the Command Syntax.............................................................19
Technical Data ...................................................................21
FCC-CLASS A DECLARATION
Manufacturer´s Certification
The device complies with the requirements of the EEC
directive 89/336/EEC with regard to ‘Electromagnetic
compatibilily".
Therefore, you will find the CE mark on the device or packaging.
The device is intended only for operation with Wincor Nixdorf approved flat
screens.
FCC-Class A Declaration
This equipment has been tested and found to comply with the limits for a
Class A digital device, pursuant to part 15 of the FCC Rules. These limits
are designed to provide reasonable protection against harmful inter-ference
when the equipment is operated in a commercial environment. This
equipment generates, uses, and can radiate radio frequency energy and, if
not installed and used in accordance with the instruction manual, may cause
harmful interference to radio communications.
Operation of this equipment in a residential area is likely to cause harmful
interference in which case the user will be required to correct the
interference at his own expense. Modifications not authorized by the
manufacturer may void users authority to operate this device. This class A
digital apparatus complies with Canadian ICES-003.
Cet appareil numerique de la classe A est conforme à la norme NMB-003
du Canada.
1
WARRANTY
Warranty
Wincor Nixdorf guarantees generally a warranty engagement for 12 months
beginning with the date of delivery. This warranty engagement covers all
damages which occur despite a normal use of the product.
Damages because of
n improper or insufficient maintenance,
n improper use of the product or unauthorized modifications of the product,
n inadequate location or surroundings
will not be covered by the warranty.
For further information of the stipulation look at your contract.
All parts of the product which are subject to wear and tear are not included
in the warranty engagement.
Please order spare parts at the Wincor Nixdorf customer service.
Recycling the MSR Module
Environmental protection does not begin when
the time comes to dispose of the swipe card
reader; it begins with the manufacturer. This
product was designed according to our internal
norm “Environmental conscious product design
and development”
The swipe card reader is manufactured without the use of CFCs und CCHS
and is produced mainly from reusable components and materials.
The used plastic materials can, for the most part, be recycled. Even the
precious metals can be recycled, which saves energy and costly raw
materials.
Please do not stick labels onto plastic case parts. This would help us to
re-use components and material.
You can protect our environment by only switching on your equipment when
it is actually needed. If possible, even avoid the stand-by-mode, as this
2
BEFORE SWITCHING ON THE SYSTEM
wastes energy, too. Also switch your equipment off when you take a longer
break or finish your work.
At present, there are still some parts that are not reusable. Wincor Nixdorf
disposes of old devices in an environmentally sensitive way using a
recycling center that is ISO 9001 and ISO 14001 certified, as is the rest of
the company.
So don’t simply throw your swipe card reader on the scrap heap when it has
served its time, but take advantage of the environmentally smart, up-to-date
recycling methods!
Please contact your competent branch or the Recycling Center Paderborn,
Germany (for European countries), for information on how to return and
re-use devices and disposable materials under the following mail address:
Email: [email protected]
or on the internet.
We look forward to your mail.
Before Switching on the System
Unpacking and Checking the System
Unpack the parts and check to see whether the delivery matches the
information on the delivery note.
If damage has occurred during shipping or if the package contents do not
match the delivery note, promptly inform your Wincor Nixdorf sales outlet.
Transport the device only in its original packaging (to protect it against
impact and shock).
3
General
Swipe Card Reader (MSR Module)
General
The swipe card reader can read three ISO tracks simultaneously in one
single swipe.
The MSR module is fitted on the right-hand side of the screen module. The
connection is made via an MF2 interface.
How to Operate
Run the swipe card through the slit of the swipe card reader from top to
bottom in a quick and steady movement. Make sure that the magnetic strip
is to the right.
When using swipe cards, the following should be observed:
n
n
n
swipe cards should never be allowed to come into contact with liquids.
swipe cards should not be bent or folded in any way.
swipe cards should not be allowed to come into close contact with a
magnetic field.
Swipe cards should only be inserted in the top of the specially designed slit
of the reading device. If the card is inserted in another place, the reading
head could be damaged.
Cleaning Instructions
In order to guarantee good reading results over a longer period of time, the
swipe card reader should be cleaned once a week. This is carried out by
using a special cleaning card that can be purchased from Wincor Nixdorf.
Clean the surface of the swipe card reader with a suitable commercially
available surface cleaner.
Make sure that the power plug is disconnected, connector cables are
unplugged and that no liquid finds its way into the device.
4
INSTALLATION
Installation
Insert the delivered
screws (Phillips Head)
into the positions marked
by the arrows (12.1"
screen). Fasten the
screws a little but do not
screw them too tightly.
Two positions are
available at the 15"
screen. In this illustration
it is the upper positions
which are marked with
two arrows. There is a
second, lower position.
Fasten the screws
slightly, leaving enough
place for the sheet metal.
5
INSTALLATION
Then place the MSR with
the openings (see arrows)
on to the screws and push it
to the right.
Tighten the screws.
Do not touch the electronic board.

‚
ƒ
Connect the cable to the
upper socket (1) and put the
cable into the guide of the
cable (2).
If a keyboard is to be
connected, use the second
connection below (3).
6
INSTALLATION
First hook the
cover with the
catch (see figure
above) into the top
of the rear side
(see center figure).
Make sure that the
cable lies in the
guide and is fitting
through the opening of the cover.
Press the two engagements at the
bottom until you
hear a click.
7
FLASH STRUCTURE
Programming the MSR and Firmware Upgrade
The MSR controller provides programmable start- and end-sequences for
the MSR. A loadable country table can be used for the data.
This firmware concept is necessary for the software to produce the utility for
programming the MSR controller.
The necessary commands are described on the following pages.
A Loader upgrade will not be supported.
Flash Structure
Implemented in the hardware of the MSR controller is a 64K-Byte FLASH. It
maintains the Loader, MSR controller parameter, MSR data
(start-/ende-sequences, country table), firmware header and the firmware.
The pagesize is min. 128 Byte.
For the Atmel microcontroller AT89C51RD2 the Flash-API routines have
been moved from the 64kByte Flash area to an extra 2kByte Boot ROM
area.
8
Memory
address
Memory occupation
0x0000
Security jump to loader address if Software Boot Vector is
not programmed (0x00)
0x00C0
Loader-header (64 byte)
0x0100
Loader -> start-address depending on Boot Vector (10240
Byte)
0x2000
MSR controller parameter (max. length 128 bytes)
0x2080
start-, end sequences for MSR track no. 1 (max. length 128
bytes)
0x2100
start-, end sequences for MSR track no. 2 (max. length 128
bytes)
COMMANDS FOR PROGRAMMING
0x2180
start-, end sequences for MSR track no. 3 (max. length 128
bytes)
0x2200
MSR country codes (codes) (max. length 128 bytes)
0x2280
MSR country codes (option bytes) (max. length 128 bytes)
0x2300
GAP values for varying MSR data transmission speed
(max. length 128 bytes)
0x2900
Firmware-header (64 byte) + following 64 byte filled with
„00“
0x2980
Firmware (variable length (max. 54912 Byte); see details in
FW-Header)
0xFFFF
End of flash
Commands for Programming
For the handling of start-/end-sequences for MSR and the country tables,
new commands were generated. For explanation of the following
abbreviations please refer to the table "meaning of command syntax" in this
chapter. The introduction command ‘D7’h is sent from the system and will
be acknowledged with ‘FA’h from MSR controller. The introduction
command ‘D7’h is followed by the byte ComSel (Command-Select), which
differentiates following orders:
Erase MSR Flash Pages
With this command the MSR area of Flash will be erased. This means it will
be set to default.
System Request
Command
ComSel
Fieldlen
LRC
D7h
00h
00h
D7h
9
COMMANDS FOR PROGRAMMING
Write MSR Controller Parameters
This command stores all global MSR controller parameters in the Flash.
System Request
Command
ComSel
Fieldlen
KbMode
LevSel
SdMode
(nFl-3) x
Data
(0 – 16)
LRC
D7h
01h
nFl
nKb
nLS
nSd
xxh
xxh
stored in Flash
nFl
nKb
nLS
nSd
= 03h – 13h (3 - 19)
= 00h – 02h
= 00h – 07h
= 00h – 01h
Read MSR Controller Parameters
The stored parameters can be read again with this command.
System Request
Command
ComSel
D7h
02h
MSR Reply
Fieldlen
KbMode
LevSel
SdMode
(nFl-3) x
Data
LRC
nFl
nKb
nLS
nSd
xxh
xxh
nFl
nKb
nLS
nSd
10
= 03h – 13h (3 - 19)
= 00h – 02h
= 00h – 07h
= 00h – 01h
COMMANDS FOR PROGRAMMING
Write Sequences
With this command the start-/end-sequences (header/trailer) for each of the
three possible tracks of the MSR can be written into the Flash. After
successful programming these start-/end sequences will be sent to the
system for each programmed track no. while reading a magnet stripe card
successfully.
System Request
Command
ComSel
DevSel
Opt
Fieldlen
Start
nFIS x
SeqStart
Fieldlen
End
nFIE x
SeqEnd
LRC
D7h
05h
nDS
nO
nFlS
xxh
nFIE
xxh
xxh
stored in Flash
nDS
nO
nFlS
nFlE
= 00h – 05h
= 00h – FFh
= 00h – 20h (0 – 32)
= 00h – 10h (0 – 16)
NOTE for possible data lengths
The maximum number of codes for Header strings is 32 and for Trailer
strings is 16. At the interface between MSR controller and the system make
codes consist of 1 byte and break codes of 2 bytes. So a Header string may
consist of up to 10 simple keystrokes and a trailer string of 5 simple keystrokes. Note, however, that there exist so-called extended keys, with 2
bytes make code and 3 bytes break code. Also, if large letters or special
characters occur in the string, additional shift keystrokes will be inserted
automatically by the KB-Utility (KbUti.exe).
Read Sequences
To realize a copy function from one MSR controller to another, it must be
possible to read programmed start-/end-sequences.
System Request
Command
ComSel
DevSel
D7h
06h
nDS
11
COMMANDS FOR PROGRAMMING
nDS
= 00h – 05h
MSR Reply
Opt
Fieldlen
Start
nFIS x
SeqStart
Fieldlen
End
nFIE x
SeqEnd
LRC
NO
nFlS
xxh
nFIE
xxh
xxh
NO
nFlS
nFlE
= 00h – FFh
= 00h – 20h (0 – 32)
= 00h – 10h (0 – 16)
Write MSR-Country Codes -> Codes
With this command it is possible to write the first part of the country codes
into the Flash. This part consists of a 64 Byte country code.
System Request
Command
ComSel
FieldLen
64k
Länder-Code
LRC
D7h
07h
40h
xxh
xxh
stored in Flash
Write MSR-Country Codes -> Option Bytes
With this command it is possible to write the second part of the country
codes into the Flash. This part consists of a 64 Byte option code, which
realises whether the country code is sent with Shift- or Alt- keycode.
System Request
Command
ComSel
FieldLen
64k x
OptByte
LRC
D7h
08h
40h
xxh
xxh
stored in Flash
12
COMMANDS FOR PROGRAMMING
Read MSR-Country Codes -> Codes
To realize a copy function from one MSR controller to another, it must be
possible to read the programmed country code.
System Request
Command
ComSel
D7h
09h
MSR Reply
FieldLen
64 x Country Code
LRC
40h
xxh
xxh
Read MSR-Country Codes -> Option Bytes
To realize a copy function from one MSR controller to another, it must be
possible to read the programmed option bytes.
System Request
Command
ComSel
D7h
0Ah
MSR Reply
FieldLen
64 x OptByte
LRC
40h
xxh
xxh
Test of Flash Page
This command is exclusively provided for testing the Flash during the
production process. The test is non-destructive, i.e. after the test the MSR
controller has to be programmed again.
13
COMMANDS FOR PROGRAMMING
64 Byte data are written into the selected Flash page. Thereafter every byte
of this page is read and compared.
System request
Command
ComSel
PageNo
Low-Byte
PageNo
Low-Byte
Fieldlen
64 x Daten
LRC
D7h
0Bh
nPNL
nPNH
40h
xxh
xxh
stored in Flash
nPNL
nPNH
= 00h – FFh (0-255)
= 00h – 01h
Write GAP Values for MSR Data Transmission Speed
This command stores valid values for programmable GAP-Handling into the
flash. These values will be used for accelerating or slowing down the
MSR-data transmissions speed depending on the used system.
System Request
Command
ComSel
ComSel2
(write)
Fieldlen
nFL x Data
(1-16)
LRC
D7h
0Eh
01h
nFl
xxh
xxh
im Flash gespeichert
ComSel2
nFl
nFl x Data
= 01h-02h ( 01 = write; 02 = read)
= 01h – 10h (1 - 16)
= GAP values (valid data: 1…6)
1 – GAP duration 0,55ms
2 – GAP duration 0,85ms
3 – GAP duration 1,5ms
4 – GAP duration 2,0ms
5 – GAP duration 2,5ms
6 – GAP duration 3,4ms
14
COMMANDS FOR PROGRAMMING
The values above are calculated in the case the MSR tracks of
MSR-controller are not programmed with header/trailer by the customer.
Otherwise, if header/trailer are programmed the GAP duration may be a
little bit higher.
When programming the external flash with keycodes and/ or header/trailer
(for MSR) by using the utility KbUti.exe the flash contents including
programmed GAP values will be erased. So, if needed you have to program
keycodes and/or header trailer (for MSR) first, before programming GAP
values into the flash. Please follow the same procedures when setting a
keyboard from programmed state into default state by using the utility.
Read GAP Values for MSR Data Transmission Speed
This command is used to read out the programmed value for GAP-Handling
from flash.
System Request
Command
ComSel
ComSel2 (read)
D7h
0Eh
02h
ComSel2 = 02h (read)
MSR Reply
FieldLen
nFl x GAP- Value
LRC
nFl
xxh
xxh
nFl
= 01h- 10h (1-16)
Loader Activation
This command belongs to the firmware upgrade command set and causes a
change of firmware for the loader. All Bytes of the command will be
acknowledged by the firmware. With the Loader activated the acknowledge
comes from the loader.
15
COMMANDS FOR PROGRAMMING
System Request
Command
ComSel1
ComSel2
PckNo
LRC
D7h
0Ch
01h
xxh
xxh
MSR Reply
Fieldlen
PckNo
Status
Resp. Time Out
LRC
nFl
xxh
xxh
xxh
xxh
nFl
= 00h- 03h (0-3)
ResponseTimeOut
This is the maximum time in which the loader must send an acknowledge of
a command. Time starts after the acknowledge of the last command byte.
The waiting time is necessary, because the keyboard has no chance to lock
the interface. The loader utility must ensure that no data will be sent during
the waiting time. The value is 0-255 Seconds.
The waiting time for the command “Loader Activation” is 2 Seconds.
Read Module Info
This command belongs to the firmware upgrade command set and provides
all information about all existing modules. These modules are marked by a
special identification. Nonexisting modules have no data.
System request
16
Command
ComSel1
ComSel2
PckNo
LRC
D7h
0Ch
02h
xxh
xxh
COMMANDS FOR PROGRAMMING
MSR Reply
Offset
Lenght
Datatyp
Value
Meaning
0
1
bin
b
FieldLen
1
1
bin
b
PckNo
2
1
bin
b
Status
3
5
ASCII
$MOD$
Identification
8
1
ASCII
0x20
Blank
9
6
ASCII
yymmdd
Date of release
(YYMMDD)
15
1
ASCII
0x20
Blank
16
4
ASCII
rrvv
Release/Version
20
1
ASCII
0x20
Blank
21
8
ASCII
a..a
Modulname
29
1
ASCII
0x2E
Dot "."
30
3
ASCII
aaa
Extension
33
1
bin
0x00
String-End-Terminator
34
3
bin
bbb
Data length (big endian)
37
2
bin
bb
16 Bit Checksum
(big endian)
39
1
ASCII
0x3A
Colon ":" ® next Module
...
...
...
...
...
n-1
1
ASCII
0x3B
Semicolon ";"
n
1
bin
b
LRC
17
COMMANDS FOR PROGRAMMING
Send Data
This command belongs to the firmware upgrade command set, by which the
programmable Header and Data are sent to the KB controller. The package
length PckLen is limited up to max. 128 Byte. This is for the knowledge of
KB controller, to calculate how much RAM is available. Each package is
consecutively numbered by a package number PckNo.
After all data are sent, an empty Data package (PckLen = Zero) must be
sent from the FW upgrade utility. The Loader verifies the Checksum and
sends remaining data to the Flash.
System request
Command
ComSel1
ComSel2
PckNo
PckLen
npkLx Data
(1- 128)
LRC
D7h
0Ch
03h
xxh
npckL
xxh
xxh
nPkL
= 00h- 7Fh (0- 255)
MSR reply
Fieldlen
PckNo
Status
LRC
nFl
xxh
xxh
xxh
nFl
18
= 00h- 03h (0- 4)
MEANING OF THE COMMAND SYNTAX
Meaning of the Command Syntax
Following syntax is used for the commands described above (summary):
Command:
Introductory Command D7h
ComSel:
Command Selection
Fieldlen:
Fieldlength contains the number of following data bytes.
LRC:
Longitudinal Redundancy Check. Comparison between
System LRC and the generated LRC from MSR controller
will be done after command output.
KbMode:
In the MSR controller parameter commands the Controller
Mode deposits the conditions for the mode of operation how
to select the levels. This applies analogously for handling
the Level Select.
LevSel:
Selection of Level for MSR controller operation or
programming.
SdMode
In the Subdevice Mode is fixed the operation mode of the
device MSR. It is possible to choose between DOS/WINMode and programmable Mode.
Track No
The Track Numero (number) defines the track of the read
MSR data .This number assigns a track to a page in the
Flash.
Opt
Depend of command:
Not used
MSR data
MSR data as header and trailer are stored in the Flash.
DevSel
Device Selection for programming the start- and endSequence.
FieldlenStart Fieldlength of Start Sequence.
SeqStart
Databytes of Start Sequence
19
MEANING OF THE COMMAND SYNTAX
FieldlenEnd
Fieldlength of End Sequence.
SeqEnd
Databytes of End Sequence
Countrycode 64 Databytes of Countrycode
OptByte
20
64 Optionbytes belonging to the Country code table, which
contains the condition of Shift and Alt.
TECHNICAL DATA
Technical Data
Number of tracks
3
Swipe direction
vertical
Read speed
15 to 80 cm/sec.
Coding of swipe cards
according to ISO/IEC 7811-2
Connector
keyboard: 6 Pin Mini DIN
Operating Condition
IEC721 3-3 Class 3K3
+5°C to 40°C (41°F to 104°F)
Storage Condition
IEC721 3-1 Class 1K2
+5°C to 40°C (41°F to 104°F)
Transport Condition
IEC721 3-2 Class 2K2
-25°C to 60°C (-13°F to 140°F)
Width
78 mm (3.07")
Height
215 mm (8.46")
Depth
36 mm (1.42")
Weight
345 g
21