# Updating Modules

The **module update process** allows you to roll out new versions of modules across all affected devices—whether it's deployed directly, through an application, or via an asset hierarchy. The update flow is organized into five steps, guiding you from selecting affected entities to finalizing and monitoring the rollout.

### 1. Applications

In this step, you see all **applications** that include the selected module and have been assigned to devices. You can choose to include or exclude each application from the update.

* Only selected applications will be part of the rollout.
* Devices assigned to excluded applications will not receive the updated module (even if technically eligible).

<figure><img src="/files/Ojol4Epl1XJEy2OPxxJZ" alt=""><figcaption><p>Module update, step 1 - Applications</p></figcaption></figure>

### 2. Hierarchies

Here, the system lists all **asset hierarchies** where one or more of the selected modules are used (typically via Data Connectors, Custom Models or other hierarchy-driven components).

* You can choose which hierarchies to include in the rollout.

<figure><img src="/files/8dYhrGVfrXZwC3qcK7yt" alt=""><figcaption><p>Module update, step 2 - Hierarchies</p></figcaption></figure>

### 3. Devices

Based on the applications and hierarchies selected in the previous steps, and the devices that have the module **installed directly** (i.e., via device-scoped configuration), the devices to update are listed here.

* Select which directly targeted devices should receive the update.

<figure><img src="/files/EcJeg6eeJjiUTcXNx6wU" alt=""><figcaption><p>Module update, step 3 - Devices</p></figcaption></figure>

### 4. Deployment

This phase summarizes what will be updated and lets you determine weather the update should be deployed or not. You can now configure the deployment action for each affected device. The options are:

* **Do not deploy the update:** Only update the device configuration, but do not deploy the changes.
* **Deploy the update now:** Update and deploy immediately.
* **Deploy the update at a specified time:** Update and deploy the changes at a selected time.

<figure><img src="/files/1MIE0rICJTF4SVAvVeuO" alt=""><figcaption><p>Module update, step 4 - Deployment</p></figcaption></figure>

### 5. Finalize

After confirming the deployment settings, the update process is finalized. All pending updates are listed for all devices, where changes to the modules on each individual device can be viewed.

The possible module operation types are:

* **Added**: Module is added to the device.
* **Removed**: Module is removed from the device.
* **Modified**: Module version is changed.

{% hint style="info" %}
Updating a module version can cause side effects, for example updating applications. If the device used an application several versions old, modules can have been added or removed in the newest version. This means that a simple module update can cause several modules to be both added, removed or modified.
{% endhint %}

<figure><img src="/files/w3q4fHgOFMO2hG35km9i" alt=""><figcaption><p>Module update, step 5 - Finalizing</p></figcaption></figure>

In the figure above, the device sesam-device-silkeborg is expanded, and it can be seen that the module DeviceMonitorModule is updated (modified) from version 2.0.0 to 2.1.0-rc-1.

When all changes are reviewed, the update process can be started by clicking the Approve Update button.

<figure><img src="/files/ZQRVOlHj8m9BJ2wPP8Iv" alt=""><figcaption><p>Confirming the update and deployment</p></figcaption></figure>

Click ok will start the process. The device configurations are updated first.

<figure><img src="/files/B8pdrknLBFdwwOClD0x8" alt=""><figcaption><p>Update process started - updating device configurations.</p></figcaption></figure>

When the device configurations are updated, deployments will start if configured.

<figure><img src="/files/1ROAw3TJvK4HpQCSwmiH" alt=""><figcaption><p>Update process - deploying to devices.</p></figcaption></figure>

The user does not have to wait for the completion of the deployments. It can be closed, and the deployments will keep running in the background.

To view the progress of the deployments, go to the [Deployment overview](/management-portal/management/deployments.md).


---

# 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/update-center/updating-modules.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.
