FAQ: How do I access source code?|OPC UA Implementation: Stacks, Tools, and Samples|Forum|OPC Foundation

Forum Scope


Forum Options

Minimum search word length is 3 characters - maximum search word length is 84 characters
Lost password?
sp_Feed sp_PrintTopic sp_TopicIcon
FAQ: How do I access source code?
01/20/2016 - 09:42
sp_Permalink sp_Print sp_EditHistory

Following is a guide for the open source repositories provided by the OPC Foundation. They are all related to the OPC UA standard.

OPC UA implementations (Stacks and sample applications)


.NET Standard

Repository: UA-.NETStandard GitHub Repository

Landing Page: UA-.NETStandard GitHub Page - look here for license information

This OPC UA reference implementation is targeting .NET Standard.

.Net Standard allows you develop apps that run on all common platforms available today, including Linux, iOS, Android (via Xamarin) and Windows 7/8/8.1/10 (including embedded/IoT editions) without requiring platform-specific modifications.

One of the reference implementations inside this project has been certified for compliance through an OPC Foundation Certification Test Lab to prove its high quality. Fixes and enhancements since the certification process have been tested and verified for compliance using the Compliance Test Tool (CTT) V1.03.

Furthermore, cloud applications and services (such as ASP.Net, DNX, Azure Websites, Azure Webjobs, Azure Nano Server and Azure Service Fabric) are also supported.


AnsiC (Legacy)

Taken offline because of unpatched vulnerabilities.

open62541 is an open source ANSI-C implementation that is not managed by the OPC Foundation.


Java (Legacy)

Repository: UA-Java-Legacy GitHub Repository

Landing Page: UA-Java-Legacy GitHub Page

This repository is provided by OPC Foundation as legacy support for a Java version for OPC UA. It will not receive further features and updates.

Donated to the community for development of OPC UA applications and to assure that OPC UA becomes the defacto-standard technology for the Industrial-Internet-of-Things and Industrie 4.0.


LDS with MultiCast Extension

Repository: UA-LDS GitHub Repository

Landing Page: UA-LDS GitHub Page

The official OPC Foundation OPC UA Discovery Server with Multicast Extension (LDS-ME).

"Discovery" is the process that describes a UA Client's ability to be find a list of available UA Servers that can be connected to. The complete process is described in UA Part 12 - Discovery.

The Multicast Extension uses mDNS enabling Local Discovery Servers to share their list of Servers with other LDS-ME servers on the network. Clients can request a list of all Servers on the network with a single optimized call thereby eliminating the need to individually query each endpoint on the network.



Repository: UA-Nodeset GitHub Repository

The NodeSets are the computer readable representation of the OPC UA information models. This repository makes the latest NodeSet available to users of the OPC UA specifications and a subset of the published companion specifications.

The master branch is a work in progress and will change constantly.

The branches with a version label like v1.04 are released but may updated with errata being reviewed by the OPC UA Working Group. When changes are approved they are posted on the website at UA/schemas/. Developers looking for a staple released version should use the website version.


Model Compiler

Repository: UA-ModelCompiler GitHub Repository

The OPC Foundation Model Compiler will generate C# and ANSI C source code from XML files which include the UA Services, data-types, error codes, etc.; and numerous CSV files that contain NodeIds, error codes, and attributes etc.

The input format for the tool is a file that conforms to the schema defined in UA Model Design.xsd.

This ModelCompiler is also used to generate the content of the Nodeset GitHub repository and to generate the content of the .NETStandard repository.


Certificate Generator

Repository: CertificateGenerator GitHub Repository

A tool to create OPC UA compliant certificates built with the OpenSSL library.

The solution requires VS2015 to build but produce an EXE that can be used without any additional dependencies on Windows XP or later systems.

Forum Timezone: America/Phoenix
Most Users Ever Online: 202
Currently Online: Randy Armstrong, Bastian Thomas, Jennifer Whitman
Guest(s) 28
Currently Browsing this Page:
1 Guest(s)
Top Posters:
Forum Stats:
Groups: 2
Forums: 10
Topics: 1219
Posts: 4064