Cashcode Net Interface
Cashcode Net Interface
Interface
Page 1 of 98
Contents
1......................................................................................................General Information
.........................................................................................................................................4
1.1
Introduction.................................................................................................................................................. 4
1.2
2...............................................................................................Communication Format.
.........................................................................................................................................5
2.1
Data format.................................................................................................................................................. 5
2.2
Message Format.......................................................................................................................................... 5
2.3
2.4
Peripheral Addresses................................................................................................................................... 9
2.5
2.6
2.7
Timing Definitions...................................................................................................................................... 12
2.8
Timing Specifications................................................................................................................................. 12
Introduction................................................................................................................................................ 13
3.2
Command Protocol.................................................................................................................................... 13
3.3
Controller Commands................................................................................................................................ 13
3.4
Introduction................................................................................................................................................ 25
4.2
Command Protocol.................................................................................................................................... 25
4.3
Controller Commands................................................................................................................................ 25
4.4
Introduction................................................................................................................................................ 32
5.2
Command Protocol.................................................................................................................................... 32
5.3
Controller Commands................................................................................................................................ 32
5.4
Page 2 of 98
Introduction................................................................................................................................................ 45
6.2
6.3
Command Protocol.................................................................................................................................... 46
6.4
Controller Commands................................................................................................................................ 46
6.5
6.6
Non-Response Time................................................................................................................................... 52
7.2
Enable sequence....................................................................................................................................... 54
7.3
Disable sequence....................................................................................................................................... 55
7.4
7.5
7.6
7.7
7.8
Page 3 of 98
1
1.1
General Information
Introduction
This document defines a serial network interface. The interface is Master-Slave arrangement
where all peripherals are Slave to a Master Controller.
1.2
Bus interference or crashes are prevented because each Peripheral only responds upon
being polled.
Page 4 of 98
2
2.1
Communication Format.
Data format
Baud Rate: 9600 bps/19200 bps (no negotiation, hardware selectable)
Start bit:
Data bit:
Parity:
Stop bit:
2.2
Parity none
1
Message Format
SY
SY
N
C
A
D
R:
LN
G
C
M
D
DA
TA
C
R
C
LN
G
DA
TA
C
R
1 byte
1 byte
Peripheral address
1 byte*
1 byte
0 to 250
bytes
2 bytes
* if a package cannot be fitted into 250-byte frame a wider frame may be used by setting LNG
to 0; the actual packet length is inserted into DATA block bytes 0 and 1 if CMD (if present in the
frame) does not require subcommand, otherwise in DATA block bytes 1 and 2; two-byte LNG
always follows MSB first.
case 1 (CMD present, no subcommand):
SYN
AD
CM
L
N
L
N
DAT
CRC
Page 5 of 98
G
H
I
G
H
L
O
W
SYN
AD
L
N
G
S
U
B
C
M
D
CM
L
N
G
H
I
G
H
DAT
CR
L
O
W
SYN
AD
L
N
G
H
I
G
H
L
N
G
DAT
CRC
L
O
W
This allows accommodation of data packages of up to 65528 bytes; please keep in mind that
lengthy exchanges compromise bus bandwidth.
Page 6 of 98
Page 7 of 98
end
else
TmpCRC:=TmpCRC shr 1;
end;
result:=TmpCRC;
end;
end;
Page 8 of 98
2.3
ADR
LNG
CMD
DATA
CRC
[02H]
Peripheral address
Data length
Command
Data necessary for command (omitted if not required by CMD)
Check code by CRC method
ADR
LNG
DATA
CRC
[02H]
Peripheral address
[06H]
[00H]
Check code by CRC method
ADR
LNG
DATA
CRC
[02H]
Peripheral address
[06H]
[FFH]
Check code by CRC method
Sent in PERIPHERAL to CONTROLLER direction if command from controller was not correctly received.
(4) Response message PERIPHERAL to CONTROLLER
SYNC
SYNC :
ADR :
LNG :
DATA :
CRC :
ADR
LNG
DATA
CRC
[02H]
Peripheral address
Data length
Responses Data
Check code by CRC method
Page 9 of 98
ADR
LNG
DATA
CRC
[02H]
Peripheral address
[06]
[30H]
Check code by CRC method
Sent by the PERIPHERAL if command from CONTROLLER is not valid in reference to the current
peripheral state.
2.4
Peripheral Addresses
The addresses below are defined.
2.5
Address
Definition
00H
01H
02H
03H
04H
05H
.
.
.
0DH
0EH
0FH
Forbidden
Bill-to-Bill unit
Coin Changer
Bill Validator
Card Reader
Reserved for Future Standard Peripherals
.
.
.
Reserved for Future Standard Peripherals
Reserved for Future Broadcast Transmissions
Reserved for Future Standard Peripherals
Page 10 of 98
2.6
2.6.1
The diagram below represents a typical transmission when PERIPHERAL has no data to return.
Controller
ller
r
l
er
2.6.2
Command
Peripheral
ACK message
d
Less or equal to 10 mS
The diagram below represents a typical transmission when PERIPHERAL has data to return.
Controller
Peripheral
Poll command
Status
Less or equal to 10 mS
ACK message
From 100 to 200 mS
Poll command
Status
ACK message
Page 11 of 98
Page 12 of 98
2.6.3
The diagram below represents a typical transmission when the Controller determines a CRC is not
correct.
Controller
Peripheral
Less or equal to 10 mS
NAK message
From 100 to 200 mS
Poll command
Status
ACK message
2.6.4
The diagram below represents a typical transmission when Peripheral determines a CRC is not
correct. The Peripheral responds by sending a NAK message to the Controller to indicate that the
information was not received correctly.
Controller
Peripheral
Poll Command command
NAK message
Less or equal to 10 mS
Poll command
From 100 to 200 mS
Status data
ACK message
Page 13 of 98
2.7
Timing Definitions
Baud rate
tinterbyte(max.)
tresponse(m
ax.)
tbus
reset(min.)
tnon-
2.8
response
(max.)
tpoll
tfree
Timing Specifications
Baud Rate
tinterbyte(max.)
tresponse(m
ax.)
tbus
reset(min.)
Tnon-
5.0 S
tfree
10 ms (recommended 20 ms or
more)
response
(max.)
tpoll
100-200 ms
Page 14 of 98
3
3.1
3.2
Command Protocol
The IDENTIFICATION, GET BILL TABLE and DOWNLOAD commands may be sent by the
Controller when Bill-to-Bill unit is in the following states only: Power up, Initialise or Unit
Disabled. If a command cannot be executed by the Bill-to-Bill unit in a given state COMMAND
INVALID response is issued.
3.3
Controller Commands
Command
RESET
GET STATUS
SET SECURITY
POLL
ENABLE BILL
TYPES
STACK
RETURN
H
E
X
C
o
d
e
3
0
H
3
1
H
3
2
H
3
3
H
3
4
H
3
5
H
3
6
H
Description
Page 15 of 98
IDENTIFICATION
HOLD
CASSETTE
STATUS
DISPENSE
UNLOAD
ESCROW
CASSETTE
STATUS
ESCROW
CASSETTE
UNLOAD
SET CASSETTE
TYPE
GET BILL TABLE
DOWNLOAD
3
7
H
3
8
H
3
B
H
3
C
H
3
D
H
3
E
H
3
F
H
4
0
H
4
1
H
5
0
H
Page 16 of 98
3.4
RESET
Controller Command
Code
Controller Data
RESET
30H
No data bytes
This command is used to tell the Bill-to-Bill unit that it must return to its default operating mode.
It must abort all communication, reject any bills in the validation process, return any bills in the
escrow position, and disable all other activity until otherwise instructed by the Controller.
GET STATUS
Controller Command
GET STATUS
Z
1
Z
3
Z
4
Z
6
Z
7
Z
9
Code
31H
Bill Type, 3 bytes. Indicates the bill enables for bill types 0 to 23.
Bill Security Levels, 3 bytes. Indicates the security level for bill types 0 to 23.
Bill Type Routing, 3 bytes. Indicates what bill types can be routed to the Bill-toBill units cassettes. Valid bill types are 0 to 23.
Bill Type
Byte Z1
Byte Z2
Byte Z3
bits
bits
bits
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
Bill types enabled if bits set
23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Bill Security Levels
Byte Z4
bits
Byte Z5
bits
Byte Z6
bits
Page 17 of 98
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
Bill types set to high security if bits set
23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Bill Type Routing
Byte Z7
Byte Z8
Byte Z9
bits
bits
bits
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
Bill types can be routed if bits set
23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Page 18 of 98
SET SECURITY
Controller Command
Code
Controller Data
SET SECURITY
32H
3 Bytes: Y1 Y3
Byte Y1
Byte Y2
Byte Y3
bits
bits
bits
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
Bill types set to high security if bits set
23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
A bit is set to indicate the type of bill(s), which are set to a high security level.
POLL
Controller Command
POLL
Code
1 or 2 bytes: Z1 or Z1- Z2
Indicates status of the Bill-to-Bill unit and its activity. The Bill-to-Bill unit may send 1or 2 of the
following data bytes:
Resp
onse
data
bytes
Z
1
1
0
H
1
1
H
1
2
H
1
2
H
Description
Power Up
Power Bill
Page 19 of 98
1
3
H
1
4
H
1
5
H
1
7
H
Initialize
1
8
H
Returning
Idling
1
9
H
1
A
H
1
B
H
1
C
H
1
C
H
1
C
H
1
C
H
1
C
H
1
C
H
Accepting
Stacking
Unit Disabled
Holding
Device Busy
Generic rejecting code. Always followed by rejection reason byte (see below).
60H
Rejecting due
to Insertion
Insertion error
61H
Rejecting due
to Magnetic
Magnetic error
62H
Rejecting due
to bill
Remaining in
the head
63H
Rejecting due
to Multiplying
64H
Rejecting due
to Conveying
Conveying error
Page 20 of 98
1
C
H
1
C
H
1
C
H
1
C
H
1
C
H
1
C
H
1
C
H
65H
Rejecting due
to
Identification1
Identification error
66H
Rejecting due
to Verification
Verification error
67H
Rejecting due
to Optic
Optic error
68H
Rejecting due
to Inhibit
69H
Rejecting due
to Capacity
Capacitance error
6AH
Rejecting due
to Operation
Operation error
6CH
Rejecting due
to Length
Length error
1
D
H
Dispensing
1
E
H
Unloading
1
F
H
Custom
returning
2
0
H
Recycling
unloading
2
1
H
Setting
cassette type
2
5
H
Dispensed
Dispensing is completed.
Page 21 of 98
2
6
H
2
7
H
2
8
H
2
9
H
3
0
H
4
1
H
4
2
H
4
3
H
4
4
H
4
5
H
Unloading is completed
Custom bills
returned
Recycling
cassette
unloaded
Set cassette
type
Invalid
command
Drop Cassette
Full
Drop Cassette
out of position
Bill Validator
Jammed
Cassette
Jammed
Cheated
4
6
H
4
7
H
4
7
H
4
7
H
4
Unloaded
Pause
Generic Failure codes. Always followed by failure description byte (see below).
50H
51H
52H
Stack Motor
Failure
Transport
Motor Speed
Failure
Transport
Page 22 of 98
7
H
4
7
H
4
7
H
4
7
H
4
7
H
4
7
H
4
7
H
4
7
H
4
7
H
4
7
H
4
7
H
4
7
H
4
7
H
4
7
H
Motor Failure
53H
Aligning Motor
Failure
54H
Initial Box
Status Failure
55H
Optic Canal
Failure
56H
Magnetic
Canal Failure
57H
Cassette 1
Motor Failure
58H
Cassette 2
Motor Failure
59H
Cassette 3
Motor Failure
5AH
Bill-to-Bill unit
Transport
Motor Failure
5BH
Switch Motor 1
Failure
5CH
Switch Motor 2
Failure
5DH
5EH
5FH
Dispenser
Motor 1
Failure
Dispenser
Motor 2
Failure
Capacitance
Canal Failure
70H
Bill Jammed in
Cassette 1
71H
Bill Jammed in
Cassette 2
72H
Bill Jammed in
Page 23 of 98
8
H
4
8
H
4
8
H
4
8
H
Cassette 3
73H
Bill Jammed in
Transport Path
74H
Bill Jammed in
Switch
75H
Bill Jammed in
Dispenser
Escrow
position
Bill stacked
Bill returned
Page 24 of 98
Code
Controller Data
34H
6 bytes: Y1 Y6
Byte Y1
Byte Y2
Byte Y3
bits
bits
bits
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
Bill types enabled if bits set
23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
NOTE: Sending 000000H disables the Bill-to-Bill unit.
Byte Y4
Byte Y5
Byte Y6
bits
bits
bits
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
Bill types with escrow enabled if bits set
23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
NOTE: On power-up or reset all bill acceptance and escrow are disabled.
STACK
Controller Command
Code
STACK
Controller Data
35H
No data bytes
This command forces a bill in escrow position to be sent to drop cassette or one of the
recycling cassettes.
NOTE: After a STACK command the Bill-to-Bill unit should respond to a POLL command with
the BILL STACKED message within 30 seconds. If this command is sent when the Bill-to-Bill
unit is not in ESCROW state the ILLEGAL COMMAND message is returned.
RETURN
Controller Command
Code
Controller Data
RETURN
36H
No data bytes
This command causes the Bill-to-Bill unit to return a bill in escrow position to the customer.
Page 25 of 98
NOTE: After a RETURN command the Bill-to-Bill unit should respond to a POLL command
with the BILL RETURNED message within 30 seconds. If this command is sent when the Billto-Bill unit is not in ESCROW state the ILLEGAL COMMAND message is returned.
Page 26 of 98
IDENTIFICATION
Controller Command
Code
IDENTIFICATION
37H
34 bytes:
B
y
t
e
s
Z
1
Z
1
5
Z
1
6
Z
2
7
Z
2
8
Z
3
4
Z1 Z34
Description
Bytes Z1-Z27 must be sent as ASCII Characters. Zero (30H) and Blank (20H) are acceptable.
Asset Number must be sent as binary code.
15 bytes
BB-US1701
12 bytes
00K038AS3419
7 bytes
Binary code
Asset Number
Serial Number
Part Number
Page 27 of 98
HOLD
Controller Command
HOLD
Code
Controller Data
38H
No data bytes
This command allows the Controller to hold Bill-to-Bill unit in a state Escrow during 10 s. After
this time the Controller should send the STACK or RETURN command. For continued holding
in an Escrow state it is necessary to resend this command. Otherwise Bill-to-Bill unit will
execute return of a bill.
Page 28 of 98
CASSETTE STATUS
Code
CASSETTE STATUS
3BH
32 bytes: Z1-Z32
Z1-Z32
Controller Command
Data
DISPENSE
Controller Command
Code
Controller Data
DISPENSE
3CH
27 bytes: Y1-Y27
Y1-Y3
dispensed.
Byte Y1
Byte Y2
Byte Y3
bits
bits
bits
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
Bill Types to be dispensed if bits set
23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Y4-Y27
These bytes contain number of bills to dispense for those types, which are specified in
bytes Y1-Y3. Zero bytes are not sent. For example, if in bytes Y1-Y3 two bits are set, Y4
and Y5 will be sent only.
NOTE: The total number of bills to dispense must not exceed 20 bills.
Page 29 of 98
UNLOAD
Controller Command
Code
Controller Data
UNLOAD
3DH
2 bytes: Y1-Y2
This command unloads the bills from the recycling cassettes to drop cassette.
Y1
Y2
Code
RECYCLING CASSETTE
3EH
1 byte: Z1
Z1
(Fyyy yyyy)
RECYCLING
UNLOAD
CASSETTE
Controller Command
Code
Controller Data
RECYCLING CASSETTE
3FH
1 byte: Y1
Y1
(Dyyy yyyy)
If Y1 = 1yyy yyyy; yyyy yyy = Number of bills to return to customer.
If Y1 = 0; Unload one bill to recycling cassette of appropriate bill type or drop
cassette
Command for routing bills from recycling cassette. This command allows returning
Page 30 of 98
Page 31 of 98
SET
RECYCLING
CASSETTE TYPE
Controller Command
Code
Controller Data
40H
2 bytes: Y1-Y2
Command for assigning recycling cassette bill type. If the cassette is not empty, the command
forces complete unloading of the cassette.
Y1
Y2
Code
41H
Example:
Den
Den
Den
Page 32 of 98
il
l
T
y
p
e
omi
nati
on
Cod
e
First
Byte
0x1
0x2
0x5
0x5
0x1
9
o
u
n
t
r
y
C
o
d
e
3
b
y
t
e
s
I
T
L
I
T
L
I
T
L
N
L
C
omi
nati
on
Cod
e
Sec
ond
Byte
omi
nati
on
0x3
1,00
0
Lir
a
0x3
2,00
0
Lir
a
0x3
5,00
0
Lir
a
0x8
2
.05
N
L
C
0x8
2
.25
0x1
9
N
L
C
0x8
1
2.5
0x1
9
N
L
C
0x0
25
0x1
9
N
L
C
0x2
250
0
0x1
0x0
0x5
U
S
A
U
S
0x0
Cr
o
w
n
Cr
o
w
n
Cr
o
w
n
Cr
o
w
n
Cr
o
w
n
D
oll
ar
D
oll
Page 33 of 98
A
1
0x1
U
0
S
A
1
0x2
U
1
S
A
Unsent bytes are assumed to be zero.
0x1
10
0x1
20
ar
D
oll
ar
D
oll
ar
DOWNLOAD
Controller Command
DOWNLOAD
Code
Controller Data
50H
1 byte: Y1
Y1 subcommand byte.
This command is not implemented in current Bill-to-Bill unit software releases and will always
return an INV response.
Page 34 of 98
4
4.1
4.2
Command Protocol
The commands IDENTIFICATION, GET COIN TABLE, and DOWNLOAD should be sent by the
Controller, when Coin Changer is in the following states: Power up, Initialize or Unit Disabled.
If the Coin Changer, which is not executable in its present state, receives a Controller
command Coin Changer issues ILLEGAL COMMAND message.
4.3
Controller Commands
Command
RESET
GET STATUS
TUBE
STATUS
POLL
ENABLE
COIN TYPES
DISPENSE
H
E
X
C
o
d
e
0
8
H
0
9
H
0
A
H
0
B
H
0
C
H
0
Description
Page 35 of 98
IDENTIFICATI
ON
GET COIN
TABLE
DOWNLOAD
4.4
D
H
0
F
H
1
0
H
5
0
H
RESET
Controller Command
Code
Controller Data
RESET
08H
No data bytes
This command is used to tell the Coin Changer that it must return to its default-operating mode.
It must abort all communication and disable all acceptance until otherwise instructed by the
Controller.
Page 36 of 98
GET STATUS
Controller Command
GET STATUS
Z
1
Z
3
Z
4
Z
6
Code
0CH
Coin Type, 3 bytes. Indicates the coin enables for coin types 0 to 23.
Coin Type Routing, 3 bytes. Indicates what coin types can be routed to the Coin
Changers tubes. Valid coin types are 0 to 23.
Coin Type
Byte Z1 bits
4 3 2 1
Byte Z2 bits
7 6 5
0 7 6 5 4 3 2 1 0 7
Coin types enabled if bits set
23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7
Byte Z3 bits
4 3 2 1
Byte Z6 bits
4 3 2 1
Byte Z5 bits
7 6 5
0 7 6 5 4 3 2 1 0 7 6
Coin types can be routed if bits set
23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6
NOTE: Coin type credits sent as FFH are assumed to be Free Vend tokens and their value is
assumed to be worth one vend.
TUBE STATUS
Controller Command
Code
TUBE STATUS
0AH
18 byte: Z1-Z27
Z1-Z3
Page 37 of 98
Byte Z2 bits
7 6 5 4 3 2 1 0 7 6
Tube for Coin types is full if bits set
23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6
7
Byte Z1 bits
4 3 2 1
Byte Z3
3 2 1
3
0
0
Indicates the greatest number of coins that the changer knows reliably can be paid
out. A bytes position in the 24-byte string indicates the number of coins in a tube for a
particular coin type. For example, the first byte sent indicates the number of coins in a
tube for coin type 0. Bytes not sent are assumed to be zero.
NOTE:
If a Coin Changer can detect a tube jam, defective tube sensor, or other
malfunction, it will indicate the tube is bad by sending a tube full status and a count of zero for
the malfunctioning coin type.
Page 38 of 98
POLL
Controller Command
POLL
Code
1 or 2 bytes: Z1 or Z1- Z2
Indicates state of the Coin Changer and its activity. The Coin Changer may send 1or 2 of the
following data bytes:
Respo
nse
data
bytes
Z
Z2
1
1
0
H
1
1
H
1
2
H
1
3
H
1
4
H
1
4
H
1
6
H
1
7
H
1
8
H
1
9
H
1
Description
Power Up
Initialize
Idling
Accepting
Unit Disable
Changer Busy
Changer Pay
Out Busy
Escrow
request
Double Arrival
No Credit
Coin Routing
Page 39 of 98
3
H
1
3
H
1
3
H
1
3
H
1
3
H
4
0
4
F
H
(0
1
0
0
x
x
x
x)
5
0
5
F
H
(0
1
0
1
x
x
x
x)
6
0
6
F
H
7
0
-
Error
Generic
Acceptor Error
Defective
Tube Sensor
Coin Jam
Tube Jam
Coin accepted
to cash box
Coin accepted
to tube
Not used
Coin was
rejected
Page 40 of 98
7
F
H
(0
1
1
1
x
x
x
x)
8
0
F
F
H
(1
y
y
y
x
x
x
x)
type accepted.
Coin
dispensed
manually
Page 41 of 98
Code
Controller Data
0CH
4 bytes: Y1 Y6
Y1 Y3
Byte Y1 bits
4 3 2 1
Byte Y2 bits
7 6 5
0 7 6 5 4 3 2 1 0 7
Coin types enabled if bits set
23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7
Byte Y3 bits
4 3 2 1
0
0
A bit is set to indicate a coin type is accepted. For example, bit 6 is set to indicate coin type 6,
bit 15 is set to indicate coin type 15, and so on. To disable the changer, disable all coin types
by sending a data block containing 000000H. All coins are automatically disabled upon reset.
Y6 Y6
Byte Y5 bits
6 5 4 3 2 1 0 7
Dispense enabled if bits set
23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7
7
Byte Y4 bits
4 3 2 1
Byte Y6 bits
4 3 2 1
A bit is set to indicate dispense enable. For example, bit 2 is set to enable dispensing of coin
type 2. This command enables/disables manual dispensing using optional inventory switches.
All manual dispensing must be disabled while in the sales mode.
DISPENSE
Controller Command
Code
Controller Data
DISPENSE
0DH
2 bytes: Y1-Y2
Y1 =
Y2 =
If two coin types have the same value, the highest coin type must be paid out first.
Page 42 of 98
IDENTIFICATION
Controller Command
Code
IDENTIFICATION
0FH
19 bytes:
B
y
t
e
s
Z
1
Z
5
Z
6
Z
1
2
Z
1
3
Z
1
6
Z
1
7
Z
1
9
Z1 Z19
Description
Bytes Z1-Z19 must be sent as ASCII Characters zero (30H) and blanks (20H) are acceptable.
10H
80 bytes: Z1-Z80
Controller Command
Page 43 of 98
DOWNLOAD
Controller Command
DOWNLOAD
Code
Controller Data
50H
NONE
This command is not implemented in current Coin Changer software releases and will always
return an INV response.
Page 44 of 98
1
4.5
4.6
Command Protocol
If a Controller command is received by the Bill Validator, which is not executable in its present
state, the Bill Validator issues ILLEGAL COMMAND message.
4.7
Controller Commands
Command
RESET
GET STATUS
HE
X
Co
de
30
H
31
H
Description
SET SECURITY
32
H
POLL
33
H
ENABLE BILL
TYPES
34
H
STACK
RETURN
IDENTIFICATIO
N
HOLD
SET BARCODE
PARAMETERS
EXTRACT
BARCODE
35
H
36
H
37
H
38
H
39
H
3A
H
Page 45 of 98
DATA
GET BILL
TABLE
GET CRC32
OF THE CODE
DOWNLOAD
(see details for
subcommands)
REQUEST
STATISTICS
41
H
51
H
50
H
60
H
Page 46 of 98
4.8
RESET
Controller Command
Code
Controller Data
RESET
30H
No data bytes
This command is used to tell the Bill Validator that it must return to its default operating mode. It
must abort all communication, reject any bills in the validation process, return any bills in the
escrow position, and disable all other activity until otherwise instructed by the Controller.
GET STATUS
Controller Command
GET STATUS
Z
1
Z
3
Z
4
Z
6
Code
31H
Bill Type, 3 bytes. Indicates the bill enables for bill types 0 to 23.
Bill Security Levels, 3 bytes. Indicates the security level for bill types 0 to 23.
Bill Type
Byte Z1
Byte Z2
Byte Z3
bits
bits
bits
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
Bill types enabled if bits set
23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Bill Security Levels
Byte Z4
Byte Z5
Byte Z6
bits
bits
bits
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
Bill types set to high security if bits set
23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Page 47 of 98
SET
SECURITY
Controller Command
Code
Controller Data
SET SECURITY
32H
3 Bytes: Y1 Y3
Byte Y1
Byte Y2
Byte Y3
bits
bits
bits
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
Bill types set to high security if bits set
23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
A bit is set to indicate the type of bill(s), which are set to a high security level.
Page 48 of 98
POLL
Controller Command
POLL
Code
1 or 2 bytes: Z1 or Z1- Z2
Indicates state of the Bill Validator and its activity. The Bill Validator may send 1or 2 of the
following data bytes:
Resp
onse
data
bytes
Z
1
1
0
H
Description
Power Up
1
1
H
Power Up with
Bill in Validator
1
2
H
Power Up with
Bill in Stacker
1
3
H
1
4
H
1
5
H
1
7
H
1
8
H
1
9
H
1
Initialize
Idling
Accepting
Stacking
Returning
Unit Disabled
Holding
Page 49 of 98
A
H
1
B
H
1
C
H
1
C
H
1
C
H
1
C
H
1
C
H
1
C
H
1
C
H
1
C
H
1
C
H
1
C
H
1
C
H
1
C
H
1
C
H
4
1
H
Device Busy
Rejecting due
to Insertion
Insertion error
61H
Rejecting due
to Magnetic
Dielectric error
62H
Rejecting due
to Remained
bill in head
63H
Rejecting due
to Multiplying
64H
Rejecting due
to Conveying
65H
Rejecting due
to
Identification1
Identification error
66H
Rejecting due
to Verification
Verification error
67H
Rejecting due
to Optic
68H
Rejecting due
to Inhibit
69H
Rejecting due
to Capacity
Capacitance error
6AH
Rejecting due
to Operation
Operation error
6CH
Rejecting due
to Length
Length error
Drop Cassette
Full
Page 50 of 98
4
2
H
4
3
H
4
4
H
4
5
H
8
0
H
Validator
Jammed
Drop Cassette
Jammed
Cheated
4
6
H
4
7
H
4
7
H
4
7
H
4
7
H
4
7
H
4
7
H
4
7
H
4
7
H
4
7
H
Drop Cassette
out of position
Pause
Stack Motor
Failure
51H
Transport
Motor Speed
Failure
52H
Transport
Motor Failure
53H
Aligning Motor
Failure
54H
Initial Cassette
Status Failure
55H
Optic Canal
Failure
56H
Magnetic
Canal Failure
5FH
Capacitance
Canal Failure
Escrow
position
Page 51 of 98
Bill stacked
Bill returned
Page 52 of 98
Code
Controller Data
34H
6 bytes: Y1 Y6
Byte Y1
Byte Y2
Byte Y3
bits
bits
bits
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
Bill types enabled if bits set
23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
NOTE: Sending 000000H disables the Bill Validator.
Byte Y4
Byte Y5
Byte Y6
bits
bits
bits
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
Bill types with escrow enabled if bits set
23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
NOTE: On power-up or reset all bill acceptance and escrow are disabled.
STACK
Controller Command
Code
Controller Data
STACK
35H
No data bytes
This command causes the Bill Validator to send the bill in escrow position to the drop cassette.
NOTE: After a STACK command the Bill Validator should respond to a POLL command with
the BILL STACKED message within 30 seconds. If this command is sent when the Bill Validator
is not in ESCROW state the ILLEGAL COMMAND message is returned.
RETURN
Controller Command
Code
Controller Data
RETURN
36H
No data bytes
This command causes the Bill Validator to return bill in escrow position to the customer.
NOTE:
After a RETURN command the Bill Validator should respond to a POLL command
Page 53 of 98
with the BILL RETURNED message within 30 seconds. If this command is sent when the Bill
Validator is not in ESCROW state the ILLEGAL COMMAND message is returned.
Page 54 of 98
IDENTIFICATION
Controller Command
Code
IDENTIFICATION
37H
34 bytes:
B
y
t
e
s
Z
1
Z
1
5
Z
1
6
Z
2
7
Z
2
8
Z
3
4
Z1 Z34
Description
Bytes Z1-Z27 must be sent as ASCII Characters. Zero (30H) and Blank (20H) are acceptable.
Asset Number must be sent as binary code.
15 bytes
FL-US1701
12 bytes
00K038AS3419
7 bytes
Binary code
Asset Number
Serial Number
Model
Page 55 of 98
This command is valid in the following states only: Power up, Initialize, one of the Failure states
(41H-47H) or Unit Disabled.
HOLD
Controller Command
Code
HOLD
Controller Data
38H
No data bytes
This command allows the controller to hold Bill Validator in Escrow during 10 s. After this time
the Controller should send the STACK or RETURN command. For continued holding in an
Escrow state it is necessary to resend this command. Otherwise the Bill Validator will execute
return of a bill.
Code
Controller Data
39H
2 bytes: Y1-Y2
Code
n bytes: Z1-Zn
Z1-Zn - n bytes ASCII of barcode data, n is equal min 6 bytes, max 18 bytes. Data is sent most
significant byte first. Parameter n is assigned by command SET BARCODE PARAMETERS.
This command may be sent at any time after the Bill Validator responds to the Poll command by event
80H, 81H or 82H and the bill type indicates barcode token presence (23). Barcode data of a successful
reading is preserved until next bill will be inserted. Otherwise an ILLEGAL COMMAND response will be
returned.
Page 56 of 98
Controller Command
Code
41H
Example:
B
il
l
T
y
p
e
Den
omi
nati
on
Cod
e
First
Byte
0x1
0x2
0x5
0x5
C
o
u
n
t
r
y
C
o
d
e
3
b
y
t
e
s
I
T
L
I
T
L
I
T
L
N
L
C
Den
omi
nati
on
Cod
e
Sec
ond
Byte
Den
omi
nati
on
0x3
1,00
0
Lir
a
0x3
2,00
0
Lir
a
0x3
5,00
0
Lir
a
0x8
2
.05
Cr
o
w
n
Page 57 of 98
0x1
9
N
L
C
0x8
2
.25
0x1
9
N
L
C
0x8
1
2.5
0x1
9
N
L
C
0x0
25
0x1
9
N
L
C
0x2
250
0
0x1
0x0
0x5
0x0
1
0
0x1
0x1
10
1
1
0x2
U
S
A
U
S
A
U
S
A
U
S
A
0x1
20
Cr
o
w
n
Cr
o
w
n
Cr
o
w
n
Cr
o
w
n
D
oll
ar
D
oll
ar
D
oll
ar
D
oll
ar
Code
4 bytes: Z1-Z4
Page 58 of 98
DOWNLOAD
Controller Command
Code
DOWNLOAD
Controller Data
50H
NONE
Code
DOWNLOAD
Sub-Command
50H
00H
1 byte: Z1
Controller Command
Data
DOWNLOAD
Code
Sub-Command
50H
01H
Page 59 of 98
Ex: if DATA block size is 512 bytes then size index is 9 (512=2^9).
Controller Command
Validator Data
Code
DOWNLOAD
1byte:Z1
Sub-Command
50H
02H
Controller Data
Bill
(Write to memory)
Command for writing data to memory.
Y1-Y2
Length of message;
Y3-Y5
AdrLow, AdrMid, AdrHigh are the address first byte of n Data bytes;
Controller Command
Data
DOWNLOAD
Code
Sub-Command
50H
03H
1 byte: Z1
(Exit)
Command for exiting to normal operation.
Z1
If Z1= E0H - CRC of freshly written code matched the one supplied with code itself;
If Z1= E2H - CRC of freshly written code did not match the one supplied with code itself;
REQUEST STATISTICS
Controller Command
Code
REQUEST STATISTICS
60H
4358bytes: Y1-Y4358
To describe the Bill Validator performance characteristics more meaningfully all cumulative data
are grouped into three aggregates of counters. The first aggregate is formed by 16 sets of 96
counters each. The second aggregate is formed by 20 sets of 46 counters each. The third
aggregate is formed by 20 sets of one counter each. Each aggregate keeps track of Bill
Page 60 of 98
Page 61 of 98
Page 62 of 98
Rate of acceptance
In response to a REQUEST STATISTICS command Bill Validator sends Y1-Y4358 bytes. Y1-Y2
is length of message (see 2.3). Y3-Y4358 corresponds to the following table.
98%
97%
1.
96%
2.
95%
3.
94%
Type of Data
Numbers of bytes
Identification data
32
(Y3-Y34)
16 sets of first
16x179=2864 (Y35-Y2898)
aggregate
20 sets of second
20x66=1320 (Y2899aggregate
Y4218)
93%
4.
20 sets of third
20x1=20
(Y4219aggregate
Y4238)
5.
Table of
100
(Y4239n 2n denominations
3n 4n 5n 6n 7n 8n 9n 10n
11n 12n 13n 14n 15n 16n
Y4338)
6.
Currency names
(Y4339Diagram 20
1
block
Y4358)
Number of Returned bills by capacitance criteria
n=10000
Number of
inserted bills
10
Description
9 B
y
8
t
7 e
6 s
Z
5 1
n=500
Country Code 3 bytes, ASCII characters
Number of
Z
n 2n 3n 4n 5n 6n 7n
13nn14n 15n 16n 17n 18n 19n 20n
inserted bills
3
Diagram 2
Z of jams
Total number
Denomination count 1 byte (number of denominations accepted), binary
4
Z
Data format version 1 byte, RESERVED FOR FACTORY USE
6 5
Last statistics reset Date and Time 8 bytes, format shown below:
5
4 Z
6
3
2 Z
1
1
2
Z
1
3
LSB of year (ex: for year 2002, its 210 decimal), 1 byte (Z6);
MSB of year (ex. for year 2002, its 7 decimal), 1 byte (Z7);
n=50
Number of
inserted bills
Page 63 of 98
Z
1
4
Z
2
5
Z
2
6
Z
3
2
Reserved
Z
1
Z
2
Z
3
Z
4
Z
5
Z
6
Z
4
1
Z
4
2
Z
4
3
-
Page 64 of 98
Z
4
4
Z
4
5
Z
4
6
Z
8
1
Z
8
2
Z
8
3
Z
8
4
Z
8
5
Z
8
6
Z
1
2
1
Z
1
2
2
Z
1
Page 65 of 98
2
3
Z
1
2
4
Z
1
2
5
_
Z
1
2
6
Z
1
6
1
Z
1
6
2
Z
1
6
3
Z
1
6
4
Z
1
6
5
Z
1
6
6
Page 66 of 98
Z
1
6
7
Z
1
6
8
Z
1
6
9
Z
1
7
0
Z
1
7
1
Z
1
7
2
Z
1
7
3
Z
1
7
4
Z
1
7
5
Z
1
7
6
Z
1
7
7
Page 67 of 98
Z
1
7
8
Z
1
7
9
* - Number of denominations accepted includes both old and new denominations, if theyre
present. Order of denominations is listed in table of denominations
Z
1
Z
2
Z
3
Z
4
Z
3
9
Z
4
0
Z
4
1
Z
4
2
Z
6
0
Z
6
1
Z
Page 68 of 98
6
2
Z
6
3
Z
6
4
Z
6
5
Z
6
6
6
th
b
it
0
1
denomination
type
Old
denomination
New
denomination
Other bits of first byte hex representation of the most significant digit of the
denomination.
Bytes 2-4 of word country code in ASCII characters.
Byte 5 of word used to determine decimal placement or proceeding zeros. If bit D7 is 0,
the bits D0-D6 indicate the number of proceeding zeros. If bit D7 is 1, the bits D0-D6
indicate the decimal point position starting from the right and moving left.
Example:
Page 69 of 98
Denomi
nation
Code
First
Byte
0x1
0x5
0x1
0x41
0x2
0x42
0x5
0x45
0x1
0x41
0x1
C
o
u
n
t
r
y
C
o
d
e
3
b
y
t
e
s
U
S
A
U
S
A
U
S
A
U
S
A
U
S
A
U
S
A
U
S
A
U
S
A
U
S
A
U
S
A
M
X
Den
omi
nati
on
Cod
e
Sec
ond
Byte
Denomi
nation
0x0
1 Dollar
0x0
5 Dollars
0x1
10 Old
Dollars
0x1
10 New
Dollars
0x1
20 Old
Dollars
0x1
20 New
Dollars
0x1
50 Old
Dollars
0x1
50 New
Dollars
0x2
100 Old
Dollars
0x2
100 New
Dollars
0x1
10
Pesos
Page 70 of 98
0x2
0x42
0x5
0x45
0x1
0x2
0x5
N
M
X
N
M
X
N
M
X
N
M
X
N
M
X
N
M
X
N
M
X
N
0x1
20 Old
Pesos
0x1
20 New
Pesos
0x1
50 Old
Pesos
0x1
50 New
Pesos
0x2
100
Pesos
0x2
200
Pesos
0x2
500
Pesos
Dollar/Peso.
Command REQUEST STATISTICS is valid in the following states: Power up, Initialize, one of
the Failure states (41H-47H) or Unit Disabled.
If statistic data is not correct Bill Validator sends an error response with data field set to 31H
(INVALID STATISTIC DATA).
Page 71 of 98
5.1
This section defines the communications bytes sent and received between Card Reader and
the Controller. The Card Reader s address is 04H.
Unless stated otherwise, all information is assumed to be in hexadecimal format. The numbers
will be sent most significant byte first.
5.2
Card Readers may be viewed as state machines. These states are as follows:
1)
2)
3)
4)
5)
6)
7)
Inactive
Disabled
Idling
Ready for Transaction
Vending
Busy
Vend OK/Vend Failed
5.2.1
Inactive
This is the state of the card reader at power up or after a reset. All cards except for stored
value cards (for balance inquiry after internal initialization completes) will not be accepted. The
card reader cannot leave this state until all SETUP information is received from the Controller.
5.2.2
Disabled
The card reader automatically enters this state from the Inactive state when it has received all
SETUP information from the Controller and completes its internal initialization. It will also enter
the Disabled state from the Idling state when it receives the READER/DISABLE command.
While in the Disabled state, stored value cards will be accepted (for balance inquiries), but no
vending requests will be granted.
5.2.3
Idling
In this state, cards may be used for transactions. The card reader will remain in this state until a
valid card is read (when it will enter the Ready for Transaction state), a READER/DISABLE
command is received (when it will return to the Disabled state) or a RESET is received (when it
will enter the Inactive state).
5.2.4
Page 72 of 98
generate an error);
Through card removal (for stored value cards only).
Other VEND subcommands will cause the card reader to leave the Ready for Transaction state
and enter the Vending state when products are purchased.
5.2.5
Vending
This state is entered from the Ready for Transaction state upon reception of a VEND/VEND
REQUEST command from the Controller.
5.2.6 Busy
This state is entered when Card Reader starts performing internal operations and exited upon
completion of internal operations. Exit is done to the state present before entering Busy, except
for error conditions appeared while in Busy.
5.3
Command Protocol
The card reader will provide an informational response immediately with the requested data.
5.4
Controller Commands
COMMAN
D
RESET
SETUP
POLL
VEND
H
E
X
C
O
D
E
3
0
H
1
1
H
3
3
H
1
3
H
DESCRIPTION
Page 73 of 98
ENABLE/
DISABLE
IDENTIFI
CATION
DOWNLO
AD
5.5
1
4
H
1
5
H
5
0
H
RESET
Controller Command
Code
Controller Data
RESET
30H
No data bytes
This command is the vehicle that the Controller must use to tell the Card Reader that it must
return to the Inactive state. With the exception of the ACK response, it must abort all
communication, terminate any ongoing transaction (with a refund, if appropriate), eject the card
(if applicable), and go to the Inactive state until otherwise instructed by the Controller.
The Controller must follow the RESET command with the SETUP and ENABLE/DISABLE
commands to enable vending transactions. RESET command is not valid for Vending, Busy
and Vend OK/Vend Failed states. If received with any of these states active, a COMMAND
INVALID response is issued.
Page 74 of 98
SETUP
Controller Command
Response Data
SETUP
11H
Y1 =
Z1 Z2
Z2 =
Miscellaneous options
b0 Fund Restoring capable
0=
the card reader is NOT capable of restoring funds to
the users card or account. Do not request refunds.
1=
the card reader is capable of restoring funds to the
users card or account. Refunds may be requested.
b1 Continuous Payment capable
0=
the card reader is NOT capable of collecting funds
from multiple cards for single payment. Money
withdraw request will be denied if funds are
insufficient in authorized card.
1=
the card reader is capable of collecting funds from
multiple cards for single payment. Money withdraw
request will be approved even if funds are insufficient
in authorized card
Other bits are ignored (under card reader capabilities level 01) and may be
set to any value.
POLL
Controller Command
Code
Response Data
Controller Data
Page 75 of 98
POLL
33H
No data
Z1 up to Z2
The POLL command is used by the Controller to obtain information from the Card Reader. This
information may include user actions, hardware malfunctions, software malfunctions or
information explicitly requested by the controller.
Controller may receive the following POLL responses from the Card Reader:
Respon
se data
bytes
Z1
01
H
05
H
Description
Z2
Inactive
Disabled
06
H
Idling
07
H
08
H
Ready for
Transaction
Vending
12
H
13
H
09
H
10
H
Vend OK
Vend Failed
11
H
Z2
Malfunction/
Error
Delayed
Busy
Z1 = 01H
INACTIVE:
Indicates the Card Reader has been reset, due to either an external RESET or an
internally detected condition.
Z1 = 05H
DISABLED:
Indicates the Card Reader has received all SETUP information from the Controller and
Page 76 of 98
completed its internal initialization. Card Reader will also enter the Disabled state from
the Idling state when it receives the ENABLE/DISABLE command.
Z1 = 06H
IDLING:
In this state cards may be used for transactions. Card Reader will enter the Idling state
from the Disabled state when it receives the ENABLE/DISABLE command.
Z1 = 07H
Z1 = 08H
VENDING:
This state is entered from the Idling state upon reception of a VEND REQUEST
command from the Controller.
Z1 = 12/13H
Z1 = 09H
MALFUNCTION/ERROR:
The Card Reader is reporting a malfunction or error. This response includes the
following information:
Z2 =
xxxx =
0010: Card Error (e.g. stored value card removed while transaction is in progress,
or a no-value card read incomplete) 1 or 2
0100: Communications Error (checksum error/data frame inconsistent) 2
1000: Reader Failure3
Other values not defined under card reader capabilities level 01.
1Transient error Reported once.
Page 77 of 98
VEND/BEGIN SESSION
Controller Command
Code/Subcommand Controller Data
Response Data
VEND/BEGIN SESSION
13H
Y1
none
Y1 = 10H
VEND BEGIN SESSION - subcommand.
Indicates that VMC is requesting card authentication from the Card Reader. This
command may only be issued in Idling state, otherwise a COMMAND INVALID will be
returned. If a stored value card is already authenticated, the Ready for Transactions
state will be entered immediately. For the no stored value card an invitation is issued
for the user to insert/swipe a card, and after completed, Ready for Transactions state is
entered. Its at Controllers discretion to terminate this condition if a time-out occurs
without a card being authenticated, as this state is never left on Card Readers initiative
for no stored value cards and left on Card Readers initiative when card is removed for
stored-value cards.
VEND/GET FUNDS
Controller Command
Code/Subcommand Controller Data
Response Data
VEND/GET FUNDS
13H Y1
Z1-Zn
Y1 = 00H
VEND GET FUNDS - subcommand.
Indicates that VMC is requesting a balance from the card. This command may only be
issued in Ready for Transactions state, otherwise a COMMAND INVALID will be
returned.
Z1 =
Z2-Z4 =
Z5-Z8 =
Wallet balance in composite format, i.e. binary unsigned integer value; Z9 least
significant bits compose the fractional part to obtain the exact value Z5Z8 should
be treated as a 32-bit binary value, then divided by 10^Z9; the division result is the
integer part of funds value, the remainder stays for the fractional part.
Number of decimal places.
Z9
VEND/VEND REQUEST
Page 78 of 98
Controller Command
Code/Subcommand Controller Data
Response Data
VEND/
VEND REQUEST
13H Y1 Y10
none
Y1 = 01H
VEND REQUEST - subcommand.
Indicates the customer has made a selection. The Controller is requesting vend
approval from the Card Reader before dispensing the product. The Card Reader enters
state Vending after reception of this command and keeps it until transaction is finalized
(state Vend OK is entered) or error occurs (state Vend Fail is entered). The state is
preserved until successful read-out.
Y1 = 02H
VEND REQUEST REFUND - subcommand.
Indicates the controller is requesting a refund for the given wallet with amount given.
The Card Reader enters state Vending after reception of this command and keeps it
until transaction is finalized (state Vend OK is entered) or error occurs (state Vend Fail
is entered). The state is preserved until successful read-out.
VEND REQUEST and VEND REQUEST REFUND commands are valid only in Ready
For Transaction state, otherwise COMMAND INVALID is issued.
Y2 =
Y3 Y6 =
Y7 Y10 =
VEND/VEND CANCEL
Controller Command
Code/Subcommand Controller Data
Response Data
VEND/
13H
Y1
Z1
VEND CANCEL
Y1 = 03H
VEND CANCEL - subcommand.
This command can be issued by the Controller to cancel a VEND REQUEST command
before the Card Reader has sent a VEND APPROVED/DENIED. The Card Reader will
respond to VEND CANCEL with a VEND DENIED or VEND CANCEL FAILED and
return to the Idling state. State preserved until successful read-out. This command is
valid only in Vending state, otherwise COMMAND INVALID response is issued.
Z1 = 06H
VEND DENIED:
Page 79 of 98
Approval denied for the customers selection. Do not dispense any products/credit
services.
VEND CANCEL FAILED:
Funds are already withdrawn and may not be returned. Products/services should be
dispensed.
Z1 = 07H
VEND/SESSION COMPLETE
Controller Command Code/Subcommand
Controller Data
VEND/
SESSION COMPLETE
13H/04H
Y1 = 04H
SESSION COMPLETE subcommand.
Y1
This tells the Card Reader that the session is complete and to return to Idling state.
ENABLE/DISABLE
Controller Command Code/Subcommand
READER/DISABLE 14H
Controller Data
Y1
Any transaction in progress will not be affected and must continue to its normal completion.
Y1 = 00H
DISABLE - subcommand.
Y1 = 01H
This informs the Card Reader that it has been disabled, i.e. it must no longer accept a
customers card for the purpose of vending. Vending activities may be re-enabled using
the READER ENABLE command. The Card Reader must retain all SETUP information.
ENABLE - subcommand.
This informs the Card Reader that it has been enabled, i.e. it must be ready for
accepting cards.
Reader may be enabled from Disabled state only and disabled from Idling state only,
otherwise a COMMAND INVALID response will be issued.
IDENTIFICATION
Controller Command
Code
IDENTIFICATION
15H
Z1 Z34
Description
Page 80 of 98
y
t
e
s
Z
1
Z
1
5
Z
1
6
Z
2
7
Z
2
8
Z
3
4
Bytes Z1-Z27 must be sent as ASCII Characters. Zero (30H) and Blank (20H) are acceptable.
Asset Number must be sent as binary code.
15 bytes
FL-US1701
12 bytes
00K038AS3419
7 bytes
Binary code
Asset Number
Serial Number
Model
DOWNLOAD
Controller Command
DOWNLOAD
Code
Controller Data
50H
No data bytes
Page 81 of 98
Command for transition Card Reader to download mode. Currently not defined and returns
COMMAND INVALID response.
5.6
Non-Response Time
The maximum non-response time for a Card Reader is 5 seconds. This is the maximum time
for which a Card Reader will not respond to a command with ACK, NAK or a data message.
Page 82 of 98
APPENDIX
Page 83 of 98
6.1
Control
ler
POLL
ACK
RESET
POLL
ACK
GET
STATU
S
ACK
SET
SECUR
ITY
<--------->
ACK
POLL
ACK
INITIALIZE
Bill-to-Bill unit is
initializing
Collect operational
parameters
BILL-TO-BILL UNIT
CONFIG.
----->
ACK
----->
<--------->
Power is switched on
Reset peripheral
----->
<----IDENTI
FICATI
ON
POWER UP
Comments
BILL-TO-BILL UNIT
ID
----->
Page 84 of 98
ACK
POLL
ACK
6.2
<--------->
----->
<--------->
INITIALIZE
Bill-to-Bill unit is
initializing
UNIT DISABLE
Enable sequence
Enable sequence
Bill-toBill unit
Controller
ENABLE
BILL
TYPES
POLL
ACK
---->
<------->
<------->
Comments
Enable appropriate bill
types
ACK
IDLING
Page 85 of 98
6.3
Disable sequence
Disable sequence
Bill-toBill unit
Controller
ENABLE
BILL
TYPES
6.4
---->
<----
Comments
Disable all bill types
ACK
Controller
POLL
ACK
POLL
ACK
POLL
ACK
STACK
---->
<------->
---->
<------->
.
.
.
---->
<------->
Comments
ACCEPTI
NG
Bill is accepting
ESCROW
POSITIO
N
ESCROW
POSITIO
N
---->
Page 86 of 98
<---POLL
ACK
POLL
ACK
CASSETTE
STATUS
---->
<------->
.
.
.
---->
<------->
---->
<----
ACK
---->
ENABLE
BILL
TYPES
---->
<----
POLL
ACK
---->
<------->
ACK
STACKIN
G
Bill is stacking
BILL
STACKED
Collect operational
parameters
BILL-TOBILL UNIT
CASSETT
E
STATUS
IDLING
Page 87 of 98
Page 88 of 98
6.5
Controller
POLL
POLL
POLL
ACK
RETURN
POLL
ACK
---->
<------->
<---.
.
.
---->
<------->
---->
<------->
<------->
.
.
.
Comments
ACCEPTI
NG
Bill is accepting
ESCROW
POSITIO
N
ESCROW
POSITIO
N
ACK
RETURNI
NG
Bill is returning
Page 89 of 98
POLL
ACK
ENABLE
BILL
TYPES
POLL
ACK
---->
<------->
---->
<------->
<------->
BILL
RETURN
ED
IDLING
Page 90 of 98
6.6
Controller
DISPENSE
POLL
ACK
POLL
ACK
CASSETTE
STATUS
---->
<----
--->
<----->
.
.
.
--->
<----->
---->
<-
Comments
Dispensed bills to
customer
ACK
BILL
DISPENSI
NG
Bill transporting to
dispenser
BILL
DISPENS
ED
Dispense is completed.
Bills pay to customer.
Collect operational
parameters
BILL-TOBILL UNIT
Page 91 of 98
---ACK
--->
POLL
--->
<----->
ACK
CASSETT
E
STATUS
IDLING
Page 92 of 98
6.7
Controller
UNLOAD
POLL
ACK
POLL
ACK
CASSETTE
STATUS
---->
<----
--->
<----->
.
.
.
--->
<----->
---->
<---
Comments
ACK
BILL
UNLOADI
NG
BILL
UNLOAD
ED
Collect operational
parameters
BILL-TOBILL UNIT
Page 93 of 98
-ACK
--->
POLL
--->
<----->
ACK
CASSETT
E
STATUS
IDLING
Page 94 of 98
6.8
Controller
CASSETTE
STATUS
---->
<----
ACK
--->
SET
CASSETTE
TYPE
---->
<----
POLL
ACK
POLL
--->
<----->
.
.
.
--->
<---
Comments
Collect operational
parameters
BILL-TOBILL UNIT
CASSETT
E
STATUS
SETTING
CASSETT
E TYPE
SET
CASSETT
E TYPE
Page 95 of 98
--->
ACK
CASSETTE
STATUS
---->
<----
ACK
--->
POLL
--->
<----->
ACK
6.9
Collect operational
parameters
BILL-TOBILL UNIT
CASSETT
E
STATUS
Necessary recycling
cassette is empty. It is
assigned to new bill type.
IDLING
Control
ler
POLL
POWER UP WITH
BILL IN STACKER
Comments
Page 96 of 98
----->
RESET
----->
<-----
POLL
ACK
GET
STATU
S
ACK
SET
SECUR
ITY
----->
<--------->
ACK
POLL
ACK
POLL
ACK
ACK
INITIALIZE
----->
<--------->
BILL VALIDATOR
CONFIG.
ACK
----->
<--------->
----->
<--------->
----->
<--------->
Collect operational
parameters
----->
<-----
IDENTI
FICATI
ON
Reset peripheral
BILL VALIDATOR
ID
INITIALIZE
Bill Validator is
initializing
BILL STACKED
Page 97 of 98
POLL
ACK
----->
<--------->
UNIT DISABLE
Page 98 of 98