Milan / Paylink Interface
Technical Details
UPOS Support
Support & Downloads
Full Download Page
ccReels Controller
Naples Controller
Pescara Converter
Torino EDC


> Support & Downloads: Milan / Paylink Interface

On-line support for this unit is provided in these pages. For this product you can access the latest Downloads, Frequently Asked Questions, or alternatively you can try our Support Forum.

If you have a problem, please take the time out to look at our FAQ section here.

Advice on the purchase of suitable money handling peripherals and support for problems of a purely hardware nature, is provided by our manufacturing / marketing partner, Crane PI (Money Controls), who can be contacted here.

If you have a problem of detailed software nature then the support forum might contain someone else’s similar experience. If you’re problem is a new one, then the best way to tell us about it is to create a new thread in that forum. In that way, you will benefit from the advice of other users. There is no quicker way to contact our support staff, but if your problem is of a confidential nature, you can contact them at

If the Milan / Paylink Interface fails to work with the software you have written, please take the time out to run the demo programs provided as part of the SDK. These are used by Aardvark staff to test the product during development.

If the failure is evident with these demo programs, then we will find it much easier to troubleshoot your problem. If the failure is not evident, then that will indicate that you are using the interface in a different way, and we will probably want to ask some quite detailed questions.

Product Downloads
Normally the entire interaction with the external hardware is handled by firmware running on the Milan / Paylink Interface itself. The PC software only requires updating if you are intending to use a new facility not supported by the version you have installed, or you are using USB connected peripherals. (This will be obvious because your application will refuse either to link or to load!)

There are some PC utilities to aid in fault finding. Copies of these form a part of the SDK on the Paylink Installer (see below) and some are available below.

These links will enable you to obtain the latest fully supported versions. Although some of the software downloads consist of a single executable, they are all saved as zip files, as the default (run) operation of the executable is unlikely to be useful!

The main release of the software for Windows is now a standard Microsoft Installion file. (.MSI) If you download that and run it it will extract the SDK into your specified folders and install the USB drivers and inrerface DLLs into the correct locations. For the other files you can just extract the executables from the zip into a handy folder and run them. The firmware upgrades are part of a PC program that will update the firmware on an installed card. This program has a number of features, which are described in full in the system document.

The documents are all in Adobe Acrobat format. You will need the Acrobat Reader software in order to open the documents. You can download the software here.


Standard Paylink/Milan Firmware (1.12.8)
Standard Paylink Two Firmware (1.12.8)
Complete PC SDK (Software Development Kit)
Firmware (1.12.8) to support Innovative Peripherals
Complete Linux Installation (Source Files)
Linux USB Peripheral Support. (To be used with above.)
Linux Firmware Update Package. (To be used with above.)
Coin / note table update (for MCL equipment) SDK
Paylink System Description Manual
Full Programmers Reference
Linux Programmers Guide
Guide to the Dot Net Facilities
Guide to the Java Facilities
Extract of MCL Technical Manual
Milan 1.12.81 Release Note
Milan 1.12.8 Release Note
Milan 1.12.72 Release Note
Milan 1.12.6 Release Note
Milan 1.12.4 Release Note
Milan 1.11.8 Release Note
Coin / note table update (for MCL equipment) Reference

Other Downloads
In addition to the above downloads, you can also visit our complete download page here to obtain testing (Beta) versions of the utilities and firmware, and older versions versions of the firmware, some of which that support other RS232 protocols (Ardac II, GPT V2.2).

Frequently Asked Questions (FAQ)

The following list of common problems and their answers has been mainly extracted from our support forum, so please visit that if you can't find your problem here.

Frequently Asked Questions.
Q. Will the Milan / Paylink Interface run under Windows 7 / 8 / 10?
A. Yes, although they have a minor incombatility with XP and so version (or earlier) of the AESWDriver program will not see the Paylink device.

Version and the current Paylink.exe driver will work with no problems, but can give better error recovery results if run as Administrator.

Q. Which other operating systems does the Milan / Paylink Interface run under?
A. We also provide full support for Linux kernel 2.6, which, as it is in source, can be compiled for ARM processors with no problem. It will also run on all version of Windows from XP onwards.
Q. What PC is required to run the Milan / Paylink Interface?
A. The Milan / Paylink Interface requires very few PC resources and will run on any PC provided it has at least one USB port.
Q. What peripheral equipment does the Milan / Paylink Interface support.?
A. Please see the Technical Description page.
Q. During installation of the hardware Windows has asked for a CD, but I didn’t receive a CD with the interface. How do I continue?
A. The required driver package is avaiable from Microsoft on Windows Update. Alternatively, download the SDK from above and install that.
Q. I’ve connected up a cctalk coin acceptor and hopper, why doesn’t the interface report any peripherals? or
What does the diagnostic message "cctalk: Data line frozen" mean?
A. Although the Milan / Paylink cctalk connector includes 12v and 24v, only the 12v is fed through from the 2 pin JST connecter, the 24v is a "pass through" from an external. power supply. If you haven’t provided a 24v supply, then the hopper will “freeze” the cctalk bus (short it to ground) a fault which Milan can recognise. If you remove the hopper, the acceptor should be found and the diagnostic stop.
Q. I want to use the coin routing facilities of my coin acceptor to feed the hopper until it is full, and divert coins to the cash box afterwards.
A. There are comprehensive facilities to enable you to easily achieve this. Although easy to implement, they are slightly difficult to understand; so please refer to the section entitled “Coin Routing” in the System Description Manual, which gives full details. If you are still confused, then the support forum has topics on this subject.
Q. My system stopped working and the driver / diagnostics reported error 4, and then error 2.
A. The electrical environment that the Milan operates in is noisy and can cause noise on the USB line. We recomend using USB leads with ferrite noise reduction cores. Later model Paylink units are much less susceptible to this problem.
Q. Your money fields report in values in lowest denomination. What happens when I change to an acceptor that accepts smaller coins?
A. The lowest denomination we refer to, is that of the given currency (i.e. one penny, one cent) and is fixed for a given currency.
Q. I don’t want the equipment to accept money from my customer until I am ready. How do I arrange for this to happen?
A. When the Milan / Paylink Interface powers up, it inhibits all the peripherals, in which state they will automatically reject any money. At this point you can call OpenInterface, Current Value, ReadAcceptorDetails and ReadDispenserDetails to find out where you’re starting from. You can pre-set individual inhibits (see next question) and then you call EnableInterface. EnableInterface is how you announce to the Milan / Paylink Interface that you're ready to go, until you call EnableInterface everything is disabled / inhibited, regardless of the AcceptorBlock setting. After you call it, they will correspond to the settings you have made. (They are all enabled by default.).
Q. How do I control which acceptors, coins and hoppers will be working at any given time?
A. You use ReadAcceptorDetails / WriteAcceptorDetails and ReadDispensorDetails / WriteDispenserDetails. These use interface blocks that are described in the Application Interface Manual. Specifically:
  • To inhibit / enable an acceptor set / clear the ACCEPTOR_INHIBIT bit in the AcceptorBlock.Status field and then write the details back
  • To inhibit / enable a specific coin, set / clear the Acceptor.Coin[CoinNumber].Inhibit field (to 1 / 0), and then write the details back.
  • To inhibit / enable a dispenser set / clear the DispenserBlock.Inhibit field (to 1 / 0) and then write the details back.
In all cases you find the correct block by performing a check along the lines of:
(xxxxBlock.Unit & DP_GENERIC_MASK) ==
Q. I have just downloaded firmware to a number of Paylink units. It worked on most of them but one unit just stopped with "Unit Resetting" on the screen and I had to use Task Manager to kill the downloader.
I tried running the download program again, and it downloaded all the code again, but still stopped at "Unit Resetting".
A. All versions of Paylink prior to have a fault in the flash reprogramming code so that about 1% of re-programming operations are corrupted.
Paylink versions and later have a reprogramming kernel which detects this, the application is not started and the unit goes directly back into re-programming mode.
If a corruption does occur when a unit is reprogrammed with or later, the new Kernel detects it and the Paylink reprogramming mechanism will automatically run again. This time though the new flash reprogramming algorithm is used and will be successful.
Milan / Paylink Interface
Milan / Paylink Interface
Product Code: MIMHEI
Download Brochure
© 2012 Aardvark Embedded Solutions Limited      
Registered in England and Wales Number 4335111