Skip to content

in progress WIP #1981

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions _includes/docs/edge/faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,10 @@
{% endif %}

### Does ThingsBoard Edge support clustering?
<p>No, <b>ThingsBoard Edge</b> does not support clustering at the moment. But cluster support will be added in the following releases.</p>

The **earlier versions** of **ThingsBoard Edge** do not support clustering. It is designed to operate, process and analyze data locally before synchronizing with the central **ThingsBoard Server**.

Starting **with release 4.0**, Edge supports clustering. Multiple **Edge nodes** can be clustered to provide high availability. If one node fails, the others can seamlessly continue to handle workloads.

### Do I need an internet connection to use the ThingsBoard Edge?
<p>No, you can run it completely offline if you need to. The only connection required is to the <b>ThingsBoard Server</b> via <a href="https://grpc.io/" target="_blank">gRPC</a>.</p>
Expand Down Expand Up @@ -93,7 +96,7 @@ If this is required, you'll need to provision multiple <b>ThingsBoard Edge</b> i
### How many devices can ThingsBoard Edge support?
{% if docsPrefix == 'pe/edge/' %}
<p>The number of connected devices depends on your <a href="https://thingsboard.io/pricing/?section=thingsboard-edge" target="_blank">subscription plan</a>.</p>
<p>Some plans offer 'Unlimited Devices and Assets', thus there are no soft limits on creating devices and assets on the edge side.</p>
<p>Some plans offer 'Unlimited Devices and Assets, thus there are no soft limits on creating devices and assets on the edge side.</p>
{% else %}
<p><b>ThingsBoard Edge</b> doesn’t impose a fixed limit on the number of devices you can connect.</p>
<p>In practice, the number of devices you can support depends largely on your hardware resources, system configuration, and the specific use case.
Expand Down
28 changes: 14 additions & 14 deletions _includes/docs/edge/user-guide/alarms.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,10 @@

## Overview

The **ThingsBoard Alarm** is an essential feature for monitoring and responding to entities events and conditions. For a comprehensive understanding of the **ThingsBoard Alarm** feature, please refer to the [Working with Alarms](/docs/{{cloudDocsPrefix}}user-guide/alarms/) documentation.
The **ThingsBoard Alarm** is an essential feature for monitoring and responding to entity events and conditions.
For a comprehensive understanding of the **ThingsBoard Alarm** feature, please refer to the [Working with Alarms](/docs/{{cloudDocsPrefix}}user-guide/alarms/){: target="_blank"} documentation.

Although the **Alarm** feature for the **Edge** is designed in a similar manner to that of the **Cloud**, it includes several notable additions:
Although the **Alarm** feature for the **Edge** is designed similarly to that of the **Cloud**, it includes several notable additions:
* Alarms are processed locally on the **Edge** and focused on the immediate conditions for alarm triggering without relying on connectivity.
* The Alarm data can be pushed from the **Edge** to the **Cloud** and can also be sent back from the **Cloud** to the **Edge**. This setup enables real-time monitoring and management of alarms across different locations.
* Edge Alarms can be integrated with other local systems or software solutions for further processing, notifications, or actions.
Expand All @@ -16,17 +17,18 @@ In essence, the **ThingsBoard Edge Alarms** provide real-time, localized alarm m

The **Edge Alarms** are created and configured in the same way as the **Cloud Alarms**. Therefore, it is necessary to define the **parameters and the rules** according to which the alarm is to be triggered.

The easiest way to create an Alarm is to use the [Alarm Rules within the Device profile](/docs/{{cloudDocsPrefix}}user-guide/device-profiles/#alarm-rules). The majority of tasks can be configured with **Alarm Rules** with minimal effort.
The easiest way to create an Alarm is to use the [Alarm Rules within the Device profile](/docs/{{cloudDocsPrefix}}user-guide/device-profiles/#alarm-rules){: target="_blank"}. The majority of tasks can be configured with **Alarm Rules** with minimal effort.

If more complex logic is required, we suggest utilising the alternative option, namely the **["Create Alarm"](/docs/{{cloudDocsPrefix}}user-guide/rule-engine-2-0/action-nodes/#create-alarm-node)** and **["Clear Alarm"](/docs/{{cloudDocsPrefix}}user-guide/rule-engine-2-0/action-nodes/#clear-alarm-node)** rule nodes in the **[Rule Engine](/docs/{{cloudDocsPrefix}}user-guide/rule-engine-2-0/re-getting-started/)**. This is a more advanced option that requires a certain level of programming expertise. Please refer to the [corresponding example](/docs/user-guide/rule-engine-2-0/tutorials/create-clear-alarms/).
If more complex logic is required, we suggest using the alternative option, namely the ["Create Alarm"](/docs/{{cloudDocsPrefix}}user-guide/rule-engine-2-0/action-nodes/#create-alarm-node){: target="_blank"} and ["Clear Alarm"](/docs/{{cloudDocsPrefix}}user-guide/rule-engine-2-0/action-nodes/#clear-alarm-node){: target="_blank"} rule nodes in the [Rule Engine](/docs/{{cloudDocsPrefix}}user-guide/rule-engine-2-0/re-getting-started/){: target="_blank"}. This is a more advanced option that requires a certain level of programming expertise. Please refer to the [corresponding example](/docs/user-guide/rule-engine-2-0/tutorials/create-clear-alarms/){: target="_blank"}.

## Alarms Pushing from the Cloud to the Edge

The **ThingsBoard system** allows for pushing **Alarms** from the **Cloud** to the **Edge** in order to enhance operational efficiency and reduce reliance on **Cloud** resources.
The **ThingsBoard system** allows for pushing **Alarms** from the **Cloud** to the **Edge** to enhance operational efficiency and reduce reliance on **Cloud** resources.

### Prerequisite

It is essential to determine which **Rule chain** you intend to use, as this will have a significant impact on the configuration process.
{% capture prerequisite %}
Determine the **Rule Chain** you intend to use in advance, as this will have a significant impact on the configuration process.
{% endcapture %}
{% include templates/info-banner.md content=prerequisite %}

### Guidelines

Expand All @@ -36,17 +38,15 @@ To push Alarms from the **Cloud** to the **Edge**, follow these steps:

## Alarms Pushing from the Edge to the Cloud

The ThingsBoard system also allows for pushing Alarms from the **Edge** to the **Cloud**.
**ThingsBoard** also allows for pushing alarms from the **Edge** to the **Cloud**.
{% capture local-deployment %}
**Please note!** <br>
You **cannot** create or edit the **Rule Chain** on the **Edge** itself. It must be configured as a template on the **Cloud (Server)**, and then assigned to the **Edge** instance. Only then will the actual **Rule Chain**, derived from that template, begin to function and process data from devices (entities) according to its configuration.
If you use **earlier versions** of Edge, you **cannot** create or edit a **Rule Chain** on the **Edge** itself. It must be configured as a template in the **Cloud (Server)**, and then assigned to the **Edge** instance.

Starting with **Edge version 4.0**, you can create and edit a **Rule Chain** on the **Edge**.
{% endcapture %}
{% include templates/info-banner.md content=local-deployment %}

### Prerequisite

It is essential to determine which **Rule chain** you intend to use, as this will have a significant impact on the configuration process.

### Guidelines

To push Alarms from the **Edge** to the **Cloud**, follow these steps:
Expand Down
10 changes: 5 additions & 5 deletions _includes/docs/edge/user-guide/db-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,11 @@

The **Edge Dashboards** are robust and effective tools for local monitoring and management of IoT data. They can function and display data in real time, even when there is no connection to the Cloud. The data can be synchronized with the server when the connection is restored.

The **Edge Dashboards** are designed in the same way as the [Platform (Cloud) Dashboards](/docs/{{cloudDocsPrefix}}user-guide/dashboards/). Please read the Platform Dashboard documentation for a general understanding of its functionality.
The **Edge Dashboards** are designed in the same way as the [Platform (Cloud) Dashboards](/docs/{{cloudDocsPrefix}}user-guide/dashboards/){: target="_blank"}. Please read the Platform Dashboard documentation for a general understanding of its functionality.

## Dashboard Provision to ThingsBoard Edge

The dashboards can be created and managed on the **ThingsBoard server**, and then [provisioned](/docs/{{docsPrefix}}getting-started/#step-5-provision-dashboard-to-thingsboard-edge) to the **Edge instance**. This approach enables the simultaneous deployment of changes to all Edge instances.
The dashboards can be created and managed on the **ThingsBoard server**, and then [provisioned](/docs/{{docsPrefix}}getting-started/#step-5-provision-dashboard-to-thingsboard-edge){: target="_blank"} to the **Edge instance**. This approach enables the simultaneous deployment of changes to all Edge instances.

You can verify that the Dashboard is provisioned:

Expand All @@ -22,9 +22,9 @@ You can also create and manage **Dashboards** right from the **Edge** itself. Al
To **create** the Edge Dashboard on your **ThingsBoard Edge** instance, do the following:

{% include images-gallery.html imageCollection="create-dashboard" showListImageTitles="true" %}
You can learn about **Widgets** [here](/docs/{{cloudDocsPrefix}}user-guide/widgets/)
You can learn about **Widgets** [here](/docs/{{cloudDocsPrefix}}user-guide/widgets/){: target="_blank"}.

Read more about the **Dashboard toolbar** [here](/docs/{{cloudDocsPrefix}}user-guide/dashboards/#dashboard-toolbar).
Read more about the **Dashboard toolbar** [here](/docs/{{cloudDocsPrefix}}user-guide/dashboards/#dashboard-toolbar){: target="_blank"}.

To verify that the changes are successfully propagated:

Expand All @@ -34,7 +34,7 @@ If you have multiple instances of **ThingsBoard Edge**, you can delete the Dashb

### Assign/Remove Customers

Before you assign customers to the Dashboard, make sure that you have assigned them to the **ThingsBoard Edge** instance first. You can read more about Customers [here](/docs/{{cloudDocsPrefix}}user-guide/ui/customers/).
Before you assign customers to the Dashboard, make sure that you have assigned them to the **ThingsBoard Edge** instance first. You can read more about Customers [here](/docs/{{cloudDocsPrefix}}user-guide/ui/customers/){: target="_blank"}.

To **assign/unassign** customers to the **Edge Dashboard**, do the following:

Expand Down
11 changes: 6 additions & 5 deletions _includes/docs/edge/user-guide/edge-management.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@

**ThingsBoard** offers two distinct deployment options: **ThingsBoard Edge** and **ThingsBoard Cloud**.

**ThingsBoard Edge** is designed specifically for local, distributed data processing, enabling data analysis and management directly at the source of data generation. This approach allows for local processing, storage, and immediate response to critical situations, even without a continuous connection to the central server. For more information, see the [What is ThingsBoard Edge](/docs/{{docsPrefics}}getting-started-guides/what-is-edge/){: target="_blank"} article.
**ThingsBoard Edge** is designed specifically for local, distributed data processing, enabling data analysis and management directly at the source of data generation. This approach allows for local processing, storage, and immediate response to critical situations, even without a continuous connection to the central server. For more information, see the [What is ThingsBoard Edge](/docs/{{docsPrefix}}getting-started-guides/what-is-edge/){: target="_blank"} article.

In contrast, **ThingsBoard Cloud**, is a fully managed, scalable, and fault-tolerant platform hosted in the cloud. The devices connected to the Cloud transfer data over the internet. It is perfect for centralized data collection, processing, and management. For more information, see the [What is ThingsBoard](/docs/{{peDocsPrefics}}getting-started-guides/what-is-thingsboard/){: target="_blank"} article.
In contrast, **ThingsBoard Cloud** is a fully managed, scalable, and fault-tolerant platform hosted in the cloud. The devices connected to the cloud transfer data over the internet. It is perfect for centralized data collection, processing, and management. For more information, see the [What is ThingsBoard](/docs/{{docsPrefix}}getting-started-guides/what-is-edge/){: target="_blank"} article.

### The Key Differences Between Edge and Cloud

Expand All @@ -20,7 +20,8 @@ Although **Edge is designed similarly to Cloud**, the main difference lies **in
* Devices connected to the **Cloud** are **require internet connectivity** to communicate with the platform.

**Cluster deployment** refers to the deployment in a distributed architecture, where multiple nodes (instances) work together to ensure scalability, fault tolerance, and high availability.
* **Edge does not support cluster deployment**. It is designed to operate, process and analyze data locally before synchronizing with the central ThingsBoard server.
* The older versions of **Edge do not support cluster deployment**. It is designed to operate, process and analyze data locally before synchronizing with the central ThingsBoard server.
* Starting with release 4.0 **Edge supports clustering**. Multiple Edge nodes can be clustered to provide high availability. If one node fails, the others can seamlessly continue to handle workloads.
* **Cloud supports cluster deployment** and is crucial for handling large-scale IoT applications with numerous devices and high data throughput.

## Synchronization Architecture
Expand All @@ -47,7 +48,7 @@ To force synchronization procedure, go to the **Edge management > Instances** se

## Entities Management

Most entities can be created on the **Edge** instance, except for **Customers**, **Users**, and **Rule Chains** entities. To enable the use of these entities on the **Edge**, these entities must be **assigned** to the **Edge** prior to use.
Most entities can be created on the **Edge** instance, except for **Customers**, and **Users**, entities. To enable the use of these entities on the **Edge**, these entities must be **assigned** to the **Edge** prior to use.

To **assign** specific entities to the **Edge**, log in to your **Cloud** and navigate to the **Edge management > Instances** section:

Expand Down Expand Up @@ -83,7 +84,7 @@ Basic information about the Edge configuration is provided on the Edge instance
The **Cloud Events** page shows events that ThingsBoard Edge pushes to the Cloud. To view this information, log in to your **Edge instance** and go to the **Edge > Cloud events** section. The following information is displayed:

* **Created time:** The date and time the event is created and pushed to the Cloud. Displayed in a format YYYY-MM-DD H:Min:Sec.
* **Action:** The action pushed to the Cloud. Possible actions: Added, Deleted, Updated, Attributes Updated, Attributes Deleted, Timeseries Deleted, Timeseries Updated, RPC Call, Credentials Updated, Relation Add or Update, Relation Deleted, Relations Deleted, Alarm Ack, Alarm Clear, Attributes Request, Rule Chain Metadata Request, Relation Request, Credentials Request.
* **Action:** The action pushed to the Cloud. Possible actions: Added, Deleted, Updated, Attributes Updated, Attributes Deleted, Timeseries Deleted, Timeseries Updated, RPC Call, Credentials Updated, Relation Add or Update, Relation Deleted, Relations Deleted, Alarm Ack, Alarm Clear, Attributes Request, Rule Chain Metadata Request, Relation Request, Credential Request.
* **Entity type:** The entity that created the event.
* **Entity ID:** The identification code of the entity.
* **Status:** Defines if the event has been pushed to the Cloud.
Expand Down
8 changes: 4 additions & 4 deletions _includes/docs/edge/user-guide/entities-and-relations.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,16 +9,16 @@ In **ThingsBoard**, an **entity** is a core component that represents a physical

### Available Edge Entities

* **Devices:** Physical IoT devices (sensors, actuators, controllers).
* **Assets:** A real world object that helps group and manage the IoT ecosystem (e.g., machines, buildings, factories).
* **Devices:** Physical IoT devices (_sensors, actuators, controllers_).
* **Assets:** A real world object that helps group and manage the IoT ecosystem (_e.g., machines, buildings, factories_).
* **Customers:** Organizations or users assigned to specific devices/assets.
* **Users (for PE):** People who manage and interact with edge resources.
* **Entity Views:** Predefined views of selected entity data.
* **Alarms:** Alerts for anomalies or predefined conditions.
* **Dashboards:** Visualizations of telemetry and device data.
* **Rule Chains:** Local data processing and automation logic.

Most entities can be created on the **Edge**, except for **Customers**, **Users**, and **Rule Chain** entities. These entities can be created on the **Server** and then [assigned](/docs/{{docsPrefix}}config/management/#entities-management){: target="_blank"} to the **Edge instance**.
Most entities can be created on the **Edge**, except for **Customers**, and **Users** entities. These entities can be created on the **Server** and then [assigned](/docs/{{docsPrefix}}config/management/#entities-management){: target="_blank"} to the **Edge instance**.

The **Devices** and **Assets** entities have the configuration templates as [Device Profiles](/docs/{{peDocsPrefix}}user-guide/device-profiles/){: target="_blank"} and [Asset Profiles](/docs/{{peDocsPrefix}}user-guide/asset-profiles/){: target="_blank"}, respectively.

Expand Down Expand Up @@ -47,7 +47,7 @@ Example:
"status": "ON"
}
```
You can learn more about working with telemetry data [here](/{{peDocsPrefix}}docs/user-guide/telemetry/).
You can learn more about working with telemetry data [here](/{{peDocsPrefix}}docs/user-guide/telemetry/){: target="_blank"}.

By default, **ThingsBoard Edge** synchronizes telemetry data with the **ThingsBoard Cloud**.
During an internet outage, telemetry is stored **locally** and sent to the **Cloud** once the connection is restored.
Expand Down
6 changes: 3 additions & 3 deletions _includes/docs/edge/user-guide/ota-updates.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
The ThingsBoard **Over-the-Air (OTA) Update** feature is a powerful way to remotely manage device firmware or software, reducing the need for manual updates and enabling rapid deployment of enhancements or fixes.

The **Edge OTA Update** feature is designed similarly to the **Platform (Cloud) OTA Update**. As a result, the **Edge OTA Update** packages can be deployed in both Device and Device Profile configurations in the same manner as **Platform** Device and Device Profile configurations.
Please refer to the [Platform OTA Updates documentation](/docs/{{cloudDocsPrefix}}user-guide/ota-updates/) for a general understanding of the **OTA Update** feature.
Please refer to the [Platform OTA Updates documentation](/docs/{{cloudDocsPrefix}}user-guide/ota-updates/){: target="_blank"} for a general understanding of the **OTA Update** feature.

## Provisioning OTA Packages to the ThingsBoard Repository

Expand All @@ -21,7 +21,7 @@ The **OTA Update packages** are created on the **ThingsBoard Platform**. It is *

### Create the OTA Update Package

To create the **OTA update** package on your **ThingsBoard Platform**, navigate to the **Advanced features > OTA updates** section and click the **"+"** icon.
To create the **OTA update** package on your **ThingsBoard Platform**, navigate to the **Advanced features > OTA updates** section and click the **"+"** icon.
In the pop-up window, fill in the following fields:
* **Title:** Enter the firmware package name.
* **Version:** Enter the firmware package update version number.
Expand All @@ -31,7 +31,7 @@ In the pop-up window, fill in the following fields:
* **"Upload binary file"/"Use external URL" radiobutton:** Select the file package source. Depending on the selected option, the following will occur:
* **Package file:** Drag-n-drop the package file or browse to it on your computer.
* **Direct URL:** Enter a direct URL to download the file.
* Click the **"Add"** button. _Please note that once the package is uploaded, the title, version, device profile, and package type cannot be modified_.
* Click the **"Add"** button. _Please note: once the package is uploaded, the title, version, device profile, and package type cannot be modified_.
* Verify that firmware package has been successfully uploaded.

{% include images-gallery.html imageCollection="createFirmware" %}
Expand Down
Loading