High Performance SDK V1.1.0 =========================== New Features: ------------- * New Client SDK * New UaApplication object for SDK initialization * New OPC UA Binary File Format for Information Models * New Platform support for Segger embOS and embOS/IP * New Crypto and PKI backends for Mocana NanoCrypto library * Generic structure encoder/decoder which allows to handle new types at runtime. This also reduces code size for all built-in types in NS0. * New binary file format, which is now a serialized cross-platform file format. V1.0.0 used memory pool dumps which worked not across different hardware platforms. * New xml2bin tool which converts XML Nodeset files into the new binary file format. * New xml2c tool which generates static address spaces. An addition to the address space C file it now also generates C code for all datatypes and type tables for the generic encoder/decoder. - New datatype "class" generation: C data structures and functions. - Support for enums, structures, structures with optional fields and unions. - Supports also inherited datatypes. - Type tables generation - CMake project generation to build complete libraries for type systems. * New examples: - Sensor Model Server: Demonstrate usage of dynamic and static type systems, as well as type instantiation. - History Example Server: Demonstrates how to implement UA history and how to implement underlying protocols using the SDK's network API. - Client Getting Started Tutorial - HP SDK Sample Client * More documentation Bugfixes: --------- We've fixed a large number of bugs found in V1.0.0 and improved the overall performance and stability. Breaking Changes: ----------------- The Client SDK required to change the way the application gets initialized. There is now a new 'uaapplication' object which must be created and which initializes the SDK. This simplifies application initialization and works for both client and server side. Please have a look into the examples/ folder for an example. High Performance SDK V1.0.0 =========================== Welcome to our first release of the High Performance OPC UA SDK. This SDK was tested on the following platforms: * Linux (PC,x86/x86-64): GCC, Clang * Linux (Raspberry PI, ARM): GCC * Windows (PC, x86/x86-64): Visual Studio 2008 - 2015 Supported Profiles: ------------------- * Nano Embedded Device Server Profile * Micro Embedded Device Server Profile * Embedded UA Server Profile (not yet, due to missing Monitor Triggering) * Standard UA Server Profile (not yet, due to missing Monitor Triggering) Supported Protocols: -------------------- * OPC UA TCP Supported Encodings: -------------------- * OPC UA Binary Supported Security Policies: ---------------------------- * None (not secure by design) * Basic128Rsa15 (not recommended, weak algorithms) * Basic256 * Basic256Sha256 Supported User Token Types: --------------------------- * Anonymous * Username Supported UA Services: ---------------------- * Discovery Service Set: FindServers, GetEndpoints * Secure Channel Service Set: OpenSecureChannel, CloseSecureChannel * Session Service Set: CreateSession, ActivateSession, CloseSession * View Service Set: Browse, BrowseNext, TranslateBrowsePathToNodeIds, RegisterNodes, UnregisterNodes * Attribute Service Set: Read, Write * Method Service Set: Call * MonitoredItem Service Set: CreateMonitoredItems, ModifyMonitoredItems, DeleteMonitoredItems, SetMonitoringMode * Subscription Service Set: CreateSubscription, ModifySubscription, DeleteSubscription, SetPublishingMode, Publish, Republish Unsupported Services: --------------------- * Query Service Set: QueryFirst, QueryNext * Attribute Service Set: HistoryRead, HistoryUpdate * MonitoredItem Service Set: SetTriggering * Subscription Service Set: TransferSubscription Supported NodeIds: ------------------ * Numeric * String * Guid * Opaque (not supported for static address spaces yet) Available Platform Backends: ---------------------------- * Linux * Windows Available Crypto Backends: -------------------------- * OpenSSL * mbedTLS (not stable yet) Available PKI Backends: ----------------------- * OpenSSL * mbedTLS (not stable yet) Available PKI Store Backends: ----------------------------- * file Available Trace Backends: ------------------------- * stderr * file * syslog (Linux only) Available Timer Backends: ------------------------- * soft Available Network Backends: --------------------------- * berkeley * epool (Linux only) Available Authentication Backends: ---------------------------------- * internal (file based user management) Available Authorization Backends: --------------------------------- * inode Additional Features: -------------------- * Configurable memory pools to avoid memory usage and fragmentation * Address Space can be compiled into binary (ROM based address space) * Loading binary address space file * XML to binary file converter * XML to C code converter * IPC framework * Sandbox mechanism * Portable XML parser * Unit test framework * Extensive unit test suite to support porting the SDK * Extensive API documentation and examples and tutorials * Structured type support * Dynamic object instantiation support Missing Features: ----------------- The following bullet points list missing features that will be added in future versions of the SDK. * Client side SDK for implementing OPC UA Clients * Event support: creating, sending and filtering of events * Alarm support: this depends on events * State machine framework * Triggering for monitored items * Structure support with optional fields * Union support * PLCOpen example * AutoId example (requires structures with optional fields, unions, and events)