You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/iot-central/core/concepts-iot-edge.md
+15-15Lines changed: 15 additions & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,7 +3,7 @@ title: Azure IoT Edge and Azure IoT Central
3
3
description: Understand how to use Azure IoT Edge with an IoT Central application including the different gateway patterns and IoT Edge management capabilities.
# Connect Azure IoT Edge devices to an Azure IoT Central application
16
16
17
-
Azure IoT Edge moves cloud analytics and custom business logic from the cloud to your devices. This approach lets your cloud solution focus on business insights instead of data management. Scale out your IoT solution by packaging your business logic into standard containers, deploy those containers to your devices, and monitor them from the cloud.
17
+
Azure IoT Edge moves cloud analytics and custom business logic from the cloud to your devices. This approach lets your cloud solution focus on business insights instead of data management. Scale out your IoT solution by packaging your business logic into standard containers, deploying those containers to your devices, and monitoring them from the cloud.
18
18
19
19
This article describes:
20
20
@@ -34,10 +34,10 @@ IoT Edge is made up of three components:
34
34
* The [IoT Edge runtime](../../iot-edge/iot-edge-runtime.md) runs on each IoT Edge device, and manages the modules deployed to each device. The runtime consists of two IoT Edge modules: [IoT Edge agent and IoT Edge hub](../../iot-edge/module-edgeagent-edgehub.md).
35
35
* A *cloud-based interface* enables you to remotely monitor and manage IoT Edge devices. IoT Central is an example of a cloud interface.
36
36
37
-
IoT Central enables the following capabilities to for IoT Edge devices:
37
+
IoT Central lets you do the following with IoT Edge devices:
38
38
39
-
*Deployment manifest management. An IoT Central application can manage a collection of deployment manifests and assign them to devices.
40
-
*Device templates to describe the capabilities of an IoT Edge device, such as:
39
+
*Manage deployment manifests. An IoT Central application can manage a collection of deployment manifests and assign them to devices.
40
+
*Use device templates to describe the capabilities of an IoT Edge device, such as:
41
41
* The telemetry each IoT Edge module sends.
42
42
* The properties each IoT Edge module reports.
43
43
* The commands each IoT Edge module responds to.
@@ -52,7 +52,7 @@ IoT Central enables the following capabilities to for IoT Edge devices:
52
52
An IoT Edge device can be:
53
53
54
54
* A standalone device composed of custom modules.
55
-
* A *gateway device*, with downstream devices connecting to it. A gateway device can include custom modules.
55
+
* A *gateway device* with downstream devices connecting to it. A gateway device can include custom modules.
56
56
57
57
## IoT Edge devices and IoT Central
58
58
@@ -63,7 +63,7 @@ IoT Central optionally uses [device templates](concepts-device-templates.md) to
63
63
* The types of telemetry and properties an IoT Edge device sends so that IoT Central can interpret them and create visualizations.
64
64
* The commands an IoT Edge device responds to so that IoT Central can display a UI for an operator to use to call the commands.
65
65
66
-
If there's no device template associated with a device, telemetry and property values display as *unmodeled* data. However, you can still use IoT Central data export capabilities to forward telemetry and property values to other backend services.
66
+
If a device doesn't have an associated device template, telemetry and property values show as *unmodeled* data. You can still use IoT Central data export capabilities to forward telemetry and property values to other backend services.
67
67
68
68
## IoT Edge deployment manifests
69
69
@@ -142,11 +142,11 @@ The following code snippet shows an example IoT Edge deployment manifest:
142
142
}
143
143
```
144
144
145
-
In the previous snippet, you can see:
145
+
In the previous snippet:
146
146
147
-
* There are three modules. The*IoT Edge agent* and *IoT Edge hub* system modules that are present in every deployment manifest. The custom **SimulatedTemperatureSensor** module.
148
-
* The public module images are pulled from an Azure Container Registry repository that doesn't require any credentials to connect. For private module images, set the container registry credentials to use in the `registryCredentials` setting for the *IoT Edge agent* module.
149
-
* The custom **SimulatedTemperatureSensor** module has two writable properties `"SendData": true` and `"SendInterval": 10`.
147
+
* There are three modules: the*IoT Edge agent* and *IoT Edge hub* system modules that are present in every deployment manifest and the custom **SimulatedTemperatureSensor** module.
148
+
* The public module images are pulled from an Azure Container Registry repository that doesn't require credentials. For private module images, set the container registry credentials to use in the `registryCredentials` setting for the *IoT Edge agent* module.
149
+
* The custom **SimulatedTemperatureSensor** module has two writable properties:`"SendData": true` and `"SendInterval": 10`.
150
150
151
151
The following screenshot shows this deployment manifest imported into IoT Central:
152
152
@@ -158,7 +158,7 @@ To learn how to use the **Edge manifests** page and assign deployment manifests
158
158
159
159
### Manage an unassigned device
160
160
161
-
An IoT Edge device that doesn't have an associated device template is known as an *unassigned* device. You can't use IoT Central features such as dashboards, device groups, analytics, rules, and jobs with unassigned devices. However, you can use the following capabilities with unassigned devices:
161
+
An IoT Edge device without an associated device template is an *unassigned* device. You can't use IoT Central features such as dashboards, device groups, analytics, rules, and jobs with unassigned devices. However, you can use the following capabilities with unassigned devices:
162
162
163
163
* View raw data such as telemetry and properties.
164
164
* Call device commands.
@@ -179,7 +179,7 @@ IoT Central device templates use models to describe the capabilities of IoT Edge
179
179
IoT Central models an IoT Edge device as follows:
180
180
181
181
* Every IoT Edge device template has a capability model.
182
-
*For every custom module listed in the deployment manifest, add a module definition if you want to use IoT Central to interact with that module.
182
+
*Every custom module listed in the deployment manifest that you want IoT Central to interact with must have a module definition.
183
183
* A module capability model implements one or more module interfaces.
184
184
* Each module interface contains telemetry, properties, and commands.
185
185
@@ -200,10 +200,10 @@ The IoT Edge device is provisioned in IoT Central along with the downstream devi
200
200
The IoT Edge hub module behaves like IoT Central and handles connections from devices registered in IoT Central. Messages pass from downstream devices to IoT Central as if there's no gateway between them. In a transparent gateway, you can't use custom modules to manipulate the messages from the downstream devices.
201
201
202
202
> [!NOTE]
203
-
> IoT Central currently doesn't support connecting an IoT Edge device as a downstream device to an IoT Edge transparent gateway. This is because all devices that connect to IoT Central are provisioned using the Device Provisioning Service (DPS) and DPS doesn't currently support nested IoT Edge scenarios.
203
+
> IoT Central currently doesn't support connecting an IoT Edge device as a downstream device to an IoT Edge transparent gateway. This limitation is because all devices that connect to IoT Central are provisioned using the Device Provisioning Service (DPS) and DPS doesn't support nested IoT Edge scenarios.
204
204
205
205
> [!IMPORTANT]
206
-
> IoT Central does not support X.509 certificate authentication for downstream devices connected to an IoT Edge transparent gateway.
206
+
> IoT Central doesn't support X.509 certificate authentication for downstream devices connected to an IoT Edge transparent gateway.
Copy file name to clipboardExpand all lines: articles/iot-central/core/howto-configure-file-uploads.md
+36-35Lines changed: 36 additions & 35 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ description: How to configure, implement, and manage file uploads from your devi
4
4
services: iot-central
5
5
author: dominicbetts
6
6
ms.author: dobett
7
-
ms.date: 06/18/2024
7
+
ms.date: 05/23/2025
8
8
ms.topic: how-to
9
9
ms.service: azure-iot-central
10
10
@@ -14,37 +14,37 @@ ms.service: azure-iot-central
14
14
15
15
IoT Central lets you upload media and other files from connected devices to cloud storage. You configure the file upload capability in your IoT Central application, and then implement file uploads in your device code.
16
16
17
-
Optionally, you can manage and preview files uploaded by your devices inside your IoT Central application.
17
+
You can also manage and preview files uploaded by your devices inside your IoT Central application.
18
18
19
19
To learn how to configure file uploads by using the IoT Central REST API, see [Add a file upload storage account configuration](howto-manage-iot-central-with-rest-api.md#add-a-file-upload-storage-account-configuration).
20
20
21
21
## Prerequisites
22
22
23
-
You must be an administrator in your IoT Central application to configure file uploads.
23
+
You need to be an administrator in your IoT Central application to configure file uploads.
24
24
25
-
You need an Azure storage account and container to store the uploaded files. If you don't have an existing storage account and container to use, create a [new storage account in the Azure portal](https://portal.azure.com/#create/Microsoft.StorageAccount-ARM).
25
+
You need an Azure storage account and container to store the uploaded files. If you don't have a storage account and container, create a [storage account in the Azure portal](https://portal.azure.com/#create/Microsoft.StorageAccount-ARM).
26
26
27
27
## Configure device file uploads
28
28
29
29
To configure device file uploads:
30
30
31
-
1.Navigate to the **Application** section in your application.
31
+
1.Go to the **Application** section in your application.
32
32
33
33
1. Select **Device file storage**.
34
34
35
-
1. Select the storage account and container to use. If the storage account is in a different Azure subscription from your application, enter a storage account connection string.
35
+
1. Select the storage account and container to use. If the storage account is in a different Azure subscription than your application, enter a storage account connection string.
36
36
37
-
1. If necessary, adjust the upload timeout that sets how long an upload request remains valid for. Valid values are from 1 to 24 hours.
37
+
1. If needed, adjust the upload timeout that sets how long a request is valid for. You can set it from 1 to 24 hours.
38
38
39
-
1. To enable users to view and manage uploaded files inside IoT Central, set **Enable access** to **On**.
39
+
1. To let users view and manage uploaded files in IoT Central, set **Enable access** to **On**.
40
40
41
-
1. Select **Save**. When the status shows **Configured**, you're ready to upload files from devices.
41
+
1. Select **Save**. When the status shows **Configured**, devices can upload files.
42
42
43
43
:::image type="content" source="media/howto-configure-file-uploads/file-upload-configuration.png" alt-text="Screenshot that shows a properly configured file upload." lightbox="media/howto-configure-file-uploads/file-upload-configuration.png":::
44
44
45
45
## Disable device file uploads
46
46
47
-
If you want to disable device file uploads to your IoT Central application:
47
+
To turn off device file uploads in your IoT Central application:
48
48
49
49
1. Navigate to the **Application** section in your application.
50
50
@@ -58,31 +58,31 @@ Use roles and permissions to control who can view and delete uploaded files. To
58
58
59
59
## Upload a file from a device
60
60
61
-
IoT Central uses IoT Hub's file upload capability to enable devices to upload files. For sample code that shows you how to upload files from a device, see the [IoT Central file upload device sample](/samples/azure-samples/iot-central-file-upload-device/iotc-file-upload-device/).
61
+
IoT Central uses IoT Hub's file upload feature to enable devices to upload files. For sample code that shows how to upload files from a device, see the [IoT Central file upload device sample](/samples/azure-samples/iot-central-file-upload-device/iotc-file-upload-device/).
62
62
63
63
## View and manage uploaded files
64
64
65
-
If you enabled access to files in the file upload configuration, users with the correct permissions can view and delete uploaded files.
65
+
If you turn on access to files in the file upload configuration, users with the right permissions can view and delete uploaded files.
66
66
67
67
> [!IMPORTANT]
68
-
> All the files in the blob container folder associated with a device are visible in the **Files** view for that device. This includes any files that weren't uploaded by the device.
68
+
> All files in the blob container folder associated with a device show up in the **Files** view for that device including any files the device didn't upload.
69
69
70
-
To view and delete uploaded files, navigate to the **Files** view for a device. On this page, you can see thumbnails of the uploaded files and toggle between a gallery and list view. Each file has options to download or delete it:
70
+
To view and delete uploaded files, go to the **Files** view for a device. On this page, you can see thumbnails of the uploaded files and switch between a gallery and list view. Each file has options to download or delete it:
71
71
72
72
:::image type="content" source="media/howto-configure-file-uploads/file-upload-list-files.png" alt-text="Screenshot that shows the gallery view for uploaded files." lightbox="media/howto-configure-file-uploads/file-upload-list-files.png":::
73
73
74
74
> [!TIP]
75
-
> The file type is determined by the mime type assigned to the file when it was uploaded to blob storage. The default type is `binary/octet-stream`.
75
+
> The mime type assigned to the file when it was uploaded to blob storage determines its file type. The default type is `binary/octet-stream`.
76
76
77
-
You can customize the list view by filtering based on file name and choosing the columns to display.
77
+
Customize the list view by filtering by file name and choosing the columns to display.
78
78
79
-
To preview the content of the file and get more information about the file, select it. IoT Central supports previews of common file types such as text and images:
79
+
To preview the file content and get more information about it, select it. IoT Central supports previews of common file types such as text and images:
80
80
81
81
:::image type="content" source="media/howto-configure-file-uploads/file-upload-preview.png" alt-text="Screenshot that shows a preview of a text file." lightbox="media/howto-configure-file-uploads/file-upload-preview.png":::
82
82
83
83
## Test file upload
84
84
85
-
After you [configure file uploads](#configure-device-file-uploads) in your IoT Central application, you can test it with the sample code. If you haven't already cloned the file upload sample repository, use the following commands to clone it to a suitable location on your local machine and install the dependent packages:
85
+
After you [configure file uploads](#configure-device-file-uploads) in your IoT Central application, test it with the sample code. Use the following commands to clone the sample repository to a suitable location on your local machine and install the dependencies:
### Create the device template and import the model
95
95
96
-
To test the file upload, you run a sample device application. Create a device template for the sample device to use.
96
+
To test file upload, run the sample device application. First, create a device template for the sample device:
97
97
98
-
1. Open your application in IoT Central UI.
98
+
1. Open your application in the IoT Central UI.
99
99
100
-
1.Navigate to the **Device Templates**tab in the left pane, select **+ New**:
100
+
1.Go to **Device Templates** in the left pane, then select **+ New**.
101
101
102
-
1.Choose**IoT device**as the template type.
102
+
1.Select**IoT device**for the template type.
103
103
104
-
1. On the **Customize** page of the wizard, enter a name such as *File Upload Device Sample* for the device template.
104
+
1. On the **Customize** page, enter a name such as *File Upload Device Sample* for the device template.
105
105
106
106
1. On the **Review** page, select **Create**.
107
107
108
-
1. Select **Import a model** and upload the *FileUploadDeviceDcm.json* model file from the folder `iotc-file-upload-device\setup` in the repository you downloaded previously.
108
+
1. Select **Import a model** and upload the *FileUploadDeviceDcm.json* model file from the `iotc-file-upload-device\setup` folder in the repository you downloaded previously.
109
109
110
-
1. Select **Publish** to publish the device template.
110
+
1. Select **Publish** to finish creating the device template.
111
111
112
112
### Add a device
113
113
114
114
To add a device to your Azure IoT Central application:
115
115
116
-
1.Choose **Devices**on the left pane.
116
+
1.Go to **Devices**in the left pane.
117
117
118
-
1. Select the *File Upload Device Sample* device template that you created earlier.
118
+
1. Select the *File Upload Device Sample* device template you created earlier.
119
119
120
-
1. Select + **New** and select **Create**.
120
+
1. Select + **New**, then select **Create**.
121
121
122
-
1. Select the device that you created and Select**Connect**
122
+
1. Select the device you created, then select**Connect**.
123
123
124
124
Copy the values for `ID scope`, `Device ID`, and `Primary key`. You use these values in the device sample code.
125
125
126
126
### Run the sample code
127
127
128
-
Open the git repository you downloaded in VS Code. Create an ".env" file at the root of your project and add the values you copied previously. The file should look like the following sample with the values you made a note of previously.
128
+
Open the git repository you downloaded in VS Code. Create an ".env" file at the root of your project and add the values you copied previously. The file should look like this sample, with your values:
Open the git repository you downloaded in VS Code. Press F5 to run/debug the sample. In your terminal window you see that the device is registered and is connected to IoT Central:
137
+
Open the git repository you downloaded in VS Code. To run or debug the sample, press <kbd>F5</kbd>. In your terminal window, you see the device register and connect to IoT Central:
138
138
139
139
```cmd/sh
140
140
Starting IoT Central device...
@@ -155,12 +155,13 @@ Sending telemetry: {
155
155
156
156
```
157
157
158
-
The sample project comes with a sample file named *datafile.json*. This file is uploaded when you use the **Upload File** command in your IoT Central application.
158
+
The sample project includes a sample file named *datafile.json*. This file uploads when you use the **Upload File** command in your IoT Central application.
159
159
160
-
To test the upload, open your application and select the device you created. Select the **Command** tab and you see a button named **Run**. When you select that button the IoT Central app calls a direct method on your device to upload the file. You can see this direct method in the sample code in the /device.ts file. The method is named *uploadFileCommand*.
160
+
To test the upload, open your application and select the device you created. Select the **Command** tab and select the **Run** button. When you select **Run**, the IoT Central application calls a direct method on your device to upload the file. You can see this direct method in the sample code in the /device.ts file. The method is named *uploadFileCommand*.
161
+
To test the upload, open your application and select the device you created. Select the **Command** tab, then select the **Run** button. When you select **Run**, IoT Central calls a direct method on your device to upload the file. You can see this method in the sample code in the */device.ts* file. The method is named *uploadFileCommand*.
161
162
162
-
Select the **Raw data** tab to verify the file upload status.
163
+
Select the **Raw data** tab to check the file upload status.
163
164
164
165
:::image type="content" source="media/howto-configure-file-uploads/raw-data.png" alt-text="Screenshot showing the U I of how to verify a file upload." border="false":::
165
166
166
-
You can also make a [REST API](/rest/api/storageservices/list-blobs) call to verify the file upload status in the storage container.
167
+
You can also make a [REST API](/rest/api/storageservices/list-blobs) call to check the file upload status in the storage container.
0 commit comments