For Cloud Engineers
Head in the clouds and feet on the ground. A cloud engineer has to connect the devices of yesterday with the cloud of tomorrow using what is available today.
The work flow for creating cloud-managed devices with the Builder includes:
- Selecting the device agent for your product.
- Gaining access to device software.
- Creating device clouds.
- Registering and claiming devices.
- Gaining access to support programs and communicating with EmbedThis support.
- Monitoring and analyzing device performance.
EmbedThis Ioto is a cloud-based management service for embedded devices connected to the Internet.
It is comprised of four components:
- Device Builder
- Ioto Service
- Ioto Device Clouds
- Ioto Device Agent
The EmbedThis Device Builder web site helps you to:
- Define, configure, and control your products.
- Manage your device clouds.
- Tailor software upgrades to your needs.
- Manage your subscription and billing for EmbedThis products and services.
The Ioto Service is a cloud application. It provides services for the EmbedThis Builder and manages the provision of devices into Device Clouds.
Ioto Device Clouds are cloud-based hubs that run in a region of your chosing. They manage routine communications and management for your devices.
The Ioto Device Agent is a cloud-ready embedded agent for remote device management. It includes an embedded web server, embedded database, HTTP client, MQTT client and extensive AWS IoT cloud integration. The agent communicates with the Ioto Service and Device Clouds for management. See Ioto Agent Documentation for in-depth details about the Ioto Agent.
The work flow for creating cloud managed devices is outlined below.
Creating a Product Definition
For each product type that you wish to manage from the cloud, you need to create a product definition that describes your device and nominates the device agent you wish to utilize.
Downloading the Ioto Device Agent
Next, download the Ioto device agent from the Builder product list by clicking the download icon in the product list.
To help you evaluate Ioto, your first device is free. Thereafter, a subscription is required.
Customizing Device Specific Logic
Embed the Ioto agent into your device hardware and add your device specific logic. There is extensive documentation available:
Creating a Device Cloud
When your device has Ioto embedded and is ready to communicate with the cloud, you need to create a Device Cloud that will be the central hub for managing your devices.
A Device Cloud is created in an AWS account with a region of your choice. You can have multiple device clouds if you require, though most users will require only one cloud for their devices.
Device Cloud Privacy
The Device Cloud is created in your AWS account so you have total control and privacy regarding your device data. Your device data goes directly from your devices to the device cloud in your account. The device data is not sent through EmbedThis servers or other AWS accounts. This is important as jurisdictions are increasingly requiring that data only be stored, processed and managed locally.
When creating device clouds, the builder will create the necessary resources, including a DynamoDB device database and service Lambda function in your AWS account.
Once a device cloud is created, you can register a device with the Builder service.
When registered, you can "claim" the device for a user.
During development, you can claim devices from the Builder cloud list.
See Device Claiming for more details.
Once registered and claimed, the device is under management by the Ioto service. Management commands can be sent from the cloud to the device and device data can be sent upstream from the device to the cloud.
In production, users will claim devices using a bespoke management application that best implements an effective operational interface for your product and devices.
Customizing the Device Manager
When the Builder creates a device cloud, it provides a cloud-based device manager to supervise your devices. This manager, called the Ioto Device Manager is hosted by Embedthis on a sub-domain of your choosing.
The Ioto Device Manager is a generic (white-label) cloud-based device manager that is uniquely configured for each device cloud. It can be extensively customized to manage your devices with your logo, product name, color and font theme, device data and device specific screens and interface including browser-based and cloud-side custom logic.
You can customize the device manager by defining and uploading:
- A Device data schema
- A Manager UI Skin definition
- Your company logo
- Custom UI components
Combined this uploads will be applied to the generic Device Manager to create a bespoke device manager for your needs.
Ioto provides a comprehensive suite of API interfaces for you to create your device management application. These APIs cover the following areas:
- Builder HTTP REST API — for managing products, device clouds and software upgrades.
- DynamoDB schema — for querying structured device data.
- Event API — for receiving event notifications over AWS EventBridge.
- MQTT Topic API — for sending and receiving device commands, data and notifications.
As you progress with your design and development, you will probably require support.
EmbedThis offers two types of support:
- Basic Support
- Developer Support
Basic support provides basic guidance covering installation and operational usage of the product.
Developer support provides comprehensive developer help for design and implementation issues. This includes embedded development, cloud-based device management, developer coding, debugging issues, and support for legacy software versions.
You can purchase support via the Builder interface under the Support menu option. You can also raise and track support issues with the Embedthis support staff.
With an active support plan, you can use the integrated Builder support center to open support cases and track them to conclusion.
When opening a support case, you supply:
- A short case issue subject
- A detailed issue description
- The relevant product experiencing the issue
- Attach relevant files or logs
- The issue severity
- A list of additional recipients
Please provide a complete and detailed description.
A good description is a clear and thorough description of what the issue is. Please explain in sufficient detail. If your description is too brief, support staff cannot resolve the issue as quickly and will have to contact you to obtain any missing information. Please spend some time writing a complete description.
If you can, please include a link to a repository containing a test case that reproduces your issue. Reproductions should be short, correct, self-contained. They should not contain code that isn't relevant to the issue, so do NOT simply paste code from your project. Explaining how to reproduce the issue without including a test case is typically insufficient and will result in delays resolving your support issue.
Selecting an option for severity informs EmbedThis staff of the level of urgency of your issue. You may categorise an issue as low, medium, high, or critical severity. Please do not overstate the issue severity. NOTE: the severity does not equate to a priority with which your issue will be addressed.
By default, cases will be sent via email to you for your records. You can include a comma separated list of email recipients who will also receive a copy of the case issue exchanges.
When an issue is closed to your satisfaction, click the close case button.
The Builder is used to track issues and security notices.
Go to the Builder Products List to see the product list and product security center.
To open a bug report, use the Builder Support Center to open a case ticket.
If you have suggestions for how the Builder could make your role easier, please let us know at: firstname.lastname@example.org.