The Matrikon FLEX OPC UA SDK in their releases support only Windows, Linux, and standalone OS. In this project, the customer was using the Windows CE 6 operating system and wanted to evaluate the Matrikon FLEX OPC UA SDK for his PLC to provide OPC UA communication. The requirement was to port the Matrikon FLEX OPC UA SDK to the Windows CE platform running on the customers PLC quickly to allow them to evaluate the SDK and make the decision.
The Matrikon FLEX OPC UA SDK is implemented using standard C++ and only requires C++ 11 support along with some platform specific networking, file system and timer APIs. As the stack is divided into platform specific and portable parts already, the changes to be done were easily identified.
Windows CE has a similar architecture to standard Windows with some exception. The main changes done were for networking and file handling. There were also some application changes required to handle the unique storage and debug capabilities of the PLC. There were additional efforts required to build and update the OpenSSL libraries for the platform as well.
The Matrikon FLEX OPC UA Stack was ported to Windows CE platform with minimal effort and delivered to customer after performing some communication and performance tests.