Using Azkoyen Combo T Escrow device with PayLink

Support for the Milan Intelligent interface, sold by Money Controls as the Paylink USB unit and for the earlier PCI card version.

Moderators: aardvark, davebush, Admin

Post Reply
Nathan
Posts: 41
Joined: Tue Oct 30, 2018 4:12 pm

Using Azkoyen Combo T Escrow device with PayLink

Post by Nathan »

Hi,

I’m trying to connect Azkoyen Combo T device to the PayLink controller.

Almost every Combo T component is working perfectly except for the escrow mechanism. I’ve searched the documentation but was not able to find anything about the ccTalk connected escrow device.

Could anyone please advise how to overcome this issue.
davebush
Posts: 492
Joined: Fri Oct 22, 2004 12:20 pm

Re: Using Azkoyen Combo T Escrow device with PayLink

Post by davebush »

Hi,

Paylink does not support coin escrow mechanisms. It does provide the facility to to send arbitrary cctalk sequences, so this would probably allow you to control the escrow.

If you can post a copy of the cctalk spec for the escrow device, I'll check it out and give you suggested sequences to control it.

Regards

Dave
Aardvark software developer. Please put all communication on the problem through the board for the benefit of others.
Nathan
Posts: 41
Joined: Tue Oct 30, 2018 4:12 pm

Re: Using Azkoyen Combo T Escrow device with PayLink

Post by Nathan »

Thank you very much for your response.

From the documentation of the Escrow control board, I think what I need is the command 70, the cctalk address of the control board is 80 (decimal)

The documentation reads:
Header 72: Request inputs state
Transmitted data: <none>
Received data: [Event counter ][State 0][ State 1][ State 2][ State 3] ][ State 4]

This command is used to know the status of up to 8 inputs. Some of these inputs are currently defined for some purposes on the Dongle board:

INPUT FUNCTION
1 General Input, Faston connector available
2 Limit switch for Recovery Motor.
3 Limit switch for Opening Gate DEVOLUTION in V Escrow. (Only for V Escrow Model with switches)
4 Limit switch for Opening Gate PAYMENT in V Escrow (Only for V Escrow Model with switches
5 General Input, not connected
6 General Input, not connected
7 General Input, not connected
8 General Input, not connected

The [Event counter] data gives information regarding how many times has change the
status of any Input since last time this command was executed.

The data [State 0][ State 1][ State 2][ State 3] ][ State 4] give information regarding the
present and past status of the Inputs described in previous table. In fact, there is
information regarding the present status and the three previous status of inputs.
The information of this buffer will be clear after a RESET cctalk command (01)
INPUT ON – 1
INPUT OFF – 0

Header 71: Control Recovery Motor
Transmitted data: <none>
Received data: ACK
This command is used to activate the Recovery motor. The motor will stop if its related
Input is changed to 0 (Motor stop = ON)

Header 70: Control V Escrow
Transmitted data: [Payment/Devolution]
Received data: ACK
This command is used to activate the V Escrow. Depending on the data received, the
Payment Gate or the Devolution Gate will be opened.
[Payment/Devolution]
1 – Payment (cashbox)
2 – Devolution

davebush
Posts: 492
Joined: Fri Oct 22, 2004 12:20 pm

Re: Using Azkoyen Combo T Escrow device with PayLink

Post by davebush »

Hi,

This code module should be self evident. Call SendTheCommand() with one of the predefined messages. Then in your main timer call CommandResult() until you get a non zero result before sending anything else.

The manual explains the meaning of the reply to the EscrowInputs message if you use it, the others don't return anything interesting.

Any problems, come back to me.

Code: Select all

#include "Aesimhei.h"

typedef struct
  {
  unsigned char DestinationAddress ;
  unsigned char DataLength ;
  unsigned char SourceAddress ;
  unsigned char CommandByte ;
  unsigned char Data[32] ;
  }
  CCTALK_MSG;


// Call this with a cctalk message, but don't worry about the checksum needed at the end
void SendTheCommand(CCTALK_MSG* Command)
    {
    LastCommand = Command ;
    WriteInterfaceBlock(2, (char *)Command, Command->DataLength + 4) ;
    }


// Afterwards call this until it returns nono zero to check the result
int CommandResult(CCTALK_MSG* Reply)
    {
    return ReadInterfaceBlock(2, (char *)Reply, sizeof Reply)) ;
    }

//                                    Dest  Length,  Source, Command, Data...
static CCTALK_MSG EscrowPayment =    { 80,     1,        1,     70,    1 } ;

static CCTALK_MSG EscrowDevolution = { 80,     1,        1,     70,    2 } ;

static CCTALK_MSG EscrowInputs     = { 80,     0,        1,     72 } ;

static CCTALK_MSG RecoveryMotor    = { 80,     0,        1,     71 } ;
Aardvark software developer. Please put all communication on the problem through the board for the benefit of others.
Nathan
Posts: 41
Joined: Tue Oct 30, 2018 4:12 pm

Re: Using Azkoyen Combo T Escrow device with PayLink

Post by Nathan »

Hi,

Thank you very much for your support. The example works flawlessly.
Post Reply