Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/WAGO/azure-iot-edge
This repository contains instructions for building and starting a Microsoft Edge Runtime Container on WAGO devices. (e.g. PFC200 G2 or Wago Touch Panel)
https://github.com/WAGO/azure-iot-edge
arm32v7 azure-iot azure-iot-edge docker iot microsoft pfc200 touch-panel
Last synced: about 2 months ago
JSON representation
This repository contains instructions for building and starting a Microsoft Edge Runtime Container on WAGO devices. (e.g. PFC200 G2 or Wago Touch Panel)
- Host: GitHub
- URL: https://github.com/WAGO/azure-iot-edge
- Owner: WAGO
- License: mit
- Created: 2019-04-23T13:54:08.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2023-12-19T14:40:24.000Z (about 1 year ago)
- Last Synced: 2024-08-02T21:38:30.893Z (5 months ago)
- Topics: arm32v7, azure-iot, azure-iot-edge, docker, iot, microsoft, pfc200, touch-panel
- Language: Dockerfile
- Homepage:
- Size: 3.85 MB
- Stars: 5
- Watchers: 4
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Statistics Docker Hub
[![DockerHub stars](https://img.shields.io/docker/stars/wagoautomation/azure-iot-edge.svg?flat&logo=docker "DockerHub stars")](https://hub.docker.com/r/wagoautomation/azure-iot-edge)
[![DockerHub pulls](https://img.shields.io/docker/pulls/wagoautomation/azure-iot-edge.svg?flat&logo=docker "DockerHub pulls")](https://hub.docker.com/r/wagoautomation/azure-iot-edge)## Statistics Git Hub
[![GitHub issues](https://img.shields.io/github/issues/WAGO/azure-iot-edge.svg?flat&logo=github "GitHub issues")](https://github.com/WAGO/azure-iot-edge/issues)
[![GitHub stars](https://img.shields.io/github/stars/WAGO/azure-iot-edge.svg?flat&logo=github "GitHub stars")](https://github.com/WAGO/azure-iot-edge/stargazers)# How to setup Azure Iot Edge on Wago Device
## Prerequisites for tutorial
- Preinstalled SSH Client (e.g. https://www.putty.org/)
- Wago Device e.g. PFC200 G2 or Wago Touch Panel with minimal Firmware 12
- Firmware you can find here: https://github.com/WAGO/pfc-firmware
- Docker IPKG you can find here: https://github.com/WAGO/docker-ipk
- Microsoft Azure Account## Create an Iot-Hub, add iot edge device and deviceDeploy your first IoT Edge Module:
https://docs.microsoft.com/en-us/azure/iot-edge/quickstart-linuxPlease go through the following points:
- Create an IoT Hub.
- Register an IoT Edge device to your IoT hub.
- The section "Configure your IoT Edge device" can be completely ignored.
- Remotely deploy a SimulatedTemperatureSensor module to an IoT Edge device.> Attention: To prevent port "443" clashing of "edgeHub" container and of Wago Webserver, it is absolutely necessary to change the "HostBindings". You can use any free host ports.
Navigate to Azure Portal-> Your Edge Device-> Set modules on device->Runtime Settings
## Configuration and start of azure iot edge runtime container.
The configuration of azure-iot-edge-runtime container is done via the config.yaml file.
This file is generated by the command below into the empty mounted folder.```bash
docker run --rm -v /config:/config wagoautomation/azure-iot-edge init
```
> Attention: The file is read-only and must be made temporary writable for the current user.
>```bash
> chmod 644
> or
> chmod 666
>```> **Note:**
> Attention there is a discrepancy between the default configuration of azureiotedge-agent in the cloud (currently v1.4) and the configuration in the device. (v1.1).
> If you are not careful, two images are downloaded, which leads to "no space on device" problems.
> The workaround is to keep the configurations the same. e.g. after the
> ```bash
> docker run --rm -v /config:/config wagoautomation/azure-iot-edge init
>```
>, synchronize the configuration manually.
>
Finally, provisioning configurations can be made by editing the corresponding sections in config.yaml (e.g. manual provisioning using connection string or X.509 certificate)
For more details see: https://docs.microsoft.com/en-us/azure/iot-edge/how-to-manual-provision-symmetric-key?tabs=azure-portal%2Clinux```bash
docker run -d --name azure-iot-edge-runtime \
--restart=unless-stopped \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /config:/config:ro \
wagoautomation/azure-iot-edge
```After the container start, all deployments defined in Microsoft Azure are automatically downloaded and started.
This may take a few minutes.
With the Docker commands you can track the provisioning process.
```bash
docker images
docker ps
docker logs
```After all containers have been started, the following Docker command should return the following:
```bash
docker ps --format "table {{.Image}}\t {{.Status}}\t{{.Names}}"
```
The "SimulatedTemperatureSensor" module sends "500" simulation messages to your Iot Hub. The telemetry data can be displayed e.g. with a Visual Studio Code extension. (see: https://marketplace.visualstudio.com/items?itemName=vsciot-vscode.azure-iot-toolkit)
Finally, Wago device is ready for azure iot edge module deployment!Happy IoTing!
## Azure IoT Edge Modbus Module
You need a running Modbus Slave (Server) e.g. Wago Device or Modbus slave Simulator
How to deploy microsoft modbus ingestion module see here:
- https://github.com/Azure/iot-edge-modbus
- https://youtu.be/rZ8kpsomBIU## Develop a C# IoT Edge module
How to develop your own azure iot edge module see here:
https://docs.microsoft.com/en-us/azure/iot-edge/tutorial-csharp-module