Virtual vehicle integration testing
Teams and individual developers are using RemotiveTopology to test everything from individual nodes to entire vehicle systems, and their interactions early, without hardware, and without having to wait for other teams to mature the dependencies.
1# Subscribe to the CAN bus
2sub = await broker_client.subscribe(("FLCM-BodyCan0",
3 [
4 "TurnLightControl.LeftTurnLightRequest",
5 "TurnLightControl.RightTurnLightRequest"
6 ]
7 ))
8)
9# Check that the turn light request arrive within two seconds
10await await_at_most(seconds=2).until(
11 partial(take_values, sub),
12 equal_to({
13 "TurnLightControl.LeftTurnLightRequest": 1,
14 "TurnLightControl.RightTurnLightRequest": 0
15 }),
16)
17

Verify integrations in central pipelines across ECUs, apps and features. It works for remote work setups and is more consistent and easier to reproduce than end-to-end tests requiring hardware rigs - run as often as you need before thinking of HIL.
Test any vehicle logic early - without waiting for hardware
Whether you're working on body control, infotainment, personalization, or diagnostics, RemotiveLabs brings the ability to test any vehicle logic early - essentially bringing the car onto your desktop, allowing you to iterate quickly, stay in sync with your team, and reduce testing costs. Use real signal data, networks, and open tooling - all from your laptop. Shift integration left. Save time later by validating platforms from a functional perspective first.
Describe and run your topology
With RemotiveTopology, you can describe your topology in a way that is instantly executable (learn more: Integration testing from day 1). Freely mix no-code mocks, behavioural models, Simulink models and vECUs like Synopsys Silver. Simulate the part of the vehicle network needed for your use case and run tests locally on a Linux laptop or directly in CI pipelines to collaborate on team level. (Learn more: Integrate with CI pipeline).
Once available, it is also possible to replace nodes with actual hardware.
RemotiveTopology supports production communication, i.e. all bus communication is the same as in the production vehicle topology, including how network packets are encoded, IP/ MAC addresses, VLANS etc. This allows the use standard tools such as Wireshark or candump to inspect the network.

Start building directly with full control over dependencies.
Easily add behavior using Python
With RemotiveTopology you can create Python-based behavioral models to incorporate specific logic and dynamic behaviors. Easily implement the behavior you need to test your code or prototype and share more complex models across topologies and teams.
1class BCM:
2 body_can_0: CanNamespace
3
4 async def on_hazard_light(self, frame: Frame) -> None:
5 hazard_signal = frame.signals["HazardLightButton.HazardLightButton"]
6
7 await self.body_can_0.restbus.update_signals(
8 RestbusSignalConfig.set("TurnLightControl.RightTurnLightRequest", value=hazard_signal),
9 RestbusSignalConfig.set("TurnLightControl.LeftTurnLightRequest", value=hazard_signal),
10 )
When a test case requires specific behavior from a topology participant, but no model, simulation, or hardware is available, Python-based logic can replace the mock to enable accurate testing.
Notice that the Python models will participate in the network using production communication exactly as if it was running in a vehicle.
Infrastructure as code
With RemotiveTopology, code is used to describe how to instantiate your platform and execute your tests. Code that can be tracked with version control. This allows other teams to reuse your topology and tests, and of course, automate tests in CI pipelines. If there is a bug, it can be reproduced by anyone.
1# ECUs to instantiate
2ecus:
3 # a mock for SCCM
4 SCCM:
5 mock: {}
6 # a python model for BCM
7 BCM:
8 models:
9 bcm:
10 type: container
11 container:
12 build:
13 dockerfile: ../Dockerfile
14 volumes:
15 - ../ecus/bcm:/app/bcm
16 working_dir: /app
17 command: python -m bcm
18 # no behavior needed for FLCM
19 FLCM:
20 channels:
21 BodyCan0:
22
With RemotiveTopology, code is used to describe how to instantiate your platform and execute your tests. Code that can be tracked with version control. This allows other teams to reuse your topology and tests, and of course, automate tests in CI pipelines. If there is a bug, it can be reproduced by anyone.
One framework to test components, services, HMI etc.
RemotiveTopology enables individuals and teams to instantiate the parts of a platform that is tailored for their task and device under test. This removes the dependencies on other teams’ deliveries; if parts are missing for integration you can easily mock them and control their behaviour.
RemotiveTopology enables you to create a component test framework with the surrounding nodes, directly from the platform description. No more waiting for other teams; engineers can start integration testing from day 1.
Run advanced scenarios where large parts of the mechatronic rim and zone controllers need to be simulated. With RemotiveTopology the complexity doesn’t grow for more complex topologies. Large topologies are still infrastructure as code and are created and controlled in the same way as for small topologies.
Traditionally, testing services that span several nodes in a platform (e.g., comfort, personalization, body control, etc.) happens late in platform projects, as mature nodes for testing are not available early on. RemotiveTopology enables engineering organisations to take ownership of the nodes that they need, starting day 1 with mocks and behavioral models, and then incrementally increasing the fidelity to virtual ECUs and onto hardware as they become available.
To make it easy to test infotainment systems and functionality, RemotiveTopology supports both closed-loop and open-loop simulation. You can mock and control the behavior of nodes of your choosing (closed loop) in combination with replaying recorded drive cycles with GPS coordinates, speed etc, including video feeds (open loop) to test authentic scenarios.
Get started
Visit our product overview or schedule a demo to learn more about product capabilities, pricing and how it fits into your development workflow.
Jump straight into action
Head over to the installation guide to set up RemotiveTopology in minutes. For practical examples and usage patterns, check out our GitHub repository.
for 30 days
Top use cases - Virtual integration testing
Use RemotiveTopology to run early integration tests across vehicle domains -without waiting for hardware or other teams.
Whether you're developing body control logic, infotainment features, or services that span multiple ECUs, virtual integration testing lets you configure, simulate, and validate real production setups from your laptop. Iterate faster, collaborate in code, and shift integration left.
Volvo Cars uses RemotiveTopology to simulate entire vehicle topologies on a developer’s laptop. By virtualizing ECUs and orchestrating signals with Docker, teams can test usage modes like “driving in reverse” early—without waiting for HIL rigs. This setup runs over 400 integration tests a week, scales easily to 20+ ECUs per laptop, and integrates smoothly into CI pipelines for fast, hardware-free development.

Integrate high-fidelity software simulations for increased testing accuracy – vECUs replicates real-world execution for deterministic results.

Volvo Cars: Graviton-powered virtual ECUs enable cloud-based validation of core compute logic with high realism. RemotiveTopology setup with Zuul CI pipeline enables a sense of everyone sitting in the same room, with the same repo, talking to each other.

Blog posts related to virtual integration testing
Join the automotive rebels that #getstuffdone with RemotiveLabs!
