-
Notifications
You must be signed in to change notification settings - Fork 658
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
client connect kapware, set_value return BadWriteNotSupported #919
Comments
Probably because Kepware OPC UA is junk. What happens if you write value with UaExpert? Does it send SoureTimestamp that works? |
this has nothing to do with our software. It is limitation of kepware. Send them emails so maybe one day they will fix their server |
It's not kepwares fault. From OPC UA Specification Part 4:
|
Exactly what i wrote |
@schroeder- What "production" server wouldn't even support timestamps lol? |
The quote is for write request which tries to set the server timestamp and a DataValue. You don't want the server timestamp from a DataValue written by a client. Because most servers use the server timestamp for caching and subscription book keeping. Also you want the server timestamp the time when the value changed on the server, not when the client send a write request. Thats why must servers dont allow setting the server timestamp of a datavalue. |
I think the only server I have heard complaining about our cliet behaviour is kepware.
I jsut double check the code and serverTimestamp is not written by default, only the source timestamp. which, in my mind, is correct. since the progam writting is, per definiton, the source. What do you want to change here? if you have a special server, or special requirements, you just write a DataValue and do not let python-decide guess what you want. |
I wouldn't set any timestamp per default as the Specification allow to reject any timestamp writes. |
I think we tried that one. but then many servers expected it. setting it is not wrong, it is a sensible default and the API let's you do something else if you want to. |
@schroeder- Per the standard Kepware is fine to block the write, but it's still seems lazy to me. Also, the SourceTimestamp is being written which makes sense for a Client to do. The example above is not doing anything ServerTimestamp. At any rate this issue should be closed. There is nothing we can do about Kepware here. |
Yeah keep it as it is. |
I try to write a data to kapware, use the function set_value.
if I write like this:
the program will raise an error.
and if I write like this:
The program is OK.
I want to know why this happened, thank you.
The text was updated successfully, but these errors were encountered: