Open-source CAN Calibration Protocol (CCP) implementation

From ErikaWiki

Revision as of 10:25, 10 November 2014 by Francesco (Talk | contribs)
Jump to: navigation, search

Contents

Introduction

[Reference: CAN Calibration Protocol - Version 2.1. Author: H. Kleinknecht. Distribution: public] "The Controller Area Network CAN is a joint development of Robert Bosch GmbH and Intel Corporation. CAN is used in many high-end automotive control systems like engine management as well as in industrial control systems. Controller chips for CAN are available from various semiconductor manufacturers. The CAN Calibration Protocol is part of the ASAP standards. It was developed and introduced by Ingenieurbüro Helmut Kleinknecht, a manufacturer of calibration systems, and is used in several applications in the automotive industry. The CCP was taken over by the ASAP working group and enhanced with optional functions."

Subset of the standard implemented

The implementation privided by Erika distribution is limited to the following subset of CCP commands:

  • CONNECT 0x01
  • EXCHANGE_ID 0x17
  • SET_MTA 0x02
  • DNLOAD 0x03
  • DNLOAD_6 0x23
  • UPLOAD 0x04
  • SHORT_UPLOAD 0x0F
  • GET_DAQ_SIZE 0x14
  • SET_DAQ_PTR 0x15
  • WRITE_DAQ 0x16
  • START_STOP 0x06
  • DISCONNECT 0x07
  • SET_S_STATUS 0x0C
  • GET_S_STATUS 0x0D
  • START_STOP_ALL 0x08
  • BUILD_CHECKSUM 0x0E
  • MOVE 0x19
  • TEST 0x05

This implementation has been succesfully used by third party companies in conjunction with commercial suite (like ATI Vision)

Target supported

The only target freely supported at this moment is the Freescale MPC5643L (Leopard)

Testing environment

The environment adopted by third party companies is:

  • ATI Vision 3.3 (Used as CCP Master tool);
  • Kvaser USBCan II (but Peak System PCAN-USB is succesfully used too);
  • MPC56XX EVB as Target board (with a MPC5643L on the doughter board)

Additional notes: a demo using Leopard and CCP protocol to monitor a variable can be found under "examples/ppc/templates/leopard/ccp_leopard", while CCP implementation is under "contrib/Ccp"

Acknowledgements

This work has been developed in collaboration with Piaggio & C. Spa and Evidence, and published in the Paper

Towards an Open Source Framework for Small Engine Controls Development
Paolo Gai, Francesco Esposito, Riccardo Schiavi, Evidence Srl; Marco Di Natale, Scuola Superiore S. Anna; Claudio Diglio, Michele Pagano, Carlo Camicia, Luca Carmignani, Piaggio & C SpA, SAE SETC 2014, Pisa, Italy, paper ID 2014-32-0070
Personal tools