NEOVI Interface


This ICS NeoVI documentation is a work in progress. Feedback and revisions are most welcome!

Interface to Intrepid Control Systems neoVI API range of devices via python-ics wrapper on Windows.


This neovi interface requires the installation of the ICS neoVI DLL and python-ics package.


An example can.ini file for windows 7:

interface = neovi
channel = 1


class can.interfaces.ics_neovi.NeoViBus(channel, can_filters=None, **config)[source]

Bases: can.bus.BusABC

The CAN Bus implemented for the python_ics interface

  • channel (int) – The Channel id to create this bus with.
  • can_filters (list) – See can.BusABC.set_filters() for details.
  • use_system_timestamp – Use system timestamp for can messages instead of the hardware time stamp
  • serial (str) – Serial to connect (optional, will use the first found if not supplied)
  • bitrate (int) – Channel bitrate in bit/s. (optional, will enable the auto bitrate feature if not supplied)
static get_serial_number(device)[source]

Decode (if needed) and return the ICS device serial string

Parameters:device – ics device
Returns:ics device serial string
Return type:str
send(msg, timeout=None)[source]

Transmit a message to the CAN bus.

Override this method to enable the transmit path.

  • msg (can.Message) – A message object.
  • timeout (float) – 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.

can.CanError – if the message could not be written.


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