A device is a processing unit that can connect to the Internet and exchange data with the cloud. Examples of devices are IoT gateways, Edge servers, environmental monitoring devices, controllers for the watering and ventilation systems in a greenhouse. In Everyware Cloud, the Device entity represents one such device with the additional following characteristics:
- must be able to connect to Everyware Cloud (e.g. secure MQTT connection)
- can identify itself providing a device profile (e.g. publish BIRTH message). (Identified Device)
- can send telemetry data
- can receive commands and be remotely managed (Managed Device)
- can be provisioned by Everyware Cloud (Provisioned Device)
- can expose Assets to Everyware Cloud (Device with Twins)
- can be remotely accessed
An IoT gateway powered by the Everyware Software Framework (ESF) is an example of a Device. In Everyware Cloud, Devices powered by ESF will be able to connect, be identified, be managed, and can expose Twins of their Assets.
A field device is a processing unit not capable of directly connecting to the Internet. Field devices vary across vertical industries and examples include PLCs, sensors and actuators. Field devices may be accessed through field protocols like Modbus, OPC-UA, S7, Ethernet/IP, M-Bus, BACnet, DNP3, IEC 60870-5-101/104, CAN bus, SAE J1939, SAE J1979.
For Everyware Cloud and ESF, a field device is:
- an equipment that can be observed and/or actuated through a set of parameters
- an equipment not capable of directly connecting to Everyware Cloud
For Everyware Software Framework (ESF), an Asset is a (even partial) digital representation of a field device, directly connected to an ESF-powered Device. The Asset enables the read/write of field device parameters. An Asset is defined by:
- a set of Channels, a digital representation of the parameter of a field device that is observable and/or actuatable
- each Channel has a name, type, read/write direction, a set of parameters specific to the field device it is connecting to
For Everyware IoT, a Twin provides a model to interact with digital representations of Devices and Assets in Everyware Cloud. In general, a Twin will offer one or more of the following interactions:
- can be remotely inquired for current status when reachable
- should report the last known status when not reachable
- can be remotely actuated when reachable
- can queue status update request while not reachable and actuate them when possible
An Activity is a process that typically take a considerable time to complete and completion can happen beyond the time when the context in which the process was originated stops existing. Typical activities can be a software update, a CPU intensive computation or any other task that may take a considerable time to complete. For Everyware IoT, the device activities are started by the cloud side and the real work is carried out by the device.
A messaged published to a specific Topic to indicate that an alert condition has been detected by the device and requires further analysis by Everyware Cloud or an action by a user or operator.
A messaged published to a specific data Topic used to transmit telemetry data from a device to the cloud service. Data Messages contain key-value pairs representing the attributes and values reported by a device.
A Registered Device is a device whose corresponding entity has been created in the Everyware Cloud.
A Device Under Provisioning is a Device for which a Provision Request has been registered in Everyware Cloud and it is waiting for execution.
A Provisioned Device is a Device that successfully completed the Provisioning Process.
Provisioning is the over-the-air process of providing a Device with its initial configuration assigned during registration, including the credentials and shared secrets that are used to establish secure connection between the Device and Everyware Cloud.
An Enabled Device is a device whose connection to Everyware Cloud is enabled. It can connect to Everyware Cloud as long as it provides valid credentials.
A Disabled Device is a device whose connection to Everyware Cloud has been disabled. It will not be allowed to estalish a connection to Everyware Cloud even if providing valid credentials.
: In Everyware Cloud 5 (EC5), the Provision Request is a separate entity from the corresponding Device. EC5 requires to create a Provision Request and a Device separetely: the Provision Request is created via REST APIs or the Console; the Device is created by REST API, Console, or automatically created upon first connection.
: See note above.
Updated about 2 years ago