Matlab OPC Ua ignition problem

I have a strange problem / issue
All the OPC Ua browser i used show me only two possible ways of using my node ids
1 - '[PLC]UDT_ACV_V1001.S_POS'
2 - '1:Devices.[PLC].Controller&:Global.UDT_ACV_V1001.S_POS'

But matlab can't directly acccess it..

In theory it should work like this

% Create OPC UA client object
 uaClient = opcua("opc.tcp://localhost:62541");
% Connect the client to the OPC UA server
connect(uaClient);
nodeId = "ns=1;s=[PLC]UDT_ACV_V1001.LGC_CLS";
value = readValue(uaClient, nodeId );
disp(value);
disconnect(uaClient);

But this is not working...
Instead what I need to do is 3 times find by name..

DB_Node = findNodeByName(uaClient.Namespace, 'Devices', '-once'); 
ValvePointer = findNodeByName(DB_Node, 'UDT_ACV_V1001', '-once');
node = findNodeByName(ValvePointer, 'LS_CLS', '-once');
disp(node);
disconnect(uaClient);

But it really slows down the performance..
Assuming that i will have to read thousands of signals.. Crazy enough!

Is there a way to make Ignition not to use brackets?
i suspect it to be a problem with [PLC]
if it would be PLC. - probably it would work

This is a NodeId.

This looks like what is called a "BrowsePath" in OPC UA. It's different than a NodeId. I don't know what your client is doing with this, but if I had to guess it's just calling the TranslateBrowsePaths service to turn it into a NodeId before it reads anyway.

You should contact Matlab for support about why the NodeId doesn't work directly.