# OPC-UA Driver or OPC-UA Device !?

**URL:** <https://forum.inductiveautomation.com/t/opc-ua-driver-or-opc-ua-device/66214>\
**Category:** Module Development\
**Tags:** ignition81\
**Created:** [November 8, 2022, 2:19am UTC](https://forum.inductiveautomation.com/t/opc-ua-driver-or-opc-ua-device/66214 "2022-11-08T02:19:38Z")\
**Posts on this page:** 1\
**Showing post:** 5

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [November 9, 2022, 3:07am UTC](https://forum.inductiveautomation.com/t/opc-ua-driver-or-opc-ua-device/66214/5 "2022-11-09T03:07:33Z")

</div>

The [opc-ua-device](https://github.com/inductiveautomation/ignition-sdk-examples/tree/master/opc-ua-device) example is the only sample code available.

You already saw [the post](https://forum.inductiveautomation.com/t/opc-ua-driver-allow-reading-without-predefined-nodes/53267/2) where I suggested how you might implement "dynamic" nodes, but I'll restate. Either:

1. implement the `Device` interface directly
2. override the `read`/`write`/etc... calls from `ManagedDevice`

in either case, the calls will be targeting nodes with string-based NodeIds prefixed with `[$DeviceName]`. The remainder of the NodeId is up to you to to interpret as meaningful or not. In `ManagedDevice` it simply decides a NodeId is valid based on whether an actual UaNode instance has been created and added to the node manager. If not, StatusCode Bad\_NodeIdUnknown is returned.

`ManagedDevice` is just an extremely simple abstract class that extends [ManagedAddressSpace](https://github.com/eclipse/milo/blob/master/opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/api/ManagedAddressSpace.java), which might serve as an example of how to implement these calls.

---

_[View the full topic](https://forum.inductiveautomation.com/t/opc-ua-driver-or-opc-ua-device/66214)._
