The access level does not allow writing to the Node

LrBreakerStatus.value is an OPC tag I created for a simulated device…I can’t write to it. The exact error I get when trying to change a Boolean output value is

Error writing to LrBreakerStatus.value: Bad("Bad_NotWritable: The access level does not allow writing to the Node.")

I get the same message when trying to write a value from the gateways OPC QuickClent:

I created a Programmable Device Simulator in the gateway with an address for a DNP3 Boolean output. The point configuration is:

My tag configuration is:

{DeviceName} is correct because I’m simulating some analog values as well and the quality for all the tags is Good.

I know its something simple…a bad config on my part or a missed setting. What am I doing wrong?

I’m using Ignition v8.1.17

You are going to be prevented from writing to this simulated object because functions used within the definition don’t allow writes. This means that the square(0.0, 1.0, 200, true) will block overrides of the value.

If you want to be able to override this value, you can do the following which would simulate the square wave but still allow you to write to the value:

What this does:

  1. At time 0, BinaryOutput:0:g10v2i0 starts as false
  2. At time 200, BinaryOutput:0:g10v2i0 changes to true
  3. At time 400, BinaryOutput:0:g10v2i0 changes to false and will hold that value until the program restarts. If these are the only entries, the program will immediately restart back a the 0 time. If you add more to the program, you would need to keep the <= to 400 or else false will persist until the program restarts.

Note that the simulator does have global settings for Repeat Program and Base Rate (ms) that will determine if the program restarts automatically and what the Time Interval column translates to.


Thank you Garth, I will try this.

@ggross I just added one instruction and I can’t change the value as often as I want! This is what I did. Thank you very much!