For Embedded Engineers
An embedded software engineer has to bridge the divide between hardware reality and business vision using software alone.
The work flow for creating connected devices with the Builder includes:
- Selecting the device agent for your product.
- Gaining access to device software.
- Gaining access to support programs and communication with EmbedThis support.
- Monitoring security vulnerabilities and security patches.
Selecting the Device Agent
To create stand-alone managed devices, you typically integrate an embedded web server and create an embedded device management application that resides on the device.
The Ioto Device Agent is a cloud-enabled device agent, but it also includes a first-class embedded web server. Ioto can also be used as a stand-alone embedded web server without any cloud management features enabled.
Ioto includes our most advanced embedded web server and is a fraction the size of comparable embedded web servers (including our own). It boasts impressive throughput and efficiency scores.
We recommend choosing the Ioto device agent for all new devices, even if they are not connected to the cloud, as Ioto has the most efficient and secure embedded web server. Please read the Device Agent Comparison for details.
We also offer two legacy embedded web servers:
Our legacy Appweb and GoAhead web servers are provided for existing customers who have embedded these web servers in existing product designs. We recommend that all customers transition to Ioto for new designs and devices.
GoAhead is a simple, secure embedded web server that is perhaps the world's most popular embedded web server. Originally designed in 1998, GoAhead was present at the foundation of the Internet of Things. It is compact, secure and simple to use. GoAhead is deployed in hundreds of millions of devices.
Appweb is a high-end, secure embedded web server for hosting sophisticated embedded web management applications. Appweb offers HTTP/2, HTTP proxy, extensive security controls, sandboxing and defensive counter-measures.
Creating a Product Definition
For each product or product family, you need to create a Builder product definition that describes your device and selects the device agent you wish to utilize.
Depending on your licensed agent, you will have different subscription options.
Downloading the Device Agent
Next, download the device agent from the Builder product list.
If you have purchased a subscription, you can download the full software or any historical version. You may download an evaluation version without purchasing a subscription.
Adding Device Specific Logic
Once downloaded, you can begin embedding the device agent into device hardware and adding device specific logic. There is extensive documentation for the device agents:
Creating the Embedded Web App
Creating the embedded web management application can be very time consuming. It is often one of the most challenging tasks when creating device management software.
To accelerate your development cycle, Embedthis provides Kickstart. This sample device management application can act as the starting point for your device user interface. Kickstart employs best practices for dynamic, responsive device management. Kickstart can be downloaded from the Builder by clicking download from the product list. Read more at Kickstart.
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 help with 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
- 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 categorize an issue as low, medium, high, or critical severity. Please do not overstate the issue severity.
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 resolved to your satisfaction, click the close case button.
The GitHub repositories provide release and issue tracking and general discussion.
Note: the software is not available via GitHub and only via the product list in the Builder site.
See the following URLs for the GitHub repositories.
Using your GitHub account, subscribe to watch the GitHub security alerts page at:
If you have suggestions for how the Builder could make your role easier, please let us know at: email@example.com.