Nanodac Modbus TCP help needed

Hi all,
We have a Nanodac datalogger we’re trying to get connected via Modbus TCP to our gateway.
Currently I have the Modbus TCP driver configured, and the driver is happy and connected to the gateway.
I’ve tried adding modbus addresses to the OPC config as well as direct reference when creating an OPC tag.
Anyone have specific experience with this connection??

I have been working with nanodac controllers to access basic SP & PV values in addition to some program status values.

One key learning point for us is that we needed use the documented address +1 to get the correct register.

My challenge is reading the Programmer.Run.ProgTimeLeft value.
It appears to be in seconds which goes beyond 16 bits for anything over 9hr 6min 8sec
When I use a Long Integer (HR14936) I get the correct time in seconds below the amount listed above. when the amount of time is greater than that I get -32768.
Using HRI (32 bit) addressing does not help.

The nanodac documentation specifies a time_t format. I can not find any reference to this data type/format.

I am struggling to find a data type / addressing format that gives me the right value.

Any suggestions?

In your device driver settings, you should change it to one-based addressing instead of zero-based.

You should try playing with the reverse word-order setting as well.

Thank you.
I am not familiar with these two settings.
Any further insight into these to settings would be appreciated.

Go to the gateway webpage then go to Config -> OPC-UA Device Settings -> Then select the edit button for your device.

From there click show advanced settings where you can change the ones I mentioned.

Thank you
Found that and the explanation in the user manual...
I appreciate the help.

1 Like

I tried the reverse word order and several different data type address types.
still having the same issue.

Hmm, this sounds like a signed/unsigned int problem. I would try HRUS14936 or HRUS14935 if you fixed your zero-based addressing.

I will try that as soon as I get a time above the 32768 seconds
Thank you