Skip to main content

Instance settings

The settings block contains global settings for the instance. All settings are optional.

RemotiveBroker​

RemotiveBroker can either be configured in the instance file or using environment variables.

settings:
remotivebroker:
version: v1.10.1
license_file: ../LICENSE_FILE

Corresponding environment variables:

REMOTIVEBROKER_TAG=v1.10.1
REMOTIVEBROKER_LICENSE=/path/to/LICENSE_FILE

Recommendation:

  • Version: Use the instance file to ensure that you have consistent behavior in all environments
  • License: Use REMOTIVEBROKER_LICENSE to avoid having the license file in your repository

Docker​

Mock image​

Mocks run in a Docker image that contains Python and the RemotiveTopology framework. By default, each version of RemotiveTopology uses a fixed mock image, so you only need to set it if you want to use a different image, for example one with custom dependencies:

settings:
docker:
mock:
image: remotivelabs/remotivelabs-topology-python:0.9.0

Docker registry​

It's common to use a public mirror of Docker Hub or an internal Docker registry. To make sure that the correct registry is used in every environment, specify the default registry:

settings:
docker:
registry: mirror.mycorp.com

The registry applies to all images that don't specify a registry themselves. For example, with the preceding setting remotivelabs/remotivelabs-topology-python is pulled from mirror.mycorp.com, while ghcr.io/org/image is still pulled from ghcr.io.

TopologyBroker​

The TopologyBroker needs to have access to all frames on all channels. To achieve this, RemotiveTopology automatically merges the signal databases of all ECUs on each channel for use by the TopologyBroker. If the databases conflict, the merge fails with E092.

You can explicitly set which signal database the TopologyBroker uses for a specific channel. This is useful if your platform uses ECU extracts, i.e. databases that only contain what's relevant for a single ECU, but you also have a complete signal database for the channel:

settings:
topology_broker:
channels:
DriverCan0:
database: ../databases/driver_can_complete.dbc

Default CAN and LIN drivers​

If you don't specify which driver to use for a CAN or LIN channel, the default driver is used. The default driver is RemotiveBus, but you can change it to UDP for all CAN channels, all LIN channels or both:

settings:
can:
default_driver: udp
lin:
default_driver: udp

A driver specified on a channel always takes precedence over the default driver.

Monitoring​

To collect metrics from a running topology, see System monitoring.