Cctalk Serial Interface

broken image


Digilent usb jtag cable driver linux. Published on 11 August 2013

  1. Cctalk Serial Interface Tutorial
  2. Cctalk Serial Interface
  3. Cctalk Serial Interface Software
  4. Cctalk Serial Interface App

This article is the first part of a series about the ccTalk protocol. Dolby surround sound windows 10. This follows thetalk I made at Defcon this year (slides here : defcon2013.pdf)

The logic levels for the ccTalk line are 3.5 to 5V for mark state (idle) and 0 to 1V for space state (active). This allows a low cost interface width 5V microcontrollers. Some dedicated gaming PC based platforms like this one have one or more built in ccTalk ports. Simple 5V microcontroller interface. Device independent Application Programming Interface. All standard PC ports left free. Standard PCI slot interface. Low Cost High Performance Solution. CcTalk Device support ccTalk coin acceptors (SR3, SR5, SR5I, Condor Plus) ccTalk note acceptors (Lumina) ccTalk Hopper (Serial Compact Hopper MK2, Serial Universal Hopper Multi protocol Support. G-13.mft ccTalk GENERAL INFORMATION National Rejectors, Inc. GmbH, Buxtehude 7 1 General information This chapter should provide a general overview of the advantages and options regarding the coin validator G-13.mft with serial ccTalk interface. The first section, however, is designed to help you navigate easily within these operating instructions. Interfacing with a coin acceptor. In the previous article, we saw how to create ccTalk packets and requests.Now, let's interface a coin acceptor, handle its returned data and process it!

Protocol

The ccTalk protocol is used to transfer information and commands to variousmoney processing device, including coin/bill acceptors and coin hoppers.

Cctalk Serial Interface Tutorial

The bus itself uses UART communication (usually 9600 b/s - 8N1) at TTL levels (0- 5V) with only one wire, which means the communication is only made half-duplex.As multiple devices can be on the same bus, each of them has its own address onthat bus so they don't conflict with each other.

The specs are available on the Crane Payment Solutions company(previously MoneyControls LLC) website : http://www.craneps.com/en/products/view/151 Pixel shader 3.0 download.

Cctalk
Cctalk Serial Interface

It contains many protocol information as commands description and usage andmore.

Message format

A ccTalk frame is composed of the following elements :

  • Destination : The destination address
  • Length : The data length to follow
  • Source : The source address
  • Header : The actual command sent to the device
  • Data : header-related data
  • Checksum

The data length is limited by the specifications to 252.

Addresses

The addresses are encoded in a byte, which means that a maximum of 255 devicescan be used on a single bus. The address 0 is the broadcast address. All devicesmust process the request and respond with source address 0.

Headers

The header field is the actual command sent to the device, it contains asingle byte representing the action that must be taken by the destinationdevice.All these headers are documented in the protocol specs and can take argumentsthat are added in the data field of a frame.

Cctalk Serial Interface

For instance, header 254 (0xfe) is the 'Sample poll' header. Any device thatreceives this one needs to respond with an ACK packet (ie an empty responseframe).

Regarding responses, all of them use header 0, which can be considered as an ACKpacket. The header 5 is used as a NAK response. There is no indication aboutthe initial request in the response frame. It is normally not a problem, asnormally only the controller sends command to devices, but if we want to sniffdata on the bus, we will need to know the request before parsing the answer.

Examples

Here are some example packets :

Sniffing and interpreting data

I couldn't find any open source ccTalk sniffer out there to decode ccTalk framesproperly, so I created two tools, one that can be used to sniff a ccTalk bus andshow live packets and an other that is used to parse sniffed data and displayframes in a nice curses interface.

All the tools use a Python ccTalk library I made. This library is able to parsepackets as well as generate new ones using few lines of code :

Cctalk Serial Interface Software

The parser itself is easy to use, just pass a binary file and it will extractall ccTalk frames it can find :

Cctalk Serial Interface App

Using these tools, it is quite easy to actually understand how a ccTalk-enableddevice works and use it in your own projects.

All the tools can be found here : https://github.com/Baldanos/ccTools

To test ccParse, here is a ccTalk traffic capture : ccData.bin





broken image