Device type owners can use ARTIK Cloud's device management features to organize and manage a fleet of devices. This involves three types of properties for the device type: Server Properties, System Properties, and Device Properties. Using device management, device type owners can run a firmware update or restore a device to factory settings without having the device in-hand and without requiring end user interaction.
Three types of properties
ARTIK Cloud recognizes three types of properties.
- Server Properties are properties defined by the device type owner, such as serial number, model, description, and firmware version.
- System Properties are read-only properties provided by ARTIK Cloud that provide additional information to the device manufacturer.
- Device Properties use LWM2M to read, write, and execute property values to and from the device.
A device's properties are different from its fields. Device fields are described in the Manifest and refer to data produced by an end user's interaction, like turning on a light or capturing a heart rate.
The Device Mirror is a virtual representation of the device in ARTIK Cloud. It stores Server Properties, System Properties, and Device Properties of a device. Of these, only Device Properties exist on both the physical device and the Device Mirror. Server Properties and System Properties exist only on the Device Mirror (in the cloud).
When you view properties in the Developer Dashboard or make API calls to get properties, you are viewing the current values of the properties in the Device Mirror. It is possible to access Device Properties directly on the device rather than from the Device Mirror by performing a task. This is explained in Device Management Tasks.
After a device type owner creates a device type in ARTIK Cloud, they can create Server Properties and enable Device Properties for devices of that device type. After that, there are two ways to manage devices:
- Write, read, delete, and query properties using the Developer Dashboard or API calls. These are performed on the Device Mirror.
- Run tasks on a device to manage Device Properties.
The remainder of this article discusses the first type of device management, which is on the Device Mirror. Manage devices using LWM2M discusses Device Properties and tasks in depth.
A connection status is reported for devices that have made an active connection to ARTIK Cloud with WebSocket, MQTT, CoAP, or REST. The System Property
connection is returned in some APIs and can be queried to filter devices.
The API returns the following values for connected devices:
||Boolean (true/false). Indicates persistent connection.|
||Timestamp of most recent WebSocket, MQTT, CoAP, or REST connection. Includes persistent and nonpersistent connections.|
||WebSocket, MQTT, CoAP, or REST.|
Below are the
connected values returned by ARTIK Cloud.
|REST||false (the REST connection does not remain open)|
Device management in the Developer Dashboard
Device management options are listed under the name of the device type.
Create Server Properties
In the Developer Dashboard, Server Properties must be defined by an administrator of the organization that owns the device type.
An administrator can define up to 40 Server Properties in a Device Management Manifest by navigating to Device Management for a device type. If no properties have been defined, they will see the following:
Click the "Add Server Properties" button. Here a property name, data type, and unit of measurement (if applicable) must be entered. You may pick from a list of standard properties or create custom properties. A description of the property is optional but recommended.
The Developer Dashboard also allows organization administrators to read, write, and query properties stored on the Device Mirror. This is done on a device type's corresponding Device Management page. Each device card displays the properties alongside their values. By clicking the edit button on the upper-right, you can edit the values of the properties.
The search bar can be used to filter the list with three types of properties. In the below image, we are filtering the list by
serialNumber, a Server Property we have defined.
Device Management API reference
Use the Device Management APIs to manage properties programmatically. The APIs operate on the Device Mirror. They are documented in the API reference.
To perform operations on a physical device, you need to create device management tasks, which are discussed here.