Developing Devices¶
The Ecosystem offers a development kit for device and original equipment manufacturers (DMs and OEMs). This offering allows them to enrich the Ecosystem with their own devices. It provides the necessary components for the device as well as an interface in the Industrial Edge Management and Industrial Edge Hub for customizing the device management processes based on the needs of the device. Anyone can join the Ecosystem as a device developer if the following rules and requirements are fulfilled.
Software Dependencies¶
The Industrial Edge runtime is based on Linux. All of the packages necessary to integrate the runtime to the device are provided as prebuilt Debian packages. All devices must fulfill the minimum software requirements as defined in the current Device Builder Documentation.
Architecture¶
The packages are officially supported and actively tested on x86‑64 or arm64 hardware. Currently, all devices need to be based on those two architectures and must fulfill the minimum hardware requirements as defined in the current Device Builder Documentation.
Industrial Grade¶
Devices must be designed for industrial use. The device builder needs to have a quality management process in place in order to meet the high quality requirements of Ecosystem end user. In addition, device builders must comply with the Ecosystem’s Device Builder Security Guidelines before they’re approved for a productive environment.
It’s mandatory for all device builders to implement a firmware update mechanism. A device builder can either use the mechanism provided by the Industrial Edge Platform (based on SWUpdate) or implement their own mechanism.
Logs¶
Ecosystem end user expect high-quality support on the Industrial Edge Platform. The Management System makes it possible to pull logging information from the devices, and so the device builder must integrate in the logging mechanism provided by the platform. The logs always need to contain a timestamp and a meaningful description.
Versioning¶
The firmware of the device builder, distributed via Industrial Edge, needs to be versioned according to the semantic versioning 2.0 standard.
For a better identification of the device firmware, we allow an optional introductory firmware name followed by a hyphen (e.g. ied-1.0.0).
Device Compatibility¶
The Industrial Edge Platform is constantly evolving. This means that there are regular updates, and we recommend that device builders always integrate the latest IEDK version.
Deprecation: Whenever an IEDK version is incompatible with an IEM version, we'll announce and mark the version as deprecated. Deprecation timeframe: A deprecated version will be supported for one additional release after deprecation. With the next release after deprecation, the devices can only be used at the user's risk.
Device Prototyping¶
To convince end user and demonstrate the benefits of their edge device in its early stages, device builders are allowed to provide device prototypes to end user. The device builder must ensure that these devices are only used in non-productive environments. In addition, the device builder is fully responsible for the behavior of the prototype device.
Device Testing¶
The Ecosystem is committed to quality. Therefore, it’s mandatory that device builders conduct software tests during the development and onboarding phase of their edge devices. The device builder must ensure the compatibility of their devices with the latest Industrial Edge Management version. To confirm device compliance, a test suite (IEDK Test Suite) is provided free of charge to all device builders. The device builder needs to ensure that all test cases are successfully passed.
To improve the user experience for Ecosystem end user, the Industrial Edge Platform provides standardized use cases that must work on all edge devices. The Industrial Edge Platform will test these use cases with each device before it’s onboarded to the Ecosystem. That’s why the device builder has to provide a device (loan the device) to the Ecosystem Orchestrator so the tests can be conducted in a standardized test environment. When all of the tests are passed successfully, the device can be onboarded.