Developing Devices¶
The Ecosystem offers a development kit for device and original equipment manufacturers (DMs and OEMs). This development kit 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.
User Accounts¶
[Must not] In a production environment, root access must not be provided to the end customer. The best practice is to change the root user password to an empty field, thereby preventing any login attempts. Otherwise the password must align with these security regulations:
- Passwords must not be “trivial” or “easy to guess”. These include using the company name, own name, pet name or dictionary terms.
- At least 15 characters.
- At least three of the following characters:
- Uppercase alphabetic characters
- Lowercase alphabetic characters
- Digits
- Special characters
[May] Additional user accounts can be created. These users may have additional rights; however, they must not have the rights to modify Docker-config or -images.
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: A deprecated version of IEDK 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.
Publish and Enforcement of New Versions¶
[I] At least once every 12 months, a new version with the latest IEDK integrated needs to be published to all users, to offer applications the use of new functionality.
[II] Whenever the platform introduces an IEDK version with a major change (following semantic semantic versioning 2.0), the device builder must do the following:
- Provide a new version: Within a 3-month time period, the device builder should create and publish a new version on the IEHub.
- Update the manufacturing released version: Within a 12-month time period, the device builder must update any versions provided to his manufacturing. So new produced devices already contain the new firmware version.
If a device builder violates these rules, we reserve the rights to apply any of our Governance measures.
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 published.
[Must] Initial versions and major-change versions have to be submitted for Ecosystem Review, no matter how the update process is carried out.
[May] Additionally random samples of all version might be taken for compliance check.
[May] If the software of multiple devices are identical, a passed Ecosystem Review for one of these devices may imply authorization for other devices.
The Ecosystem Review process can be triggered once the device version is published on the Partner Stage.