Build OPCUA applications with ANSI-C

UA ANSI-C is an OPC UA stack and a number of small sample applications.

From the OPC Foundation

The official OPC Foundation OPC UA ANSI-C Stack and sample applications.

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.

Numerous products, organizations, and other standards-bodies rely on OPC UA as their communications back-bone, with more joining daily.

Visit for more information.

OPC Foundation Membership

OPC Foundation membership provides funding to continue the research and development necessary to expand the capabilities and benefits of OPC UA.

Become a Member Now [benefits]


Stack: The code is made available by OPC Foundation for historical reasons. It will not receive further features and updates.


This repository includes the UA ANSI-C Stack and sample applications. The UA ANSI-C Stack follows a dual-license:

  • OPC Foundation Corporate Members: RCL
  • Everybody else: GPL 2.0

RCL enables OPC Foundation members to deploy their applications using the software without being required to disclose the application code. Non-members licensed under GPL 2.0 must disclose their application code when using the software.

If OPC Foundation Corporate Membership is terminated, the licence reverts to GPL 2.0 whenever any fixes or updates published on GitHub are applied to the former member’s application. This includes updates acquired by fetching any Git commit made after membership termination or the use of binaries distributed in OPC NuGet packages that were posted after the membership termination date.

Note: Dual license applies to this repository only; GPL 2.0 applies to all other repositories

All samples, the platform layers, and files generated with the ModelCompiler by means of the OPC UA NodeSet are provided under the MIT license.


This UA-ANSI-C repository consists of:

  • Stack: low-level functions for delivering messages between UA Clients and Servers.
  • Sample Server: Nano server reference implementation
  • Documentation: Instructions on building and using the stack

UA Profile Documentation

Learn how to build compliant self-describing applications using Profiles:

Getting Started

The repository ReadMe contains information about the contents of the repository along with build instructions.

Fork me on GitHub

Submit an issue or a suggestion

Submit an issue here.

Working Group Participation

The OPC Foundation contains multiple working groups that work hard to deliver OPC Specifications, Sample Applications, Compliance Test Tools, and more. Your participation can help steer OPC UA technology. Get involved today!

Fork and contribute

If you find an issue in the documentation or in the code, you can fork and send a pull request to the master branch.

Follow us