CcTalk
Encyclopedia
ccTalk is a serial
Serial communication
In telecommunication and computer science, serial communication is the process of sending data one bit at a time, sequentially, over a communication channel or computer bus. This is in contrast to parallel communication, where several bits are sent as a whole, on a link with several parallel channels...

 protocol in widespread use throughout the money transaction industry. Peripherals such as coin acceptors, bill validators and hoppers found in a diverse range of automatic payment equipment such as transportation, ticketing, payphones, amusement machines and retail cash management use ccTalk to talk to the host controller.

The protocol was developed at a company called Coin Controls (hence coin-controls-talk), now Money Controls, on the outskirts of Manchester
Manchester
Manchester is a city and metropolitan borough in Greater Manchester, England. According to the Office for National Statistics, the 2010 mid-year population estimate for Manchester was 498,800. Manchester lies within one of the UK's largest metropolitan areas, the metropolitan county of Greater...

 in north-west England
England
England is a country that is part of the United Kingdom. It shares land borders with Scotland to the north and Wales to the west; the Irish Sea is to the north west, the Celtic Sea to the south west, with the North Sea to the east and the English Channel to the south separating it from continental...

 mainly by Engineer Andy Barson. The first release of the protocol was in 1996.

The protocol uses an asynchronous transfer of character frames in a similar manner to RS232. The main difference is that it uses a single Two-way communication
Two-way communication
Two-way communication - uses communication to negotiate with the public, resolve conflict, and promote mutual understanding and respect between the organization and its public. Two-Way Communication in Public Relations...

 data line for half-duplex communication rather than separate transmit and receives lines. It operates at TTL voltages and is ‘multi-drop’ i.e. peripherals can be connected to a common bus and are logically separated by a device address. Each peripheral on the ccTalk bus must have a unique address.

The original protocol operated at 4800 baud
Baud
In telecommunications and electronics, baud is synonymous to symbols per second or pulses per second. It is the unit of symbol rate, also known as baud rate or modulation rate; the number of distinct symbol changes made to the transmission medium per second in a digitally modulated signal or a...

 with subsequent releases standardising on 9600 baud. Low cost bridge chips are now available from a number of manufacturers to allow ccTalk to run over USB at baud rates of at least 1 Mbit/s.

ccTalk protocol stacks have been implemented on a range of devices from tiny Microchip
Integrated circuit
An integrated circuit or monolithic integrated circuit is an electronic circuit manufactured by the patterned diffusion of trace elements into the surface of a thin substrate of semiconductor material...

 microcontrollers with 512 bytes of ROM
Read-only memory
Read-only memory is a class of storage medium used in computers and other electronic devices. Data stored in ROM cannot be modified, or can be modified only slowly or with difficulty, so it is mainly used to distribute firmware .In its strictest sense, ROM refers only...

 to powerful ARM7 32-bit processors.

The protocol supports all standard operations for electronic devices such as flash
Flash memory
Flash memory is a non-volatile computer storage chip that can be electrically erased and reprogrammed. It was developed from EEPROM and must be erased in fairly large blocks before these can be rewritten with new data...

 upgrading of firmware, secure transfer of data and detailed diagnostic information.

Advantages of ccTalk include low cost UART technology, a simple-to-understand packet structure, an easily expandable command interface and no licensing requirements. The latter affords the protocol a good deal of popularity in a crowded and highly competitive field similar to open-source software.

In 2010, DES
Data Encryption Standard
The Data Encryption Standard is a block cipher that uses shared secret encryption. It was selected by the National Bureau of Standards as an official Federal Information Processing Standard for the United States in 1976 and which has subsequently enjoyed widespread use internationally. It is...

encryption was added to certain commands so that it could be made more resilient against attacks on the bus.

An Example ccTalk Message Packet

TX data = 002 000 001 245 008
_____
  • 002 = destination address
  • 000 = zero data bytes
  • 001 = source address
  • 245 = command header ‘Request equipment category id’
  • 008 = checksum ( 002 + 000 + 001 + 245 + 008 = 256 = 0 mod 256 )


This is a message from address 1 ( the host ) to peripheral address 2 to find out what it is.

RX data = 001 013 002 000 067 111 105 110 032 065 099 099 101 112 116 111 114 022
  • 001 = destination address
  • 013 = 13 data bytes
  • 002 = source address
  • 000 = reply header
  • 067…114 = ASCII for ‘Coin Acceptor’
  • 022 = checksum ( sum of all packet bytes is zero )


The reply from address 2 back to address 1 identifies it as a coin acceptor.

Coin and Note Naming

A number of associated standards have emerged over the years from within the ccTalk specification. For example, the global tags to identify the world’s forever changing coins and notes.

In ccTalk a coin has a 6 character identifier
<2-letter country code><3-letter value><1-letter issue code>

The country code conforms to ISO 3166. The issue code is assigned to different issue dates or special mint variations of the same coin.

e.g.
  • US025A United States 25c
  • GB010B Great Britain 10p
  • EU200A Euro 2€


Bank notes follow the same pattern but 4 characters are allocated to the value and there is an associated scaling factor, usually x100, with the country.

e.g.
  • US0001A United States $1
  • GB0020A Great Britain £20
  • EU0005A Euro 5€
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK