Hide navigation sidebar
Hide table of contents sidebar
Back to top
Toggle table of contents sidebar

# ETAS

This interface adds support for CAN interfaces by ETAS. The ETAS BOA (Basic Open API) is used.

## Installation

Install the “ETAS ECU and Bus Interfaces – Distribution Package”.

Warning

Only Windows is supported by this interface.

The Linux kernel v5.13 (and greater) natively supports ETAS ES581.4, ES582.1 and ES584.1 USB modules. To use these under Linux, please refer to the SocketCAN interface documentation.

## Configuration

The simplest configuration file would be:

    [default]
    interface = etas
    channel = ETAS://ETH/ES910:abcd/CAN:1

Channels are the URIs used by the underlying API.

To find available URIs, use `detect_available_configs()`:

    configs = can.interface.detect_available_configs(interfaces="etas")
    for c in configs:
        print(c)

## Bus

class can.interfaces.etas.EtasBus(channel, can_filters=None, receive_own_messages=False, bitrate=1000000, fd=True, data_bitrate=2000000, **kwargs)

  Construct and open a CAN bus instance of the specified type.

  Subclasses should call though this method with all given parameters as it handles generic tasks like applying filters.

  Parameters:

    - channel (str) – The can interface identifier. Expected type is backend dependent.

    - can_filters (Sequence[CanFilter | CanFilterExtended] | None) – See `set_filters()` for details.

    - kwargs (dict) – Any backend dependent configurations are passed in this dictionary

    - receive_own_messages (bool) –

    - bitrate (int) –

    - fd (bool) –

    - data_bitrate (int) –

  Raises:

    - ValueError – If parameters are out of range

    - CanInterfaceNotImplementedError – If the driver cannot be accessed

    - CanInitializationError – If the bus cannot be initialized

  flush_tx_buffer()

    Discard every message that may be queued in the output buffer(s).

    Return type:

      None

  send(msg, timeout=None)

    Transmit a message to the CAN bus.

    Override this method to enable the transmit path.

    Parameters:

      - msg (Message) – A message object.

      - timeout (float | None) – If > 0, wait up to this many seconds for message to be ACK’ed or for transmit queue to be ready depending on driver implementation. If timeout is exceeded, an exception will be raised. Might not be supported by all interfaces. None blocks indefinitely.

    Raises:

      CanOperationError – If an error occurred while sending

    Return type:

      None

  shutdown()

    Called to carry out any interface specific cleanup required in shutting down a bus.

    This method can be safely called multiple times.

    Return type:

      None

  property state: BusState

    Return the current state of the hardware