Skip to content
Stand with Ukraine flag

Devices

Devices are the primary IoT entities in ThingsBoard. They represent physical or virtual things — sensors, controllers, gateways, emulators — that publish telemetry, report attributes, and respond to RPC commands.

IoT Hub

ThingsBoard IoT Hub contains an ever-growing catalog of ready-made IoT device templates provided by trusted contributors for instant hardware connectivity. Find the one that fits your use case.

Browse the catalog
  1. Navigate to Entities ⇾ Devices.
  2. Click + Add device and select Add new device.
  3. Enter a Name (must be unique within the tenant).
  4. Optionally set a Device profile (defaults to default), Label, or Description.
  5. If this device will proxy data for other devices, enable Is gateway (see Gateway Devices).
  6. Click Add.

A connectivity check dialog opens automatically right after creation — continue below to verify the device and send its first data point.

Verify that the device can communicate with ThingsBoard:

  1. Open the device details page and click Check connectivity (or use the dialog that opened automatically after creation).
  2. Select the protocol (MQTT, HTTP, or CoAP) and your operating system.
  3. Copy the generated command and run it in your terminal.

On success, the device status changes from Inactive ⇾ Active and telemetry appears under the Latest telemetry tab.

Having trouble? See Troubleshooting below.

Generate dashboard with AI builds a ready-to-use dashboard for this device in a single click — no prompt needed. AI reviews the device’s available telemetry and attributes and automatically selects the widgets that best fit that data — value cards, trend charts, gauges, an alarms table, and more.

You can trigger it from two places:

  • The connectivity check dialog — opens automatically after creating a device, or reopen it anytime via Check Connectivity.
  • The device details panel, among its action buttons (see Device Details).
  1. Click Generate dashboard with AI.
  2. Wait about a minute while AI reads the device’s data and analyzes its telemetry and attributes.
  3. The dashboard opens automatically, named after the device (e.g., SN-001 Dashboard), populated with widgets matching its data — including an alarms widget if the device has active alarms.

Prefer to build it yourself? Create a blank dashboard and add widgets bound to this device through an entity alias.

  1. Click the pencil icon next to the device in the list.
  2. Update the name, profile, label, firmware, or software version.
  3. Click Apply changes.

Click the trash icon next to the device and confirm, or open the device details page and click Delete device.

  1. Open the device details page.
  2. Click Manage credentials.
  3. Select the credential type and fill in the required fields.
  4. Click Save.

A gateway device proxies data for multiple downstream devices over a single connection using the Gateway API. Enable gateway mode when creating or editing a device.

SettingDescription
Is gatewayGrants the device access to the gateway topic namespace for proxying downstream devices.
Overwrite activity timeWhen enabled, the gateway’s own connection activity keeps connected downstream devices in Active state. Useful when downstream devices are connected through the gateway but not actively sending telemetry — RPC commands and shared attribute updates can still be delivered to them.

To enable gateway mode, toggle Is gateway during device creation or in the device edit form.

Clicking a device opens its details panel. The header exposes the following actions:

ActionDescription
Open details pageOpens the device on its own full page instead of a side panel.
Manage credentialsChange how the device authenticates — see Manage Credentials.
Manage owner and groupsChange the device’s owner and group membership (PE/Cloud only).
Check connectivityReopen the connectivity check dialog — see Check Connectivity.
Generate dashboard with AIBuild a dashboard for this device — see Generate Dashboard with AI.
Copy device IdCopies the device’s unique identifier, e.g. for use with the REST API.
Copy access tokenCopies the device’s access token credential.
Delete deviceDeletes the device — see Delete Device.

Below the actions, a set of tabs provides access to the device’s data and configuration:

TabContents
AttributesClient, server, and shared key-value pairs (serial number, firmware version, thresholds)
Latest TelemetryReal-time sensor readings; supports manual entry and deletion by time range
Calculated FieldsValues computed from telemetry or attributes using formulas
Alarm RulesConditions, thresholds, and triggers configured for alarm generation
AlarmsActive and historical alarms for this device
EventsLifecycle events, logs, warnings, and errors
RelationsDirected connections to other entities (assets, dashboards, rule chains)
Audit LogsHistory of user actions: creation, updates, deletions
Version ControlGit-based export and restore for backup and collaboration

You can change the owner of a device to control which Customer (or the Tenant) has access to it.

  1. Click the device to open its details.
  2. Click Manage owner and groups.
  3. In the Owner field, select the Tenant or a specific Customer.
  4. Add the device to relevant device groups or create a new group.
  5. Click Update.

The Include customer entities toggle on the Devices page controls whether devices owned by customers appear in the list alongside tenant-owned devices.

Ownership controls who has access; the next section covers how devices are organized once they have an owner.

Devices can belong to one or multiple groups for organization and access control. Every device is automatically added to the "All" group of its owner.

  1. On the Devices screen, go to the Groups tab.
  2. Click + Add entity group.
  3. Enter the group name.
  4. Optionally configure shared access for your customers.
  5. Click Add.

Add, Move, and Remove Devices

Section titled Add, Move, and Remove Devices

Add devices to a group:

  1. Open any device group (e.g., "All").
  2. Select devices using the checkboxes.
  3. Click the Add to group icon.
  4. Select an existing group or create a new one.
  5. Click Add.

Move devices to another group:

  1. Open a specific (non-"All") group.
  2. Select devices and click Move to group.
  3. Select the target group and click Move.

Remove devices from a group:

  1. Open a specific (non-"All") group.
  2. Select devices and click Remove from group.
  3. Confirm removal.

Make a Group Public / Private

Section titled Make a Group Public / Private

Click the Make public icon next to a device group to expose all its data publicly, or Make private to revoke access.

  1. Click the Share icon next to the device group.
  2. Select the target customer.
  3. Optionally specify a user group within that customer.
  4. Click Share.

To manage permissions after sharing, click the pencil icon on the group, navigate to the Permissions tab, and add, edit, or delete permission entries.

SymptomCauseFix
Device stays Inactive after running the connectivity commandAccess token is wrong, expired, or belongs to another deviceCopy the token again from Manage Credentials and re-run the command
Device stays Inactive after running the connectivity commandThe command’s protocol doesn’t match the deviceConfirm the device’s Device profile uses the same transport (MQTT, HTTP, or CoAP) as the command
Command fails to connect or times outWrong host/port, or the port is blockedConfirm the host in the generated command matches your ThingsBoard instance, and that outbound traffic on that port isn’t blocked by a firewall or proxy
Command succeeds but no telemetry appearsPayload isn’t valid JSON, or uses an unexpected keyCheck the terminal output for an HTTP error status or broker rejection, and validate the payload
Generate dashboard with AI shows “No telemetry data found”The device hasn’t sent any data yetSend at least one telemetry data point (see Check Connectivity), then try again
  • Dashboards — visualize telemetry, attributes, and alarms via widgets
  • Rule Engine — process incoming telemetry, trigger alarms, route messages
  • Calculated Fields — compute derived values from device data
  • Relations — model hierarchies (e.g., Gateway → Contains → Sensor)
  • Integrations — ingest data from third-party platforms and protocols instead of connecting devices directly
  • Command & Control — send RPC commands to devices and receive their responses
  • REST API — query, create, and manage devices programmatically

Once a device is created and sending data, a natural next step is to visualize it on a dashboard — manually or with Configure Dashboard with AI — or set up alarm rules to get notified when its telemetry crosses a threshold.