# Config Modes

The configuration file contains a **modes** section. Each mode has its own full tag configuration, including both tags and routes, that describes what to collect, how often to sample, possible aggregations and where to send it.

ConfigMode lets the device switch between the modes that are contained in the configuration file. By changing the active mode, the device can adapt to real-world situations without needing to redeploy a new configuration file from cloud.

Typical situations could be:

* **Production stops:** Collect fewer tags, lower sampling rate, pause non-essential routing.
* **Cleaning:** Disable noisy/irrelevant tags.
* **Test / diagnostics:** Enable extra tags and a higher sampling rate to troubleshoot.
* **Limited bandwidth**: For mobile devices that switch to e.g.. satellite connections for fallback connectivity, sample rates might need be lowered to conserve bandwidth.

The device activates exactly **one** mode at a time. You can change the active mode via:

* **Twin control: W**hen `ConfigModeControl = Twin` in the desired twin settings, the active mode can be set using the `ConfigMode` property.
* **Local control:** When `ConfigModeControl = Module` in the desired twin settings, the active mode is controller using direct commands. They can be called from both another module on the device, from another device or from the cloud.

When the mode changes, the **ConfigModule** updates the configuration for data collectors and other modules, and reports status via twin reported properties.

{% hint style="info" %}
The platform currently only supports deployment of one config mode. The config mode is always called "default".

Until the config modes are supported by the platform, to use the config mode feature, the tag config file must be generated and deployed manually.
{% endhint %}


---

# 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/edge/nexus-modules/platform-modules/configmodule/config-modes.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.
