Basic Integration of IEDK¶
This guide will walk you through the process of enabling your device as an Industrial Edge Device with basic functionality. It is done by integrating the Industrial Edge Runtime into your Firmware. Your device will be capable of running Edge Apps that can be managed via the Industrial Edge Management.
Prerequisites¶
- Access to the Industrial Edge Hub (with enabled Device Builder Features)
- Physical or virtual hardware with root access (selection see below)
HW and SW selection¶
Before you start to integrate the Industrial Edge Runtime, the physical hardware or virtual device has to be selected. The system needs to have sufficient hardware resources and a compatible operating system. It is recommended to start with a virtual machine and an Ubuntu image.
For the Edge-core environment, a hardware configuration is recommended of at least:
- 2 CPU-Core
- 900 MB RAM
- 1 (virtual) network card
The average image size of an Edge-core package is ~320MB
Further information about the most important points for selecting the right hardware can be seen at the prerequisites subsection.
Install Dependencies¶
Note
Ensure your Edge Device is connected to the internet so that dependencies can be downloaded from public repositories during the installation process.
- Install docker
Downloading IEDK packages¶
The IEDK-packages are available for arm64 and x86-64 processor architectures. They can be downloaded from the Download Software section in the Industrial Edge Hub. Make sure to download the right packages for your hardware. An overview about available the packages and the content can be found here.
China Region
For users in China region please download from Industrial Edge Hub China.
Install Industrial Edge Packages onto the Edge Device¶
Copy dowloaded IEDK Packages to your development machine and unzip. Afterwards you can execute following commands from inside the folder.
Basic Installation¶
-
Load IERT image into docker environment
sudo docker load -i edge-iot-core-container_*.tar.xz -
Copy provided example capabilities file into /etc folder. Note that the target file name must be 'capabilities.json'
sudo cp ./capabilities_all_disabled.json /etc/capabilities.jsonNote that you can adapt the capabilities.json to change the default behaviour and to enable additional capabilities.
-
Modify the below listed parameter values as follows:
- HostIps: Use your IED or your host system's IP address
- name: Use your image ID. You can get the ID from Docker Images.
-
Run the container
docker run \ -itd \ --restart=always \ -e HostIps='x.x.x.x' \ -v /etc/ssl/certs/:/etc/ssl/certs/ \ -v /var/lib/docker/volumes:/host-system/var/lib/docker/volumes \ -v /var/lib/docker/containers:/var/lib/docker/containers \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /var/lib/docker/edge-iot-core/Database:/var/lib/redis \ -v /var/lib/docker/edge-iot-core/Data:/data \ -v /var/lib/docker/edge-iot-core/Data:/var/lib/docker/edge-iot-core/Data \ -v /var/lib/docker/edge-iot-core/apps:/etc/nginx/conf.d/apps \ -v /var/lib/docker/edge-iot-core/app_engine:/etc/app_engine \ -v /var/lib/docker/edge-iot-core/profile.d:/etc/profile.d/ \ -v /var/run/devicemodel:/var/run/devicemodel \ -v /etc/pki/tls/certs/:/etc/pki/tls/certs/ \ -v /etc/pki/tls/private/:/etc/pki/tls/private/ \ -v /dev/log:/dev/log \ -v /var/log/journal:/host-system/var/log/journal:ro \ -v /proc:/etc/proc \ -v /etc/capabilities.json:/data/app_engine/Configuration/capabilities.json \ --publish 443:443 \ --name edge-iot-core <image-name>
Check installation¶
After the installation is completed, the installation status can be checked with the following command.
sudo docker ps
The output should show the edge-iot-core-container in an up state. You should see something similar to this screenshot:
You can now continue with step two Device Type Creation.
Your device is now capable of basic Industrial Edge functionalities.