Skip to content

How it works #

When you install Dataplicity on a Linux device, the on-device architecture depends on the agent generation and install mode. A modern installation separates the rescue path used for identity and remote access from the optional supervisor used for product data and desired-state work. The legacy agent keeps the established remote-access path for existing fleets.

Start with Choose the right agent path if you are building, operating, or supporting the device. The rest of this page explains the cloud-to-device model common to both generations.

When you connect to remote shell or reach a web service through a Wormhole URL, traffic is routed between the browser and device through Dataplicity.

Outbound connections #

The agent initiates the Dataplicity connection from the device. The Dataplicity access path does not require an inbound internet route to Remote Shell, RDP, or a device-hosted web service. This means:

  • No port forwarding on customer routers
  • No inbound firewall exception for Dataplicity access
  • Restricted networks can allowlist the documented outbound destinations
  • Portable devices reconnect automatically when they move between networks

Traffic is routed over encrypted WebSocket connections. Availability still depends on the device's network path, DNS, time configuration, and permitted outbound traffic.

Components #

ComponentRole
Rescue or legacy agentMaintains the outbound connection, device identity, and remote-access path appropriate to the installed generation.
Modern supervisorOptional, unprivileged service for desired-state reconciliation, the local broker, and Software-managed containers.
IoT RouterDataplicity service that routes connections between your browser and devices.
DashboardWeb interface for device list, remote shell, fleet management, logs, and monitors.
Device ClassProduct definition for compatible software, streams, actions, settings, and customer layout.
Customer PortalBranded, customer-separated application for assigned products and locations.
Local brokerLoopback boundary through which a compatible product process publishes class streams without a cloud API key.
WormholePersistent outbound tunnel to a web service running on the device.
File retrievalResilient transfer for support artifacts.

What this means in practice #

You can access devices when the agent has a viable, authorised route to Dataplicity. NAT and dynamic public addressing do not require a per-device inbound rule because the agent connects outward.

The OEM workspace and Customer Portal use different authorisation boundaries. A portal user does not gain OEM Remote Shell, fleet-wide logs, or software rollout access.

Dataplicity hosts these SaaS surfaces and the device-operating connection. You keep the hardware, Linux, product application, local safety behaviour, customer contract, billing, and physical service lifecycle. See Customer lifecycle and automation for the complete boundary.