Skip to main content

Interconnecting Virtual Hardware

The Interconnect provides the ability for one Virtual Hardware device to connect to one or more other Virtual Hardware devices via supported CoreModel interfaces. As of the 7.7 release 'GPIO' and 'CAN' interfaces are supported, with more CoreModel interfaces to become supported in the future.

The Interfaces Tab

Every supported device has and Interfaces tab on the left that enumerates all of the supported Interfaces provided by the device:

  • Name shows the names of the available interfaces using the CoreModel naming convention which is based on the manufactured documentation. This may not exactly correspond with the names of the devices in Linux if hardware manufacturer did not name the devices in memory map order or if the devices at relatively lower addresses are disabled.
  • Attachment status is one of
    • Detached meaning that no interconnect is attached to the interface.
    • Attached meaning that an interconnect is attached to the interface but that the interconnect is not ready to transmit data. The most common cause is that the interconnect is not connected to anything or is connected to a device that is powered down.
    • Connected meaning that an interconnect is attached and is ready to carry data.
  • Interconnect is either - or the name of the interconnect attached to the interface.
  • Protocol is the protocol of the interface
  • ... is a menu allowing one of:
    • Attach interconnect allowing the interface to be connected to an existing interconnect
    • Detach interconnect allowing the interface to be disconnected from the currently connected interconnect

Interfaces Tab

The Interconnects Page

Interconnects Menu

Available from the View interconnects button on the Interfaces Tab and from the Interconnects item in the menu in the upper right hand corner, the Interconnects Page shows all current interfaces:

  • Name show the names of the Interconnects as created by a user.
  • Attachment status is one of
    • Detached meaning that no interfaces are connected to the interconnect.
    • Attached meaning that at least one interface is connected to the interconnect but that the interconnect is not ready to transmit data. The most common cause is that there are not sufficient devices connected and running.
    • Connected meaning that the interconnect is attached and is ready to carry data.
  • Protocol is the protocol of the interface
  • Type is one of:
    • hub meaning that all messages sent to the interconnect will be delivered to all interfaces other than the sender. This behavior may be referred to as "broadcast no echo" and is the way Ethernet Hubs operate, thus the name.
    • switch meaning that messages sent to the interconnect will only be delivered to interfaces that match the protocol address of the sender. This behavior may be referred to as "unicast" and is the way Ethernet Switches operate, thus the name.
    • Note that hub and switch are equivalent for protocols that only support two end pointes or do not define addresses.
  • Project is the project where the interconnect is accessible.
  • Attached devices is the count of interfaces attached to the interconnect.
  • ... is a menu allowing one of:
    • Edit interconnect allowing the interconnect to be edited
    • Manage attached devices allowing interfaces to be disconnected from the interconnect
    • Delete interconnect allowing the interconnect to be deleted

Interconnects Page

Creating and Editing Interconnects

Available from the Interconnect Page, the Add Interconnect dialog enables users to create new Interconnects:

Interconnects Page

  • Name is a free text field enabling the user to name the Interconnect.
  • Protocol is a dropdown list of supported protocols for the Interconnect.
  • Type is a dropdown of:
    • hub meaning that all messages sent to the interconnect will be delivered to all interfaces other than the sender. This behavior may be referred to as "broadcast no echo" and is the way Ethernet Hubs operate, thus the name.
    • switch meaning that messages sent to the interconnect will only be delivered to interfaces that match the protocol address of the sender. This behavior may be referred to as "unicast" and is the way Ethernet Switches operate, thus the name.
    • Note that hub and switch are equivalent for protocols that only support two end pointes or do not define addresses.
  • Project is a dropdown list of available projects where the interconnect will be accessible.

The Edit Interconnect dialog is similar to the Add Interconnect dialog but only enables changing the name, all other fields are fixed.

Managing Attached Devices

Available from the Interconnect Page, the Manage attached devices dialog shows:

  • Device name of Virtual Hardware devices connected to the Interconnect.
  • Interface shows the interface name of the device connect to the Interconnect.
  • Attachment status is one of
    • Detached meaning that no interfaces are connected to the interconnect.
    • Attached meaning that at least one interface is connected to the interconnect but that the interconnect is not ready to transmit data. The most common cause is that there are not sufficient devices connected and running.
    • Connected meaning that the interconnect is attached and is ready to carry data.
  • ... is a menu allowing:
    • Detach device allowing the interface of the device to be disconnected from the interconnect

Limitations

  • Only CAN and GPIO protocols are supported
  • Addressing support is limited. Currently each address or pin or chip-select (depending on protocol) is implemented as a unique interface rather than as an address within a multi-address interface. This does not represent a limitation of connectivity for common case operation, but causes lists of interfaces to be overly verbose.