CHAILink SDK  Version 1.3
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Architecture

CopperLan

A CopperLan enabled computer (4) acts as a host for Applications using the CHAI library (5) or as a host for small devices plugged-in (via USB, FireWire, TCP/IP, custom transports, ...) and using the CHAILink (3). In Embedded system, the client MCU (1) connects to the CPVNM Chip (2) using a fast UART connection.

ArchCopperLan.gif
CopperLan Architecture

The CHAI Link

The CHAILink is built from two software components.

  • The CHAILink server which is part of the CopperLan service; more specifically it is used by the VNM (Virtual Network Manager) through the port manager. This service can be hosted by a computer or by a dedicated CopperLan chip.
  • The CHAILink client that enables application developers to access the CopperLan network from small hardware devices. This API being itself divided in two modules:
    • The CHAILink Client: The API provided to third parties as portable C source code.
    • The CHAILink Client Transport: A C interface to be implemented by Third party, and depending on the physical transport used.

The link between the CHAI Link Client and CHAI Link server simply needs two streams (one In and one Out). The only prerequisites for this transport are reliability and speed. For example:

  • USB transports can use an interface with one Bulk-In pipe and one Bulk-out pipe.
  • Bi-directional serial transports
  • A TCP/IP socket can be used with Server side on CHAILink port plug-in, and client side on CHAILink Client Transport
  • FireWire
  • ...
    ArchCL.gif
    CHAILink Architecture