Wago setup with AWS Greengrass - best practice

Hi, I’m pretty new to WAGO, but have an extensive background in software development. Right now I’m trying to figure out the best way to set up a WAGO PLC with AWS IoT Greengrass. So far I’ve managed to set up a PFC 200. The first thing I’ve noticed is that the onboard Linux version is obviously a custom Linux built for WAGO. It seems to be impossible to install python on this Linux distribution. So I installed docker and mounted a docker container with Ubuntu. Is that the only way or is there a python3 ipk that can be installed?

Well, what I’m looking for is some guidance or best practice how to best set up AWS IOT green grass on a PFC.

Thank you in advance

Wally

AWS Greengrass V1 is probably better suited for a device with more resources (such as the Edge Controller or soon to be released PFC300), but can be implemented in a docker container.

Here is more documentation on Greengrass V1 on WAGO 32 bit devices:

2 Likes

Thank you @WagoKurt, unfortunately using Version1 is not an option, since we are using Greengrass V2 already with other devices. And the 2 Versions are too different. V1 is far inferior regarding the Scope what you can do with Components. Well - I guess I need to find a Solution running a Docker Image with V2. Shouldnt be too hard since Docker is supported on the WAGO Platform. However - I will probably contact WAGO directly to ask for Support.
I will keep you updated - just in case someone here is interested in the topic…

But my Question regarding Linux still remains unsolved. The installed Linux on the WAGO Controller seems pretty restricted. I never had a linux that forbid you to install Python. Have you experience how to install Python directly on the WAGO Controller?

There used to be an IPK to install directly on the host system.
But it provides only old version of Python. You could try to compile the package using the SDK, but not sure it will fit your requirements.
The best way once again is to use Docker.
Look at the category Python of the forum, you will find some example :

Using Docker has some benefits… Easier update process, easier deployment, you can choose between “full” and “small” version if you need a smaller footprint… You can easier create your own ready to use image with preinstalled dependencies.

I would definitely recommand this option.

Thank you @quenorha for the further insight. I don’t mind using docker in general, alas we moved on from it some years ago on AWS to fully Serverless deployments, so it’s considered legacy in our team :wink: however, if there is no,other way fro now we’ll use it. As for the ports mapped into the docker-compose file: I would open ports 502 (modbus), 22, 80 and 443 for now, or am I missing one ?

You might also find this useful for running Python3 on the PFC.