# Ignition 7.9: pending system.tag.write not getting carried over to an opc tag write

**URL:** <https://forum.inductiveautomation.com/t/ignition-7-9-pending-system-tag-write-not-getting-carried-over-to-an-opc-tag-write/43589>\
**Category:** Ignition\
**Created:** [February 18, 2021, 10:08pm UTC](https://forum.inductiveautomation.com/t/ignition-7-9-pending-system-tag-write-not-getting-carried-over-to-an-opc-tag-write/43589 "2021-02-18T22:08:34Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![mark.benedicto](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/mark.benedicto/32/27346_2.png) [@mark.benedicto](https://forum.inductiveautomation.com/u/mark.benedicto)\
**Post date:** [February 18, 2021, 10:08pm UTC](https://forum.inductiveautomation.com/t/ignition-7-9-pending-system-tag-write-not-getting-carried-over-to-an-opc-tag-write/43589/1 "2021-02-18T22:08:34Z")

</div>

Hi,

I’m using system.tag.write to update my opc tags (in read/write mode). I can see from the tag browser that it is changing and the system.tag.write return value is “2” (pending), but the opc tag write doesn’t seem to be received by the target device (PLC). The reason that I’m saying this is because when I did the tag write directly on the opc tag through the Ignition gateway, the device responded accordingly.

Is this a known issue? If so, do we have a solution for this?

Kind regards,

---

<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:** [February 18, 2021, 10:15pm UTC](https://forum.inductiveautomation.com/t/ignition-7-9-pending-system-tag-write-not-getting-carried-over-to-an-opc-tag-write/43589/2 "2021-02-18T22:15:37Z")

</div>

Does it work if you use `writeSynchronous` or `system.opc.write` instead?

What kind of device is it?

---

<div class="post-metadata">

**Author:** ![mark.benedicto](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/mark.benedicto/32/27346_2.png) [@mark.benedicto](https://forum.inductiveautomation.com/u/mark.benedicto)\
**Post date:** [February 22, 2021, 5:36am UTC](https://forum.inductiveautomation.com/t/ignition-7-9-pending-system-tag-write-not-getting-carried-over-to-an-opc-tag-write/43589/3 "2021-02-22T05:36:10Z")

</div>

Hi Kevin,

I haven’t tried writeSynchronous and system.opc.write yet.

It’s a Panasonic PLC AFPX-C30RD (Modbus Ethernet).

I’ll provide an update once I’ve tried using writeSynchronous and the opc write scripts.

---

<div class="post-metadata">

**Author:** ![mark.benedicto](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/mark.benedicto/32/27346_2.png) [@mark.benedicto](https://forum.inductiveautomation.com/u/mark.benedicto)\
**Post date:** [March 16, 2021, 11:40pm UTC](https://forum.inductiveautomation.com/t/ignition-7-9-pending-system-tag-write-not-getting-carried-over-to-an-opc-tag-write/43589/4 "2021-03-16T23:40:09Z")

</div>

Hi Kevin,

I’ve done further testing, it seems that the Redlion HMI is not accepting the bit tag writes, but it’s working on OPC “int” writes.

Is there a way to solve this issue?

Kind regards,

---

<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:** [March 16, 2021, 11:45pm UTC](https://forum.inductiveautomation.com/t/ignition-7-9-pending-system-tag-write-not-getting-carried-over-to-an-opc-tag-write/43589/5 "2021-03-16T23:45:32Z")

</div>

If the target Modbus device doesn’t support the MaskWriteRegister function and you need to write to a bit within an 16-bit register then your only option is to read the value, mask/update the target bits, then write the new value to the register.

The driver will not attempt this for you because it’s a race condition. It will only use the MaskWriteRegister function to write to bits within registers.
