Connecting Data

Goal: Get your industrial data flowing into the Control Plane.


What is a Data Connection?

A data connection is where telemetry enters the Control Plane:

AspectDescription
Entry pointWhere data arrives from devices, systems, APIs
Backed byAzure IoT Hub (for device data) or direct integrations
ProtocolsMQTT, AMQP, HTTPS, REST
ResultData available for surfaces and warm queries

Think of a data connection as the "main water line" to your workspace. Surfaces are where you use that water for specific purposes.


Connection Types

Connection configuration showing available connection types.
TypeBest ForStatus
IoT Hub (Managed)Production devices, sensorsAvailable
CosmosDBA database your workspace provisions and ownsAvailable
Database (other)Historical data from databases you already runCustom Code
External APIThird-party systems, weather, etc.Custom Code

OpenIndustrial provides a managed IoT Hub - you don't need to set up Azure infrastructure. Create a connection, get device credentials, start sending data.

Thinking Tip:

For testing without real devices, use a Simulator node (separate from Connection) to generate test data.


Quick Start: Simulator

For testing and learning, use the built-in simulator:

Option A: Drag and Drop

  1. Open your workspace canvas
  2. Find Connection in the Node Bank (left edge, chain link icon)
  3. Drag Connection onto canvas
  4. Name it (e.g., "test-sensors")
  5. Find Simulator in the Node Bank (flask icon)
  6. Drag Simulator onto canvas
  7. Draw a line from Simulator output to Connection input
  8. The edge will show "simulates" label

Option B: Ask Azi

I'll propose the connection and simulator configuration. Review and approve.


Verifying Data Flow

After connecting:

  1. Click the connection node
  2. Open the Inspector panel
  3. See impulses arriving with:
    • Timestamp
    • Device ID
    • Payload data
Thinking Tip:

No data after 30 seconds? Check that your simulator or device is properly attached to the connection.


What is an Impulse?

An impulse is a single telemetry event:

{
  "timestamp": "2026-01-18T10:30:00Z",
  "deviceId": "temp-sensor-01",
  "temperature": 72.5,
  "humidity": 45.2
}

Every impulse is:

  • Immediately queryable via warm queries
  • Governed - all access logged
  • Retained based on your workspace settings

Device Credentials

For production connections, you'll access device credentials from the Inspector:

  • Connection strings for SDK-based connections
  • SAS tokens for direct authentication
  • MQTT details for protocol-level connections

See Device Credentials Guide →


Next Steps

If you want to...Go to...
Test with simulated dataSimulator Guide →
Connect production IoT devicesIoT Hub Guide →
Access device credentialsDevice Credentials →
Provision a CosmosDB accountCosmosDB Setup →
Create containers and manage documentsDatabase Management →
Expose a container as a surface tableDatabase Tables →
Connect a database (custom code)Database Guide →
Connect external APIs (custom code)External API Guide →
Route data to queriesSurfaces Guide →

Once data is flowing, connect it to a surface. That's where queries live.

On this page