Milan / Paylink System Manual
Issue 1.5 29 January 2020
CONFIDENTIAL
Not to be disclosed without prior written permission from Aardvark Embedded Solutions Ltd
Page 19 of 71
MDB changer / BCR / CR10x / CLS recycler / SmartHopper support.
If a coin changer / recycler is used, it will appear as an acceptor in very much the same way as any
other acceptor. The coins that are routed for recycling can be distinguished as having a non zero
Routed Path, although, obviously, any changes made to the routing by the application will be ignored.
For Payout, the application will (either explicitly or implicitly) specify exactly which coins are to be
used for the payout. Where higher value coins are not available, the standard Paylink algorithm will
work down the values of the coins as usual.
MDB Payout
For MDB payout, the situation is slightly complicated. The MDB changer protocol supports two
different payout mechanisms, a basic one that is always present and an extended one, which is
supported on most level 3 changers. The basic system provides control over the individual payout
tubes, but has no feedback as to whether the payout works. The extended one provides feedback as
to the success of the payout, but does not allow any control over which tubes the payout is from.
The solution adopted is to always provide one dispenser for each tube, which is run using the basic
mechanism and, if the extended mechanism is present, to provide an additional dispenser which is
run using the extended mechanism. Where an extended mechanism dispenser is available, the
individual tubes are pre-set to inhibited.
To perform a “normal” payout, you just issue a
PayOut()
request and call
PayStatus()
and
CurrentPaid()
to monitor the results. If you have a level 2 changer,
CurrentPaid()
will update almost
instantaneously rather than at the end and will always show that all coins have been paid. If you have
a level 3 changer,
CurrentPaid()
will update during the process, and you may get a PAY_EMPTY
status from
PayStatus()
, with
CurrentPaid()
then reflecting the actual payout achieved.
The current levels of MDB tubes,
as reported by the coin-changer,
are returned in the field
CoinCount
. In addition, the field
CoinCountStatus
will contain the value
DISPENSER_ACCURATE
for
a normal tube, and
DISPENSER_ACCURATE_FULL
if the changer is reporting the tube as full. Note that
the levels reported by the changer do not necessarily update in a “sensible” fashion after a payout.
Should you wish to perform an operation on a specific tube (e.g. emptying it), you should inhibit the
extended mechanism dispenser and enable the specific tube you wish to control.
As the manufacturer is already shown in the acceptor detail block for the changer, the extended
mechanism dispenser has a
Unit
field with the constant value of
DP_MDB_TYPE_3_PAYOUT
while the
individual tubes have
Unit
fields with the constant value of
DP_MDB_LEVEL_2_TUBE
.