Skip to content

Commit 01b4399

Browse files
committed
Review and update
1 parent 05e8259 commit 01b4399

File tree

3 files changed

+62
-61
lines changed

3 files changed

+62
-61
lines changed

articles/iot-central/core/concepts-iot-edge.md

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Azure IoT Edge and Azure IoT Central
33
description: Understand how to use Azure IoT Edge with an IoT Central application including the different gateway patterns and IoT Edge management capabilities.
44
author: dominicbetts
55
ms.author: dobett
6-
ms.date: 03/04/2024
6+
ms.date: 05/23/2025
77
ms.topic: conceptual
88
ms.service: azure-iot-central
99
services: iot-central
@@ -14,7 +14,7 @@ ms.custom: [device-developer, iot-edge]
1414

1515
# Connect Azure IoT Edge devices to an Azure IoT Central application
1616

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.
1818

1919
This article describes:
2020

@@ -34,10 +34,10 @@ IoT Edge is made up of three components:
3434
* 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).
3535
* A *cloud-based interface* enables you to remotely monitor and manage IoT Edge devices. IoT Central is an example of a cloud interface.
3636

37-
IoT Central enables the following capabilities to for IoT Edge devices:
37+
IoT Central lets you do the following with IoT Edge devices:
3838

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:
4141
* The telemetry each IoT Edge module sends.
4242
* The properties each IoT Edge module reports.
4343
* The commands each IoT Edge module responds to.
@@ -52,7 +52,7 @@ IoT Central enables the following capabilities to for IoT Edge devices:
5252
An IoT Edge device can be:
5353

5454
* 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.
5656

5757
## IoT Edge devices and IoT Central
5858

@@ -63,7 +63,7 @@ IoT Central optionally uses [device templates](concepts-device-templates.md) to
6363
* The types of telemetry and properties an IoT Edge device sends so that IoT Central can interpret them and create visualizations.
6464
* 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.
6565

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.
6767

6868
## IoT Edge deployment manifests
6969

@@ -142,11 +142,11 @@ The following code snippet shows an example IoT Edge deployment manifest:
142142
}
143143
```
144144

145-
In the previous snippet, you can see:
145+
In the previous snippet:
146146

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`.
150150

151151
The following screenshot shows this deployment manifest imported into IoT Central:
152152

@@ -158,7 +158,7 @@ To learn how to use the **Edge manifests** page and assign deployment manifests
158158

159159
### Manage an unassigned device
160160

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:
162162

163163
* View raw data such as telemetry and properties.
164164
* Call device commands.
@@ -179,7 +179,7 @@ IoT Central device templates use models to describe the capabilities of IoT Edge
179179
IoT Central models an IoT Edge device as follows:
180180

181181
* 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.
183183
* A module capability model implements one or more module interfaces.
184184
* Each module interface contains telemetry, properties, and commands.
185185

@@ -200,10 +200,10 @@ The IoT Edge device is provisioned in IoT Central along with the downstream devi
200200
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.
201201

202202
> [!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.
204204
205205
> [!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.
207207
208208
### IoT Edge as a protocol translation gateway
209209

articles/iot-central/core/howto-configure-file-uploads.md

Lines changed: 36 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: How to configure, implement, and manage file uploads from your devi
44
services: iot-central
55
author: dominicbetts
66
ms.author: dobett
7-
ms.date: 06/18/2024
7+
ms.date: 05/23/2025
88
ms.topic: how-to
99
ms.service: azure-iot-central
1010

@@ -14,37 +14,37 @@ ms.service: azure-iot-central
1414

1515
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.
1616

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.
1818

1919
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).
2020

2121
## Prerequisites
2222

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.
2424

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).
2626

2727
## Configure device file uploads
2828

2929
To configure device file uploads:
3030

31-
1. Navigate to the **Application** section in your application.
31+
1. Go to the **Application** section in your application.
3232

3333
1. Select **Device file storage**.
3434

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.
3636

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.
3838

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**.
4040

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.
4242

4343
:::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":::
4444

4545
## Disable device file uploads
4646

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:
4848

4949
1. Navigate to the **Application** section in your application.
5050

@@ -58,31 +58,31 @@ Use roles and permissions to control who can view and delete uploaded files. To
5858

5959
## Upload a file from a device
6060

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/).
6262

6363
## View and manage uploaded files
6464

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.
6666

6767
> [!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.
6969
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:
7171

7272
:::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":::
7373

7474
> [!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`.
7676
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.
7878

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:
8080

8181
:::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":::
8282

8383
## Test file upload
8484

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:
8686

8787
```cmd/sh
8888
git clone https://github.com/azure-Samples/iot-central-file-upload-device
@@ -93,39 +93,39 @@ npm build
9393

9494
### Create the device template and import the model
9595

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:
9797

98-
1. Open your application in IoT Central UI.
98+
1. Open your application in the IoT Central UI.
9999

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**.
101101

102-
1. Choose **IoT device** as the template type.
102+
1. Select **IoT device** for the template type.
103103

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.
105105

106106
1. On the **Review** page, select **Create**.
107107

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.
109109

110-
1. Select **Publish** to publish the device template.
110+
1. Select **Publish** to finish creating the device template.
111111

112112
### Add a device
113113

114114
To add a device to your Azure IoT Central application:
115115

116-
1. Choose **Devices** on the left pane.
116+
1. Go to **Devices** in the left pane.
117117

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.
119119

120-
1. Select + **New** and select **Create**.
120+
1. Select + **New**, then select **Create**.
121121

122-
1. Select the device that you created and Select **Connect**
122+
1. Select the device you created, then select **Connect**.
123123

124124
Copy the values for `ID scope`, `Device ID`, and `Primary key`. You use these values in the device sample code.
125125

126126
### Run the sample code
127127

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:
129129

130130
```cmd/sh
131131
scopeId=<YOUR_SCOPE_ID>
@@ -134,7 +134,7 @@ deviceKey=<YOUR_PRIMARY_KEY>
134134
modelId=dtmi:IoTCentral:IotCentralFileUploadDevice;1
135135
```
136136

137-
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:
138138

139139
```cmd/sh
140140
Starting IoT Central device...
@@ -155,12 +155,13 @@ Sending telemetry: {
155155
156156
```
157157

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.
159159

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*.
161162

162-
Select the **Raw data** tab to verify the file upload status.
163+
Select the **Raw data** tab to check the file upload status.
163164

164165
:::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":::
165166

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

Comments
 (0)