# Device Configuration

**Device Configurations** are versioned blueprints that describe what a device should run and how it should behave. It lets you prepare, review, and reuse setups **before** they reach devices. A configuration can include:

* **Modules** - containerized building blocks.
* **Applications** - larger solution components containing modules and configuration.
* **Asset hierarchy -** the structure of your production site, data collection and processing, including the required modules to execute it.
* **Settings and defaults -** for example, management and data upload paths.

{% hint style="info" %}
A device configuration only becomes active on a device when you **deploy** it.
{% endhint %}

***

### Versioning

Device configurations are versioned, which means that every time you save, a new version number is generated. Older versions remain intact. This has the following advantages:

* **Traceability & audit** – see *what changed, when, and by whom*.
* **Safe rollback** – If a change causes issues, you can return devices to a working version quickly.
* **Compliance & approvals** – Version numbers and change notes make reviews and sign-offs straightforward.

{% hint style="info" %}
Deployments always reference a **specific version**, so a device keeps running that version until you deploy another.
{% endhint %}

***

### UI Overview

When selecting a device in the Devices list, the **latest saved version** of the device configuration appears in the details pane.

<figure><img src="/files/9bVd7Bms7riPwsOLqfwd" alt=""><figcaption><p>Device Configuration for the device "sesam-device-silkeborg" in version 20.</p></figcaption></figure>

The device configuration UI consists of the following tings:

* **Header** - A header with device name, configuration version and buttons to Deploy, Reset and View Manifest.
* **Tabs** - Tabs with the labels [**Overview**](/management-portal/management/device-configuration/overview.md), [**Modules**](/management-portal/management/device-configuration/modules.md), [**Applications**](/management-portal/management/device-configuration/applications.md)**,** [**Asset Hierarchy**](/management-portal/management/device-configuration/asset-hierarchies.md) and [**Settings**](/management-portal/management/device-configuration/settings.md)**,** each documented in its own subpage.

{% hint style="info" %}
To add a new device to the platform follow the guide in the Provisioning section \[[Adding New Device](/management-portal/management/provisioning/adding-edge-device.md)].
{% endhint %}

***

## Buttons

#### **Deploy**

Deploys the **currently selected device configuration version** to the selected **device**.

Using the content defined on the **Overview**, **Modules**, **Applications**, **Asset Hierarchy**, and **Settings** tabs to generate a manifest, it applies the manifest to the device.

<figure><img src="/files/ljRgoVJY0OMvCr33ef97" alt=""><figcaption><p>Deployment options, that allows the user to schedule the deployment for later.</p></figcaption></figure>

When clicking Deploy, a pop-up provides the option to either deploy now, or to schedule the configuration to be deployed automatically later. Clicking "Schedule deployment" enables the schedule time selection:

<figure><img src="/files/F9hQBMgkf0H08Ngu3yQo" alt=""><figcaption><p>Scheduling the device configuration for a automated deployment that runs at a specified time.</p></figcaption></figure>

{% hint style="info" %}
A deployment does not edit your device configuration. It just applies the selected version to the device.
{% endhint %}

#### **Reset**

The Reset button resets all configuration on the device, by removing all assigned modules, applications and asset hierarchy. This will create a new version of the device configuration.

When clicking Reset, the following pop-up will show:

<figure><img src="/files/YVUHzTliMLIw9bqA7RKQ" alt=""><figcaption><p>Pop-up when resetting device configuration.</p></figcaption></figure>

If the option "Do you want to deploy to device after reset?" is enabled, the new reset device configuration will automatically be deployed to the device. This effectively removes all functionality (modules) running on the device.

#### **View Manifest**

Opens a read-only view of the **generated deployment manifest** for the selected version of the device configuration. The manifest is shown as JSON formatted text.

Secrets, like keys and passwords, are **not** visible in the manifest. It is hidden behind placeholders.

Viewing the manifests might be a useful way to do quick auditing before a deploy, or to perform troubleshooting, in the event of issues. The manifest is also used when sharing details with support.

#### **Save / Discard Changes**

When a device configuration has been changed by the user, the Save button appears. The changes can either be saved by clicking the Save button, and thereby generating a new version of the device configuration, or discarded by clicking the Discard Changes button.

<figure><img src="/files/HeEzgW6eXvXwuh1YL1Vw" alt=""><figcaption><p>Save / Discard Changes buttons appear on the device configuration when there are changes.</p></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.tricloudnexus.io/management-portal/management/device-configuration.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
