PDF

AGHAF  3.1.2
Annecy electronique Generic Hardware Access Framework
AGHAF Documentation

AGHAF is a library for accessing Annecy Electronique's MUX devices.

This documentation is about the C API for accessing AGHAF.

The main functionnalities provided are:

  • Enumerate and identify connected devices
  • Configure devices for network communication (CAN, Ethernet, LIN, etc.)
  • Receive data from configured networks, e.g. for analysis purposes.
  • Send and receive data on configured networks, e.g. to diagnose or simulate ECU.

Environment

Compatibility

The C API and the AGHAF library should be compatible with any C or C++ compiler.

Wrappers for other programming languages like C#, VB.NET and PowerShell are available.

Supported platforms

Supported platforms are:

  • Microsoft Windows 32 and 64 bits (Vista and above)

The following platforms will be supported in the near future:

  • Linux 32 and 64 bits

Introduction to the API

The C API has been designed in object oriented mode. To achieve this, most of the APIs use pointers.

Thus the API will contain a very limited number of structures and most of the objects are accessible through handles (void *). Main drawback is that users do not have direct access objects internals. However, this provides many advantages:

  • Users do not have to deal with object initialization.
  • Permitted actions are clearly defined by the set of functions related to the object.

Below, the description of VCI Muxdiag 3 pinout :

Signal Pin num comment
Ethernet Tx(+) 1
BroadReach N 2
BroadReach P 3
Chassis Power Ground 4
Signal Communication Groud 5
CAN LS 1 L 6
CAN LS 1 H 7
CAN HS 1 L 8
CAN HS 1 H 9
Ethernet Rx(+) 10
Ethernet Tx(-) 11
ISO K line 1 12
VBAT 16
CAN HS 2 H 17
CAN HS 2 L 18
Ethernet Rx(-) 19
ISO L Line 1 20
internal use 21 do not connect
internal use 22 do not connect
DoIP activation signal 23
APC 24
LIN 2 25
LIN 1 26

changelog

Version
1.0.1.x to 1.2.x
  • First api version
1.3.0 and 1.4.0 – 2019-06-20
1.5.0 – 2019-07-15
  • Fixes DOCAN channel internal management.
  • Fixes DOCAN channel setting.
  • Change call order for DOCAN.
1.6.0 – 2019-09-11
  • Loses binary compatibility because of canBusCount docanBusCount and expert speed configuration.
  • Rename function: AGHAF_CAN_getEventBusInfo instead of AGHAF_CAN_getEventBusLoad.
  • Rename type: AGHAF_CanEvent_busInfo instead of AGHAF_CanEvent_busLoad.
  • Add AGHAF_DOCAN_getChannelCount and AGHAF_DOCAN_getUnusedChannelCount.
1.6.1 – 2019-09-13
  • Fix load of AGHAF_DOCAN_getChannelCount and AGHAF_DOCAN_getUnusedChannelCount.
  • Fix source and destination inverted.
1.6.2 – 2019-10-07
  • Beta with CAN error management.
1.6.3 – 2019-11-04
  • Add periodic frame.
  • Add data in event tx.
  • Loses binary compatibility because of changing timestamp from 32 bits to 64 bits.
1.6.4 – 2019-11-22
  • Beta with full DOCAN implementation.
1.6.5 – 2019-12-20
  • Start support of last error string: for device and general module.
  • Fix some isue with docan.
  • Improve max data in docan frame : 64 k.
  • Add error event in DoCan.
  • Fix event message order. Event messages are no longer mixed.
1.6.6 – 2020-01-28
  • remove debug trace.
  • only one application can use a device at same time.
  • fix error on disconnected device.
1.6.7 – 2020-02-28
  • add forgot function AGHAF_DOCAN_getEventChannel.
  • add doc for AGHAF_DOCAN_setSource and AGHAF_DOCAN_setDestination
1.6.8 – 2020-03-09
  • fix AGHAF_DOCAN_getEventChannel : function return nullptr.
1.6.9 – 2020-03-12
  • change version for correlation with development kit.
1.6.10 – 2020-03-16
  • fix AGHAF_DOCAN_getEventChannel : function fail if single channel used.
1.6.11 – 2020-03-18
  • change version for correlation with development kit.
1.7.0 – 2020-06-12
  • change the DoCAN API
1.7.1 – 2020-07-22
  • change the CAN API

compatibility

Below, the compatibility of VCI Muxdiag 3 firmware and service.

Firmware Version SDK 1.5.0 SDK 1.6.0 SDK 1.7.0 SDK 1.7.1 SDK 3.0.0 SDK 3.0.1 SDK 3.1.0 SDK 3.1.1 SDK 3.1.2
1.4 and before compatible compatible not compatible not compatible not compatible not compatible not compatible not compatible not compatible
1.5 not compatible compatible not compatible not compatible not compatible not compatible not compatible not compatible not compatible
1.9 not compatible not compatible compatible not compatible not compatible not compatible not compatible not compatible not compatible
1.10 not compatible not compatible not compatible compatible not compatible not compatible not compatible not compatible not compatible
1.11 not compatible not compatible not compatible not compatible compatible compatible compatible compatible compatible
1.12 not compatible not compatible not compatible not compatible compatible compatible compatible compatible compatible